ports/125101: [PATCH] devel/autoconf2{13,61,62}: fix AWK use
Matthias Andree
matthias.andree at gmx.de
Sun Jun 29 15:00:16 UTC 2008
>Number: 125101
>Category: ports
>Synopsis: [PATCH] devel/autoconf2{13,61,62}: fix AWK use
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Sun Jun 29 15:00:12 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator: Matthias Andree
>Release: FreeBSD 7.0-RELEASE-p1 i386
>Organization:
>Environment:
System: FreeBSD rho.emma.line.org 7.0-RELEASE-p1 FreeBSD 7.0-RELEASE-p1 #6: Tue May 27 17:07:46 CEST 2008
>Description:
This is the real fix, to substitute the (already closed) ports/124372.
The autoconf configure script will check mawk and nawk first when
hunting for AWK, but will not record the dependency on nawk/gawk if
found.
This can cause packages depending on autoconf 2.13/2.61/2.62 to fail
their build after gawk has been uninstalled. This was first observed
building archivers/rpm (which depends on 2.13), but the configure "bug"
(or the non-workaround of the port's Makefile) persists in 2.61 and
2.62, symptoms from procedure in how-to-repeat section below:
...
===> Applying FreeBSD patches for rpm-3.0.6_14
===> rpm-3.0.6_14 depends on executable: gmake - found
===> rpm-3.0.6_14 depends on file: /usr/local/bin/automake-1.4 - found
===> rpm-3.0.6_14 depends on file: /usr/local/bin/autoconf-2.13 -
found
===> rpm-3.0.6_14 depends on file: /usr/local/bin/libtool - found
===> rpm-3.0.6_14 depends on shared library: popt.0 - found
===> rpm-3.0.6_14 depends on shared library: intl - found
===> Configuring for rpm-3.0.6_14
gawk: not found
===> Building for rpm-3.0.6_14
gmake: Makefile: No such file or directory
gmake: *** No rule to make target `Makefile'. Stop.
*** Error code 2
Debugging this shows that the "gawk: not found" stems from autoconf-2.13
in this particular case.
NOTE: the patch changes ports/devel/autoconf213, .../autoconf261 and
.../autoconf262. I wonder if the fix (CONFIGURE_ENV+=AWK=${AWK}) should
become part of GNU_CONFIGURE in ports/Mk/bsd.port.mk instead.
Port maintainer (ade at FreeBSD.org) is cc'd.
Generated with FreeBSD Port Tools 0.77
>How-To-Repeat:
- install gawk
- install autoconf213
>Fix:
Be sure to export AWK to the port's ./configure script so it does not
silently depend on /usr/local stuff that may later go away.
NOTE: Arguably, this should be done by ports/Mk/bsd.port.mk instead.
===> Generating patch
===> Viewing diff with more
diff -ruN --exclude=CVS /tmp/devel/autoconf213.orig/Makefile /tmp/devel/autoconf213/Makefile
--- /tmp/devel/autoconf213.orig/Makefile 2007-07-28 08:33:44.000000000 +0200
+++ /tmp/devel/autoconf213/Makefile 2008-06-29 16:45:31.000000000 +0200
@@ -7,7 +7,7 @@
PORTNAME= autoconf
PORTVERSION= 2.13.000227
-PORTREVISION= 6
+PORTREVISION= 7
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_LOCAL}
MASTER_SITE_SUBDIR= ade/gnu
@@ -26,7 +26,7 @@
USE_BZIP2= yes
USE_PERL5= yes
GNU_CONFIGURE= yes
-CONFIGURE_ENV= CONFIG_SHELL=${SH} M4=${LOCALBASE}/bin/gm4
+CONFIGURE_ENV= CONFIG_SHELL=${SH} M4=${LOCALBASE}/bin/gm4 AWK=${AWK}
CONFIGURE_ARGS= --program-suffix=-${BUILD_VERSION}
CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
WRKSRC= ${WRKDIR}/autoconf
===> Done
===> Generating patch
===> Viewing diff with more
diff -ruN --exclude=CVS /tmp/devel/autoconf261.orig/Makefile /tmp/devel/autoconf261/Makefile
--- /tmp/devel/autoconf261.orig/Makefile 2007-07-28 22:55:46.000000000 +0200
+++ /tmp/devel/autoconf261/Makefile 2008-06-29 16:46:33.000000000 +0200
@@ -7,7 +7,7 @@
PORTNAME= autoconf
PORTVERSION= 2.61
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_GNU}
MASTER_SITE_SUBDIR= autoconf
@@ -30,7 +30,7 @@
INFO= autoconf-${BUILD_VERSION}
GNU_CONFIGURE= yes
-CONFIGURE_ENV+= CONFIG_SHELL=${SH} M4=${LOCALBASE}/bin/gm4
+CONFIGURE_ENV+= CONFIG_SHELL=${SH} M4=${LOCALBASE}/bin/gm4 AWK=${AWK}
CONFIGURE_ARGS= --program-suffix=-${BUILD_VERSION} --without-lispdir
CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
===> Done
===> Generating patch
===> Viewing diff with more
diff -ruN --exclude=CVS /tmp/devel/autoconf262.orig/Makefile /tmp/devel/autoconf262/Makefile
--- /tmp/devel/autoconf262.orig/Makefile 2008-05-18 07:44:36.000000000 +0200
+++ /tmp/devel/autoconf262/Makefile 2008-06-29 16:46:31.000000000 +0200
@@ -7,6 +7,7 @@
PORTNAME= autoconf
PORTVERSION= 2.62
+PORTREVISION= 1
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_GNU}
MASTER_SITE_SUBDIR= autoconf
@@ -29,7 +30,7 @@
INFO= autoconf-${BUILD_VERSION}
GNU_CONFIGURE= yes
-CONFIGURE_ENV+= CONFIG_SHELL=${SH} M4=${LOCALBASE}/bin/gm4
+CONFIGURE_ENV+= CONFIG_SHELL=${SH} M4=${LOCALBASE}/bin/gm4 AWK=${AWK}
CONFIGURE_ARGS= --program-suffix=-${BUILD_VERSION} --without-lispdir
CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
===> Done
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list