Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:15639 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 11626 invoked by uid 1010); 27 Mar 2005 22:15:38 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 11610 invoked from network); 27 Mar 2005 22:15:38 -0000 Received: from unknown (HELO csh.rit.edu) (127.0.0.1) by localhost with SMTP; 27 Mar 2005 22:15:38 -0000 X-Host-Fingerprint: 129.21.60.6 blacksheep.csh.rit.edu Tru64 v5.1a JP4 (or OpenVMS 7.x on Compaq 5.x Received: from ([129.21.60.6:1534] helo=blacksheep.csh.rit.edu) by pb1.pair.com (ecelerity HEAD r(5268)) with SMTP id 91/D1-39565-98037424 for ; Sun, 27 Mar 2005 17:15:37 -0500 Received: from fury.csh.rit.edu (fury.csh.rit.edu [IPv6:2001:470:1f00:135:a00:20ff:fe8d:5399]) by blacksheep.csh.rit.edu (Postfix) with ESMTP id DC0299335; Sun, 27 Mar 2005 17:15:33 -0500 (EST) Received: by fury.csh.rit.edu (Postfix, from userid 37404) id 9EDA214BF; Sun, 27 Mar 2005 17:15:33 -0500 (EST) Date: Sun, 27 Mar 2005 17:15:33 -0500 To: internals@lists.php.net Cc: sniper@php.net Message-ID: <20050327221532.GA17108@csh.rit.edu> Mail-Followup-To: internals@lists.php.net, sniper@php.net Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="UlVJffcvxoiEqYs2" Content-Disposition: inline Subject: Build system support for stock FreeBSD autoconf ports From: jon@php.net (Jon Parise) --UlVJffcvxoiEqYs2 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline The attached patch allows PHP's build system to recognize FreeBSD's "versioned" autoconf ports without the need for system-level symlinks or similar aliasing. It uses 'shtool path' to (attempt to) locate the appropriate autoconf / autoheader executable. I noticed that Jani did a bit of work earlier this year directed at simplifying the build system (such that it only uses our bundled libtool, for example). Given that, I'm not sure if it is still acceptable to use shtool to locate external executables, so I'm asking for a patch review here before committing anything. Thanks! -- Jon Parise (jon of php.net) :: The PHP Project (http://www.php.net/) --UlVJffcvxoiEqYs2 Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="autoconf-freebsd-ports.diff" Index: build/build2.mk =================================================================== RCS file: /repository/php-src/build/build2.mk,v retrieving revision 1.35 diff -u -r1.35 build2.mk --- build/build2.mk 3 Feb 2005 17:42:42 -0000 1.35 +++ build/build2.mk 27 Mar 2005 22:06:16 -0000 @@ -26,6 +26,9 @@ makefile_in_files = $(makefile_am_files:.am=.in) makefile_files = $(makefile_am_files:e.am=e) +autoconf = `./build/shtool path autoconf259 autoconf213 autoconf 2> /dev/null` +autoheader = `./build/shtool path autoheader259 autoheader213 autoheader 2> /dev/null` + config_h_in = main/php_config.h.in acconfig_h_SOURCES = acconfig.h.in $(config_h_files) @@ -45,7 +48,7 @@ # correctly otherwise (timestamps are not updated) @echo rebuilding $@ @rm -f $@ - autoheader $(SUPPRESS_WARNINGS) + $(autoheader) $(SUPPRESS_WARNINGS) $(TOUCH_FILES): touch $(TOUCH_FILES) @@ -56,5 +59,5 @@ configure: aclocal.m4 configure.in $(config_m4_files) @echo rebuilding $@ - autoconf $(SUPPRESS_WARNINGS) + $(autoconf) $(SUPPRESS_WARNINGS) Index: build/buildcheck.sh =================================================================== RCS file: /repository/php-src/build/buildcheck.sh,v retrieving revision 1.34 diff -u -r1.34 buildcheck.sh --- build/buildcheck.sh 20 Jan 2005 01:41:19 -0000 1.34 +++ build/buildcheck.sh 27 Mar 2005 22:06:16 -0000 @@ -24,7 +24,8 @@ stamp=$1 # autoconf 2.13 or newer -ac_version=`autoconf --version 2>/dev/null|head -n 1|sed -e 's/^[^0-9]*//' -e 's/[a-z]* *$//'` +autoconf=`./build/shtool path autoconf259 autoconf213 autoconf 2> /dev/null` +ac_version=`$autoconf --version 2>/dev/null|head -n 1|sed -e 's/^[^0-9]*//' -e 's/[a-z]* *$//'` if test -z "$ac_version"; then echo "buildconf: autoconf not found." echo " You need autoconf version 2.13 or newer installed" --UlVJffcvxoiEqYs2--