Subject: libtool on Solaris: global_symbol_pipe undefined
To: None <tech-pkg@NetBSD.org>
From: Hubert Feyrer <hubert@feyrer.de>
List: tech-pkg
Date: 06/16/2005 01:23:43
Trying to build pkgsrc/devel/glib2 (for firefox), it blows up:

 	...
 	generating symbol list for `libglib-2.0.la'
 	nm -p  .libs/garray.o .libs/gasyncqueue.o .libs/gatomic.o
 	.libs/gbacktrace.o .libs/gcache.o .libs/gcompletion.o .libs/gconvert.o
 	.libs/gdataset.o .libs/gdate.o .libs/gdir.o .libs/gerror.o
 	.libs/gfileutils.o .libs/ghash.o .libs/ghook.o .libs/giochannel.o
 	.libs/gkeyfile.o .libs/glist.o .libs/gmain.o .libs/gmarkup.o .libs/gmem.o
 	.libs/gmessages.o .libs/gnode.o .libs/goption.o .libs/gpattern.o
 	.libs/gprimes.o .libs/gqsort.o .libs/gqueue.o .libs/grel.o .libs/grand.o
 	.libs/gscanner.o .libs/gshell.o .libs/gslist.o .libs/gstdio.o
 	.libs/gstrfuncs.o .libs/gstring.o .libs/gthread.o .libs/gthreadpool.o
 	.libs/gtimer.o .libs/gtree.o .libs/guniprop.o .libs/gutf8.o
 	.libs/gunibreak.o .libs/gunicollate.o .libs/gunidecomp.o .libs/gutils.o
 	.libs/gprintf.o .libs/giounix.o .libs/gspawn.o 
===>	libcharset/.libs/libcharset.a gnulib/.libs/libgnulib.a |  |
 	/home1/Solaris/intel/pkg/bin/nbsed 's/.* //' | sort | uniq >
 	.libs/libglib-2.0.exp
 	/home1/Solaris/intel/pkg/bin/libtool[4247]: syntax error at line 1 : `|' unexpected

Digging, this empty pipe (||) comes from global_symbol_pipe being empty in 
my $LOCALBASE/bin/libtool, which leads to a bogus definition of 
export_symbols_cmds. On NetBSD, global_symbol_pipe is defined.

Anyone got an idea how to fix this?

FWIW, I made sure that the pkgsrc libtool is used by adding the following 
line to the glib2/Makefile:

 	LIBTOOL_OVERRIDE=      ${WRKSRC}/libtool

FWIW2, this is on Solaris 9/x86.


  - Hubert