Install a ${PREFIX}/bin/shlibtool as part of the devel/libtool-base

package.  shlibtool will not build static libraries.  Add handling in
bsd.pkg.mk for a variable named "SHLIBTOOL_OVERRIDE" that is analogous to
LIBTOOL_OVERRIDE and causes any listed libtool scripts to be replaced with
a symlink to shlibtool, and teach buildlink2 about shlibtool.  Bump
PKGREVISION of devel/libtool* packages to 11.
This commit is contained in:
jlam 2003-01-10 08:44:18 +00:00
parent ef73a12c29
commit 1abdd450fe
13 changed files with 82 additions and 33 deletions

View file

@ -1,4 +1,4 @@
# $NetBSD: Makefile,v 1.14 2002/12/22 19:04:08 jlam Exp $ # $NetBSD: Makefile,v 1.15 2003/01/10 08:44:19 jlam Exp $
# #
.include "../libtool/Makefile.common" .include "../libtool/Makefile.common"
@ -15,21 +15,47 @@ test: build
.include "../../mk/bsd.prefs.mk" .include "../../mk/bsd.prefs.mk"
.if ${MACHINE_PLATFORM:MNetBSD-1.4-sparc} != "" || \ .if !empty(MACHINE_PLATFORM:MNetBSD-1.4-sparc) || \
${MACHINE_PLATFORM:MNetBSD-1.4.[12]-sparc} != "" !empty(MACHINE_PLATFORM:MNetBSD-1.4.[12]-sparc)
DEPENDS+= c++rt0>=1.0:../../sysutils/c++rt0 DEPENDS+= c++rt0>=1.0:../../sysutils/c++rt0
.endif .endif
.if ${OPSYS} == "NetBSD" .if ${OPSYS} == "NetBSD"
. if !exists(/usr/libexec/ld.so) && !exists(/usr/libexec/ld.elf_so) . if !exists(/usr/libexec/ld.so) && !exists(/usr/libexec/ld.elf_so)
CONFIGURE_ARGS= --disable-shared CONFIGURE_ARGS= --disable-shared
BUILD_SHLIBTOOL= NO
. endif . endif
.else .else
CONFIGURE_ARGS= --enable-ltdl-install CONFIGURE_ARGS= --enable-ltdl-install
.endif .endif
.if !empty(MACHINE_PLATFORM:MDarwin-*-*) .if !empty(MACHINE_PLATFORM:MDarwin-*-*)
. include "../../devel/dlcompat/buildlink2.mk" . include "../../devel/dlcompat/buildlink2.mk"
.endif .endif
BUILD_SHLIBTOOL?= YES
BUILDING_SHLIBTOOL?= NO
.if ${BUILDING_SHLIBTOOL} == "YES"
CONFIGURE_ARGS+= --disable-static
.else
SHLIBTOOL_WRKDIR= ${WRKDIR}/shlibtool
SHLIBTOOL_WRKSRC= ${WRKSRC:S/${WRKDIR}/${SHLIBTOOL_WRKDIR}/}
SHLIBTOOL_MAKEFLAGS= BUILDING_SHLIBTOOL=YES
SHLIBTOOL_MAKEFLAGS+= WRKDIR=${SHLIBTOOL_WRKDIR}
. if ${BUILD_SHLIBTOOL} == "NO"
PLIST_SUBST+= SHLIBTOOL="@comment "
. else
PLIST_SUBST+= SHLIBTOOL=
post-build:
cd ${.CURDIR} && ${MAKE} build ${SHLIBTOOL_MAKEFLAGS}
post-install:
${INSTALL_SCRIPT} ${SHLIBTOOL_WRKSRC}/libtool \
${PREFIX}/bin/shlibtool
. endif
.endif
.include "../../mk/bsd.pkg.mk" .include "../../mk/bsd.pkg.mk"

View file

@ -1,6 +1,7 @@
@comment $NetBSD: PLIST,v 1.3 2002/12/09 16:01:19 tron Exp $ @comment $NetBSD: PLIST,v 1.4 2003/01/10 08:44:19 jlam Exp $
bin/libtool bin/libtool
bin/libtoolize bin/libtoolize
${SHLIBTOOL}bin/shlibtool
include/ltdl.h include/ltdl.h
lib/libltdl.a lib/libltdl.a
lib/libltdl.la lib/libltdl.la

View file

@ -1,9 +1,9 @@
# $NetBSD: Makefile.common,v 1.25 2002/12/23 14:49:54 jlam Exp $ # $NetBSD: Makefile.common,v 1.26 2003/01/10 08:44:18 jlam Exp $
# #
DISTNAME= libtool-ml-20010614 DISTNAME= libtool-ml-20010614
PKGPFX= ${DISTNAME:C/ml-/1.4./} PKGPFX= ${DISTNAME:C/ml-/1.4./}
PKGREVISION= 10 PKGREVISION= 11
WRKSRC= ${WRKDIR}/libtool-ml WRKSRC= ${WRKDIR}/libtool-ml
CATEGORIES= devel pkgtools CATEGORIES= devel pkgtools
MASTER_SITES= ${MASTER_SITE_LOCAL} MASTER_SITES= ${MASTER_SITE_LOCAL}

View file

@ -186,3 +186,6 @@ Changes to the packages collection and infrastructure in 2003:
Updated p5-pilot-link to 0.11.7 [rh 2003-01-10] Updated p5-pilot-link to 0.11.7 [rh 2003-01-10]
Updated jpilot to 0.99.3 [rh 2003-01-10] Updated jpilot to 0.99.3 [rh 2003-01-10]
Added gob-1.0.12 [rh 2003-01-10] Added gob-1.0.12 [rh 2003-01-10]
Updated libtool to 1.4.20010614nb11 [jlam 2003-01-10]
Updated libtool-base to 1.4.20010614nb11 [jlam 2003-01-10]
Updated libtool-info to 1.4.20010614nb11 [jlam 2003-01-10]

View file

@ -1,4 +1,4 @@
# $NetBSD: bsd.pkg.mk,v 1.1125 2003/01/09 13:16:38 schmonz Exp $ # $NetBSD: bsd.pkg.mk,v 1.1126 2003/01/10 08:44:19 jlam Exp $
# #
# This file is in the public domain. # This file is in the public domain.
# #
@ -222,10 +222,12 @@ CONFIG_SHELL?= ${SH}
CONFIGURE_ENV+= CONFIG_SHELL=${CONFIG_SHELL} CONFIGURE_ENV+= CONFIG_SHELL=${CONFIG_SHELL}
.endif .endif
LIBTOOL_REQD= ${_OPSYS_LIBTOOL_REQD} LIBTOOL_REQD?= 1.4.20010614nb11
LIBTOOL= ${LOCALBASE}/bin/libtool LIBTOOL= ${LOCALBASE}/bin/libtool
SHLIBTOOL= ${LOCALBASE}/bin/shlibtool
.if defined(USE_LIBTOOL) .if defined(USE_LIBTOOL)
PKGLIBTOOL= ${LIBTOOL} PKGLIBTOOL= ${LIBTOOL}
PKGSHLIBTOOL= ${SHLIBTOOL}
BUILD_DEPENDS+= libtool-base>=${LIBTOOL_REQD}:../../devel/libtool-base BUILD_DEPENDS+= libtool-base>=${LIBTOOL_REQD}:../../devel/libtool-base
CONFIGURE_ENV+= LIBTOOL="${PKGLIBTOOL} ${LIBTOOL_FLAGS}" CONFIGURE_ENV+= LIBTOOL="${PKGLIBTOOL} ${LIBTOOL_FLAGS}"
MAKE_ENV+= LIBTOOL="${PKGLIBTOOL} ${LIBTOOL_FLAGS}" MAKE_ENV+= LIBTOOL="${PKGLIBTOOL} ${LIBTOOL_FLAGS}"
@ -1886,14 +1888,25 @@ do-configure: ${_CONFIGURE_PREREQ}
_CONFIGURE_POSTREQ+= do-libtool-override _CONFIGURE_POSTREQ+= do-libtool-override
do-libtool-override: do-libtool-override:
.if defined(USE_LIBTOOL) && defined(LIBTOOL_OVERRIDE) .if defined(USE_LIBTOOL)
. for libtool in ${LIBTOOL_OVERRIDE} . if defined(LIBTOOL_OVERRIDE)
. for libtool in ${LIBTOOL_OVERRIDE}
${_PKG_SILENT}${_PKG_DEBUG} \ ${_PKG_SILENT}${_PKG_DEBUG} \
if [ -f ${libtool} ]; then \ if [ -f ${libtool} ]; then \
${RM} -f ${libtool}; \ ${RM} -f ${libtool}; \
${LN} -sf ${PKGLIBTOOL} ${libtool}; \ ${LN} -sf ${PKGLIBTOOL} ${libtool}; \
fi fi
. endfor . endfor
. endif
. if defined(SHLIBTOOL_OVERRIDE)
. for libtool in ${SHLIBTOOL_OVERRIDE}
${_PKG_SILENT}${_PKG_DEBUG} \
if [ -f ${libtool} ]; then \
${RM} -f ${libtool}; \
${LN} -sf ${PKGSHLIBTOOL} ${libtool}; \
fi
. endfor
. endif
.else .else
${_PKG_SILENT}${_PKG_DEBUG}${TRUE} ${_PKG_SILENT}${_PKG_DEBUG}${TRUE}
.endif .endif

View file

@ -1,4 +1,4 @@
# $NetBSD: bsd.buildlink2.mk,v 1.72 2003/01/08 08:33:54 jlam Exp $ # $NetBSD: bsd.buildlink2.mk,v 1.73 2003/01/10 08:44:21 jlam Exp $
# #
# An example package buildlink2.mk file: # An example package buildlink2.mk file:
# #
@ -518,8 +518,9 @@ _BLNK_WRAPPEES+= FC
.endif .endif
.if defined(USE_LIBTOOL) .if defined(USE_LIBTOOL)
PKGLIBTOOL= ${BUILDLINK_LIBTOOL} PKGLIBTOOL= ${BUILDLINK_LIBTOOL}
PKGSHLIBTOOL= ${BUILDLINK_SHLIBTOOL}
.endif .endif
_BLNK_WRAPPEES+= LIBTOOL _BLNK_WRAPPEES+= LIBTOOL SHLIBTOOL
.if defined(USE_X11) .if defined(USE_X11)
IMAKE?= ${X11BASE}/bin/imake IMAKE?= ${X11BASE}/bin/imake
_BLNK_WRAPPEES+= IMAKE _BLNK_WRAPPEES+= IMAKE
@ -606,13 +607,18 @@ _BLNK_WRAP_SETENV.CPP= # empty
# #
_BLNK_WRAP_SETENV.FC+= F77="${BUILDLINK_FC:T}" _BLNK_WRAP_SETENV.FC+= F77="${BUILDLINK_FC:T}"
# Don't override the default LIBTOOL setting in the environment, as # Don't override the default LIBTOOL and SHLIBTOOL settings in the
# it already correctly points to ${PKGLIBTOOL}, and don't sanitize the PATH # environment, as they already correctly point to the correct values, and
# because we want libtool to invoke the wrapper scripts, too. # don't sanitize the PATH because we want libtool to invoke the wrapper
# scripts, too.
# #
_BLNK_WRAP_SETENV.LIBTOOL= # empty _BLNK_WRAP_SETENV.LIBTOOL= # empty
_BLNK_WRAPPER_SH.LIBTOOL= ${.CURDIR}/../../mk/buildlink2/libtool.sh _BLNK_WRAPPER_SH.LIBTOOL= ${.CURDIR}/../../mk/buildlink2/libtool.sh
_BLNK_WRAP_SANITIZE_PATH.LIBTOOL= # empty _BLNK_WRAP_SANITIZE_PATH.LIBTOOL= # empty
#
_BLNK_WRAP_SETENV.SHLIBTOOL= # empty
_BLNK_WRAPPER_SH.SHLIBTOOL= ${.CURDIR}/../../mk/buildlink2/libtool.sh
_BLNK_WRAP_SANITIZE_PATH.SHLIBTOOL= # empty
# We need to "unbuildlinkify" any libtool archives. # We need to "unbuildlinkify" any libtool archives.
_BLNK_WRAP_LT_UNTRANSFORM_SED= ${_REPLACE_BUILDLINK_SED} _BLNK_WRAP_LT_UNTRANSFORM_SED= ${_REPLACE_BUILDLINK_SED}
@ -629,6 +635,13 @@ _BLNK_WRAP_PRIVATE_CACHE.LIBTOOL= ${BUILDLINK_DIR}/bin/.libtool-cache
_BLNK_WRAP_PRIVATE_POST_CACHE.LIBTOOL= ${BUILDLINK_DIR}/bin/.libtool-post-cache _BLNK_WRAP_PRIVATE_POST_CACHE.LIBTOOL= ${BUILDLINK_DIR}/bin/.libtool-post-cache
_BLNK_WRAP_POST_LOGIC.LIBTOOL= ${BUILDLINK_DIR}/bin/.libtool-logic _BLNK_WRAP_POST_LOGIC.LIBTOOL= ${BUILDLINK_DIR}/bin/.libtool-logic
# shlibtool shares cache information with libtool.
_BLNK_WRAP_PRIVATE_PRE_CACHE.SHLIBTOOL= ${_BLNK_WRAP_PRIVATE_PRE_CACHE.LIBTOOL}
_BLNK_WRAP_PRIVATE_CACHE_ADD.SHLIBTOOL= ${_BLNK_WRAP_PRIVATE_CACHE_ADD.LIBTOOL}
_BLNK_WRAP_PRIVATE_CACHE.SHLIBTOOL= ${_BLNK_WRAP_PRIVATE_CACHE.LIBTOOL}
_BLNK_WRAP_PRIVATE_POST_CACHE.SHLIBTOOL= ${_BLNK_WRAP_PRIVATE_POST_CACHE.LIBTOOL}
_BLNK_WRAP_POST_LOGIC.SHLIBTOOL= ${_BLNK_WRAP_POST_LOGIC.LIBTOOL}
# Allow BUILDLINK_SETENV.<wrappee> to override _BLNK_WRAP_SETENV.<wrappee>. # Allow BUILDLINK_SETENV.<wrappee> to override _BLNK_WRAP_SETENV.<wrappee>.
.for _wrappee_ in ${_BLNK_WRAPPEES} .for _wrappee_ in ${_BLNK_WRAPPEES}
. if defined(BUILDLINK_SETENV.${_wrappee_}) . if defined(BUILDLINK_SETENV.${_wrappee_})

View file

@ -1,4 +1,4 @@
# $NetBSD: defs.Darwin.mk,v 1.41 2002/12/18 06:18:14 schmonz Exp $ # $NetBSD: defs.Darwin.mk,v 1.42 2003/01/10 08:44:20 jlam Exp $
# #
# Variable definitions for the Darwin operating system. # Variable definitions for the Darwin operating system.
@ -93,7 +93,6 @@ _OPSYS_HAS_INET6= no # IPv6 is not standard
_OPSYS_HAS_JAVA= yes # Java is standard _OPSYS_HAS_JAVA= yes # Java is standard
_OPSYS_HAS_MANZ= yes # MANZ controls gzipping of man pages _OPSYS_HAS_MANZ= yes # MANZ controls gzipping of man pages
_OPSYS_HAS_OSSAUDIO= no # libossaudio is available _OPSYS_HAS_OSSAUDIO= no # libossaudio is available
_OPSYS_LIBTOOL_REQD= 1.4.20010614nb9 # base version of libtool required
_OPSYS_PERL_REQD= 5.8.0 # base version of perl required _OPSYS_PERL_REQD= 5.8.0 # base version of perl required
_OPSYS_RPATH_NAME= # no name of symbol in rpath directive to linker _OPSYS_RPATH_NAME= # no name of symbol in rpath directive to linker
_PATCH_CAN_BACKUP= yes # native patch(1) can make backups _PATCH_CAN_BACKUP= yes # native patch(1) can make backups

View file

@ -1,4 +1,4 @@
# $NetBSD: defs.FreeBSD.mk,v 1.13 2002/12/18 06:18:14 schmonz Exp $ # $NetBSD: defs.FreeBSD.mk,v 1.14 2003/01/10 08:44:20 jlam Exp $
# #
# Variable definitions for the FreeBSD operating system. # Variable definitions for the FreeBSD operating system.
@ -105,7 +105,6 @@ _OPSYS_HAS_INET6= no # IPv6 is not standard
_OPSYS_HAS_JAVA= no # Java is not standard _OPSYS_HAS_JAVA= no # Java is not standard
_OPSYS_HAS_MANZ= yes # MANZ controls gzipping of man pages _OPSYS_HAS_MANZ= yes # MANZ controls gzipping of man pages
_OPSYS_HAS_OSSAUDIO= yes # libossaudio is available _OPSYS_HAS_OSSAUDIO= yes # libossaudio is available
_OPSYS_LIBTOOL_REQD= 1.4.20010614nb10 # base version of libtool required
_OPSYS_PERL_REQD= # no base version of perl required _OPSYS_PERL_REQD= # no base version of perl required
_OPSYS_RPATH_NAME= -R # name of symbol in rpath directive to linker _OPSYS_RPATH_NAME= -R # name of symbol in rpath directive to linker
_PATCH_CAN_BACKUP= yes # native patch(1) can make backups _PATCH_CAN_BACKUP= yes # native patch(1) can make backups

View file

@ -1,4 +1,4 @@
# $NetBSD: defs.IRIX.mk,v 1.15 2002/12/23 23:03:23 jschauma Exp $ # $NetBSD: defs.IRIX.mk,v 1.16 2003/01/10 08:44:20 jlam Exp $
# #
# Variable definitions for the IRIX operating system. # Variable definitions for the IRIX operating system.
@ -100,7 +100,6 @@ _OPSYS_HAS_INET6= no # IPv6 is not standard
_OPSYS_HAS_JAVA= no # Java is not standard _OPSYS_HAS_JAVA= no # Java is not standard
_OPSYS_HAS_MANZ= no # no MANZ for gzipping of man pages _OPSYS_HAS_MANZ= no # no MANZ for gzipping of man pages
_OPSYS_HAS_OSSAUDIO= no # libossaudio is available _OPSYS_HAS_OSSAUDIO= no # libossaudio is available
_OPSYS_LIBTOOL_REQD= 1.4.20010614nb9 # base version of libtool required
_OPSYS_PERL_REQD= # no base version of perl required _OPSYS_PERL_REQD= # no base version of perl required
_OPSYS_RPATH_NAME= -rpath, # name of symbol in rpath directive to linker _OPSYS_RPATH_NAME= -rpath, # name of symbol in rpath directive to linker
_PATCH_CAN_BACKUP= no # native patch(1) can make backups _PATCH_CAN_BACKUP= no # native patch(1) can make backups

View file

@ -1,4 +1,4 @@
# $NetBSD: defs.Linux.mk,v 1.42 2002/12/18 06:18:14 schmonz Exp $ # $NetBSD: defs.Linux.mk,v 1.43 2003/01/10 08:44:20 jlam Exp $
# #
# Variable definitions for the Linux operating system. # Variable definitions for the Linux operating system.
@ -95,7 +95,6 @@ _OPSYS_HAS_INET6= no # IPv6 is not standard
_OPSYS_HAS_JAVA= no # Java is not standard _OPSYS_HAS_JAVA= no # Java is not standard
_OPSYS_HAS_MANZ= no # no MANZ for gzipping of man pages _OPSYS_HAS_MANZ= no # no MANZ for gzipping of man pages
_OPSYS_HAS_OSSAUDIO= no # libossaudio is available _OPSYS_HAS_OSSAUDIO= no # libossaudio is available
_OPSYS_LIBTOOL_REQD= 1.4.20010614nb9 # base version of libtool required
_OPSYS_PERL_REQD= # no base version of perl required _OPSYS_PERL_REQD= # no base version of perl required
_OPSYS_RPATH_NAME= -R # name of symbol in rpath directive to linker _OPSYS_RPATH_NAME= -R # name of symbol in rpath directive to linker
_PATCH_CAN_BACKUP= yes # native patch(1) can make backups _PATCH_CAN_BACKUP= yes # native patch(1) can make backups

View file

@ -1,4 +1,4 @@
# $NetBSD: defs.NetBSD.mk,v 1.42 2002/12/18 06:18:15 schmonz Exp $ # $NetBSD: defs.NetBSD.mk,v 1.43 2003/01/10 08:44:20 jlam Exp $
# #
# Variable definitions for the NetBSD operating system. # Variable definitions for the NetBSD operating system.
@ -105,7 +105,6 @@ _OPSYS_HAS_INET6= no # IPv6 is not standard
_OPSYS_HAS_JAVA= no # Java is not standard _OPSYS_HAS_JAVA= no # Java is not standard
_OPSYS_HAS_MANZ= yes # MANZ controls gzipping of man pages _OPSYS_HAS_MANZ= yes # MANZ controls gzipping of man pages
_OPSYS_HAS_OSSAUDIO= yes # libossaudio is available _OPSYS_HAS_OSSAUDIO= yes # libossaudio is available
_OPSYS_LIBTOOL_REQD= 1.4.20010614nb9 # base version of libtool required
_OPSYS_PERL_REQD= # no base version of perl required _OPSYS_PERL_REQD= # no base version of perl required
_OPSYS_RPATH_NAME= -R # name of symbol in rpath directive to linker _OPSYS_RPATH_NAME= -R # name of symbol in rpath directive to linker
_PATCH_CAN_BACKUP= yes # native patch(1) can make backups _PATCH_CAN_BACKUP= yes # native patch(1) can make backups

View file

@ -1,4 +1,4 @@
# $NetBSD: defs.OpenBSD.mk,v 1.11 2002/12/18 06:18:15 schmonz Exp $ # $NetBSD: defs.OpenBSD.mk,v 1.12 2003/01/10 08:44:20 jlam Exp $
# #
# Variable definitions for the OpenBSD operating system. # Variable definitions for the OpenBSD operating system.
@ -105,7 +105,6 @@ _OPSYS_HAS_INET6= no # IPv6 is not standard
_OPSYS_HAS_JAVA= no # Java is not standard _OPSYS_HAS_JAVA= no # Java is not standard
_OPSYS_HAS_MANZ= yes # MANZ controls gzipping of man pages _OPSYS_HAS_MANZ= yes # MANZ controls gzipping of man pages
_OPSYS_HAS_OSSAUDIO= yes # libossaudio is available _OPSYS_HAS_OSSAUDIO= yes # libossaudio is available
_OPSYS_LIBTOOL_REQD= 1.4.20010614nb9 # base version of libtool required
_OPSYS_PERL_REQD= # no base version of perl required _OPSYS_PERL_REQD= # no base version of perl required
_OPSYS_RPATH_NAME= -R # name of symbol in rpath directive to linker _OPSYS_RPATH_NAME= -R # name of symbol in rpath directive to linker
_PATCH_CAN_BACKUP= yes # native patch(1) can make backups _PATCH_CAN_BACKUP= yes # native patch(1) can make backups

View file

@ -1,4 +1,4 @@
# $NetBSD: defs.SunOS.mk,v 1.50 2003/01/06 22:29:23 grant Exp $ # $NetBSD: defs.SunOS.mk,v 1.51 2003/01/10 08:44:20 jlam Exp $
# #
# Variable definitions for the SunOS/Solaris operating system. # Variable definitions for the SunOS/Solaris operating system.
@ -111,7 +111,6 @@ _OPSYS_HAS_INET6= no # IPv6 is not standard
_OPSYS_HAS_JAVA= no # Java is not standard _OPSYS_HAS_JAVA= no # Java is not standard
_OPSYS_HAS_MANZ= no # no MANZ for gzipping of man pages _OPSYS_HAS_MANZ= no # no MANZ for gzipping of man pages
_OPSYS_HAS_OSSAUDIO= no # libossaudio is available _OPSYS_HAS_OSSAUDIO= no # libossaudio is available
_OPSYS_LIBTOOL_REQD= 1.4.20010614nb9 # base version of libtool required
_OPSYS_PERL_REQD= # no base version of perl required _OPSYS_PERL_REQD= # no base version of perl required
_OPSYS_RPATH_NAME= -R # name of symbol in rpath directive to linker _OPSYS_RPATH_NAME= -R # name of symbol in rpath directive to linker
_PATCH_CAN_BACKUP= yes # native patch(1) can make backups _PATCH_CAN_BACKUP= yes # native patch(1) can make backups