summaryrefslogtreecommitdiff
path: root/mk/buildlink2
diff options
context:
space:
mode:
authorjlam <jlam>2003-08-16 08:50:17 +0000
committerjlam <jlam>2003-08-16 08:50:17 +0000
commitfa151c5f4b7f8290ae61d4935123a4d8e7e380a7 (patch)
tree30ed6a009df883a6bc69e0407c4cf1a6b6bcbbdd /mk/buildlink2
parent1748faee10d53923bd8c7707f1b8e0d25421658d (diff)
downloadpkgsrc-fa151c5f4b7f8290ae61d4935123a4d8e7e380a7.tar.gz
Move the hide-tools portion of bsd.buildlink2.mk into tools.mk, and
put the tools in ${WRKDIR}/.tools/bin instead of in ${BUILDLINK_DIR}, and remove the need for buildlink2 to use USE_GNU_TOOLS. In the modified USE_GNU_TOOLS implementation, the following implementation- specific variables have the following meanings: _TOOLS_REPLACE.<tool> means that we want ${AWK}, ${SED}, etc. symlinked into ${TOOLS_DIR} as awk, sed, etc. _TOOLS_NEED_GNU.<tool> means that we want to use the pkgsrc version of <tool> symlinked info ${TOOLS_DIR} as awk, sed, etc. If this is "YES", then it always trumps _TOOLS_REPLACE.<tool>. And we want nothing to happen if we're building the pkgsrc GNU tool itself. The modified USE_GNU_TOOLS implementation should also hopefully fix the circular dependency problem. Create a new target "tools" that is run after "patch" and before "buildlink" that populates the ${TOOLS_DIR} directory. This ensures that it's always run at the right time, instead of relying on pre-buildlink or pre-configure, which may be cancelled by NO_BUILDLINK or NO_CONFIGURE. XXX There is some possible fallout in texinfo.mk with the MAKE_ENV and XXX CONFIGURE_ENV settings for INSTALL_INFO and MAKEINFO. It looks XXX like the MAKE_ENV and CONFIGURE_ENV settings should move from XXX tools.mk into texinfo.mk, and they no longer need to be XXX conditional on USE_BUILDLINK2. I'll leave it to the texinfo.mk XXX dude (Hi, Stoned!).
Diffstat (limited to 'mk/buildlink2')
-rw-r--r--mk/buildlink2/bsd.buildlink2.mk95
1 files changed, 2 insertions, 93 deletions
diff --git a/mk/buildlink2/bsd.buildlink2.mk b/mk/buildlink2/bsd.buildlink2.mk
index bc5c9415d1a..a603b7532f6 100644
--- a/mk/buildlink2/bsd.buildlink2.mk
+++ b/mk/buildlink2/bsd.buildlink2.mk
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.buildlink2.mk,v 1.93 2003/08/09 10:24:54 seb Exp $
+# $NetBSD: bsd.buildlink2.mk,v 1.94 2003/08/16 08:50:20 jlam Exp $
#
# An example package buildlink2.mk file:
#
@@ -584,7 +584,7 @@ _BLNK_WRAP_CACHE_TRANSFORM= ${BUILDLINK_DIR}/bin/.cache-trans
_BLNK_WRAP_POST_CACHE= ${BUILDLINK_DIR}/bin/.post-cache
_BLNK_WRAP_LOGIC= ${BUILDLINK_DIR}/bin/.logic
_BLNK_WRAP_LOGIC_TRANSFORM= ${BUILDLINK_DIR}/bin/.logic-trans
-_BLNK_WRAP_LOG= ${BUILDLINK_DIR}/.wrapper.log
+_BLNK_WRAP_LOG= ${WRKLOG}
_BLNK_LIBTOOL_DO_INSTALL= ${BUILDLINK_DIR}/bin/.libtool-do-install
_BLNK_LIBTOOL_FIX_LA= ${BUILDLINK_DIR}/bin/.libtool-fix-la
_BLNK_FAKE_LA= ${BUILDLINK_DIR}/bin/.fake-la
@@ -982,94 +982,3 @@ buildlink-check:
@if [ -f ${_BLNK_WRAP_LOG} ]; then \
${GREP} ${_BLNK_CHECK_PATTERNS} ${_BLNK_WRAP_LOG} || ${TRUE}; \
fi
-
-# Create shell scripts in ${BUILDLINK_DIR} that simply return an error
-# status for each of the GNU auto* tools, which should cause GNU configure
-# scripts to think that they can't be found.
-#
-AUTOMAKE_OVERRIDE?= yes
-_GNU_MISSING= ${.CURDIR}/../../mk/gnu-config/missing
-_HIDE_PROGS.autoconf= bin/autoconf bin/autoconf-2.13 \
- bin/autoheader bin/autoheader-2.13 \
- bin/autom4te \
- bin/autoreconf bin/autoreconf-2.13 \
- bin/autoscan bin/autoscan-2.13 \
- bin/autoupdate bin/autoupdate-2.13 \
- bin/ifnames bin/ifnames-2.13
-_HIDE_PROGS.automake= bin/aclocal bin/aclocal-1.4 \
- bin/aclocal-1.5 \
- bin/aclocal-1.6 \
- bin/aclocal-1.7 \
- bin/automake bin/automake-1.4 \
- bin/automake-1.5 \
- bin/automake-1.6 \
- bin/automake-1.7
-
-.if empty(AUTOMAKE_OVERRIDE:M[nN][oO])
-do-buildlink: hide-autotools
-.endif
-
-hide-autotools: # empty
-
-.for _autotool_ in autoconf automake
-hide-autotools: hide-${_autotool_}
-. for _prog_ in ${_HIDE_PROGS.${_autotool_}}
-hide-${_autotool_}: ${BUILDLINK_DIR}/${_prog_}
-${BUILDLINK_DIR}/${_prog_}: ${_GNU_MISSING}
- ${_PKG_SILENT}${_PKG_DEBUG}${MKDIR} ${.TARGET:H}
- ${_PKG_SILENT}${_PKG_DEBUG} \
- ${ECHO} "#!${BUILDLINK_SHELL}" > ${.TARGET}
- ${_PKG_SILENT}${_PKG_DEBUG} \
- ${ECHO} "exec ${_GNU_MISSING} ${_prog_:T:C/-[0-9].*$//}" >> ${.TARGET}
- ${_PKG_SILENT}${_PKG_DEBUG}${CHMOD} +x ${.TARGET}
-. endfor
-.endfor
-
-# install-info and makeinfo handling.
-#
-# Create an install-info script that is a "no operation" command
-# as registration of info files is handled by the INSTALL script.
-CONFIGURE_ENV+= INSTALL_INFO="${BUILDLINK_DIR}/bin/install-info"
-MAKE_ENV+= INSTALL_INFO="${BUILDLINK_DIR}/bin/install-info"
-
-do-buildlink: hide-install-info
-
-hide-install-info: ${BUILDLINK_DIR}/bin/install-info
-${BUILDLINK_DIR}/bin/install-info:
- ${_PKG_SILENT}${_PKG_DEBUG}${MKDIR} ${.TARGET:H}
- ${_PKG_SILENT}${_PKG_DEBUG} \
- ${ECHO} "#!${BUILDLINK_SHELL}" > ${.TARGET}
- ${_PKG_SILENT}${_PKG_DEBUG} \
- ${ECHO} '${ECHO} "==> Noop install-info $$*" >> ${_BLNK_WRAP_LOG}' >> ${.TARGET}
- ${_PKG_SILENT}${_PKG_DEBUG}${CHMOD} +x ${.TARGET}
-
-# Create a makeinfo script that will invoke the right makeinfo
-# command if USE_MAKEINFO is 'yes' or will exit on error if not.
-CONFIGURE_ENV+= MAKEINFO="${BUILDLINK_DIR}/bin/makeinfo"
-MAKE_ENV+= MAKEINFO="${BUILDLINK_DIR}/bin/makeinfo"
-
-.if empty(USE_MAKEINFO:M[nN][oO])
-do-buildlink: makeinfo-wrapper
-makeinfo-wrapper: ${BUILDLINK_DIR}/bin/makeinfo
-${BUILDLINK_DIR}/bin/makeinfo:
- ${_PKG_SILENT}${_PKG_DEBUG}${MKDIR} ${.TARGET:H}
- ${_PKG_SILENT}${_PKG_DEBUG} \
- ${ECHO} "#!${BUILDLINK_SHELL}" > ${.TARGET}
- ${_PKG_SILENT}${_PKG_DEBUG} \
- ${ECHO} 'echo "${MAKEINFO} $$*" >> ${_BLNK_WRAP_LOG}' >> ${.TARGET}
- ${_PKG_SILENT}${_PKG_DEBUG} \
- ${ECHO} 'exec ${MAKEINFO} "$$@"' >> ${.TARGET}
- ${_PKG_SILENT}${_PKG_DEBUG}${CHMOD} +x ${.TARGET}
-.else # !USE_MAKEINFO
-do-buildlink: hide-makeinfo
-hide-makeinfo: ${BUILDLINK_DIR}/bin/makeinfo
-${BUILDLINK_DIR}/bin/makeinfo: ${_GNU_MISSING}
- ${_PKG_SILENT}${_PKG_DEBUG}${MKDIR} ${.TARGET:H}
- ${_PKG_SILENT}${_PKG_DEBUG} \
- ${ECHO} "#!${BUILDLINK_SHELL}" > ${.TARGET}
- ${_PKG_SILENT}${_PKG_DEBUG} \
- ${ECHO} '${ECHO} "==> [buildlink2] Error: makeinfo $$*" >> ${_BLNK_WRAP_LOG}' >> ${.TARGET}
- ${_PKG_SILENT}${_PKG_DEBUG} \
- ${ECHO} 'exit 1' >> ${.TARGET}
- ${_PKG_SILENT}${_PKG_DEBUG}${CHMOD} +x ${.TARGET}
-.endif # USE_MAKEINFO