summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
authorjlam <jlam>2004-01-21 18:13:27 +0000
committerjlam <jlam>2004-01-21 18:13:27 +0000
commit73f383a881b15103018de6d2cde1532262048412 (patch)
treee7bdd4ea3b92cff63b3e9fd1ef346b615228f2cc /mk
parent3b615d38132f668a1b6f098d7f848fb0d52e5ae8 (diff)
downloadpkgsrc-73f383a881b15103018de6d2cde1532262048412.tar.gz
Introduce concept of the "phase" that we're in as we progress through
fetching, extracting, configuring, building, etc. of a package. We can check what phase we're in by examining the value of ${PKG_PHASE} and comparing against PHASES_AFTER_<phase>, which list phases that are "greater than or equal to" <phase>. One useful example of how to use PKG_PHASE is: .if !empty(PHASES_AFTER_EXTRACT:${PKG_PHASE}) # # Some variable settings or targets here that rely on dependencies to # already be installed, or ${WRKDIR} to be created, etc., as these are # things that should have happened by the time "make extract" is # completed. # .endif
Diffstat (limited to 'mk')
-rw-r--r--mk/bsd.pkg.mk20
-rw-r--r--mk/bsd.prefs.mk16
2 files changed, 25 insertions, 11 deletions
diff --git a/mk/bsd.pkg.mk b/mk/bsd.pkg.mk
index 1e3c5a6fa64..73e645309fa 100644
--- a/mk/bsd.pkg.mk
+++ b/mk/bsd.pkg.mk
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.pkg.mk,v 1.1350 2004/01/20 22:15:21 snj Exp $
+# $NetBSD: bsd.pkg.mk,v 1.1351 2004/01/21 18:13:27 jlam Exp $
#
# This file is in the public domain.
#
@@ -3135,17 +3135,17 @@ ${EXTRACT_COOKIE}:
@${TOUCH} ${INTERACTIVE_COOKIE}
@${FALSE}
.else
- ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-extract DEPENDS_TARGET=${DEPENDS_TARGET}
+ ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-extract DEPENDS_TARGET=${DEPENDS_TARGET} PKG_PHASE=extract
.endif
${PATCH_COOKIE}:
- ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-patch
+ ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-patch PKG_PHASE=patch
${TOOLS_COOKIE}:
- ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-tools
+ ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-tools PKG_PHASE=tools
${BUILDLINK_COOKIE}:
- ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-buildlink
+ ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-buildlink PKG_PHASE=buildlink
${CONFIGURE_COOKIE}:
.if ${INTERACTIVE_STAGE:Mconfigure} == "configure" && defined(BATCH)
@@ -3154,7 +3154,7 @@ ${CONFIGURE_COOKIE}:
@${TOUCH} ${INTERACTIVE_COOKIE}
@${FALSE}
.else
- ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-configure
+ ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-configure PKG_PHASE=configure
.endif
${BUILD_COOKIE}:
@@ -3164,11 +3164,11 @@ ${BUILD_COOKIE}:
@${TOUCH} ${INTERACTIVE_COOKIE}
@${FALSE}
.else
- ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-build
+ ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-build PKG_PHASE=build
.endif
${TEST_COOKIE}:
- ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-test
+ ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-test PKG_PHASE=test
${INSTALL_COOKIE}:
.if ${INTERACTIVE_STAGE:Minstall} == "install" && defined(BATCH)
@@ -3177,11 +3177,11 @@ ${INSTALL_COOKIE}:
@${TOUCH} ${INTERACTIVE_COOKIE}
@${FALSE}
.else
- ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-install
+ ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-install PKG_PHASE=install
.endif
${PACKAGE_COOKIE}:
- ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-package
+ ${_PKG_SILENT}${_PKG_DEBUG}cd ${.CURDIR} && ${MAKE} ${MAKEFLAGS} real-package PKG_PHASE=package
.PHONY: extract-message patch-message tools-message buildlink-message
.PHONY: configure-message build-message test-message
diff --git a/mk/bsd.prefs.mk b/mk/bsd.prefs.mk
index d4e85a054b6..262e41f673d 100644
--- a/mk/bsd.prefs.mk
+++ b/mk/bsd.prefs.mk
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.prefs.mk,v 1.139 2003/12/28 11:23:28 agc Exp $
+# $NetBSD: bsd.prefs.mk,v 1.140 2004/01/21 18:13:27 jlam Exp $
#
# Make file, included to get the site preferences, if any. Should
# only be included by package Makefiles before any .if defined()
@@ -238,6 +238,20 @@ SHAREMODE?= ${DOCMODE}
. include "${.CURDIR}/mk/defs.NetBSD.mk"
.endif
+PKG_PHASE?= none
+#
+# The PHASES_AFTER_<phase> variables list every phase "greater than or
+# equal to" <phase>.
+#
+PHASES_AFTER_EXTRACT= extract ${PHASES_AFTER_PATCH}
+PHASES_AFTER_PATCH= patch ${PHASES_AFTER_TOOLS}
+PHASES_AFTER_TOOLS= tools ${PHASES_AFTER_BUILDLINK}
+PHASES_AFTER_BUILDLINK= buildlink ${PHASES_AFTER_CONFIGURE}
+PHASES_AFTER_CONFIGURE= configure ${PHASES_AFTER_BUILD}
+PHASES_AFTER_BUILD= build ${PHASES_AFTER_INSTALL}
+PHASES_AFTER_INSTALL= install ${PHASES_AFTER_PACKAGE}
+PHASES_AFTER_PACKAGE= package
+
# if the system is IPv6-ready, compile with IPv6 support turned on.
.if defined(USE_INET6)
. if empty(USE_INET6:M[Yy][Ee][Ss]) || defined(USE_SOCKS)