1 |
commit: 66879b3d33b9d32a92358da0f31e1e65fe20eed8 |
2 |
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun Feb 10 22:15:47 2019 +0000 |
4 |
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Feb 10 22:18:45 2019 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=66879b3d |
7 |
|
8 |
dev-util/cmake: Bump to version 3.14.0_rc1 |
9 |
|
10 |
Package-Manager: Portage-2.3.59, Repoman-2.3.12 |
11 |
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org> |
12 |
|
13 |
dev-util/cmake/Manifest | 1 + |
14 |
dev-util/cmake/cmake-3.14.0_rc1.ebuild | 229 +++++++++++++++++++++ |
15 |
.../cmake/files/cmake-3.14.0_rc1-FindBLAS.patch | 37 ++++ |
16 |
.../cmake/files/cmake-3.14.0_rc1-FindLAPACK.patch | 55 +++++ |
17 |
.../cmake/files/cmake-3.14.0_rc1-prefix-dirs.patch | 144 +++++++++++++ |
18 |
5 files changed, 466 insertions(+) |
19 |
|
20 |
diff --git a/dev-util/cmake/Manifest b/dev-util/cmake/Manifest |
21 |
index f49657256e9..75582bfc2c4 100644 |
22 |
--- a/dev-util/cmake/Manifest |
23 |
+++ b/dev-util/cmake/Manifest |
24 |
@@ -3,4 +3,5 @@ DIST cmake-3.11.4.tar.gz 7955301 BLAKE2B 2bad70e9e8b1a4081daf79fbec46d7389f68592 |
25 |
DIST cmake-3.12.3.tar.gz 8388552 BLAKE2B 3e4150461f0d03ddaec790c7aa701bdb84b7f22b9e948262214d363d8457a9e2986470e7a0237f46e8a72109b61dc05d657516bb19c42d63c951af92055dd4d9 SHA512 2b5b006bd0fa09431eb525a7f419c64b811afbe1cc81d34e6167e04112966d9f48f28652b21b5a04c889de6227315db57dd2099a17ea6329e27f3e97eac9051c |
26 |
DIST cmake-3.13.3.tar.gz 8616403 BLAKE2B 1c0df89a8cbed3fe94e9fb1491d77b9b87b3ce4d4dad6e90cf7bd3a259ab4839f941f4f52fb8d1cd89711a2f022d72a638a6e907f8d047419508aebe5bd8255d SHA512 3033c434b6880d76a1496c9b1a32835307296a68e4c677acbe09cadb6562088dc9b04fb314d28b4611a1f4ea4d5a1e41c94e7ccf135f21c372a0eadc25aba585 |
27 |
DIST cmake-3.13.4.tar.gz 8617881 BLAKE2B c6bc47c79ea16f975def31ee4a85b795fc2adf96f9af1d99f702519f0bae6adf531fb5abe3e1e23a6b00226c6cb22719d3d58e8caa5b178acfa4de8d01b42b8a SHA512 5a2cc092109652ced5a3a6ae00fe0c7d134efa7d90d59f376368408bb684343db9e144ee53b184f3437f8a86cf9976a130a1e1676c993d56b278a6640a418c93 |
28 |
+DIST cmake-3.14.0-rc1.tar.gz 8844963 BLAKE2B 1bb600c4fda4da411d3897f55696025d0ff14f80154eeb968c67a1e8dbb308f55d38a4a5a9c420038a1aef1fc181778801f954178d3b625faedd3fc51a18b5c7 SHA512 a7f1881100e1c4ca4944fca1f87ed2caac450983fda4b930954f0d25bf39091e28080e49862060d87ec86e61251c712056d8accddaeedb71715cb9fb01aa4559 |
29 |
DIST cmake-3.9.6.tar.gz 7705400 BLAKE2B e0a5307af0a34863c50ea6aa9323025ef588b27e648107c3a81c362ee7ae4a1d2a07cc335d816b286ce4ddb249f9c6c08c3e8cf99856c7113f3724f47c62da43 SHA512 9fda2c9ac054ef8fb1bf3885fbdec02c518da89ade220eba06b5502ac3ff300f635ec0922e61f3b2d090644fb743b8f71a04c532ab66b2d890a180cc7da54e6c |
30 |
|
31 |
diff --git a/dev-util/cmake/cmake-3.14.0_rc1.ebuild b/dev-util/cmake/cmake-3.14.0_rc1.ebuild |
32 |
new file mode 100644 |
33 |
index 00000000000..a35142fe072 |
34 |
--- /dev/null |
35 |
+++ b/dev-util/cmake/cmake-3.14.0_rc1.ebuild |
36 |
@@ -0,0 +1,229 @@ |
37 |
+# Copyright 1999-2019 Gentoo Authors |
38 |
+# Distributed under the terms of the GNU General Public License v2 |
39 |
+ |
40 |
+EAPI=6 |
41 |
+ |
42 |
+CMAKE_MAKEFILE_GENERATOR="emake" |
43 |
+CMAKE_REMOVE_MODULES="no" |
44 |
+inherit bash-completion-r1 elisp-common flag-o-matic gnome2-utils toolchain-funcs eapi7-ver virtualx xdg-utils cmake-utils |
45 |
+ |
46 |
+MY_P="${P/_/-}" |
47 |
+ |
48 |
+DESCRIPTION="Cross platform Make" |
49 |
+HOMEPAGE="https://cmake.org/" |
50 |
+SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz" |
51 |
+ |
52 |
+LICENSE="CMake" |
53 |
+SLOT="0" |
54 |
+[[ "${PV}" = *_rc* ]] || \ |
55 |
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris" |
56 |
+IUSE="doc emacs system-jsoncpp ncurses qt5" |
57 |
+ |
58 |
+RDEPEND=" |
59 |
+ app-crypt/rhash |
60 |
+ >=app-arch/libarchive-3.0.0:= |
61 |
+ >=dev-libs/expat-2.0.1 |
62 |
+ >=dev-libs/libuv-1.10.0:= |
63 |
+ >=net-misc/curl-7.21.5[ssl] |
64 |
+ sys-libs/zlib |
65 |
+ virtual/pkgconfig |
66 |
+ emacs? ( virtual/emacs ) |
67 |
+ ncurses? ( sys-libs/ncurses:0= ) |
68 |
+ qt5? ( |
69 |
+ dev-qt/qtcore:5 |
70 |
+ dev-qt/qtgui:5 |
71 |
+ dev-qt/qtwidgets:5 |
72 |
+ ) |
73 |
+ system-jsoncpp? ( >=dev-libs/jsoncpp-0.6.0_rc2:0= ) |
74 |
+" |
75 |
+DEPEND="${RDEPEND} |
76 |
+ doc? ( |
77 |
+ dev-python/requests |
78 |
+ dev-python/sphinx |
79 |
+ ) |
80 |
+" |
81 |
+ |
82 |
+S="${WORKDIR}/${MY_P}" |
83 |
+ |
84 |
+SITEFILE="50${PN}-gentoo.el" |
85 |
+ |
86 |
+PATCHES=( |
87 |
+ # prefix |
88 |
+ "${FILESDIR}"/${PN}-3.4.0_rc1-darwin-bundle.patch |
89 |
+ "${FILESDIR}"/${PN}-3.14.0_rc1-prefix-dirs.patch |
90 |
+ # Next patch requires new work from prefix people |
91 |
+ #"${FILESDIR}"/${PN}-3.1.0-darwin-isysroot.patch |
92 |
+ |
93 |
+ # handle gentoo packaging in find modules |
94 |
+ "${FILESDIR}"/${PN}-3.14.0_rc1-FindBLAS.patch |
95 |
+ "${FILESDIR}"/${PN}-3.14.0_rc1-FindLAPACK.patch |
96 |
+ "${FILESDIR}"/${PN}-3.5.2-FindQt4.patch |
97 |
+ |
98 |
+ # respect python eclasses |
99 |
+ "${FILESDIR}"/${PN}-2.8.10.2-FindPythonLibs.patch |
100 |
+ "${FILESDIR}"/${PN}-3.9.0_rc2-FindPythonInterp.patch |
101 |
+ |
102 |
+ # boost (#660980) |
103 |
+ "${FILESDIR}"/${PN}-3.11.4-fix-boost-detection.patch |
104 |
+ |
105 |
+ # upstream fixes (can usually be removed with a version bump) |
106 |
+) |
107 |
+ |
108 |
+cmake_src_bootstrap() { |
109 |
+ # Cleanup args to extract only JOBS. |
110 |
+ # Because bootstrap does not know anything else. |
111 |
+ grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< "${MAKEOPTS}" > /dev/null |
112 |
+ if [[ $? -eq 0 ]] ; then |
113 |
+ par_arg=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< "${MAKEOPTS}" | tail -n1 | grep -o '[[:digit:]]+') |
114 |
+ par_arg="--parallel=${par_arg}" |
115 |
+ else |
116 |
+ par_arg="--parallel=1" |
117 |
+ fi |
118 |
+ |
119 |
+ # disable running of cmake in boostrap command |
120 |
+ sed -i \ |
121 |
+ -e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \ |
122 |
+ bootstrap || die "sed failed" |
123 |
+ |
124 |
+ # execinfo.h on Solaris isn't quite what it is on Darwin |
125 |
+ if [[ ${CHOST} == *-solaris* ]] ; then |
126 |
+ sed -i -e 's/execinfo\.h/blablabla.h/' \ |
127 |
+ Source/kwsys/CMakeLists.txt || die |
128 |
+ fi |
129 |
+ |
130 |
+ tc-export CC CXX LD |
131 |
+ |
132 |
+ # bootstrap script isn't exactly /bin/sh compatible |
133 |
+ ${CONFIG_SHELL:-sh} ./bootstrap \ |
134 |
+ --prefix="${T}/cmakestrap/" \ |
135 |
+ ${par_arg} \ |
136 |
+ || die "Bootstrap failed" |
137 |
+} |
138 |
+ |
139 |
+cmake_src_test() { |
140 |
+ # fix OutDir and SelectLibraryConfigurations tests |
141 |
+ # these are altered thanks to our eclass |
142 |
+ sed -i -e 's:#IGNORE ::g' \ |
143 |
+ "${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \ |
144 |
+ || die |
145 |
+ |
146 |
+ pushd "${BUILD_DIR}" > /dev/null |
147 |
+ |
148 |
+ local ctestargs |
149 |
+ [[ -n ${TEST_VERBOSE} ]] && ctestargs="--extra-verbose --output-on-failure" |
150 |
+ |
151 |
+ # Excluded tests: |
152 |
+ # BootstrapTest: we actualy bootstrap it every time so why test it. |
153 |
+ # BundleUtilities: bundle creation broken |
154 |
+ # CMakeOnly.AllFindModules: pthread issues |
155 |
+ # CTest.updatecvs: which fails to commit as root |
156 |
+ # Fortran: requires fortran |
157 |
+ # RunCMake.CompilerLauncher: also requires fortran |
158 |
+ # RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because |
159 |
+ # debugedit binary is not in the expected location |
160 |
+ # TestUpload, which requires network access |
161 |
+ "${BUILD_DIR}"/bin/ctest \ |
162 |
+ -j "$(makeopts_jobs)" \ |
163 |
+ --test-load "$(makeopts_loadavg)" \ |
164 |
+ ${ctestargs} \ |
165 |
+ -E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_RPM|TestUpload)" \ |
166 |
+ || die "Tests failed" |
167 |
+ |
168 |
+ popd > /dev/null |
169 |
+} |
170 |
+ |
171 |
+src_prepare() { |
172 |
+ cmake-utils_src_prepare |
173 |
+ |
174 |
+ # disable Xcode hooks, bug #652134 |
175 |
+ if [[ ${CHOST} == *-darwin* ]] ; then |
176 |
+ sed -i -e 's/__APPLE__/__DISABLED_APPLE__/' \ |
177 |
+ Source/cmGlobalXCodeGenerator.cxx || die |
178 |
+ fi |
179 |
+ |
180 |
+ # Add gcc libs to the default link paths |
181 |
+ sed -i \ |
182 |
+ -e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \ |
183 |
+ -e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \ |
184 |
+ -e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \ |
185 |
+ Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed" |
186 |
+ if ! has_version \>=${CATEGORY}/${PN}-3.4.0_rc1 ; then |
187 |
+ CMAKE_BINARY="${S}/Bootstrap.cmk/cmake" |
188 |
+ cmake_src_bootstrap |
189 |
+ fi |
190 |
+} |
191 |
+ |
192 |
+src_configure() { |
193 |
+ # Fix linking on Solaris |
194 |
+ [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl |
195 |
+ |
196 |
+ local mycmakeargs=( |
197 |
+ -DCMAKE_USE_SYSTEM_LIBRARIES=ON |
198 |
+ -DCMAKE_USE_SYSTEM_LIBRARY_JSONCPP=$(usex system-jsoncpp) |
199 |
+ -DCMAKE_INSTALL_PREFIX="${EPREFIX}"/usr |
200 |
+ -DCMAKE_DOC_DIR=/share/doc/${PF} |
201 |
+ -DCMAKE_MAN_DIR=/share/man |
202 |
+ -DCMAKE_DATA_DIR=/share/${PN} |
203 |
+ -DSPHINX_MAN=$(usex doc) |
204 |
+ -DSPHINX_HTML=$(usex doc) |
205 |
+ -DBUILD_CursesDialog="$(usex ncurses)" |
206 |
+ ) |
207 |
+ |
208 |
+ if use qt5 ; then |
209 |
+ mycmakeargs+=( |
210 |
+ -DBUILD_QtDialog=ON |
211 |
+ $(cmake-utils_use_find_package qt5 Qt5Widgets) |
212 |
+ ) |
213 |
+ fi |
214 |
+ |
215 |
+ cmake-utils_src_configure |
216 |
+} |
217 |
+ |
218 |
+src_compile() { |
219 |
+ cmake-utils_src_compile |
220 |
+ use emacs && elisp-compile Auxiliary/cmake-mode.el |
221 |
+} |
222 |
+ |
223 |
+src_test() { |
224 |
+ virtx cmake_src_test |
225 |
+} |
226 |
+ |
227 |
+src_install() { |
228 |
+ cmake-utils_src_install |
229 |
+ |
230 |
+ if use emacs; then |
231 |
+ elisp-install ${PN} Auxiliary/cmake-mode.el Auxiliary/cmake-mode.elc |
232 |
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}" |
233 |
+ fi |
234 |
+ |
235 |
+ insinto /usr/share/vim/vimfiles/syntax |
236 |
+ doins Auxiliary/vim/syntax/cmake.vim |
237 |
+ |
238 |
+ insinto /usr/share/vim/vimfiles/indent |
239 |
+ doins Auxiliary/vim/indent/cmake.vim |
240 |
+ |
241 |
+ insinto /usr/share/vim/vimfiles/ftdetect |
242 |
+ doins "${FILESDIR}/${PN}.vim" |
243 |
+ |
244 |
+ dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack} |
245 |
+ |
246 |
+ rm -r "${ED%/}"/usr/share/cmake/{completions,editors} || die |
247 |
+} |
248 |
+ |
249 |
+pkg_postinst() { |
250 |
+ use emacs && elisp-site-regen |
251 |
+ if use qt5; then |
252 |
+ gnome2_icon_cache_update |
253 |
+ xdg_desktop_database_update |
254 |
+ xdg_mimeinfo_database_update |
255 |
+ fi |
256 |
+} |
257 |
+ |
258 |
+pkg_postrm() { |
259 |
+ use emacs && elisp-site-regen |
260 |
+ if use qt5; then |
261 |
+ gnome2_icon_cache_update |
262 |
+ xdg_desktop_database_update |
263 |
+ xdg_mimeinfo_database_update |
264 |
+ fi |
265 |
+} |
266 |
|
267 |
diff --git a/dev-util/cmake/files/cmake-3.14.0_rc1-FindBLAS.patch b/dev-util/cmake/files/cmake-3.14.0_rc1-FindBLAS.patch |
268 |
new file mode 100644 |
269 |
index 00000000000..3a308f57cea |
270 |
--- /dev/null |
271 |
+++ b/dev-util/cmake/files/cmake-3.14.0_rc1-FindBLAS.patch |
272 |
@@ -0,0 +1,37 @@ |
273 |
+From 12b2c3ad6a5c5c7f67afe87fec3f81761de0b909 Mon Sep 17 00:00:00 2001 |
274 |
+From: Lars Wendler <polynomial-c@g.o> |
275 |
+Date: Sun, 10 Feb 2019 22:54:51 +0100 |
276 |
+Subject: [PATCH] Prefer pkgconfig in FindBLAS |
277 |
+ |
278 |
+--- |
279 |
+ Modules/FindBLAS.cmake | 7 +++++++ |
280 |
+ 1 file changed, 7 insertions(+) |
281 |
+ |
282 |
+diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake |
283 |
+index 0aa4f5035b..7b67c95f1f 100644 |
284 |
+--- a/Modules/FindBLAS.cmake |
285 |
++++ b/Modules/FindBLAS.cmake |
286 |
+@@ -7,6 +7,10 @@ FindBLAS |
287 |
+ |
288 |
+ Find BLAS library |
289 |
+ |
290 |
++Version modified for Gentoo Linux. |
291 |
++If a valid PkgConfig configuration is found, this overrides and cancels |
292 |
++all further checks. |
293 |
++ |
294 |
+ This module finds an installed fortran library that implements the |
295 |
+ BLAS linear-algebra interface (see http://www.netlib.org/blas/). The |
296 |
+ list of libraries searched for is taken from the autoconf macro file, |
297 |
+@@ -85,6 +89,9 @@ This module defines the following variables: |
298 |
+ find_package(BLAS) |
299 |
+ #]=======================================================================] |
300 |
+ |
301 |
++# first, try PkgConfig |
302 |
++set(BLA_PREFER_PKGCONFIG On) |
303 |
++ |
304 |
+ include(${CMAKE_CURRENT_LIST_DIR}/CheckFunctionExists.cmake) |
305 |
+ include(${CMAKE_CURRENT_LIST_DIR}/CheckFortranFunctionExists.cmake) |
306 |
+ include(${CMAKE_CURRENT_LIST_DIR}/CMakePushCheckState.cmake) |
307 |
+-- |
308 |
+2.20.1 |
309 |
+ |
310 |
|
311 |
diff --git a/dev-util/cmake/files/cmake-3.14.0_rc1-FindLAPACK.patch b/dev-util/cmake/files/cmake-3.14.0_rc1-FindLAPACK.patch |
312 |
new file mode 100644 |
313 |
index 00000000000..ebd83f38d18 |
314 |
--- /dev/null |
315 |
+++ b/dev-util/cmake/files/cmake-3.14.0_rc1-FindLAPACK.patch |
316 |
@@ -0,0 +1,55 @@ |
317 |
+From 6d4d97b328f48862923bb55c1c0976b1d532dcc3 Mon Sep 17 00:00:00 2001 |
318 |
+From: Lars Wendler <polynomial-c@g.o> |
319 |
+Date: Sun, 10 Feb 2019 23:01:53 +0100 |
320 |
+Subject: [PATCH] Prefer pkgconfig in FindLAPACK |
321 |
+ |
322 |
+--- |
323 |
+ Modules/FindLAPACK.cmake | 21 +++++++++++++++++++++ |
324 |
+ 1 file changed, 21 insertions(+) |
325 |
+ |
326 |
+diff --git a/Modules/FindLAPACK.cmake b/Modules/FindLAPACK.cmake |
327 |
+index d6646eaacf..ef5f324670 100644 |
328 |
+--- a/Modules/FindLAPACK.cmake |
329 |
++++ b/Modules/FindLAPACK.cmake |
330 |
+@@ -7,6 +7,10 @@ FindLAPACK |
331 |
+ |
332 |
+ Find LAPACK library |
333 |
+ |
334 |
++Version modified for Gentoo Linux. |
335 |
++If a valid PkgConfig configuration is found, this overrides and cancels |
336 |
++all further checks. |
337 |
++ |
338 |
+ This module finds an installed fortran library that implements the |
339 |
+ LAPACK linear-algebra interface (see http://www.netlib.org/lapack/). |
340 |
+ |
341 |
+@@ -181,6 +185,21 @@ endif() |
342 |
+ |
343 |
+ endmacro() |
344 |
+ |
345 |
++# first, try PkgConfig |
346 |
++find_package(PkgConfig REQUIRED) |
347 |
++pkg_check_modules(PC_LAPACK lapack) |
348 |
++if(PC_LAPACK_FOUND) |
349 |
++ foreach(PC_LIB ${PC_LAPACK_LIBRARIES}) |
350 |
++ find_library(${PC_LIB}_LIBRARY NAMES ${PC_LIB} HINTS ${PC_LAPACK_LIBRARY_DIRS} ) |
351 |
++ if (NOT ${PC_LIB}_LIBRARY) |
352 |
++ message(FATAL_ERROR "Something is wrong in your pkg-config file - lib ${PC_LIB} not found in ${PC_LAPACK_LIBRARY_DIRS}") |
353 |
++ endif (NOT ${PC_LIB}_LIBRARY) |
354 |
++ list(APPEND LAPACK_LIBRARIES ${${PC_LIB}_LIBRARY}) |
355 |
++ endforeach(PC_LIB) |
356 |
++ find_package_handle_standard_args(LAPACK DEFAULT_MSG LAPACK_LIBRARIES) |
357 |
++ mark_as_advanced(LAPACK_LIBRARIES) |
358 |
++else(PC_LAPACK_FOUND) |
359 |
++message(STATUS "No PkgConfig configuration for LAPACK found; starting more extensive search.") |
360 |
+ |
361 |
+ set(LAPACK_LINKER_FLAGS) |
362 |
+ set(LAPACK_LIBRARIES) |
363 |
+@@ -428,3 +447,5 @@ endif() |
364 |
+ |
365 |
+ cmake_pop_check_state() |
366 |
+ set(CMAKE_FIND_LIBRARY_SUFFIXES ${_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES}) |
367 |
++ |
368 |
++endif(PC_LAPACK_FOUND) |
369 |
+-- |
370 |
+2.20.1 |
371 |
+ |
372 |
|
373 |
diff --git a/dev-util/cmake/files/cmake-3.14.0_rc1-prefix-dirs.patch b/dev-util/cmake/files/cmake-3.14.0_rc1-prefix-dirs.patch |
374 |
new file mode 100644 |
375 |
index 00000000000..a4890ffbb2f |
376 |
--- /dev/null |
377 |
+++ b/dev-util/cmake/files/cmake-3.14.0_rc1-prefix-dirs.patch |
378 |
@@ -0,0 +1,144 @@ |
379 |
+From c5d74cb5b1cf87ee933f7547f62dbbb96134964d Mon Sep 17 00:00:00 2001 |
380 |
+From: Lars Wendler <polynomial-c@g.o> |
381 |
+Date: Sun, 10 Feb 2019 22:40:33 +0100 |
382 |
+Subject: [PATCH] Set some proper paths to make cmake find our tools. |
383 |
+ |
384 |
+The ebuild now adds an extra / at the end of $EPREFIX so that it is |
385 |
+never the empty string (so that CMAKE_SYSTEM_PREFIX_PATH remains |
386 |
+correct) |
387 |
+ |
388 |
+Original patch by Heiko Przybyl. |
389 |
+Updated by Chris Reffett (cmake-2.8.8) |
390 |
+Updated by Johannes Huber (cmake-2.8.9) |
391 |
+Updated by Michael Palimaka (cmake-2.8.10) |
392 |
+Updated by Chris Reffett (cmake-2.8.11) |
393 |
+Updated by Michael Palimaka (cmake-3.0.0) |
394 |
+Updated by Lars Wendler (cmake-3.9.0_rc2) |
395 |
+Updated by Benda Xu (cmake-3.13.4) |
396 |
+Updated by Lars Wendler (cmake-3.14.0_rc1) |
397 |
+--- |
398 |
+ Modules/Platform/Darwin.cmake | 12 ++++++---- |
399 |
+ Modules/Platform/UnixPaths.cmake | 38 ++++++++++++++++++++++++-------- |
400 |
+ 2 files changed, 37 insertions(+), 13 deletions(-) |
401 |
+ |
402 |
+diff --git a/Modules/Platform/Darwin.cmake b/Modules/Platform/Darwin.cmake |
403 |
+index a73ffbae75..d00eac4ca4 100644 |
404 |
+--- a/Modules/Platform/Darwin.cmake |
405 |
++++ b/Modules/Platform/Darwin.cmake |
406 |
+@@ -116,9 +116,9 @@ set(CMAKE_C_FRAMEWORK_SEARCH_FLAG -F) |
407 |
+ set(CMAKE_CXX_FRAMEWORK_SEARCH_FLAG -F) |
408 |
+ set(CMAKE_Fortran_FRAMEWORK_SEARCH_FLAG -F) |
409 |
+ |
410 |
+-# default to searching for frameworks first |
411 |
++# default to searching for frameworks last |
412 |
+ if(NOT DEFINED CMAKE_FIND_FRAMEWORK) |
413 |
+- set(CMAKE_FIND_FRAMEWORK FIRST) |
414 |
++ set(CMAKE_FIND_FRAMEWORK LAST) |
415 |
+ endif() |
416 |
+ |
417 |
+ # Older OS X linkers do not report their framework search path |
418 |
+@@ -140,6 +140,8 @@ endif() |
419 |
+ |
420 |
+ # set up the default search directories for frameworks |
421 |
+ set(CMAKE_SYSTEM_FRAMEWORK_PATH |
422 |
++ @GENTOO_PORTAGE_EPREFIX@Frameworks |
423 |
++ @GENTOO_PORTAGE_EPREFIX@usr/lib |
424 |
+ ~/Library/Frameworks |
425 |
+ ) |
426 |
+ if(_CMAKE_OSX_SYSROOT_PATH) |
427 |
+@@ -186,13 +188,15 @@ if(CMAKE_OSX_SYSROOT) |
428 |
+ endif() |
429 |
+ endif() |
430 |
+ |
431 |
+-# default to searching for application bundles first |
432 |
++# default to searching for application bundles last |
433 |
+ if(NOT DEFINED CMAKE_FIND_APPBUNDLE) |
434 |
+- set(CMAKE_FIND_APPBUNDLE FIRST) |
435 |
++ set(CMAKE_FIND_APPBUNDLE LAST) |
436 |
+ endif() |
437 |
+ # set up the default search directories for application bundles |
438 |
+ set(_apps_paths) |
439 |
+ foreach(_path |
440 |
++ @GENTOO_PORTAGE_EPREFIX@Applications |
441 |
++ @GENTOO_PORTAGE_EPREFIX@usr/bin |
442 |
+ "~/Applications" |
443 |
+ "/Applications" |
444 |
+ "${OSX_DEVELOPER_ROOT}/../Applications" # Xcode 4.3+ |
445 |
+diff --git a/Modules/Platform/UnixPaths.cmake b/Modules/Platform/UnixPaths.cmake |
446 |
+index 4ae451472b..aa34bd9a31 100644 |
447 |
+--- a/Modules/Platform/UnixPaths.cmake |
448 |
++++ b/Modules/Platform/UnixPaths.cmake |
449 |
+@@ -23,7 +23,8 @@ get_filename_component(_CMAKE_INSTALL_DIR "${_CMAKE_INSTALL_DIR}" PATH) |
450 |
+ # search types. |
451 |
+ list(APPEND CMAKE_SYSTEM_PREFIX_PATH |
452 |
+ # Standard |
453 |
+- /usr/local /usr / |
454 |
++ @GENTOO_PORTAGE_EPREFIX@usr/local @GENTOO_PORTAGE_EPREFIX@usr @GENTOO_PORTAGE_EPREFIX@ |
455 |
++ @GENTOO_HOST@/usr/local /usr / |
456 |
+ |
457 |
+ # CMake install location |
458 |
+ "${_CMAKE_INSTALL_DIR}" |
459 |
+@@ -50,33 +51,52 @@ list(APPEND CMAKE_SYSTEM_PREFIX_PATH |
460 |
+ |
461 |
+ # List common include file locations not under the common prefixes. |
462 |
+ list(APPEND CMAKE_SYSTEM_INCLUDE_PATH |
463 |
+- # X11 |
464 |
+- /usr/include/X11 |
465 |
++ @GENTOO_PORTAGE_EPREFIX@usr/include |
466 |
+ ) |
467 |
+ |
468 |
+ list(APPEND CMAKE_SYSTEM_LIBRARY_PATH |
469 |
+- # X11 |
470 |
+- /usr/lib/X11 |
471 |
++ @GENTOO_PORTAGE_GCCLIBDIR@/gcc |
472 |
++ @GENTOO_PORTAGE_GCCLIBDIR@ |
473 |
++ @GENTOO_PORTAGE_EPREFIX@usr/lib64 |
474 |
++ @GENTOO_PORTAGE_EPREFIX@usr/libx32 |
475 |
++ @GENTOO_PORTAGE_EPREFIX@usr/lib32 |
476 |
++ @GENTOO_PORTAGE_EPREFIX@usr/lib |
477 |
++ @GENTOO_PORTAGE_EPREFIX@lib |
478 |
++ ) |
479 |
++ |
480 |
++list(APPEND CMAKE_SYSTEM_PROGRAM_PATH |
481 |
++ @GENTOO_PORTAGE_EPREFIX@usr/bin |
482 |
++ @GENTOO_PORTAGE_EPREFIX@bin |
483 |
+ ) |
484 |
+ |
485 |
+ list(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES |
486 |
+- /lib /lib32 /lib64 /usr/lib /usr/lib32 /usr/lib64 |
487 |
++ @GENTOO_PORTAGE_GCCLIBDIR@/gcc |
488 |
++ @GENTOO_PORTAGE_GCCLIBDIR@ |
489 |
++ @GENTOO_PORTAGE_EPREFIX@usr/lib64 |
490 |
++ @GENTOO_PORTAGE_EPREFIX@usr/libx32 |
491 |
++ @GENTOO_PORTAGE_EPREFIX@usr/lib32 |
492 |
++ @GENTOO_PORTAGE_EPREFIX@usr/lib |
493 |
++ @GENTOO_PORTAGE_EPREFIX@lib |
494 |
++ @GENTOO_HOST@/lib /usr/lib /usr/lib32 /usr/lib64 /usr/libx32 |
495 |
+ ) |
496 |
+ |
497 |
+ # Platform-wide directories to avoid adding via -I<dir>. |
498 |
+ list(APPEND CMAKE_PLATFORM_IMPLICIT_INCLUDE_DIRECTORIES |
499 |
+- /usr/include |
500 |
++ @GENTOO_PORTAGE_EPREFIX@usr/include |
501 |
++ @GENTOO_HOST@/usr/include |
502 |
+ ) |
503 |
+ |
504 |
+ # Default per-language values. These may be later replaced after |
505 |
+ # parsing the implicit directory information from compiler output. |
506 |
+ set(_CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES_INIT |
507 |
+ ${CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES} |
508 |
+- /usr/include |
509 |
++ @GENTOO_PORTAGE_EPREFIX@usr/include |
510 |
++ @GENTOO_HOST@/usr/include |
511 |
+ ) |
512 |
+ set(_CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES_INIT |
513 |
+ ${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES} |
514 |
+- /usr/include |
515 |
++ @GENTOO_PORTAGE_EPREFIX@usr/include |
516 |
++ @GENTOO_HOST@/usr/include |
517 |
+ ) |
518 |
+ set(_CMAKE_CUDA_IMPLICIT_INCLUDE_DIRECTORIES_INIT |
519 |
+ ${CMAKE_CUDA_IMPLICIT_INCLUDE_DIRECTORIES} |
520 |
+-- |
521 |
+2.20.1 |
522 |
+ |