| @@ -1,52 +1,64 @@ | | | @@ -1,52 +1,64 @@ |
1 | # $NetBSD: cmake.mk,v 1.10 2013/10/08 12:03:53 obache Exp $ | | 1 | # $NetBSD: cmake.mk,v 1.11 2014/08/23 19:26:07 wiz Exp $ |
2 | # | | 2 | # |
3 | # This file handles packages that use CMake as their primary build | | 3 | # This file handles packages that use CMake as their primary build |
4 | # system. For more information about CMake, see http://www.cmake.org/. | | 4 | # system. For more information about CMake, see http://www.cmake.org/. |
5 | # | | 5 | # |
6 | # === Package-settable variables === | | 6 | # === Package-settable variables === |
7 | # | | 7 | # |
8 | # CMAKE_DEPENDENCIES_REWRITE | | 8 | # CMAKE_DEPENDENCIES_REWRITE |
9 | # A list of files (XXX: variable name) relative to WRKSRC in | | 9 | # A list of files (XXX: variable name) relative to WRKSRC in |
10 | # which, after configuring the package, buildlink3 dependencies | | 10 | # which, after configuring the package, buildlink3 dependencies |
11 | # are resolved to the real ones. | | 11 | # are resolved to the real ones. |
12 | # | | 12 | # |
13 | # CMAKE_MODULE_PATH_OVERRIDE | | 13 | # CMAKE_MODULE_PATH_OVERRIDE |
14 | # A list of files relative to WRKSRC in which the CMAKE_MODULE_PATH | | 14 | # A list of files relative to WRKSRC in which the CMAKE_MODULE_PATH |
15 | # variable is adjusted to include the path from the pkgsrc wrappers. | | 15 | # variable is adjusted to include the path from the pkgsrc wrappers. |
16 | # The file ${WRKSRC}/CMakeLists.txt is always appended to this list. | | 16 | # The file ${WRKSRC}/CMakeLists.txt is always appended to this list. |
17 | # | | 17 | # |
| | | 18 | # CMAKE_PREFIX_PATH |
| | | 19 | # A list of directories to add the CMAKE_PREFIX_PATH cmake variable. |
| | | 20 | # If a package installs it's contents in ${PREFIX}/package instead of |
| | | 21 | # ${PREFIX} and it installs cmake modules there |
| | | 22 | # "CMAKE_PREFIX_PATH += ${PREFIX}/package" should be in it's |
| | | 23 | # buildlink3.mk so that packages that depend on it can find it's |
| | | 24 | # cmake modules if they use cmake to build. |
| | | 25 | # |
18 | | | 26 | |
19 | _CMAKE_DIR= ${BUILDLINK_DIR}/cmake-Modules | | 27 | _CMAKE_DIR= ${BUILDLINK_DIR}/cmake-Modules |
20 | | | 28 | |
21 | CMAKE_ARGS+= -DCMAKE_INSTALL_PREFIX:PATH=${PREFIX} | | 29 | CMAKE_ARGS+= -DCMAKE_INSTALL_PREFIX:PATH=${PREFIX} |
22 | CMAKE_ARGS+= -DCMAKE_MODULE_PATH:PATH=${_CMAKE_DIR} | | 30 | CMAKE_ARGS+= -DCMAKE_MODULE_PATH:PATH=${_CMAKE_DIR} |
23 | CMAKE_ARGS+= -DCMAKE_INSTALL_LIBDIR:PATH=lib | | 31 | CMAKE_ARGS+= -DCMAKE_INSTALL_LIBDIR:PATH=lib |
24 | .if ${OPSYS} != "Darwin" | | 32 | .if ${OPSYS} != "Darwin" |
25 | CMAKE_ARGS+= -DCMAKE_SKIP_RPATH:BOOL=TRUE | | 33 | CMAKE_ARGS+= -DCMAKE_SKIP_RPATH:BOOL=TRUE |
26 | .else | | 34 | .else |
27 | CMAKE_ARGS+= -DCMAKE_SKIP_RPATH:BOOL=FALSE | | 35 | CMAKE_ARGS+= -DCMAKE_SKIP_RPATH:BOOL=FALSE |
28 | CMAKE_ARGS+= -DCMAKE_INSTALL_NAME_DIR:PATH=${PREFIX}/lib | | 36 | CMAKE_ARGS+= -DCMAKE_INSTALL_NAME_DIR:PATH=${PREFIX}/lib |
29 | CMAKE_ARGS+= -DOPENAL_INCLUDE_DIR:PATH=/System/Library/Frameworks/OpenAL.framework/Headers | | 37 | CMAKE_ARGS+= -DOPENAL_INCLUDE_DIR:PATH=/System/Library/Frameworks/OpenAL.framework/Headers |
30 | CMAKE_ARGS+= -DOPENGL_INCLUDE_DIR:PATH=/System/Library/Frameworks/OpenGL.framework/Headers | | 38 | CMAKE_ARGS+= -DOPENGL_INCLUDE_DIR:PATH=/System/Library/Frameworks/OpenGL.framework/Headers |
31 | .endif | | 39 | .endif |
32 | CMAKE_ARGS+= -DCMAKE_INSTALL_MANDIR:PATH=${PKGMANDIR} | | 40 | CMAKE_ARGS+= -DCMAKE_INSTALL_MANDIR:PATH=${PKGMANDIR} |
33 | .if defined(INFO_FILES) | | 41 | .if defined(INFO_FILES) |
34 | CMAKE_ARGS+= -DCMAKE_INSTALL_INFODIR:PATH=${PKGINFODIR} | | 42 | CMAKE_ARGS+= -DCMAKE_INSTALL_INFODIR:PATH=${PKGINFODIR} |
35 | .endif | | 43 | .endif |
36 | .if defined(USE_PKGLOCALEDIR) && empty(USE_PKGLOCALEDIR:M[nN][oO]) | | 44 | .if defined(USE_PKGLOCALEDIR) && empty(USE_PKGLOCALEDIR:M[nN][oO]) |
37 | CMAKE_ARGS+= -DCMAKE_INSTALL_LOCALEDIR:PATH=${PKGLOCALEDIR}/locale | | 45 | CMAKE_ARGS+= -DCMAKE_INSTALL_LOCALEDIR:PATH=${PKGLOCALEDIR}/locale |
38 | .endif | | 46 | .endif |
39 | | | 47 | |
| | | 48 | .if defined(CMAKE_PREFIX_PATH) |
| | | 49 | CMAKE_ARGS+=-DCMAKE_PREFIX_PATH:PATH=${CMAKE_PREFIX_PATH:ts;:Q} |
| | | 50 | .endif |
| | | 51 | |
40 | CMAKE_MODULE_PATH_OVERRIDE+= CMakeLists.txt | | 52 | CMAKE_MODULE_PATH_OVERRIDE+= CMakeLists.txt |
41 | | | 53 | |
42 | ### configure-cmake-override modifies the cmake CMakeLists.txt file in | | 54 | ### configure-cmake-override modifies the cmake CMakeLists.txt file in |
43 | ### ${WRKSRC} so that if CMAKE_MODULE_PATH is set we add our Module | | 55 | ### ${WRKSRC} so that if CMAKE_MODULE_PATH is set we add our Module |
44 | ### directory before any others. | | 56 | ### directory before any others. |
45 | ### | | 57 | ### |
46 | | | 58 | |
47 | SUBST_CLASSES+= cmake | | 59 | SUBST_CLASSES+= cmake |
48 | SUBST_STAGE.cmake= do-configure-pre-hook | | 60 | SUBST_STAGE.cmake= do-configure-pre-hook |
49 | SUBST_MESSAGE.cmake= Fixing CMAKE_MODULE_PATH in CMakeLists.txt | | 61 | SUBST_MESSAGE.cmake= Fixing CMAKE_MODULE_PATH in CMakeLists.txt |
50 | SUBST_FILES.cmake= ${CMAKE_MODULE_PATH_OVERRIDE} | | 62 | SUBST_FILES.cmake= ${CMAKE_MODULE_PATH_OVERRIDE} |
51 | SUBST_SED.cmake= \ | | 63 | SUBST_SED.cmake= \ |
52 | 's|set *( *CMAKE_MODULE_PATH |set (CMAKE_MODULE_PATH "${_CMAKE_DIR}" |' | | 64 | 's|set *( *CMAKE_MODULE_PATH |set (CMAKE_MODULE_PATH "${_CMAKE_DIR}" |' |