Line 0
Link Here
|
|
|
1 |
From 433a2d495a2481c63b82c11a30f7c642d6abe63f Mon Sep 17 00:00:00 2001 |
2 |
From: "Paul \"TBBle\" Hampson" <Paul.Hampson@Pobox.com> |
3 |
Date: Fri, 29 Dec 2017 19:55:49 +1100 |
4 |
Subject: [PATCH 1/5] FindBoost: Boost 1.66.0 dependency and release update |
5 |
|
6 |
Release notes: http://www.boost.org/users/history/version_1_66_0.html |
7 |
|
8 |
* All new libraries are header-only. |
9 |
* _Boost_COMPONENT_DEPENDENCIES is unchanged from 1.65.1 |
10 |
* _Boost_FIBER_COMPILER_FEATURES is unchanged from 1.64.0 |
11 |
--- |
12 |
Modules/FindBoost.cmake | 8 ++++---- |
13 |
1 file changed, 4 insertions(+), 4 deletions(-) |
14 |
|
15 |
diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake |
16 |
index a0fd90f771a..6434dcb7dbb 100644 |
17 |
--- Modules/FindBoost.cmake |
18 |
+++ Modules/FindBoost.cmake |
19 |
@@ -791,7 +791,7 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret) |
20 |
set(_Boost_WAVE_DEPENDENCIES filesystem system serialization thread chrono date_time atomic) |
21 |
set(_Boost_WSERIALIZATION_DEPENDENCIES serialization) |
22 |
endif() |
23 |
- if(NOT Boost_VERSION VERSION_LESS 106600) |
24 |
+ if(NOT Boost_VERSION VERSION_LESS 106700) |
25 |
message(WARNING "New Boost version may have incorrect or missing dependencies and imported targets") |
26 |
set(_Boost_IMPORTED_TARGETS FALSE) |
27 |
endif() |
28 |
@@ -925,8 +925,8 @@ endfunction() |
29 |
# `${Boost_ROOT}/libs/fiber/build/Jamfile.v2`. |
30 |
# |
31 |
function(_Boost_COMPILER_FEATURES component _ret) |
32 |
- # Boost >= 1.62 and < 1.65 |
33 |
- if(NOT Boost_VERSION VERSION_LESS 106200 AND Boost_VERSION VERSION_LESS 106500) |
34 |
+ # Boost >= 1.62 and < 1.67 |
35 |
+ if(NOT Boost_VERSION VERSION_LESS 106200 AND Boost_VERSION VERSION_LESS 106700) |
36 |
set(_Boost_FIBER_COMPILER_FEATURES |
37 |
cxx_alias_templates |
38 |
cxx_auto_type |
39 |
@@ -1032,7 +1032,7 @@ else() |
40 |
# _Boost_COMPONENT_HEADERS. See the instructions at the top of |
41 |
# _Boost_COMPONENT_DEPENDENCIES. |
42 |
set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS} |
43 |
- "1.65.1" "1.65.0" "1.65" |
44 |
+ "1.66.0" "1.66" "1.65.1" "1.65.0" "1.65" |
45 |
"1.64.0" "1.64" "1.63.0" "1.63" "1.62.0" "1.62" "1.61.0" "1.61" "1.60.0" "1.60" |
46 |
"1.59.0" "1.59" "1.58.0" "1.58" "1.57.0" "1.57" "1.56.0" "1.56" "1.55.0" "1.55" |
47 |
"1.54.0" "1.54" "1.53.0" "1.53" "1.52.0" "1.52" "1.51.0" "1.51" |
48 |
|
49 |
From b1e9f67137733bc109d355450fcd06edda4784c5 Mon Sep 17 00:00:00 2001 |
50 |
From: "Paul \"TBBle\" Hampson" <Paul.Hampson@Pobox.com> |
51 |
Date: Fri, 29 Dec 2017 20:07:31 +1100 |
52 |
Subject: [PATCH 2/5] FindBoost: Fix incorrect alphabetisation of headers list |
53 |
|
54 |
--- |
55 |
Modules/FindBoost.cmake | 2 +- |
56 |
1 file changed, 1 insertion(+), 1 deletion(-) |
57 |
|
58 |
diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake |
59 |
index 6434dcb7dbb..734a93cca65 100644 |
60 |
--- Modules/FindBoost.cmake |
61 |
+++ Modules/FindBoost.cmake |
62 |
@@ -825,8 +825,8 @@ function(_Boost_COMPONENT_HEADERS component _hdrs) |
63 |
set(_Boost_CONTAINER_HEADERS "boost/container/container_fwd.hpp") |
64 |
set(_Boost_CONTEXT_HEADERS "boost/context/all.hpp") |
65 |
set(_Boost_COROUTINE_HEADERS "boost/coroutine/all.hpp") |
66 |
- set(_Boost_EXCEPTION_HEADERS "boost/exception/exception.hpp") |
67 |
set(_Boost_DATE_TIME_HEADERS "boost/date_time/date.hpp") |
68 |
+ set(_Boost_EXCEPTION_HEADERS "boost/exception/exception.hpp") |
69 |
set(_Boost_FIBER_HEADERS "boost/fiber/all.hpp") |
70 |
set(_Boost_FILESYSTEM_HEADERS "boost/filesystem/path.hpp") |
71 |
set(_Boost_GRAPH_HEADERS "boost/graph/adjacency_list.hpp") |
72 |
|
73 |
From b044f69a413123f15a05034c00a8e3763764a1e5 Mon Sep 17 00:00:00 2001 |
74 |
From: "Paul \"TBBle\" Hampson" <Paul.Hampson@Pobox.com> |
75 |
Date: Fri, 29 Dec 2017 21:50:54 +1100 |
76 |
Subject: [PATCH 3/5] FindBoost: Implement "Architecture and Address Model" tag |
77 |
|
78 |
This tag is new in Boost 1.66.0, and is present in the 'versioned' |
79 |
library file name layout. |
80 |
--- |
81 |
Modules/FindBoost.cmake | 52 +++++++++++++++++++++++++++++++++++++++---------- |
82 |
1 file changed, 42 insertions(+), 10 deletions(-) |
83 |
|
84 |
diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake |
85 |
index 734a93cca65..4b34802fca3 100644 |
86 |
--- Modules/FindBoost.cmake |
87 |
+++ Modules/FindBoost.cmake |
88 |
@@ -1379,8 +1379,11 @@ if(Boost_DEBUG) |
89 |
endif() |
90 |
|
91 |
#====================== |
92 |
-# Systematically build up the Boost ABI tag |
93 |
-# http://boost.org/doc/libs/1_41_0/more/getting_started/windows.html#library-naming |
94 |
+# Systematically build up the Boost ABI tag for the 'tagged' and 'versioned' layouts |
95 |
+# http://boost.org/doc/libs/1_66_0/more/getting_started/windows.html#library-naming |
96 |
+# http://boost.org/doc/libs/1_66_0/boost/config/auto_link.hpp |
97 |
+# http://boost.org/doc/libs/1_66_0/tools/build/src/tools/common.jam |
98 |
+# http://boost.org/doc/libs/1_66_0/boostcpp.jam |
99 |
set( _boost_RELEASE_ABI_TAG "-") |
100 |
set( _boost_DEBUG_ABI_TAG "-") |
101 |
# Key Use this library when: |
102 |
@@ -1412,11 +1415,40 @@ if(Boost_USE_STLPORT) |
103 |
string(APPEND _boost_DEBUG_ABI_TAG "p") |
104 |
endif() |
105 |
# n using the STLport deprecated "native iostreams" feature |
106 |
+# removed from the documentation in 1.43.0 but still present in |
107 |
+# boost/config/auto_link.hpp |
108 |
if(Boost_USE_STLPORT_DEPRECATED_NATIVE_IOSTREAMS) |
109 |
string(APPEND _boost_RELEASE_ABI_TAG "n") |
110 |
string(APPEND _boost_DEBUG_ABI_TAG "n") |
111 |
endif() |
112 |
|
113 |
+# -x86 Architecture and address model tag |
114 |
+# First character is the architecture, then word-size, either 32 or 64 |
115 |
+# Only used in 'versioned' layout, added in Boost 1.66.0 |
116 |
+set(_boost_ARCHITECTURE_TAG "") |
117 |
+# {CMAKE_CXX_COMPILER_ARCHITECTURE_ID} is not currently set for all compilers |
118 |
+if(NOT "x${CMAKE_CXX_COMPILER_ARCHITECTURE_ID}" STREQUAL "x" AND NOT Boost_VERSION VERSION_LESS 106600) |
119 |
+ string(APPEND _boost_ARCHITECTURE_TAG "-") |
120 |
+ # This needs to be kept in-sync with the section of CMakePlatformId.h.in |
121 |
+ # inside 'defined(_WIN32) && defined(_MSC_VER)' |
122 |
+ if(${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} STREQUAL "IA64") |
123 |
+ string(APPEND _boost_ARCHITECTURE_TAG "i") |
124 |
+ elseif(${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} STREQUAL "X86" |
125 |
+ OR ${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} STREQUAL "x64") |
126 |
+ string(APPEND _boost_ARCHITECTURE_TAG "x") |
127 |
+ elseif(${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} MATCHES "^ARM") |
128 |
+ string(APPEND _boost_ARCHITECTURE_TAG "a") |
129 |
+ elseif(${CMAKE_CXX_COMPILER_ARCHITECTURE_ID} STREQUAL "MIPS") |
130 |
+ string(APPEND _boost_ARCHITECTURE_TAG "m") |
131 |
+ endif() |
132 |
+ |
133 |
+ if(CMAKE_SIZEOF_VOID_P EQUAL 8) |
134 |
+ string(APPEND _boost_ARCHITECTURE_TAG "64") |
135 |
+ else() |
136 |
+ string(APPEND _boost_ARCHITECTURE_TAG "32") |
137 |
+ endif() |
138 |
+endif() |
139 |
+ |
140 |
if(Boost_DEBUG) |
141 |
message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] " |
142 |
"_boost_RELEASE_ABI_TAG = ${_boost_RELEASE_ABI_TAG}") |
143 |
@@ -1610,22 +1642,22 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS}) |
144 |
unset(_boost_RELEASE_NAMES) |
145 |
foreach(compiler IN LISTS _boost_COMPILER) |
146 |
list(APPEND _boost_RELEASE_NAMES |
147 |
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}-${Boost_LIB_VERSION} |
148 |
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION} |
149 |
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG} ) |
150 |
endforeach() |
151 |
list(APPEND _boost_RELEASE_NAMES |
152 |
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}-${Boost_LIB_VERSION} |
153 |
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION} |
154 |
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_ABI_TAG} |
155 |
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT} ) |
156 |
if(_boost_STATIC_RUNTIME_WORKAROUND) |
157 |
set(_boost_RELEASE_STATIC_ABI_TAG "-s${_boost_RELEASE_ABI_TAG}") |
158 |
foreach(compiler IN LISTS _boost_COMPILER) |
159 |
list(APPEND _boost_RELEASE_NAMES |
160 |
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}-${Boost_LIB_VERSION} |
161 |
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION} |
162 |
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG} ) |
163 |
endforeach() |
164 |
list(APPEND _boost_RELEASE_NAMES |
165 |
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}-${Boost_LIB_VERSION} |
166 |
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION} |
167 |
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_RELEASE_STATIC_ABI_TAG} ) |
168 |
endif() |
169 |
if(Boost_THREADAPI AND ${COMPONENT} STREQUAL "thread") |
170 |
@@ -1660,11 +1692,11 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS}) |
171 |
unset(_boost_DEBUG_NAMES) |
172 |
foreach(compiler IN LISTS _boost_COMPILER) |
173 |
list(APPEND _boost_DEBUG_NAMES |
174 |
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}-${Boost_LIB_VERSION} |
175 |
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION} |
176 |
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG} ) |
177 |
endforeach() |
178 |
list(APPEND _boost_DEBUG_NAMES |
179 |
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}-${Boost_LIB_VERSION} |
180 |
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION} |
181 |
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_ABI_TAG} |
182 |
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED} |
183 |
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT} ) |
184 |
@@ -1672,11 +1704,11 @@ foreach(COMPONENT ${Boost_FIND_COMPONENTS}) |
185 |
set(_boost_DEBUG_STATIC_ABI_TAG "-s${_boost_DEBUG_ABI_TAG}") |
186 |
foreach(compiler IN LISTS _boost_COMPILER) |
187 |
list(APPEND _boost_DEBUG_NAMES |
188 |
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}-${Boost_LIB_VERSION} |
189 |
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION} |
190 |
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${compiler}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG} ) |
191 |
endforeach() |
192 |
list(APPEND _boost_DEBUG_NAMES |
193 |
- ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}-${Boost_LIB_VERSION} |
194 |
+ ${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG}${_boost_ARCHITECTURE_TAG}-${Boost_LIB_VERSION} |
195 |
${Boost_LIB_PREFIX}${Boost_NAMESPACE}_${COMPONENT}${_boost_MULTITHREADED}${_boost_DEBUG_STATIC_ABI_TAG} ) |
196 |
endif() |
197 |
if(Boost_THREADAPI AND ${COMPONENT} STREQUAL "thread") |
198 |
|
199 |
From d56deff7d127b030739bd0034609d0046121d8cd Mon Sep 17 00:00:00 2001 |
200 |
From: "Paul \"TBBle\" Hampson" <Paul.Hampson@Pobox.com> |
201 |
Date: Fri, 29 Dec 2017 22:38:36 +1100 |
202 |
Subject: [PATCH 4/5] FindBoost: Search for upstream-packaged libs next to |
203 |
includes |
204 |
|
205 |
Upstream packages Boost binaries for Windows with the 'boost' directory |
206 |
(the INCLUDE_DIR) next to the lib-... directory (the LIBRARY_DIR). |
207 |
--- |
208 |
Modules/FindBoost.cmake | 1 + |
209 |
1 file changed, 1 insertion(+) |
210 |
|
211 |
diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake |
212 |
index 4b34802fca3..479c83115c9 100644 |
213 |
--- Modules/FindBoost.cmake |
214 |
+++ Modules/FindBoost.cmake |
215 |
@@ -1496,6 +1496,7 @@ foreach(c DEBUG RELEASE) |
216 |
${Boost_INCLUDE_DIR}/stage/lib |
217 |
) |
218 |
_Boost_UPDATE_WINDOWS_LIBRARY_SEARCH_DIRS_WITH_PREBUILT_PATHS(_boost_LIBRARY_SEARCH_DIRS_${c} "${Boost_INCLUDE_DIR}/..") |
219 |
+ _Boost_UPDATE_WINDOWS_LIBRARY_SEARCH_DIRS_WITH_PREBUILT_PATHS(_boost_LIBRARY_SEARCH_DIRS_${c} "${Boost_INCLUDE_DIR}") |
220 |
if( Boost_NO_SYSTEM_PATHS ) |
221 |
list(APPEND _boost_LIBRARY_SEARCH_DIRS_${c} NO_CMAKE_SYSTEM_PATH NO_SYSTEM_ENVIRONMENT_PATH) |
222 |
else() |
223 |
|
224 |
From 6297d6c7fd6f80dafe17c0aefeeb0439432aa4b0 Mon Sep 17 00:00:00 2001 |
225 |
From: "Paul \"TBBle\" Hampson" <Paul.Hampson@Pobox.com> |
226 |
Date: Sat, 30 Dec 2017 16:00:29 +1100 |
227 |
Subject: [PATCH 5/5] FindBoost: Generate imported targets for future Boost |
228 |
versions |
229 |
|
230 |
Per discussion on cmake/cmake#17575, this protection not particularly |
231 |
valuable, as the dependency information which the imported targets wrap |
232 |
is generated anyway. |
233 |
|
234 |
This removes a road-block for using `Boost_ADDITIONAL_VERSIONS` to |
235 |
support newly-released Boost versions pending a new CMake release. |
236 |
--- |
237 |
Modules/FindBoost.cmake | 1 - |
238 |
1 file changed, 1 deletion(-) |
239 |
|
240 |
diff --git a/Modules/FindBoost.cmake b/Modules/FindBoost.cmake |
241 |
index 479c83115c9..ca2a9c5b358 100644 |
242 |
--- Modules/FindBoost.cmake |
243 |
+++ Modules/FindBoost.cmake |
244 |
@@ -793,7 +793,6 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret) |
245 |
endif() |
246 |
if(NOT Boost_VERSION VERSION_LESS 106700) |
247 |
message(WARNING "New Boost version may have incorrect or missing dependencies and imported targets") |
248 |
- set(_Boost_IMPORTED_TARGETS FALSE) |
249 |
endif() |
250 |
endif() |
251 |
|