aboutsummaryrefslogtreecommitdiff
path: root/ports-mgmt/portmk/Mk/bsd.port.mk
diff options
context:
space:
mode:
Diffstat (limited to 'ports-mgmt/portmk/Mk/bsd.port.mk')
-rw-r--r--ports-mgmt/portmk/Mk/bsd.port.mk444
1 files changed, 292 insertions, 152 deletions
diff --git a/ports-mgmt/portmk/Mk/bsd.port.mk b/ports-mgmt/portmk/Mk/bsd.port.mk
index b55d3a8bd62c..ffaa396837b9 100644
--- a/ports-mgmt/portmk/Mk/bsd.port.mk
+++ b/ports-mgmt/portmk/Mk/bsd.port.mk
@@ -115,6 +115,9 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# subdirectory from FreeBSD mirror sites.
# ALLFILES - All of ${DISTFILES} and ${PATCHFILES}.
# IGNOREFILES - If set, don't perform checksum checks on these files.
+# NOFETCHFILES - If set, don't download these files from the ${MASTER_SITES}
+# or ${MASTER_SITE_BACKUP} (but do from
+# ${MASTER_SITE_OVERRIDE})
# EXTRACT_ONLY - If set, a subset of ${DISTFILES} you want to
# actually extract.
#
@@ -250,6 +253,18 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# package depends on. "lib" is the name of a shared library.
# make will use "ldconfig -r" to search for the library.
# lib can contain extended regular expressions.
+# PERL_BUILD_DEPENDS
+# - A list of "module:dir" tuples of Perl modules this
+# package depends to build. "module" is the name of the Perl
+# module which should be "use"d. make will use
+# "perl -e 'use module'" to check if the module is
+# available.
+# PERL_RUN_DEPENDS
+# - A list of "module:dir" tuples of Perl modules this
+# package depends to run. "module" is the name of the Perl
+# module which should be "use"d. make will use
+# "perl -e 'use module'" to check if the module is
+# available.
# DEPENDS - A list of "dir[:target]" tuples of other ports this
# package depends on being made first. Use this only for
# things that don't fall into the above four categories.
@@ -276,6 +291,9 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# compression.
# USE_ZIP - If set, this port distfile uses zip, not tar w/[bg]zip
# for compression.
+# USE_DOS2UNIX - If set to "YES", remove the ^M from all files
+# under ${WRKSRC}. If set to a string, remove in all
+# files under ${WRKSRC} with one of these names the ^Ms.
# USE_GCC - If set, this port requires this version of gcc, either in
# the system or installed from a port.
# USE_GMAKE - If set, this port uses gmake.
@@ -373,13 +391,12 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# USE_FAM - If set, this port uses the File Alteration Monitor.
#
# WANT_FAM_SYSTEM
-# - Legal values are: fam (default), gamin
+# - Legal values are: gamin (default),fam
# If set to an unknown value, the port is marked BROKEN.
##
# USE_AUTOTOOLS - If set, this port uses various GNU autotools
# (libtool, autoconf, autoheader, automake et al.)
# See bsd.autotools.mk for more details.
-# XXX: not currently in active use - this is a placeholder.
##
# USE_JAVA - If set, this port relies on the Java language.
# Implies inclusion of bsd.java.mk. (Also see
@@ -422,7 +439,16 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# or a sound server which supports the FreeBSD native one),
# use the default or the X11 prefix if it's a leaf port
# (e.g. a game or program).
-# Implies NO_MTREE=yes.
+# Implies NO_MTREE=yes, and, if INSTALLS_SHLIB is defined:
+# - USE_LINUX=yes
+# - appropriate invocation of the Linux ldconfig
+# USE_LINUX_RPM - Set to yes to pull in variables and targets useful to Linux
+# RPM ports.
+# Implies inclusion of bsd.linux-rpm.mk.
+# AUTOMATIC_PLIST
+# - Set to yes to enable automatic packing list generation.
+# Currently has no effect unless USE_LINUX_RPM is set.
+#
# OVERRIDE_LINUX_BASE_PORT - This specifies the default linux base to use, for valid values
# have a look at the description of USE_LINUX. This is an user-only
# variable. Don't use it in any port, it's meant to be used in
@@ -813,6 +839,9 @@ FreeBSD_MAINTAINER= portmgr@FreeBSD.org
# - If set, bsd.port.mk will automatically run ldconfig commands
# from post-install and also add appropriate @exec/@unexec
# directives to directories listed in LDCONFIG_DIRS.
+# If USE_LINUX_PREFIX is defined, the Linux version of ldconfig
+# will be used instead of the native FreeBSD version (in such
+# case, LDCONFIG_DIRS is ignored).
# LDCONFIG_DIRS - List of directories to run ldconfig if INSTALLS_SHLIB is set.
# Note that this is passed through sed just like the
# rest of PLIST, so ${PLIST_SUB} substitutions also
@@ -1022,12 +1051,7 @@ TEST?= test # Shell builtin
TR?= /usr/bin/tr
TRUE?= true # Shell builtin
UNAME?= /usr/bin/uname
-.if exists(/usr/bin/unzip)
-UNZIP_CMD?= /usr/bin/unzip
-.else
UNZIP_CMD?= ${LOCALBASE}/bin/unzip
-ZIPDEPENDS= yes
-.endif
WHICH?= /usr/bin/which
XARGS?= /usr/bin/xargs
YACC?= /usr/bin/yacc
@@ -1063,11 +1087,7 @@ OSREL!= ${UNAME} -r | ${SED} -e 's/[-(].*//'
# Get __FreeBSD_version
.if !defined(OSVERSION)
-.if exists(/sbin/sysctl)
OSVERSION!= /sbin/sysctl -n kern.osreldate
-.else
-OSVERSION!= /usr/sbin/sysctl -n kern.osreldate
-.endif
.endif
# Get the object format.
@@ -1171,7 +1191,7 @@ check-makefile::
.if defined(PORTVERSION)
.if ${PORTVERSION:M*[-_,]*}x != x
-BROKEN= "PORTVERSION ${PORTVERSION} may not contain '-' '_' or ','"
+BROKEN= PORTVERSION ${PORTVERSION} may not contain '-' '_' or ','
.endif
DISTVERSION?= ${PORTVERSION:S/:/::/g}
.elif defined(DISTVERSION)
@@ -1210,6 +1230,11 @@ INDEXFILE?= INDEX-${OSVERSION:C/([0-9]).*/\1/}
.else
INDEXFILE?= INDEX
.endif
+
+.if defined(USE_LINUX_RPM)
+.include "${PORTSDIR}/Mk/bsd.linux-rpm.mk"
+.endif
+
.if defined(USE_BZIP2)
EXTRACT_SUFX?= .tar.bz2
.elif defined(USE_ZIP)
@@ -1249,6 +1274,16 @@ NO_MTREE= yes
PREFIX?= ${LOCALBASE}
.endif
+.if defined(USE_LINUX_PREFIX)
+LDCONFIG_CMD?= ${LINUXBASE}/sbin/ldconfig
+LDCONFIG_PLIST_EXEC_CMD?= ${LDCONFIG_CMD}
+LDCONFIG_PLIST_UNEXEC_CMD?= ${LDCONFIG_CMD}
+.else
+LDCONFIG_CMD?= ${LDCONFIG} -m ${LDCONFIG_RUNLIST}
+LDCONFIG_PLIST_EXEC_CMD?= ${LDCONFIG} -m ${LDCONFIG_PLIST}
+LDCONFIG_PLIST_UNEXEC_CMD?= ${LDCONFIG} -R
+.endif
+
PKGCOMPATDIR?= ${LOCALBASE}/lib/compat/pkg
.if ${OSVERSION} >= 500036
@@ -1317,14 +1352,6 @@ PERL= ${LOCALBASE}/bin/perl
.endif
.endif
-# XXX: (not yet): .if defined(USE_AUTOTOOLS)
-# .if exists(${DEVELPORTSDIR}/Mk/bsd.autotools.mk)
-# .include "${DEVELPORTSDIR}/Mk/bsd.autotools.mk"
-# .else
-# .include "${PORTSDIR}/Mk/bsd.autotools.mk"
-# .endif
-# XXX: (not yet): .endif
-
.if defined(USE_OPENSSL)
.if exists(${DEVELPORTSDIR}/Mk/bsd.openssl.mk)
.include "${DEVELPORTSDIR}/Mk/bsd.openssl.mk"
@@ -1429,6 +1456,10 @@ PERL= ${LOCALBASE}/bin/perl
.endif
.endif
+.if defined(USE_QMAIL) || defined(USE_QMAIL_RUN) || defined(USE_QMAIL_BUILD) || defined(WANT_QMAIL)
+.include "${PORTSDIR}/Mk/bsd.mail.mk"
+.endif
+
.if ${OSVERSION} >= 502123
X_WINDOW_SYSTEM ?= xorg
.elif (${OSVERSION} >= 450005 && !defined(XFREE86_VERSION)) || \
@@ -1443,8 +1474,6 @@ CD_MOUNTPTS?= /cdrom ${CD_MOUNTPT}
WANT_OPENLDAP_VER?= 22
-WANT_FAM_SYSTEM?= fam
-
# Owner and group of the WWW user
WWWOWN?= www
WWWGRP?= www
@@ -1479,6 +1508,9 @@ PLIST_SUB+= OSREL=${OSREL} PREFIX=%D LOCALBASE=${LOCALBASE} X11BASE=${X11BASE}
SUB_LIST+= PREFIX=${PREFIX} LOCALBASE=${LOCALBASE} X11BASE=${X11BASE} \
DATADIR=${DATADIR} DOCSDIR=${DOCSDIR} EXAMPLESDIR=${EXAMPLESDIR}
+PLIST_REINPLACE+= dirrmtry
+PLIST_REINPLACE_DIRRMTRY=s!^@dirrmtry \(.*\)!@unexec rmdir %D/\1 2>/dev/null || true!
+
.if defined(WITHOUT_CPU_CFLAGS)
.if defined(_CPUCFLAGS)
.if !empty(_CPUCFLAGS)
@@ -1520,7 +1552,7 @@ MANCOMPRESSED?= no
.if ${PATCHFILES:M*.bz2}x != x && defined(BZIP2DEPENDS)
PATCH_DEPENDS+= bzip2:${PORTSDIR}/archivers/bzip2
.endif
-.if ${PATCHFILES:M*.zip}x != x && defined(ZIPDEPENDS)
+.if ${PATCHFILES:M*.zip}x != x
PATCH_DEPENDS+= unzip:${PORTSDIR}/archivers/unzip
.endif
.endif
@@ -1528,7 +1560,7 @@ PATCH_DEPENDS+= unzip:${PORTSDIR}/archivers/unzip
.if defined(USE_BZIP2) && defined(BZIP2DEPENDS)
EXTRACT_DEPENDS+= bzip2:${PORTSDIR}/archivers/bzip2
.endif
-.if defined(USE_ZIP) && defined(ZIPDEPENDS)
+.if defined(USE_ZIP)
EXTRACT_DEPENDS+= unzip:${PORTSDIR}/archivers/unzip
.endif
.if defined(USE_GMAKE)
@@ -1548,6 +1580,10 @@ MAKE_ENV+= CC="${CC}" CXX="${CXX}"
.endif
.endif
+.if defined(USE_DOS2UNIX)
+USE_REINPLACE= yes
+.endif
+
.if defined(USE_GCC)
.if exists(${DEVELPORTSDIR}/Mk/bsd.gcc.mk)
.include "${DEVELPORTSDIR}/Mk/bsd.gcc.mk"
@@ -1572,19 +1608,33 @@ LIB_DEPENDS+= ldap-2.2.7:${PORTSDIR}/net/openldap22${_OPENLDAP_FLAVOUR}-client
.elif ${WANT_OPENLDAP_VER} == 23
LIB_DEPENDS+= ldap-2.3.1:${PORTSDIR}/net/openldap23${_OPENLDAP_FLAVOUR}-client
.else
-BROKEN= "unknown OpenLDAP version: ${WANT_OPENLDAP_VER}"
+BROKEN= unknown OpenLDAP version: ${WANT_OPENLDAP_VER}
.endif
.endif
.if defined(USE_FAM)
-.if ${WANT_FAM_SYSTEM} == fam
-LIB_DEPENDS+= fam.0:${PORTSDIR}/devel/fam
-.elif ${WANT_FAM_SYSTEM} == gamin
-LIB_DEPENDS+= fam.0:${PORTSDIR}/devel/gamin
+DEFAULT_FAM_SYSTEM= gamin
+# Currently supported FAM systems
+FAM_SYSTEM_FAM= fam.0:${PORTSDIR}/devel/fam
+FAM_SYSTEM_GAMIN= fam.0:${PORTSDIR}/devel/gamin
+
+.if defined(WANT_FAM_SYSTEM)
+.if defined(WITH_FAM_SYSTEM) && ${WITH_FAM_SYSTEM}!=${WANT_FAM_SYSTEM}
+BROKEN= The port wants to use ${WANT_FAM_SYSTEM} as its FAM system and you wish to use ${WITH_FAM_SYSTEM}
+.endif
+FAM_SYSTEM= ${WANT_FAM_SYSTEM}
+.elif defined(WITH_FAM_SYSTEM)
+FAM_SYSTEM= ${WITH_FAM_SYSTEM}
.else
-BROKEN= "unknown FAM system: ${WANT_FAM_SYSTEM}"
-.endif
+FAM_SYSTEM= ${DEFAULT_FAM_SYSTEM}
+.endif # WANT_FAM_SYSTEM
+
+.if defined(FAM_SYSTEM_${FAM_SYSTEM:U})
+LIB_DEPENDS+= ${FAM_SYSTEM_${FAM_SYSTEM:U}}
+.else
+BROKEN= unknown FAM system: ${FAM_SYSTEM}
.endif
+.endif # USE_FAM
.if defined(USE_GETOPT_LONG)
.if ${OSVERSION} < 500041
@@ -1623,6 +1673,11 @@ LIB_DEPENDS+= intl.${USE_GETTEXT}:${PORTSDIR}/devel/gettext
. endif
.endif
+.if defined(USE_LINUX_PREFIX) && defined(INSTALLS_SHLIB)
+# we need ${LINUXBASE}/sbin/ldconfig
+USE_LINUX?= yes
+.endif
+
.if defined(USE_LINUX)
# install(1) also does a brandelf on strip, so don't strip with FreeBSD tools.
@@ -1797,7 +1852,10 @@ CONFIGURE_ARGS+= INSTALLDIRS="site"
.if defined(PERL_CONFIGURE)
USE_PERL5= yes
-USE_REINPLACE=yes
+.endif
+
+.if defined(PERL_RUN_DEPENDS) || defined(PERL_BUILD_DEPENDS)
+USE_PERL5_BUILD= yes
.endif
.if ${PERL_LEVEL} >= 500600
@@ -1811,17 +1869,9 @@ RUN_DEPENDS+= ${PERL5}:${PORTSDIR}/lang/${PERL_PORT}
.endif
.endif
-# XXX: (not yet): .if defined(USE_AUTOTOOLS)
-.if exists(${DEVELPORTSDIR}/Mk/bsd.autotools.mk)
-.include "${DEVELPORTSDIR}/Mk/bsd.autotools.mk"
-.else
-.include "${PORTSDIR}/Mk/bsd.autotools.mk"
-.endif
-# XXX: (not yet): .endif
-
.if defined(USE_MYSQL) || defined(WANT_MYSQL_VER) || \
defined(USE_PGSQL) || defined(WANT_PGSQL_VER) || \
- defined(USE_BDB) || defined(USE_SQLITE)
+ defined(USE_BDB) || defined(USE_SQLITE)
.if exists(${DEVELPORTSDIR}/Mk/bsd.database.mk)
.include "${DEVELPORTSDIR}/Mk/bsd.database.mk"
.else
@@ -1877,6 +1927,19 @@ RUN_DEPENDS+= ${PERL5}:${PORTSDIR}/lang/${PERL_PORT}
.endif
.endif
+# XXX: (not yet): .if defined(USE_AUTOTOOLS)
+.if exists(${DEVELPORTSDIR}/Mk/bsd.autotools.mk)
+.include "${DEVELPORTSDIR}/Mk/bsd.autotools.mk"
+.else
+.include "${PORTSDIR}/Mk/bsd.autotools.mk"
+.endif
+# XXX: (not yet): .endif
+
+
+.if defined(USE_LINUX_RPM)
+.include "${PORTSDIR}/Mk/bsd.linux-rpm.mk"
+.endif
+
.if exists(${PORTSDIR}/../Makefile.inc)
.include "${PORTSDIR}/../Makefile.inc"
USE_SUBMAKE= yes
@@ -1926,11 +1989,9 @@ BUILD_DEPENDS+= gs:${PORTSDIR}/${GHOSTSCRIPT_PORT}
RUN_DEPENDS+= gs:${PORTSDIR}/${GHOSTSCRIPT_PORT}
.endif
-# Special macro for doing in-place file editing using regexps
-.if defined(USE_REINPLACE)
+# Macro for doing in-place file editing using regexps
REINPLACE_ARGS?= -i.bak
REINPLACE_CMD?= ${SED} ${REINPLACE_ARGS}
-.endif
# Names of cookies used to skip already completed stages
EXTRACT_COOKIE?= ${WRKDIR}/.extract_done.${PKGNAME}.${PREFIX:S/\//_/g}
@@ -1952,10 +2013,6 @@ GMAKE?= gmake
XMKMF?= xmkmf -a
.if exists(/sbin/md5)
MD5?= /sbin/md5
-.elif exists(/bin/md5)
-MD5?= /bin/md5
-.elif exists(/usr/bin/md5)
-MD5?= /usr/bin/md5
.else
MD5?= md5
.endif
@@ -2044,11 +2101,7 @@ PATCH_ARGS+= --suffix .orig
PATCH_DIST_ARGS+= --suffix .orig
.endif
-.if exists(/bin/tar)
-TAR?= /bin/tar
-.else
TAR?= /usr/bin/tar
-.endif
# EXTRACT_SUFX is defined in .pre.mk section
.if defined(USE_ZIP)
@@ -2438,6 +2491,8 @@ FETCH_BEFORE_ARGS+= -l
.endif
.endfor
+NOFETCHFILES?=
+
# Organize DISTFILES, PATCHFILES, _MASTER_SITES_ALL, _PATCH_SITES_ALL
# according to grouping rules (:something)
DISTFILES?= ${DISTNAME}${EXTRACT_SUFX}
@@ -2632,12 +2687,12 @@ check-categories:
VALID_CATEGORIES+= accessibility afterstep arabic archivers astro audio \
benchmarks biology cad chinese comms converters databases \
deskutils devel dns editors elisp emulators finance french ftp \
- games german gnome graphics haskell hebrew hungarian \
+ games geography german gnome graphics hamradio haskell hebrew hungarian \
ipv6 irc japanese java kde korean lang linux lisp \
mail math mbone misc multimedia net net-im net-mgmt news \
- offix palm parallel pear perl5 picobsd plan9 polish portuguese print \
- python ruby russian \
- scheme science security shells sysutils \
+ palm parallel pear perl5 picobsd plan9 polish portuguese print \
+ python ruby rubygem russian \
+ scheme science security shells spanish sysutils \
tcl80 tcl81 tcl82 tcl83 tcl84 textproc \
tk80 tk82 tk83 tk84 tkstep80 \
ukrainian vietnamese windowmaker www \
@@ -2697,11 +2752,7 @@ CONFIGURE_FAIL_MESSAGE?= "Please report the problem to ${MAINTAINER} [maintainer
.if defined(GNU_CONFIGURE)
# Maximum command line length
.if !defined(CONFIGURE_MAX_CMD_LEN)
-.if exists(/sbin/sysctl)
CONFIGURE_MAX_CMD_LEN!= /sbin/sysctl -n kern.argmax
-.else
-CONFIGURE_MAX_CMD_LEN!= /usr/sbin/sysctl -n kern.argmax
-.endif
.endif
CONFIGURE_ARGS+= --prefix=${PREFIX} ${CONFIGURE_TARGET}
CONFIGURE_ENV+= lt_cv_sys_max_cmd_len=${CONFIGURE_MAX_CMD_LEN}
@@ -2858,8 +2909,6 @@ LDCONFIG_RUNLIST!= ${ECHO_CMD} ${LDCONFIG_PLIST} | ${SED} -e "s!%D!${PREFIX}!g"
# Don't build a port if it's restricted and we don't want to get
# into that.
#
-# Don't build a port on an ELF machine if it's broken for ELF.
-#
# Don't build a port if it's broken, unless we're running a parallel
# build (in case it's fixed).
#
@@ -2888,32 +2937,32 @@ __ARCH_OK?= 1
.if !defined(__ARCH_OK)
.if defined(ONLY_FOR_ARCHS)
-IGNORE= "is only for ${ONLY_FOR_ARCHS},"
+IGNORE= is only for ${ONLY_FOR_ARCHS},
.else # defined(NOT_FOR_ARCHS)
-IGNORE= "does not run on ${NOT_FOR_ARCHS},"
+IGNORE= does not run on ${NOT_FOR_ARCHS},
.endif
-IGNORE+= "and you are running ${ARCH}"
+IGNORE+= and you are running ${ARCH}
.endif
.if !defined(NO_IGNORE)
.if (defined(IS_INTERACTIVE) && defined(BATCH))
-IGNORE= "is an interactive port"
+IGNORE= is an interactive port
.elif (!defined(IS_INTERACTIVE) && defined(INTERACTIVE))
-IGNORE= "is not an interactive port"
+IGNORE= is not an interactive port
.elif (defined(NO_CDROM) && defined(FOR_CDROM))
-IGNORE= "may not be placed on a CDROM: ${NO_CDROM}"
+IGNORE= may not be placed on a CDROM: ${NO_CDROM}
.elif (defined(RESTRICTED) && defined(NO_RESTRICTED))
-IGNORE= "is restricted: ${RESTRICTED}"
+IGNORE= is restricted: ${RESTRICTED}
.elif defined(BROKEN)
.if !defined(TRYBROKEN)
-IGNORE= "is marked as broken: ${BROKEN}"
+IGNORE= is marked as broken: ${BROKEN}
.endif
.elif defined(FORBIDDEN)
-IGNORE= "is forbidden: ${FORBIDDEN}"
+IGNORE= is forbidden: ${FORBIDDEN}
.endif
.if (defined(MANUAL_PACKAGE_BUILD) && defined(PACKAGE_BUILDING) && !defined(PARALLEL_PACKAGE_BUILD))
-IGNORE= "has to be built manually: ${MANUAL_PACKAGE_BUILD}"
+IGNORE= has to be built manually: ${MANUAL_PACKAGE_BUILD}
clean:
@${IGNORECMD}
.endif
@@ -2922,15 +2971,17 @@ clean:
.if defined(IGNORE_SILENT)
IGNORECMD= ${DO_NADA}
.else
-IGNORECMD= ${ECHO_MSG} "===> ${PKGNAME} ${IGNORE}."
+IGNORECMD= ${ECHO_MSG} "===> ${PKGNAME} "${IGNORE:Q}.
.endif
.for target in check-sanity fetch checksum extract patch configure all build install reinstall package
+.if !target(${target})
${target}:
@${IGNORECMD}
.if defined(INSTALLS_DEPENDS)
@${FALSE}
.endif
+.endif
.endfor
.endif
@@ -3045,7 +3096,7 @@ package:
.if defined(IGNORE_SILENT)
@${DO_NADA}
.else
- @${ECHO_MSG} "===> ${PKGNAME} may not be packaged: ${NO_PACKAGE}."
+ @${ECHO_MSG} "===> ${PKGNAME} may not be packaged: "${NO_PACKAGE:Q}.
.endif
.endif
@@ -3102,7 +3153,7 @@ check-deprecated:
@${ECHO_MSG}
@${ECHO_MSG} "This port is deprecated; you may wish to reconsider installing it:"
@${ECHO_MSG}
- @${ECHO_MSG} "${DEPRECATED}."
+ @${ECHO_MSG} ${DEPRECATED:Q}.
@${ECHO_MSG}
.if defined(EXPIRATION_DATE)
@${ECHO_MSG} "It is scheduled to be removed on or after ${EXPIRATION_DATE}."
@@ -3292,9 +3343,27 @@ do-extract:
# Patch
+.if !target(patch-dos2unix)
+patch-dos2unix:
+.if defined(USE_DOS2UNIX)
+.if ${USE_DOS2UNIX:U}=="YES"
+ @${ECHO_MSG} "===> Converting DOS text files to UNIX text files"
+ @${FIND} -E ${WRKSRC} -type f -print0 | \
+ ${XARGS} -0 ${REINPLACE_CMD} -i"" -e 's/[[:cntrl:]]*$$//'
+.else
+.for f in ${USE_DOS2UNIX}
+ @${ECHO_MSG} "===> Converting DOS text file to UNIX text file: ${f}"
+ @${REINPLACE_CMD} -i"" -e 's/[[:cntrl:]]*$$//' ${WRKSRC}/${f}
+.endfor
+.else
+ ${DO_NADA}
+.endif
+.endif
+
.if !target(do-patch)
do-patch:
.if defined(PATCHFILES)
+.endif
@${ECHO_MSG} "===> Applying distribution patches for ${PKGNAME}"
@(cd ${_DISTDIR}; \
for i in ${_PATCHFILES}; do \
@@ -3637,10 +3706,10 @@ run-ldconfig:
.if defined(INSTALLS_SHLIB)
.if !defined(INSTALL_AS_USER)
@${ECHO_MSG} "===> Running ldconfig"
- ${LDCONFIG} -m ${LDCONFIG_RUNLIST}
+ ${LDCONFIG_CMD}
.else
@${ECHO_MSG} "===> Running ldconfig (errors are ignored)"
- -${LDCONFIG} -m ${LDCONFIG_RUNLIST}
+ -${LDCONFIG_CMD}
.endif
.else
@${DO_NADA}
@@ -3794,9 +3863,9 @@ security-check:
# Please note that the order of the following targets is important, and
# should not be modified.
-_SANITY_SEQ= pre-everything check-makefile check-categories \
- check-makevars check-depends check-deprecated \
- check-vulnerable buildanyway-message options-message
+_SANITY_SEQ= pre-everything check-makefile check-categories \
+ check-makevars check-depends check-deprecated \
+ check-vulnerable buildanyway-message options-message
_FETCH_DEP= check-sanity
_FETCH_SEQ= fetch-depends pre-fetch pre-fetch-script \
do-fetch post-fetch post-fetch-script
@@ -3805,19 +3874,20 @@ _EXTRACT_SEQ= extract-message checksum extract-depends pre-extract \
pre-extract-script do-extract \
post-extract post-extract-script
_PATCH_DEP= extract
-_PATCH_SEQ= patch-message patch-depends pre-patch pre-patch-script \
- do-patch post-patch post-patch-script
+_PATCH_SEQ= patch-message patch-depends patch-dos2unix pre-patch \
+ pre-patch-script do-patch post-patch post-patch-script
_CONFIGURE_DEP= patch
-_CONFIGURE_SEQ= build-depends lib-depends misc-depends configure-message \
- pre-configure pre-configure-script patch-autotools \
- run-autotools do-configure post-configure post-configure-script
+_CONFIGURE_SEQ= build-depends lib-depends perl-build-depends misc-depends \
+ configure-message pre-configure pre-configure-script \
+ run-autotools do-configure post-configure post-configure-script
_BUILD_DEP= configure
_BUILD_SEQ= build-message pre-build pre-build-script do-build \
post-build post-build-script
_INSTALL_DEP= build
_INSTALL_SEQ= install-message check-conflicts \
- run-depends lib-depends apply-slist pre-install \
- pre-install-script generate-plist check-already-installed
+ run-depends lib-depends perl-run-depends apply-slist \
+ pre-install pre-install-script generate-plist \
+ check-already-installed
_INSTALL_SUSEQ= check-umask install-mtree pre-su-install \
pre-su-install-script do-install install-desktop-entries \
post-install post-install-script add-plist-info \
@@ -4131,6 +4201,11 @@ fetch-list:
SORTED_MASTER_SITES_CMD_TMP="${SORTED_MASTER_SITES_DEFAULT_CMD}" ; \
fi ; \
for site in `eval $$SORTED_MASTER_SITES_CMD_TMP ${_RANDOMIZE_SITES}`; do \
+ if [ ! -z "`${ECHO_CMD} ${NOFETCHFILES} | ${GREP} -w $${file}`" ]; then \
+ if [ -z "`${ECHO_CMD} ${MASTER_SITE_OVERRIDE} | ${GREP} -w $${site}`" ]; then \
+ continue; \
+ fi; \
+ fi; \
DIR=${DIST_SUBDIR}; \
CKSIZE=`${GREP} "^SIZE ($${DIR:+$$DIR/}$$file)" ${MD5_FILE} | ${AWK} '{print $$4}'`; \
case $${file} in \
@@ -4403,7 +4478,7 @@ package-noinstall:
################################################################
.if !target(depends)
-depends: extract-depends patch-depends lib-depends misc-depends fetch-depends build-depends run-depends
+depends: extract-depends patch-depends lib-depends perl-build-depends perl-run-depends misc-depends fetch-depends build-depends run-depends
.if defined(ALWAYS_BUILD_DEPENDS)
_DEPEND_ALWAYS= 1
@@ -4411,6 +4486,21 @@ _DEPEND_ALWAYS= 1
_DEPEND_ALWAYS= 0
.endif
+_INSTALL_DEPENDS= \
+ if [ X${USE_PACKAGE_DEPENDS} != "X" ]; then \
+ subpkgfile=`(cd $$dir; ${MAKE} $$depends_args -V PKGFILE)`; \
+ if [ -r "$${subpkgfile}" -a "$$target" = "${DEPENDS_TARGET}" ]; then \
+ ${ECHO_MSG} "===> Installing existing package $${subpkgfile}"; \
+ ${PKG_ADD} $${subpkgfile}; \
+ else \
+ (cd $$dir; ${MAKE} -DINSTALLS_DEPENDS $$target $$depends_args) ; \
+ fi; \
+ else \
+ (cd $$dir; ${MAKE} -DINSTALLS_DEPENDS $$target $$depends_args) ; \
+ fi ; \
+ ${ECHO_MSG} "===> Returning to build of ${PKGNAME}"; \
+
+
.for deptype in EXTRACT PATCH FETCH BUILD RUN
${deptype:L}-depends:
.if defined(${deptype}_DEPENDS)
@@ -4479,18 +4569,7 @@ ${deptype:L}-depends:
if [ ! -d "$$dir" ]; then \
${ECHO_MSG} " => No directory for $$prog. Skipping.."; \
else \
- if [ X${USE_PACKAGE_DEPENDS} != "X" ]; then \
- subpkgfile=`(cd $$dir; ${MAKE} $$depends_args -V PKGFILE)`; \
- if [ -r "$${subpkgfile}" -a "$$target" = "${DEPENDS_TARGET}" ]; then \
- ${ECHO_MSG} "===> Installing existing package $${subpkgfile}"; \
- ${PKG_ADD} $${subpkgfile}; \
- else \
- (cd $$dir; ${MAKE} -DINSTALLS_DEPENDS $$target $$depends_args) ; \
- fi; \
- else \
- (cd $$dir; ${MAKE} -DINSTALLS_DEPENDS $$target $$depends_args) ; \
- fi ; \
- ${ECHO_MSG} "===> Returning to build of ${PKGNAME}"; \
+ ${_INSTALL_DEPENDS} \
fi; \
fi; \
done
@@ -4535,18 +4614,7 @@ lib-depends:
if [ ! -d "$$dir" ]; then \
${ECHO_MSG} " => No directory for $$lib. Skipping.."; \
else \
- if [ X${USE_PACKAGE_DEPENDS} != "X" ]; then \
- subpkgfile=`(cd $$dir; ${MAKE} $$depends_args -V PKGFILE)`; \
- if [ -r "$${subpkgfile}" -a "$$target" = "${DEPENDS_TARGET}" ]; then \
- ${ECHO_MSG} "===> Installing existing package $${subpkgfile}"; \
- ${PKG_ADD} $${subpkgfile}; \
- else \
- (cd $$dir; ${MAKE} -DINSTALLS_DEPENDS $$target $$depends_args) ; \
- fi; \
- else \
- (cd $$dir; ${MAKE} -DINSTALLS_DEPENDS $$target $$depends_args) ; \
- fi ; \
- ${ECHO_MSG} "===> Returning to build of ${PKGNAME}"; \
+ ${_INSTALL_DEPENDS} \
if ! ${LDCONFIG} -r | ${GREP} -vwF -e "${PKGCOMPATDIR}" | ${GREP} -qwE -e "-l$$pattern"; then \
${ECHO_MSG} "Error: shared library \"$$lib\" does not exist"; \
${FALSE}; \
@@ -4556,6 +4624,35 @@ lib-depends:
done
.endif
+.for deptype in BUILD RUN
+perl-${deptype:L}-depends:
+.if defined(PERL_${deptype}_DEPENDS)
+ @for tupple in ${PERL_${deptype}_DEPENDS}; do \
+ mod=$${tupple%:*}; \
+ mod=`${ECHO_CMD} $${mod} | sed -e 's/\-/::/g'`; \
+ dir=$${tupple##*:}; \
+ ${ECHO_MSG} -n "===> ${PKGNAME} depends on Perl module: $$mod"; \
+ if ${PERL} -M$${mod} -e 1 2>/dev/null; then \
+ ${ECHO_MSG} " - found"; \
+ else \
+ ${ECHO_MSG} " - not found"; \
+ ${ECHO_MSG} "===> Verifying install for $$mod in $$dir"; \
+ if [ ! -d "$$dir" ]; then \
+ ${ECHO_MSG} " => No directory for $$mod. Skipping.."; \
+ else \
+ ${_INSTALL_DEPENDS} \
+ if ! ${PERL} -M$${mod} -e 1 2>/dev/null; then \
+ ${ECHO_MSG} "Error: Perl module \"$${mod}\" does not exist"; \
+ ${FALSE}; \
+ fi; \
+ fi; \
+ fi; \
+ done
+.else
+ @${DO_NADA}
+.endif
+.endfor
+
misc-depends:
.if defined(DEPENDS)
.if !defined(NO_DEPENDS)
@@ -4585,25 +4682,42 @@ misc-depends:
# Dependency lists: both build and runtime, recursive. Print out directory names.
+_UNIFIED_DEPENDS=${EXTRACT_DEPENDS} ${PATCH_DEPENDS} ${FETCH_DEPENDS} ${BUILD_DEPENDS} ${LIB_DEPENDS} ${RUN_DEPENDS} ${PERL_BUILD_DEPENDS} ${PERL_RUN_DEPENDS}
+_DEPEND_DIRS= ${_UNIFIED_DEPENDS:C,^[^:]*:([^:]*),\1,} ${DEPENDS:C,:.*,,}
+
all-depends-list:
-.if defined(EXTRACT_DEPENDS) || defined(PATCH_DEPENDS) || defined(FETCH_DEPENDS) || defined(BUILD_DEPENDS) || defined(LIB_DEPENDS) || defined(RUN_DEPENDS) || defined(DEPENDS)
@${ALL-DEPENDS-LIST}
-.endif
ALL-DEPENDS-LIST= \
- checked="${PARENT_CHECKED}"; \
- for dir in $$(${ECHO_CMD} "${EXTRACT_DEPENDS} ${PATCH_DEPENDS} ${FETCH_DEPENDS} ${BUILD_DEPENDS} ${LIB_DEPENDS} ${RUN_DEPENDS}" | ${SED} -e 'y/ /\n/' | ${CUT} -f 2 -d ':') $$(${ECHO_CMD} ${DEPENDS} | ${SED} -e 'y/ /\n/' | ${CUT} -f 1 -d ':'); do \
- if [ -d $$dir ]; then \
- if (${ECHO_CMD} $$checked | ${GREP} -qwv "$$dir"); then \
- child=$$(cd $$dir; ${MAKE} PARENT_CHECKED="$$checked" all-depends-list); \
- for d in $$child; do ${ECHO_CMD} $$d; done; \
- ${ECHO_CMD} $$dir; \
- checked="$$dir $$child $$checked"; \
- fi; \
- else \
- ${ECHO_MSG} "${PKGNAME}: \"$$dir\" non-existent -- dependency list incomplete" >&2; \
- fi; \
- done | ${SORT} -u
+ L="${_DEPEND_DIRS}"; \
+ checked=""; \
+ while [ -n "$$L" ]; do \
+ l=""; \
+ for d in $$L; do \
+ case $$checked in \
+ $$d\ *|*\ $$d\ *|*\ $$d) \
+ continue;; \
+ esac; \
+ checked="$$checked $$d"; \
+ if [ ! -d $$d ]; then \
+ ${ECHO_MSG} "${PKGNAME}: \"$$d\" non-existent -- dependency list incomplete" >&2; \
+ continue; \
+ fi; \
+ ${ECHO_CMD} $$d; \
+ if ! children=$$(${MAKE} -C $$d -V _DEPEND_DIRS); then\
+ ${ECHO_MSG} "${PKGNAME}: \"$$d\" erroneous -- dependency list incomplete" >&2; \
+ continue; \
+ fi; \
+ for child in $$children; do \
+ case "$$checked $$l" in \
+ $$child\ *|*\ $$child\ *|*\ $$child) \
+ continue;; \
+ esac; \
+ l="$$l $$child"; \
+ done; \
+ done; \
+ L=$$l; \
+ done
.if !target(clean-depends)
clean-depends:
@@ -4637,7 +4751,7 @@ fetch-recursive-list:
.if !target(fetch-required)
fetch-required: fetch
@${ECHO_MSG} "===> Fetching all required distfiles for ${PKGNAME} and dependencies"
-.for deptype in EXTRACT PATCH FETCH BUILD RUN
+.for deptype in EXTRACT PATCH FETCH BUILD RUN PERL_BUILD PERL_RUN
.if defined(${deptype}_DEPENDS)
.if !defined(NO_DEPENDS)
@for i in ${${deptype}_DEPENDS}; do \
@@ -4665,7 +4779,7 @@ fetch-required: fetch
.if !target(fetch-required-list)
fetch-required-list: fetch-list
-.for deptype in EXTRACT PATCH FETCH BUILD RUN
+.for deptype in EXTRACT PATCH FETCH BUILD RUN PERL_BUILD PERL_RUN
.if defined(${deptype}_DEPENDS)
.if !defined(NO_DEPENDS)
@for i in ${${deptype}_DEPENDS}; do \
@@ -4702,12 +4816,12 @@ checksum-recursive:
# Dependency lists: build and runtime. Print out directory names.
build-depends-list:
-.if defined(EXTRACT_DEPENDS) || defined(PATCH_DEPENDS) || defined(FETCH_DEPENDS) || defined(BUILD_DEPENDS) || defined(LIB_DEPENDS) || defined(DEPENDS)
+.if defined(EXTRACT_DEPENDS) || defined(PATCH_DEPENDS) || defined(FETCH_DEPENDS) || defined(BUILD_DEPENDS) || defined(LIB_DEPENDS) || defined(DEPENDS) || defined(PERL_BUILD_DEPENDS)
@${BUILD-DEPENDS-LIST}
.endif
BUILD-DEPENDS-LIST= \
- for dir in $$(${ECHO_CMD} "${EXTRACT_DEPENDS} ${PATCH_DEPENDS} ${FETCH_DEPENDS} ${BUILD_DEPENDS} ${LIB_DEPENDS}" | ${TR} '\040' '\012' | ${SED} -e 's/^[^:]*://' -e 's/:.*//' | ${SORT} -u) $$(${ECHO_CMD} ${DEPENDS} | ${TR} '\040' '\012' | ${SED} -e 's/:.*//' | ${SORT} -u); do \
+ for dir in $$(${ECHO_CMD} "${EXTRACT_DEPENDS} ${PATCH_DEPENDS} ${FETCH_DEPENDS} ${BUILD_DEPENDS} ${LIB_DEPENDS} ${PERL_BUILD_DEPENDS}" | ${TR} '\040' '\012' | ${SED} -e 's/^[^:]*://' -e 's/:.*//' | ${SORT} -u) $$(${ECHO_CMD} ${DEPENDS} | ${TR} '\040' '\012' | ${SED} -e 's/:.*//' | ${SORT} -u); do \
if [ -d $$dir ]; then \
${ECHO_CMD} $$dir; \
else \
@@ -4716,12 +4830,12 @@ BUILD-DEPENDS-LIST= \
done | ${SORT} -u
run-depends-list:
-.if defined(LIB_DEPENDS) || defined(RUN_DEPENDS) || defined(DEPENDS)
+.if defined(LIB_DEPENDS) || defined(RUN_DEPENDS) || defined(DEPENDS) || defined(PERL_RUN_DEPENDS)
@${RUN-DEPENDS-LIST}
.endif
RUN-DEPENDS-LIST= \
- for dir in $$(${ECHO_CMD} "${LIB_DEPENDS} ${RUN_DEPENDS}" | ${SED} -e 'y/ /\n/' | ${CUT} -f 2 -d ':' | ${SORT} -u) $$(${ECHO_CMD} ${DEPENDS} | ${SED} -e 'y/ /\n/' | ${CUT} -f 1 -d ':' | ${SORT} -u); do \
+ for dir in $$(${ECHO_CMD} "${LIB_DEPENDS} ${RUN_DEPENDS} ${PERL_RUN_DEPENDS}" | ${SED} -e 'y/ /\n/' | ${CUT} -f 2 -d ':' | ${SORT} -u) $$(${ECHO_CMD} ${DEPENDS} | ${SED} -e 'y/ /\n/' | ${CUT} -f 1 -d ':' | ${SORT} -u); do \
if [ -d $$dir ]; then \
${ECHO_CMD} $$dir; \
else \
@@ -4733,7 +4847,7 @@ RUN-DEPENDS-LIST= \
# and package names.
package-depends-list:
-.if defined(CHILD_DEPENDS) || defined(LIB_DEPENDS) || defined(RUN_DEPENDS) || defined(DEPENDS)
+.if defined(CHILD_DEPENDS) || defined(LIB_DEPENDS) || defined(RUN_DEPENDS) || defined(DEPENDS) || defined(PERL_RUN_DEPENDS)
@${PACKAGE-DEPENDS-LIST}
.endif
@@ -4752,7 +4866,7 @@ PACKAGE-DEPENDS-LIST?= \
done; \
fi; \
checked="${PARENT_CHECKED}"; \
- for dir in $$(${ECHO_CMD} "${LIB_DEPENDS} ${RUN_DEPENDS}" | ${SED} -e 'y/ /\n/' | ${CUT} -f 2 -d ':') $$(${ECHO_CMD} ${DEPENDS} | ${SED} -e 'y/ /\n/' | ${CUT} -f 1 -d ':'); do \
+ for dir in $$(${ECHO_CMD} "${LIB_DEPENDS} ${RUN_DEPENDS} ${PERL_RUN_DEPENDS}" | ${SED} -e 'y/ /\n/' | ${CUT} -f 2 -d ':') $$(${ECHO_CMD} ${DEPENDS} | ${SED} -e 'y/ /\n/' | ${CUT} -f 1 -d ':'); do \
dir=$$(${REALPATH} $$dir); \
if [ -d $$dir ]; then \
if (${ECHO_CMD} $$checked | ${GREP} -qwv "$$dir"); then \
@@ -4794,6 +4908,9 @@ package-recursive: package
# distribution-name|port-path|installation-prefix|comment| \
# description-file|maintainer|categories|extract-depends| \
# patch-depends|fetch-depends|build-depends|run-depends|www site
+#
+# If this ever changes, portmgr should contact the portsnap maintainer
+# first to avoid gratuitous breakage.
.if !target(describe)
describe:
@@ -4817,7 +4934,9 @@ describe:
@rdirs = map((split /:/)[1], split(q{ }, q{${RUN_DEPENDS}})); \
@ddirs = map((split /:/)[0], split(q{ }, q{${DEPENDS}})); \
@ldirs = map((split /:/)[1], split(q{ }, q{${LIB_DEPENDS}})); \
- for my $$i (\@edirs, \@pdirs, \@fdirs, \@bdirs, \@rdirs, \@ddirs, \@ldirs) { \
+ @prdirs = map((split /:/)[1], split(q{ }, q{${PERL_RUN_DEPENDS}})); \
+ @pbdirs = map((split /:/)[1], split(q{ }, q{${PERL_BUILD_DEPENDS}})); \
+ for my $$i (\@edirs, \@pdirs, \@fdirs, \@bdirs, \@rdirs, \@ddirs, \@ldirs, \@prdirs, \@pbdirs) { \
my @dirs = @$$i; \
@$$i = (); \
for (@dirs) { \
@@ -4841,11 +4960,11 @@ describe:
$$xf{$$_} = 1; \
} \
print join(q{ }, sort keys %xf), q{|}; \
- for (@bdirs, @ddirs, @ldirs) { \
+ for (@bdirs, @ddirs, @ldirs, @pbdirs) { \
$$xb{$$_} = 1; \
} \
print join(q{ }, sort keys %xb), q{|}; \
- for (@rdirs, @ddirs, @ldirs) { \
+ for (@rdirs, @ddirs, @ldirs, @prdirs) { \
$$xr{$$_} = 1; \
} \
print join(q{ }, sort keys %xr), q{|}; \
@@ -4862,7 +4981,7 @@ describe:
www-site:
.if exists(${DESCR})
- @${GREP} '^WWW:[ ]' ${DESCR} | ${AWK} '{print $$2}' | ${HEAD} -1
+ @${AWK} '$$1 ~ /^WWW:/ {print $$2}' ${DESCR} | ${HEAD} -1
.else
@${ECHO_CMD}
.endif
@@ -4902,23 +5021,31 @@ ${.CURDIR}/README.html:
# The following two targets require an up-to-date INDEX in ${PORTSDIR}
+_PRETTY_PRINT_DEPENDS_LIST=\
+ if [ ! -r ${PORTSDIR}/${INDEXFILE} ] ; then \
+ ${ECHO_CMD} "${.TARGET} requires an INDEX file (${INDEXFILE}). Please run make index or make fetchindex."; \
+ else \
+ ${ECHO_CMD} -n 'This port requires package(s) "' ; \
+ ${ECHO_CMD} -n `${AWK} -F\| '$$1 ~ /^${PKGNAME}/ {print $$8;}' ${PORTSDIR}/${INDEXFILE}` ; \
+ ${ECHO_CMD} '" to ${.TARGET:C/pretty-print-(.*)-depends-list/\1/}.'; \
+ fi;
+
+
.if !target(pretty-print-build-depends-list)
pretty-print-build-depends-list:
.if defined(EXTRACT_DEPENDS) || defined(PATCH_DEPENDS) || \
defined(FETCH_DEPENDS) || defined(BUILD_DEPENDS) || \
- defined(LIB_DEPENDS) || defined(DEPENDS)
- @${ECHO_CMD} -n 'This port requires package(s) "'
- @${ECHO_CMD} -n `${GREP} '^${PKGNAME}|' ${PORTSDIR}/${INDEXFILE} | ${AWK} -F\| '{print $$8;}'`
- @${ECHO_CMD} '" to build.'
+ defined(LIB_DEPENDS) || defined(DEPENDS) || \
+ defined(PERL_BUILD_DEPENDS)
+ @${_PRETTY_PRINT_DEPENDS_LIST}
.endif
.endif
.if !target(pretty-print-run-depends-list)
pretty-print-run-depends-list:
-.if defined(RUN_DEPENDS) || defined(LIB_DEPENDS) || defined(DEPENDS)
- @${ECHO_CMD} -n 'This port requires package(s) "'
- @${ECHO_CMD} -n `${GREP} '^${PKGNAME}|' ${PORTSDIR}/${INDEXFILE} | ${AWK} -F\| '{print $$9;}'`
- @${ECHO_CMD} '" to run.'
+.if defined(RUN_DEPENDS) || defined(LIB_DEPENDS) || \
+ defined(DEPENDS) || defined(PERL_RUN_DEPENDS)
+ @${_PRETTY_PRINT_DEPENDS_LIST}
.endif
.endif
@@ -4976,15 +5103,21 @@ generate-plist:
@if [ -f ${PLIST} ]; then \
${SED} ${PLIST_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} ${PLIST} >> ${TMPPLIST}; \
fi
+.for reinplace in ${PLIST_REINPLACE}
+.if defined(PLIST_REINPLACE_${reinplace})
+ @${SED} -e '${PLIST_REINPLACE_${reinplace:U}}' ${PLIST} >> ${TMPPLIST}
+.endif
+.endfor
+
.for dir in ${PLIST_DIRS}
@${ECHO_CMD} ${dir} | ${SED} ${PLIST_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} | ${SED} -e 's,^,@dirrm ,' >> ${TMPPLIST}
.endfor
.if defined(INSTALLS_SHLIB) && !defined(INSTALL_AS_USER)
- @${ECHO_CMD} "@exec ${LDCONFIG} -m ${LDCONFIG_PLIST}" >> ${TMPPLIST}
- @${ECHO_CMD} "@unexec ${LDCONFIG} -R" >> ${TMPPLIST}
+ @${ECHO_CMD} "@exec ${LDCONFIG_PLIST_EXEC_CMD}" >> ${TMPPLIST}
+ @${ECHO_CMD} "@unexec ${LDCONFIG_PLIST_UNEXEC_CMD}" >> ${TMPPLIST}
.elif defined(INSTALLS_SHLIB)
- @${ECHO_CMD} "@exec ${LDCONFIG} -m ${LDCONFIG_PLIST} || ${TRUE}" >> ${TMPPLIST}
- @${ECHO_CMD} "@unexec ${LDCONFIG} -R || ${TRUE}" >> ${TMPPLIST}
+ @${ECHO_CMD} "@exec ${LDCONFIG_PLIST_EXEC_CMD} || ${TRUE}" >> ${TMPPLIST}
+ @${ECHO_CMD} "@unexec ${LDCONFIG_PLIST_UNEXEC_CMD} || ${TRUE}" >> ${TMPPLIST}
.endif
.if !defined(NO_FILTER_SHLIBS)
.if (${PORTOBJFORMAT} == "aout")
@@ -5070,11 +5203,18 @@ install-rc-script:
.if defined(USE_RC_SUBR) && ${USE_RC_SUBR:U} != "YES"
@${ECHO_CMD} "===> Installing rcNG startup script(s)"
@${ECHO_CMD} "@cwd ${PREFIX}" >> ${TMPPLIST}
+.if ${OSVERSION} >= 700007
+ @for i in ${USE_RC_SUBR}; do \
+ ${INSTALL_SCRIPT} ${WRKDIR}/$${i} ${PREFIX}/etc/rc.d/$${i%.sh}; \
+ ${ECHO_CMD} "etc/rc.d/$${i%.sh}" >> ${TMPPLIST}; \
+ done
+.else
@for i in ${USE_RC_SUBR}; do \
${INSTALL_SCRIPT} ${WRKDIR}/$${i} ${PREFIX}/etc/rc.d/$${i%.sh}.sh; \
${ECHO_CMD} "etc/rc.d/$${i%.sh}.sh" >> ${TMPPLIST}; \
done
.endif
+.endif
.else
@${DO_NADA}
.endif