| @@ -1,317 +1,320 @@ | | | @@ -1,317 +1,320 @@ |
1 | # $NetBSD: configure.mk,v 1.31 2020/02/23 20:24:46 rillig Exp $ | | 1 | # $NetBSD: configure.mk,v 1.32 2023/01/12 19:37:35 markd Exp $ |
2 | # | | 2 | # |
3 | # = Package-settable variables = | | 3 | # = Package-settable variables = |
4 | # | | 4 | # |
5 | # CONFIGURE_ENV is the shell environment that is exported to the | | 5 | # CONFIGURE_ENV is the shell environment that is exported to the |
6 | # configure script. | | 6 | # configure script. |
7 | # | | 7 | # |
8 | # CONFIG_SHELL is the shell that is used for interpreting the | | 8 | # CONFIG_SHELL is the shell that is used for interpreting the |
9 | # configure script. | | 9 | # configure script. |
10 | # | | 10 | # |
11 | # CONFIGURE_SCRIPT is the path to the script to run in order to | | 11 | # CONFIGURE_SCRIPT is the path to the script to run in order to |
12 | # configure the software for building. If the path is relative, | | 12 | # configure the software for building. If the path is relative, |
13 | # then it is assumed to be relative to each directory listed in | | 13 | # then it is assumed to be relative to each directory listed in |
14 | # CONFIGURE_DIRS. | | 14 | # CONFIGURE_DIRS. |
15 | # | | 15 | # |
16 | # CONFIGURE_ARGS is the list of arguments that is passed to the | | 16 | # CONFIGURE_ARGS is the list of arguments that is passed to the |
17 | # configure script. | | 17 | # configure script. |
18 | # | | 18 | # |
19 | # INSTALL_SH_OVERRIDE is a list of files relative to WRKSRC which | | 19 | # INSTALL_SH_OVERRIDE is a list of files relative to WRKSRC which |
20 | # should be overridden by the install-sh script from | | 20 | # should be overridden by the install-sh script from |
21 | # sysutils/install-sh. If not defined or set to "no", then | | 21 | # sysutils/install-sh. If not defined or set to "no", then |
22 | # no files are overridden. | | 22 | # no files are overridden. |
23 | # | | 23 | # |
24 | # Possible values: no, defined, undefined. | | 24 | # Possible values: no, defined, undefined. |
25 | # | | 25 | # |
26 | # Default value: defined when GNU_CONFIGURE is defined, undefined | | 26 | # Default value: defined when GNU_CONFIGURE is defined, undefined |
27 | # otherwise. | | 27 | # otherwise. |
28 | # | | 28 | # |
29 | # OVERRIDE_GNU_CONFIG_SCRIPTS | | 29 | # OVERRIDE_GNU_CONFIG_SCRIPTS |
30 | # Whether to override the GNU config.guess and config.sub scripts | | 30 | # Whether to override the GNU config.guess and config.sub scripts |
31 | # with the pkgsrc versions. | | 31 | # with the pkgsrc versions. |
32 | # | | 32 | # |
33 | # Possible values: defined, undefined. | | 33 | # Possible values: defined, undefined. |
34 | # | | 34 | # |
35 | # Default value: defined when GNU_CONFIGURE is defined, undefined | | 35 | # Default value: defined when GNU_CONFIGURE is defined, undefined |
36 | # otherwise. | | 36 | # otherwise. |
37 | # | | 37 | # |
38 | # Command-line variables: | | 38 | # Command-line variables: |
39 | # | | 39 | # |
40 | # CONFIG_SHELL_FLAGS | | 40 | # CONFIG_SHELL_FLAGS |
41 | # Set this to -x when you really need to see all commands that the | | 41 | # Set this to -x when you really need to see all commands that the |
42 | # configure script executes. | | 42 | # configure script executes. |
43 | # | | 43 | # |
44 | # Keywords: config.guess config.sub | | 44 | # Keywords: config.guess config.sub |
45 | # | | 45 | # |
46 | | | 46 | |
47 | _VARGROUPS+= configure | | 47 | _VARGROUPS+= configure |
48 | _USER_VARS.configure= CONFIG_SHELL_FLAGS | | 48 | _USER_VARS.configure= CONFIG_SHELL_FLAGS |
49 | _PKG_VARS.configure= \ | | 49 | _PKG_VARS.configure= \ |
50 | CONFIGURE_DIRS CONFIGURE_ENV CONFIG_SHELL CONFIGURE_SCRIPT \ | | 50 | CONFIGURE_DIRS CONFIGURE_ENV CONFIG_SHELL CONFIGURE_SCRIPT \ |
51 | CONFIGURE_ARGS OVERRIDE_GNU_CONFIG_SCRIPTS HAS_CONFIGURE \ | | 51 | CONFIGURE_ARGS OVERRIDE_GNU_CONFIG_SCRIPTS HAS_CONFIGURE \ |
52 | GNU_CONFIGURE PKGCONFIG_OVERRIDE USE_PKGLOCALEDIR \ | | 52 | GNU_CONFIGURE PKGCONFIG_OVERRIDE USE_PKGLOCALEDIR \ |
53 | CMAKE_ARGS CMAKE_ARG_PATH | | 53 | CMAKE_ARGS CMAKE_ARG_PATH |
54 | _SORTED_VARS.configure= *_ENV *_OVERRIDE | | 54 | _SORTED_VARS.configure= *_ENV *_OVERRIDE |
55 | _LISTED_VARS.configure= *_ARGS *_SCRIPTS | | 55 | _LISTED_VARS.configure= *_ARGS *_SCRIPTS |
56 | | | 56 | |
57 | CONFIGURE_SCRIPT?= ./configure | | 57 | CONFIGURE_SCRIPT?= ./configure |
58 | CONFIGURE_ENV+= ${ALL_ENV} | | 58 | CONFIGURE_ENV+= ${ALL_ENV} |
59 | CONFIGURE_ARGS?= # empty | | 59 | CONFIGURE_ARGS?= # empty |
60 | CONFIG_SHELL?= ${SH} | | 60 | CONFIG_SHELL?= ${SH} |
61 | CONFIG_SHELL_FLAGS?= # none | | 61 | CONFIG_SHELL_FLAGS?= # none |
62 | CMAKE_ARGS?= # empty | | 62 | CMAKE_ARGS?= # empty |
63 | CMAKE_ARG_PATH?= . | | 63 | CMAKE_ARG_PATH?= . |
64 | _BUILD_DEFS+= CONFIGURE_ENV CONFIGURE_ARGS CMAKE_ARGS | | 64 | _BUILD_DEFS+= CONFIGURE_ENV CONFIGURE_ARGS CMAKE_ARGS |
65 | | | 65 | |
66 | .if defined(GNU_CONFIGURE) | | 66 | .if defined(GNU_CONFIGURE) |
67 | . include "gnu-configure.mk" | | 67 | . include "gnu-configure.mk" |
68 | .endif | | 68 | .endif |
69 | .if defined(OVERRIDE_GNU_CONFIG_SCRIPTS) | | 69 | .if defined(OVERRIDE_GNU_CONFIG_SCRIPTS) |
70 | . include "config-override.mk" | | 70 | . include "config-override.mk" |
71 | .endif | | 71 | .endif |
72 | .if defined(INSTALL_SH_OVERRIDE) && empty(INSTALL_SH_OVERRIDE:M[Nn][Oo]) | | 72 | .if defined(INSTALL_SH_OVERRIDE) && empty(INSTALL_SH_OVERRIDE:M[Nn][Oo]) |
73 | . include "install-sh-override.mk" | | 73 | . include "install-sh-override.mk" |
74 | .endif | | 74 | .endif |
75 | .if defined(USE_LIBTOOL) | | 75 | .if defined(USE_LIBTOOL) |
76 | . include "libtool-override.mk" | | 76 | . include "libtool-override.mk" |
77 | .endif | | 77 | .endif |
78 | .if defined(PKGCONFIG_OVERRIDE) | | 78 | .if defined(PKGCONFIG_OVERRIDE) |
79 | . include "pkg-config-override.mk" | | 79 | . include "pkg-config-override.mk" |
80 | .endif | | 80 | .endif |
81 | .include "replace-interpreter.mk" | | 81 | .include "replace-interpreter.mk" |
82 | .if defined(USE_PKGLOCALEDIR) | | 82 | .if defined(USE_PKGLOCALEDIR) |
83 | . include "replace-localedir.mk" | | 83 | . include "replace-localedir.mk" |
84 | .endif | | 84 | .endif |
85 | .if defined(USE_CMAKE) | | 85 | .if defined(USE_CMAKE) |
86 | . include "cmake.mk" | | 86 | . include "cmake.mk" |
87 | .endif | | 87 | .endif |
| | | 88 | .if defined(_CMAKE_CONFIGURE_SETTINGS) |
| | | 89 | . include "../../devel/cmake/configure-settings.mk" |
| | | 90 | .endif |
88 | | | 91 | |
89 | ###################################################################### | | 92 | ###################################################################### |
90 | ### configure (PUBLIC) | | 93 | ### configure (PUBLIC) |
91 | ###################################################################### | | 94 | ###################################################################### |
92 | ### configure is a public target to configure the sources for building. | | 95 | ### configure is a public target to configure the sources for building. |
93 | ### | | 96 | ### |
94 | _CONFIGURE_TARGETS+= check-vulnerable | | 97 | _CONFIGURE_TARGETS+= check-vulnerable |
95 | _CONFIGURE_TARGETS+= wrapper | | 98 | _CONFIGURE_TARGETS+= wrapper |
96 | _CONFIGURE_TARGETS+= acquire-configure-lock | | 99 | _CONFIGURE_TARGETS+= acquire-configure-lock |
97 | _CONFIGURE_TARGETS+= ${_COOKIE.configure} | | 100 | _CONFIGURE_TARGETS+= ${_COOKIE.configure} |
98 | _CONFIGURE_TARGETS+= release-configure-lock | | 101 | _CONFIGURE_TARGETS+= release-configure-lock |
99 | | | 102 | |
100 | .PHONY: configure | | 103 | .PHONY: configure |
101 | .if !target(configure) | | 104 | .if !target(configure) |
102 | . if exists(${_COOKIE.configure}) && !${_CLEANING} | | 105 | . if exists(${_COOKIE.configure}) && !${_CLEANING} |
103 | configure: | | 106 | configure: |
104 | @${DO_NADA} | | 107 | @${DO_NADA} |
105 | . elif defined(_PKGSRC_BARRIER) | | 108 | . elif defined(_PKGSRC_BARRIER) |
106 | configure: ${_CONFIGURE_TARGETS} | | 109 | configure: ${_CONFIGURE_TARGETS} |
107 | . else | | 110 | . else |
108 | configure: barrier | | 111 | configure: barrier |
109 | . endif | | 112 | . endif |
110 | .endif | | 113 | .endif |
111 | | | 114 | |
112 | .PHONY: acquire-configure-lock release-configure-lock | | 115 | .PHONY: acquire-configure-lock release-configure-lock |
113 | acquire-configure-lock: acquire-lock | | 116 | acquire-configure-lock: acquire-lock |
114 | release-configure-lock: release-lock | | 117 | release-configure-lock: release-lock |
115 | | | 118 | |
116 | .if exists(${_COOKIE.configure}) && !${_CLEANING} | | 119 | .if exists(${_COOKIE.configure}) && !${_CLEANING} |
117 | ${_COOKIE.configure}: | | 120 | ${_COOKIE.configure}: |
118 | @${DO_NADA} | | 121 | @${DO_NADA} |
119 | .else | | 122 | .else |
120 | ${_COOKIE.configure}: real-configure | | 123 | ${_COOKIE.configure}: real-configure |
121 | .endif | | 124 | .endif |
122 | | | 125 | |
123 | ###################################################################### | | 126 | ###################################################################### |
124 | ### real-configure (PRIVATE) | | 127 | ### real-configure (PRIVATE) |
125 | ###################################################################### | | 128 | ###################################################################### |
126 | ### real-configure is a helper target onto which one can hook all of the | | 129 | ### real-configure is a helper target onto which one can hook all of the |
127 | ### targets that do the actual configuration of the sources. | | 130 | ### targets that do the actual configuration of the sources. |
128 | ### | | 131 | ### |
129 | # | | 132 | # |
130 | # Note: pre-configure-checks-hook comes after pre-configure to allow | | 133 | # Note: pre-configure-checks-hook comes after pre-configure to allow |
131 | # packages for fixing bad files with SUBST_STAGE.* = pre-configure. | | 134 | # packages for fixing bad files with SUBST_STAGE.* = pre-configure. |
132 | # | | 135 | # |
133 | _REAL_CONFIGURE_TARGETS+= configure-check-interactive | | 136 | _REAL_CONFIGURE_TARGETS+= configure-check-interactive |
134 | _REAL_CONFIGURE_TARGETS+= configure-message | | 137 | _REAL_CONFIGURE_TARGETS+= configure-message |
135 | _REAL_CONFIGURE_TARGETS+= configure-vars | | 138 | _REAL_CONFIGURE_TARGETS+= configure-vars |
136 | _REAL_CONFIGURE_TARGETS+= pre-configure | | 139 | _REAL_CONFIGURE_TARGETS+= pre-configure |
137 | _REAL_CONFIGURE_TARGETS+= do-configure-pre-hook | | 140 | _REAL_CONFIGURE_TARGETS+= do-configure-pre-hook |
138 | _REAL_CONFIGURE_TARGETS+= pre-configure-checks-hook | | 141 | _REAL_CONFIGURE_TARGETS+= pre-configure-checks-hook |
139 | _REAL_CONFIGURE_TARGETS+= do-configure | | 142 | _REAL_CONFIGURE_TARGETS+= do-configure |
140 | _REAL_CONFIGURE_TARGETS+= do-configure-post-hook | | 143 | _REAL_CONFIGURE_TARGETS+= do-configure-post-hook |
141 | _REAL_CONFIGURE_TARGETS+= post-configure | | 144 | _REAL_CONFIGURE_TARGETS+= post-configure |
142 | _REAL_CONFIGURE_TARGETS+= _configure-cookie | | 145 | _REAL_CONFIGURE_TARGETS+= _configure-cookie |
143 | _REAL_CONFIGURE_TARGETS+= error-check | | 146 | _REAL_CONFIGURE_TARGETS+= error-check |
144 | | | 147 | |
145 | .PHONY: real-configure | | 148 | .PHONY: real-configure |
146 | real-configure: ${_REAL_CONFIGURE_TARGETS} | | 149 | real-configure: ${_REAL_CONFIGURE_TARGETS} |
147 | | | 150 | |
148 | .PHONY: configure-message | | 151 | .PHONY: configure-message |
149 | configure-message: | | 152 | configure-message: |
150 | @${PHASE_MSG} "Configuring for ${PKGNAME}" | | 153 | @${PHASE_MSG} "Configuring for ${PKGNAME}" |
151 | | | 154 | |
152 | ###################################################################### | | 155 | ###################################################################### |
153 | ### configure-check-interactive (PRIVATE) | | 156 | ### configure-check-interactive (PRIVATE) |
154 | ###################################################################### | | 157 | ###################################################################### |
155 | ### configure-check-interactive checks whether we must do an interactive | | 158 | ### configure-check-interactive checks whether we must do an interactive |
156 | ### configuration or not. | | 159 | ### configuration or not. |
157 | ### | | 160 | ### |
158 | configure-check-interactive: | | 161 | configure-check-interactive: |
159 | .if !empty(INTERACTIVE_STAGE:Mconfigure) && defined(BATCH) | | 162 | .if !empty(INTERACTIVE_STAGE:Mconfigure) && defined(BATCH) |
160 | @${ERROR_MSG} "The configure stage of this package requires user interaction" | | 163 | @${ERROR_MSG} "The configure stage of this package requires user interaction" |
161 | @${ERROR_MSG} "Please configure manually with:" | | 164 | @${ERROR_MSG} "Please configure manually with:" |
162 | @${ERROR_MSG} " \"cd ${.CURDIR} && ${MAKE} configure\"" | | 165 | @${ERROR_MSG} " \"cd ${.CURDIR} && ${MAKE} configure\"" |
163 | ${RUN} ${FALSE} | | 166 | ${RUN} ${FALSE} |
164 | .else | | 167 | .else |
165 | @${DO_NADA} | | 168 | @${DO_NADA} |
166 | .endif | | 169 | .endif |
167 | | | 170 | |
168 | ###################################################################### | | 171 | ###################################################################### |
169 | ### do-configure-pre-hook (PRIVATE) | | 172 | ### do-configure-pre-hook (PRIVATE) |
170 | ###################################################################### | | 173 | ###################################################################### |
171 | ### do-configure-pre-hook is a helper target onto which one can hook | | 174 | ### do-configure-pre-hook is a helper target onto which one can hook |
172 | ### all of the targets that should be run after pre-configure but before | | 175 | ### all of the targets that should be run after pre-configure but before |
173 | ### do-configure. These targets typically edit the files used by the | | 176 | ### do-configure. These targets typically edit the files used by the |
174 | ### do-configure target. | | 177 | ### do-configure target. |
175 | ### | | 178 | ### |
176 | .PHONY: do-configure-pre-hook | | 179 | .PHONY: do-configure-pre-hook |
177 | do-configure-pre-hook: | | 180 | do-configure-pre-hook: |
178 | @${DO_NADA} | | 181 | @${DO_NADA} |
179 | | | 182 | |
180 | ###################################################################### | | 183 | ###################################################################### |
181 | ### do-configure-post-hook (PRIVATE) | | 184 | ### do-configure-post-hook (PRIVATE) |
182 | ###################################################################### | | 185 | ###################################################################### |
183 | ### do-configure-post-hook is a helper target onto which one can hook | | 186 | ### do-configure-post-hook is a helper target onto which one can hook |
184 | ### all of the targets that should be run after do-configure but before | | 187 | ### all of the targets that should be run after do-configure but before |
185 | ### post-configure. These targets typically edit the files generated | | 188 | ### post-configure. These targets typically edit the files generated |
186 | ### by the do-configure target that are used during the build phase. | | 189 | ### by the do-configure target that are used during the build phase. |
187 | ### | | 190 | ### |
188 | .PHONY: do-configure-post-hook | | 191 | .PHONY: do-configure-post-hook |
189 | do-configure-post-hook: | | 192 | do-configure-post-hook: |
190 | @${DO_NADA} | | 193 | @${DO_NADA} |
191 | | | 194 | |
192 | ###################################################################### | | 195 | ###################################################################### |
193 | ### do-configure-script (PRIVATE) | | 196 | ### do-configure-script (PRIVATE) |
194 | ###################################################################### | | 197 | ###################################################################### |
195 | ### do-configure-script runs the configure script to configure the | | 198 | ### do-configure-script runs the configure script to configure the |
196 | ### software for building. | | 199 | ### software for building. |
197 | ### | | 200 | ### |
198 | _CONFIGURE_SCRIPT_ENV+= INSTALL=${INSTALL:Q}\ -c\ -o\ ${BINOWN}\ -g\ ${BINGRP} | | 201 | _CONFIGURE_SCRIPT_ENV+= INSTALL=${INSTALL:Q}\ -c\ -o\ ${BINOWN}\ -g\ ${BINGRP} |
199 | _CONFIGURE_SCRIPT_ENV+= INSTALL_PROGRAM=${INSTALL_PROGRAM:Q} | | 202 | _CONFIGURE_SCRIPT_ENV+= INSTALL_PROGRAM=${INSTALL_PROGRAM:Q} |
200 | _CONFIGURE_SCRIPT_ENV+= INSTALL_SCRIPT=${INSTALL_SCRIPT:Q} | | 203 | _CONFIGURE_SCRIPT_ENV+= INSTALL_SCRIPT=${INSTALL_SCRIPT:Q} |
201 | _CONFIGURE_SCRIPT_ENV+= INSTALL_DATA=${INSTALL_DATA:Q} | | 204 | _CONFIGURE_SCRIPT_ENV+= INSTALL_DATA=${INSTALL_DATA:Q} |
202 | _CONFIGURE_SCRIPT_ENV+= INSTALL_GAME=${INSTALL_GAME:Q} | | 205 | _CONFIGURE_SCRIPT_ENV+= INSTALL_GAME=${INSTALL_GAME:Q} |
203 | _CONFIGURE_SCRIPT_ENV+= INSTALL_GAME_DATA=${INSTALL_GAME_DATA:Q} | | 206 | _CONFIGURE_SCRIPT_ENV+= INSTALL_GAME_DATA=${INSTALL_GAME_DATA:Q} |
204 | _CONFIGURE_SCRIPT_ENV+= ${CONFIGURE_ENV} | | 207 | _CONFIGURE_SCRIPT_ENV+= ${CONFIGURE_ENV} |
205 | | | 208 | |
206 | .PHONY: do-configure-script | | 209 | .PHONY: do-configure-script |
207 | do-configure-script: | | 210 | do-configure-script: |
208 | .for _dir_ in ${CONFIGURE_DIRS} | | 211 | .for _dir_ in ${CONFIGURE_DIRS} |
209 | . if ${CONFIGURE_DIRS:[#]} != 1 | | 212 | . if ${CONFIGURE_DIRS:[#]} != 1 |
210 | ${RUN} ${STEP_MSG} "Running "${CONFIGURE_SCRIPT:Q}" in "${_dir_:Q} | | 213 | ${RUN} ${STEP_MSG} "Running "${CONFIGURE_SCRIPT:Q}" in "${_dir_:Q} |
211 | . endif | | 214 | . endif |
212 | ${RUN}${_ULIMIT_CMD} \ | | 215 | ${RUN}${_ULIMIT_CMD} \ |
213 | cd ${WRKSRC} && cd ${_dir_} && \ | | 216 | cd ${WRKSRC} && cd ${_dir_} && \ |
214 | ${PKGSRC_SETENV} ${_CONFIGURE_SCRIPT_ENV} \ | | 217 | ${PKGSRC_SETENV} ${_CONFIGURE_SCRIPT_ENV} \ |
215 | ${CONFIG_SHELL} ${CONFIG_SHELL_FLAGS} \ | | 218 | ${CONFIG_SHELL} ${CONFIG_SHELL_FLAGS} \ |
216 | ${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS} | | 219 | ${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS} |
217 | .endfor | | 220 | .endfor |
218 | | | 221 | |
219 | ###################################################################### | | 222 | ###################################################################### |
220 | ### do-configure-imake (PRIVATE) | | 223 | ### do-configure-imake (PRIVATE) |
221 | ###################################################################### | | 224 | ###################################################################### |
222 | ### do-configure-imake runs xmkmf and imake to configure the software | | 225 | ### do-configure-imake runs xmkmf and imake to configure the software |
223 | ### for building. | | 226 | ### for building. |
224 | ### | | 227 | ### |
225 | _CONFIGURE_IMAKE_ENV+= XPROJECTROOT=${X11BASE:Q} | | 228 | _CONFIGURE_IMAKE_ENV+= XPROJECTROOT=${X11BASE:Q} |
226 | _CONFIGURE_IMAKE_ENV+= ${SCRIPTS_ENV} | | 229 | _CONFIGURE_IMAKE_ENV+= ${SCRIPTS_ENV} |
227 | | | 230 | |
228 | .PHONY: do-configure-imake | | 231 | .PHONY: do-configure-imake |
229 | do-configure-imake: | | 232 | do-configure-imake: |
230 | .for _dir_ in ${CONFIGURE_DIRS} | | 233 | .for _dir_ in ${CONFIGURE_DIRS} |
231 | ${RUN} \ | | 234 | ${RUN} \ |
232 | cd ${WRKSRC} && cd ${_dir_} && \ | | 235 | cd ${WRKSRC} && cd ${_dir_} && \ |
233 | ${PKGSRC_SETENV} ${_CONFIGURE_IMAKE_ENV} ${XMKMF} | | 236 | ${PKGSRC_SETENV} ${_CONFIGURE_IMAKE_ENV} ${XMKMF} |
234 | .endfor | | 237 | .endfor |
235 | | | 238 | |
236 | ###################################################################### | | 239 | ###################################################################### |
237 | ### do-configure-cmake (PRIVATE) | | 240 | ### do-configure-cmake (PRIVATE) |
238 | ###################################################################### | | 241 | ###################################################################### |
239 | ### do-configure-cmake runs cmake to configure the software for | | 242 | ### do-configure-cmake runs cmake to configure the software for |
240 | ### building. | | 243 | ### building. |
241 | ### | | 244 | ### |
242 | _CONFIGURE_CMAKE_ENV+= BUILDLINK_DIR=${BUILDLINK_DIR} | | 245 | _CONFIGURE_CMAKE_ENV+= BUILDLINK_DIR=${BUILDLINK_DIR} |
243 | _CONFIGURE_CMAKE_ENV+= ${CONFIGURE_ENV} | | 246 | _CONFIGURE_CMAKE_ENV+= ${CONFIGURE_ENV} |
244 | | | 247 | |
245 | | | 248 | |
246 | .PHONY: do-configure-cmake | | 249 | .PHONY: do-configure-cmake |
247 | do-configure-cmake: | | 250 | do-configure-cmake: |
248 | .for _dir_ in ${CONFIGURE_DIRS} | | 251 | .for _dir_ in ${CONFIGURE_DIRS} |
249 | ${RUN}${_ULIMIT_CMD} \ | | 252 | ${RUN}${_ULIMIT_CMD} \ |
250 | cd ${WRKSRC} && cd ${_dir_} && \ | | 253 | cd ${WRKSRC} && cd ${_dir_} && \ |
251 | ${PKGSRC_SETENV} ${_CONFIGURE_CMAKE_ENV} \ | | 254 | ${PKGSRC_SETENV} ${_CONFIGURE_CMAKE_ENV} \ |
252 | cmake ${CMAKE_ARGS} ${CMAKE_ARG_PATH} | | 255 | cmake ${CMAKE_ARGS} ${CMAKE_ARG_PATH} |
253 | .endfor | | 256 | .endfor |
254 | | | 257 | |
255 | ###################################################################### | | 258 | ###################################################################### |
256 | ### pre-configure, do-configure, post-configure (PUBLIC, override) | | 259 | ### pre-configure, do-configure, post-configure (PUBLIC, override) |
257 | ###################################################################### | | 260 | ###################################################################### |
258 | ### {pre,do,post}-configure are the heart of the package-customizable | | 261 | ### {pre,do,post}-configure are the heart of the package-customizable |
259 | ### configure targets, and may be overridden within a package Makefile. | | 262 | ### configure targets, and may be overridden within a package Makefile. |
260 | ### | | 263 | ### |
261 | .PHONY: pre-configure do-configure post-configure | | 264 | .PHONY: pre-configure do-configure post-configure |
262 | | | 265 | |
263 | _DO_CONFIGURE_TARGETS+= ${HAS_CONFIGURE:D do-configure-script} | | 266 | _DO_CONFIGURE_TARGETS+= ${HAS_CONFIGURE:D do-configure-script} |
264 | _DO_CONFIGURE_TARGETS+= ${USE_IMAKE:D do-configure-imake} | | 267 | _DO_CONFIGURE_TARGETS+= ${USE_IMAKE:D do-configure-imake} |
265 | _DO_CONFIGURE_TARGETS+= ${USE_CMAKE:D do-configure-cmake} | | 268 | _DO_CONFIGURE_TARGETS+= ${USE_CMAKE:D do-configure-cmake} |
266 | | | 269 | |
267 | .if !target(do-configure) | | 270 | .if !target(do-configure) |
268 | do-configure: ${_DO_CONFIGURE_TARGETS} | | 271 | do-configure: ${_DO_CONFIGURE_TARGETS} |
269 | @${DO_NADA} | | 272 | @${DO_NADA} |
270 | .endif | | 273 | .endif |
271 | | | 274 | |
272 | .if !target(pre-configure) | | 275 | .if !target(pre-configure) |
273 | pre-configure: | | 276 | pre-configure: |
274 | @${DO_NADA} | | 277 | @${DO_NADA} |
275 | .endif | | 278 | .endif |
276 | | | 279 | |
277 | .if !target(post-configure) | | 280 | .if !target(post-configure) |
278 | post-configure: | | 281 | post-configure: |
279 | @${DO_NADA} | | 282 | @${DO_NADA} |
280 | .endif | | 283 | .endif |
281 | | | 284 | |
282 | # configure-help: | | 285 | # configure-help: |
283 | # Runs ${CONFIGURE_SCRIPT} --help. It is mainly intended for | | 286 | # Runs ${CONFIGURE_SCRIPT} --help. It is mainly intended for |
284 | # package developers so they can quickly see the options of the | | 287 | # package developers so they can quickly see the options of the |
285 | # configure script. | | 288 | # configure script. |
286 | # | | 289 | # |
287 | configure-help: | | 290 | configure-help: |
288 | .for d in ${CONFIGURE_DIRS} | | 291 | .for d in ${CONFIGURE_DIRS} |
289 | ${RUN} cd ${WRKSRC} && cd ${d} && ${PKGSRC_SETENV} ${_CONFIGURE_SCRIPT_ENV} ${CONFIG_SHELL} ${CONFIGURE_SCRIPT} --help | | 292 | ${RUN} cd ${WRKSRC} && cd ${d} && ${PKGSRC_SETENV} ${_CONFIGURE_SCRIPT_ENV} ${CONFIG_SHELL} ${CONFIGURE_SCRIPT} --help |
290 | .endfor | | 293 | .endfor |
291 | | | 294 | |
292 | # configure-env: | | 295 | # configure-env: |
293 | # Runs an interactive shell in the same environment that is | | 296 | # Runs an interactive shell in the same environment that is |
294 | # also used for the configure scripts. | | 297 | # also used for the configure scripts. |
295 | # | | 298 | # |
296 | # This is only used during development and testing of a package | | 299 | # This is only used during development and testing of a package |
297 | # to work in the same environment as the actual build. | | 300 | # to work in the same environment as the actual build. |
298 | # | | 301 | # |
299 | # User-settable variables: | | 302 | # User-settable variables: |
300 | # | | 303 | # |
301 | # CONFIGURE_ENV_SHELL | | 304 | # CONFIGURE_ENV_SHELL |
302 | # The shell to start. | | 305 | # The shell to start. |
303 | # | | 306 | # |
304 | # Default: ${CONFIG_SHELL} | | 307 | # Default: ${CONFIG_SHELL} |
305 | # | | 308 | # |
306 | # Keywords: debug configure | | 309 | # Keywords: debug configure |
307 | | | 310 | |
308 | configure-env: .PHONY ${_PKGSRC_BARRIER:Ubarrier:D_configure-env} | | 311 | configure-env: .PHONY ${_PKGSRC_BARRIER:Ubarrier:D_configure-env} |
309 | _configure-env: .PHONY wrapper | | 312 | _configure-env: .PHONY wrapper |
310 | @${STEP_MSG} "Entering the configure environment for ${PKGNAME}" | | 313 | @${STEP_MSG} "Entering the configure environment for ${PKGNAME}" |
311 | .if ${CONFIGURE_DIRS:[#]} > 1 || ${CONFIGURE_DIRS} != ${WRKSRC} | | 314 | .if ${CONFIGURE_DIRS:[#]} > 1 || ${CONFIGURE_DIRS} != ${WRKSRC} |
312 | @${ECHO_MSG} "The CONFIGURE_DIRS are:" \ | | 315 | @${ECHO_MSG} "The CONFIGURE_DIRS are:" \ |
313 | ${CONFIGURE_DIRS:S,^${WRKSRC}$,.,:S,^${WRKSRC}/,,:Q} | | 316 | ${CONFIGURE_DIRS:S,^${WRKSRC}$,.,:S,^${WRKSRC}/,,:Q} |
314 | .endif | | 317 | .endif |
315 | ${RUN} cd ${WRKSRC} \ | | 318 | ${RUN} cd ${WRKSRC} \ |
316 | && ${PKGSRC_SETENV} ${_CONFIGURE_SCRIPT_ENV} \ | | 319 | && ${PKGSRC_SETENV} ${_CONFIGURE_SCRIPT_ENV} \ |
317 | ${CONFIGURE_ENV_SHELL:U${CONFIG_SHELL}} | | 320 | ${CONFIGURE_ENV_SHELL:U${CONFIG_SHELL}} |