Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer
This commit is contained in:
commit
2744e71967
@ -1,4 +1,4 @@
|
|||||||
cmake_minimum_required(VERSION 3.2)
|
cmake_minimum_required(VERSION 3.8)
|
||||||
project(PrusaSlicer)
|
project(PrusaSlicer)
|
||||||
|
|
||||||
include("version.inc")
|
include("version.inc")
|
||||||
@ -369,18 +369,24 @@ if (NOT EXPAT_FOUND)
|
|||||||
endif ()
|
endif ()
|
||||||
include_directories(${EXPAT_INCLUDE_DIRS})
|
include_directories(${EXPAT_INCLUDE_DIRS})
|
||||||
|
|
||||||
|
find_package(OpenGL REQUIRED)
|
||||||
|
|
||||||
# Find glew or use bundled version
|
# Find glew or use bundled version
|
||||||
if (NOT SLIC3R_STATIC)
|
if (SLIC3R_STATIC)
|
||||||
find_package(GLEW)
|
set(GLEW_USE_STATIC_LIBS ON)
|
||||||
endif ()
|
set(GLEW_VERBOSE ON)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
find_package(GLEW)
|
||||||
if (NOT GLEW_FOUND)
|
if (NOT GLEW_FOUND)
|
||||||
|
message(STATUS "GLEW not found, using bundled version.")
|
||||||
add_library(glew STATIC ${LIBDIR}/glew/src/glew.c)
|
add_library(glew STATIC ${LIBDIR}/glew/src/glew.c)
|
||||||
set(GLEW_FOUND 1)
|
set(GLEW_FOUND TRUE)
|
||||||
set(GLEW_INCLUDE_DIRS ${LIBDIR}/glew/include/)
|
set(GLEW_INCLUDE_DIRS ${LIBDIR}/glew/include/)
|
||||||
set(GLEW_LIBRARIES glew)
|
target_compile_definitions(glew PUBLIC GLEW_STATIC)
|
||||||
add_definitions(-DGLEW_STATIC)
|
target_include_directories(glew PUBLIC ${GLEW_INCLUDE_DIRS})
|
||||||
|
add_library(GLEW::GLEW ALIAS glew)
|
||||||
endif ()
|
endif ()
|
||||||
include_directories(${GLEW_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
# Find the Cereal serialization library
|
# Find the Cereal serialization library
|
||||||
add_library(cereal INTERFACE)
|
add_library(cereal INTERFACE)
|
||||||
|
351
cmake/modules/FindGLEW.cmake
Normal file
351
cmake/modules/FindGLEW.cmake
Normal file
@ -0,0 +1,351 @@
|
|||||||
|
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||||
|
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||||
|
|
||||||
|
# PrusaSlicer specifics:
|
||||||
|
# This file is backported from CMake 3.15 distribution to behave uniformly
|
||||||
|
# across all versions of CMake. It explicitly adds GLEW_STATIC complile
|
||||||
|
# definition to static targets which is needed to prevent link errors.
|
||||||
|
|
||||||
|
#[=======================================================================[.rst:
|
||||||
|
FindGLEW
|
||||||
|
--------
|
||||||
|
|
||||||
|
Find the OpenGL Extension Wrangler Library (GLEW)
|
||||||
|
|
||||||
|
Input Variables
|
||||||
|
^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
The following variables may be set to influence this module’s behavior:
|
||||||
|
|
||||||
|
``GLEW_USE_STATIC_LIBS``
|
||||||
|
to find and create :prop_tgt:`IMPORTED` target for static linkage.
|
||||||
|
|
||||||
|
``GLEW_VERBOSE``
|
||||||
|
to output a detailed log of this module.
|
||||||
|
|
||||||
|
Imported Targets
|
||||||
|
^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
This module defines the following :ref:`Imported Targets <Imported Targets>`:
|
||||||
|
|
||||||
|
|
||||||
|
``GLEW::glew``
|
||||||
|
The GLEW shared library.
|
||||||
|
``GLEW::glew_s``
|
||||||
|
The GLEW static library, if ``GLEW_USE_STATIC_LIBS`` is set to ``TRUE``.
|
||||||
|
``GLEW::GLEW``
|
||||||
|
Duplicates either ``GLEW::glew`` or ``GLEW::glew_s`` based on availability.
|
||||||
|
|
||||||
|
Result Variables
|
||||||
|
^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
|
This module defines the following variables:
|
||||||
|
|
||||||
|
``GLEW_INCLUDE_DIRS``
|
||||||
|
include directories for GLEW
|
||||||
|
``GLEW_LIBRARIES``
|
||||||
|
libraries to link against GLEW
|
||||||
|
``GLEW_SHARED_LIBRARIES``
|
||||||
|
libraries to link against shared GLEW
|
||||||
|
``GLEW_STATIC_LIBRARIES``
|
||||||
|
libraries to link against static GLEW
|
||||||
|
``GLEW_FOUND``
|
||||||
|
true if GLEW has been found and can be used
|
||||||
|
``GLEW_VERSION``
|
||||||
|
GLEW version
|
||||||
|
``GLEW_VERSION_MAJOR``
|
||||||
|
GLEW major version
|
||||||
|
``GLEW_VERSION_MINOR``
|
||||||
|
GLEW minor version
|
||||||
|
``GLEW_VERSION_MICRO``
|
||||||
|
GLEW micro version
|
||||||
|
|
||||||
|
#]=======================================================================]
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
|
||||||
|
find_package(GLEW CONFIG QUIET)
|
||||||
|
|
||||||
|
if(GLEW_FOUND)
|
||||||
|
find_package_handle_standard_args(GLEW DEFAULT_MSG GLEW_CONFIG)
|
||||||
|
return()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(GLEW_VERBOSE)
|
||||||
|
message(STATUS "FindGLEW: did not find GLEW CMake config file. Searching for libraries.")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(APPLE)
|
||||||
|
find_package(OpenGL QUIET)
|
||||||
|
|
||||||
|
if(OpenGL_FOUND)
|
||||||
|
if(GLEW_VERBOSE)
|
||||||
|
message(STATUS "FindGLEW: Found OpenGL Framework.")
|
||||||
|
message(STATUS "FindGLEW: OPENGL_LIBRARIES: ${OPENGL_LIBRARIES}")
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
if(GLEW_VERBOSE)
|
||||||
|
message(STATUS "FindGLEW: could not find GLEW library.")
|
||||||
|
endif()
|
||||||
|
return()
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
function(__glew_set_find_library_suffix shared_or_static)
|
||||||
|
if((UNIX AND NOT APPLE) AND "${shared_or_static}" MATCHES "SHARED")
|
||||||
|
set(CMAKE_FIND_LIBRARY_SUFFIXES ".so" PARENT_SCOPE)
|
||||||
|
elseif((UNIX AND NOT APPLE) AND "${shared_or_static}" MATCHES "STATIC")
|
||||||
|
set(CMAKE_FIND_LIBRARY_SUFFIXES ".a" PARENT_SCOPE)
|
||||||
|
elseif(APPLE AND "${shared_or_static}" MATCHES "SHARED")
|
||||||
|
set(CMAKE_FIND_LIBRARY_SUFFIXES ".dylib;.so" PARENT_SCOPE)
|
||||||
|
elseif(APPLE AND "${shared_or_static}" MATCHES "STATIC")
|
||||||
|
set(CMAKE_FIND_LIBRARY_SUFFIXES ".a" PARENT_SCOPE)
|
||||||
|
elseif(WIN32 AND "${shared_or_static}" MATCHES "SHARED")
|
||||||
|
set(CMAKE_FIND_LIBRARY_SUFFIXES ".lib" PARENT_SCOPE)
|
||||||
|
elseif(WIN32 AND "${shared_or_static}" MATCHES "STATIC")
|
||||||
|
set(CMAKE_FIND_LIBRARY_SUFFIXES ".lib;.a;.dll.a" PARENT_SCOPE)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(GLEW_VERBOSE)
|
||||||
|
message(STATUS "FindGLEW: CMAKE_FIND_LIBRARY_SUFFIXES for ${shared_or_static}: ${CMAKE_FIND_LIBRARY_SUFFIXES}")
|
||||||
|
endif()
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
|
||||||
|
if(GLEW_VERBOSE)
|
||||||
|
if(DEFINED GLEW_USE_STATIC_LIBS)
|
||||||
|
message(STATUS "FindGLEW: GLEW_USE_STATIC_LIBS: ${GLEW_USE_STATIC_LIBS}.")
|
||||||
|
else()
|
||||||
|
message(STATUS "FindGLEW: GLEW_USE_STATIC_LIBS is undefined. Treated as FALSE.")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
find_path(GLEW_INCLUDE_DIR GL/glew.h)
|
||||||
|
mark_as_advanced(GLEW_INCLUDE_DIR)
|
||||||
|
|
||||||
|
set(GLEW_INCLUDE_DIRS ${GLEW_INCLUDE_DIR})
|
||||||
|
|
||||||
|
if(GLEW_VERBOSE)
|
||||||
|
message(STATUS "FindGLEW: GLEW_INCLUDE_DIR: ${GLEW_INCLUDE_DIR}")
|
||||||
|
message(STATUS "FindGLEW: GLEW_INCLUDE_DIRS: ${GLEW_INCLUDE_DIRS}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if("${CMAKE_GENERATOR_PLATFORM}" MATCHES "x64" OR "${CMAKE_GENERATOR}" MATCHES "Win64")
|
||||||
|
set(_arch "x64")
|
||||||
|
else()
|
||||||
|
set(_arch "Win32")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
set(__GLEW_CURRENT_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||||
|
|
||||||
|
__glew_set_find_library_suffix(SHARED)
|
||||||
|
|
||||||
|
find_library(GLEW_SHARED_LIBRARY_RELEASE
|
||||||
|
NAMES GLEW glew glew32
|
||||||
|
PATH_SUFFIXES lib lib64 libx32 lib/Release/${_arch}
|
||||||
|
PATHS ENV GLEW_ROOT)
|
||||||
|
|
||||||
|
find_library(GLEW_SHARED_LIBRARY_DEBUG
|
||||||
|
NAMES GLEWd glewd glew32d
|
||||||
|
PATH_SUFFIXES lib lib64
|
||||||
|
PATHS ENV GLEW_ROOT)
|
||||||
|
|
||||||
|
|
||||||
|
__glew_set_find_library_suffix(STATIC)
|
||||||
|
|
||||||
|
find_library(GLEW_STATIC_LIBRARY_RELEASE
|
||||||
|
NAMES GLEW glew glew32s
|
||||||
|
PATH_SUFFIXES lib lib64 libx32 lib/Release/${_arch}
|
||||||
|
PATHS ENV GLEW_ROOT)
|
||||||
|
|
||||||
|
find_library(GLEW_STATIC_LIBRARY_DEBUG
|
||||||
|
NAMES GLEWds glewd glewds glew32ds
|
||||||
|
PATH_SUFFIXES lib lib64
|
||||||
|
PATHS ENV GLEW_ROOT)
|
||||||
|
|
||||||
|
set(CMAKE_FIND_LIBRARY_SUFFIXES ${__GLEW_CURRENT_FIND_LIBRARY_SUFFIXES})
|
||||||
|
unset(__GLEW_CURRENT_FIND_LIBRARY_SUFFIXES)
|
||||||
|
|
||||||
|
include(SelectLibraryConfigurations)
|
||||||
|
|
||||||
|
select_library_configurations(GLEW_SHARED)
|
||||||
|
select_library_configurations(GLEW_STATIC)
|
||||||
|
|
||||||
|
if(NOT GLEW_USE_STATIC_LIBS)
|
||||||
|
set(GLEW_LIBRARIES ${GLEW_SHARED_LIBRARY})
|
||||||
|
else()
|
||||||
|
set(GLEW_LIBRARIES ${GLEW_STATIC_LIBRARY})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
if(GLEW_VERBOSE)
|
||||||
|
message(STATUS "FindGLEW: GLEW_SHARED_LIBRARY_RELEASE: ${GLEW_SHARED_LIBRARY_RELEASE}")
|
||||||
|
message(STATUS "FindGLEW: GLEW_STATIC_LIBRARY_RELEASE: ${GLEW_STATIC_LIBRARY_RELEASE}")
|
||||||
|
message(STATUS "FindGLEW: GLEW_SHARED_LIBRARY_DEBUG: ${GLEW_SHARED_LIBRARY_DEBUG}")
|
||||||
|
message(STATUS "FindGLEW: GLEW_STATIC_LIBRARY_DEBUG: ${GLEW_STATIC_LIBRARY_DEBUG}")
|
||||||
|
message(STATUS "FindGLEW: GLEW_SHARED_LIBRARY: ${GLEW_SHARED_LIBRARY}")
|
||||||
|
message(STATUS "FindGLEW: GLEW_STATIC_LIBRARY: ${GLEW_STATIC_LIBRARY}")
|
||||||
|
message(STATUS "FindGLEW: GLEW_LIBRARIES: ${GLEW_LIBRARIES}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
# Read version from GL/glew.h file
|
||||||
|
if(EXISTS "${GLEW_INCLUDE_DIR}/GL/glew.h")
|
||||||
|
file(STRINGS "${GLEW_INCLUDE_DIR}/GL/glew.h" _contents REGEX "^VERSION_.+ [0-9]+")
|
||||||
|
if(_contents)
|
||||||
|
string(REGEX REPLACE ".*VERSION_MAJOR[ \t]+([0-9]+).*" "\\1" GLEW_VERSION_MAJOR "${_contents}")
|
||||||
|
string(REGEX REPLACE ".*VERSION_MINOR[ \t]+([0-9]+).*" "\\1" GLEW_VERSION_MINOR "${_contents}")
|
||||||
|
string(REGEX REPLACE ".*VERSION_MICRO[ \t]+([0-9]+).*" "\\1" GLEW_VERSION_MICRO "${_contents}")
|
||||||
|
set(GLEW_VERSION "${GLEW_VERSION_MAJOR}.${GLEW_VERSION_MINOR}.${GLEW_VERSION_MICRO}")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(GLEW_VERBOSE)
|
||||||
|
message(STATUS "FindGLEW: GLEW_VERSION_MAJOR: ${GLEW_VERSION_MAJOR}")
|
||||||
|
message(STATUS "FindGLEW: GLEW_VERSION_MINOR: ${GLEW_VERSION_MINOR}")
|
||||||
|
message(STATUS "FindGLEW: GLEW_VERSION_MICRO: ${GLEW_VERSION_MICRO}")
|
||||||
|
message(STATUS "FindGLEW: GLEW_VERSION: ${GLEW_VERSION}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
find_package_handle_standard_args(GLEW
|
||||||
|
REQUIRED_VARS GLEW_INCLUDE_DIRS GLEW_LIBRARIES
|
||||||
|
VERSION_VAR GLEW_VERSION)
|
||||||
|
|
||||||
|
if(NOT GLEW_FOUND)
|
||||||
|
if(GLEW_VERBOSE)
|
||||||
|
message(STATUS "FindGLEW: could not find GLEW library.")
|
||||||
|
endif()
|
||||||
|
return()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
if(NOT TARGET GLEW::glew AND NOT GLEW_USE_STATIC_LIBS)
|
||||||
|
if(GLEW_VERBOSE)
|
||||||
|
message(STATUS "FindGLEW: Creating GLEW::glew imported target.")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
add_library(GLEW::glew UNKNOWN IMPORTED)
|
||||||
|
|
||||||
|
set_target_properties(GLEW::glew
|
||||||
|
PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${GLEW_INCLUDE_DIRS}")
|
||||||
|
|
||||||
|
if(APPLE)
|
||||||
|
set_target_properties(GLEW::glew
|
||||||
|
PROPERTIES INTERFACE_LINK_LIBRARIES OpenGL::GL)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(GLEW_SHARED_LIBRARY_RELEASE)
|
||||||
|
set_property(TARGET GLEW::glew
|
||||||
|
APPEND
|
||||||
|
PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
|
||||||
|
|
||||||
|
set_target_properties(GLEW::glew
|
||||||
|
PROPERTIES IMPORTED_LOCATION_RELEASE "${GLEW_SHARED_LIBRARY_RELEASE}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(GLEW_SHARED_LIBRARY_DEBUG)
|
||||||
|
set_property(TARGET GLEW::glew
|
||||||
|
APPEND
|
||||||
|
PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
|
||||||
|
|
||||||
|
set_target_properties(GLEW::glew
|
||||||
|
PROPERTIES IMPORTED_LOCATION_DEBUG "${GLEW_SHARED_LIBRARY_DEBUG}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
elseif(NOT TARGET GLEW::glew_s AND GLEW_USE_STATIC_LIBS)
|
||||||
|
if(GLEW_VERBOSE)
|
||||||
|
message(STATUS "FindGLEW: Creating GLEW::glew_s imported target.")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
add_library(GLEW::glew_s UNKNOWN IMPORTED)
|
||||||
|
|
||||||
|
set_target_properties(GLEW::glew_s
|
||||||
|
PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${GLEW_INCLUDE_DIRS}")
|
||||||
|
|
||||||
|
set_target_properties(GLEW::glew_s PROPERTIES INTERFACE_COMPILE_DEFINITIONS GLEW_STATIC)
|
||||||
|
|
||||||
|
if(APPLE)
|
||||||
|
set_target_properties(GLEW::glew_s
|
||||||
|
PROPERTIES INTERFACE_LINK_LIBRARIES OpenGL::GL)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(GLEW_STATIC_LIBRARY_RELEASE)
|
||||||
|
set_property(TARGET GLEW::glew_s
|
||||||
|
APPEND
|
||||||
|
PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
|
||||||
|
|
||||||
|
set_target_properties(GLEW::glew_s
|
||||||
|
PROPERTIES IMPORTED_LOCATION_RELEASE "${GLEW_STATIC_LIBRARY_RELEASE}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(GLEW_STATIC_LIBRARY_DEBUG)
|
||||||
|
set_property(TARGET GLEW::glew_s
|
||||||
|
APPEND
|
||||||
|
PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
|
||||||
|
|
||||||
|
set_target_properties(GLEW::glew_s
|
||||||
|
PROPERTIES IMPORTED_LOCATION_DEBUG "${GLEW_STATIC_LIBRARY_DEBUG}")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(NOT TARGET GLEW::GLEW)
|
||||||
|
if(GLEW_VERBOSE)
|
||||||
|
message(STATUS "FindGLEW: Creating GLEW::GLEW imported target.")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
add_library(GLEW::GLEW UNKNOWN IMPORTED)
|
||||||
|
|
||||||
|
set_target_properties(GLEW::GLEW
|
||||||
|
PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${GLEW_INCLUDE_DIRS}")
|
||||||
|
|
||||||
|
if(APPLE)
|
||||||
|
set_target_properties(GLEW::GLEW
|
||||||
|
PROPERTIES INTERFACE_LINK_LIBRARIES OpenGL::GL)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(TARGET GLEW::glew)
|
||||||
|
if(GLEW_SHARED_LIBRARY_RELEASE)
|
||||||
|
set_property(TARGET GLEW::GLEW
|
||||||
|
APPEND
|
||||||
|
PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
|
||||||
|
|
||||||
|
set_target_properties(GLEW::GLEW
|
||||||
|
PROPERTIES IMPORTED_LOCATION_RELEASE "${GLEW_SHARED_LIBRARY_RELEASE}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(GLEW_SHARED_LIBRARY_DEBUG)
|
||||||
|
set_property(TARGET GLEW::GLEW
|
||||||
|
APPEND
|
||||||
|
PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
|
||||||
|
|
||||||
|
set_target_properties(GLEW::GLEW
|
||||||
|
PROPERTIES IMPORTED_LOCATION_DEBUG "${GLEW_SHARED_LIBRARY_DEBUG}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
elseif(TARGET GLEW::glew_s)
|
||||||
|
if(GLEW_STATIC_LIBRARY_RELEASE)
|
||||||
|
set_property(TARGET GLEW::GLEW
|
||||||
|
APPEND
|
||||||
|
PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
|
||||||
|
|
||||||
|
set_target_properties(GLEW::GLEW
|
||||||
|
PROPERTIES IMPORTED_LOCATION_RELEASE "${GLEW_STATIC_LIBRARY_RELEASE}"
|
||||||
|
INTERFACE_COMPILE_DEFINITIONS GLEW_STATIC)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(GLEW_STATIC_LIBRARY_DEBUG AND GLEW_USE_STATIC_LIBS)
|
||||||
|
set_property(TARGET GLEW::GLEW
|
||||||
|
APPEND
|
||||||
|
PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
|
||||||
|
|
||||||
|
set_target_properties(GLEW::GLEW
|
||||||
|
PROPERTIES IMPORTED_LOCATION_DEBUG "${GLEW_STATIC_LIBRARY_DEBUG}"
|
||||||
|
INTERFACE_COMPILE_DEFINITIONS GLEW_STATIC)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
elseif(GLEW_VERBOSE)
|
||||||
|
message(WARNING "FindGLEW: no `GLEW::glew` or `GLEW::glew_s` target was created. Something went wrong in FindGLEW target creation.")
|
||||||
|
endif()
|
||||||
|
endif()
|
33
deps/CMakeLists.txt
vendored
33
deps/CMakeLists.txt
vendored
@ -45,31 +45,43 @@ option(DEP_WX_STABLE "Build against wxWidgets stable 3.0 as opposed to default 3
|
|||||||
message(STATUS "PrusaSlicer deps DESTDIR: ${DESTDIR}")
|
message(STATUS "PrusaSlicer deps DESTDIR: ${DESTDIR}")
|
||||||
message(STATUS "PrusaSlicer deps debug build: ${DEP_DEBUG}")
|
message(STATUS "PrusaSlicer deps debug build: ${DEP_DEBUG}")
|
||||||
|
|
||||||
|
find_package(Git REQUIRED)
|
||||||
|
|
||||||
|
|
||||||
function(prusaslicer_add_cmake_project projectname)
|
function(prusaslicer_add_cmake_project projectname)
|
||||||
cmake_parse_arguments(P_ARGS "" "INSTALL_DIR" "CMAKE_ARGS" ${ARGN})
|
cmake_parse_arguments(P_ARGS "" "INSTALL_DIR;BUILD_COMMAND;INSTALL_COMMAND" "CMAKE_ARGS" ${ARGN})
|
||||||
|
|
||||||
get_property(_is_multi GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
|
|
||||||
set(_configs_line -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE})
|
set(_configs_line -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE})
|
||||||
|
if (_is_multi OR MSVC)
|
||||||
if (_is_multi)
|
|
||||||
set(_configs_line "")
|
set(_configs_line "")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
|
set(_gen "")
|
||||||
|
set(_build_j "-j${NPROC}")
|
||||||
|
if (MSVC)
|
||||||
|
set(_gen CMAKE_GENERATOR "${DEP_MSVC_GEN}")
|
||||||
|
set(_build_j "/m")
|
||||||
|
endif ()
|
||||||
|
|
||||||
ExternalProject_Add(
|
ExternalProject_Add(
|
||||||
dep_${projectname}
|
dep_${projectname}
|
||||||
EXCLUDE_FROM_ALL ON
|
EXCLUDE_FROM_ALL ON
|
||||||
INSTALL_DIR ${DESTDIR}/usr/local
|
INSTALL_DIR ${DESTDIR}/usr/local
|
||||||
|
${_gen}
|
||||||
CMAKE_ARGS
|
CMAKE_ARGS
|
||||||
-DCMAKE_INSTALL_PREFIX:STRING=${DESTDIR}/usr/local
|
-DCMAKE_INSTALL_PREFIX:STRING=${DESTDIR}/usr/local
|
||||||
|
-DCMAKE_MODULE_PATH:STRING=${PROJECT_SOURCE_DIR}/../cmake/modules
|
||||||
-DCMAKE_PREFIX_PATH:STRING=${DESTDIR}/usr/local
|
-DCMAKE_PREFIX_PATH:STRING=${DESTDIR}/usr/local
|
||||||
-DCMAKE_DEBUG_POSTFIX:STRING=d
|
-DCMAKE_DEBUG_POSTFIX:STRING=d
|
||||||
-DCMAKE_C_COMPILER:STRING=${CMAKE_C_COMPILER}
|
-DCMAKE_C_COMPILER:STRING=${CMAKE_C_COMPILER}
|
||||||
-DCMAKE_CXX_COMPILER:STRING=${CMAKE_CXX_COMPILER}
|
-DCMAKE_CXX_COMPILER:STRING=${CMAKE_CXX_COMPILER}
|
||||||
-DBUILD_SHARED_LIBS:BOOL=OFF
|
-DBUILD_SHARED_LIBS:BOOL=OFF
|
||||||
${_configs_line}
|
"${_configs_line}"
|
||||||
${DEP_CMAKE_OPTS}
|
${DEP_CMAKE_OPTS}
|
||||||
${P_ARGS_CMAKE_ARGS}
|
${P_ARGS_CMAKE_ARGS}
|
||||||
${P_ARGS_UNPARSED_ARGUMENTS}
|
${P_ARGS_UNPARSED_ARGUMENTS}
|
||||||
|
BUILD_COMMAND ${CMAKE_COMMAND} --build . --config Release -- ${_build_j}
|
||||||
|
INSTALL_COMMAND ${CMAKE_COMMAND} --build . --target install --config Release
|
||||||
)
|
)
|
||||||
|
|
||||||
endfunction(prusaslicer_add_cmake_project)
|
endfunction(prusaslicer_add_cmake_project)
|
||||||
@ -113,6 +125,9 @@ else()
|
|||||||
include("deps-linux.cmake")
|
include("deps-linux.cmake")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
include(GLEW/GLEW.cmake)
|
||||||
|
include(OpenCSG/OpenCSG.cmake)
|
||||||
|
|
||||||
include(GMP/GMP.cmake)
|
include(GMP/GMP.cmake)
|
||||||
include(MPFR/MPFR.cmake)
|
include(MPFR/MPFR.cmake)
|
||||||
include(CGAL/CGAL.cmake)
|
include(CGAL/CGAL.cmake)
|
||||||
@ -129,9 +144,10 @@ if (MSVC)
|
|||||||
dep_cereal
|
dep_cereal
|
||||||
dep_nlopt
|
dep_nlopt
|
||||||
# dep_qhull # Experimental
|
# dep_qhull # Experimental
|
||||||
dep_zlib # on Windows we still need zlib
|
dep_ZLIB # on Windows we still need zlib
|
||||||
dep_openvdb
|
dep_openvdb
|
||||||
dep_cgal
|
dep_OpenCSG
|
||||||
|
dep_CGAL
|
||||||
)
|
)
|
||||||
|
|
||||||
else()
|
else()
|
||||||
@ -147,7 +163,8 @@ else()
|
|||||||
dep_nlopt
|
dep_nlopt
|
||||||
dep_qhull
|
dep_qhull
|
||||||
dep_openvdb
|
dep_openvdb
|
||||||
dep_cgal
|
dep_OpenCSG
|
||||||
|
dep_CGAL
|
||||||
# dep_libigl # Not working, static build has different Eigen
|
# dep_libigl # Not working, static build has different Eigen
|
||||||
)
|
)
|
||||||
|
|
||||||
|
11
deps/GLEW/GLEW.cmake
vendored
Normal file
11
deps/GLEW/GLEW.cmake
vendored
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
# We have to check for OpenGL to compile GLEW
|
||||||
|
find_package(OpenGL QUIET REQUIRED)
|
||||||
|
|
||||||
|
prusaslicer_add_cmake_project(
|
||||||
|
GLEW
|
||||||
|
SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/glew
|
||||||
|
)
|
||||||
|
|
||||||
|
if (MSVC)
|
||||||
|
add_debug_dep(dep_GLEW)
|
||||||
|
endif ()
|
33
deps/GLEW/glew/CMakeLists.txt
vendored
Normal file
33
deps/GLEW/glew/CMakeLists.txt
vendored
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
cmake_minimum_required(VERSION 3.0)
|
||||||
|
project(GLEW)
|
||||||
|
|
||||||
|
find_package(OpenGL REQUIRED)
|
||||||
|
|
||||||
|
add_library(glew src/glew.c)
|
||||||
|
target_include_directories(glew PRIVATE include/)
|
||||||
|
target_link_libraries(glew PUBLIC OpenGL::GL)
|
||||||
|
|
||||||
|
if (NOT BUILD_SHARED_LIBS)
|
||||||
|
target_compile_definitions(glew PUBLIC GLEW_STATIC)
|
||||||
|
endif ()
|
||||||
|
|
||||||
|
include(GNUInstallDirs)
|
||||||
|
|
||||||
|
install(
|
||||||
|
FILES
|
||||||
|
${PROJECT_SOURCE_DIR}/include/GL/glew.h
|
||||||
|
${PROJECT_SOURCE_DIR}/include/GL/wglew.h
|
||||||
|
${PROJECT_SOURCE_DIR}/include/GL/glxew.h
|
||||||
|
DESTINATION
|
||||||
|
${CMAKE_INSTALL_INCLUDEDIR}/GL
|
||||||
|
)
|
||||||
|
|
||||||
|
add_library(GLEW INTERFACE)
|
||||||
|
target_link_libraries(GLEW INTERFACE glew)
|
||||||
|
|
||||||
|
install(TARGETS glew GLEW
|
||||||
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||||
|
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||||
|
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||||
|
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
|
||||||
|
)
|
73
deps/GLEW/glew/LICENSE.txt
vendored
Normal file
73
deps/GLEW/glew/LICENSE.txt
vendored
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
The OpenGL Extension Wrangler Library
|
||||||
|
Copyright (C) 2002-2007, Milan Ikits <milan ikits[]ieee org>
|
||||||
|
Copyright (C) 2002-2007, Marcelo E. Magallon <mmagallo[]debian org>
|
||||||
|
Copyright (C) 2002, Lev Povalahev
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
|
||||||
|
* Redistributions of source code must retain the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer.
|
||||||
|
* Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer in the documentation
|
||||||
|
and/or other materials provided with the distribution.
|
||||||
|
* The name of the author may be used to endorse or promote products
|
||||||
|
derived from this software without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
||||||
|
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||||
|
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||||
|
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||||
|
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||||
|
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||||
|
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
||||||
|
THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
|
||||||
|
Mesa 3-D graphics library
|
||||||
|
Version: 7.0
|
||||||
|
|
||||||
|
Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
to deal in the Software without restriction, including without limitation
|
||||||
|
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||||
|
and/or sell copies of the Software, and to permit persons to whom the
|
||||||
|
Software is furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included
|
||||||
|
in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||||
|
BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||||
|
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||||
|
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
|
|
||||||
|
Copyright (c) 2007 The Khronos Group Inc.
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
copy of this software and/or associated documentation files (the
|
||||||
|
"Materials"), to deal in the Materials without restriction, including
|
||||||
|
without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
distribute, sublicense, and/or sell copies of the Materials, and to
|
||||||
|
permit persons to whom the Materials are furnished to do so, subject to
|
||||||
|
the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included
|
||||||
|
in all copies or substantial portions of the Materials.
|
||||||
|
|
||||||
|
THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
|
196
deps/GLEW/glew/README.md
vendored
Normal file
196
deps/GLEW/glew/README.md
vendored
Normal file
@ -0,0 +1,196 @@
|
|||||||
|
THIS IS NOT THE COMPLETE GLEW DISTRIBUTION. ONLY FILES NEEDED FOR COMPILING GLEW INTO SLIC3R WERE PUT INTO THE SLIC3R SOURCE DISTRIBUTION.
|
||||||
|
|
||||||
|
A CMAKE CONFIG EXPORT IS ADDED TO ENABLE FIND PACKAGE TO FIND DEBUG BUILD ON MSVC
|
||||||
|
|
||||||
|
# GLEW - The OpenGL Extension Wrangler Library
|
||||||
|
|
||||||
|
![](http://glew.sourceforge.net/glew.png)
|
||||||
|
|
||||||
|
http://glew.sourceforge.net/
|
||||||
|
|
||||||
|
https://github.com/nigels-com/glew
|
||||||
|
|
||||||
|
[![Build Status](https://travis-ci.org/nigels-com/glew.svg?branch=master)](https://travis-ci.org/nigels-com/glew)
|
||||||
|
[![Gitter](https://badges.gitter.im/nigels-com/glew.svg)](https://gitter.im/nigels-com/glew?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
|
||||||
|
[![Download](https://img.shields.io/sourceforge/dm/glew.svg)](https://sourceforge.net/projects/glew/files/latest/download)
|
||||||
|
|
||||||
|
## Downloads
|
||||||
|
|
||||||
|
Current release is [2.0.0](https://sourceforge.net/projects/glew/files/glew/2.0.0/).
|
||||||
|
[(Change Log)](http://glew.sourceforge.net/log.html)
|
||||||
|
|
||||||
|
Sources available as
|
||||||
|
[ZIP](https://sourceforge.net/projects/glew/files/glew/2.0.0/glew-2.0.0.zip/download) or
|
||||||
|
[TGZ](https://sourceforge.net/projects/glew/files/glew/2.0.0/glew-2.0.0.tgz/download).
|
||||||
|
|
||||||
|
Windows binaries for [32-bit and 64-bit](https://sourceforge.net/projects/glew/files/glew/2.0.0/glew-2.0.0-win32.zip/download).
|
||||||
|
|
||||||
|
### Recent snapshots
|
||||||
|
|
||||||
|
Snapshots may contain new features, bug-fixes or new OpenGL extensions ahead of tested, official releases.
|
||||||
|
|
||||||
|
[glew-20160708.tgz](http://sourceforge.net/projects/glew/files/glew/snapshots/glew-20160708.tgz/download)
|
||||||
|
*GLEW 2.0.0 RC: Core context, EGL support, no MX*
|
||||||
|
|
||||||
|
[glew-20160402.tgz](http://sourceforge.net/projects/glew/files/glew/snapshots/glew-20160402.tgz/download)
|
||||||
|
*GLEW 2.0.0 RC: Core context, EGL support, no MX*
|
||||||
|
|
||||||
|
## Build
|
||||||
|
|
||||||
|
From a downloaded tarball or zip archive:
|
||||||
|
|
||||||
|
### Linux and Mac
|
||||||
|
|
||||||
|
#### Using GNU Make
|
||||||
|
|
||||||
|
##### Install build tools
|
||||||
|
|
||||||
|
Debian/Ubuntu/Mint: `$ sudo apt-get install build-essential libxmu-dev libxi-dev libgl-dev libosmesa-dev git`
|
||||||
|
|
||||||
|
RedHat/CentOS/Fedora: `$ sudo yum install libXmu-devel libXi-devel libGL-devel git`
|
||||||
|
|
||||||
|
##### Build
|
||||||
|
|
||||||
|
$ make
|
||||||
|
$ sudo make install
|
||||||
|
$ make clean
|
||||||
|
|
||||||
|
Targets: `all, glew.lib, glew.bin, clean, install, uninstall`
|
||||||
|
|
||||||
|
Variables: `SYSTEM=linux-clang, GLEW_DEST=/usr/local, STRIP=`
|
||||||
|
|
||||||
|
#### Using cmake
|
||||||
|
|
||||||
|
*CMake 2.8.12 or higher is required.*
|
||||||
|
|
||||||
|
##### Install build tools
|
||||||
|
|
||||||
|
Debian/Ubuntu/Mint: `$ sudo apt-get install build-essential libXmu-dev libXi-dev libgl-dev git cmake`
|
||||||
|
|
||||||
|
RedHat/CentOS/Fedora: `$ sudo yum install libXmu-devel libXi-devel libGL-devel git cmake`
|
||||||
|
|
||||||
|
##### Build
|
||||||
|
|
||||||
|
$ cd build
|
||||||
|
$ cmake ./cmake
|
||||||
|
$ make -j4
|
||||||
|
|
||||||
|
| Target | Description |
|
||||||
|
| ---------- | ----------- |
|
||||||
|
| glew | Build the glew shared library. |
|
||||||
|
| glew_s | Build the glew static library. |
|
||||||
|
| glewinfo | Build the `glewinfo` executable (requires `BUILD_UTILS` to be `ON`). |
|
||||||
|
| visualinfo | Build the `visualinfo` executable (requires `BUILD_UTILS` to be `ON`). |
|
||||||
|
| install | Install all enabled targets into `CMAKE_INSTALL_PREFIX`. |
|
||||||
|
| clean | Clean up build artifacts. |
|
||||||
|
| all | Build all enabled targets (default target). |
|
||||||
|
|
||||||
|
| Variables | Description |
|
||||||
|
| --------------- | ----------- |
|
||||||
|
| BUILD_UTILS | Build the `glewinfo` and `visualinfo` executables. |
|
||||||
|
| GLEW_REGAL | Build in Regal mode. |
|
||||||
|
| GLEW_OSMESA | Build in off-screen Mesa mode. |
|
||||||
|
| BUILD_FRAMEWORK | Build as MacOSX Framework. Setting `CMAKE_INSTALL_PREFIX` to `/Library/Frameworks` is recommended. |
|
||||||
|
|
||||||
|
### Windows
|
||||||
|
|
||||||
|
#### Visual Studio
|
||||||
|
|
||||||
|
Use the provided Visual Studio project file in build/vc12/
|
||||||
|
|
||||||
|
Projects for vc6 and vc10 are also provided
|
||||||
|
|
||||||
|
#### MSYS/Mingw
|
||||||
|
|
||||||
|
Available from [Mingw](http://www.mingw.org/)
|
||||||
|
|
||||||
|
Requirements: bash, make, gcc
|
||||||
|
|
||||||
|
$ mingw32-make
|
||||||
|
$ mingw32-make install
|
||||||
|
$ mingw32-make install.all
|
||||||
|
|
||||||
|
Alternative toolchain: `SYSTEM=mingw-win32`
|
||||||
|
|
||||||
|
#### MSYS2/Mingw-w64
|
||||||
|
|
||||||
|
Available from [Msys2](http://msys2.github.io/) and/or [Mingw-w64](http://mingw-w64.org/)
|
||||||
|
|
||||||
|
Requirements: bash, make, gcc
|
||||||
|
|
||||||
|
$ pacman -S gcc make mingw-w64-i686-gcc mingw-w64-x86_64-gcc
|
||||||
|
$ make
|
||||||
|
$ make install
|
||||||
|
$ make install.all
|
||||||
|
|
||||||
|
Alternative toolchain: `SYSTEM=msys, SYSTEM=msys-win32, SYSTEM=msys-win64`
|
||||||
|
|
||||||
|
## glewinfo
|
||||||
|
|
||||||
|
`glewinfo` is a command-line tool useful for inspecting the capabilities of an
|
||||||
|
OpenGL implementation and GLEW support for that. Please include the output of
|
||||||
|
`glewinfo` with bug reports, as appropriate.
|
||||||
|
|
||||||
|
---------------------------
|
||||||
|
GLEW Extension Info
|
||||||
|
---------------------------
|
||||||
|
|
||||||
|
GLEW version 2.0.0
|
||||||
|
Reporting capabilities of pixelformat 3
|
||||||
|
Running on a Intel(R) HD Graphics 3000 from Intel
|
||||||
|
OpenGL version 3.1.0 - Build 9.17.10.4229 is supported
|
||||||
|
|
||||||
|
GL_VERSION_1_1: OK
|
||||||
|
---------------
|
||||||
|
|
||||||
|
GL_VERSION_1_2: OK
|
||||||
|
---------------
|
||||||
|
glCopyTexSubImage3D: OK
|
||||||
|
glDrawRangeElements: OK
|
||||||
|
glTexImage3D: OK
|
||||||
|
glTexSubImage3D: OK
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
## Code Generation
|
||||||
|
|
||||||
|
A Unix or Mac environment is neded for building GLEW from scratch to
|
||||||
|
include new extensions, or customize the code generation. The extension
|
||||||
|
data is regenerated from the top level source directory with:
|
||||||
|
|
||||||
|
make extensions
|
||||||
|
|
||||||
|
An alternative to generating the GLEW sources from scratch is to
|
||||||
|
download a pre-generated (unsupported) snapshot:
|
||||||
|
|
||||||
|
https://sourceforge.net/projects/glew/files/glew/snapshots/
|
||||||
|
|
||||||
|
Travis-built snapshots are also available:
|
||||||
|
|
||||||
|
https://glew.s3.amazonaws.com/index.html
|
||||||
|
|
||||||
|
## Authors
|
||||||
|
|
||||||
|
GLEW is currently maintained by [Nigel Stewart](https://github.com/nigels-com)
|
||||||
|
with bug fixes, new OpenGL extension support and new releases.
|
||||||
|
|
||||||
|
GLEW was developed by [Milan Ikits](http://www.cs.utah.edu/~ikits/)
|
||||||
|
and [Marcelo Magallon](http://wwwvis.informatik.uni-stuttgart.de/~magallon/).
|
||||||
|
Aaron Lefohn, Joe Kniss, and Chris Wyman were the first users and also
|
||||||
|
assisted with the design and debugging process.
|
||||||
|
|
||||||
|
The acronym GLEW originates from Aaron Lefohn.
|
||||||
|
Pasi Kärkkäinen identified and fixed several problems with
|
||||||
|
GLX and SDL. Nate Robins created the `wglinfo` utility, to
|
||||||
|
which modifications were made by Michael Wimmer.
|
||||||
|
|
||||||
|
## Copyright and Licensing
|
||||||
|
|
||||||
|
GLEW is originally derived from the EXTGL project by Lev Povalahev.
|
||||||
|
The source code is licensed under the
|
||||||
|
[Modified BSD License](http://glew.sourceforge.net/glew.txt), the
|
||||||
|
[Mesa 3-D License](http://glew.sourceforge.net/mesa.txt) (MIT) and the
|
||||||
|
[Khronos License](http://glew.sourceforge.net/khronos.txt) (MIT).
|
||||||
|
|
||||||
|
The automatic code generation scripts are released under the
|
||||||
|
[GNU GPL](http://glew.sourceforge.net/gpl.txt).
|
1
deps/GLEW/glew/VERSION
vendored
Normal file
1
deps/GLEW/glew/VERSION
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
1.13.0
|
19753
deps/GLEW/glew/include/GL/glew.h
vendored
Normal file
19753
deps/GLEW/glew/include/GL/glew.h
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1772
deps/GLEW/glew/include/GL/glxew.h
vendored
Normal file
1772
deps/GLEW/glew/include/GL/glxew.h
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1456
deps/GLEW/glew/include/GL/wglew.h
vendored
Normal file
1456
deps/GLEW/glew/include/GL/wglew.h
vendored
Normal file
File diff suppressed because it is too large
Load Diff
18614
deps/GLEW/glew/src/glew.c
vendored
Normal file
18614
deps/GLEW/glew/src/glew.c
vendored
Normal file
File diff suppressed because it is too large
Load Diff
101
deps/OpenCSG/CMakeLists.txt.in
vendored
Normal file
101
deps/OpenCSG/CMakeLists.txt.in
vendored
Normal file
@ -0,0 +1,101 @@
|
|||||||
|
cmake_minimum_required(VERSION 3.0)
|
||||||
|
|
||||||
|
project(OpenCSG)
|
||||||
|
|
||||||
|
if (NOT BUILD_SHARED_LIBS)
|
||||||
|
set(GLEW_USE_STATIC_LIBS ON)
|
||||||
|
elseif (MSVC)
|
||||||
|
set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
find_package(OpenGL REQUIRED)
|
||||||
|
|
||||||
|
set(GLEW_VERBOSE ON)
|
||||||
|
find_package(GLEW 1.13.0 REQUIRED)
|
||||||
|
|
||||||
|
set(_srcfiles
|
||||||
|
src/area.cpp
|
||||||
|
src/batch.cpp
|
||||||
|
src/context.cpp
|
||||||
|
src/channelManager.cpp
|
||||||
|
src/frameBufferObject.cpp
|
||||||
|
src/frameBufferObjectExt.cpp
|
||||||
|
src/occlusionQuery.cpp
|
||||||
|
src/opencsgRender.cpp
|
||||||
|
src/openglHelper.cpp
|
||||||
|
src/pBufferTexture.cpp
|
||||||
|
src/primitive.cpp
|
||||||
|
src/primitiveHelper.cpp
|
||||||
|
src/renderGoldfeather.cpp
|
||||||
|
src/renderSCS.cpp
|
||||||
|
src/scissorMemo.cpp
|
||||||
|
src/settings.cpp
|
||||||
|
src/stencilManager.cpp
|
||||||
|
RenderTexture/RenderTexture.cpp
|
||||||
|
include/opencsg.h
|
||||||
|
src/opencsgConfig.h
|
||||||
|
src/area.h
|
||||||
|
src/batch.h
|
||||||
|
src/context.h
|
||||||
|
src/channelManager.h
|
||||||
|
src/frameBufferObject.h
|
||||||
|
src/frameBufferObjectExt.h
|
||||||
|
src/occlusionQuery.h
|
||||||
|
src/offscreenBuffer.h
|
||||||
|
src/opencsgRender.h
|
||||||
|
src/openglHelper.h
|
||||||
|
src/pBufferTexture.h
|
||||||
|
src/primitiveHelper.h
|
||||||
|
src/scissorMemo.h
|
||||||
|
src/settings.h
|
||||||
|
src/stencilManager.h
|
||||||
|
)
|
||||||
|
|
||||||
|
add_library(opencsg ${_srcfiles})
|
||||||
|
target_include_directories(opencsg PUBLIC $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>)
|
||||||
|
target_include_directories(opencsg PUBLIC $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}>)
|
||||||
|
target_link_libraries(opencsg PRIVATE GLEW::GLEW OpenGL::GL)
|
||||||
|
|
||||||
|
include(CMakePackageConfigHelpers)
|
||||||
|
|
||||||
|
include(GNUInstallDirs)
|
||||||
|
|
||||||
|
write_basic_package_version_file(
|
||||||
|
"${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake"
|
||||||
|
VERSION 1.4.2
|
||||||
|
COMPATIBILITY AnyNewerVersion
|
||||||
|
)
|
||||||
|
|
||||||
|
install(TARGETS opencsg
|
||||||
|
EXPORT ${PROJECT_NAME}Targets
|
||||||
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||||
|
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||||
|
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||||
|
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||||
|
|
||||||
|
export(EXPORT ${PROJECT_NAME}Targets
|
||||||
|
FILE "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
|
||||||
|
NAMESPACE ${PROJECT_NAME}:: )
|
||||||
|
|
||||||
|
set(ConfigPackageLocation ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME})
|
||||||
|
|
||||||
|
install(EXPORT ${PROJECT_NAME}Targets
|
||||||
|
FILE
|
||||||
|
"${PROJECT_NAME}Config.cmake"
|
||||||
|
NAMESPACE
|
||||||
|
${PROJECT_NAME}::
|
||||||
|
DESTINATION
|
||||||
|
${ConfigPackageLocation}
|
||||||
|
)
|
||||||
|
install(
|
||||||
|
FILES
|
||||||
|
${PROJECT_SOURCE_DIR}/include/opencsg.h
|
||||||
|
DESTINATION
|
||||||
|
${CMAKE_INSTALL_INCLUDEDIR}/opencsg
|
||||||
|
)
|
||||||
|
install(
|
||||||
|
FILES
|
||||||
|
"${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake"
|
||||||
|
DESTINATION
|
||||||
|
${ConfigPackageLocation}
|
||||||
|
)
|
15
deps/OpenCSG/OpenCSG.cmake
vendored
Normal file
15
deps/OpenCSG/OpenCSG.cmake
vendored
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
|
||||||
|
prusaslicer_add_cmake_project(OpenCSG
|
||||||
|
GIT_REPOSITORY https://github.com/floriankirsch/OpenCSG.git
|
||||||
|
GIT_TAG 83e274457b46c9ad11a4ee599203250b1618f3b9 #v1.4.2
|
||||||
|
PATCH_COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt.in ./CMakeLists.txt
|
||||||
|
DEPENDS dep_GLEW
|
||||||
|
)
|
||||||
|
|
||||||
|
if (TARGET dep_ZLIB)
|
||||||
|
add_dependencies(dep_OpenCSG dep_ZLIB)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (MSVC)
|
||||||
|
add_debug_dep(dep_OpenCSG)
|
||||||
|
endif ()
|
51
deps/ZLIB/0001-Respect-BUILD_SHARED_LIBS.patch
vendored
Normal file
51
deps/ZLIB/0001-Respect-BUILD_SHARED_LIBS.patch
vendored
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
From 0c64e33bc2e4e7c011f5a64f5d9c7571a434cc86 Mon Sep 17 00:00:00 2001
|
||||||
|
From: tamasmeszaros <meszaros.q@gmail.com>
|
||||||
|
Date: Sat, 16 Nov 2019 13:43:17 +0100
|
||||||
|
Subject: [PATCH] Respect BUILD_SHARED_LIBS
|
||||||
|
|
||||||
|
---
|
||||||
|
CMakeLists.txt | 14 ++++++++------
|
||||||
|
1 file changed, 8 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index 0fe939d..01dfea1 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -183,10 +183,12 @@ if(MINGW)
|
||||||
|
set(ZLIB_DLL_SRCS ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj)
|
||||||
|
endif(MINGW)
|
||||||
|
|
||||||
|
-add_library(zlib SHARED ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_DLL_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
|
||||||
|
-add_library(zlibstatic STATIC ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
|
||||||
|
-set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL)
|
||||||
|
-set_target_properties(zlib PROPERTIES SOVERSION 1)
|
||||||
|
+add_library(zlib ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS})
|
||||||
|
+if (BUILD_SHARED_LIBS)
|
||||||
|
+ target_sources(zlib PRIVATE ${ZLIB_DLL_SRCS})
|
||||||
|
+ set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL)
|
||||||
|
+ set_target_properties(zlib PROPERTIES SOVERSION 1)
|
||||||
|
+endif()
|
||||||
|
|
||||||
|
if(NOT CYGWIN)
|
||||||
|
# This property causes shared libraries on Linux to have the full version
|
||||||
|
@@ -201,7 +203,7 @@ endif()
|
||||||
|
|
||||||
|
if(UNIX)
|
||||||
|
# On unix-like platforms the library is almost always called libz
|
||||||
|
- set_target_properties(zlib zlibstatic PROPERTIES OUTPUT_NAME z)
|
||||||
|
+ set_target_properties(zlib PROPERTIES OUTPUT_NAME z)
|
||||||
|
if(NOT APPLE)
|
||||||
|
set_target_properties(zlib PROPERTIES LINK_FLAGS "-Wl,--version-script,\"${CMAKE_CURRENT_SOURCE_DIR}/zlib.map\"")
|
||||||
|
endif()
|
||||||
|
@@ -211,7 +213,7 @@ elseif(BUILD_SHARED_LIBS AND WIN32)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL )
|
||||||
|
- install(TARGETS zlib zlibstatic
|
||||||
|
+ install(TARGETS zlib
|
||||||
|
RUNTIME DESTINATION "${INSTALL_BIN_DIR}"
|
||||||
|
ARCHIVE DESTINATION "${INSTALL_LIB_DIR}"
|
||||||
|
LIBRARY DESTINATION "${INSTALL_LIB_DIR}" )
|
||||||
|
--
|
||||||
|
2.16.2.windows.1
|
||||||
|
|
10
deps/ZLIB/ZLIB.cmake
vendored
Normal file
10
deps/ZLIB/ZLIB.cmake
vendored
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
prusaslicer_add_cmake_project(ZLIB
|
||||||
|
GIT_REPOSITORY https://github.com/madler/zlib.git
|
||||||
|
GIT_TAG v1.2.11
|
||||||
|
PATCH_COMMAND ${GIT_EXECUTABLE} checkout -f -- . && git clean -df &&
|
||||||
|
${GIT_EXECUTABLE} apply --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-Respect-BUILD_SHARED_LIBS.patch
|
||||||
|
CMAKE_ARGS
|
||||||
|
-DSKIP_INSTALL_FILES=ON # Prevent installation of man pages et al.
|
||||||
|
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
||||||
|
)
|
||||||
|
|
2
deps/deps-macos.cmake
vendored
2
deps/deps-macos.cmake
vendored
@ -89,7 +89,7 @@ ExternalProject_Add(dep_libcurl
|
|||||||
ExternalProject_Add(dep_wxwidgets
|
ExternalProject_Add(dep_wxwidgets
|
||||||
EXCLUDE_FROM_ALL 1
|
EXCLUDE_FROM_ALL 1
|
||||||
GIT_REPOSITORY "https://github.com/prusa3d/wxWidgets"
|
GIT_REPOSITORY "https://github.com/prusa3d/wxWidgets"
|
||||||
GIT_TAG v3.1.1-patched
|
GIT_TAG v3.1.3-patched
|
||||||
BUILD_IN_SOURCE 1
|
BUILD_IN_SOURCE 1
|
||||||
# PATCH_COMMAND "${CMAKE_COMMAND}" -E copy "${CMAKE_CURRENT_SOURCE_DIR}/wxwidgets-pngprefix.h" src/png/pngprefix.h
|
# PATCH_COMMAND "${CMAKE_COMMAND}" -E copy "${CMAKE_CURRENT_SOURCE_DIR}/wxwidgets-pngprefix.h" src/png/pngprefix.h
|
||||||
CONFIGURE_COMMAND env "CXXFLAGS=${DEP_WERRORS_SDK}" "CFLAGS=${DEP_WERRORS_SDK}" ./configure
|
CONFIGURE_COMMAND env "CXXFLAGS=${DEP_WERRORS_SDK}" "CFLAGS=${DEP_WERRORS_SDK}" ./configure
|
||||||
|
6
deps/deps-unix-common.cmake
vendored
6
deps/deps-unix-common.cmake
vendored
@ -7,7 +7,10 @@ else ()
|
|||||||
set(TBB_MINGW_WORKAROUND "")
|
set(TBB_MINGW_WORKAROUND "")
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
find_package(ZLIB REQUIRED)
|
find_package(ZLIB QUIET)
|
||||||
|
if (NOT ZLIB_FOUND)
|
||||||
|
include(ZLIB/ZLIB.cmake)
|
||||||
|
endif ()
|
||||||
|
|
||||||
ExternalProject_Add(dep_tbb
|
ExternalProject_Add(dep_tbb
|
||||||
EXCLUDE_FROM_ALL 1
|
EXCLUDE_FROM_ALL 1
|
||||||
@ -51,7 +54,6 @@ ExternalProject_Add(dep_nlopt
|
|||||||
-DCMAKE_INSTALL_PREFIX=${DESTDIR}/usr/local
|
-DCMAKE_INSTALL_PREFIX=${DESTDIR}/usr/local
|
||||||
${DEP_CMAKE_OPTS}
|
${DEP_CMAKE_OPTS}
|
||||||
)
|
)
|
||||||
find_package(Git REQUIRED)
|
|
||||||
|
|
||||||
ExternalProject_Add(dep_qhull
|
ExternalProject_Add(dep_qhull
|
||||||
EXCLUDE_FROM_ALL 1
|
EXCLUDE_FROM_ALL 1
|
||||||
|
61
deps/deps-windows.cmake
vendored
61
deps/deps-windows.cmake
vendored
@ -149,36 +149,37 @@ ExternalProject_Add(dep_nlopt
|
|||||||
|
|
||||||
add_debug_dep(dep_nlopt)
|
add_debug_dep(dep_nlopt)
|
||||||
|
|
||||||
ExternalProject_Add(dep_zlib
|
include(ZLIB/ZLIB.cmake)
|
||||||
EXCLUDE_FROM_ALL 1
|
# ExternalProject_Add(dep_zlib
|
||||||
URL "https://zlib.net/zlib-1.2.11.tar.xz"
|
# EXCLUDE_FROM_ALL 1
|
||||||
URL_HASH SHA256=4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066
|
# URL "https://zlib.net/zlib-1.2.11.tar.xz"
|
||||||
CMAKE_GENERATOR "${DEP_MSVC_GEN}"
|
# URL_HASH SHA256=4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066
|
||||||
CMAKE_GENERATOR_PLATFORM "${DEP_PLATFORM}"
|
# CMAKE_GENERATOR "${DEP_MSVC_GEN}"
|
||||||
CMAKE_ARGS
|
# CMAKE_GENERATOR_PLATFORM "${DEP_PLATFORM}"
|
||||||
-DSKIP_INSTALL_FILES=ON # Prevent installation of man pages et al.
|
# CMAKE_ARGS
|
||||||
"-DINSTALL_BIN_DIR=${CMAKE_CURRENT_BINARY_DIR}\\fallout" # I found no better way of preventing zlib from creating & installing DLLs :-/
|
# -DSKIP_INSTALL_FILES=ON # Prevent installation of man pages et al.
|
||||||
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
# "-DINSTALL_BIN_DIR=${CMAKE_CURRENT_BINARY_DIR}\\fallout" # I found no better way of preventing zlib from creating & installing DLLs :-/
|
||||||
"-DCMAKE_INSTALL_PREFIX:PATH=${DESTDIR}\\usr\\local"
|
# -DCMAKE_POSITION_INDEPENDENT_CODE=ON
|
||||||
BUILD_COMMAND msbuild /m /P:Configuration=Release INSTALL.vcxproj
|
# "-DCMAKE_INSTALL_PREFIX:PATH=${DESTDIR}\\usr\\local"
|
||||||
INSTALL_COMMAND ""
|
# BUILD_COMMAND msbuild /m /P:Configuration=Release INSTALL.vcxproj
|
||||||
)
|
# INSTALL_COMMAND ""
|
||||||
|
# )
|
||||||
|
|
||||||
add_debug_dep(dep_zlib)
|
add_debug_dep(dep_ZLIB)
|
||||||
|
|
||||||
# The following steps are unfortunately needed to remove the _static suffix on libraries
|
# The following steps are unfortunately needed to remove the _static suffix on libraries
|
||||||
ExternalProject_Add_Step(dep_zlib fix_static
|
# ExternalProject_Add_Step(dep_zlib fix_static
|
||||||
DEPENDEES install
|
# DEPENDEES install
|
||||||
COMMAND "${CMAKE_COMMAND}" -E rename zlibstatic.lib zlib.lib
|
# COMMAND "${CMAKE_COMMAND}" -E rename zlibstatic.lib zlib.lib
|
||||||
WORKING_DIRECTORY "${DESTDIR}\\usr\\local\\lib\\"
|
# WORKING_DIRECTORY "${DESTDIR}\\usr\\local\\lib\\"
|
||||||
)
|
# )
|
||||||
if (${DEP_DEBUG})
|
# if (${DEP_DEBUG})
|
||||||
ExternalProject_Add_Step(dep_zlib fix_static_debug
|
# ExternalProject_Add_Step(dep_zlib fix_static_debug
|
||||||
DEPENDEES install
|
# DEPENDEES install
|
||||||
COMMAND "${CMAKE_COMMAND}" -E rename zlibstaticd.lib zlibd.lib
|
# COMMAND "${CMAKE_COMMAND}" -E rename zlibstaticd.lib zlibd.lib
|
||||||
WORKING_DIRECTORY "${DESTDIR}\\usr\\local\\lib\\"
|
# WORKING_DIRECTORY "${DESTDIR}\\usr\\local\\lib\\"
|
||||||
)
|
# )
|
||||||
endif ()
|
# endif ()
|
||||||
|
|
||||||
if (${DEPS_BITS} EQUAL 32)
|
if (${DEPS_BITS} EQUAL 32)
|
||||||
set(DEP_LIBCURL_TARGET "x86")
|
set(DEP_LIBCURL_TARGET "x86")
|
||||||
@ -214,8 +215,6 @@ if (${DEP_DEBUG})
|
|||||||
)
|
)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
find_package(Git REQUIRED)
|
|
||||||
|
|
||||||
ExternalProject_Add(dep_qhull
|
ExternalProject_Add(dep_qhull
|
||||||
EXCLUDE_FROM_ALL 1
|
EXCLUDE_FROM_ALL 1
|
||||||
#URL "https://github.com/qhull/qhull/archive/v7.3.2.tar.gz"
|
#URL "https://github.com/qhull/qhull/archive/v7.3.2.tar.gz"
|
||||||
@ -273,7 +272,7 @@ ExternalProject_Add(dep_blosc
|
|||||||
#URL_HASH SHA256=7463a1df566704f212263312717ab2c36b45d45cba6cd0dccebf91b2cc4b4da9
|
#URL_HASH SHA256=7463a1df566704f212263312717ab2c36b45d45cba6cd0dccebf91b2cc4b4da9
|
||||||
GIT_REPOSITORY https://github.com/Blosc/c-blosc.git
|
GIT_REPOSITORY https://github.com/Blosc/c-blosc.git
|
||||||
GIT_TAG e63775855294b50820ef44d1b157f4de1cc38d3e #v1.17.0
|
GIT_TAG e63775855294b50820ef44d1b157f4de1cc38d3e #v1.17.0
|
||||||
DEPENDS dep_zlib
|
DEPENDS dep_ZLIB
|
||||||
CMAKE_GENERATOR "${DEP_MSVC_GEN}"
|
CMAKE_GENERATOR "${DEP_MSVC_GEN}"
|
||||||
CMAKE_GENERATOR_PLATFORM "${DEP_PLATFORM}"
|
CMAKE_GENERATOR_PLATFORM "${DEP_PLATFORM}"
|
||||||
CMAKE_ARGS
|
CMAKE_ARGS
|
||||||
@ -300,7 +299,7 @@ ExternalProject_Add(dep_openexr
|
|||||||
EXCLUDE_FROM_ALL 1
|
EXCLUDE_FROM_ALL 1
|
||||||
GIT_REPOSITORY https://github.com/openexr/openexr.git
|
GIT_REPOSITORY https://github.com/openexr/openexr.git
|
||||||
GIT_TAG eae0e337c9f5117e78114fd05f7a415819df413a #v2.4.0
|
GIT_TAG eae0e337c9f5117e78114fd05f7a415819df413a #v2.4.0
|
||||||
DEPENDS dep_zlib
|
DEPENDS dep_ZLIB
|
||||||
CMAKE_GENERATOR "${DEP_MSVC_GEN}"
|
CMAKE_GENERATOR "${DEP_MSVC_GEN}"
|
||||||
CMAKE_GENERATOR_PLATFORM "${DEP_PLATFORM}"
|
CMAKE_GENERATOR_PLATFORM "${DEP_PLATFORM}"
|
||||||
CMAKE_ARGS
|
CMAKE_ARGS
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
cmake_minimum_required(VERSION 3.8)
|
||||||
project(PrusaSlicer-native)
|
project(PrusaSlicer-native)
|
||||||
|
|
||||||
add_subdirectory(build-utils)
|
add_subdirectory(build-utils)
|
||||||
@ -133,13 +134,13 @@ target_link_libraries(PrusaSlicer libslic3r_gui ${wxWidgets_LIBRARIES})
|
|||||||
if (MSVC)
|
if (MSVC)
|
||||||
# Generate debug symbols even in release mode.
|
# Generate debug symbols even in release mode.
|
||||||
target_link_options(PrusaSlicer PUBLIC "$<$<CONFIG:RELEASE>:/DEBUG>")
|
target_link_options(PrusaSlicer PUBLIC "$<$<CONFIG:RELEASE>:/DEBUG>")
|
||||||
target_link_libraries(PrusaSlicer user32.lib Setupapi.lib OpenGL32.Lib GlU32.Lib)
|
target_link_libraries(PrusaSlicer user32.lib Setupapi.lib)
|
||||||
elseif (MINGW)
|
elseif (MINGW)
|
||||||
target_link_libraries(PrusaSlicer opengl32 ws2_32 uxtheme setupapi)
|
target_link_libraries(PrusaSlicer ws2_32 uxtheme setupapi)
|
||||||
elseif (APPLE)
|
elseif (APPLE)
|
||||||
target_link_libraries(PrusaSlicer "-framework OpenGL")
|
target_link_libraries(PrusaSlicer "-framework OpenGL")
|
||||||
else ()
|
else ()
|
||||||
target_link_libraries(PrusaSlicer -ldl -lGL -lGLU)
|
target_link_libraries(PrusaSlicer -ldl)
|
||||||
endif ()
|
endif ()
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
|
cmake_minimum_required(VERSION 3.8)
|
||||||
project(libslic3r_gui)
|
project(libslic3r_gui)
|
||||||
cmake_minimum_required(VERSION 2.6)
|
|
||||||
|
|
||||||
include(PrecompiledHeader)
|
include(PrecompiledHeader)
|
||||||
|
|
||||||
@ -174,7 +174,7 @@ add_library(libslic3r_gui STATIC ${SLIC3R_GUI_SOURCES})
|
|||||||
|
|
||||||
encoding_check(libslic3r_gui)
|
encoding_check(libslic3r_gui)
|
||||||
|
|
||||||
target_link_libraries(libslic3r_gui libslic3r avrdude cereal imgui ${GLEW_LIBRARIES} hidapi)
|
target_link_libraries(libslic3r_gui libslic3r avrdude cereal imgui GLEW::GLEW OpenGL::GL OpenGL::GLU hidapi)
|
||||||
if (SLIC3R_PCH AND NOT SLIC3R_SYNTAXONLY)
|
if (SLIC3R_PCH AND NOT SLIC3R_SYNTAXONLY)
|
||||||
add_precompiled_header(libslic3r_gui pchheader.hpp FORCEINCLUDE)
|
add_precompiled_header(libslic3r_gui pchheader.hpp FORCEINCLUDE)
|
||||||
endif ()
|
endif ()
|
||||||
|
Loading…
Reference in New Issue
Block a user