Date: Sat, 21 Feb 2009 10:54:16 -0600 From: "Jeremy Messenger" <mezz7@cox.net> To: "Thomas Schmitt" <scdbackup@gmx.net> Cc: freebsd-ports@freebsd.org Subject: Re: Problem with .so numbering on FreeBSD in contrast to Linux Message-ID: <op.uppnxepu9aq2h7@localhost> In-Reply-To: <10272449079630@212.46.126.165> References: <op.upoc4gz09aq2h7@localhost> <10272449079630@212.46.126.165>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 21 Feb 2009 01:08:07 -0600, Thomas Schmitt <scdbackup@gmx.net> wrote: > Hi, > > Sam Lawrance wrote: >> http://www.freebsd.org/doc/en/books/developers-handbook/policies-shlib.html > > That description is similar to what i experience > on my Linux system but not to what i see on the > FreeBSD server where i do my tests: > everest.free-shells.com.ar > FreeBSD 6.3-RELEASE-p5 (KEVEREST-6.3) #0: Thu Oct 9 13:54:44 ART 2008 > There is only one number after .so whereas > policies-shlib.html talks of major.minor. > > So obviously my ./libtool resp. the programs used > inside do not follow this convention. > (autotools is not my personal choice. It was > already in use when i became upstream of libburn. > Its main advantage is its social standing in > the community of distro packagers.) > > > Jeremy Messenger wrote: >> http://people.freebsd.org/~mezz/libtool.txt > > That's hard to read but seems to be exactly about > my problem. > I'll explore that. "ltmain.sh" is mentioned. > Maybe i can do a private hack in my copy of it. > This code snippet looks promising: > case $version_type in > darwin|linux|osf|windows) > current=`expr $number_major + $number_minor` > age="$number_minor" > revision="$number_revision" > ;; > freebsd-aout|freebsd-elf|sunos) > current="$number_major" > revision="$number_minor" > age="0" > ;; > > Is "ltverhack" a piece of software ? > (Can i have a look at it somewhere ?) The ltverhack is a hack in ports/Mk/bsd.gnome.mk[1]. bsd.gnome.mk (693 line): ---------------------------------------------------- ltverhack_PRE_PATCH= for file in gnome-ltmain.sh gnome-libtool; do \ if [ -f ${WRKDIR}/$$file ]; then \ ${REINPLACE_CMD} -e \ '/freebsd-elf)/,/;;/ s|major="\.$$current"|${ltverhack_LIB_VERSION}|; \ /freebsd-elf)/,/;;/ s|versuffix="\.$$current"|versuffix="$$major"|' \ ${WRKDIR}/$$file; \ fi; \ done ---------------------------------------------------- http://www.freebsd.org/cgi/cvsweb.cgi/ports/x11-toolkits/gtk20/pkg-plist.diff?r1=1.90;r2=1.91 This URL above is an example what looks like when x11-toolkits/gtk20 started to use ltverhack. ---------------------------------------------------- lib/libgdk-x11-2.0.a lib/libgdk-x11-2.0.so -lib/libgdk-x11-2.0.so.600 +lib/libgdk-x11-2.0.so.0 lib/libgdk_pixbuf-2.0.a lib/libgdk_pixbuf-2.0.so -lib/libgdk_pixbuf-2.0.so.600 +lib/libgdk_pixbuf-2.0.so.0 lib/libgdk_pixbuf_xlib-2.0.a lib/libgdk_pixbuf_xlib-2.0.so -lib/libgdk_pixbuf_xlib-2.0.so.600 +lib/libgdk_pixbuf_xlib-2.0.so.0 lib/libgtk-x11-2.0.a lib/libgtk-x11-2.0.so -lib/libgtk-x11-2.0.so.600 +lib/libgtk-x11-2.0.so.0 ---------------------------------------------------- [1] http://www.freebsd.org/cgi/cvsweb.cgi/ports/Mk/bsd.gnome.mk Cheers, Mezz >> <mezz7> Why do libtool have to be weird? 600 - 600.. >> couldn't it be simple to just 0? :-) > > It is confusing that the libtool documentation > talks about a .so numbering scheme which would > allow to demand a upper and lower limits for LT_AGE > at link time. > Neither Linux nor FreeBSD seem to implement that > scheme. It would be very convenient though. > > All in all, as upstream, i would love to trash .so > in total. With my apps i take care to provide > statically linked versions as alternative to the > .so cripples. > But, sigh, the world wants DLLs. > > Many thanks for your help. > > Have a nice day :) > > Thomas -- mezz7@cox.net - mezz@FreeBSD.org FreeBSD GNOME Team http://www.FreeBSD.org/gnome/ - gnome@FreeBSD.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?op.uppnxepu9aq2h7>