blob: c2521d9da266b3ec7eb3140d8ac76f16d8a279b0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 366ead7b..9b8971ec 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -10,6 +10,13 @@ project(mitsuba
CXX C
)
+# from: https://github.com/alicevision/geogram/issues/2#issuecomment-536835320
+set(CMAKE_THREAD_LIBS_INIT "-lpthread")
+set(CMAKE_HAVE_THREADS_LIBRARY 1)
+set(CMAKE_USE_WIN32_THREADS_INIT 0)
+set(CMAKE_USE_PTHREADS_INIT 1)
+set(THREADS_PREFER_PTHREAD_FLAG ON)
+
# ----------------------------------------------------------
# Optional features available to users
# ----------------------------------------------------------
@@ -454,15 +461,13 @@ endif()
# Installation targets
set(MI_DEPEND
- IlmImf IlmThread Imath Iex IexMath Half pugixml
+ IlmImf IlmThread Imath Iex IexMath Half
)
if (CMAKE_SYSTEM_PROCESSOR MATCHES "(x86_64)|(amd64)|(AMD64)")
set(MI_DEPEND ${MI_DEPEND} asmjit)
endif()
-list(APPEND MI_DEPEND png jpeg)
-
if (WIN32)
list(APPEND MI_DEPEND zlib)
endif()
diff --git a/ext/CMakeLists.txt b/ext/CMakeLists.txt
index 7485f252..0859710f 100644
--- a/ext/CMakeLists.txt
+++ b/ext/CMakeLists.txt
@@ -232,58 +232,19 @@ mark_as_advanced(
# libpng
# ----------------------------------------------------------
-set(PNG_SHARED ON CACHE BOOL " " FORCE)
-set(PNG_STATIC OFF CACHE BOOL " " FORCE)
-set(PNG_TESTS OFF CACHE BOOL " " FORCE)
-set(PNG_SKIP_INSTALL_ALL TRUE)
-if (CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64")
-set(PNG_ARM_NEON "on" CACHE STRING " " FORCE)
-endif()
-add_subdirectory(libpng)
-set_property(TARGET png genfiles PROPERTY FOLDER "dependencies")
-set_property(TARGET png PROPERTY OUTPUT_NAME "png-mitsuba")
-
-set(PNG_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/libpng;${CMAKE_CURRENT_BINARY_DIR}/libpng" PARENT_SCOPE)
set(PNG_LIBRARIES "png" PARENT_SCOPE)
-set(PNG_DEFINES -DMI_HAS_LIBPNG PARENT_SCOPE)
-
-mark_as_advanced(DFA_XTRA AWK PNG_FRAMEWORK PNG_HARDWARE_OPTIMIZATIONS
- PNG_PREFIX PNG_SHARED PNG_STATIC PNG_TESTS PNG_BUILD_ZLIB PNG_DEBUG
- PNG_INTEL_SSE M_LIBRARY ld-version-script)
# ----------------------------------------------------------
# libjpeg 7
# ----------------------------------------------------------
-set(LIBJPEG_BUILD_SHARED ON CACHE BOOL " " FORCE)
-set(LIBJPEG_BUILD_EXECUTABLES OFF CACHE BOOL " " FORCE)
-add_subdirectory(libjpeg)
-set_property(TARGET jpeg PROPERTY FOLDER "dependencies")
-set(JPEG_LIBRARIES libjpeg PARENT_SCOPE)
-
-set(JPEG_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/libjpeg;${CMAKE_CURRENT_BINARY_DIR}/libjpeg" PARENT_SCOPE)
-set(JPEG_LIBRARIES "jpeg" PARENT_SCOPE)
-set(JPEG_DEFINES -DMI_HAS_LIBJPEG PARENT_SCOPE)
-
-# Give libpng & libjpeg a name that's guaranteeed not to match other
-# libraries that may already be loaded (e.g. into a Python interpreter)
-set_property(TARGET jpeg PROPERTY OUTPUT_NAME "jpeg-mitsuba")
-
-mark_as_advanced(
- LIBJPEG_BUILD_EXECUTABLES
- LIBJPEG_BUILD_SHARED
-)
+set(JPEG_LIBRARIES jpeg PARENT_SCOPE)
# ----------------------------------------------------------
# pugixml XML parser
# ----------------------------------------------------------
-add_library(pugixml SHARED pugixml/src/pugixml.cpp)
-set_property(TARGET pugixml PROPERTY
- LIBRARY_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/pugixml")
-set_property(TARGET pugixml PROPERTY FOLDER "dependencies")
-set(PUGIXML_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/pugixml/src PARENT_SCOPE)
-target_compile_options(pugixml PRIVATE -DPUGIXML_BUILD_DLL)
+find_package(pugixml CONFIG REQUIRED)
# tinyformat include path
set(TINYFORMAT_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/tinyformat PARENT_SCOPE)
|