annotate Resources/CMake/BoostConfiguration.cmake @ 3579:74fc2a3b43bb

-DBOOST_LEXICAL_CAST_ASSUME_C_LOCALE
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 20 Nov 2019 09:44:46 +0100
parents ab17e8e94776
children 468181e2f090
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
735
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
1 if (STATIC_BUILD OR NOT USE_SYSTEM_BOOST)
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
2 set(BOOST_STATIC 1)
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
3 else()
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
4 include(FindBoost)
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
5
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
6 set(BOOST_STATIC 0)
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
7 #set(Boost_DEBUG 1)
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
8 #set(Boost_USE_STATIC_LIBS ON)
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
9
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
10 if (ENABLE_LOCALE)
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
11 list(APPEND ORTHANC_BOOST_COMPONENTS locale)
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
12 endif()
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
13
2468
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2455
diff changeset
14 list(APPEND ORTHANC_BOOST_COMPONENTS filesystem thread system date_time regex)
2469
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2468
diff changeset
15 find_package(Boost COMPONENTS "${ORTHANC_BOOST_COMPONENTS}")
735
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
16
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
17 if (NOT Boost_FOUND)
2469
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2468
diff changeset
18 foreach (item ${ORTHANC_BOOST_COMPONENTS})
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2468
diff changeset
19 string(TOUPPER ${item} tmp)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2468
diff changeset
20
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2468
diff changeset
21 if (Boost_${tmp}_FOUND)
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2468
diff changeset
22 set(tmp2 "found")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2468
diff changeset
23 else()
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2468
diff changeset
24 set(tmp2 "missing")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2468
diff changeset
25 endif()
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2468
diff changeset
26
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2468
diff changeset
27 message("Boost component ${item} - ${tmp2}")
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2468
diff changeset
28 endforeach()
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2468
diff changeset
29
735
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
30 message(FATAL_ERROR "Unable to locate Boost on this system")
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
31 endif()
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
32
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
33 # Boost releases 1.44 through 1.47 supply both V2 and V3 filesystem
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
34 # http://www.boost.org/doc/libs/1_46_1/libs/filesystem/v3/doc/index.htm
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
35 if (${Boost_VERSION} LESS 104400)
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
36 add_definitions(
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
37 -DBOOST_HAS_FILESYSTEM_V3=0
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
38 )
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
39 else()
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
40 add_definitions(
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
41 -DBOOST_HAS_FILESYSTEM_V3=1
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
42 -DBOOST_FILESYSTEM_VERSION=3
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
43 )
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
44 endif()
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
45
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
46 include_directories(${Boost_INCLUDE_DIRS})
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
47 link_libraries(${Boost_LIBRARIES})
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
48 endif()
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
49
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
50
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
51 if (BOOST_STATIC)
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
52 ##
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
53 ## Parameters for static compilation of Boost
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
54 ##
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
55
3282
e8ce77f3dec1 upgrade to Boost 1.69.0
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3241
diff changeset
56 set(BOOST_NAME boost_1_69_0)
e8ce77f3dec1 upgrade to Boost 1.69.0
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3241
diff changeset
57 set(BOOST_VERSION 1.69.0)
3313
3e0ad879eba2 added chrono library in Boost for Stone
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3282
diff changeset
58 set(BOOST_BCP_SUFFIX bcpdigest-1.5.6)
3e0ad879eba2 added chrono library in Boost for Stone
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3282
diff changeset
59 set(BOOST_MD5 "579bccc0ea4d1a261c1d0c5e27446c3d")
3133
0c2a8d5e0097 moving third-party dependencies to another server
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2988
diff changeset
60 set(BOOST_URL "http://orthanc.osimis.io/ThirdPartyDownloads/${BOOST_NAME}_${BOOST_BCP_SUFFIX}.tar.gz")
735
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
61 set(BOOST_SOURCES_DIR ${CMAKE_BINARY_DIR}/${BOOST_NAME})
1537
fbf763bb1fa3 error detection in patches
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1473
diff changeset
62
2455
6b3c0d5f65af improved e2fsprogs
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2454
diff changeset
63 if (IS_DIRECTORY "${BOOST_SOURCES_DIR}")
6b3c0d5f65af improved e2fsprogs
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2454
diff changeset
64 set(FirstRun OFF)
6b3c0d5f65af improved e2fsprogs
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2454
diff changeset
65 else()
6b3c0d5f65af improved e2fsprogs
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2454
diff changeset
66 set(FirstRun ON)
6b3c0d5f65af improved e2fsprogs
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2454
diff changeset
67 endif()
6b3c0d5f65af improved e2fsprogs
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2454
diff changeset
68
1537
fbf763bb1fa3 error detection in patches
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1473
diff changeset
69 DownloadPackage(${BOOST_MD5} ${BOOST_URL} "${BOOST_SOURCES_DIR}")
735
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
70
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
71
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
72 ##
2878
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
73 ## Patching boost
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
74 ##
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
75
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
76 execute_process(
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
77 COMMAND ${PATCH_EXECUTABLE} -p0 -N -i
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
78 ${ORTHANC_ROOT}/Resources/Patches/boost-${BOOST_VERSION}-linux-standard-base.patch
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
79 WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
80 RESULT_VARIABLE Failure
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
81 )
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
82
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
83 if (FirstRun AND Failure)
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
84 message(FATAL_ERROR "Error while patching a file")
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
85 endif()
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
86
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
87
320a877a1f40 making the boost patch mandatory
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2782
diff changeset
88 ##
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
89 ## Generic configuration of Boost
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
90 ##
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
91
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
92 if (CMAKE_COMPILER_IS_GNUCXX)
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
93 add_definitions(-isystem ${BOOST_SOURCES_DIR})
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
94 endif()
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
95
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
96 include_directories(
2912
ab03dae59d6e place Boost include directories at highest priority
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2878
diff changeset
97 BEFORE ${BOOST_SOURCES_DIR}
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
98 )
927
ff1812962f30 fix DOS EOL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 921
diff changeset
99
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
100 add_definitions(
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
101 # Static build of Boost
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
102 -DBOOST_ALL_NO_LIB
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
103 -DBOOST_ALL_NOLIB
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
104 -DBOOST_DATE_TIME_NO_LIB
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
105 -DBOOST_THREAD_BUILD_LIB
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
106 -DBOOST_PROGRAM_OPTIONS_NO_LIB
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
107 -DBOOST_REGEX_NO_LIB
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
108 -DBOOST_SYSTEM_NO_LIB
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
109 -DBOOST_LOCALE_NO_LIB
3579
74fc2a3b43bb -DBOOST_LEXICAL_CAST_ASSUME_C_LOCALE
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3347
diff changeset
110
74fc2a3b43bb -DBOOST_LEXICAL_CAST_ASSUME_C_LOCALE
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3347
diff changeset
111 # In static builds, explicitly prevent Boost from using the system
74fc2a3b43bb -DBOOST_LEXICAL_CAST_ASSUME_C_LOCALE
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3347
diff changeset
112 # locale in lexical casts. This is notably important if
74fc2a3b43bb -DBOOST_LEXICAL_CAST_ASSUME_C_LOCALE
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3347
diff changeset
113 # "boost::lexical_cast<double>()" is applied to strings containing
74fc2a3b43bb -DBOOST_LEXICAL_CAST_ASSUME_C_LOCALE
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3347
diff changeset
114 # "," instead of "." as decimal separators. Check out function
74fc2a3b43bb -DBOOST_LEXICAL_CAST_ASSUME_C_LOCALE
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3347
diff changeset
115 # "OrthancStone::LinearAlgebra::ParseVector()".
74fc2a3b43bb -DBOOST_LEXICAL_CAST_ASSUME_C_LOCALE
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3347
diff changeset
116 -DBOOST_LEXICAL_CAST_ASSUME_C_LOCALE
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
117 )
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
118
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
119 set(BOOST_SOURCES
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
120 ${BOOST_SOURCES_DIR}/libs/system/src/error_code.cpp
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
121 )
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
122
2781
13038d638097 primitives for android ndk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2679
diff changeset
123 if ("${CMAKE_SYSTEM_VERSION}" STREQUAL "LinuxStandardBase" OR
13038d638097 primitives for android ndk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2679
diff changeset
124 "${CMAKE_SYSTEM_NAME}" STREQUAL "Android")
2525
94423976888e boost 1.66.0
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2515
diff changeset
125 add_definitions(
94423976888e boost 1.66.0
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2515
diff changeset
126 -DBOOST_SYSTEM_USE_STRERROR=1
94423976888e boost 1.66.0
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2515
diff changeset
127 )
2448
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
128 endif()
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
129
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
130
2369
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
131 ##
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
132 ## Configuration of boost::thread
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
133 ##
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
134
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
135 if (CMAKE_SYSTEM_NAME STREQUAL "Linux" OR
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
136 CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
137 CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
138 CMAKE_SYSTEM_NAME STREQUAL "kFreeBSD" OR
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
139 CMAKE_SYSTEM_NAME STREQUAL "OpenBSD" OR
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
140 CMAKE_SYSTEM_NAME STREQUAL "PNaCl" OR
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
141 CMAKE_SYSTEM_NAME STREQUAL "NaCl32" OR
2782
64e3d4ab158d find sandboxed builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2781
diff changeset
142 CMAKE_SYSTEM_NAME STREQUAL "NaCl64" OR
64e3d4ab158d find sandboxed builds
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2781
diff changeset
143 CMAKE_SYSTEM_NAME STREQUAL "Android")
735
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
144 list(APPEND BOOST_SOURCES
2063
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2057
diff changeset
145 ${BOOST_SOURCES_DIR}/libs/atomic/src/lockpool.cpp
735
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
146 ${BOOST_SOURCES_DIR}/libs/thread/src/pthread/once.cpp
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
147 ${BOOST_SOURCES_DIR}/libs/thread/src/pthread/thread.cpp
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
148 )
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
149
2057
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2018
diff changeset
150 if ("${CMAKE_SYSTEM_VERSION}" STREQUAL "LinuxStandardBase" OR
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
151 CMAKE_SYSTEM_NAME STREQUAL "PNaCl" OR
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
152 CMAKE_SYSTEM_NAME STREQUAL "NaCl32" OR
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
153 CMAKE_SYSTEM_NAME STREQUAL "NaCl64")
735
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
154 add_definitions(-DBOOST_HAS_SCHED_YIELD=1)
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
155 endif()
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
156
3347
ab17e8e94776 fix build of Stone on OS X
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3313
diff changeset
157 # Fix for error: "boost_1_69_0/boost/chrono/detail/inlined/mac/thread_clock.hpp:54:28:
ab17e8e94776 fix build of Stone on OS X
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3313
diff changeset
158 # error: use of undeclared identifier 'pthread_mach_thread_np'"
ab17e8e94776 fix build of Stone on OS X
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3313
diff changeset
159 # https://github.com/envoyproxy/envoy/pull/1785
ab17e8e94776 fix build of Stone on OS X
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3313
diff changeset
160 if (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
ab17e8e94776 fix build of Stone on OS X
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3313
diff changeset
161 add_definitions(-D_DARWIN_C_SOURCE=1)
ab17e8e94776 fix build of Stone on OS X
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3313
diff changeset
162 endif()
ab17e8e94776 fix build of Stone on OS X
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3313
diff changeset
163
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
164 elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows")
735
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
165 list(APPEND BOOST_SOURCES
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
166 ${BOOST_SOURCES_DIR}/libs/thread/src/win32/tss_dll.cpp
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
167 ${BOOST_SOURCES_DIR}/libs/thread/src/win32/thread.cpp
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
168 ${BOOST_SOURCES_DIR}/libs/thread/src/win32/tss_pe.cpp
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
169 )
1094
1b905ad6c913 Replace wconv by iconv under Windows
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 930
diff changeset
170
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
171 elseif (CMAKE_SYSTEM_NAME STREQUAL "Emscripten")
2781
13038d638097 primitives for android ndk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2679
diff changeset
172 # No support for threads in asm.js/WebAssembly
13038d638097 primitives for android ndk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2679
diff changeset
173
735
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
174 else()
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
175 message(FATAL_ERROR "Support your platform here")
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
176 endif()
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
177
927
ff1812962f30 fix DOS EOL
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 921
diff changeset
178
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
179 ##
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
180 ## Configuration of boost::regex
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
181 ##
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
182
735
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
183 aux_source_directory(${BOOST_SOURCES_DIR}/libs/regex/src BOOST_REGEX_SOURCES)
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
184
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
185 list(APPEND BOOST_SOURCES
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
186 ${BOOST_REGEX_SOURCES}
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
187 )
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
188
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
189
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
190 ##
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
191 ## Configuration of boost::datetime
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
192 ##
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
193
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
194 list(APPEND BOOST_SOURCES
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
195 ${BOOST_SOURCES_DIR}/libs/date_time/src/gregorian/greg_month.cpp
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
196 )
2242
4e8e0ad2001c move USleep() in SystemToolbox
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2186
diff changeset
197
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
198
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
199 ##
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
200 ## Configuration of boost::filesystem
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
201 ##
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
202
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
203 if (CMAKE_SYSTEM_NAME STREQUAL "PNaCl" OR
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
204 CMAKE_SYSTEM_NAME STREQUAL "NaCl32" OR
2781
13038d638097 primitives for android ndk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2679
diff changeset
205 CMAKE_SYSTEM_NAME STREQUAL "NaCl64" OR
13038d638097 primitives for android ndk
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2679
diff changeset
206 CMAKE_SYSTEM_NAME STREQUAL "Android")
2063
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2057
diff changeset
207 # boost::filesystem is not available on PNaCl
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2057
diff changeset
208 add_definitions(
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2057
diff changeset
209 -DBOOST_HAS_FILESYSTEM_V3=0
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2057
diff changeset
210 -D__INTEGRITY=1
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2057
diff changeset
211 )
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2057
diff changeset
212 else()
2143
fd5875662670 creation of namespace SystemToolbox
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2113
diff changeset
213 add_definitions(
fd5875662670 creation of namespace SystemToolbox
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2113
diff changeset
214 -DBOOST_HAS_FILESYSTEM_V3=1
fd5875662670 creation of namespace SystemToolbox
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2113
diff changeset
215 )
2063
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2057
diff changeset
216 list(APPEND BOOST_SOURCES
2369
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
217 ${BOOST_NAME}/libs/filesystem/src/codecvt_error_category.cpp
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
218 ${BOOST_NAME}/libs/filesystem/src/operations.cpp
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
219 ${BOOST_NAME}/libs/filesystem/src/path.cpp
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
220 ${BOOST_NAME}/libs/filesystem/src/path_traits.cpp
2063
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2057
diff changeset
221 )
2368
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2367
diff changeset
222
2369
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
223 if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR
2374
7087141c74b9 fix for FreeBSD
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2371
diff changeset
224 CMAKE_SYSTEM_NAME STREQUAL "OpenBSD" OR
7087141c74b9 fix for FreeBSD
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2371
diff changeset
225 CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
2369
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
226 list(APPEND BOOST_SOURCES
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
227 ${BOOST_SOURCES_DIR}/libs/filesystem/src/utf8_codecvt_facet.cpp
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
228 )
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
229
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
230 elseif (CMAKE_SYSTEM_NAME STREQUAL "Windows")
2368
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2367
diff changeset
231 list(APPEND BOOST_SOURCES
2369
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
232 ${BOOST_NAME}/libs/filesystem/src/windows_file_codecvt.cpp
2368
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2367
diff changeset
233 )
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2367
diff changeset
234 endif()
2063
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2057
diff changeset
235 endif()
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2057
diff changeset
236
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
237
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
238 ##
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
239 ## Configuration of boost::locale
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
240 ##
2018
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
241
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
242 if (NOT ENABLE_LOCALE)
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
243 message("boost::locale is disabled")
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
244 else()
3230
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
245 set(BOOST_ICU_SOURCES
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
246 ${BOOST_SOURCES_DIR}/libs/locale/src/icu/boundary.cpp
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
247 ${BOOST_SOURCES_DIR}/libs/locale/src/icu/codecvt.cpp
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
248 ${BOOST_SOURCES_DIR}/libs/locale/src/icu/collator.cpp
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
249 ${BOOST_SOURCES_DIR}/libs/locale/src/icu/conversion.cpp
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
250 ${BOOST_SOURCES_DIR}/libs/locale/src/icu/date_time.cpp
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
251 ${BOOST_SOURCES_DIR}/libs/locale/src/icu/formatter.cpp
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
252 ${BOOST_SOURCES_DIR}/libs/locale/src/icu/icu_backend.cpp
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
253 ${BOOST_SOURCES_DIR}/libs/locale/src/icu/numeric.cpp
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
254 ${BOOST_SOURCES_DIR}/libs/locale/src/icu/time_zone.cpp
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
255 )
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
256
2018
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
257 list(APPEND BOOST_SOURCES
2369
61371420f383 improvements
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2368
diff changeset
258 ${BOOST_SOURCES_DIR}/libs/locale/src/encoding/codepage.cpp
2018
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
259 ${BOOST_SOURCES_DIR}/libs/locale/src/shared/generator.cpp
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
260 ${BOOST_SOURCES_DIR}/libs/locale/src/shared/date_time.cpp
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
261 ${BOOST_SOURCES_DIR}/libs/locale/src/shared/formatting.cpp
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
262 ${BOOST_SOURCES_DIR}/libs/locale/src/shared/ids.cpp
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
263 ${BOOST_SOURCES_DIR}/libs/locale/src/shared/localization_backend.cpp
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
264 ${BOOST_SOURCES_DIR}/libs/locale/src/shared/message.cpp
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
265 ${BOOST_SOURCES_DIR}/libs/locale/src/shared/mo_lambda.cpp
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
266 ${BOOST_SOURCES_DIR}/libs/locale/src/util/codecvt_converter.cpp
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
267 ${BOOST_SOURCES_DIR}/libs/locale/src/util/default_locale.cpp
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
268 ${BOOST_SOURCES_DIR}/libs/locale/src/util/gregorian.cpp
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
269 ${BOOST_SOURCES_DIR}/libs/locale/src/util/info.cpp
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
270 ${BOOST_SOURCES_DIR}/libs/locale/src/util/locale_data.cpp
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
271 )
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
272
2448
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
273 if (CMAKE_SYSTEM_NAME STREQUAL "OpenBSD" OR
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
274 CMAKE_SYSTEM_VERSION STREQUAL "LinuxStandardBase")
3228
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
275 add_definitions(
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
276 -DBOOST_LOCALE_NO_WINAPI_BACKEND=1
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
277 -DBOOST_LOCALE_NO_POSIX_BACKEND=1
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
278 )
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
279
2448
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
280 list(APPEND BOOST_SOURCES
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
281 ${BOOST_SOURCES_DIR}/libs/locale/src/std/codecvt.cpp
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
282 ${BOOST_SOURCES_DIR}/libs/locale/src/std/collate.cpp
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
283 ${BOOST_SOURCES_DIR}/libs/locale/src/std/converter.cpp
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
284 ${BOOST_SOURCES_DIR}/libs/locale/src/std/numeric.cpp
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
285 ${BOOST_SOURCES_DIR}/libs/locale/src/std/std_backend.cpp
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
286 )
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
287
3241
32596919d729 first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3230
diff changeset
288 if (BOOST_LOCALE_BACKEND STREQUAL "gcc" OR
32596919d729 first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3230
diff changeset
289 BOOST_LOCALE_BACKEND STREQUAL "libiconv")
3228
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
290 add_definitions(-DBOOST_LOCALE_WITH_ICONV=1)
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
291 elseif (BOOST_LOCALE_BACKEND STREQUAL "icu")
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
292 add_definitions(-DBOOST_LOCALE_WITH_ICU=1)
3230
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
293 list(APPEND BOOST_SOURCES ${BOOST_ICU_SOURCES})
3228
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
294 else()
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
295 message(FATAL_ERROR "Unsupported value for BOOST_LOCALE_BACKEND: ${BOOST_LOCALE_BACKEND}")
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
296 endif()
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
297
2448
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
298 elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux" OR
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
299 CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
300 CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
301 CMAKE_SYSTEM_NAME STREQUAL "kFreeBSD" OR
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
302 CMAKE_SYSTEM_NAME STREQUAL "PNaCl" OR
862d943115f9 working on linux standard base
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2432
diff changeset
303 CMAKE_SYSTEM_NAME STREQUAL "NaCl32" OR
2513
97a74f0eac7a loading DICOM dictionaries in sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2512
diff changeset
304 CMAKE_SYSTEM_NAME STREQUAL "NaCl64" OR
97a74f0eac7a loading DICOM dictionaries in sandboxed environments
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2512
diff changeset
305 CMAKE_SYSTEM_NAME STREQUAL "Emscripten") # For WebAssembly or asm.js
3228
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
306 add_definitions(
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
307 -DBOOST_LOCALE_NO_WINAPI_BACKEND=1
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
308 -DBOOST_LOCALE_NO_STD_BACKEND=1
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
309 )
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
310
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
311 list(APPEND BOOST_SOURCES
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
312 ${BOOST_SOURCES_DIR}/libs/locale/src/posix/codecvt.cpp
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
313 ${BOOST_SOURCES_DIR}/libs/locale/src/posix/collate.cpp
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
314 ${BOOST_SOURCES_DIR}/libs/locale/src/posix/converter.cpp
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
315 ${BOOST_SOURCES_DIR}/libs/locale/src/posix/numeric.cpp
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
316 ${BOOST_SOURCES_DIR}/libs/locale/src/posix/posix_backend.cpp
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
317 )
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
318
3228
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
319 if (CMAKE_SYSTEM_NAME STREQUAL "Emscripten" OR
3241
32596919d729 first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3230
diff changeset
320 BOOST_LOCALE_BACKEND STREQUAL "gcc" OR
32596919d729 first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3230
diff changeset
321 BOOST_LOCALE_BACKEND STREQUAL "libiconv")
3228
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
322 # In WebAssembly or asm.js, we rely on the version of iconv
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
323 # that is shipped with the stdlib
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
324 add_definitions(-DBOOST_LOCALE_WITH_ICONV=1)
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
325 elseif (BOOST_LOCALE_BACKEND STREQUAL "icu")
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
326 add_definitions(-DBOOST_LOCALE_WITH_ICU=1)
3230
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
327 list(APPEND BOOST_SOURCES ${BOOST_ICU_SOURCES})
3228
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
328 else()
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
329 message(FATAL_ERROR "Unsupported value for BOOST_LOCALE_BACKEND: ${BOOST_LOCALE_BACKEND}")
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
330 endif()
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
331
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
332 elseif (CMAKE_SYSTEM_NAME STREQUAL "Windows")
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
333 add_definitions(
3228
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
334 -DBOOST_LOCALE_NO_POSIX_BACKEND=1
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
335 -DBOOST_LOCALE_NO_STD_BACKEND=1
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
336 )
3228
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
337
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
338 list(APPEND BOOST_SOURCES
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
339 ${BOOST_SOURCES_DIR}/libs/locale/src/win32/collate.cpp
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
340 ${BOOST_SOURCES_DIR}/libs/locale/src/win32/converter.cpp
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
341 ${BOOST_SOURCES_DIR}/libs/locale/src/win32/lcid.cpp
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
342 ${BOOST_SOURCES_DIR}/libs/locale/src/win32/numeric.cpp
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
343 ${BOOST_SOURCES_DIR}/libs/locale/src/win32/win_backend.cpp
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
344 )
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
345
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
346 # Starting with release 0.8.2, Orthanc statically links against
3241
32596919d729 first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3230
diff changeset
347 # libiconv on Windows. Indeed, the "WCONV" library of Windows XP
32596919d729 first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3230
diff changeset
348 # seems not to support properly several codepages (notably
32596919d729 first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3230
diff changeset
349 # "Latin3", "Hebrew", and "Arabic"). Set "BOOST_LOCALE_BACKEND"
32596919d729 first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3230
diff changeset
350 # to "wconv" to use WCONV anyway.
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
351
3241
32596919d729 first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3230
diff changeset
352 if (BOOST_LOCALE_BACKEND STREQUAL "libiconv")
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
353 add_definitions(-DBOOST_LOCALE_WITH_ICONV=1)
3228
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
354 elseif (BOOST_LOCALE_BACKEND STREQUAL "icu")
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
355 add_definitions(-DBOOST_LOCALE_WITH_ICU=1)
3230
4b042ec734c1 dynamic linking against libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3228
diff changeset
356 list(APPEND BOOST_SOURCES ${BOOST_ICU_SOURCES})
3228
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
357 elseif (BOOST_LOCALE_BACKEND STREQUAL "wconv")
4b9cfd92d1ae preparing for libicu
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3133
diff changeset
358 message("Using Window's wconv")
3241
32596919d729 first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3230
diff changeset
359 add_definitions(-DBOOST_LOCALE_WITH_WCONV=1)
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
360 else()
3241
32596919d729 first compilation combining ICU and LSB
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 3230
diff changeset
361 message(FATAL_ERROR "Unsupported value for BOOST_LOCALE_BACKEND on Windows: ${BOOST_LOCALE_BACKEND}")
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
362 endif()
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
363
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
364 else()
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
365 message(FATAL_ERROR "Support your platform here")
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
366 endif()
2018
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
367 endif()
300599489cab USE_BOOST_LOCALE_BACKENDS
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 1991
diff changeset
368
2367
2aff870c2c58 refactoring of BoostConfiguration.cmake
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2366
diff changeset
369
2113
0108ac01fc8e added source_group directives for MSVC
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2065
diff changeset
370 source_group(ThirdParty\\boost REGULAR_EXPRESSION ${BOOST_SOURCES_DIR}/.*)
0108ac01fc8e added source_group directives for MSVC
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 2065
diff changeset
371
735
ee0d5abf7958 dos2unix
Sebastien Jodogne <s.jodogne@gmail.com>
parents: 626
diff changeset
372 endif()