diff options
author | marcus <marcus@df743ca5-7f9a-e211-a948-0013205c9059> | 2005-08-08 05:06:40 +0800 |
---|---|---|
committer | marcus <marcus@df743ca5-7f9a-e211-a948-0013205c9059> | 2005-08-08 05:06:40 +0800 |
commit | e099c809a21661cd961692f3e1912d05fcc82c22 (patch) | |
tree | 4019552abc952c1aad0158f2d2fcfe1bfbb9a6a2 /Mk | |
parent | 8846846fa6b1efd9c86b4105a060309616b51e43 (diff) | |
download | marcuscom-ports-e099c809a21661cd961692f3e1912d05fcc82c22.tar marcuscom-ports-e099c809a21661cd961692f3e1912d05fcc82c22.tar.gz marcuscom-ports-e099c809a21661cd961692f3e1912d05fcc82c22.tar.bz2 marcuscom-ports-e099c809a21661cd961692f3e1912d05fcc82c22.tar.lz marcuscom-ports-e099c809a21661cd961692f3e1912d05fcc82c22.tar.xz marcuscom-ports-e099c809a21661cd961692f3e1912d05fcc82c22.tar.zst marcuscom-ports-e099c809a21661cd961692f3e1912d05fcc82c22.zip |
Add a new ltverhack that properly corrects the shared lib version on FreeBSD
to be that of Linux. This will keep our shred libs inline with what Linux has,
and should help truly show ABI changes.
Submitted by: jylefort
git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@4395 df743ca5-7f9a-e211-a948-0013205c9059
Diffstat (limited to 'Mk')
-rw-r--r-- | Mk/bsd.gnome.mk | 38 |
1 files changed, 33 insertions, 5 deletions
diff --git a/Mk/bsd.gnome.mk b/Mk/bsd.gnome.mk index e017e0820..258503b4a 100644 --- a/Mk/bsd.gnome.mk +++ b/Mk/bsd.gnome.mk @@ -3,7 +3,7 @@ # # $FreeBSD$ # $NetBSD: $ -# $MCom: ports/Mk/bsd.gnome.mk,v 1.309 2005/08/05 17:05:56 marcus Exp $ +# $MCom: ports/Mk/bsd.gnome.mk,v 1.310 2005/08/05 17:27:08 marcus Exp $ # # Please view me with 4 column tabs! @@ -87,10 +87,6 @@ gnomehack_PRE_PATCH= ${FIND} ${WRKSRC} -name "Makefile.in*" -type f | ${XARGS} $ lthack_PRE_PATCH= ${FIND} ${WRKSRC} -name "configure" -type f | ${XARGS} ${REINPLACE_CMD} -e \ '/^LIBTOOL_DEPS="$$ac_aux_dir\/ltmain.sh"$$/s|$$|; $$ac_aux_dir/ltconfig $$LIBTOOL_DEPS;|' -ltverhack_PRE_PATCH= ${FIND} ${WRKSRC} -name "Makefile.in*" -type f | \ - ${XARGS} ${REINPLACE_CMD} -Ee \ - 's|(^\|[[:space:]=])-version-info[[:space:]]+[^[:space:]\\]+|\1|' - GNOME_MTREE= ${X11BASE}/etc/mtree/BSD.gnome-x11.dist gnomehier_DETECT= ${GNOME_MTREE} gnomehier_RUN_DEPENDS= ${gnomehier_DETECT}:${PORTSDIR}/misc/gnomehier @@ -622,6 +618,38 @@ BROKEN= "Unknown component ${component}" _USE_GNOME+= ${${component}_USE_GNOME_IMPL} ${component} . endfor +# Then handle the ltverhack component (it has to be done here, because +# we rely on some bsd.autotools.mk variables, and bsd.autotools.mk is +# included in the post-makefile section). +.if defined(AUTOTOOL_libtool_inc) +ltverhack_PRE_PATCH= ${CP} -pf ${LTMAIN} ${WRKDIR}/gnome-ltmain.sh && \ + for file in ${LIBTOOLFILES}; do \ + ${REINPLACE_CMD} -e \ + '/^ltmain=/!s|$$ac_aux_dir/ltmain\.sh|${LIBTOOLFLAGS} ${WRKDIR}/gnome-ltmain.sh|g' \ + ${PATCH_WRKSRC}/$$file; \ + done; +.elif defined(AUTOTOOL_libtool) +ltverhack_PRE_PATCH= ${CP} -pf ${LTMAIN} ${WRKDIR}/gnome-ltmain.sh && \ + ${CP} -pf ${LIBTOOL} ${WRKDIR}/gnome-libtool && \ + for file in ${LIBTOOLFILES}; do \ + ${REINPLACE_CMD} -e \ + '/^ltmain=/!s|$$ac_aux_dir/ltmain\.sh|${LIBTOOLFLAGS} ${WRKDIR}/gnome-ltmain.sh|g; \ + /^LIBTOOL=/s|$$(top_builddir)/libtool|${WRKDIR}/gnome-libtool|g' \ + ${PATCH_WRKSRC}/$$file; \ + done; +.else +BROKEN= "${PORTNAME} uses the ltverhack GNOME component but does not use libtool" +.endif + +ltverhack_PRE_PATCH+= for file in gnome-ltmain.sh gnome-libtool; do \ + if [ -f ${WRKDIR}/$$file ]; then \ + ${REINPLACE_CMD} -e \ + '/freebsd-elf)/,/;;/ s|major="\.$$current"|major=.`expr $$current - $$age`|; \ + /freebsd-elf)/,/;;/ s|versuffix="\.$$current"|versuffix="$$major"|' \ + ${WRKDIR}/$$file; \ + fi; \ + done + # Then traverse through all components, check which of them # exist in ${_USE_GNOME} and set variables accordingly . for component in ${_USE_GNOME_ALL} |