pkgsrc/devel/gmake/Makefile

61 lines
1.6 KiB
Makefile
Raw Normal View History

# $NetBSD: Makefile,v 1.63 2006/02/05 23:08:43 joerg Exp $
DISTNAME= make-3.80
PKGNAME= gmake-3.80
PKGREVISION= 5
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_GNU:=make/}
2003-07-17 23:21:03 +02:00
MAINTAINER= tech-pkg@NetBSD.org
HOMEPAGE= http://www.gnu.org/software/make/make.html
COMMENT= GNU version of 'make' utility
2004-01-05 12:17:10 +01:00
PKG_INSTALLATION_TYPES= overwrite pkgviews
GNU_CONFIGURE= yes
update to gmake-3.80 Changes since 3.79.1 are: Version 3.80 * A new feature exists: order-only prerequisites. These prerequisites affect the order in which targets are built, but they do not impact the rebuild/no-rebuild decision of their dependents. That is to say, they allow you to require target B be built before target A, without requiring that target A will always be rebuilt if target B is updated. Patch for this feature provided by Greg McGary <greg@mcgary.org>. * For compatibility with SysV make, GNU make now supports the peculiar syntax $$@, $$(@D), and $$(@F) in the prerequisites list of a rule. This syntax is only valid within explicit and static pattern rules: it cannot be used in implicit (suffix or pattern) rules. Edouard G. Parmelan <egp@free.fr> provided a patch implementing this feature; however, I decided to implement it in a different way. * The argument to the "ifdef" conditional is now expanded before it's tested, so it can be a constructed variable name. Similarly, the arguments to "export" (when not used in a variable definition context) and "unexport" are also now expanded. * A new function is defined: $(value ...). The argument to this function is the _name_ of a variable. The result of the function is the value of the variable, without having been expanded. * A new function is defined: $(eval ...). The arguments to this function should expand to makefile commands, which will then be evaluated as if they had appeared in the makefile. In combination with define/endef multiline variable definitions this is an extremely powerful capability. The $(value ...) function is also sometimes useful here. * A new built-in variable is defined, $(MAKEFILE_LIST). It contains a list of each makefile GNU make has read, or started to read, in the order in which they were encountered. So, the last filename in the list when a makefile is just being read (before any includes) is the name of the current makefile. * A new built-in variable is defined: $(.VARIABLES). When it is expanded it returns a complete list of variable names defined by all makefiles at that moment. * A new command-line option is defined, -B or --always-make. If specified GNU make will consider all targets out-of-date even if they would otherwise not be. * The arguments to $(call ...) functions were being stored in $1, $2, etc. as recursive variables, even though they are fully expanded before assignment. This means that escaped dollar signs ($$ etc.) were not behaving properly. Now the arguments are stored as simple variables. This may mean that if you added extra escaping to your $(call ...) function arguments you will need to undo it now. * The variable invoked by $(call ...) can now be recursive: unlike other variables it can reference itself and this will not produce an error when it is used as the first argument to $(call ...) (but only then). * New pseudo-target .LOW_RESOLUTION_TIME, superseding the configure option --disable-nsec-timestamps. You might need this if your build process depends on tools like "cp -p" preserving time stamps, since "cp -p" (right now) doesn't preserve the subsecond portion of a time stamp. * Updated translations for French, Galician, German, Japanese, Korean, and Russian. New translations for Croatian, Danish, Hebrew, and Turkish. * Updated internationalization support to Gettext 0.11.5. GNU make now uses Gettext's "external" feature, and does not include any internationalization code itself. Configure will search your system for an existing implementation of GNU Gettext (only GNU Gettext is acceptable) and use it if it exists. If not, NLS will be disabled. See ABOUT-NLS for more information. * Updated to autoconf 2.54 and automake 1.7. Users should not be impacted.
2002-10-16 02:21:21 +02:00
TEXINFO_REQD= 4.0
2003-06-23 12:57:27 +02:00
INFO_FILES= make.info
1998-01-24 05:04:00 +01:00
# NOTE: the 'test' target requires perl, but since gmake does
# not otherwise require it, perl is not listed as an explicit
# dependency
TEST_TARGET= check
.include "../../mk/bsd.prefs.mk"
.if defined(GNU_PROGRAM_PREFIX)
CONFIGURE_ARGS+= --program-prefix=${GNU_PROGRAM_PREFIX:Q}
.endif
PLIST_SUBST+= GNU_PROGRAM_PREFIX=${GNU_PROGRAM_PREFIX:Q}
BUILD_DEFS+= GNU_PROGRAM_PREFIX
.if !defined(GNU_PROGRAM_PREFIX) || ${GNU_PROGRAM_PREFIX} != "g"
PLIST_SUBST+= GMAKE_LINK=""
.else
PLIST_SUBST+= GMAKE_LINK="@comment "
.endif
PLIST_SRC= ${PKGDIR}/PLIST
GMAKE_LOCALE?= yes
BUILD_DEFS+= GMAKE_LOCALE
MAKEFLAGS+= GMAKE_LOCALE=${GMAKE_LOCALE:Q}
.if !empty(GMAKE_LOCALE:M[yY][eE][sS])
USE_PKGLOCALEDIR= yes
PLIST_SRC+= ${PKGDIR}/PLIST.locale
BROKEN_GETTEXT_DETECTION= no
. include "../../devel/gettext-lib/buildlink3.mk"
.else
CONFIGURE_ARGS+= --without-libintl
CONFIGURE_ARGS+= --without-libiconv
.endif
post-install:
${CHMOD} g-s ${PREFIX}/bin/${GNU_PROGRAM_PREFIX}make
${CHGRP} ${BINGRP} ${PREFIX}/bin/${GNU_PROGRAM_PREFIX}make
.if !defined(GNU_PROGRAM_PREFIX) || ${GNU_PROGRAM_PREFIX} != "g"
${LN} -sf ${GNU_PROGRAM_PREFIX}make ${PREFIX}/bin/gmake
.endif
.include "../../mk/bsd.pkg.mk"