Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 24 Aug 2009 13:43:33 +0000 (UTC)
From:      <bzeeb+freebsdports@zabbadoz.net>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        bzeeb+freebsdports@zabbadoz.net
Subject:   ports/138139: [patch] teach Mk/bsd.autocrap.mk about libtoolize
Message-ID:  <20090824134333.B4A194899B5@storage.int.zabbadoz.net>
Resent-Message-ID: <200908241350.n7ODo0fu019509@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         138139
>Category:       ports
>Synopsis:       [patch] teach Mk/bsd.autocrap.mk about libtoolize
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Mon Aug 24 13:50:00 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator:     uid=65534
>Release:        FreeBSD 9.0-CURRENT amd64
>Organization:
Cannot be serious on this topic
>Environment:
System: FreeBSD foobarbaz 9.0-CURRENT FreeBSD 9.0-CURRENT #0


>Description:
	
Trying to compile sources directly checked out from a SCM
often requires to correctly bootstrap things because of
autocrap tools.  Instead of generating a pre-bootsptrapped
snapshot tarball, make it possible to directly compile the
code from ports without additional bootstrapping in a
deterministic way, to ease snapshot distribution or just to
have a pretty good framework for your code to do the
boot-strapping from a port running make whateveritwasagain,
.. run-autotools?


>How-To-Repeat:

You don't want to unless someone is paying for the
ice cream, the hot chocolate and the two disks in your
new computer that was delivered by the postman on the
white pony escorted by a few black helicopters.


>Fix:

You can also temporary fetch the attached diff from:
http://people.freebsd.org/~bz/20090824-01-bsd.autocrap.mk.diff

This should not change anything for any port unless you also give
libtoolize:22 in the USE_AUTOTOOLS lines, like for example:
USE_AUTOTOOLS=	aclocal:17 autoheader:262 libtoolize:22 libtool:22 automake:17 autoconf:262

So it should actually be very non-intrusive and easy to
test/apply/commit if you are brave enough.
I'd suggest to shower afterwards.

PS: the over long lines have been there before just a little
less long.


!
! Teach Mk/bsd.autocrap.mk about libtoolize so that it will be
! possible to directly bootstrap things as they come out of
! SCM systems - naked, virgin and untouched.
!
! PR:		we should do a press release that autocrap is dead.
! Submitted by:	no way I ever did that - my name is uid=65534.
! Reviewed by:	noone wants to go near that crap!
! Approved by:	what makes you think you want?
! Obtained from:a hard disk that almost died under autocrap.
!
Index: Mk/bsd.autotools.mk
===================================================================
RCS file: /mirror/FreeBSD/r/pcvs/ports/Mk/bsd.autotools.mk,v
retrieving revision 1.32
diff -u -p -r1.32 bsd.autotools.mk
--- Mk/bsd.autotools.mk	19 Aug 2009 02:26:27 -0000	1.32
+++ Mk/bsd.autotools.mk	24 Aug 2009 13:06:31 -0000
@@ -181,6 +181,11 @@ BUILD_DEPENDS+=		${AUTOCONF_DEPENDS}
 LIB_DEPENDS+=	ltdl.7:${PORTSDIR}/devel/libltdl22
 .endif
 
+.if defined(AUTOTOOL_libtoolize)
+AUTOTOOL_libtoolize_env=	${AUTOTOOL_libtoolize}
+GNU_CONFIGURE?=			yes
+.endif
+
 .if defined(AUTOTOOL_libtool)
 GNU_CONFIGURE?=			YES
 AUTOTOOL_libtool_env=	${AUTOTOOL_libtool}
@@ -230,7 +235,7 @@ AUTOTOOLS_ENV+=	${AUTOTOOLS_VARS}
 CONFIGURE_ENV+=	${AUTOTOOLS_VARS}
 MAKE_ENV+=		${AUTOTOOLS_VARS}
 SCRIPTS_ENV+=	${AUTOTOOLS_VARS}
-. for item in automake aclocal autoconf autoheader libtool
+. for item in automake aclocal autoconf autoheader libtool libtoolize
 .  if defined(AUTOTOOL_${item}_env)
 ${item:U}_ENV+=	${AUTOTOOLS_VARS}
 .  endif
@@ -249,10 +254,10 @@ ${item:U}_ENV+=	${AUTOTOOLS_VARS}
 # the order of autotools running.
 
 .if !target(run-autotools)
-.ORDER: run-autotools run-autotools-aclocal patch-autotools run-autotools-autoheader run-autotools-autoconf run-autotools-automake
+.ORDER: run-autotools run-autotools-aclocal patch-autotools run-autotools-autoheader run-autotools-libtoolize run-autotools-autoconf run-autotools-automake
 
 run-autotools:: run-autotools-aclocal patch-autotools run-autotools-autoheader \
-		run-autotools-autoconf run-autotools-automake
+		run-autotools-libtoolize run-autotools-autoconf run-autotools-automake
 .endif
 
 .if !target(run-autotools-aclocal)
@@ -265,6 +270,16 @@ run-autotools-aclocal:
 . endif
 .endif
 
+.if !target(run-autotools-libtoolize)
+run-autotools-libtoolize:
+. if defined(AUTOTOOL_libtoolize)
+	@(cd ${CONFIGURE_WRKSRC} && ${SETENV} ${AUTOTOOLS_ENV} ${LIBTOOLIZE} \
+		${LIBTOOLIZE_ARGS})
+. else
+	@${DO_NADA}
+. endif
+.endif
+
 .if !target(run-autotools-automake)
 run-autotools-automake:
 . if defined(AUTOTOOL_automake)
>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090824134333.B4A194899B5>