head 1.8; access; symbols pkgsrc-2023Q4:1.8.0.6 pkgsrc-2023Q4-base:1.8 pkgsrc-2023Q3:1.8.0.4 pkgsrc-2023Q3-base:1.8 pkgsrc-2023Q2:1.8.0.2 pkgsrc-2023Q2-base:1.8 pkgsrc-2023Q1:1.7.0.6 pkgsrc-2023Q1-base:1.7 pkgsrc-2022Q4:1.7.0.4 pkgsrc-2022Q4-base:1.7 pkgsrc-2022Q3:1.7.0.2 pkgsrc-2022Q3-base:1.7 pkgsrc-2022Q2:1.6.0.2 pkgsrc-2022Q2-base:1.6 pkgsrc-2022Q1:1.5.0.8 pkgsrc-2022Q1-base:1.5 pkgsrc-2021Q4:1.5.0.6 pkgsrc-2021Q4-base:1.5 pkgsrc-2021Q3:1.5.0.4 pkgsrc-2021Q3-base:1.5 pkgsrc-2021Q2:1.5.0.2 pkgsrc-2021Q2-base:1.5 pkgsrc-2021Q1:1.4.0.14 pkgsrc-2021Q1-base:1.4 pkgsrc-2020Q4:1.4.0.12 pkgsrc-2020Q4-base:1.4 pkgsrc-2020Q3:1.4.0.10 pkgsrc-2020Q3-base:1.4 pkgsrc-2020Q2:1.4.0.8 pkgsrc-2020Q2-base:1.4 pkgsrc-2020Q1:1.4.0.4 pkgsrc-2020Q1-base:1.4 pkgsrc-2019Q4:1.4.0.6 pkgsrc-2019Q4-base:1.4 pkgsrc-2019Q3:1.4.0.2 pkgsrc-2019Q3-base:1.4 pkgsrc-2019Q2:1.3.0.26 pkgsrc-2019Q2-base:1.3 pkgsrc-2019Q1:1.3.0.24 pkgsrc-2019Q1-base:1.3 pkgsrc-2018Q4:1.3.0.22 pkgsrc-2018Q4-base:1.3 pkgsrc-2018Q3:1.3.0.20 pkgsrc-2018Q3-base:1.3 pkgsrc-2018Q2:1.3.0.18 pkgsrc-2018Q2-base:1.3 pkgsrc-2018Q1:1.3.0.16 pkgsrc-2018Q1-base:1.3 pkgsrc-2017Q4:1.3.0.14 pkgsrc-2017Q4-base:1.3 pkgsrc-2017Q3:1.3.0.12 pkgsrc-2017Q3-base:1.3 pkgsrc-2017Q2:1.3.0.8 pkgsrc-2017Q2-base:1.3 pkgsrc-2017Q1:1.3.0.6 pkgsrc-2017Q1-base:1.3 pkgsrc-2016Q4:1.3.0.4 pkgsrc-2016Q4-base:1.3 pkgsrc-2016Q3:1.3.0.2 pkgsrc-2016Q3-base:1.3 pkgsrc-2016Q2:1.2.0.2 pkgsrc-2016Q2-base:1.2; locks; strict; comment @# @; 1.8 date 2023.06.08.22.59.17; author riastradh; state Exp; branches; next 1.7; commitid 7yt12SemzncKjcsE; 1.7 date 2022.06.28.11.31.14; author wiz; state Exp; branches; next 1.6; commitid D2UoJrTHpoHEANJD; 1.6 date 2022.04.04.11.23.06; author riastradh; state Exp; branches; next 1.5; commitid jGk9U4TgudBQhSyD; 1.5 date 2021.05.24.19.49.26; author wiz; state Exp; branches; next 1.4; commitid qokaiStTApGMcrUC; 1.4 date 2019.07.09.15.45.25; author riastradh; state Exp; branches; next 1.3; commitid u8qQjuwSfcPJSnuB; 1.3 date 2016.07.09.06.37.58; author wiz; state Exp; branches; next 1.2; commitid dlqnocGpOoXV2Cdz; 1.2 date 2016.06.19.16.23.59; author wiz; state Exp; branches; next 1.1; commitid GUDa3HeJfEQ2W5bz; 1.1 date 2016.06.19.16.19.04; author wiz; state Exp; branches; next ; commitid SQoqmRHMkWOjU5bz; desc @@ 1.8 log @cross-libtool-base: Sync with libtool-base to fix libtoolize.in #!. @ text @# $NetBSD: Makefile,v 1.7 2022/06/28 11:31:14 wiz Exp $ # XXX This is kludgerific copypasta of devel/libtool-base/Makefile for # cross-compilation. Please make it go away! ########################################################################### ########################################################################### # # HEADS UP! DO NOT CHANGE THE VERSION OR PKGREVISION WITHOUT READING THIS: # ########################################################################### ########################################################################### # # This package is maintained specially in order to preserve pkgsrc # specific OS changes that diverge from the "out of the box" libtool. # In order to keep this package in a maintainable condition, the .m4 files # must be manipulated in order to generate the patch-* files. # # See devel/libtool/patches/manual.README for instructions on how to make # these patch files properly; otherwise your changes WILL be lost on the # next libtool update. # # DO NOT MAKE CHANGES TO THESE FILES: # # patches/patch-build-aux_ltmain.sh # patches/patch-configure # patches/patch-libltdl_configure # # WITHOUT FOLLOWING THESE INSTRUCTIONS. There are no exceptions to this rule. # ########################################################################### ########################################################################### LIBTOOL_CROSS_COMPILE= yes .include "../../devel/libtool/Makefile.common" # XXX Tweaked for cross-compilation. #PKGNAME= ${DISTNAME:S/-/-base-/} PKGNAME= ${DISTNAME:S/^libtool-/cross-libtool-base-${MACHINE_ARCH}-/} PKGREVISION= 8 COMMENT= Generic shared library support script (the script itself) CONFLICTS+= libtool<=1.3.5nb11 TEST_TARGET= check OVERRIDE_DIRDEPTH.install-sh= 1 # Always build libraries and executables that use the runtime linker. # in addition, disable libtool locking, as the test is broken on AIX, # and results in files being locked indefinitely. LDFLAGS.AIX+= -Wl,-brtl CONFIGURE_ARGS.AIX+= --disable-libtool-lock # The MIPSpro compiler doesn't support -c with -o, but the locking # workaround is itself broken. Disable it unconditionally. CONFIGURE_ARGS.IRIX+= --disable-libtool-lock CFLAGS.SunOS+= ${_COMPILER_ABI_FLAG.${ABI}} # We are going to want libtool to find the same versions of the C, C++, # and Fortran compilers. # USE_LANGUAGES= c c++ # XXX Added for cross-compilation. XXX Should be ${TARGET_ARCH}, but # currently we have to fake-cross-compile libtool because it's broken # upstream. GNU_CONFIGURE_PREFIX= ${PREFIX}/cross-${MACHINE_ARCH} CONFIGURE_ARGS+= --disable-ltdl-install CONFIGURE_ARGS+= F77=no FC=no USE_TOOLS+= echo REPLACE_SH+= libtoolize.in # XXX Added for cross-compilation. FILESDIR= ../../devel/libtool-base/files .PHONY: fix-libtool fix-libtool: cd ${WRKSRC}; for f in libtool; do \ ${SED} -e "s,-L${BUILDLINK_DIR}/lib *,,g" \ -e "s,${BUILDLINK_DIR}/lib *,,g" \ $$f > $$f.new; \ if [ -x $$f ]; then ${CHMOD} +x $$f.new; fi; \ ${MV} -f $$f.new $$f; \ done post-build: fix-libtool post-build: @@${SED} -e "s|@@PREFIX@@|"${PREFIX:Q}"|g" \ -e "s|@@SH@@|"${SH:Q}"|g" \ ${FILESDIR}/shlibtool.in > ${WRKSRC}/shlibtool post-install: ${INSTALL_SCRIPT} ${WRKSRC}/shlibtool ${DESTDIR}${PREFIX}/cross-${MACHINE_ARCH}/bin/shlibtool BUILDLINK_DEPMETHOD.dlcompat= build .include "../../mk/dlopen.buildlink3.mk" .include "../../mk/bsd.pkg.mk" @ 1.7 log @*: recursive bump for perl 5.36 @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.6 2022/04/04 11:23:06 riastradh Exp $ d76 2 @ 1.6 log @mk: Cross-eyed hacks to support cross-libtool. For a long time, when cross-building, say from native=amd64 to target=powerpc, it was necessary to: 1. cross-build a _powerpc_ package called cross-libtool-base-powerpc, and then 2. install the powerpc package _natively_ with `pkg_add -m x86_64' to override the architecture check that normally forbids this kind of shenanigans, in order to cross-build anything that uses libtool as a tool. This is partly because libtool doesn't follow the normal GNU convention of `./configure --build= --host= --target=' -- in this example, build=amd64, host=amd64, target=powerpc. Instead, libtool expects to be cross-built itself, even if it's going to run as a tool. It's not as bonkers as it sounds at first: libtool is just a shell script, and it caches various information about the (cross-building!) toolchain it is built with so it can use that information later when it is run as a tool itself to cross-compile other software. To make this work, we need to create the toolchain wrappers for libtool _as if_ we were cross-building even if we are building a native package. So mk/tools uses a new flag TOOLS_USE_CROSS_COMPILE instead of USE_CROSS_COMPILE, and libtool internally sets MACHINE_ARCH=${TARGET_ARCH} (in the example above, powerpc) to make it look like we're cross-building. The new TOOLS_CROSS_DESTDIR is an alias for the (defaulted) CROSS_DESTDIR, which must now be set unconditionally in mk.conf in order for libtool to know where the cross-destdir will be; _CROSS_DESTDIR remains empty when building any native packages (including the native cross-libtool package). Finally, we need to make the resulting package be a native package, with MACHINE_ARCH set to the one that it will be installed on (in the example above, amd64), so I added an indirection _BUILD_DEFS.${var} to replace var on its own in the build definitions that get baked into the package, shown by `pkg_info -B'. Setting _BUILD_DEFS.MACHINE_ARCH=${NATIVE_MACHINE_ARCH} ensures that this mutant hybrid cross-built libtool still produces a native package. All of this logic is gated on setting USE_CROSS_COMPILE in mk.conf or LIBTOOL_CROSS_COMPILE in the package makefile, so it should be safe for non-cross-builds -- when USE_CROSS_COMPILE=no and you're not building cross-libtool, everything is as before. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.5 2021/05/24 19:49:26 wiz Exp $ d41 1 a41 1 PKGREVISION= 7 @ 1.5 log @*: recursive bump for perl 5.34 @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.4 2019/07/09 15:45:25 riastradh Exp $ d34 2 d41 1 a41 1 PKGREVISION= 6 @ 1.4 log @Sync cross-libtool-base with libtool-base. Eliminate CROSSBASE. cross-libtool-base now installs into $PREFIX/cross-$TARGET_ARCH unconditionally. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.3 2016/07/09 06:37:58 wiz Exp $ d39 1 a39 1 PKGREVISION= 5 @ 1.3 log @Bump PKGREVISION for perl-5.24.0 for everything mentioning perl. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.2 2016/06/19 16:23:59 wiz Exp $ d23 7 a29 2 # DO NOT MAKE CHANGES TO patch-ab OR patch-ad WITHOUT FOLLOWING THESE # INSTRUCTIONS. There are no exceptions to this rule. d39 1 a39 1 PKGREVISION= 4 d65 4 a68 1 GNU_CONFIGURE_PREFIX= ${PREFIX}/cross d70 1 d80 3 a82 1 ${SED} -e "s,-L${BUILDLINK_DIR}/lib,," $$f > $$f.new; \ d95 1 a95 1 ${INSTALL_SCRIPT} ${WRKSRC}/shlibtool ${DESTDIR}${PREFIX}/cross/bin/shlibtool @ 1.2 log @Bump version for USE_CROSSBASE removal. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.1 2016/06/19 16:19:04 wiz Exp $ d34 1 a34 1 PKGREVISION= 3 @ 1.1 log @Move libtool-base to cross-libtool-base to make PKGNAME match directory name. Convert away from USE_CROSSBASE to plain ${PREFIX}/cross. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.4 2016/02/25 11:35:33 jperkin Exp $ d34 1 a34 1 PKGREVISION= 2 @