From owner-freebsd-ports Fri Mar 5 2:58: 9 1999 Delivered-To: freebsd-ports@freebsd.org Received: from shale.csir.co.za (shale.csir.co.za [146.64.46.5]) by hub.freebsd.org (Postfix) with ESMTP id 591C91514B; Fri, 5 Mar 1999 02:57:53 -0800 (PST) (envelope-from reg@shale.csir.co.za) Received: (from reg@localhost) by shale.csir.co.za (8.9.3/8.9.3) id MAA63064; Fri, 5 Mar 1999 12:56:43 +0200 (SAT) (envelope-from reg) Date: Fri, 5 Mar 1999 12:56:43 +0200 From: Jeremy Lea To: Chuck Robey Cc: Satoshi Asami , garyj@muc.de, freebsd-ports@FreeBSD.ORG Subject: Re: all those .la files Message-ID: <19990305125643.H85737@shale.csir.co.za> References: <19990304172534.C85737@shale.csir.co.za> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.3i In-Reply-To: ; from Chuck Robey on Thu, Mar 04, 1999 at 10:31:23PM -0500 Sender: owner-freebsd-ports@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Hi, On Thu, Mar 04, 1999 at 10:31:23PM -0500, Chuck Robey wrote: > They're not, most ports have their own captive ltmain.sh to create a > libtool they have of their own, and will each of every one of them > require patching to use a coomunity libtool. Why you'd want to go to > all that work to memorialize a piece of broken software is completely > beyond me. Libtool serves to solve *no* problems that we have, and > manages only to add the .la files which we don't want. You're not listening... Libtool is here to stay, along with all the other broken GNU build tools, like autoconf and automake. ltmain.sh and ltconfig are always taken directly from the libtool distrubtion, they are not customised. At the moment there are 65 ports which use libtool, and we are only going to get more as more KDE and GNOME software hits the tree. Each one has to be patched to do things like not install .la files, to do tricks like add '11d' to the library names, etc, etc. If we have a USE_LIBTOOL, which does this in bsd.port.mk: post-patch: sed -e s^\$(top_builddir)/libtool^${LOCALBASE}/share/libtool/libtool^ \ configure > configure.tmp mv configure.tmp configure or: post-patch: cp ${LOCALBASE}/share/libtool/ltconfig ${WRKSRC} cp ${LOCALBASE}/share/libtool/ltmain.sh ${WRKSRC} then we only need to change ports/devel/libtool, and all of them will be fixed... This is just an extention of the GNU_CONFIGURE, USE_GMAKE and other ports mechanisms to speed porting. This is not an attempt to memorialize libtool. I agree it's broken... I've done a lot of work with it in the last few months. The fact that most Linux software compiles is not due to the tools, but that the army of developers is good at finding (ugly) kludges to work around the problems their tools create. You want some nice examples... look at the Midnight Commander Makefile.ins. If configure detects gmake it tries to dynamically chance the Makefile.in's to go from DOS makefiles to gmake makefiles! Or gnome-utils, which defines FALSE_TRUE='#' using a configure test and uses it to comment out modules which are not stable yet! With fear of Brett reading this... The GNU build tools are not designed to improve platform portability, but to lock you into a GNU environment. The patching to remove libtool use from these ports would be huge, and the amount of work to get Linux centric projects to stop using libtool, automake, autoconf and other wastes of time is even more. I mean the GNU tools must be good because they're all lovingly written by RMS... Regards, -Jeremy -- | What will people think when they hear that I'm a Jesus freak? --+-- What will people do when they find that it's true? | I don't really care if they label me a Jesus Freak, | There ain't no disguising the truth. - d c Talk To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message