libtool breakages!

Bad way to start off the week, the latest libtool change is breaking e17 build from CVS…

if /usr/local/bin/bash ../../../libtool –tag=CC –mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I../../.. -I. -I../../../src/lib -I../../../src/lib/include -I/usr/local/include/freetype2 -I/usr/local/include -I/usr/e17/include -I/usr/local/include -I/usr/X11R6/include -L/usr/X11R6/lib -L/usr/local/lib -I/usr/e17/include -L/usr/e17/lib -I/usr/e16/include -L/usr/e16/lib -I/usr/local/include -I/usr/X11R6/include -L/usr/X11R6/lib -L/usr/local/lib -I/usr/e17/include -L/usr/e17/lib -I/usr/e16/include -L/usr/e16/lib -MT evas_callbacks.lo -MD -MP -MF “.deps/evas_callbacks.Tpo” -c -o evas_callbacks.lo evas_callbacks.c; \
then mv -f “.deps/evas_callbacks.Tpo” “.deps/evas_callbacks.Plo”; else rm -f “.deps/evas_callbacks.Tpo”; exit 1; fi
libtool: compile: cannot determine name of library object from `'
gmake[4]: *** [evas_callbacks.lo] Error 1
gmake[4]: Leaving directory `/home/shanker/cvs/enlightenment/e17/libs/evas/src/lib/canvas'
gmake[3]: *** [all-recursive] Error 1
gmake[3]: Leaving directory `/home/shanker/cvs/enlightenment/e17/libs/evas/src/lib'
gmake[2]: *** [all-recursive] Error 1
gmake[2]: Leaving directory `/home/shanker/cvs/enlightenment/e17/libs/evas/src'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/home/shanker/cvs/enlightenment/e17/libs/evas'
gmake: *** [all] Error 2
===> Failed to build e17/libs/evas^C

AFFECTS: all ports using libtool as part of the build process

The way in which ports that require libtool to build has been
completely reworked to bring the ports system in line with other
environments, such as Linux, and pkgsrc.

(2006-03-19) UPDATE:

The right way to build non-ports software (like from CVS), is to use the port configgen

[buffy] ~> pkg_info -x configgen
Information for configgen-1.14:

Script that makes life a little easier with gnu-autotools

Simple script that makes life a little easier with gnu-autotools
on FreeBSD. Configgen takes all the guess work out of figuring out
paths, gnu-autotools versions, and more. Configgen can simply be
run in a source directory and it will figure out which versions of
autotools to use and the best way to auto-generate a configure script
or you can specify a command below.

-gnu Create generic gnu configure script
-gnome Create gnome specific configure script
-bsd Use FreeBSD auto-tools
(versions: libtool15, automake15, autoconf253)
-bsd14 Use FreeBSD auto-tools
(versions: libtool13, automake14, autoconf213)
-bsd19 Use FreeBSD auto-tools
(versions: libtool15, automake19, autoconf259)
Specify a auto-gen configure script

Doing instead of didn't fix things at first but suddenly its working. I don't remember what other changes I might have done to the various autofoo muck in the system but wtf, it works now! 🙂

By Shanker Balan

Shanker Balan is a devops and infrastructure freelancer with over 14 years of industry experience in large scale Internet systems. He is available for both short term and long term projects on contract.

Please use the Contact Form for any enquiry.