Subject: Re: AUTOMAKE_OVERRIDE=YES by default?
To: Johnny Lam <jlam@jgrind.org>
From: Nick Hudson <skrll@netbsd.org>
List: tech-pkg
Date: 12/10/2001 17:50:11
--------------Boundary-00=_NV25XQYOIXW9NW1O4SFH
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: 8bit

On Sunday 02 December 2001 7:51 pm, Johnny Lam wrote:
> I am thinking of making AUTOMAKE_OVERRIDE default to "YES" in bsd.pkg.mk.
> This triggers the target that touches all of the existing configure.in and
> Makefile.am files so that the GNU auto* tools won't be invoked during a
> "make build".  I think this is the correct behaviour for pkgsrc because
> when packages do need autoconf/automake, they call them on their own as
> part of a pre-configure target.  Can anyone see any problem with this, or
> does anyone know of a package they maintain that relies on "make build" to
> call the GNU auto* tools?

I not so sure this is the right thing to do (or maybe I don't understand). 
For example this is causing problems in the KDE pkgs which come with patches 
to both Makefile.am and Makefile.in created from a known to work version of 
automake. touch(1)'ing the configure.in and configure.in.in (yes, KDE has 
extended auto{make,conf}) breaks the build for kdelibs.

Why would you ever want to touch these files as they are used to create 
configure, etc?

I still believe that patches to Makefile.am, configure.in{,.in} *and* the 
generated versions from working versions of auto{conf,make} should be 
commited to pkgsrc. Perhaps an AUTOMAKE_OVERIDE that touches all 
Makefile.in's, a AUTOCONF_OVERRIDE that touches configure, and an 
AUTOHEADER_OVERRIDE that touches config.h.in should be created to make sure 
the timestamps are correct.

Final thing is that some pkgs are going to come with autoconf 2.52 generated 
configures (including KDE) which our current pkgsrc autoconf (2.32) just will 
not handle. The same may be true of automake 1.5/1.4p5. Another reason to 
commit generated configures, etc... 

Nick


--------------Boundary-00=_NV25XQYOIXW9NW1O4SFH
Content-Type: text/plain;
  charset="iso-8859-1";
  name="make.log"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment; filename="make.log"

=3D=3D=3D> Building for kdelibs-2.2.2
cd . && gmake -f admin/Makefile.common configure.in
gmake[1]: Entering directory `/home/nick/work/prog/kde2-work/pkgsrc/x11/k=
delibs2/work/kdelibs-2.2.2'
gmake[1]: Leaving directory `/home/nick/work/prog/kde2-work/pkgsrc/x11/kd=
elibs2/work/kdelibs-2.2.2'
cd . && aclocal
cd . && automake --foreign --include-deps ./Makefile
cd . && perl admin/am_edit Makefile.in
cd . && autoconf
configure.in:92: warning: AC_TRY_RUN called without default to allow cros=
s compiling
configure.in:816: warning: AC_TRY_RUN called without default to allow cro=
ss compiling
configure.in:1269: warning: AC_TRY_RUN called without default to allow cr=
oss compiling
/bin/sh ./config.status --recheck
running /bin/sh ./configure  --with-ssl-dir=3D/home/nick/work/prog/kde2-w=
ork/pkgsrc/x11/kdelibs2/work/.buildlink --datadir=3D/usr/X11R6/share/kde =
--with-qt-dir=3D/home/nick/work/prog/kde2-work/pkgsrc/x11/kdelibs2/work/.=
buildlink/qt2 --with-extra-includes=3D/home/nick/work/prog/kde2-work/pkgs=
rc/x11/kdelibs2/work/.buildlink/include:/usr/pkg/share/x11-links/include =
--disable-rpath --x-includes=3D/usr/pkg/share/x11-links/include --x-libra=
ries=3D/usr/pkg/share/x11-links/lib --host=3Di386--netbsd --prefix=3D/usr=
/X11R6 LDFLAGS=3D-L/home/nick/work/prog/kde2-work/pkgsrc/x11/kdelibs2/wor=
k/.buildlink/lib  -L/home/nick/work/prog/kde2-work/pkgsrc/x11/kdelibs2/wo=
rk/.buildlink/qt2/lib -Wl,-R/usr/X11R6/qt2/lib -L/usr/pkg/share/x11-links=
/lib -Wl,-R/usr/X11R6/lib -Wl,-R/usr/pkg/lib CFLAGS=3D-I/home/nick/work/p=
rog/kde2-work/pkgsrc/x11/kdelibs2/work/.buildlink/include -O2 -I/usr/pkg/=
share/x11-links/include CPPFLAGS=3D-I/home/nick/work/prog/kde2-work/pkgsr=
c/x11/kdelibs2/work/.buildlink/include  -I/usr/pkg/share/x11-links/includ=
e CXX=3Dc++ host_alias=3Di386--netbsd CC=3Dcc CXXFLAGS=3D-I/home/nick/wor=
k/prog/kde2-work/pkgsrc/x11/kdelibs2/work/.buildlink/include -I/home/nick=
/work/prog/kde2-work/pkgsrc/x11/kdelibs2/work/.buildlink/include -O2 -I/u=
sr/pkg/share/x11-links/include --enable-ltdl-convenience  --no-create --n=
o-recursion
configure: warning: LDFLAGS=3D-L/home/nick/work/prog/kde2-work/pkgsrc/x11=
/kdelibs2/work/.buildlink/lib  -L/home/nick/work/prog/kde2-work/pkgsrc/x1=
1/kdelibs2/work/.buildlink/qt2/lib -Wl,-R/usr/X11R6/qt2/lib -L/usr/pkg/sh=
are/x11-links/lib -Wl,-R/usr/X11R6/lib -Wl,-R/usr/pkg/lib: invalid host t=
ype
configure: warning: CFLAGS=3D-I/home/nick/work/prog/kde2-work/pkgsrc/x11/=
kdelibs2/work/.buildlink/include -O2 -I/usr/pkg/share/x11-links/include: =
invalid host type
configure: error: can only configure for one host and one target at a tim=
e
gmake: *** [config.status] Error 1
*** Error code 2

Stop.
*** Error code 1

Stop.

--------------Boundary-00=_NV25XQYOIXW9NW1O4SFH--