[PATCH 07/10] libtool: fix DLL creation/installation/uninstallation on OS/2

2014-10-12 Thread KO Myung-Hun
OS/2 limits a length of a DLL base name up to 8 characters. If a name of
a shared library is longer than 8 characters, OS/2 cannot load it. And
fix install/uninstall process using link which is not supported OS/2.

* build-aux/ltmain.in: Do not strip an import lib.
* m4/libtool.m4: Set variables to fix DLL creation, installation
and uninstallation.
---
 build-aux/ltmain.in |7 +++
 m4/libtool.m4   |   48 
 2 files changed, 51 insertions(+), 4 deletions(-)

diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index 5829cf2..86b42dd 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -2400,6 +2400,13 @@ func_mode_install ()
  ;;
esac
;;
+ os2*)
+   case $realname in
+   *_dll.a)
+ tstripme=
+ ;;
+   esac
+   ;;
  esac
  if test -n $tstripme  test -n $striplib; then
func_show_eval $striplib $destdir/$realname 'exit $?'
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index 0713c29..e360efd 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -2810,9 +2810,27 @@ os2*)
   libname_spec='$name'
   shrext_cmds=.dll
   need_lib_prefix=no
-  library_names_spec='$libname$shared_ext $libname.a'
+  # OS/2 limits a length of a DLL basename up to 8 characters.
+  # So there is need to use a short name instead of a original name
+  # longer than 8 characters. And replace '.' with '_'.
+  soname_spec='`eval $ECHO $libname | cut -b -8 | tr . _`${shared_ext}'
+  library_names_spec='${libname}_dll.$libext'
   dynamic_linker='OS/2 ld.exe'
-  shlibpath_var=LIBPATH
+  shlibpath_var=BEGINLIBPATH
+  sys_lib_search_path_spec=/lib /usr/lib /usr/local/lib
+  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+  postinstall_cmds='base_file=`basename \$file`~
+dlpath=`$SHELL 21 -c '\''. $dir/'\''\$base_file'\''i; $ECHO 
\$dlname'\''`~
+dldir=$destdir/`dirname \$dlpath`~
+test -d \$dldir || mkdir -p \$dldir~
+$install_prog $dir/$dlname \$dldir/$dlname~
+chmod a+x \$dldir/$dlname~
+if test -n '\''$stripme'\''  test -n '\''$striplib'\''; then
+  eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
+fi'
+  postuninstall_cmds='dldll=`$SHELL 21 -c '\''. $file; $ECHO \$dlname'\''`~
+dlpath=$dir/\$dldll~
+ $RM \$dlpath'
   ;;
 
 osf3* | osf4* | osf5*)
@@ -4960,6 +4978,16 @@ _LT_EOF
   _LT_TAGVAR(link_all_deplibs, $1)=yes
   ;;
 
+os2*)
+  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+  _LT_TAGVAR(hardcode_minus_L, $1)=yes
+  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+  shrext_cmds=.dll
+  _LT_TAGVAR(archive_cmds, $1)='$ECHO LIBRARY ${soname%$shared_ext} 
INITINSTANCE TERMINSTANCE  $output_objdir/$libname.def~$ECHO DESCRIPTION 
\$libname\  $output_objdir/$libname.def~$ECHO DATA  
$output_objdir/$libname.def~$ECHO   MULTIPLE NONSHARED  
$output_objdir/$libname.def~$ECHO EXPORTS  $output_objdir/$libname.def~emxexp 
$libobjs | $SED /_DLL_InitTerm/d  $output_objdir/$libname.def~$CC -Zdll 
-Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags 
$output_objdir/$libname.def~emximp -o $lib $output_objdir/$libname.def'
+  _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o 
$output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+  ;;
+
 interix[[3-9]]*)
   _LT_TAGVAR(hardcode_direct, $1)=no
   _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -5578,8 +5606,10 @@ _LT_EOF
   _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
   _LT_TAGVAR(hardcode_minus_L, $1)=yes
   _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-  _LT_TAGVAR(archive_cmds, $1)='$ECHO LIBRARY $libname INITINSTANCE  
$output_objdir/$libname.def~$ECHO DESCRIPTION \$libname\  
$output_objdir/$libname.def~echo DATA  $output_objdir/$libname.def~echo  
SINGLE NONSHARED  $output_objdir/$libname.def~echo EXPORTS  
$output_objdir/$libname.def~emxexp $libobjs  $output_objdir/$libname.def~$CC 
-Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags 
$output_objdir/$libname.def'
-  _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o 
$output_objdir/$libname.a $output_objdir/$libname.def'
+  shrext_cmds=.dll
+  _LT_TAGVAR(archive_cmds, $1)='$ECHO LIBRARY ${soname%$shared_ext} 
INITINSTANCE TERMINSTANCE  $output_objdir/$libname.def~$ECHO DESCRIPTION 
\$libname\  $output_objdir/$libname.def~$ECHO DATA  
$output_objdir/$libname.def~$ECHO   MULTIPLE NONSHARED  
$output_objdir/$libname.def~$ECHO EXPORTS  $output_objdir/$libname.def~emxexp 
$libobjs | $SED /_DLL_InitTerm/d  $output_objdir/$libname.def~$CC -Zdll 
-Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags 
$output_objdir/$libname.def~emximp -o $lib $output_objdir/$libname.def'
+  _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o 
$output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+  

[PATCH 02/10] libtool: set lt_prog_compiler_static to -Bstatic on OS/2

2014-10-12 Thread KO Myung-Hun
* m4/libtool.m4 (_LT_COMPILER_PIC): Same as the title.
---
 m4/libtool.m4 |   15 +++
 1 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/m4/libtool.m4 b/m4/libtool.m4
index 320d8b3..248d423 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -4060,6 +4060,11 @@ m4_if([$1], [CXX], [
   # (--disable-auto-import) libraries
   m4_if([$1], [GCJ], [],
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+  case $host_os in
+  os2*)
+_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+;;
+  esac
   ;;
 darwin* | rhapsody*)
   # PIC is the default on this platform
@@ -4379,6 +4384,11 @@ m4_if([$1], [CXX], [
   # (--disable-auto-import) libraries
   m4_if([$1], [GCJ], [],
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+  case $host_os in
+  os2*)
+_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+;;
+  esac
   ;;
 
 darwin* | rhapsody*)
@@ -4476,6 +4486,11 @@ m4_if([$1], [CXX], [
   # built for inclusion in a dll (and should export symbols for example).
   m4_if([$1], [GCJ], [],
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+  case $host_os in
+  os2*)
+_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+;;
+  esac
   ;;
 
 hpux9* | hpux10* | hpux11*)
-- 
1.7.3.2




[PATCH 2/8] libtool: don't eliminate duplications in $postdeps and $predeps on OS/2

2014-09-17 Thread KO Myung-Hun
* build-aux/ltmain.h (libtool_validate_options): Add *os2* to the list.
---
 build-aux/ltmain.in |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index 0dea055..cf72c66 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -499,7 +499,7 @@ libtool_validate_options ()
 case $host in
   # Solaris2 added to fix 
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452
   # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788
-  *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2*)
+  *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*)
 # don't eliminate duplications in $postdeps and $predeps
 opt_duplicate_compiler_generated_deps=:
 ;;
-- 
1.7.3.2




[PATCH 1/8] libtool: add -os2dllname option

2014-09-17 Thread KO Myung-Hun
OS/2 limits a length of a DLL base name up to 8 characters. If a name of
a shared library is longer than 8 characters, OS/2 cannot load it. So the
option to specify a OS/2 DLL name shorter than 8 characters is needed.
As well as, OS/2 does not allow OS/2 DLL name to contain '.'.

* NEWS: Add news for -os2dllname.
* build-aux/ltmain.in (func_mode_help): Add a description for -os2dllname.
(fund_mode_link): Add -os2dllname.
* doc/libtool.texi: Add -os2dllname item.
* m4/libtool.m4: Introduce os2dllname_cmds for -os2dllname.
---
 NEWS|2 ++
 build-aux/ltmain.in |   11 +++
 doc/libtool.texi|4 
 m4/libtool.m4   |   38 ++
 4 files changed, 51 insertions(+), 4 deletions(-)

diff --git a/NEWS b/NEWS
index 1ca6d65..b2479db 100644
--- a/NEWS
+++ b/NEWS
@@ -34,6 +34,8 @@ NEWS - list of user-visible changes between releases of GNU 
Libtool
 
 make check-local TESTSUITEFLAGS='-k !expensive'
 
+  - Added -os2dllname option to specify a OS/2 DLL name (OS/2 only)
+
 ** Bug fixes:
 
   - Fix a long-standing latent bug in autom4te include path for autotests
diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index 65b5a2d..0dea055 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -1819,6 +1819,7 @@ The following components of LINK-COMMAND are treated 
specially:
   -no-undefined declare that a library does not refer to external symbols
   -o OUTPUT-FILEcreate OUTPUT-FILE from the specified objects
   -objectlist FILE  Use a list of object files found in FILE to specify objects
+  -os2dllname NAME  specify a OS/2 DLL name(effect on OS/2 only)
   -precious-files-regex REGEX
 don't remove output files matching REGEX
   -release RELEASE  specify package release information
@@ -4856,6 +4857,11 @@ func_mode_link ()
  prev=
  continue
  ;;
+   os2dllname)
+ os2dllname_cmds=$ECHO $arg | cut -b -8 | tr . _
+ prev=
+ continue
+ ;;
precious_regex)
  precious_files_regex=$arg
  prev=
@@ -5165,6 +5171,11 @@ func_mode_link ()
continue
;;
 
+  -os2dllname)
+   prev=os2dllname
+   continue
+   ;;
+
   -o) prev=output ;;
 
   -precious-files-regex)
diff --git a/doc/libtool.texi b/doc/libtool.texi
index 89c5d1a..65d63a3 100644
--- a/doc/libtool.texi
+++ b/doc/libtool.texi
@@ -1531,6 +1531,10 @@ Create @var{output-file} from the specified objects and 
libraries.
 @item -objectlist @var{file}
 Use a list of object files found in @var{file} to specify objects.
 
+@item -os2dllname @var{name}
+If @var{name} is specified, replace a name for a DLL with @var{suffix} (effect
+on OS/2 only)
+
 @item -precious-files-regex @var{regex}
 Prevents removal of files from the temporary output directory whose
 names match this regular expression.  You might specify @samp{\.bbg?$}
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index 320d8b3..da29e57 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -2286,6 +2286,7 @@ BEGIN {RS =  ; FS = /|\n;} {
 else
   sys_lib_search_path_spec=/lib /usr/lib /usr/local/lib
 fi])
+os2dllname_cmds=
 library_names_spec=
 libname_spec='lib$name'
 soname_spec=
@@ -2810,9 +2811,15 @@ os2*)
   libname_spec='$name'
   shrext_cmds=.dll
   need_lib_prefix=no
-  library_names_spec='$libname$shared_ext $libname.a'
+  # OS/2 limits a length of a DLL basename up to 8 characters.
+  # So there is need to use a short name instead of a original name
+  # longer than 8 characters. And replace '.' with '_'.
+  os2dllname_cmds='$ECHO $libname | cut -b -8 | tr . _'
+  library_names_spec='`eval $os2dllname_cmds`${shared_ext} 
${libname}_dll.$libext'
   dynamic_linker='OS/2 ld.exe'
-  shlibpath_var=LIBPATH
+  shlibpath_var=BEGINLIBPATH
+  sys_lib_search_path_spec=/lib /usr/lib /usr/local/lib
+  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
   ;;
 
 osf3* | osf4* | osf5*)
@@ -2958,6 +2965,7 @@ _LT_DECL([], [shlibpath_var], [0],[Shared library path 
variable])
 _LT_DECL([], [shlibpath_overrides_runpath], [0],
 [Is shlibpath searched before the hard-coded library search path?])
 _LT_DECL([], [libname_spec], [1], [Format of library name prefix])
+_LT_DECL([], [os2dllname_cmds], [2], [Command to make a OS/2 DLL name])
 _LT_DECL([], [library_names_spec], [1],
 [[List of archive names.  First name is the real one, the rest are links.
 The last name is the one that the linker finds with -lNAME]])
@@ -4942,6 +4950,16 @@ _LT_EOF
   _LT_TAGVAR(link_all_deplibs, $1)=yes
   ;;
 
+os2*)
+  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+  _LT_TAGVAR(hardcode_minus_L, $1)=yes
+  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+  shrext_cmds=.dll
+  _LT_TAGVAR(archive_cmds, $1)='$ECHO LIBRARY `eval $os2dllname_cmds` 
INITINSTANCE TERMINSTANCE  $output_objdir/$libname.def~$ECHO DESCRIPTION 
\$libname\  $output_objdir/$libname.def~$ECHO DATA  
$output_objdir

[PATCH 8/8] libtool: create an import libraries instead of links to the real library on OS/2

2014-09-17 Thread KO Myung-Hun
Link is not supported on OS/2.

* build-aux/ltmain.in (fund_mode_install): Create an import library.
(fund_mode_link): Likewise.
---
 build-aux/ltmain.in |   23 ---
 1 files changed, 20 insertions(+), 3 deletions(-)

diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index 62c3564..6af7dac 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -2413,8 +2413,17 @@ func_mode_install ()
# so we also need to try rm  ln -s.
for linkname
do
- test $linkname != $realname \
-func_show_eval (cd $destdir  { $LN_S -f $realname 
$linkname || { $RM $linkname  $LN_S $realname $linkname; }; })
+ if test $linkname != $realname; then
+   case $host_os in
+   os2*)
+ # Create import libraries instead of links on OS/2
+ func_show_eval (emximp -o $destdir/$linkname 
$dir/${linkname%%_dll.$libext}.def)
+ ;;
+   *)
+ func_show_eval (cd $destdir  { $LN_S -f $realname 
$linkname || { $RM $linkname  $LN_S $realname $linkname; }; })
+ ;;
+   esac
+ fi
done
  fi
 
@@ -8067,7 +8076,15 @@ EOF
# Create links to the real library.
for linkname in $linknames; do
  if test $realname != $linkname; then
-   func_show_eval '(cd $output_objdir  $RM $linkname  $LN_S 
$realname $linkname)' 'exit $?'
+   case $host_os in
+   os2*)
+ # Create import libraries instead of links on OS/2
+ func_show_eval '(emximp -o $output_objdir/$linkname 
$output_objdir/$libname.def)' 'exit $?'
+ ;;
+   *)
+ func_show_eval '(cd $output_objdir  $RM $linkname  $LN_S 
$realname $linkname)' 'exit $?'
+ ;;
+   esac
  fi
done
 
-- 
1.7.3.2




[PATCH 3/8] libtool: set lt_prog_compiler_static to -Bstatic on OS/2

2014-09-17 Thread KO Myung-Hun
* m4/libtool.m4 (_LT_COMPILER_PIC): Same as the title.
---
 m4/libtool.m4 |   15 +++
 1 files changed, 15 insertions(+), 0 deletions(-)

diff --git a/m4/libtool.m4 b/m4/libtool.m4
index da29e57..f54c882 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -4068,6 +4068,11 @@ m4_if([$1], [CXX], [
   # (--disable-auto-import) libraries
   m4_if([$1], [GCJ], [],
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+  case $host_os in
+  os2*)
+_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+;;
+  esac
   ;;
 darwin* | rhapsody*)
   # PIC is the default on this platform
@@ -4387,6 +4392,11 @@ m4_if([$1], [CXX], [
   # (--disable-auto-import) libraries
   m4_if([$1], [GCJ], [],
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+  case $host_os in
+  os2*)
+_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+;;
+  esac
   ;;
 
 darwin* | rhapsody*)
@@ -4484,6 +4494,11 @@ m4_if([$1], [CXX], [
   # built for inclusion in a dll (and should export symbols for example).
   m4_if([$1], [GCJ], [],
[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+  case $host_os in
+  os2*)
+_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+;;
+  esac
   ;;
 
 hpux9* | hpux10* | hpux11*)
-- 
1.7.3.2




[PATCH 5/8] libtool: there is no need to relink DLLs on OS/2

2014-09-17 Thread KO Myung-Hun
* build-aux/ltmain.in (func_mode_link): Set need_relink to no on OS/2.
---
 build-aux/ltmain.in |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index cf72c66..48ae7fa 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -6164,7 +6164,7 @@ func_mode_link ()
if test -n $library_names 
   { test no = $use_static_libs || test -z $old_library; }; then
  case $host in
- *cygwin* | *mingw* | *cegcc*)
+ *cygwin* | *mingw* | *cegcc* | *os2*)
  # No point in relinking DLLs because paths are not encoded
  func_append notinst_deplibs  $lib
  need_relink=no
-- 
1.7.3.2




libtool version mismatch error persists after running `autoreconf -fvi`

2014-09-11 Thread Arman Eshaghi
Hi,

I'm trying to make my first project with adding a new binary to an old
project written in C/C++ on my machine with Ubuntu 14.04. First I need
to run ./setup_configure which runs the following script:

  set cmd1=(rm -rf autom4te.cache)
  if ( `uname -s` == Darwin ) then
  set cmd2=(glibtoolize --force)
  else
  #set cmd2=(libtoolize --force)
  set cmd2=(libtoolize -f -v)
  endif
  set cmd3=(aclocal)
  set cmd4=(automake -a -c)
  set cmd5=(autoreconf --force -Wno-portability)
  set cmd6=(autoconf -Wno-portability)

and afterwards I need to run ./configure. Since I do not want to
compile the whole project I cd into the new sub-directory I have added
and run make, however, the process does not go smoothly and ends with
the following error:

/bin/bash ../libtool  --tag=CC   --mode=link g++ -I../include
-L/usr/lib64 -L/usr/X11R6/lib64 -L/opt/mni_library/lib
-L/opt/vxl/build/lib-o mri_segment_ms mri_segment_ms.o
../utils/libutils.a ../fsgdf/libfsgdf.a ../rgb/librgb.a
../unix/libunix.a ../dicom/libdicom.a ../hipsstubs/libhipsstubs.a
../log/liblog.a ../xml2/libxml2.a ../jpeg/libjpeg.a ../tiff/libtiff.a
../expat/libexpat.a -lz -lm -lcrypt -ldl -lpthread -lnetcdf
-lvolume_io -lminc -lvnl_algo -lvnl -lvcl -lnetlib -lv3p_netlib
../libtool: line 469: CDPATH: command not found
libtool: Version mismatch error.  This is libtool 2.4.2
Debian-2.4.2-1.7ubuntu1, but the
libtool: definition of this LT_INIT comes from an older release.
libtool: You should recreate aclocal.m4 with macros from libtool 2.4.2
Debian-2.4.2-1.7ubuntu1
libtool: and run autoconf again.
make: *** [mri_segment_ms] Error 63

I have found lots of QAs regarding a similar problem over internet,
most of which suggest the user to run autoreconf -ivf. There is also a
comprehensive answer in Stackoverflow
(http://stackoverflow.com/questions/3096989/libtool-version-mismatch-error).
I have performed all the suggested steps, unfortunately the problem
persists. I was wondering whether anyone could give me a hint.

Thanks
Arman

___
https://lists.gnu.org/mailman/listinfo/libtool


libtool: lib: command not found

2014-09-05 Thread raziel
Hello,

I'm having some trouble cross building libraries from a Linux machine
(Debian/unstable) using mingw-w64, seem libtool is looking for a lib
command to generate a .lib library, but the command is missing and I
can't find it in any package (on stackoverflow I've seen for the same
problem on Windows is just a matter of adding the path
VC/bin to the env to let the command be found, but I suspect on Linux
the lib command doesn't exist at all and something else is wrong).

Here's a libzzip output example but I've the same problem with
another lib (I suspect any).

libtool: link: warning: undefined symbols not allowed in
i686-w64-mingw32 shared libraries
../libtool: line 1095: lib: command not found
Makefile:566: recipe for target 'libzzip.la' failed


Any suggestion?
Thanks in advance

___
https://lists.gnu.org/mailman/listinfo/libtool


Re: libtool: lib: command not found

2014-09-05 Thread Peter Rosin
Hi!

On 2014-09-05 13:28, raz...@eml.cc wrote:
 I'm having some trouble cross building libraries from a Linux machine
 (Debian/unstable) using mingw-w64, seem libtool is looking for a lib
 command to generate a .lib library, but the command is missing and I
 can't find it in any package (on stackoverflow I've seen for the same
 problem on Windows is just a matter of adding the path
 VC/bin to the env to let the command be found, but I suspect on Linux
 the lib command doesn't exist at all and something else is wrong).
 
 Here's a libzzip output example but I've the same problem with
 another lib (I suspect any).
 
 libtool: link: warning: undefined symbols not allowed in
 i686-w64-mingw32 shared libraries
 ../libtool: line 1095: lib: command not found
 Makefile:566: recipe for target 'libzzip.la' failed

You seem to have configured libzzip in such a way that it thinks it is
should be built with Microsoft tools. That may not be your fault, but
can we see the config.log file please?

The undefined symbols warning suggests that the project has not been
ported to Windows, or at least not the autotools build system.

Cheers,
Peter


___
https://lists.gnu.org/mailman/listinfo/libtool


Re: libtool: lib: command not found

2014-09-05 Thread raziel
Hi Peter, thank you

attacched the zzip config.log.

But the problem seem to be with any lib I try to cross build with
mingw and libtool, I wasn't sure the mail was sent to the mailing list
(usually I see immediatly the sent mail in mutt but not in this case)
so I've done a sort of cross posting *sorry* with a more generic case:

http://stackoverflow.com/questions/25687097/mingw-w64-libtool-lib-command-not-found

(attacched also this test config.log and the sources I'm using)

On Fri, Sep 05, 2014 at 04:21:33PM +0200, Peter Rosin wrote:
 Hi!
 
 On 2014-09-05 13:28, raz...@eml.cc wrote:
  I'm having some trouble cross building libraries from a Linux machine
  (Debian/unstable) using mingw-w64, seem libtool is looking for a lib
  command to generate a .lib library, but the command is missing and I
  can't find it in any package (on stackoverflow I've seen for the same
  problem on Windows is just a matter of adding the path
  VC/bin to the env to let the command be found, but I suspect on Linux
  the lib command doesn't exist at all and something else is wrong).
  
  Here's a libzzip output example but I've the same problem with
  another lib (I suspect any).
  
  libtool: link: warning: undefined symbols not allowed in
  i686-w64-mingw32 shared libraries
  ../libtool: line 1095: lib: command not found
  Makefile:566: recipe for target 'libzzip.la' failed
 
 You seem to have configured libzzip in such a way that it thinks it is
 should be built with Microsoft tools. That may not be your fault, but
 can we see the config.log file please?
 
 The undefined symbols warning suggests that the project has not been
 ported to Windows, or at least not the autotools build system.
 
 Cheers,
 Peter
 
 
 ___
 https://lists.gnu.org/mailman/listinfo/libtool
 


zzip-config.log.gz
Description: application/gzip


test-config.log.gz
Description: application/gzip


test2.tgz
Description: application/gtar-compressed
___
https://lists.gnu.org/mailman/listinfo/libtool


Re: libtool: lib: command not found

2014-09-05 Thread raziel
On Fri, Sep 05, 2014 at 05:05:52PM +0200, Peter Rosin wrote:
 On 2014-09-05 16:52, raz...@eml.cc wrote:
  Hi Peter, thank you
  
  attacched the zzip config.log.
 
 Bleh, sorry, but could you also provide the output from
 
   ./libtool --config
 
 from your build directory?

Attacched

dpkg -L *libtool*:
libtool 2.4.2-1.10
libtool-bin 2.4.2-1.10


test-libtool-config.gz
Description: application/gzip
___
https://lists.gnu.org/mailman/listinfo/libtool


Re: libtool: lib: command not found

2014-09-05 Thread Peter Rosin
On 2014-09-05 17:19, raz...@eml.cc wrote:
 On Fri, Sep 05, 2014 at 05:05:52PM +0200, Peter Rosin wrote:
 On 2014-09-05 16:52, raz...@eml.cc wrote:
 Hi Peter, thank you

 attacched the zzip config.log.

 Bleh, sorry, but could you also provide the output from

  ./libtool --config

 from your build directory?
 
 Attacched
 
 dpkg -L *libtool*:
 libtool 2.4.2-1.10
 libtool-bin 2.4.2-1.10

Ok, this is strange.

You have this in your libtool --config:

# Commands used to build an old-style archive.
old_archive_cmds=lib -OUT:\$oldlib\$oldobjs\$old_deplibs

Looking in the libtool.m4 file, the only way for lib -OUT...
to be chosen is

if test yes = $lt_use_gnu_ld_interface

doesn't match.


Your libtool --config also has:

# Whether we are building with GNU ld or not.
with_gnu_ld=no

which seems strange on Debian.

Looking in your config.log, I find

configure:4994: checking for ld used by i686-w64-mingw32-gcc
configure:5061: result: i686-w64-mingw32-g++-win32
configure:5068: checking if the linker (i686-w64-mingw32-g++-win32) is 
GNU ld
configure:5083: result: no

which is the cause of the above strangeness. What is the output from:

i686-w64-mingw32-g++-win32 -v

Libtool assumes that GNU ld produces something that matches:

*GNU* | *'with BFD'*

Cheers,
Peter


___
https://lists.gnu.org/mailman/listinfo/libtool


Re: libtool: lib: command not found

2014-09-05 Thread raziel
Thank you! Peter your comments pointed me in the right direction, CXX
and LD in the env seem to be not needed --host is enough, LT_INIT need
[win32-dll] and libexample_la_LDFLAGS need -no-undefined.

Got static and shared dll built.

Cheers

Alex

 Ok, this is strange.
 
 You have this in your libtool --config:
 
   # Commands used to build an old-style archive.
   old_archive_cmds=lib -OUT:\$oldlib\$oldobjs\$old_deplibs
 
 Looking in the libtool.m4 file, the only way for lib -OUT...
 to be chosen is
 
   if test yes = $lt_use_gnu_ld_interface
 
 doesn't match.
 
 
 Your libtool --config also has:
 
   # Whether we are building with GNU ld or not.
   with_gnu_ld=no
 
 which seems strange on Debian.
 
 Looking in your config.log, I find
 
   configure:4994: checking for ld used by i686-w64-mingw32-gcc
   configure:5061: result: i686-w64-mingw32-g++-win32
   configure:5068: checking if the linker (i686-w64-mingw32-g++-win32) is 
 GNU ld
   configure:5083: result: no
 
 which is the cause of the above strangeness. What is the output from:
 
   i686-w64-mingw32-g++-win32 -v


Using built-in specs.
COLLECT_GCC=i686-w64-mingw32-g++-win32
COLLECT_LTO_WRAPPER=/usr/lib/gcc/i686-w64-mingw32/4.9-win32/lto-wrapper
Target: i686-w64-mingw32
Configured with: ../../src/configure --build=i586-linux-gnu
--prefix=/usr --includedir='/usr/include' --mandir='/usr/share/man'
--infodir='/usr/share/info' --sysconfdir=/etc --localstatedir=/var
--libexecdir='/usr/lib/gcc-mingw-w64' --disable-maintainer-mode
--disable-dependency-tracking --prefix=/usr --enable-shared
--enable-static --disable-multilib --with-system-zlib
--libexecdir=/usr/lib --without-included-gettext --libdir=/usr/lib
--enable-libstdcxx-time=yes --with-tune=generic
--enable-version-specific-runtime-libs --enable-fully-dynamic-string
--enable-libgomp --enable-languages=c,c++,fortran,objc,obj-c++
--enable-lto --with-plugin-ld --enable-threads=win32
--program-suffix=-win32 --program-prefix=i686-w64-mingw32-
--target=i686-w64-mingw32 --with-as=/usr/bin/i686-w64-mingw32-as
--with-ld=/usr/bin/i686-w64-mingw32-ld
Thread model: win32
gcc version 4.9.1 (GCC) 


 Libtool assumes that GNU ld produces something that matches:
 
   *GNU* | *'with BFD'*
 
 Cheers,
 Peter
 

___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Trying to get libtool not to add -rpath, since libs are only in a staging directory

2014-08-25 Thread Filipe Brandenburger
Friendly ping?

+cc the libtool maintainers according to http://www.gnu.org/software/libtool/

If this is indeed a bug, I'd be willing to invest some time in trying
to fix it, but I'd need some pointers on what would be the proper way
to fix it...

I really think libtool should be creating a wrapper script and not a
binary with an rpath pointing to the stage directory, am I wrong?

Cheers,
Filipe


On Tue, Aug 19, 2014 at 4:33 PM, Filipe Brandenburger
filbran...@google.com wrote:
 Hi,

 I'm trying to link binaries to libraries that are not installed on the
 system, but just unpacked to a staging directory.

 Consider this (real) example:

 1) Build expat with --libdir=/usr/lib/${platform}
 2) Install expat with make install DESTDIR=${stagedir}
 3) Configure dbus with -L${stagedir}/usr/lib/${platform} where it
 will find expat now, and -rpath /usr/lib/${platform} where it will
 find expat at real runtime when both are installed.
 4) Build expat

 The problem is that ${stagedir} is leaking and the resulting
 dbus-daemon gets both /usr/lib/${platform} and
 ${stagedir}/usr/lib/${platform} added to it...

 I tried working around it by passing --with-sysroot=${stagedir} to the
 dbus configure, but unfortunately that didn't work...

 Do you have a suggestion of something I could do to accomplish what
 I'm trying to accomplish?

 Is this a libtool bug?

 Any suggestions of workarounds?

 (I also filed a bug at
 http://savannah.gnu.org/support/index.php?108637 in case this is
 actually a libtool bug.)

 Thanks in advance!
 Filipe

___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #108637] libtool adds -rpath to staging directory

2014-08-25 Thread anonymous
Follow-up Comment #1, sr #108637 (project libtool):

Small correction, step #4 should read Build dbus.

If someone could confirm this is indeed a bug and whether there's a good
workaround for it that would be great.

Thinking about it, my impression is that bintest should actually be a wrapper
shell script with the actual binary under .libs/bintest and make install
should possibly relink it without the rpath to the staging directory...

I'd be happy to contribute code, but I'd need some pointers on where the issue
is and what would be an acceptable way to fix this.

Thanks!
Filipe


___

Reply to this item at:

  http://savannah.gnu.org/support/?108637

___
  Message sent via/by Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Trying to get libtool not to add -rpath, since libs are only in a staging directory

2014-08-20 Thread Roumen Petrov

Hi Filipe,

Filipe Brandenburger wrote:

Hi,

I'm trying to link binaries to libraries that are not installed on the
system, but just unpacked to a staging directory.

[SNIP]


Is this a libtool bug?

Any suggestions of workarounds?

(I also filed a bug at
http://savannah.gnu.org/support/index.php?108637  in case this is
actually a libtool bug.)


Libtool exclude directories from RPATH if path is listed in 
sys_lib_dlsearch_path_spec - list of space separated directories.



Variable sys_lib_dlsearch_path_spec is generated from a libtool macro. 
On linux with FSF libtool version value start with /lib /usr/lib and 
existing directories from /etc/ld.so.conf .



After configuration user could check current value with command:
$ ./libtool --config | grep sys_lib_dlsearch_path_spec
( I assume that package build process generate libtool script in build 
directory )



You could use lt_cv_sys_lib_dlsearch_path_spec to override it at 
configure time.

.../configure  \
...
lt_cv_sys_lib_dlsearch_path_spec=ORIGINAL VALUE STAGING_PATH
...


Regards
Roumen Petrov


___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #108637] libtool adds -rpath to staging directory

2014-08-19 Thread anonymous
URL:
  http://savannah.gnu.org/support/?108637

 Summary: libtool adds -rpath to staging directory
 Project: GNU Libtool
Submitted by: None
Submitted on: Tue 19 Aug 2014 11:30:33 PM UTC
Category: None
Priority: 5 - Normal
Severity: 3 - Normal
  Status: None
 Privacy: Public
 Assigned to: None
Originator Email: filbran...@google.com
 Open/Closed: Open
 Discussion Lock: Any
Operating System: GNU/Linux

___

Details:

Hi,

I'm trying to link binaries to libraries that are not installed on the system,
but just unpacked to a staging directory.

Consider this (real) example:

1) Build expat with --libdir=/usr/lib/${platform}
2) Install expat with make install DESTDIR=${stagedir}
3) Configure dbus with -L${stagedir}/usr/lib/${platform} where it will find
expat now, and -rpath /usr/lib/${platform} where it will find expat at real
runtime when both are installed.
4) Build expat

The problem is that ${stagedir} is leaking and the resulting dbus-daemon gets
both /usr/lib/${platform} *and* ${stagedir}/usr/lib/${platform} added to
it...

I tried working around it by passing --with-sysroot=${stagedir} to the dbus
configure, but unfortunately that didn't work...

I wrote a small reproducer that seems to illustrate the issue, I tried it with
latest libtool from git (commit ac180507c123469d0fe9b25437d459af24b3f789) and
I still have the same problem.

$ libtool_rpath/reproduce.sh
...
=== RPATH of bintest:
 0x000f (RPATH)  Library rpath:
[/path/to/libtool_rpath/destdir/usr/lib/platform:/usr/lib/platform]

Do you have a suggestion of something I could do to accomplish what I'm trying
to accomplish?

Is this a libtool bug?

Any suggestions of workarounds?

Thanks!
Filipe




___

File Attachments:


---
Date: Tue 19 Aug 2014 11:30:33 PM UTC  Name: libtool_rpath.tgz  Size: 912B  
By: None
Script to reproduce this bug.
http://savannah.gnu.org/support/download.php?file_id=31921

___

Reply to this item at:

  http://savannah.gnu.org/support/?108637

___
  Message sent via/by Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


Trying to get libtool not to add -rpath, since libs are only in a staging directory

2014-08-19 Thread Filipe Brandenburger
Hi,

I'm trying to link binaries to libraries that are not installed on the
system, but just unpacked to a staging directory.

Consider this (real) example:

1) Build expat with --libdir=/usr/lib/${platform}
2) Install expat with make install DESTDIR=${stagedir}
3) Configure dbus with -L${stagedir}/usr/lib/${platform} where it
will find expat now, and -rpath /usr/lib/${platform} where it will
find expat at real runtime when both are installed.
4) Build expat

The problem is that ${stagedir} is leaking and the resulting
dbus-daemon gets both /usr/lib/${platform} and
${stagedir}/usr/lib/${platform} added to it...

I tried working around it by passing --with-sysroot=${stagedir} to the
dbus configure, but unfortunately that didn't work...

Do you have a suggestion of something I could do to accomplish what
I'm trying to accomplish?

Is this a libtool bug?

Any suggestions of workarounds?

(I also filed a bug at
http://savannah.gnu.org/support/index.php?108637 in case this is
actually a libtool bug.)

Thanks in advance!
Filipe

___
https://lists.gnu.org/mailman/listinfo/libtool


LibTool and Windows Server

2014-08-13 Thread Bryan Fulton
Hello,

One of our clients has LibTool installed on a server running Windows Server 
2003. We are planning to upgrade their server to Windows Server 2012. Is 
LibTools compatible with Windows Server 2012?

Thank you,

Bryan Fulton


[cid:cio_logo1fed64]

Bryan Fulton
JR Systems Administrator | bful...@cioservicesllc.com
606 North and South Rd | Suite 201 | Saint Louis, MO | 63130
314.414.8400 | www.cioservicesllc.com


For support requests, please email 
answ...@cioservicesllc.commailto:answ...@cioservicesllc.com
or call 314.414.8400.


___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Libtool and ASAN

2014-05-19 Thread Akim Demaille

Le 17 mai 2014 à 03:36, Peter Rosin p...@lysator.liu.se a écrit :

 Hi!

Hi Peter,

Thanks for the answer!

 My other libraries, which are not modules, are linked properly though.
 For instance (the only relevant part is that -fsanitize is not stripped
 from the command passed to the linker):
 
 This part I don't understand, is there perhaps a -fsanitize in one of the
 dependent .la files?

Yes, probably.  I've not looked into the details to
know what has happened though.

 Thanks for reading (the English parts of this message :)!
 
 This last part is an FAQ:
 
 http://www.gnu.org/software/libtool/manual/libtool.html#FAQ

Bummer, that's even the only FAQ :)  I would suggest adding
common dropped options in there, such as -f, so that a
search would find it.

Thanks again.
___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Libtool and ASAN

2014-05-16 Thread Peter Rosin
Hi!

On 2014-04-28 17:45, Akim Demaille wrote:
 I'm trying to use -fsanitize=address on OS X using MacPorts' Clang++ 3.5.
 The project consists of C++ libraries, on top of which is built a Python
 module (with a thin C++ layer which needs to be compiled).  Libtool
 (2.4.2 - the name of a fine belgian band of electronic music btw)
 is used in all layers.
 
 To enable ASAN, I add '-fsanitize=address' to my CXXFLAGS.  It works well
 except for the C++ part of the Python module:

*snip*

 What matters here is that -fsanitize=address is dropped, it is
 not passed to the linker.  And I really need it:

*snap*

 I have to use -Wc to force Libtool to pass it to the compiler used
 to link (I must not use -Wl, because then it is passed to the linker
 invoked by the compiler, and the linker rejects -fsanitize).

*snep*

 My other libraries, which are not modules, are linked properly though.
 For instance (the only relevant part is that -fsanitize is not stripped
 from the command passed to the linker):

This part I don't understand, is there perhaps a -fsanitize in one of the
dependent .la files?

*snyp*

 So what should I do?  Am I doing something wrong?  I'd like to avoid
 having to teach my package to configure itself with ASAN and the others,
 it should remain only a question of passing appropriate CXXFLAGS
 and other LDFLAGS to configure.
 
 Why does libtool strip these -f?  I could not find any instruction
 about this in the documentation.
 
 Thanks for reading (the English parts of this message :)!

This last part is an FAQ:

http://www.gnu.org/software/libtool/manual/libtool.html#FAQ

Cheers,
Peter


___
https://lists.gnu.org/mailman/listinfo/libtool


[SCM] GNU Libtool branch, master, updated. v2.4.2.444-31-g13aa364

2014-05-09 Thread Peter Rosin
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  13aa364c0c66f9f6b41f98772d0735039ac974a1 (commit)
  from  da30ce4dc9554c80f1931600af2b8bbab486476e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit 13aa364c0c66f9f6b41f98772d0735039ac974a1
Author: Peter Rosin p...@lysator.liu.se
Date:   Tue May 6 10:11:34 2014 +0200

libtool: fix nm test for MSYS/MinGW

The check for the -B option of nm does not work as intended on MSYS/MinGW.
MSYS converts /dev/null to the DOW/Windows equivanent special file NUL,
but the MinGW nm treats this file as any empty file. This means that
you might end up with some fallback nm instead of the desired nm. This
is not normally a problem, but if one nm is built without lto support, it
starts to matter.

Fixes sr #108558, reported by LRN.

* m4/libtool.m4 (LT_PATH_NM) [MSYS]: Use a non-existant file instead of
/dev/null when checking if nm supports -B.

Signed-off-by: Peter Rosin p...@lysator.liu.se

---

Summary of changes:
 m4/libtool.m4 |9 +++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/m4/libtool.m4 b/m4/libtool.m4
index 0454030..320d8b3 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -3509,8 +3509,13 @@ else
# Adding the 'sed 1q' prevents false positives on HP-UX, which says:
#   nm: unknown option B ignored
# Tru64's nm complains that /dev/null is an invalid object file
-   case `$tmp_nm -B /dev/null 21 | sed '1q'` in
-   */dev/null* | *'Invalid file or object type'*)
+   # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
+   case $build_os in
+   mingw*) lt_bad_file=conftest.nm/nofile ;;
+   *) lt_bad_file=/dev/null ;;
+   esac
+   case `$tmp_nm -B $lt_bad_file 21 | sed '1q'` in
+   *$lt_bad_file* | *'Invalid file or object type'*)
  lt_cv_path_NM=$tmp_nm -B
  break 2
  ;;


hooks/post-receive
-- 
GNU Libtool



[sr #108558] libtool nm test does not really work for W32 versions of nm

2014-05-09 Thread Peter Rosin
Update of sr #108558 (project libtool):

  Status:None = Done   

___

Follow-up Comment #10:

Patch pushed.

Cheers,
Peter


___

Reply to this item at:

  http://savannah.gnu.org/support/?108558

___
  Meddelandet skickades via/av Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


[SCM] GNU Libtool branch, master, updated. v2.4.2.444-30-gda30ce4

2014-05-06 Thread Peter Rosin
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  da30ce4dc9554c80f1931600af2b8bbab486476e (commit)
  from  5911665520a53415bafd8bb6da9989b5fe25df80 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit da30ce4dc9554c80f1931600af2b8bbab486476e
Author: Peter Rosin p...@lysator.liu.se
Date:   Tue May 6 00:03:19 2014 +0200

libtool: speed up ltwrapper_script detection in execute mode

Execute mode is slow and might even DOS the computer in extreme
cases when a parameter is a big binary file without newlines.
Work around this with different truncation if a suitable dd
utility is found.

Fixes bug#13472 and bug#16662.

Reported by Pavel Raiskup and Nick Bowler.

* m4/libtool.m4 (_LT_PATH_DD): New macro, for finding a dd utility
that works for the below purpose.
(_LT_CMD_TRUNCATE): New macro, for finding out how to truncate binary
pipes (fallback to the old sed truncation if no suitable dd is found
in _LT_PATH_DD).
(_LT_SETUP): Require _LT_CMD_TRUNCATE.
(LT_INIT): Require Autoconf 2.62, as needed by _LT_PATH_DD.
* build_aux/ltmain.in (func_lalib_p): Factor out the actual generated
by libtool test into...
(func_generated_by_libtool_p): ...this new function...
(func_ltwrapper_script_p): ...so that it can be reused here, when
truncating the pipe according to _LT_CMD_TRUNCATE.
* THANKS: Update.

Signed-off-by: Peter Rosin p...@lysator.liu.se

---

Summary of changes:
 THANKS  |2 ++
 build-aux/ltmain.in |   14 +++---
 m4/libtool.m4   |   40 +++-
 3 files changed, 52 insertions(+), 4 deletions(-)

diff --git a/THANKS b/THANKS
index e895aee..85c5150 100644
--- a/THANKS
+++ b/THANKS
@@ -150,6 +150,7 @@
   Mike Gorchak m...@malva.ua
   Mike Frysinger   vap...@gentoo.org
   Mike Miller  mtmil...@ieee.org
+  Nick Bowler  nbow...@draconx.ca
   Nix  n...@esperi.org.uk
   Olaf Lenzol...@fias.uni-frankfurt.de
   Olly Betts   o...@muscat.co.uk
@@ -161,6 +162,7 @@
   Paul Eggert  egg...@twinsun.com
   Paul Laight  plai...@quantxautomation.co.uk
   Paul Seidler se...@lavabit.com
+  Pavel Raiskupprais...@redhat.com
   Paweł Daniluk   pa...@bioexploratorium.pl
   Peter Eisentraut pete...@gmx.net
   Peter Fritzsche  peter.fritzs...@gmx.de
diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index 3a0fb0c..6af4087 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -570,6 +570,14 @@ $1
 _LTECHO_EOF'
 }
 
+# func_generated_by_libtool
+# True iff stdin has been generated by Libtool. This function is only
+# a basic sanity check; it will hardly flush out determined imposters.
+func_generated_by_libtool_p ()
+{
+  $GREP ^# Generated by .*$PACKAGE  /dev/null 21
+}
+
 # func_lalib_p file
 # True iff FILE is a libtool '.la' library or '.lo' object file.
 # This function is only a basic sanity check; it will hardly flush out
@@ -577,8 +585,7 @@ _LTECHO_EOF'
 func_lalib_p ()
 {
 test -f $1 
-  $SED -e 4q $1 2/dev/null \
-| $GREP ^# Generated by .*$PACKAGE  /dev/null 21
+  $SED -e 4q $1 2/dev/null | func_generated_by_libtool_p
 }
 
 # func_lalib_unsafe_p file
@@ -610,7 +617,8 @@ func_lalib_unsafe_p ()
 # determined imposters.
 func_ltwrapper_script_p ()
 {
-func_lalib_p $1
+test -f $1 
+  $lt_truncate_bin  $1 2/dev/null | func_generated_by_libtool_p
 }
 
 # func_ltwrapper_executable_p file
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index ce58f31..0454030 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -59,7 +59,7 @@ esac
 # LT_INIT([OPTIONS])
 # --
 AC_DEFUN([LT_INIT],
-[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
+[AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK
 AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
 AC_BEFORE([$0], [LT_LANG])dnl
 AC_BEFORE([$0], [LT_OUTPUT])dnl
@@ -169,6 +169,7 @@ m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
 m4_require([_LT_CMD_OLD_ARCHIVE])dnl
 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
 m4_require([_LT_WITH_SYSROOT])dnl
+m4_require([_LT_CMD_TRUNCATE])dnl
 
 _LT_CONFIG_LIBTOOL_INIT([
 # See if we are running on zsh, and set the options that allow our
@@ -3216,6 +3217,43 @@ _LT_TAGDECL([], [reload_cmds], [2])dnl
 ])# _LT_CMD_RELOAD
 
 
+# _LT_PATH_DD
+# ---
+# find a working dd
+m4_defun([_LT_PATH_DD

Re: [sr #108558] libtool nm test does not really work for W32 versions of nm

2014-05-06 Thread Peter Rosin
On 2014-05-06 15:30, Peter Rosin wrote:
 Follow-up Comment #8, sr #108558 (project libtool):
 
 I have attached a patch that does the safe-safe-safe version.
 Does it work for you?

*snip*

   http://savannah.gnu.org/support/?108558

To not force everyone to follow the link, here's the patch
in question.

Cheers,
Peter

From 13aa364c0c66f9f6b41f98772d0735039ac974a1 Mon Sep 17 00:00:00 2001
From: Peter Rosin p...@lysator.liu.se
Date: Tue, 6 May 2014 10:11:34 +0200
Subject: [PATCH] libtool: fix nm test for MSYS/MinGW

The check for the -B option of nm does not work as intended on MSYS/MinGW.
MSYS converts /dev/null to the DOW/Windows equivanent special file NUL,
but the MinGW nm treats this file as any empty file. This means that
you might end up with some fallback nm instead of the desired nm. This
is not normally a problem, but if one nm is built without lto support, it
starts to matter.

Fixes sr #108558, reported by LRN.

* m4/libtool.m4 (LT_PATH_NM) [MSYS]: Use a non-existant file instead of
/dev/null when checking if nm supports -B.

Signed-off-by: Peter Rosin p...@lysator.liu.se
---
 m4/libtool.m4 |9 +++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/m4/libtool.m4 b/m4/libtool.m4
index 0454030..320d8b3 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -3509,8 +3509,13 @@ else
 	# Adding the 'sed 1q' prevents false positives on HP-UX, which says:
 	#   nm: unknown option B ignored
 	# Tru64's nm complains that /dev/null is an invalid object file
-	case `$tmp_nm -B /dev/null 21 | sed '1q'` in
-	*/dev/null* | *'Invalid file or object type'*)
+	# MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
+	case $build_os in
+	mingw*) lt_bad_file=conftest.nm/nofile ;;
+	*) lt_bad_file=/dev/null ;;
+	esac
+	case `$tmp_nm -B $lt_bad_file 21 | sed '1q'` in
+	*$lt_bad_file* | *'Invalid file or object type'*)
 	  lt_cv_path_NM=$tmp_nm -B
 	  break 2
 	  ;;
-- 
1.7.9



[sr #108558] libtool nm test does not really work for W32 versions of nm

2014-05-06 Thread Peter Rosin
Follow-up Comment #8, sr #108558 (project libtool):

I have attached a patch that does the safe-safe-safe version.
Does it work for you?

Cheers,
Peter

(file #31318)
___

Additional Item Attachment:

File name: 0001-libtool-fix-nm-test-for-MSYS-MinGW.patch Size:1 KB


___

Reply to this item at:

  http://savannah.gnu.org/support/?108558

___
  Meddelandet skickades via/av Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #108558] libtool nm test does not really work for W32 versions of nm

2014-05-06 Thread LRN
Follow-up Comment #9, sr #108558 (project libtool):

 I have attached a patch that does the safe-safe-safe version.
 Does it work for you? 

Yes, it seems that it does.

___

Reply to this item at:

  http://savannah.gnu.org/support/?108558

___
  Message sent via/by Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


Re: [sr #108558] libtool nm test does not really work for W32 versions of nm

2014-05-06 Thread Peter Rosin
On 2014-05-06 15:30, Peter Rosin wrote:
 Follow-up Comment #8, sr #108558 (project libtool):
 
 I have attached a patch that does the safe-safe-safe version.
 Does it work for you?

*snip*

   http://savannah.gnu.org/support/?108558

To not force everyone to follow the link, here's the patch
in question.

Cheers,
Peter

From 13aa364c0c66f9f6b41f98772d0735039ac974a1 Mon Sep 17 00:00:00 2001
From: Peter Rosin p...@lysator.liu.se
Date: Tue, 6 May 2014 10:11:34 +0200
Subject: [PATCH] libtool: fix nm test for MSYS/MinGW

The check for the -B option of nm does not work as intended on MSYS/MinGW.
MSYS converts /dev/null to the DOW/Windows equivanent special file NUL,
but the MinGW nm treats this file as any empty file. This means that
you might end up with some fallback nm instead of the desired nm. This
is not normally a problem, but if one nm is built without lto support, it
starts to matter.

Fixes sr #108558, reported by LRN.

* m4/libtool.m4 (LT_PATH_NM) [MSYS]: Use a non-existant file instead of
/dev/null when checking if nm supports -B.

Signed-off-by: Peter Rosin p...@lysator.liu.se
---
 m4/libtool.m4 |9 +++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/m4/libtool.m4 b/m4/libtool.m4
index 0454030..320d8b3 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -3509,8 +3509,13 @@ else
 	# Adding the 'sed 1q' prevents false positives on HP-UX, which says:
 	#   nm: unknown option B ignored
 	# Tru64's nm complains that /dev/null is an invalid object file
-	case `$tmp_nm -B /dev/null 21 | sed '1q'` in
-	*/dev/null* | *'Invalid file or object type'*)
+	# MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
+	case $build_os in
+	mingw*) lt_bad_file=conftest.nm/nofile ;;
+	*) lt_bad_file=/dev/null ;;
+	esac
+	case `$tmp_nm -B $lt_bad_file 21 | sed '1q'` in
+	*$lt_bad_file* | *'Invalid file or object type'*)
 	  lt_cv_path_NM=$tmp_nm -B
 	  break 2
 	  ;;
-- 
1.7.9

___
https://lists.gnu.org/mailman/listinfo/libtool


[SCM] GNU Libtool branch, master, updated. v2.4.2.444-29-g5911665

2014-05-02 Thread Peter Rosin
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  5911665520a53415bafd8bb6da9989b5fe25df80 (commit)
  from  053df7eb31d21c6d6dbe54c44f42009efec9d0c9 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit 5911665520a53415bafd8bb6da9989b5fe25df80
Author: Peter Rosin p...@lysator.liu.se
Date:   Fri May 2 14:51:02 2014 +0200

libtool: prevent lto from stripping the magic cookie from the cwrapper

Whole program optimization may remove unused symbols unless told they
are really needed. Fixes sr #108559 reported by LRN.

* build-aux/ltmain.in (func_emit_cwrapperexe_src:MAGIC_EXE): Try to ensure
that the magic cookie is preserved.

Signed-off-by: Peter Rosin p...@lysator.liu.se

---

Summary of changes:
 build-aux/ltmain.in |7 ++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index f8e0f5f..3a0fb0c 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -3738,7 +3738,12 @@ void lt_dump_script (FILE *f);
 EOF
 
cat EOF
-volatile const char * MAGIC_EXE = $magic_exe;
+#if __GNUC__  4 || (__GNUC__ == 4  __GNUC_MINOR__  5)
+# define externally_visible volatile
+#else
+# define externally_visible __attribute__((externally_visible)) volatile
+#endif
+externally_visible const char * MAGIC_EXE = $magic_exe;
 const char * LIB_PATH_VARNAME = $shlibpath_var;
 EOF
 


hooks/post-receive
-- 
GNU Libtool



[sr #108558] libtool nm test does not really work for W32 versions of nm

2014-05-02 Thread Peter Rosin
Follow-up Comment #1, sr #108558 (project libtool):

Thanks for the report.

Just a quick note, Cygwin is not affected. This happens on
MSYS/MinGW only. On Cygwin, the Windows (or should I say DOS?)
NUL device is never involved.

cygwin$ /bin/nm -B /dev/null
/bin/nm: Warning: '/dev/null' is not an ordinary file
cygwin$ /bin/i686-pc-mingw32-nm -B /dev/null
/bin/i686-pc-mingw32-nm: Warning: '/dev/null' is not an ordinary file

If you have native MinGW tools and run libtool from Cygwin
(i.e. if you are using a 'fake' or 'lying' cross setup, as
described in the libtool manual), the test check succeeds
like this:

cygwin$ /cygdrive/c/MinGW/mingw/bin/nm -B /dev/null
C:\mingw\bin\nm.exe: '/dev/null': No such file

But you are quite correct that the test falls over on MSYS:

msys$ /mingw/bin/nm -B /dev/null
msys$ echo $?
1

It would be easier to work around this if the native MinGW nm
reported some kind of error message involving 'NUL', so that
the case pattern could be extended. Granted, that would not fix
the bug for old tool chains, but the bug has existed for a very
long time and you can always work around it with an explicit
NM=... The alternative is for libtool use some other non-existant
or otherwise special file on MSYS, when it is trying to work out
if nm supports -B. I don't know what that file would be though,
and it always feels a little bit icky to special case things.

Cheers,
Peter

___

Reply to this item at:

  http://savannah.gnu.org/support/?108558

___
  Meddelandet skickades via/av Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #108558] libtool nm test does not really work for W32 versions of nm

2014-05-02 Thread LRN
Follow-up Comment #2, sr #108558 (project libtool):

I was not aware of the extent to which Cygwin is mangling
commandlines of pure-W32 programs it runs (since i don't
really use Cygwin; i do know it does some kind of conversion;
apparently, only in one direction). Evidently, it does not
replace /dev/null with nul. In which case - yes, this only
affects MSYS.

 It would be easier to work around this if the native MinGW nm
 reported some kind of error message involving 'NUL', so that
 the case pattern could be extended.
I can come up with a fix for binutils. However, upstreaming it
would be difficult, i expect. In fact i did make a patch: right
now my hack makes it open the file, feed the fd to isatty(), and if
it turns to not to be a real file, it checks whether its name
is nul and replaces that with /dev/null, so the script gets
the output it expects. As you may imagine, this is never going to
be accepted upstream.

The isatty() part might be acceptable (though i expect someone
to point out that opening files may be a performance hit), and
in that case libtool can just check for 'nul'.

 Granted, that would not fix
 the bug for old tool chains, but the bug has existed for a very
 long time and you can always work around it with an explicit
 NM=...
Yes. Not only NM=..., but you can also let it fall back to
*-pc-msys-nm, which totally worked, and may even continue to
work for most users (which have matching MSYS and MinGW toolchains).

 The alternative is for libtool use some other non-existant
 or otherwise special file on MSYS, when it is trying to work out
 if nm supports -B. I don't know what that file would be though,
 and it always feels a little bit icky to special case things. 

Well, in MSYS2 you can simply do:
nm -B /dev/thisfilebetternotexistotherwiseyoullbeintrouble
and get satisfactory results (file name and 'No such file'
in the output).

Can't say anything about MSYS1, haven't used it for some time.

___

Reply to this item at:

  http://savannah.gnu.org/support/?108558

___
  Message sent via/by Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #108558] libtool nm test does not really work for W32 versions of nm

2014-05-02 Thread Peter Rosin
Follow-up Comment #3, sr #108558 (project libtool):

 Well, in MSYS2 you can simply do:
 nm -B /dev/thisfilebetternotexistotherwiseyoullbeintrouble
 and get satisfactory results (file name and 'No such file'
 in the output).

 Can't say anything about MSYS1, haven't used it for some time.

That would also work on MSYS1.

However, I had an idea. Anyone against using
 $tmp_nm -B ///dev/null
everywhere? ///foo and /foo should be equivalent according to
Posix. We should still check for /dev/null in the output,
methinks...

Cheers,
Peter


___

Reply to this item at:

  http://savannah.gnu.org/support/?108558

___
  Meddelandet skickades via/av Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #108559] libtool binary wrappers fall prey to aggressive optimizations

2014-05-02 Thread Peter Rosin
Follow-up Comment #1, sr #108559 (project libtool):

Isn't this a more direct approach, not affected by new and even
more aggressive optimizations?

-volatile const char * MAGIC_EXE = $magic_exe;
+#if __GNUC__  4 || (__GNUC__ == 4  __GNUC_MINOR__  5)
+# define externally_visible volatile
+#else
+# define externally_visible __attribute__((externally_visible)) volatile
+#endif
+externally_visible const char * MAGIC_EXE = $magic_exe;

Does the above work for you?

Cheers,
Peter

___

Reply to this item at:

  http://savannah.gnu.org/support/?108559

___
  Meddelandet skickades via/av Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #108558] libtool nm test does not really work for W32 versions of nm

2014-05-02 Thread LRN
Follow-up Comment #4, sr #108558 (project libtool):

 Well, in MSYS2 you can simply do:
 nm -B /dev/thisfilebetternotexistotherwiseyoullbeintrouble
 and get satisfactory results (file name and 'No such file'
 in the output).


 Can't say anything about MSYS1, haven't used it for some time.


 That would also work on MSYS1.

 However, I had an idea. Anyone against using
 $tmp_nm -B ///dev/null
 everywhere? ///foo and /foo should be equivalent according to
 Posix. We should still check for /dev/null in the output,
 methinks... 

Neat! I like that.

___

Reply to this item at:

  http://savannah.gnu.org/support/?108558

___
  Message sent via/by Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #108559] libtool binary wrappers fall prey to aggressive optimizations

2014-05-02 Thread LRN
Follow-up Comment #2, sr #108559 (project libtool):

Yeah, that worked

___

Reply to this item at:

  http://savannah.gnu.org/support/?108559

___
  Message sent via/by Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #108559] libtool binary wrappers fall prey to aggressive optimizations

2014-05-02 Thread Peter Rosin
Update of sr #108559 (project libtool):

  Status:None = Done   

___

Follow-up Comment #3:

I have now pushed this change, thanks for testing!

Cheers,
Peter


___

Reply to this item at:

  http://savannah.gnu.org/support/?108559

___
  Meddelandet skickades via/av Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #108558] libtool nm test does not really work for W32 versions of nm

2014-05-02 Thread Peter Rosin
Follow-up Comment #5, sr #108558 (project libtool):

Hmm, on second thought, that depends on MSYS (and MSYS2) still
thinking that an argument starting with more than two slashes
is a UNC path (or a switch). That might change if someone
points out that ///foo and /foo should be equivalent and that
Posix only considers //foo special and that command line
switches starting with /// are really uncommon... Relying on
corner cases in the MSYS argument conversion heuristics does
not seem to be a very good idea...

But maybe it's the best option anyway?

Maybe use dev/null, to handle a future MSYS stripping one
leading slash as it currently does for command line switches?

Then again, accidentally (or otherwise) creating an empty
C:\dev\null file does not seem totally unlikely, so maybe
using dev/null isn't so bright after all...

Crap.

Cheers,
Peter


___

Reply to this item at:

  http://savannah.gnu.org/support/?108558

___
  Meddelandet skickades via/av Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #108558] libtool nm test does not really work for W32 versions of nm

2014-05-02 Thread LRN
Follow-up Comment #6, sr #108558 (project libtool):

 Crap. 

How about just opening a file that is known to not to exist?

Alternatively, give nm a real file that is at least 1 byte long (binutils nm
checks for filesize being  1 and fails quietly; having 1 byte makes it say
filename (which is what we want) and File truncated).

___

Reply to this item at:

  http://savannah.gnu.org/support/?108558

___
  Message sent via/by Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #108558] libtool nm test does not really work for W32 versions of nm

2014-05-02 Thread Peter Rosin
Follow-up Comment #7, sr #108558 (project libtool):

Ok, something like this seems safer:

mkdir conftest.dir
case `$tmp_nm -B conftest.dir/nofile` in
*conftest.dir/nofile*)
blablabla
esac
rm -rf conftest.dir

But I don't know how non-GNU nm behaves, so the safe-safe-safe
version only does the above on MSYS...

Crap again.

Cheers,
Peter


___

Reply to this item at:

  http://savannah.gnu.org/support/?108558

___
  Meddelandet skickades via/av Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #107959] Libtool generates invalid .def files

2014-05-02 Thread Peter Rosin
Update of sr #107959 (project libtool):

  Status:None = Done   

___

Follow-up Comment #1:

Fixed a while ago by commit a5a4944fbb2bbd20adb12b.

Cheers,
Peter


___

Reply to this item at:

  http://savannah.gnu.org/support/?107959

___
  Meddelandet skickades via/av Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #108558] libtool nm test does not really work for W32 versions of nm

2014-05-01 Thread LRN
URL:
  http://savannah.gnu.org/support/?108558

 Summary: libtool nm test does not really work for W32
versions of nm
 Project: GNU Libtool
Submitted by: lrn
Submitted on: Fri 02 May 2014 05:10:04 AM GMT
Category: None
Priority: 5 - Normal
Severity: 3 - Normal
  Status: None
 Privacy: Public
 Assigned to: None
Originator Email: 
 Open/Closed: Open
 Discussion Lock: Any
Operating System: Microsoft Windows

___

Details:

libtool.m4 contains the following code:

# Check to see if the nm accepts a BSD-compat flag.
# Adding the 'sed 1q' prevents false positives on HP-UX, which says:
#   nm: unknown option B ignored
# Tru64's nm complains that /dev/null is an invalid object file
case `$tmp_nm -B /dev/null 21 | sed '1q'` in
*/dev/null* | *'Invalid file or object type'*)
  lt_cv_path_NM=$tmp_nm -B
  break 2
  ;;
*)
  case `$tmp_nm -p /dev/null 21 | sed '1q'` in
  */dev/null*)
lt_cv_path_NM=$tmp_nm -p
break 2
;;
  *)
lt_cv_path_NM=${lt_cv_path_NM=$tmp_nm} # keep the first match, but
continue # so that we can try to find one that supports BSD flags
;;
  esac
  ;;
esac

This does not work if `nm' in question is built for W32, because `/dev/null'
gets mangled into `nul', and `nul' does not behave the same way (it can be
stat()'ed successfully and looks like a zero-size file to stat()).
Even if binutils are patched to do a more thorough check (for example, stricmp
(file_name, nul) or  isatty(open (file_name, ...))), the file name
reported in the error message is `nul', not `/dev/null', so the case statement
here won't match.

AFAIU, this bug is as old as this code (which, i guess, makes it quite old),
but it was masked by the fact that /usr/bin/nm (MSYS/Cygwin nm) does pass this
test, and it's sufficiently compatible (for the purpose of parsing object
files) for this not to matter.

Things start to blow up when MinGW nm and MSYS/Cygwin nm are not completely
compatible (for example, when MinGW binutils and gcc are built with LTO
support, and MSYS/Cygwin binutilsgcc are not).




___

Reply to this item at:

  http://savannah.gnu.org/support/?108558

___
  Message sent via/by Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


[sr #108559] libtool binary wrappers fall prey to aggressive optimizations

2014-05-01 Thread LRN
URL:
  http://savannah.gnu.org/support/?108559

 Summary: libtool binary wrappers fall prey to aggressive
optimizations
 Project: GNU Libtool
Submitted by: lrn
Submitted on: Fri 02 May 2014 05:16:44 AM GMT
Category: None
Priority: 5 - Normal
Severity: 3 - Normal
  Status: None
 Privacy: Public
 Assigned to: None
Originator Email: 
 Open/Closed: Open
 Discussion Lock: Any
Operating System: None

___

Details:

When building binary wrappers (say, for W32), libtool puts a MAGIC constant
string into them. Later on libtool greps the program for this string to see
whether this is a wrapper or a real program.

However, MAGIC string is not used in the program in any way, and gcc may
remove it. This does happen when building with -flto.

My proposal would be to make use of the string somehow to fool gcc into
leaving it alone. For example, this call:

   lt_fatal (__FILE__, __LINE__,
unrecognized %s option: '%s',
ltwrapper_option_prefix, argv[i]);

can be changed like this:

   lt_fatal (__FILE__, __LINE__,
unrecognized %s option: '%s'\0%s,
ltwrapper_option_prefix, argv[i], MAGIC_EXE);





___

Reply to this item at:

  http://savannah.gnu.org/support/?108559

___
  Message sent via/by Savannah
  http://savannah.gnu.org/


___
https://lists.gnu.org/mailman/listinfo/libtool


Libtool and ASAN

2014-04-28 Thread Akim Demaille
Hi friends,

I'm trying to use -fsanitize=address on OS X using MacPorts' Clang++ 3.5.
The project consists of C++ libraries, on top of which is built a Python
module (with a thin C++ layer which needs to be compiled).  Libtool
(2.4.2 - the name of a fine belgian band of electronic music btw)
is used in all layers.

To enable ASAN, I add '-fsanitize=address' to my CXXFLAGS.  It works well
except for the C++ part of the Python module:

 akim@erebus ~/src/lrde/vaucanson2 $ make -C _build/35d python/vcsn_cxx.la V=1
 /bin/sh ./libtool  --tag=CXX   --mode=link ccache clang++-mp-3.5 -Wall 
 -Wextra -Wcast-align -Wcast-qual -Wdocumentation -Wformat 
 -Wmissing-declarations -Wno-parentheses -Woverloaded-virtual -Wpointer-arith 
 -Wwrite-strings  -Qunused-arguments -ggdb -fsanitize=address -std=c++11 
 -avoid-version -module -L/opt/local/lib -Wl,-rpath,/opt/local/lib 
 -L/opt/local/lib -o python/vcsn_cxx.la -rpath 
 /opt/gostai/lib/python2.7/site-packages python/python_vcsn_cxx_la-vcsn_cxx.lo 
 -lboost_python-mt lib/liblal_char_b.la lib/liblal_char_br.la 
 lib/liblal_char_q.la lib/liblal_char_r.la lib/liblal_char_z.la 
 lib/liblal_char_zr.la lib/liblal_char_zrr.la lib/liblan_char_b.la 
 lib/liblan_char_r.la lib/liblan_char_z.la lib/liblan_char_zr.la 
 lib/liblao_br.la lib/liblao_z.la lib/liblaw_char_b.la lib/liblaw_char_br.la 
 lib/liblaw_char_r.la lib/liblaw_char_z.la lib/liblaw_char_zr.la 
 lib/liblaw_char_zrr.la lib/libvcsn.la 
 libtool: link: rm -fr  python/.libs/vcsn_cxx.la python/.libs/vcsn_cxx.lai 
 python/.libs/vcsn_cxx.so
 libtool: link: ccache clang++-mp-3.5 -Wl,-undefined -Wl,dynamic_lookup -o 
 python/.libs/vcsn_cxx.so -bundle  python/.libs/python_vcsn_cxx_la-vcsn_cxx.o  
  -L/opt/local/lib -lboost_python-mt lib/.libs/liblal_char_b.dylib 
 lib/.libs/liblal_char_br.dylib lib/.libs/liblal_char_q.dylib 
 lib/.libs/liblal_char_r.dylib lib/.libs/liblal_char_z.dylib 
 lib/.libs/liblal_char_zr.dylib lib/.libs/liblal_char_zrr.dylib 
 lib/.libs/liblan_char_b.dylib lib/.libs/liblan_char_r.dylib 
 lib/.libs/liblan_char_z.dylib lib/.libs/liblan_char_zr.dylib 
 lib/.libs/liblao_br.dylib lib/.libs/liblao_z.dylib 
 lib/.libs/liblaw_char_b.dylib lib/.libs/liblaw_char_br.dylib 
 lib/.libs/liblaw_char_r.dylib lib/.libs/liblaw_char_z.dylib 
 lib/.libs/liblaw_char_zr.dylib lib/.libs/liblaw_char_zrr.dylib 
 lib/.libs/libvcsn.dylib -lboost_filesystem-mt -lboost_system-mt -lltdl  
 -Wl,-rpath -Wl,/opt/local/lib  
 libtool: link: ( cd python/.libs  rm -f vcsn_cxx.la  ln -s 
 ../vcsn_cxx.la vcsn_cxx.la )

What matters here is that -fsanitize=address is dropped, it is
not passed to the linker.  And I really need it:

 akim@erebus ~/src/lrde/vaucanson2 $ ./_build/35d/tests/bin/vcsn -e python -c 
 'import vcsn'
 Traceback (most recent call last):
   File string, line 1, in module
   File /Users/akim/src/lrde/vaucanson2/python/vcsn/__init__.py, line 4, in 
 module
 from vcsn_cxx import *
 ImportError: 
 dlopen(/Users/akim/src/lrde/vaucanson2/_build/35d/python/.libs/vcsn_cxx.so, 
 2): Symbol not found: ___asan_option_detect_stack_use_after_return
   Referenced from: 
 /Users/akim/src/lrde/vaucanson2/_build/35d/lib/.libs/liblal_char_b.0.dylib
   Expected in: flat namespace
  in /Users/akim/src/lrde/vaucanson2/_build/35d/lib/.libs/liblal_char_b.0.dylib

I have to use -Wc to force Libtool to pass it to the compiler used
to link (I must not use -Wl, because then it is passed to the linker
invoked by the compiler, and the linker rejects -fsanitize).

 akim@erebus ~/src/lrde/vaucanson2/_build/35d $ /bin/sh ./libtool  --tag=CXX   
 --mode=link ccache clang++-mp-3.5 -Wall -Wextra -Wcast-align -Wcast-qual 
 -Wdocumentation -Wformat -Wmissing-declarations -Wno-parentheses 
 -Woverloaded-virtual -Wpointer-arith -Wwrite-strings  -Qunused-arguments 
 -ggdb -Wc,-fsanitize=address -std=c++11 -avoid-version -module 
 -L/opt/local/lib -Wl,-rpath,/opt/local/lib -L/opt/local/lib -o 
 python/vcsn_cxx.la -rpath /opt/gostai/lib/python2.7/site-packages 
 python/python_vcsn_cxx_la-vcsn_cxx.lo -lboost_python-mt lib/liblal_char_b.la 
 lib/liblal_char_br.la lib/liblal_char_q.la lib/liblal_char_r.la 
 lib/liblal_char_z.la lib/liblal_char_zr.la lib/liblal_char_zrr.la 
 lib/liblan_char_b.la lib/liblan_char_r.la lib/liblan_char_z.la 
 lib/liblan_char_zr.la lib/liblao_br.la lib/liblao_z.la lib/liblaw_char_b.la 
 lib/liblaw_char_br.la lib/liblaw_char_r.la lib/liblaw_char_z.la 
 lib/liblaw_char_zr.la lib/liblaw_char_zrr.la lib/libvcsn.la
 libtool: link: rm -fr  python/.libs/vcsn_cxx.so.ld_QwmwqO
 libtool: link: ccache clang++-mp-3.5 -Wl,-undefined -Wl,dynamic_lookup -o 
 python/.libs/vcsn_cxx.so -bundle  python/.libs/python_vcsn_cxx_la-vcsn_cxx.o  
  -L/opt/local/lib -lboost_python-mt lib/.libs/liblal_char_b.dylib 
 lib/.libs/liblal_char_br.dylib lib/.libs/liblal_char_q.dylib 
 lib/.libs/liblal_char_r.dylib lib/.libs/liblal_char_z.dylib 
 lib/.libs/liblal_char_zr.dylib lib/.libs/liblal_char_zrr.dylib 
 lib/.libs/liblan_char_b.dylib lib/.libs/liblan_char_r.dylib

Re: Libtool 2.4.3 release

2014-03-21 Thread Gary V. Vaughan
Hi Richard,

Thanks for bringing these to my attention.

A very brief look at the names of your patches makes me curious to know more... 
I've added taking a proper look at them to my TODO, but I don't want to hold up 
the release for them.

If you have time, I'm keeping a mirror of the Libtool repo in my github account 
to make submitting pull-requests as easy as possible. If you can find the time 
to polish the ones you want in the release and submit them via github within a 
month or so, there's still time to make the release :-)

Cheers,
-- 
Gary V. Vaughan (gary AT gnu DOT org)

 On Mar 21, 2014, at 5:46 AM, Richard Purdie 
 richard.pur...@linuxfoundation.org wrote:
 
 On Thu, 2014-03-20 at 18:07 +1300, Gary V. Vaughan wrote:
 On Mar 20, 2014, at 5:37 AM, Arnout Vandecappelle
 arnout.vandecappe...@essensium.com wrote:
 [Please keep me in CC, I'm not on the list]
 Dear libtool maintainers,
 
 Is there a possibility for a new libtool release in the foreseeable
 future?
 
 Yes, absolutely. In fact there are only 2 things ahead of it on my
 TODO list:
 
  1. Figure out why a4ffcdb5e is a regression for test 57
  2. fix test 120 race condition
 
 Unfortunately, Libtool is a complex beast, and we are woefully
 undermanned here.
 While everything rests on my shoulders, it will be at least another
 month before I can start work (I'm in the process of emigrating and
 all that entails).
 
 Patches for those 2 items, or any other as yet unknown issues with git
 master (or http://vaughan.pe/libtool/libtool-2.4.2.458.tar.gz if a
 bootstrapped tarball is easier to work with) are extremely welcome,
 and could lead to an immediate release...
 
 FWIW I'm another build system maintainer who sees email here. We
 currently have 12 patches against libtool:
 
 http://git.yoctoproject.org/cgit.cgi/poky/tree/meta/recipes-devtools/libtool/libtool
 
 Some of these are inappropriate for upstream, one or two may have been
 merged into libtool, some others may highlight issues, particularly
 around the sysroot support.
 
 Unfortunately whilst I have the best intentions (and am still on the
 list), I haven't found the time to look into the issues as yet and
 figure out if we could get some into a form that they'd be accepted
 upstream.
 
 Cheers,
 
 Richard
 
 
 
___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Libtool 2.4.3 release

2014-03-20 Thread Arnout Vandecappelle


On 20/03/14 06:07, Gary V. Vaughan wrote:
 
 On Mar 20, 2014, at 5:37 AM, Arnout Vandecappelle
 arnout.vandecappe...@essensium.com
 mailto:arnout.vandecappe...@essensium.com wrote:
 
 [Please keep me in CC, I'm not on the list]

 Dear libtool maintainers,

 Is there a possibility for a new libtool release in the foreseeable future?
 
 Hi Arnout,
 
 Yes, absolutely. In fact there are only 2 things ahead of it on my TODO list:
 
   1. Figure out why a4ffcdb5e is a regression for test 57
   2. fix test 120 race condition
 
 Unfortunately, Libtool is a complex beast, and we are woefully
 undermanned here.

 Complex beast indeed... Which is another reason why we prefer not to
carry patches.

 While everything rests on my shoulders, it will be at least another month
 before I can start work (I'm in the process of emigrating and all that
 entails).
 
 Patches for those 2 items, or any other as yet unknown issues with git
 master (or http://vaughan.pe/libtool/libtool-2.4.2.458.tar.gz if a
 bootstrapped tarball is easier to work with) are extremely welcome, and
 could lead to an immediate release...

 Unfortunately, none of the buildroot maintainers seem up to the
challenge of attacking ltmain...  We've had issues that are probably best
solved within libtool but where we resort to other workarounds to keep
things simple.

 
 Most recent test logs here:
 
   http://vaughan.pe/libtool/libtool-2.4.2.458.logs/
 
 In buildroot, we build all autotools (including libtool) as part of the
 cross-compilation process. We recently had to add a libtool patch for
 MIPS n64 support, which is annoying because it means we have to re-run
 automake etc. to update the autools-generated scripts in libtool.
 
 Did you patch just config.guess/config.sub and pass that back upstream?
 That is a prerequisite for arriving in the next release.  Otherwise if
 you patched Libtool files, are your changes in upstream already?

 Yes, it's an upstream patch that we back-ported.

 
 However, our normal autotools support doesn't work because that creates a
 circular dependency. So we have to add a few hacks in the libtool build
 steps to make things work.

 A release of libtool would help a lot because then we don't need to
 carry patches and we don't need to generate configure etc.

 Thank you,
 Regards,
 Arnout
 -- 
 Arnout Vandecappelle  arnout dot vandecappelle at essensium dot com
 
 Cheers,
 -- 
 Gary V. Vaughan (gary AT gnu DOT org)

-- 
Arnout Vandecappelle  arnout at mind be
Senior Embedded Software Architect+32-16-286500
Essensium/Mindhttp://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium   BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Libtool 2.4.3 release

2014-03-20 Thread Richard Purdie
On Thu, 2014-03-20 at 18:07 +1300, Gary V. Vaughan wrote:
 On Mar 20, 2014, at 5:37 AM, Arnout Vandecappelle
 arnout.vandecappe...@essensium.com wrote:
  [Please keep me in CC, I'm not on the list]
  Dear libtool maintainers,

  Is there a possibility for a new libtool release in the foreseeable
  future?

 Yes, absolutely. In fact there are only 2 things ahead of it on my
 TODO list:

   1. Figure out why a4ffcdb5e is a regression for test 57
   2. fix test 120 race condition

 Unfortunately, Libtool is a complex beast, and we are woefully
 undermanned here.
 While everything rests on my shoulders, it will be at least another
 month before I can start work (I'm in the process of emigrating and
 all that entails).

 Patches for those 2 items, or any other as yet unknown issues with git
 master (or http://vaughan.pe/libtool/libtool-2.4.2.458.tar.gz if a
 bootstrapped tarball is easier to work with) are extremely welcome,
 and could lead to an immediate release...

FWIW I'm another build system maintainer who sees email here. We
currently have 12 patches against libtool:

http://git.yoctoproject.org/cgit.cgi/poky/tree/meta/recipes-devtools/libtool/libtool

Some of these are inappropriate for upstream, one or two may have been
merged into libtool, some others may highlight issues, particularly
around the sysroot support.

Unfortunately whilst I have the best intentions (and am still on the
list), I haven't found the time to look into the issues as yet and
figure out if we could get some into a form that they'd be accepted
upstream.

Cheers,

Richard




___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Libtool 2.4.3 release

2014-03-19 Thread Gary V. Vaughan

 On Mar 20, 2014, at 5:37 AM, Arnout Vandecappelle 
 arnout.vandecappe...@essensium.com wrote:
 
 [Please keep me in CC, I'm not on the list]
 
 Dear libtool maintainers,
 
 Is there a possibility for a new libtool release in the foreseeable future?

Hi Arnout,

Yes, absolutely. In fact there are only 2 things ahead of it on my TODO list:

  1. Figure out why a4ffcdb5e is a regression for test 57
  2. fix test 120 race condition

Unfortunately, Libtool is a complex beast, and we are woefully undermanned here.
While everything rests on my shoulders, it will be at least another month 
before I can start work (I'm in the process of emigrating and all that entails).

Patches for those 2 items, or any other as yet unknown issues with git master 
(or http://vaughan.pe/libtool/libtool-2.4.2.458.tar.gz if a bootstrapped 
tarball is easier to work with) are extremely welcome, and could lead to an 
immediate release...

Most recent test logs here:

  http://vaughan.pe/libtool/libtool-2.4.2.458.logs/

 In buildroot, we build all autotools (including libtool) as part of the
 cross-compilation process. We recently had to add a libtool patch for
 MIPS n64 support, which is annoying because it means we have to re-run
 automake etc. to update the autools-generated scripts in libtool.

Did you patch just config.guess/config.sub and pass that back upstream? That is 
a prerequisite for arriving in the next release.  Otherwise if you patched 
Libtool files, are your changes in upstream already?

 However, our normal autotools support doesn't work because that creates a
 circular dependency. So we have to add a few hacks in the libtool build
 steps to make things work.
 
 A release of libtool would help a lot because then we don't need to
 carry patches and we don't need to generate configure etc.
 
 Thank you,
 Regards,
 Arnout
 -- 
 Arnout Vandecappelle  arnout dot vandecappelle at essensium dot com

Cheers,
-- 
Gary V. Vaughan (gary AT gnu DOT org)___
https://lists.gnu.org/mailman/listinfo/libtool


linking libtool archives across toolchains

2014-02-14 Thread Eric Bavier
I have a question about how to work with libtool in a multi-toolchain
environment.  

Background: We have a piece of software (MVAPICH2) we're trying to build
that uses libtool to create shared libraries for some C++ code.  For ABI
compatibility reasons we need to compile this C++ code with the Cray C++
compiler.  This code depends on another installed library that was built
with GCC, and when libtool goes to create the shared library, it pulls
in some information from this library's installed .la file, which
contains, among other things, a definition for inherited_linker_flags
containing the -pthread option.  Unfortunately, the Cray compilers do
not support the -pthread option, so the linking fails.

Obviously, this is just a single example, and it can be hacked around by
removing the -pthread option in the libtool script before linking, but I
wanted to ask any advice on how to work with libtool when libraries are
being built with two or more compiler toolchains.  Has this scenario
been dealt with before?  Is it not a good idea in general?

-- 
Eric Bavier, Scientific Libraries, Cray Inc.

___
https://lists.gnu.org/mailman/listinfo/libtool


Re: linking libtool archives across toolchains

2014-02-14 Thread Bob Friesenhahn

On Fri, 14 Feb 2014, Eric Bavier wrote:


Obviously, this is just a single example, and it can be hacked around by
removing the -pthread option in the libtool script before linking, but I
wanted to ask any advice on how to work with libtool when libraries are
being built with two or more compiler toolchains.  Has this scenario
been dealt with before?  Is it not a good idea in general?


Libtool was always developed with the expectation that it is used with 
the toolchain it was configured with, and the libraries it uses were 
built using the same toolchain.


The pthreads option is an obvious example but there are more subtle 
issues which crop up, not all due to libtool itself.


Bob
--
Bob Friesenhahn
bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,http://www.GraphicsMagick.org/

___
https://lists.gnu.org/mailman/listinfo/libtool


[SCM] GNU Libtool branch, master, updated. v2.4.2.444-28-g053df7e

2014-02-12 Thread Peter Rosin
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  053df7eb31d21c6d6dbe54c44f42009efec9d0c9 (commit)
   via  0d666fc13b8e5a110e7600866d6fa55dade4d4a0 (commit)
  from  c18b2d494e03ed15407c65b1de4b2231d733fb75 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit 053df7eb31d21c6d6dbe54c44f42009efec9d0c9
Author: Peter Rosin p...@lysator.liu.se
Date:   Wed Feb 12 10:03:56 2014 +0100

tests: sprinkle -no-undefined when linking libraries

* tests/duplicate_conv.at, tests/f77demo.at, tests/fcdemo.at: Here.

Signed-off-by: Peter Rosin p...@lysator.liu.se

commit 0d666fc13b8e5a110e7600866d6fa55dade4d4a0
Author: Peter Rosin p...@lysator.liu.se
Date:   Wed Feb 12 10:01:13 2014 +0100

libtool: actually strip -Wl when relinking with $LD

Fixes the regression from commit v2.4.2.444 which is causing a
testsuite failure in duplicate_conv.at (seen on Cygwin).

* build-aux/ltmain.in (func_mode_link): $reload_cmds typically
starts with $LD$reload_flag ... when $LD is used to relink.
Make the case expression match that when checking if $LD is in
fact used to relink.

Signed-off-by: Peter Rosin p...@lysator.liu.se

---

Summary of changes:
 build-aux/ltmain.in |2 +-
 tests/duplicate_conv.at |6 +++---
 tests/f77demo.at|4 
 tests/fcdemo.at |4 
 4 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index 3b4e6ec..f8e0f5f 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -8094,7 +8094,7 @@ EOF
   # whole_archive_flag_spec and hope we can get by with turning comma
   # into space.
   case $reload_cmds in
-*\$LD\ *) wl= ;;
+*\$LD[\ \$]*) wl= ;;
   esac
   if test -n $convenience; then
if test -n $whole_archive_flag_spec; then
diff --git a/tests/duplicate_conv.at b/tests/duplicate_conv.at
index cf1ba6a..3e39b20 100644
--- a/tests/duplicate_conv.at
+++ b/tests/duplicate_conv.at
@@ -50,7 +50,7 @@ $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o 
a/liba.la a/a.lo
 $LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o b/liba.la b/a.lo b/b.lo
 
 # Fold into convenience archive.
-AT_CHECK([$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libcee.la c.lo 
a/liba.la b/liba.la],
+AT_CHECK([$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -no-undefined -o 
libcee.la c.lo a/liba.la b/liba.la],
 [0], [ignore], [ignore])
 AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main$EXEEXT 
main.$OBJEXT ./libcee.la],
 [0], [ignore], [ignore])
@@ -62,7 +62,7 @@ $LIBTOOL --mode=clean rm -f libcee.la
 #OTOH, we'd like to test the other situation, too.
 
 # Fold into static library.
-AT_CHECK([$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -rpath /foo 
-static -o libcee.la c.lo a/liba.la b/liba.la],
+AT_CHECK([$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -no-undefined 
-rpath /foo -static -o libcee.la c.lo a/liba.la b/liba.la],
 [0], [ignore], [ignore])
 AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main$EXEEXT 
main.$OBJEXT ./libcee.la],
 [0], [ignore], [ignore])
@@ -70,7 +70,7 @@ LT_AT_EXEC_CHECK([./main],[0],[ignore],[ignore])
 $LIBTOOL --mode=clean rm -f libcee.la
 
 # Fold into library.
-AT_CHECK([$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -rpath /foo -o 
libcee.la c.lo a/liba.la b/liba.la],
+AT_CHECK([$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -no-undefined 
-rpath /foo -o libcee.la c.lo a/liba.la b/liba.la],
 [0], [ignore], [ignore])
 AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main$EXEEXT 
main.$OBJEXT ./libcee.la],
 [0], [ignore], [ignore])
diff --git a/tests/f77demo.at b/tests/f77demo.at
index da8e324..da7e18b 100644
--- a/tests/f77demo.at
+++ b/tests/f77demo.at
@@ -64,12 +64,16 @@ lib_LTLIBRARIES = libfoo.la libmix.la libfoo2.la libfoo3.la
 
 libfoo_la_SOURCES = foof.f
 libfoo_la_LIBADD = libfoo2.la
+libfoo_la_LDFLAGS = -no-undefined
 
 libfoo2_la_SOURCES = foof2.f
+libfoo2_la_LDFLAGS = -no-undefined
 
 libfoo3_la_SOURCES = foof3.f
+libfoo3_la_LDFLAGS = -no-undefined
 
 libmix_la_SOURCES = foof.f foof2.f fooc.c
+libmix_la_LDFLAGS = -no-undefined
 
 noinst_HEADERS = foo.h
 
diff --git a/tests/fcdemo.at b/tests/fcdemo.at
index 8cfa214..34953ac 100644
--- a/tests/fcdemo.at
+++ b/tests/fcdemo.at
@@ -68,12 +68,16 @@ lib_LTLIBRARIES = libfoo.la libmix.la libfoo2.la libfoo3.la
 
 libfoo_la_SOURCES = foof.f90
 libfoo_la_LIBADD = libfoo2.la
+libfoo_la_LDFLAGS = -no-undefined
 
 libfoo2_la_SOURCES

[SCM] GNU Libtool branch, master, updated. v2.4.2.444-26-gc18b2d4

2014-02-10 Thread Peter Rosin
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  c18b2d494e03ed15407c65b1de4b2231d733fb75 (commit)
  from  fa83d293d95e2e3bdfbfe739fc12e5c3a6307b64 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit c18b2d494e03ed15407c65b1de4b2231d733fb75
Author: Peter Rosin p...@lysator.liu.se
Date:   Mon Feb 10 14:51:07 2014 +0100

bootstrap: fix description of func_sort_ver to match recent sort change

gl/build-aux/funclib.sh: Update comment to match reality.
bootstrap: Regenerate.

Signed-off-by: Peter Rosin p...@lysator.liu.se

---

Summary of changes:
 bootstrap   |2 +-
 gl/build-aux/funclib.sh |4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/bootstrap b/bootstrap
index feb20a1..eecab2c 100755
--- a/bootstrap
+++ b/bootstrap
@@ -1499,7 +1499,7 @@ func_warning ()
 # ---
 # 'sort -V' is not generally available.
 # Note this deviates from the version comparison in automake
-# in that it treats 1.5  1.5.0, and treats 1.4.4a  1.4-p3a
+# in that it treats 1.5  1.5.0, and treats 1.4-p12a  1.4-p3a
 # but this should suffice as we won't be specifying old
 # version formats or redundant trailing .0 in bootstrap.conf.
 # If we did want full compatibility then we should probably
diff --git a/gl/build-aux/funclib.sh b/gl/build-aux/funclib.sh
index 9cb02ff..fe53505 100644
--- a/gl/build-aux/funclib.sh
+++ b/gl/build-aux/funclib.sh
@@ -1,5 +1,5 @@
 # Set a version string for this script.
-scriptversion=2014-01-03.01; # UTC
+scriptversion=2014-02-10.13; # UTC
 
 # General shell script boiler plate, and helper functions.
 # Written by Gary V. Vaughan, 2004
@@ -1268,7 +1268,7 @@ func_warning ()
 # ---
 # 'sort -V' is not generally available.
 # Note this deviates from the version comparison in automake
-# in that it treats 1.5  1.5.0, and treats 1.4.4a  1.4-p3a
+# in that it treats 1.5  1.5.0, and treats 1.4-p12a  1.4-p3a
 # but this should suffice as we won't be specifying old
 # version formats or redundant trailing .0 in bootstrap.conf.
 # If we did want full compatibility then we should probably


hooks/post-receive
-- 
GNU Libtool



[SCM] GNU Libtool branch, master, updated. v2.4.2.444-25-gfa83d29

2014-02-05 Thread Gary V. Vaughan
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  fa83d293d95e2e3bdfbfe739fc12e5c3a6307b64 (commit)
  from  4d57e0905a2c5ba0e537c8b3ccc116cdc0240c5d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit fa83d293d95e2e3bdfbfe739fc12e5c3a6307b64
Author: Gary V. Vaughan g...@gnu.org
Date:   Thu Feb 6 12:05:04 2014 +1300

doc: remove redundant in order to phrase where possible.

* doc/libtool.texi: Remove many occurrences of the redundant
phrase in order to, where ever to is as clear or clearer.
* THANKS: Add attribution.
Reported by Dave Yost

Signed-off-by: Gary V. Vaughan g...@gnu.org

---

Summary of changes:
 THANKS   |1 +
 doc/libtool.texi |   55 ++---
 2 files changed, 28 insertions(+), 28 deletions(-)

diff --git a/THANKS b/THANKS
index de0cfde..e895aee 100644
--- a/THANKS
+++ b/THANKS
@@ -94,6 +94,7 @@
   Daniel Reed  n...@ml.org
   Daniel Richard G.sk...@iskunk.org
   Dave Korndave.korn.cyg...@googlemail.com
+  Dave Yostd...@yost.com
   DJ Delorie   d...@delorie.com
   Donn Washburnn5...@comcast.net
   Edouard G. Parmelan  edouard.parme...@france.ncr.com
diff --git a/doc/libtool.texi b/doc/libtool.texi
index 05fec92..89c5d1a 100644
--- a/doc/libtool.texi
+++ b/doc/libtool.texi
@@ -241,7 +241,7 @@ each host type is available via a generic interface, but 
nasty quirks
 are hidden from the programmer.
 
 GNU Libtool's consistent interface is reassuring@dots{} users don't need
-to read obscure documentation in order to have their favorite source
+to read obscure documentation to have their favorite source
 package build shared libraries.  They just run your package
 @code{configure} script (or equivalent), and libtool does all the dirty
 work.
@@ -694,7 +694,7 @@ make it easier to clean up the build directory, and to help 
ensure that
 other programs fail horribly if you accidentally forget to use libtool
 when you should.
 
-Again, you may want to have a look at the @file{.la} file in order
+Again, you may want to have a look at the @file{.la} file
 to see what Libtool stores in it.  In particular, you will see that
 Libtool uses this file to remember the destination directory for the
 library (the argument to @option{-rpath}) as well as the dependency
@@ -952,7 +952,7 @@ burger$
 @end example
 
 Argh.  Now GDB complains because it cannot find the shared library that
-@file{hell} is linked against.  So, we must use libtool in order to
+@file{hell} is linked against.  So, we must use libtool to
 properly set the library path and run the debugger.  Fortunately, we can
 forget all about the @file{@value{objdir}} directory, and just run it on
 the executable wrapper (@pxref{Execute mode}):
@@ -2039,7 +2039,7 @@ automake, The Automake Manual}, for more information.
 @cindex configuring libtool
 
 Libtool requires intimate knowledge of your compiler suite and operating
-system in order to be able to create shared libraries and link against
+system to be able to create shared libraries and link against
 them properly.  When you install the libtool distribution, a
 system-specific libtool script is installed into your binary directory.
 
@@ -2054,7 +2054,7 @@ system features, then generates the @file{Makefile}s (and 
possibly a
 @file{config.h} header file), after which you can run @code{make} and
 build the package.
 
-Libtool adds its own tests to your @code{configure} script in order to
+Libtool adds its own tests to your @code{configure} script to
 generate a libtool script for the installer's host machine.
 
 @menu
@@ -2747,7 +2747,7 @@ Manipulation Program, for those who haven't taken the 
plunge.  See
 @url{http://www.gimp.org/}.} distribution @file{README}:
 
 @example
-The GIMP uses GNU Libtool in order to build shared libraries on a
+The GIMP uses GNU Libtool to build shared libraries on a
 variety of systems.  While this is very nice for making usable
 binaries, it can be a pain when trying to debug a program.  For that
 reason, compilation of shared libraries can be turned off by
@@ -2761,7 +2761,7 @@ specifying the @option{--disable-shared} option to 
@file{configure}.
 @cindex languages, non-C
 @cindex C++, using
 
-Libtool was first implemented in order to add support for writing shared
+Libtool was first implemented to add support for writing shared
 libraries in the C language.  However, over time, libtool is being
 integrated with other languages, so

Re: libtool fails with uninstalled frameworks and the -F flag

2014-02-01 Thread Peter O'Gorman
Hmm, -F should be passed through unmolested.

  # Flags to be passed through unchanged, with rationale:
  # -64, -mips[0-9]  enable 64-bit mode for the SGI compiler
  # -r[0-9][0-9]*specify processor for the SGI compiler
  # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler
  # +DA*, +DD*   enable 64-bit mode for the HP compiler
  # -q*  compiler args for the IBM compiler
  # -m*, -t[45]*, -txscale* architecture-specific flags for GCC
  # -F/path  path to uninstalled frameworks, gcc on darwin
  # -p, -pg, --coverage, -fprofile-*  profiling flags for GCC
  # @fileGCC response files
  # -tp=*Portland pgcc target processor selection
  # --sysroot=*  for sysroot support
  # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time 
optimization
  # -stdlib=*select c++ std lib with clang
  -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
  -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| 
\
  -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-stdlib=*)

What version of GNU libtool are you using?

Peter


On Jan 31, 2014, at 3:06 PM, Michael C. Grant m...@cvxr.com wrote:

 Gary,
 
 Sorry for the delay. I think I'm going to have to give up on this one. I'm 
 afraid my understanding of libtool internals as well as Darwin -framework 
 idiosyncracies are insufficient to the task.
 
 Fortunately, the issue we were having with Octave compilation has been 
 resolved by other means (actually by forcing link-all-dependencies in libtool 
 whenever an uninstalled framework is encountered).
 
 Feel free to close this for now. If I get ambitious and figure things out 
 more fully I will take another crack at it.
 
 On Jan 13, 2014, at 8:50 PM, Gary V. Vaughan g...@gnu.org wrote:
 
 Hi Michael,
 
 [moved to libtool-patches list]
 
 On Jan 14, 2014, at 11:45 AM, Michael C. Grant m...@cvxr.com wrote:
 
 I'm trying to compile GNU Octave and its new Qt GUI on a Mac OSX with 
 Homebrew. Homebrew installs the Qt frameworks in 
 /usr/local/Cellar/qt/4.8.5/lib, so after some fiddling with the configure 
 script I get this:
 
 QT_LDFLAGS=-F/usr/local/Cellar/qt/4.8.5/lib
 QT_LIBS=-framework QtCore -framework QtGui -framework QtNetwork
 
 However, the libtool script does not handle the -F argument through 
 properly, so it is stripped out of the linking process.
 
 I created the following patch for the generated libtool script, which 
 causes libtool to treat -F exactly like it treats -L. This seems to do the 
 trick.
 
 I did notice that scanning through past discussions that this has come up a 
 couple of times, but there is reluctance to provide full support for -F for 
 some reason. Perhaps the relative simplicity of this patch would convince 
 you to reconsider. I'm also discussing this with the Homebrew folks to see 
 if they would consider including in their formula, but they do prefer not 
 to use patches if they can help it.
 
 Thanks for the patch.  Sorry I didn't reply to your earlier emails - I 
 marked them for further attention, but didn't make the time to actually go 
 back and respond.
 
 My main worry is whether that changing libtool's treatment of -F is going to 
 do something unexpected on another platform.  That said, apart from your 
 conflating of -L and -F in the case branches with the patch you sent, I'm 
 open to including it in the upcoming release if you don't mind reworking it 
 a little?
 
 Please keep the -L and -F branches separate, factoring the branch bodies 
 into a shell function if necessary to prevent cut-n-pasting blocks of code 
 between the two.  Bonus points if you could also make -F behave as before on 
 all platforms but *-darwin*.
 
 If you have github, I keep a mirror of libtool at 
 http://github.com/gvvaughan/GNU-libtool, so that might be a more convenient 
 way for you to submit a pull request than dropping patch attachments into 
 the mailing list.
 
 I have a couple of small fixes of my own that I need to polish and push, and 
 then I'll do another round of platform testing to nail down what else is a 
 show-stopper for a final pre-release.
 
 Cheers,
 -- 
 Gary V. Vaughan (gary AT gnu DOT org)
 
 




Re: libtool fails with uninstalled frameworks and the -F flag

2014-01-31 Thread Michael C. Grant
Gary,

Sorry for the delay. I think I'm going to have to give up on this one. I'm 
afraid my understanding of libtool internals as well as Darwin -framework 
idiosyncracies are insufficient to the task.

Fortunately, the issue we were having with Octave compilation has been resolved 
by other means (actually by forcing link-all-dependencies in libtool whenever 
an uninstalled framework is encountered).

Feel free to close this for now. If I get ambitious and figure things out more 
fully I will take another crack at it.

On Jan 13, 2014, at 8:50 PM, Gary V. Vaughan g...@gnu.org wrote:

 Hi Michael,
 
 [moved to libtool-patches list]
 
 On Jan 14, 2014, at 11:45 AM, Michael C. Grant m...@cvxr.com wrote:
 
 I'm trying to compile GNU Octave and its new Qt GUI on a Mac OSX with 
 Homebrew. Homebrew installs the Qt frameworks in 
 /usr/local/Cellar/qt/4.8.5/lib, so after some fiddling with the configure 
 script I get this:
 
 QT_LDFLAGS=-F/usr/local/Cellar/qt/4.8.5/lib
 QT_LIBS=-framework QtCore -framework QtGui -framework QtNetwork
 
 However, the libtool script does not handle the -F argument through 
 properly, so it is stripped out of the linking process.
 
 I created the following patch for the generated libtool script, which causes 
 libtool to treat -F exactly like it treats -L. This seems to do the trick.
 
 I did notice that scanning through past discussions that this has come up a 
 couple of times, but there is reluctance to provide full support for -F for 
 some reason. Perhaps the relative simplicity of this patch would convince 
 you to reconsider. I'm also discussing this with the Homebrew folks to see 
 if they would consider including in their formula, but they do prefer not to 
 use patches if they can help it.
 
 Thanks for the patch.  Sorry I didn't reply to your earlier emails - I marked 
 them for further attention, but didn't make the time to actually go back and 
 respond.
 
 My main worry is whether that changing libtool's treatment of -F is going to 
 do something unexpected on another platform.  That said, apart from your 
 conflating of -L and -F in the case branches with the patch you sent, I'm 
 open to including it in the upcoming release if you don't mind reworking it a 
 little?
 
 Please keep the -L and -F branches separate, factoring the branch bodies into 
 a shell function if necessary to prevent cut-n-pasting blocks of code between 
 the two.  Bonus points if you could also make -F behave as before on all 
 platforms but *-darwin*.
 
 If you have github, I keep a mirror of libtool at 
 http://github.com/gvvaughan/GNU-libtool, so that might be a more convenient 
 way for you to submit a pull request than dropping patch attachments into the 
 mailing list.
 
 I have a couple of small fixes of my own that I need to polish and push, and 
 then I'll do another round of platform testing to nail down what else is a 
 show-stopper for a final pre-release.
 
 Cheers,
 -- 
 Gary V. Vaughan (gary AT gnu DOT org)




[SCM] GNU Libtool branch, master, updated. v2.4.2.444-23-g70ff0e0

2014-01-26 Thread Gary V. Vaughan
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  70ff0e04c9dda19b74c88005abed3c1ca4adc3fc (commit)
  from  525cddd2bcea4c565d6dd1d2d55dd1de1a476b67 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit 70ff0e04c9dda19b74c88005abed3c1ca4adc3fc
Author: Gary V. Vaughan g...@gnu.org
Date:   Mon Jan 27 15:04:53 2014 +1300

bootstrap: use `-d .git` to check whether we are in a git tree.

* gl/build-aux/bootstrap.in (func_require_git): .git is not a
regular file, use -d to check its existence.
* bootstrap: Regenerate.
* THANKS: Add Bruce Korb.
Reported by Bruce Korb

Copyright-paperwork-exempt: Yes
Signed-off-by: Gary V. Vaughan g...@gnu.org

---

Summary of changes:
 THANKS|1 +
 bootstrap |4 ++--
 gl/build-aux/bootstrap.in |4 ++--
 3 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/THANKS b/THANKS
index de0cfde..63d3ea2 100644
--- a/THANKS
+++ b/THANKS
@@ -78,6 +78,7 @@
   Brad Smith   b...@comstyle.com
   Brent Leback brent.leb...@st.com
   Brian Barrettbrbar...@osl.iu.edu
+  Bruce Korb   bruce.k...@gmail.com
   Bruno Haible hai...@ilog.fr
   Brice De Bruyne  bric...@gmail.com
   Camilo La Rota   camilo.lar...@ens-lyon.fr
diff --git a/bootstrap b/bootstrap
index 2094e73..4e24dbf 100755
--- a/bootstrap
+++ b/bootstrap
@@ -2563,7 +2563,7 @@ test extract-trace = $progname  func_main $@
 # End:
 
 # Set a version string for *this* script.
-scriptversion=2014-01-04.01; # UTC
+scriptversion=2014-01-27.02; # UTC
 
 
 ## --- ##
@@ -3698,7 +3698,7 @@ func_require_git ()
 $opt_skip_git  GIT=true
 
 test true = $GIT || {
-  if test -f .git; then
+  if test -d .git; then
 ($GIT --version) /dev/null 21 || GIT=true
   fi
 }
diff --git a/gl/build-aux/bootstrap.in b/gl/build-aux/bootstrap.in
index 8441bdc..d0276f6 100755
--- a/gl/build-aux/bootstrap.in
+++ b/gl/build-aux/bootstrap.in
@@ -232,7 +232,7 @@ vc_ignore=
 . `echo $0 |${SED-sed} 's|[^/]*$||'`extract-trace
 
 # Set a version string for *this* script.
-scriptversion=2014-01-04.01; # UTC
+scriptversion=2014-01-27.02; # UTC
 
 
 ## --- ##
@@ -1367,7 +1367,7 @@ func_require_git ()
 $opt_skip_git  GIT=true
 
 test true = $GIT || {
-  if test -f .git; then
+  if test -d .git; then
 ($GIT --version) /dev/null 21 || GIT=true
   fi
 }


hooks/post-receive
-- 
GNU Libtool



[SCM] GNU Libtool branch, master, updated. v2.4.2.444-22-g525cddd

2014-01-17 Thread Gary V. Vaughan
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  525cddd2bcea4c565d6dd1d2d55dd1de1a476b67 (commit)
   via  64367d3499ec323af2e18326996c8c73924eab50 (commit)
  from  2f75576d051fad9a8c0b274c5be1289d57c0b636 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit 525cddd2bcea4c565d6dd1d2d55dd1de1a476b67
Author: Rainer Orth r...@cebitec.uni-bielefeld.de
Date:   Sat Jan 18 10:07:52 2014 +1300

libtool: opt_duplicate_compiler_generated_deps is harmful on Solaris

Fix for http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452.
* build-aux/ltmain.in (libtool_validate_options): disable the
opt_duplicate_compiler_generated_deps optimization for Solaris2 so
that gcc-4.9+ compiled C++ code with -Wl,-Bdirect on 64-bit Solaris
x86 can avoid unwinding failures caused by accidental mixing of the
libc and libgcc_s unwinders in a single executable.

Signed-off-by: Gary V. Vaughan g...@gnu.org

commit 64367d3499ec323af2e18326996c8c73924eab50
Author: Gary V. Vaughan g...@gnu.org
Date:   Wed Jan 15 20:10:29 2014 +1300

bootstrap: check for git checkout correctly.

* gl/bulid-aux/bootstrap.in (func_require_git): Use .git instead
of .gitignore to recognise a git checkout.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan g...@gnu.org

---

Summary of changes:
 bootstrap |4 ++--
 build-aux/ltmain.in   |4 +++-
 gl/build-aux/bootstrap.in |4 ++--
 3 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/bootstrap b/bootstrap
index db31255..2094e73 100755
--- a/bootstrap
+++ b/bootstrap
@@ -3698,8 +3698,8 @@ func_require_git ()
 $opt_skip_git  GIT=true
 
 test true = $GIT || {
-  if test -f .gitignore  ($GIT --version) /dev/null 21; then :; else
-  GIT=true
+  if test -f .git; then
+($GIT --version) /dev/null 21 || GIT=true
   fi
 }
 
diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index f452e54..3b4e6ec 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -497,7 +497,9 @@ libtool_validate_options ()
 test : = $debug_cmd || func_append preserve_args  --debug
 
 case $host in
-  *cygwin* | *mingw* | *pw32* | *cegcc*)
+  # Solaris2 added to fix 
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452
+  # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788
+  *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2*)
 # don't eliminate duplications in $postdeps and $predeps
 opt_duplicate_compiler_generated_deps=:
 ;;
diff --git a/gl/build-aux/bootstrap.in b/gl/build-aux/bootstrap.in
index 71ff3ae..8441bdc 100755
--- a/gl/build-aux/bootstrap.in
+++ b/gl/build-aux/bootstrap.in
@@ -1367,8 +1367,8 @@ func_require_git ()
 $opt_skip_git  GIT=true
 
 test true = $GIT || {
-  if test -f .gitignore  ($GIT --version) /dev/null 21; then :; else
-  GIT=true
+  if test -f .git; then
+($GIT --version) /dev/null 21 || GIT=true
   fi
 }
 


hooks/post-receive
-- 
GNU Libtool



Re: libtool fails with uninstalled frameworks and the -F flag

2014-01-14 Thread Michael C. Grant
 Please keep the -L and -F branches separate, factoring the branch bodies into 
 a shell function if necessary to prevent cut-n-pasting blocks of code between 
 the two.  Bonus points if you could also make -F behave as before on all 
 platforms but *-darwin*.

I'll do that.

 If you have github, I keep a mirror of libtool 
 athttp://github.com/gvvaughan/GNU-libtool, so that might be a more convenient 
 way for you to submit a pull request than dropping patch attachments into the 
 mailing list.

Ah, perfect. I'll submit a pull request there.

 I have a couple of small fixes of my own that I need to polish and push, and 
 then I'll do another round of platform testing to nail down what else is a 
 show-stopper for a final pre-release.
 
 Cheers,
 -- 
 Gary V. Vaughan (gary AT gnu DOT org)




Re: libtool fails with uninstalled frameworks and the -F flag

2014-01-13 Thread Gary V. Vaughan
Hi Michael,

[moved to libtool-patches list]

On Jan 14, 2014, at 11:45 AM, Michael C. Grant m...@cvxr.com wrote:

 I'm trying to compile GNU Octave and its new Qt GUI on a Mac OSX with 
 Homebrew. Homebrew installs the Qt frameworks in 
 /usr/local/Cellar/qt/4.8.5/lib, so after some fiddling with the configure 
 script I get this:
 
 QT_LDFLAGS=-F/usr/local/Cellar/qt/4.8.5/lib
 QT_LIBS=-framework QtCore -framework QtGui -framework QtNetwork
 
 However, the libtool script does not handle the -F argument through properly, 
 so it is stripped out of the linking process.
 
 I created the following patch for the generated libtool script, which causes 
 libtool to treat -F exactly like it treats -L. This seems to do the trick.
 
 I did notice that scanning through past discussions that this has come up a 
 couple of times, but there is reluctance to provide full support for -F for 
 some reason. Perhaps the relative simplicity of this patch would convince you 
 to reconsider. I'm also discussing this with the Homebrew folks to see if 
 they would consider including in their formula, but they do prefer not to use 
 patches if they can help it.

Thanks for the patch.  Sorry I didn't reply to your earlier emails - I marked 
them for further attention, but didn't make the time to actually go back and 
respond.

My main worry is whether that changing libtool's treatment of -F is going to do 
something unexpected on another platform.  That said, apart from your 
conflating of -L and -F in the case branches with the patch you sent, I'm open 
to including it in the upcoming release if you don't mind reworking it a little?

Please keep the -L and -F branches separate, factoring the branch bodies into a 
shell function if necessary to prevent cut-n-pasting blocks of code between the 
two.  Bonus points if you could also make -F behave as before on all platforms 
but *-darwin*.

If you have github, I keep a mirror of libtool at 
http://github.com/gvvaughan/GNU-libtool, so that might be a more convenient way 
for you to submit a pull request than dropping patch attachments into the 
mailing list.

I have a couple of small fixes of my own that I need to polish and push, and 
then I'll do another round of platform testing to nail down what else is a 
show-stopper for a final pre-release.

Cheers,
-- 
Gary V. Vaughan (gary AT gnu DOT org)


signature.asc
Description: Message signed with OpenPGP using GPGMail


libtool fails with uninstalled frameworks and the -F flag

2014-01-13 Thread Michael C. Grant
I'm trying to compile GNU Octave and its new Qt GUI on a Mac OSX with Homebrew. 
Homebrew installs the Qt frameworks in /usr/local/Cellar/qt/4.8.5/lib, so after 
some fiddling with the configure script I get this:

QT_LDFLAGS=-F/usr/local/Cellar/qt/4.8.5/lib
QT_LIBS=-framework QtCore -framework QtGui -framework QtNetwork

However, the libtool script does not handle the -F argument through properly, 
so it is stripped out of the linking process.

I created the following patch for the generated libtool script, which causes 
libtool to treat -F exactly like it treats -L. This seems to do the trick.

I did notice that scanning through past discussions that this has come up a 
couple of times, but there is reluctance to provide full support for -F for 
some reason. Perhaps the relative simplicity of this patch would convince you 
to reconsider. I'm also discussing this with the Homebrew folks to see if they 
would consider including in their formula, but they do prefer not to use 
patches if they can help it.

Regards,
Michael



libtool.diff
Description: libtool.diff
___
https://lists.gnu.org/mailman/listinfo/libtool


[SCM] GNU Libtool branch, master, updated. v2.4.2.444-20-g2f75576

2014-01-10 Thread Gary V. Vaughan
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  2f75576d051fad9a8c0b274c5be1289d57c0b636 (commit)
  from  754721442a645b599113f53bae5ed76d804de5bd (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit 2f75576d051fad9a8c0b274c5be1289d57c0b636
Author: Todd C. Miller todd.mil...@courtesan.com
Date:   Sat Jan 11 13:15:32 2014 +1300

libtoolize: don't remove install-sh.

If you are not using automake, libtoolize would remove install-sh.
It needs the same treatment as config.guess and config.sub.
* libtoolize.in (func_require_seen_libtool): Remove install-sh
from $all_pkgaux_files, the list of files removed by
`libtoolize --force`.
* THANKS: Add Todd C. Miller.
* NEWS: Update.

Copyright-paperwork-exempt: Yes
Signed-off-by: Gary V. Vaughan g...@gnu.org

---

Summary of changes:
 NEWS  |3 +++
 THANKS|1 +
 libtoolize.in |7 ---
 3 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/NEWS b/NEWS
index c8730c7..1ca6d65 100644
--- a/NEWS
+++ b/NEWS
@@ -69,6 +69,9 @@ NEWS - list of user-visible changes between releases of GNU 
Libtool
   - Recognize more variants (e.g. those starting with a LIBRARY statement)
 of module-definitions (.def) files when using them instead of a raw
 list of symbols to export.
+  - Fix a long-standing bug when using libtoolize without automake; we
+no longer remove install-sh with --force, since it's not a file
+libtoolize will reinstall without --install..
 
 ** Important incompatible changes:
 
diff --git a/THANKS b/THANKS
index b59bed2..de0cfde 100644
--- a/THANKS
+++ b/THANKS
@@ -194,6 +194,7 @@
   Sven Verdoolaege sk...@liacs.nl
   Terry D. Dontje  terry.don...@sun.com
   Tim Mooney   moo...@dogbert.cc.ndsu.nodak.edu
+  Todd C. Miller   todd.mil...@courtesan.com
   Todd Vierlingt...@pobox.com
   Tom Tromey   tro...@cygnus.com
   Tor Lillqvistt...@iki.fi
diff --git a/libtoolize.in b/libtoolize.in
index 1842465..d819470 100644
--- a/libtoolize.in
+++ b/libtoolize.in
@@ -1894,9 +1894,10 @@ func_require_seen_libtool ()
   # Lists of all files libtoolize has ever installed.  These are removed
   # before installing the latest files when --force was passed to help
   # ensure a clean upgrade.
-  # Do not remove config.guess nor config.sub, we don't install them
-  # without --install, and the project may not be using Automake.
-  all_pkgaux_files=compile install-sh depcomp missing ltmain.sh 
snippet/_Noreturn.h snippet/arg-nonnull.h snippet/c++defs.h 
snippet/warn-on-use.h
+  # Do not remove config.guess, config.sub or install-sh, we don't
+  # install them without --install, and the project may not be using
+  # Automake.
+  all_pkgaux_files=compile depcomp missing ltmain.sh snippet/_Noreturn.h 
snippet/arg-nonnull.h snippet/c++defs.h snippet/warn-on-use.h
   all_pkgmacro_files=argz.m4 libtool.m4 ltdl.m4 ltoptions.m4 ltsugar.m4 
ltversion.in ltversion.m4 lt~obsolete.m4
   all_pkgltdl_files=COPYING.LIB Makefile Makefile.in Makefile.inc Makefile.am 
README acinclude.m4 aclocal.m4 argz_.h argz.c config.h.in config-h.in configure 
configure.ac configure.in libltdl/lt__alloc.h libltdl/lt__dirent.h 
libltdl/lt__glibc.h libltdl/lt__private.h libltdl/lt__strl.h 
libltdl/lt_dlloader.h libltdl/lt_error.h libltdl/lt_system.h libltdl/slist.h 
loaders/dld_link.c loaders/dlopen.c loaders/dyld.c loaders/load_add_on.c 
loaders/loadlibrary.c loaders/preopen.c loaders/shl_load.c lt__alloc.c 
lt__dirent.c lt__strl.c lt_dlloader.c lt_error.c ltdl.c ltdl.h ltdl.mk slist.c
 


hooks/post-receive
-- 
GNU Libtool



[SCM] GNU Libtool branch, master, updated. v2.4.2.444-18-g5e5cf7a

2014-01-06 Thread Gary V. Vaughan
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  5e5cf7a7d67a1af4752bf442a42a5a77dccacd3e (commit)
  from  1f14273e954361bde44143458098acd9723e54a2 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit 5e5cf7a7d67a1af4752bf442a42a5a77dccacd3e
Author: Gary V. Vaughan g...@gnu.org
Date:   Tue Jan 7 14:16:34 2014 +1300

bootstrap: specify particular version in buildreq with =x.y.

* gl/build-aux/bootstrap.in (func_check_versions): If the version
number begins with '=' then it must match the installed version of
the named tool exactly.
* gl/doc/bootstrap.texi (buildreq): Document the '=vernum' feature.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan g...@gnu.org

---

Summary of changes:
 bootstrap |   26 --
 gl/build-aux/bootstrap.in |   26 --
 gl/doc/bootstrap.texi |5 +
 3 files changed, 45 insertions(+), 12 deletions(-)

diff --git a/bootstrap b/bootstrap
index b5b6730..4ca10e4 100755
--- a/bootstrap
+++ b/bootstrap
@@ -4805,9 +4805,6 @@ delimited list of triples; 'program min-version url'.
   else
 _G_instver=`func_get_version $_G_app`
 
-test -z $_G_instver \
-|| func_verbose found '$_G_app' version $_G_instver.
-
 # Fail if --version didn't work.
 if test -z $_G_instver; then
   func_error Prerequisite '$_G_app' not found. Please install it, or
@@ -4816,12 +4813,29 @@ delimited list of triples; 'program min-version url'.
 
 # Fail if a newer version than what we have is required.
 else
-  func_lt_ver $_G_reqver $_G_instver || {
-func_error \
+  func_verbose found '$_G_app' version $_G_instver.
+
+ case $_G_reqver in
+=*)
+  # If $buildreq version starts with '=', version must
+ # match the installed program exactly.
+ test x$_G_reqver = x=$_G_instver || {
+   func_error \
+  '$_G_app' version == $_G_instver is too old
+  'exactly $_G_app-$_G_reqver is required
+func_check_versions_result=false
+  }
+ ;;
+   *)
+  # Otherwise, anything that is not older is a match.
+  func_lt_ver $_G_reqver $_G_instver || {
+func_error \
   '$_G_app' version == $_G_instver is too old
   '$_G_app' version = $_G_reqver is required
 func_check_versions_result=false
-  }
+  }
+ ;;
+ esac
 fi
   fi
 done
diff --git a/gl/build-aux/bootstrap.in b/gl/build-aux/bootstrap.in
index 7fc0c12..71ff3ae 100755
--- a/gl/build-aux/bootstrap.in
+++ b/gl/build-aux/bootstrap.in
@@ -2474,9 +2474,6 @@ delimited list of triples; 'program min-version url'.
   else
 _G_instver=`func_get_version $_G_app`
 
-test -z $_G_instver \
-|| func_verbose found '$_G_app' version $_G_instver.
-
 # Fail if --version didn't work.
 if test -z $_G_instver; then
   func_error Prerequisite '$_G_app' not found. Please install it, or
@@ -2485,12 +2482,29 @@ delimited list of triples; 'program min-version url'.
 
 # Fail if a newer version than what we have is required.
 else
-  func_lt_ver $_G_reqver $_G_instver || {
-func_error \
+  func_verbose found '$_G_app' version $_G_instver.
+
+ case $_G_reqver in
+=*)
+  # If $buildreq version starts with '=', version must
+ # match the installed program exactly.
+ test x$_G_reqver = x=$_G_instver || {
+   func_error \
+  '$_G_app' version == $_G_instver is too old
+  'exactly $_G_app-$_G_reqver is required
+func_check_versions_result=false
+  }
+ ;;
+   *)
+  # Otherwise, anything that is not older is a match.
+  func_lt_ver $_G_reqver $_G_instver || {
+func_error \
   '$_G_app' version == $_G_instver is too old
   '$_G_app' version = $_G_reqver is required
 func_check_versions_result=false
-  }
+  }
+ ;;
+ esac
 fi
   fi
 done
diff --git a/gl/doc/bootstrap.texi b/gl/doc/bootstrap.texi
index a457931..2f7b382 100755
--- a/gl/doc/bootstrap.texi
+++ b/gl/doc/bootstrap.texi
@@ -82,6 +82,11 @@ requirement for Autobuild is added automatically, and 
finally if there
 are any diff files under @code{local_gl_dir}, then a versionless
 requirement

[SCM] GNU Libtool branch, master, updated. v2.4.2.444-19-g7547214

2014-01-06 Thread Gary V. Vaughan
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  754721442a645b599113f53bae5ed76d804de5bd (commit)
  from  5e5cf7a7d67a1af4752bf442a42a5a77dccacd3e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit 754721442a645b599113f53bae5ed76d804de5bd
Author: Gary V. Vaughan g...@gnu.org
Date:   Tue Jan 7 16:06:02 2014 +1300

options-parser: --version works with 'DO NOT EDIT' preamble again.

* gl/build-aux/options-parser (func_version): Don't quit on first
leading '##' line, otherwise DO NOT edit warnings prevent version
information from being extracted correctly.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan g...@gnu.org

---

Summary of changes:
 bootstrap   |4 ++--
 gl/build-aux/options-parser |4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/bootstrap b/bootstrap
index 4ca10e4..db31255 100755
--- a/bootstrap
+++ b/bootstrap
@@ -1536,7 +1536,7 @@ func_lt_ver ()
 #! /bin/sh
 
 # Set a version string for this script.
-scriptversion=2014-01-04.01; # UTC
+scriptversion=2014-01-07.03; # UTC
 
 # A portable, pluggable option parser for Bourne shell.
 # Written by Gary V. Vaughan, 2010
@@ -2109,7 +2109,7 @@ func_version ()
 $debug_cmd
 
 printf '%s\n' $progname $scriptversion
-$SED -n '/^##/q
+$SED -n '
 /(C)/!b go
 :more
 /\./!{
diff --git a/gl/build-aux/options-parser b/gl/build-aux/options-parser
index 25a25eb..41302a8 100644
--- a/gl/build-aux/options-parser
+++ b/gl/build-aux/options-parser
@@ -1,7 +1,7 @@
 #! /bin/sh
 
 # Set a version string for this script.
-scriptversion=2014-01-04.01; # UTC
+scriptversion=2014-01-07.03; # UTC
 
 # A portable, pluggable option parser for Bourne shell.
 # Written by Gary V. Vaughan, 2010
@@ -574,7 +574,7 @@ func_version ()
 $debug_cmd
 
 printf '%s\n' $progname $scriptversion
-$SED -n '/^##/q
+$SED -n '
 /(C)/!b go
 :more
 /\./!{


hooks/post-receive
-- 
GNU Libtool



[SCM] GNU Libtool branch, master, updated. v2.4.2.444-17-g1f14273

2014-01-04 Thread Gary V. Vaughan
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  1f14273e954361bde44143458098acd9723e54a2 (commit)
  from  b40922af00e13b7ab30d3dff6c63a7c9f6aece5d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit 1f14273e954361bde44143458098acd9723e54a2
Author: Gary V. Vaughan g...@gnu.org
Date:   Sun Jan 5 17:13:47 2014 +1300

bootstrap: remove conftest.sed file droppings.

* gl/build-aux/funclib.sh: Remove conftest.sed when no longer
needed.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan g...@gnu.org

---

Summary of changes:
 bootstrap   |1 +
 gl/build-aux/funclib.sh |1 +
 2 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/bootstrap b/bootstrap
index 8b1b76c..b5b6730 100755
--- a/bootstrap
+++ b/bootstrap
@@ -426,6 +426,7 @@ test -z $SED  {
   }
 
   func_path_progs sed gsed func_check_prog_sed $PATH:/usr/xpg4/bin
+  rm -f conftest.sed
   SED=$func_path_progs_result
 }
 
diff --git a/gl/build-aux/funclib.sh b/gl/build-aux/funclib.sh
index 981941d..9cb02ff 100644
--- a/gl/build-aux/funclib.sh
+++ b/gl/build-aux/funclib.sh
@@ -195,6 +195,7 @@ test -z $SED  {
   }
 
   func_path_progs sed gsed func_check_prog_sed $PATH:/usr/xpg4/bin
+  rm -f conftest.sed
   SED=$func_path_progs_result
 }
 


hooks/post-receive
-- 
GNU Libtool



Re: [SCM] GNU Libtool branch, master, updated. v2.4.2.444-2-g581d90b

2014-01-04 Thread Peter Rosin
On 2014-01-03 02:01, Gary V. Vaughan wrote:
 Joking aside, you're quite right, I'll shuffle the order of bootstrap.in
 to leave that warning at the top, and remove the write bit from the
 generated file.

Thanks for fixing that! (too)

Cheers,
Peter




[SCM] GNU Libtool branch, master, updated. v2.4.2.444-16-gb40922a

2014-01-03 Thread Gary V. Vaughan
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  b40922af00e13b7ab30d3dff6c63a7c9f6aece5d (commit)
  from  b1a09dfa0d7ed7ca32139556d5fc815e73a7b274 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit b40922af00e13b7ab30d3dff6c63a7c9f6aece5d
Author: Gary V. Vaughan g...@gnu.org
Date:   Sat Jan 4 14:53:06 2014 +1300

bootstrap: replace spurious hyphen in some section comments.

* gl/build-aux/bootstrap.in: replace spurious hypen in same
section header comments with a space.
* gl/build-aux/extract-trace, gl/build-aux/options-parser:
Likewise.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan g...@gnu.org

---

Summary of changes:
 bootstrap   |   20 ++--
 gl/build-aux/bootstrap.in   |6 +++---
 gl/build-aux/extract-trace  |8 
 gl/build-aux/options-parser |6 +++---
 4 files changed, 20 insertions(+), 20 deletions(-)

diff --git a/bootstrap b/bootstrap
index 86ff9f7..8b1b76c 100755
--- a/bootstrap
+++ b/bootstrap
@@ -1535,7 +1535,7 @@ func_lt_ver ()
 #! /bin/sh
 
 # Set a version string for this script.
-scriptversion=2014-01-03.01; # UTC
+scriptversion=2014-01-04.01; # UTC
 
 # A portable, pluggable option parser for Bourne shell.
 # Written by Gary V. Vaughan, 2010
@@ -1957,9 +1957,9 @@ func_validate_options ()
 
 
 
-## --##
+## - ##
 ## Helper functions. ##
-## --##
+## - ##
 
 # This section contains the helper functions used by the rest of the
 # hookable option parser framework in ascii-betical order.
@@ -2154,7 +2154,7 @@ test -z $progpath  . `echo $0 |${SED-sed} 
's|[^/]*$||'`/funclib.sh
 test extract-trace = $progname  . `echo $0 |${SED-sed} 
's|[^/]*$||'`/options-parser
 
 # Set a version string.
-scriptversion=2013-08-22.10; # UTC
+scriptversion=2014-01-04.01; # UTC
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -2186,9 +2186,9 @@ scriptversion=2013-08-22.10; # UTC
 
 
 
-## --##
+## - ##
 ## Helper functions. ##
-## --##
+## - ##
 
 # This section contains the helper functions used by the rest of
 # 'extract-trace'.
@@ -2557,12 +2557,12 @@ test extract-trace = $progname  func_main $@
 # mode: shell-script
 # sh-indentation: 2
 # eval: (add-hook 'before-save-hook 'time-stamp)
-# time-stamp-pattern: 10/scriptversion=%:y-%02m-%02d.%02H; # UTC
+# time-stamp-pattern: 20/scriptversion=%:y-%02m-%02d.%02H; # UTC
 # time-stamp-time-zone: UTC
 # End:
 
 # Set a version string for *this* script.
-scriptversion=2014-01-03.01; # UTC
+scriptversion=2014-01-04.01; # UTC
 
 
 ## --- ##
@@ -4314,9 +4314,9 @@ func_require_vc_ignore_files ()
 }
 
 
-## --##
+## - ##
 ## Helper functions. ##
-## --##
+## - ##
 
 # This section contains the helper functions used by the rest of 'bootstrap'.
 
diff --git a/gl/build-aux/bootstrap.in b/gl/build-aux/bootstrap.in
index 848d344..7fc0c12 100755
--- a/gl/build-aux/bootstrap.in
+++ b/gl/build-aux/bootstrap.in
@@ -232,7 +232,7 @@ vc_ignore=
 . `echo $0 |${SED-sed} 's|[^/]*$||'`extract-trace
 
 # Set a version string for *this* script.
-scriptversion=2014-01-03.01; # UTC
+scriptversion=2014-01-04.01; # UTC
 
 
 ## --- ##
@@ -1984,9 +1984,9 @@ func_require_vc_ignore_files ()
 }
 
 
-## --##
+## - ##
 ## Helper functions. ##
-## --##
+## - ##
 
 # This section contains the helper functions used by the rest of 'bootstrap'.
 
diff --git a/gl/build-aux/extract-trace b/gl/build-aux/extract-trace
index e18ed90..41a7b8b 100755
--- a/gl/build-aux/extract-trace
+++ b/gl/build-aux/extract-trace
@@ -12,7 +12,7 @@ test -z $progpath  . `echo $0 |${SED-sed} 
's|[^/]*$||'`/funclib.sh
 test extract-trace = $progname  . `echo $0 |${SED-sed} 
's|[^/]*$||'`/options-parser
 
 # Set a version string.
-scriptversion=2013-08-22.10; # UTC
+scriptversion=2014-01-04.01; # UTC
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -44,9 +44,9 @@ scriptversion=2013-08-22.10; # UTC
 
 
 
-## --##
+## - ##
 ## Helper functions. ##
-## --##
+## - ##
 
 # This section contains the helper functions used by the rest of
 # 'extract-trace'.
@@ -415,6 +415,6

[SCM] GNU Libtool branch, master, updated. v2.4.2.444-3-g95e1f34

2014-01-02 Thread Gary V. Vaughan
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  95e1f34f7b1238c2ad3db25c820ded22c93d049f (commit)
  from  581d90bacaec6c20d5a5f776bdcdd9512f724192 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit 95e1f34f7b1238c2ad3db25c820ded22c93d049f
Author: Gary V. Vaughan g...@gnu.org
Date:   Fri Jan 3 13:33:38 2014 +1300

libtoolize: use printf '%s\n' unconditionally.

It's been a year since the as_echo probes were removed in Autoconf,
so we can follow suit and remove our equivalent bs_echo probing
now.  Retain $ECHO in case users need to override default printf
calls in museum piece environments.
* gl/build-aux/funclib.sh (ECHO): Default to 'printf %s\n'.
(bs_echo): Remove.
Adjust all bs_echo callers to use $ECHO instead.
* bootstrap: Regenerate.
* NEWS: Update.

Signed-off-by: Gary V. Vaughan g...@gnu.org

---

Summary of changes:
 NEWS|9 
 bootstrap   |  101 +--
 build-aux/ltmain.in |2 +-
 gl/build-aux/bootstrap.in   |   12 +++---
 gl/build-aux/extract-trace  |   10 ++--
 gl/build-aux/funclib.sh |   65 +--
 gl/build-aux/options-parser |   14 +++---
 7 files changed, 70 insertions(+), 143 deletions(-)

diff --git a/NEWS b/NEWS
index ecb48b1..c8730c7 100644
--- a/NEWS
+++ b/NEWS
@@ -99,10 +99,19 @@ NEWS - list of user-visible changes between releases of GNU 
Libtool
 [m4_define([AC_CONFIG_MACRO_DIRS],
 m4_defn([AC_CONFIG_MACRO_DIR]))])
 
+  - Overhead of probing for a non-backslash crippled echo equivalent
+during initialization of every script has been removed in favor of
+trusting that printf %s\n works out of the box on all non-museum
+host architectures.  Manually setting ECHO appropriately in the
+build environment will be necessary on some ancient architectures.
+
 ** Changes in supported systems or compilers:
 
   - Support for bitrig (*-*-bitrig*).
 
+  - Solaris 7 and earlier requires ECHO=/usr/ucb/echo in the build
+environment, to build and use libtool.
+
 New in 2.4.2 2011-10-17: git version 2.4.1a, Libtool team:
 
 * New features:
diff --git a/bootstrap b/bootstrap
index 18323eb..3c30de8 100755
--- a/bootstrap
+++ b/bootstrap
@@ -163,47 +163,6 @@ func_path_progs ()
 }
 
 
-# There are still modern systems that have problems with 'echo' mis-
-# handling backslashes, among others, so make sure $bs_echo is set to a
-# command that correctly interprets backslashes.
-# (this code from Autoconf 2.68)
-
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-bs_echo='\\\'
-bs_echo=$bs_echo$bs_echo$bs_echo$bs_echo$bs_echo
-bs_echo=$bs_echo$bs_echo$bs_echo$bs_echo$bs_echo$bs_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z $BASH_VERSION$ZSH_VERSION \
- (test X`print -r -- $bs_echo` = X$bs_echo) 2/dev/null; then
-  bs_echo='print -r --'
-  bs_echo_n='print -rn --'
-elif (test X`printf %s $bs_echo` = X$bs_echo) 2/dev/null; then
-  bs_echo='printf %s\n'
-  bs_echo_n='printf %s'
-else
-  if test X`(/usr/ucb/echo -n -n $bs_echo) 2/dev/null` = X-n $bs_echo; 
then
-bs_echo_body='eval /usr/ucb/echo -n $1$nl'
-bs_echo_n='/usr/ucb/echo -n'
-  else
-bs_echo_body='eval expr X$1 : X\\(.*\\)'
-bs_echo_n_body='eval
-  arg=$1;
-  case $arg in #(
-  *$nl*)
-   expr X$arg : X\\(.*\\)$nl;
-   arg=`expr X$arg : .*$nl\\(.*\\)`;;
-  esac;
-  expr X$arg : X\\(.*\\) | tr -d $nl
-'
-export bs_echo_n_body
-bs_echo_n='sh -c $bs_echo_n_body bs_echo'
-  fi
-  export bs_echo_body
-  bs_echo='sh -c $bs_echo_body bs_echo'
-fi
-
-
 # We want to be able to use the functions in this file before configure
 # has figured out where the best binaries are kept, which means we have
 # to search for them ourselves - except when the results are already set
@@ -224,13 +183,13 @@ test -z $SED  {
 _G_path_prog=$1
 
 _G_count=0
-$bs_echo_n 0123456789 conftest.in
+printf 0123456789 conftest.in
 while :
 do
   cat conftest.in conftest.in conftest.tmp
   mv conftest.tmp conftest.in
   cp conftest.in conftest.nl
-  $bs_echo ''  conftest.nl
+  echo ''  conftest.nl
   $_G_path_prog -f conftest.sed conftest.nl conftest.out 2/dev/null 
|| break
   diff conftest.out conftest.nl /dev/null 21 || break

[SCM] GNU Libtool branch, master, updated. v2.4.2.444-14-gda59d47

2014-01-02 Thread Gary V. Vaughan
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  da59d47a448f0a623c7f56632dbe8c3f864a450a (commit)
   via  9ef95183f0ae64d1cdbfeb68d3ad6ce37e6e9b97 (commit)
   via  5b1d8fd0a05f2aec7f67082c9343a9a592910a2c (commit)
  from  9f8717edbcb133d0aa3fa797e56de83432acd941 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit da59d47a448f0a623c7f56632dbe8c3f864a450a
Author: Gary V. Vaughan g...@gnu.org
Date:   Fri Jan 3 20:07:48 2014 +1300

inline-source: gawk doesn't have boolean constants.

I've been writing a lot of Lua lately, but still a silly mistake:(
* gl/build-aux/inline-source (func_include): Use `magic` variable
to count #! lines found, and only output the DO NOT EDIT warning
after the first one.

Signed-off-by: Gary V. Vaughan g...@gnu.org

commit 9ef95183f0ae64d1cdbfeb68d3ad6ce37e6e9b97
Author: Gary V. Vaughan g...@gnu.org
Date:   Fri Jan 3 18:21:40 2014 +1300

edit-readme-alpha: adjust for recent README edits.

* build-aux/edit-readme-alpha: Adjust regexps for recent README
improvements.
* README.md: Fix a SPACE-TAB sanity check failure.

Signed-off-by: Gary V. Vaughan g...@gnu.org

commit 5b1d8fd0a05f2aec7f67082c9343a9a592910a2c
Author: Gary V. Vaughan g...@gnu.org
Date:   Fri Jan 3 18:20:40 2014 +1300

bootstrap: fix test-dollar sanity check failure.

* gl/build-aux/bootstrap.in (func_ensure_README): quote argument.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan g...@gnu.org

---

Summary of changes:
 README.md   |2 +-
 bootstrap   |6 +++---
 build-aux/edit-readme-alpha |   12 ++--
 gl/build-aux/bootstrap.in   |6 +++---
 gl/build-aux/inline-source  |6 +++---
 5 files changed, 16 insertions(+), 16 deletions(-)

diff --git a/README.md b/README.md
index 96898b4..5e41f2e 100644
--- a/README.md
+++ b/README.md
@@ -120,7 +120,7 @@ that further limiting of the recursive set of tests is 
possible.  For
 example, to run only the template tests within the `max_cmd_len`, use:
 
 gmake check TESTSUITEFLAGS=-v -x -k max_cmd_len \
-   INNER_TESTSUITEFLAGS=',template -v -x'
+INNER_TESTSUITEFLAGS=',template -v -x'
 
 If you wish to report test failures to the libtool list, you need to
 send the file `tests/testsuite.log` to the [bug mailing list][].
diff --git a/bootstrap b/bootstrap
index 44cd0cd..e102622 100755
--- a/bootstrap
+++ b/bootstrap
@@ -3029,17 +3029,17 @@ EOT
 # Without AM_INIT_AUTOMAKE([foreign]), automake will not run to
 # completion with no README file, even though README.md or README.txt
 # is often preferable.
-func_ensure_changelog ()
+func_ensure_README ()
 {
 $debug_cmd
 
 test -f README || {
   _G_README=
   for _G_readme in README.txt README.md README.rst; do
-test -f $_G_readme  break
+test -f $_G_readme  break
   done
 
-  test -f $_G_readme  $LN_S $_G_readme README
+  test -f $_G_readme  $LN_S $_G_readme README
   func_verbose $LN_S $_G_readme README
 }
 
diff --git a/build-aux/edit-readme-alpha b/build-aux/edit-readme-alpha
index 390994a..166584c 100755
--- a/build-aux/edit-readme-alpha
+++ b/build-aux/edit-readme-alpha
@@ -64,12 +64,12 @@ for file in $@; do
 
   # Make sure the paragraph we are matching has not been edited since
   # this script was written.
-  matched=`sed -n -e '/^This is GNU Libtool,/,/^interface\.$/p' $file \
+  matched=`sed -n -e '/^\[GNU Libtool\]\[libtool\] is/,/^consistent, portable 
interface\.$/p' $file \
|wc -l |sed 's|^ *||'`
 
   # Unless, of course, it was edited by this script already.
   test 3 = $matched \
-  || matched=`sed -n -e '/^This is an alpha testing release/,/behind a 
consistent, portable interface\.$/p' $file \
+  || matched=`sed -n -e '/^This is an alpha testing release/,/a 
consistent, portable interface\.$/p' $file \
   |wc -l |sed 's|^ *||'`
 
   test 3 = $matched \
@@ -79,10 +79,10 @@ for file in $@; do
   trap 'x=$?; rm $file.T; exit $x' 1 2 13 15
 
   # Edit the first paragraph to be suitable for an alpha release.
-  sed -e '/^This is GNU Libtool,/,/^interface.$/c\
-This is an alpha testing release of GNU Libtool, a generic library\
-support script.  Libtool hides the complexity of using shared libraries\
-behind a consistent, portable interface.' $file  $file.T
+  sed -n '/^\[GNU Libtool\]\[libtool\] is/,/^consistent, portable 
interface\.$/c\
+This is an alpha testing release of [GNU Libtool][libtool], a generic\
+library support script

Re: [SCM] GNU Libtool branch, master, updated. v2.4.2.444-2-g581d90b

2014-01-02 Thread Peter Rosin
On 2014-01-02 01:32, Gary V. Vaughan wrote:
 Peter's a7462c5 fix was applied to the generated bootstrap script
 instead of the funclib.sh source, and had have been overwritten
 the next time bootstrap was regenerated.

Nice catch! As my feeble defense, I claim that there should have been a
generated, do not edit comment in the files that are generated with
funclib.sh. :-)

Cheers,
Peter




Re: [SCM] GNU Libtool branch, master, updated. v2.4.2.444-2-g581d90b

2014-01-02 Thread Gary V. Vaughan
Hi Peter,

On Jan 3, 2014, at 11:55 AM, Peter Rosin p...@lysator.liu.se wrote:

 On 2014-01-02 01:32, Gary V. Vaughan wrote:
Peter's a7462c5 fix was applied to the generated bootstrap script
instead of the funclib.sh source, and had have been overwritten
the next time bootstrap was regenerated.
 
 Nice catch! As my feeble defense, I claim that there should have been a
 generated, do not edit comment in the files that are generated with
 funclib.sh. :-)

┌─┤gary@kamala│~/Dropbox/Projects/libtool--devo--0  

  ├!68795=grep -i 'do not edit' bootstrap   
│master│95e1f34│
## DO NOT EDIT THIS FILE, CUSTOMIZE IT USING A BOOTSTRAP.CONF ##
## DO NOT EDIT THIS FILE! ##

:-p

Joking aside, you're quite right, I'll shuffle the order of bootstrap.in
to leave that warning at the top, and remove the write bit from the
generated file.

Cheers,
-- 
Gary V. Vaughan (gary AT gnu DOT org)


signature.asc
Description: Message signed with OpenPGP using GPGMail


[SCM] GNU Libtool branch, master, updated. v2.4.2.444-1-g8886f3b

2014-01-01 Thread Gary V. Vaughan
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  8886f3b473da66de42c2f7aa43db7e8789018cca (commit)
  from  a4ffcdb5e0f207656bb2584b1c4e1702a6d7fa32 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit 8886f3b473da66de42c2f7aa43db7e8789018cca
Author: Gary V. Vaughan g...@gnu.org
Date:   Thu Jan 2 12:52:50 2014 +1300

maint: change history.

* NEWS: Remove alpha release header.
* cfg.mk (old_NEWS_hash): Update.

Signed-off-by: Gary V. Vaughan g...@gnu.org

---

Summary of changes:
 NEWS   |3 ---
 cfg.mk |2 +-
 2 files changed, 1 insertions(+), 4 deletions(-)

diff --git a/NEWS b/NEWS
index 4fb1e0a..ecb48b1 100644
--- a/NEWS
+++ b/NEWS
@@ -2,9 +2,6 @@ NEWS - list of user-visible changes between releases of GNU 
Libtool
 
 * Noteworthy changes in release ?.? (-??-??) [?]
 
-
-* Noteworthy changes in release 2.4.2.418 (2013-10-27) [alpha]
-
 ** New features:
 
   - Moved to gnulib release infrastructure.
diff --git a/cfg.mk b/cfg.mk
index 6620685..de3aef3 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -24,7 +24,7 @@
 update-copyright-env := UPDATE_COPYRIGHT_FORCE=1 
UPDATE_COPYRIGHT_USE_INTERVALS=1
 
 # Set format of NEWS
-old_NEWS_hash := c7c9fc43ba42057e4f8bd593a0c2e086
+old_NEWS_hash := d41d8cd98f00b204e9800998ecf8427e
 
 manual_title = Portable Dynamic Shared Object Management
 


hooks/post-receive
-- 
GNU Libtool



[SCM] GNU Libtool branch, master, updated. v2.4.2.444-2-g581d90b

2014-01-01 Thread Gary V. Vaughan
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  581d90bacaec6c20d5a5f776bdcdd9512f724192 (commit)
  from  8886f3b473da66de42c2f7aa43db7e8789018cca (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit 581d90bacaec6c20d5a5f776bdcdd9512f724192
Author: Gary V. Vaughan g...@gnu.org
Date:   Thu Jan 2 13:04:31 2014 +1300

bootstrap: push Peter's version sort fix back into funclib.sh.

Peter's a7462c5 fix was applied to the generated bootstrap script
instead of the funclib.sh source, and had have been overwritten
the next time bootstrap was regenerated.
* gl/build-aux/funclib.sh (func_sort_ver): Sort numerically on the
non-primary keys as well.
* bootstrap: Regenerate, with the change applied.

Signed-off-by: Gary V. Vaughan g...@gnu.org

---

Summary of changes:
 bootstrap   |4 ++--
 gl/build-aux/funclib.sh |4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/bootstrap b/bootstrap
index 6b4cc6d..18323eb 100755
--- a/bootstrap
+++ b/bootstrap
@@ -1327,8 +1327,8 @@ func_sort_ver ()
 {
 $debug_cmd
 
-printf '%s\n%s\n' $1 $2 |
-sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 8,8n 
-k 9,9n
+printf '%s\n%s\n' $1 $2 \
+  | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 
8,8n -k 9,9n
 }
 
 # func_lt_ver PREV CURR
diff --git a/gl/build-aux/funclib.sh b/gl/build-aux/funclib.sh
index 73b3e26..3bd2ab8 100644
--- a/gl/build-aux/funclib.sh
+++ b/gl/build-aux/funclib.sh
@@ -1317,8 +1317,8 @@ func_sort_ver ()
 {
 $debug_cmd
 
-printf '%s\n%s\n' $1 $2 |
-sort -t. -k1n -k1 -k2n -k2 -k3n -k3 -k4n -k4 -k5n -k5 -k6n -k6 -k7n -k7 
-k8n -k8 -k9n -k9
+printf '%s\n%s\n' $1 $2 \
+  | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 
8,8n -k 9,9n
 }
 
 # func_lt_ver PREV CURR


hooks/post-receive
-- 
GNU Libtool



[SCM] GNU Libtool branch, master, updated. v2.4.2.418-11-g4494446

2013-12-09 Thread Peter Rosin
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  4494446e43ccd60c1e91a707584841705d28e338 (commit)
  from  a7462c5563e124e06f4f61ce2a9cea26cf8be390 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit 4494446e43ccd60c1e91a707584841705d28e338
Author: Peter Rosin p...@lysator.liu.se
Date:   Sun Dec 8 23:48:07 2013 +0100

maint: fix out-of-tree autoreconf w/o manual rebootstrap

build-aux/ltmain.in: Look for funclib.sh and options-parser in
the same location ltmain.in is found.

Signed-off-by: Peter Rosin p...@lysator.liu.se

---

Summary of changes:
 build-aux/ltmain.in |4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index fba05c1..0da8ad7 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -61,8 +61,8 @@ package_revision=@package_revision@
 # Much of our low-level functionality needs to be sourced from external
 # libraries, which are installed to $pkgauxdir.
 
-. build-aux/funclib.sh
-. build-aux/options-parser
+. `echo $0 |${SED-sed} 's|[^/]*$||'`funclib.sh
+. `echo $0 |${SED-sed} 's|[^/]*$||'`options-parser
 
 # Set a version string.
 scriptversion='(GNU @PACKAGE@) @VERSION@'


hooks/post-receive
-- 
GNU Libtool



libtool rule for (windows) import lib from exe?

2013-12-03 Thread Benjamin Redelings

Hi,

I'm trying to build plugins on windows that reference symbols in 
the main application.  I've been told that the best way to do this is to 
build an import lib for your exe file, and then link your modules 
against the import lib to form DLLs.  Is this recommended? I'm getting a 
warning message that implies I can dlopen *.a archives if I pass -dlopen 
to the linker for the main application.  I am planning to use 
dlfcn-win32 to implement dlopen for the windows executable.


On linux everything works, and I'm able to build *.so modules that 
I can load and call from dlopen.  For mingw, everything builds, but 
libtool builds *.a files instead of *.dll files, with this warning:


*** Warning: linker path does not have real file for library 
-lbali-phy.exe.a.

*** I have the capability to make that library automatically link in when
*** you link to this library.  But I can only do this if you have a
*** shared version of the library, which you do not appear to have
*** because I did check the linker path looking for a file starting
*** with libbali-phy.exe.a but no candidates were found. (...for file 
magic test)


*** Warning: libtool could not satisfy all declared inter-library
*** dependencies of module Range.  Therefore, libtool will create
*** a static module, that should work as long as the dlopening
*** application is linked with the -dlopen flag.

I have two questions:

(1) If the warning above is right, it looks like I do not need a DLL 
after all.  Therefore I do not need to make an import library, I can 
just pass '-dlopen' as a linker flag when compiling the main 
application, and dlopen *.a files.  Is this right on windows?


(2) Could someone please help me find where the -dlopen flag is 
documented?  Does this dlopen flag take an argument, like '-dlopen 
file'?  If so, what is the file?


(3) How can I write a libtool rule to construct the import library? 
Right now I have this:


if HOST_LINUX
bali_phy_LDFLAGS = -rdynamic
else
if HOST_MINGW32
bali_phy_LDFLAGS = -Wl,--export-all-symbols,--output-def,bali-phy.def
else
bali_phy_LDFLAGS =
endif
endif

libbali-phy.exe.a: bali-phy.exe
$(DLLTOOL) -dllname bali-phy.exe --def bali-phy.def --output-lib 
libbali-phy.exe.a


(4) How can I tell libtool that the modules depend on the import lib?  
Right now I have something like:



if HOST_MINGW32

IMPORTLIB = -lbali-phy.exe.a

else

IMPORTLIB =

endif


mod_la_SOURCES = computation/builtins/mod.C
mod_la_LDFLAGS = -module -shared -avoid-version -export-dynamic 
-no-undefined -enable-runtime-pseudo-reloc

mod_la_LIBADD = $(IMPORTLIB)

However, this produces the results above, where the modules are built as 
static *.a files instead of DLLs.


Thanks so much for your help!

-BenRI
___
https://lists.gnu.org/mailman/listinfo/libtool


[SCM] GNU Libtool branch, master, updated. v2.4.2.418-10-ga7462c5

2013-11-19 Thread Peter Rosin
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  a7462c5563e124e06f4f61ce2a9cea26cf8be390 (commit)
  from  397f71725630cd6d97fe69104f170861f441507a (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit a7462c5563e124e06f4f61ce2a9cea26cf8be390
Author: Peter Rosin p...@lysator.liu.se
Date:   Tue Nov 19 11:54:27 2013 +0100

bootstrap: fix version sort

Reported by Ozkan Sezer who suffered from makeinfo 4.13 being detected
as lesser than the required makeinfo 4.8.

* bootstrap (func_sort_ver): Sort numerically on the non-primary keys
as well.

---

Summary of changes:
 bootstrap |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/bootstrap b/bootstrap
index 1b16d95..852efd5 100755
--- a/bootstrap
+++ b/bootstrap
@@ -1323,7 +1323,7 @@ func_sort_ver ()
 $debug_cmd
 
 printf '%s\n%s\n' $1 $2 |
-sort -t. -k1n -k1 -k2n -k2 -k3n -k3 -k4n -k4 -k5n -k5 -k6n -k6 -k7n -k7 
-k8n -k8 -k9n -k9
+sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 8,8n 
-k 9,9n
 }
 
 # func_lt_ver PREV CURR


hooks/post-receive
-- 
GNU Libtool



[PATCH] libtool: update cached $GCC value when updating $GXX

2013-11-11 Thread Peter Rosin
Hi!

I noticed this while looking at the -nostdlib stuff. Will push
in a couple of days unless there are valid objections.

Cheers,
Peter
From 7efe9b28d977fccded55843c8bee3458835d0435 Mon Sep 17 00:00:00 2001
From: Peter Rosin p...@lysator.liu.se
Date: Mon, 11 Nov 2013 10:00:28 +0100
Subject: [PATCH] libtool: update cached $GCC value when updating $GXX

In the meat of the _LT_LANG_CXX_CONFIG macro, and in invoked
macros, $GCC is used to indicate if g++ is used. $GCC is used
instead of $GXX if an invoced macro is written in a tag
agnositic way, like _LT_SYS_DYNAMIC_LINKER is. Note that GCC
is restored to its original value at the end of the macro.

* m4/libtool.m4 (_LT_LANG_CXX_CONFIG): If updating the GXX
variable, for consistency also update the GCC variable.

Signed-off-by: Peter Rosin p...@lysator.liu.se
---
 m4/libtool.m4 |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/m4/libtool.m4 b/m4/libtool.m4
index e34e021..523503f 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -6083,6 +6083,7 @@ if test yes != $_lt_caught_CXX_error; then
 
 else
   GXX=no
+  GCC=$GXX
   with_gnu_ld=no
   wlarc=
 fi
-- 
1.7.9



Re: [PATCH] libtool: update cached $GCC value when updating $GXX

2013-11-11 Thread Peter Rosin
On 2013-11-11 10:37, Peter Rosin wrote:
 Will push in a couple of days unless there are valid objections.

Forget it. I am a moron. It would be more valid to simply remove
the GXX=no assignment, but I can't classify that as a bug. Sorry
for wasting your bandwidth.

Cheers,
Peter




Re: Using libtool via autotools causes linking problem on mingw

2013-11-08 Thread Václav Zeman
On 7 November 2013 22:00, Panicz Maciej Godek godek.mac...@gmail.comwrote:

 Hi,
 For some time I've been trying to compile my framework
 for writing multimedia and 3d games in Guile Scheme
 on Windows/MinGW.
 The framework uses SDL library, and more details can be
 found here: https://puszcza.gnu.org.ua/projects/slayer

 After many issues with compiling Guile Scheme on MinGW,
 I've finally managed to achieve it, and having build SDL,
 I proceeded to compile my framework.

 Although I did use the autotools to create a package,
 I know only superficially how it is supposed to work.
 Having ./configured my project, I managed to build the
 object files, but the final linking (performed by libtool)
 fails. It is invoked in the following way:

 ./libtool --tag=CXX   --mode=link g++ -D_GNU_SOURCE=1 -Dmain=SDL_main
 -Ic:/mingw/msys/1.0/include/SDL   -Ic:/mingw/msys/1.0/include/guile/2.0
 -I/usr/local/include -Ic:/mingw/msys/1.0/include-Wall -Werror -mwindows
 -Lc:/mingw/msys/1.0/lib -lmingw32 -lSDLmain -lSDL   -Lc:/mingw/msys/1.0/lib
 -lguile-2.0 -lgc -mwindows -Lc:/mingw/msys/1.0/lib -lSDL_image
 -lmingw32 -lSDLmain -lSDL   -g -O2 -mwindows -Lc:/mingw/msys/1.0/lib
 -lmingw32 -lSDLmain -lSDL   -Lc:/mingw/msys/1.0/lib -lguile-2.0 -lgc
 -mwindows -Lc:/mingw/msys/1.0/lib -lSDL_image -lmingw32 -lSDLmain -lSDL
  -o slayer.exe file.o font.o image.o input.o slayer.o symbols.o video.o
  -lSDL_ttf

 and the following error appears:
 c:/mingw/msys/1.0/lib/libmingw32.a(main.o): In function `main':
 e:\p\giaw\src\pkg\mingwrt-4.0.3-1-mingw32-src\bld/../mingwrt-4.0.3-1-mingw32-src/src/libcrt/crt/main.c:91:
 undefined reference to `WinMain@16'
 collect2.exe: error: ld returned 1 exit status

The -mwindows switch says that your are compiling a Windows GUI
application, which implies WinMain() function. If you are not doing that,
remove the switch and (maybe) use -mconsole instead. See
http://gcc.gnu.org/onlinedocs/gcc/i386-and-x86_002d64-Windows-Options.html for
explanations of the switches.



 However, I do manage to build the executable with the following command:
 gcc -o slayer.exe file.o font.o image.o input.o slayer.o symbols.o video.o
 -mwindows -lmingw32 -lSDLmain -lSDL -lSDL_image -lSDL_ttf -lguile-2.0

 (there are still some problems caused by libguile in the runtime, but at
 least the linkign stage succeeds)

 I know that it might be a complicated issue, and the cause might lie on
 the side of either MinGW or SDL or pkg-config or autotools or mine, but I
 thought it might be best to ask you first.

 The project's files can be browsed here
 http://hg.gnu.org.ua/hgweb/slayer/file/bb4c97fd8329

 Thanks in advance,
 M.


-- 
VZ
___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Using libtool via autotools causes linking problem on mingw

2013-11-08 Thread Peter Rosin
On 2013-11-08 11:31, Václav Zeman wrote:
 On 7 November 2013 22:00, Panicz Maciej Godek godek.mac...@gmail.com 
 mailto:godek.mac...@gmail.com wrote:
 
 Hi,
 For some time I've been trying to compile my framework
 for writing multimedia and 3d games in Guile Scheme
 on Windows/MinGW.
 The framework uses SDL library, and more details can be
 found here: https://puszcza.gnu.org.ua/projects/slayer
 
 After many issues with compiling Guile Scheme on MinGW,
 I've finally managed to achieve it, and having build SDL,
 I proceeded to compile my framework.
 
 Although I did use the autotools to create a package,
 I know only superficially how it is supposed to work.
 Having ./configured my project, I managed to build the
 object files, but the final linking (performed by libtool)
 fails. It is invoked in the following way:
 
 ./libtool --tag=CXX   --mode=link g++ -D_GNU_SOURCE=1 -Dmain=SDL_main 
 -Ic:/mingw/msys/1.0/include/SDL   -Ic:/mingw/msys/1.0/include/guile/2.0 
 -I/usr/local/include -Ic:/mingw/msys/1.0/include-Wall -Werror -mwindows 
 -Lc:/mingw/msys/1.0/lib -lmingw32 -lSDLmain -lSDL   -Lc:/mingw/msys/1.0/lib 
 -lguile-2.0 -lgc -mwindows -Lc:/mingw/msys/1.0/lib -lSDL_image -lmingw32 
 -lSDLmain -lSDL   -g -O2 -mwindows -Lc:/mingw/msys/1.0/lib -lmingw32 
 -lSDLmain -lSDL   -Lc:/mingw/msys/1.0/lib -lguile-2.0 -lgc -mwindows 
 -Lc:/mingw/msys/1.0/lib -lSDL_image -lmingw32 -lSDLmain -lSDL-o 
 slayer.exe file.o font.o image.o input.o slayer.o symbols.o video.o
 -lSDL_ttf 
 
 and the following error appears:
 c:/mingw/msys/1.0/lib/libmingw32.a(main.o): In function `main':
 
 e:\p\giaw\src\pkg\mingwrt-4.0.3-1-mingw32-src\bld/../mingwrt-4.0.3-1-mingw32-src/src/libcrt/crt/main.c:91:
  undefined reference to `WinMain@16'
 collect2.exe: error: ld returned 1 exit status
 
 The -mwindows switch says that your are compiling a Windows GUI application, 
 which implies WinMain() function. If you are not doing that, remove the 
 switch and (maybe) use -mconsole instead. See 
 http://gcc.gnu.org/onlinedocs/gcc/i386-and-x86_002d64-Windows-Options.html 
 for explanations of the switches.

The SDL library, for some obscure reason, has its own special take on that and
prescribes that you should keep using main() even if you are doing a GUI app.
I think the SDLmain library contains the real WinMain@16 entry point and that
entry point in turn calls the application main function. Or I should perhaps
say SDL_main (see that -Dmain=SDL_main define above). Some part of this
fragile SDL crap fails. I don't know what.

Perhaps the SDL_main library was compiled to expect an ordinary main entry
point instead of the GUI WinMain@16 version?

Just to be clear, I'm not an SDL user. This is just my understanding of this.
The above description might very well be flawed in some way, but SDL
initialization is peculiar.

Cheers,
Peter

___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Using libtool via autotools causes linking problem on mingw

2013-11-08 Thread Panicz Maciej Godek
2013/11/8 Václav Zeman vhais...@gmail.com

 The -mwindows switch says that your are compiling a Windows GUI
 application, which implies WinMain() function. If you are not doing that,
 remove the switch and (maybe) use -mconsole instead. See
 http://gcc.gnu.org/onlinedocs/gcc/i386-and-x86_002d64-Windows-Options.html for
 explanations of the switches.


I think the issue can rather be concerned with the use of SDL.
As I mentioned above, when I link using
gcc -o slayer.exe file.o font.o image.o input.o slayer.o symbols.o video.o
-mwindows -lmingw32 -lSDLmain -lSDL -lSDL_image -lSDL_ttf -lguile-2.0
the linkage succeeds.
Note that, although the -D option shouldn't have any influence on the
linkage,
it does replace main with SDL_main during the compilation of object files,
and I think it's the SDL_main library that contains the actual entry point.

However, the question is not how to get the things built (because I already
managed to do so), but how to adjust the build system (i.e. configure.acand/or
various Makefile.am files) so that it builds the things properly. In
particular,
I didn't put the -mwindows there in the first place, so I have no option to
remove
it or replace it.

regards,
M.
___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Using libtool via autotools causes linking problem on mingw

2013-11-08 Thread Peter Rosin
On 2013-11-08 12:18, Panicz Maciej Godek wrote:
 2013/11/8 Peter Rosin p...@lysator.liu.se mailto:p...@lysator.liu.se
 
 The SDL library, for some obscure reason, has its own special take on 
 that and
 prescribes that you should keep using main() even if you are doing a GUI 
 app.
 I think the SDLmain library contains the real WinMain@16 entry point and 
 that
 entry point in turn calls the application main function. Or I should 
 perhaps
 say SDL_main (see that -Dmain=SDL_main define above). Some part of this
 fragile SDL crap fails. I don't know what.
 
 Perhaps the SDL_main library was compiled to expect an ordinary main entry
 point instead of the GUI WinMain@16 version?
 
 Just to be clear, I'm not an SDL user. This is just my understanding of 
 this.
 The above description might very well be flawed in some way, but SDL
 initialization is peculiar.
 
 
 I can later try to add some of the options from the libtool invocation 
 generated
 by autoconf to my invocation of gcc to see which particular option causes the
 failure and then let you know. I think that your description of the way SDL 
 does
 things on mingw is sound (and I think that the goal is to ensure portability, 
 as
 unix programmers have no idea what the WinMain is)

Hmmm, I have this hunch that the -nostdlib option that libtool adds to the
g++ invocation beats -mwindows, just like it beats -pthread. But I don't
know that for a fact...

Cheers,
Peter


___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Using libtool via autotools causes linking problem on mingw

2013-11-08 Thread Peter Rosin
On 2013-11-08 14:15, Peter Rosin wrote:
 On 2013-11-08 12:18, Panicz Maciej Godek wrote:
 2013/11/8 Peter Rosin p...@lysator.liu.se mailto:p...@lysator.liu.se

 The SDL library, for some obscure reason, has its own special take on 
 that and
 prescribes that you should keep using main() even if you are doing a GUI 
 app.
 I think the SDLmain library contains the real WinMain@16 entry point and 
 that
 entry point in turn calls the application main function. Or I should 
 perhaps
 say SDL_main (see that -Dmain=SDL_main define above). Some part of this
 fragile SDL crap fails. I don't know what.

 Perhaps the SDL_main library was compiled to expect an ordinary main 
 entry
 point instead of the GUI WinMain@16 version?

 Just to be clear, I'm not an SDL user. This is just my understanding of 
 this.
 The above description might very well be flawed in some way, but SDL
 initialization is peculiar.


 I can later try to add some of the options from the libtool invocation 
 generated
 by autoconf to my invocation of gcc to see which particular option causes the
 failure and then let you know. I think that your description of the way SDL 
 does
 things on mingw is sound (and I think that the goal is to ensure 
 portability, as
 unix programmers have no idea what the WinMain is)
 
 Hmmm, I have this hunch that the -nostdlib option that libtool adds to the
 g++ invocation beats -mwindows, just like it beats -pthread. But I don't
 know that for a fact...

No, wait. You're not building a library, so -nostdlib isn't relevant...

Sorry for the wasted bandwidth.

Cheers,
Peter


___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Using libtool via autotools causes linking problem on mingw

2013-11-08 Thread Panicz Maciej Godek
2013/11/8 Peter Rosin p...@lysator.liu.se

 On 2013-11-08 12:18, Panicz Maciej Godek wrote:
  2013/11/8 Peter Rosin p...@lysator.liu.se mailto:p...@lysator.liu.se
 
  The SDL library, for some obscure reason, has its own special

 take on that and prescribes that you should keep using main()



  even if you are doing a GUI app. I think the SDLmain library

 contains the real WinMain@16 entry point and that entry point

 in turn calls the application main function. Or I should perhaps
  say SDL_main (see that -Dmain=SDL_main define above).

 Some part of this fragile SDL crap fails. I don't know what.
 
  Perhaps the SDL_main library was compiled to expect an

 ordinary main entry point instead of the GUI WinMain@16 version?
 
  Just to be clear, I'm not an SDL user. This is just my

 understanding of this.
  The above description might very well be flawed in some way, but SDL
  initialization is peculiar.
 
 
  I can later try to add some of the options from the libtool

 invocation generated by autoconf to my invocation of gcc to see

 which particular option causes the failure and then let you know.

 I think that your description of the way SDL does things on mingw

 is sound (and I think that the goal is to ensure portability, as
  unix programmers have no idea what the WinMain is)

 Hmmm, I have this hunch that the -nostdlib option that libtool adds to the
 g++ invocation beats -mwindows, just like it beats -pthread. But I don't
 know that for a fact...


I just made the following test: I removed the mediation of libtool
and called g++ directly, with the same flags, i.e.
g++ -D_GNU_SOURCE=1 -Dmain=SDL_main -Ic:/mingw/msys/1.0/include/SDL
-Ic:/mingw/msys/1.0/include/guile/2.0 -I/usr/local/include
-Ic:/mingw/msys/1.0/include-Wall -Werror  -g -O2   -o slayer.exe file.o
font.o image.o input.o slayer.o symbols.o video.o   -mwindows
-Lc:/mingw/msys/1.0/lib -lmingw32 -lSDLmain -lSDL   -Lc:/mingw/msys/1.0/lib
-lguile-2.0 -lgc -mwindows -Lc:/mingw/msys/1.0/lib -lSDL_image
-lmingw32 -lSDLmain -lSDL   -lSDL_ttf

(the initial part, /bin/sh ../libtool --tag=CXX   --mode=link, was
removed)
and it got linked with no complaints. I then removed both -mwindows flags
from the above invocation, and it did work as well.

So plainly it looks as if there was some problem with libtool on MinGW.
Unfortunately, I'm not a shell scripting master, so I can't say exactly
which command libtool uses to link the program and how it is invoked.
___
https://lists.gnu.org/mailman/listinfo/libtool


Using libtool via autotools causes linking problem on mingw

2013-11-07 Thread Panicz Maciej Godek
Hi,
For some time I've been trying to compile my framework
for writing multimedia and 3d games in Guile Scheme
on Windows/MinGW.
The framework uses SDL library, and more details can be
found here: https://puszcza.gnu.org.ua/projects/slayer

After many issues with compiling Guile Scheme on MinGW,
I've finally managed to achieve it, and having build SDL,
I proceeded to compile my framework.

Although I did use the autotools to create a package,
I know only superficially how it is supposed to work.
Having ./configured my project, I managed to build the
object files, but the final linking (performed by libtool)
fails. It is invoked in the following way:

./libtool --tag=CXX   --mode=link g++ -D_GNU_SOURCE=1 -Dmain=SDL_main
-Ic:/mingw/msys/1.0/include/SDL   -Ic:/mingw/msys/1.0/include/guile/2.0
-I/usr/local/include -Ic:/mingw/msys/1.0/include-Wall -Werror -mwindows
-Lc:/mingw/msys/1.0/lib -lmingw32 -lSDLmain -lSDL   -Lc:/mingw/msys/1.0/lib
-lguile-2.0 -lgc -mwindows -Lc:/mingw/msys/1.0/lib -lSDL_image
-lmingw32 -lSDLmain -lSDL   -g -O2 -mwindows -Lc:/mingw/msys/1.0/lib
-lmingw32 -lSDLmain -lSDL   -Lc:/mingw/msys/1.0/lib -lguile-2.0 -lgc
-mwindows -Lc:/mingw/msys/1.0/lib -lSDL_image -lmingw32 -lSDLmain -lSDL
 -o slayer.exe file.o font.o image.o input.o slayer.o symbols.o video.o
 -lSDL_ttf

and the following error appears:
c:/mingw/msys/1.0/lib/libmingw32.a(main.o): In function `main':
e:\p\giaw\src\pkg\mingwrt-4.0.3-1-mingw32-src\bld/../mingwrt-4.0.3-1-mingw32-src/src/libcrt/crt/main.c:91:
undefined reference to `WinMain@16'
collect2.exe: error: ld returned 1 exit status

However, I do manage to build the executable with the following command:
gcc -o slayer.exe file.o font.o image.o input.o slayer.o symbols.o video.o
-mwindows -lmingw32 -lSDLmain -lSDL -lSDL_image -lSDL_ttf -lguile-2.0

(there are still some problems caused by libguile in the runtime, but at
least the linkign stage succeeds)

I know that it might be a complicated issue, and the cause might lie on the
side of either MinGW or SDL or pkg-config or autotools or mine, but I
thought it might be best to ask you first.

The project's files can be browsed here
http://hg.gnu.org.ua/hgweb/slayer/file/bb4c97fd8329

Thanks in advance,
M.
___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Using libtool via autotools causes linking problem on mingw

2013-11-07 Thread Peter Rosin
On 2013-11-07 22:00, Panicz Maciej Godek wrote:
 Hi,
 For some time I've been trying to compile my framework
 for writing multimedia and 3d games in Guile Scheme
 on Windows/MinGW.
 The framework uses SDL library, and more details can be
 found here: https://puszcza.gnu.org.ua/projects/slayer
 
 After many issues with compiling Guile Scheme on MinGW,
 I've finally managed to achieve it, and having build SDL,
 I proceeded to compile my framework.
 
 Although I did use the autotools to create a package,
 I know only superficially how it is supposed to work.
 Having ./configured my project, I managed to build the
 object files, but the final linking (performed by libtool)
 fails. It is invoked in the following way:
 
 ./libtool --tag=CXX   --mode=link g++ -D_GNU_SOURCE=1 -Dmain=SDL_main 
 -Ic:/mingw/msys/1.0/include/SDL   -Ic:/mingw/msys/1.0/include/guile/2.0 
 -I/usr/local/include -Ic:/mingw/msys/1.0/include-Wall -Werror -mwindows 
 -Lc:/mingw/msys/1.0/lib -lmingw32 -lSDLmain -lSDL   -Lc:/mingw/msys/1.0/lib 
 -lguile-2.0 -lgc -mwindows -Lc:/mingw/msys/1.0/lib -lSDL_image -lmingw32 
 -lSDLmain -lSDL   -g -O2 -mwindows -Lc:/mingw/msys/1.0/lib -lmingw32 
 -lSDLmain -lSDL   -Lc:/mingw/msys/1.0/lib -lguile-2.0 -lgc -mwindows 
 -Lc:/mingw/msys/1.0/lib -lSDL_image -lmingw32 -lSDLmain -lSDL-o 
 slayer.exe file.o font.o image.o input.o slayer.o symbols.o video.o
 -lSDL_ttf 
 
 and the following error appears:
 c:/mingw/msys/1.0/lib/libmingw32.a(main.o): In function `main':
 e:\p\giaw\src\pkg\mingwrt-4.0.3-1-mingw32-src\bld/../mingwrt-4.0.3-1-mingw32-src/src/libcrt/crt/main.c:91:
  undefined reference to `WinMain@16'
 collect2.exe: error: ld returned 1 exit status
 
 However, I do manage to build the executable with the following command:
 gcc -o slayer.exe file.o font.o image.o input.o slayer.o symbols.o video.o 
 -mwindows -lmingw32 -lSDLmain -lSDL -lSDL_image -lSDL_ttf -lguile-2.0
 
 (there are still some problems caused by libguile in the runtime, but at 
 least the linkign stage succeeds)
 
 I know that it might be a complicated issue, and the cause might lie on the 
 side of either MinGW or SDL or pkg-config or autotools or mine, but I thought 
 it might be best to ask you first.
 
 The project's files can be browsed here
 http://hg.gnu.org.ua/hgweb/slayer/file/bb4c97fd8329

Hi!

This is a classic error. You have to specify libraries *after* the object
files and other libraries that need them in order to be portable. In your
case the specifics are that you are adding a lot of $(FOO_LIBS) vars to
AM_LDFLAGS in src/Makefile.am when you should probably have specified
them in slayer_LDADD or something such instead.

Hope that helps.

Cheers,
Peter

___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Using libtool via autotools causes linking problem on mingw

2013-11-07 Thread Panicz Maciej Godek
Hi,
I did apply that change, i.e. replaced AM_LDFLAGS with slayer_LDADD and
moved the definition to the end of the src/Makefile.am. The libtool is
right now invoked this way:
/bin/sh ../libtool --tag=CXX   --mode=link g++ -D_GNU_SOURCE=1
-Dmain=SDL_main -Ic:/mingw/msys/1.0/include/SDL
-Ic:/mingw/msys/1.0/include/guile/2.0 -I/usr/local/include
-Ic:/mingw/msys/1.0/include-Wall -Werror  -g -O2   -o slayer.exe file.o
font.o image.o input.o slayer.o symbols.o video.o   -mwindows
-Lc:/mingw/msys/1.0/lib -lmingw32 -lSDLmain -lSDL   -Lc:/mingw/msys/1.0/lib
-lguile-2.0 -lgc -mwindows -Lc:/mingw/msys/1.0/lib -lSDL_image
-lmingw32 -lSDLmain -lSDL   -lSDL_ttf

(plainly the libraries are given after the .o files) but I still get the
same error message.
___
https://lists.gnu.org/mailman/listinfo/libtool


Re: Using libtool via autotools causes linking problem on mingw

2013-11-07 Thread Peter Rosin
On 2013-11-07 23:39, Panicz Maciej Godek wrote:
 Hi,
 I did apply that change, i.e. replaced AM_LDFLAGS with slayer_LDADD and moved 
 the definition to the end of the src/Makefile.am. The libtool is right now 
 invoked this way:
 /bin/sh ../libtool --tag=CXX   --mode=link g++ -D_GNU_SOURCE=1 
 -Dmain=SDL_main -Ic:/mingw/msys/1.0/include/SDL   
 -Ic:/mingw/msys/1.0/include/guile/2.0 -I/usr/local/include 
 -Ic:/mingw/msys/1.0/include-Wall -Werror  -g -O2   -o slayer.exe file.o 
 font.o image.o input.o slayer.o symbols.o video.o   -mwindows 
 -Lc:/mingw/msys/1.0/lib -lmingw32 -lSDLmain -lSDL   -Lc:/mingw/msys/1.0/lib 
 -lguile-2.0 -lgc -mwindows -Lc:/mingw/msys/1.0/lib -lSDL_image -lmingw32 
 -lSDLmain -lSDL   -lSDL_ttf 
 
 (plainly the libraries are given after the .o files) but I still get the same 
 error message.

Ok, I'm at a loss then. But I bet it's some kind of argument ordering issue...
Maybe you could try moving -mwindows last or something?

How to make that happen sanely with pkg-config is another matter. Sigh.

Cheers,
Peter


___
https://lists.gnu.org/mailman/listinfo/libtool


Re: libtool-2.4.2.418 released [alpha]

2013-11-05 Thread Tim Mooney



Libtoolers!



The Libtool Team is pleased to announce the release of libtool 2.4.2.418.



This is a preliminary alpha release to begin platform testing in
preparation for the next stable release.


I built 2.4.2.418 on x86_64-pc-solaris2.11 (OpenIndiana 151a8) with
the Oracle Studio 12.3 toolchain.  There was one unexpected failure
in the new test suite:

 21: quote shell meta-characters in filenamesFAILED (libtool.at:120)

If I re-run the test-suite with --verbose, test #21 shows:

21. libtool.at:60: testing quote shell meta-characters in filenames ...
./libtool.at:102: $LIBTOOL -n --mode=$mode $preargs $preflag$flag:test
$postargs
stdout:
libtool: compile:  cc -c -DVAR=:test foo.c  -KPIC -DPIC -o .libs/foo.o
libtool: compile:  cc -c -DVAR=:test foo.c -o foo.o /dev/null 21
./libtool.at:106: grep $mode:.*$match_preflag$flag:test  stdout
stdout:
libtool: compile:  cc -c -DVAR=:test foo.c  -KPIC -DPIC -o .libs/foo.o
libtool: compile:  cc -c -DVAR=:test foo.c -o foo.o /dev/null 21
./libtool.at:116: $LIBTOOL -n --mode=$mode $preargs $preflag$flag\\:test\\ 
$postargs
stdout:
libtool: compile:  cc -c -DVAR=\\:test\\ foo.c  -KPIC -DPIC -o .libs/foo.o
libtool: compile:  cc -c -DVAR=\\:test\\ foo.c -o foo.o /dev/null 21
./libtool.at:120: grep 
$mode:.*$match_preflag'\?'$flag:test'\? ' stdout
stdout:
./libtool.at:120: exit code was 1, expected 0
21. libtool.at:60:  FAILED (libtool.at:120)


Let me know what other useful information I can provide.

There's a patch after my signature that alters the README to provide
the actual name of the log file from the test suite.

Tim
--
Tim Mooney tim.moo...@ndsu.edu
Enterprise Computing  Infrastructure  701-231-1076 (Voice)
Room 242-J6, IACC Building 701-231-8541 (Fax)
North Dakota State University, Fargo, ND 58105-5164


--- libtool-2.4.2.418.orig/README   2013-10-26 19:02:00.0 -0500
+++ libtool-2.4.2.418/README2013-11-05 16:16:33.243527395 -0600
@@ -113,7 +113,7 @@
 to send the verbose output of the FAILing group, along with the
 information from the end of '$(top_builddir)/libtool --help' to the bug
 report mailing list, bug-libt...@gnu.org with a subject line that
-includes the string '[TEST FAILURE]'.  The file test-suite.log contains
+includes the string '[TEST FAILURE]'.  The file testsuite.log contains
 the verbose output from all failed tests.

 In order to enable debug shell tracing, you can set VERBOSE=debug when

___
https://lists.gnu.org/mailman/listinfo/libtool


Re: libtool-2.4.2.418 released [alpha]

2013-11-05 Thread Gary V. Vaughan
Hi Tim,

 On 6 Nov 2013, at 11:20, Tim Mooney tim.moo...@ndsu.edu wrote:
 The Libtool Team is pleased to announce the release of libtool 2.4.2.418.
 
 This is a preliminary alpha release to begin platform testing in
 preparation for the next stable release.
 
 I built 2.4.2.418 on x86_64-pc-solaris2.11 (OpenIndiana 151a8) with
 the Oracle Studio 12.3 toolchain.  There was one unexpected failure
 in the new test suite:
 
 21: quote shell meta-characters in filenamesFAILED (libtool.at:120)

Yes, I'm seeing this failure on quite a few of my test architectures too, but
haven't been able to get to the bottom of it. If you have any insight, I'd be
very happy to hear about it.

 If I re-run the test-suite with --verbose, test #21 shows:
 
 21. libtool.at:60: testing quote shell meta-characters in filenames ...
 ./libtool.at:102: $LIBTOOL -n --mode=$mode $preargs $preflag$flag:test
 $postargs
 stdout:
 libtool: compile:  cc -c -DVAR=:test foo.c  -KPIC -DPIC -o .libs/foo.o
 libtool: compile:  cc -c -DVAR=:test foo.c -o foo.o /dev/null 21
 ./libtool.at:106: grep $mode:.*$match_preflag$flag:test  stdout
 stdout:
 libtool: compile:  cc -c -DVAR=:test foo.c  -KPIC -DPIC -o .libs/foo.o
 libtool: compile:  cc -c -DVAR=:test foo.c -o foo.o /dev/null 21
 ./libtool.at:116: $LIBTOOL -n --mode=$mode $preargs $preflag$flag\\:test\\ 
 $postargs
 stdout:
 libtool: compile:  cc -c -DVAR=\\:test\\ foo.c  -KPIC -DPIC -o .libs/foo.o
 libtool: compile:  cc -c -DVAR=\\:test\\ foo.c -o foo.o /dev/null 21
 ./libtool.at:120: grep 
 $mode:.*$match_preflag'\?'$flag:test'\? ' stdout
 stdout:
 ./libtool.at:120: exit code was 1, expected 0
 21. libtool.at:60:  FAILED (libtool.at:120)
 
 
 Let me know what other useful information I can provide.

A fix? ;-)

 There's a patch after my signature that alters the README to provide
 the actual name of the log file from the test suite.

Thanks, I'll apply and push that presently.

Cheers,
-- 
Gary V. Vaughan (gary AT gnu DOT org)
___
https://lists.gnu.org/mailman/listinfo/libtool


Re: libtool-2.4.2.418 released [alpha]

2013-11-05 Thread Tim Rice

Hi Gary and Tim,

On Wed, 6 Nov 2013, Gary V. Vaughan wrote:

| Hi Tim,
| 
|  On 6 Nov 2013, at 11:20, Tim Mooney tim.moo...@ndsu.edu wrote:
|  The Libtool Team is pleased to announce the release of libtool 2.4.2.418.
|  
|  This is a preliminary alpha release to begin platform testing in
|  preparation for the next stable release.
|  
|  I built 2.4.2.418 on x86_64-pc-solaris2.11 (OpenIndiana 151a8) with
|  the Oracle Studio 12.3 toolchain.  There was one unexpected failure
|  in the new test suite:
|  
|  21: quote shell meta-characters in filenamesFAILED (libtool.at:120)
| 
| Yes, I'm seeing this failure on quite a few of my test architectures too, but
| haven't been able to get to the bottom of it. If you have any insight, I'd be
| very happy to hear about it.

Gary, in bug#15734 you sugested it was a problem with grep.
On my UnixWare box, I tested with a GNU grep first in the path and #21
did not fail. Now, which part is tripping up the system grep and what
to do about it, I do not know. ;-)

-- 
Tim RiceMultitalents(707) 456-1146
t...@multitalents.net


___
https://lists.gnu.org/mailman/listinfo/libtool


Re: bug#15734: libtool 2.4.2.418 in UnixWare

2013-10-27 Thread Gary V. Vaughan
Hi Tim,

Thanks for the report.

On Oct 28, 2013, at 9:06 AM, Tim Rice t...@multitalents.net wrote:

 On Sun, 27 Oct 2013, Tim Rice wrote:
 
 | On Sun, 27 Oct 2013, Tim Rice wrote:
 | 
 |  
 |  UnixWare 7.1.4
 |  
 |  Things don't look so good on the alpha release.
 |  ..
 | To: bug-libt...@gnu.org
 | Subject: [GNU Libtool 2.4.2.418] testsuite: 9 10 11 15 16 18 21 122 
 123 124 125 129 failed
 |  ..
 | 
 | Saw this in the build log.
 | --
 |   GEN  libtoolize
 | UX:sed: ERROR: Command garbled:   s|^m4trace: -1- 
 AC_CONFIG_AUX_DIR[([]*||
 |   GEN  libltdl/argz.h
 | --
 
 This patch helps some.
 
 .
 --- libtool-2.4.2.418/Makefile.am.old 2013-01-25 20:19:11.0 -0800
 +++ libtool-2.4.2.418/Makefile.am 2013-10-27 12:13:43.776276925 -0700
 @@ -248,7 +248,7 @@
 ##  ##
 
 abs_aux_dir = `$(lt__cd) '$(srcdir)/$(aux_dir)'  pwd`
 -ltdl_ac_aux_dir = `$(extract_trace) AC_CONFIG_AUX_DIR 
 $(srcdir)/libltdl/configure.ac`
 +ltdl_ac_aux_dir = `SED=$(SED) $(extract_trace) AC_CONFIG_AUX_DIR 
 $(srcdir)/libltdl/configure.ac`
 
 configure_edit = $(bootstrap_edit) \
   -e '/^\. /s|@auxscriptsdir\@|'$(abs_aux_dir)'|g' \
 .
 
   To: bug-libt...@gnu.org
   Subject: [GNU Libtool 2.4.2.418] testsuite: 21 122 123 124 125 129 failed
 


Most of the remaining failures seem to be caused by the unset variable in the 
testsuite
getting set to ‘no’ rather than ‘unset’ or ‘:’ as was originally intended on 
your host.
However, Autotest already provides as_unset, so the following patch switches to 
that:

diff --git a/tests/demo.at b/tests/demo.at
index f1fd9a8..c0a1486 100644
--- a/tests/demo.at
+++ b/tests/demo.at
@@ -796,7 +796,7 @@ rm -f libhello.la hell$EXEEXT

 # If this check fails (i.e. the make succeeds), then the installed library
 # was used, which is wrong.
-AT_CHECK([$unset LIBTOOL LIBTOOLIZE; $MAKE hell$EXEEXT 
libhello_la_OBJECTS=hello.lo || (exit 1)],
+AT_CHECK([$as_unset LIBTOOL; $as_unset LIBTOOLIZE; $MAKE hell$EXEEXT 
libhello_la_OBJECTS=hello.lo || (exit 1)],
  [1], [ignore], [ignore])

 AT_CLEANUP
diff --git a/tests/testsuite.at b/tests/testsuite.at
index ecbdfc2..99122be 100644
--- a/tests/testsuite.at
+++ b/tests/testsuite.at
@@ -51,11 +51,6 @@ fi
 if test -n $to_tool_file_cmd; then
   configure_options=$configure_options 
lt_cv_to_tool_file_cmd=$to_tool_file_cmd
 fi
-if (FOO=bar; unset FOO) /dev/null 21; then
-  unset=unset
-else
-  unset=false
-fi
 : ${mkdir_p=$abs_top_srcdir/build-aux/install-sh -d}
 # Fix relative paths in $lt_INSTALL
 case $lt_INSTALL in
@@ -193,7 +188,7 @@ m4_define([LT_AT_CONFIGURE],
 m4_define([LT_AT_MAKE],
 [for target in m4_default([$1], [all])
 do
-  AT_CHECK([$unset LIBTOOL LIBTOOLIZE; $MAKE $target $2], [0], [ignore], 
[ignore])
+  AT_CHECK([$as_unset LIBTOOL; $as_unset LIBTOOLIZE; $MAKE $target $2], [0], 
[ignore], [ignore])
 done
 ])

I’ve pushed this patch already.

The remaining failure looks to be a similar problem to the sed issue you 
discovered but with
grep.  Since extract-trace is supposed to work standalone, I’ll find a way to 
have funclib.sh
find a suitable sed and grep, which will fix not only the problems your patch 
works on, but
also the remaining test failure, and no doubt similar latent bugs in other 
funclib.sh clients
(bootstrap and libtoolize).

Please, let me know if your still having issues after that.

Cheers,
-- 
Gary V. Vaughan (gary AT gnu DOT org)



signature.asc
Description: Message signed with OpenPGP using GPGMail


[SCM] GNU Libtool branch, master, updated. v2.4.2-419-geea1df8

2013-10-26 Thread Gary V. Vaughan
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The branch, master has been updated
   via  eea1df80de2239ae2962786cbcb33fa3e3b4533a (commit)
   via  4427784fe74e8f18c781d62624a0adb647893849 (commit)
  from  e168b14b1bd4bb59a9142259cad60d85d2c7bdab (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit eea1df80de2239ae2962786cbcb33fa3e3b4533a
Author: Gary V. Vaughan g...@gnu.org
Date:   Sun Oct 27 13:02:07 2013 +1300

maint: post-release administrivia

* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.

commit 4427784fe74e8f18c781d62624a0adb647893849
Author: Gary V. Vaughan g...@gnu.org
Date:   Sun Oct 27 11:52:43 2013 +1300

version 2.4.2.418

* NEWS: Record release date.

---

Summary of changes:
 .prev-version |2 +-
 NEWS  |3 +++
 cfg.mk|2 +-
 3 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/.prev-version b/.prev-version
index 8e8299d..9d45785 100644
--- a/.prev-version
+++ b/.prev-version
@@ -1 +1 @@
-2.4.2
+2.4.2.418
diff --git a/NEWS b/NEWS
index e872922..0c85812 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,9 @@ NEWS - list of user-visible changes between releases of GNU 
Libtool
 
 * Noteworthy changes in release ?.? (-??-??) [?]
 
+
+* Noteworthy changes in release 2.4.2.418 (2013-10-27) [alpha]
+
 ** New features:
 
   - Moved to gnulib release infrastructure.
diff --git a/cfg.mk b/cfg.mk
index 652b821..6d308de 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -24,7 +24,7 @@
 update-copyright-env := UPDATE_COPYRIGHT_FORCE=1 
UPDATE_COPYRIGHT_USE_INTERVALS=1
 
 # Set format of NEWS
-old_NEWS_hash := d41d8cd98f00b204e9800998ecf8427e
+old_NEWS_hash := c7c9fc43ba42057e4f8bd593a0c2e086
 
 manual_title = Portable Dynamic Shared Object Management
 


hooks/post-receive
-- 
GNU Libtool



[SCM] GNU Libtool annotated tag, v2.4.2.418, created. v2.4.2.418

2013-10-26 Thread Gary V. Vaughan
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project GNU Libtool.

The annotated tag, v2.4.2.418 has been created
at  8ce3ae0ad103366fbc2511b55f8a174f1975937a (tag)
   tagging  4427784fe74e8f18c781d62624a0adb647893849 (commit)
  replaces  v2.4.2
 tagged by  Gary V. Vaughan
on  Sun Oct 27 11:52:43 2013 +1300

- Log -
libtool 2.4.2.418
-BEGIN PGP SIGNATURE-
Version: GnuPG/MacGPG2 v2.0.20 (Darwin)

iEYEABECAAYFAlJsR7sACgkQFRMICSmD1gaN+gCfRv2uPNKGjnxawuhiSVwNQtwr
x64AoI5coiNyu5XWdXRgI8IHYUIj288A
=qwCV
-END PGP SIGNATURE-

Alan Modra (5):
  libtool: initial powerpc*le-linux support
  libtool: fix mangled powerpc*le-linux support patch
  libtool: refix unmangled powerpc*le-linux support patch
  libtool: fix refixed unmangled powerpc*le-linux support patch
  bootstrap: make first char of IFS a space.

Andreas Schwab (2):
  Pass through -g* so that debugging information is not dropped
  Pass through -g* so that debugging information is not dropped

Bernhard Voelker (1):
  bootstrap: always auto-add .gitignore files at the top.

Bob Friesenhahn (1):
  Fixed func_split_equals shell quoting syntax error encountered with

Brad Smith (3):
  Update/simplify OpenBSD support
  Update/simplify OpenBSD support
  libtool: add bitrig support.

Brook Moses (1):
  libtool: improve comments for _LT_ENABLE_LOCK implementation.

Brooks Moses (4):
  * AUTHORS: Add myself to committers list.
  libtool: Discard -mllvm $arg options when linking.
  libtool: Fix comment indentation
  libtool: Remove unneeded quotes in assignment.

DJ Delorie (1):
  libtool: Add TPF settings for LT_SYS_DLOPEN_SELF

David 'Digit' Turner (1):
  libtool: Add Android/Linux support.

David Edelsohn (2):
  AIX PIC shared library support
  AIX PIC shared library support

Fabian Groffen (1):
  libtool: Fix x86_64-pc-solaris2.* GNU ld breakage

Gary V. Vaughan (321):
  Post-release administrivia.
  build: avoid spurious bootstrap_edit call.
  build: compare `revision' rather than `correctver' in Makefile.am.
  build: avoid unnecessary directory changes in Makefile rules.
  build: factor Makefile.am `m4sh' invocations to LT_M4SH.
  build: name temporary files in `Makefile.am' consistently.
  build: make better use of automatic variables in `Makefile.am'.
  build: don't hardcode repeated long paths in Makefile rules.
  build: eliminate `ltmain.in' and `libtoolize.in' intermediate files.
  build: eliminate superfluous temporary files from `Makefile.am'.
  maint: simplify and improve safety of bootstrap process.
  maint: let make employ user's `SED' setting.
  Makefile: try to be robust against shell meta-chars in filenames.
  maint: use aux_dir consistently in all files.
  maint: use macro_dir consistently in all files.
  CLEANUP: fix error from pushing too far up the branch.
  maint: DRYing out `Makefile.am' file paths.
  maint: factor out ltmain.sh variable deletion.
  maint: pass directory declarations in configure.ac into Makefile.
  tests: DRYing out `tests/sh.test'.
  tests: remove unused `aux_dir' variable from `getopt-m4sh.test'.
  maint: don't run help2man on programs not-yet-built.
  maint: tidy, sort and consolidate .gitignore files.
  maint: add gnulib submodule.
  maint: use gnulib's (pending saner) bootstrap script.
  maint: use gnulib's canonical COPYING files.
  maint: use gnulib's canonical fdl.texi.
  maint: use gnulib's maintainer-makefile module.
  maint: don't make autobuild a hard bootstrap requirement.
  tests: ensure VPATH autom4te search path can find autotests.
  maint: use gnulib's maint.mk and support scripts release procedure.
  maint: use gnulib's git-version-gen instead of mkstamp.
  maint: use gnulib's gitlog-to-changelog instead of a ChangeLog file.
  libtoolize: fix some long-standing sed substitution bugs
  tests: add a keyword `expensive' to very long running tests.
  maint: ensure bootstrap runs from dist tarball.
  maint: add autobuild prerequisite only if autobuild.m4 is absent.
  build: support AM_SILENT_RULES
  build: substitute paths into defs.m4sh instead of recalculating.
  maint: dynamically strip unused scripts from libltdl Makefile.
  maint: rename the debug shell command variable to `debug_cmd'.
  libtoolize: fix a scoping bug in func_aclocal_update_check.
  libtoolize: rename `--subproject' option, and make it work.
  tests: fix parsing of configure output by pic_flag.at.
  maint: substitute static directory names.
  maint: calculate required mkinstalldirs calls during `make install'.
  tests: prefix absolute directory variables with 'abs_

libtool-2.4.2.418 released [alpha]

2013-10-26 Thread Gary V. Vaughan
Libtoolers!

The Libtool Team is pleased to announce the release of libtool 2.4.2.418.

This is a preliminary alpha release to begin platform testing in
preparation for the next stable release.

GNU Libtool hides the complexity of using shared libraries behind a
consistent, portable interface. GNU Libtool ships with GNU libltdl, which
hides the complexity of loading dynamic runtime libraries (modules)
behind a consistent, portable interface.

Here are the compressed sources:
  ftp://alpha.gnu.org/gnu/libtool/libtool-2.4.2.418.tar.gz   (1.6MB)
  ftp://alpha.gnu.org/gnu/libtool/libtool-2.4.2.418.tar.xz   (920KB)

Here are the GPG detached signatures[*]:
  ftp://alpha.gnu.org/gnu/libtool/libtool-2.4.2.418.tar.gz.sig
  ftp://alpha.gnu.org/gnu/libtool/libtool-2.4.2.418.tar.xz.sig

Use a mirror for higher download bandwidth:
  http://www.gnu.org/order/ftp.html

[*] Use a .sig file to verify that the corresponding file (without the
.sig suffix) is intact.  First, be sure to download both the .sig file
and the corresponding tarball.  Then, run a command like this:

  gpg --verify libtool-2.4.2.418.tar.gz.sig

If that command fails because you don't have the required public key,
then run this command to import it:

  gpg --keyserver keys.gnupg.net --recv-keys 2983D606

and rerun the 'gpg --verify' command.

This release was bootstrapped with the following tools:
  Autoconf 2.69
  Automake 1.14
  Gnulib 5191b35

NEWS

* Noteworthy changes in release 2.4.2.418 (2013-10-27) [alpha]

** New features:

  - Moved to gnulib release infrastructure.

  - M4 is now used for scanning the M4 macros in your configure.ac that
   'libtoolize' looks at to determine what files you want, and where you
would like them installed.  This means that you can compose your
version number or any other argument that Libtoolize needs to know at
M4 time using git-version-gen from gnulib, for example.

  - Invoking 'libtoolize --ltdl' no longer maintains a separate autoconf
macro directory in the libltdl tree, but automatically adjusts the
installed libltdl configuration files to share whatever macro
directory is declared by the parent project. (Note: if you were
already sharing a macro directory with AC_CONFIG_MACRO_DIR(ltdl/m4)
or similar, that still works as does any other directory choice).

  - Invoking 'libtoolize --ltdl' no longer maintains a separate auxiliary
scripts directory in the libltdl tree, but automatically adjusts the
installed libltdl configuration files to share whatever auxiliary
scripts directory is declared by the parent project. (Note: if you
were already sharing an auxiliary directory with subproject libltdl
using AC_CONFIG_AUX_DIR(ltdl/config) or similar, that still works as
does any other directory choice).

  - The legacy tests have all been migrated to the Autotest harness.

  - The Autotest testsuite can be run without the especially time consuming
tests with:

make check-local TESTSUITEFLAGS='-k !expensive'

** Bug fixes:

  - Fix a long-standing latent bug in autom4te include path for autotests
with VPATH builds.
  - Fix a long-standing latent bug in libtoolize that could delete lines
from libltdl/Makefile.am in recursive mode due to underquoting in a
sed script.
  - Fix a long-standing bug in libtoolize, by outputting the 'putting
auxiliary files in' header with 'libtoolize --ltdl --subproject'.
  - Fix a long-standing bug in libtoolize subproject installation, by not
installing a set of autoconf macro files into the parent project if
there is no configure.ac present to use them.
  - The libtoolize subproject mode selector is now named '--subproject'
and is equivalent to the implied '--subproject' mode when no other
mode is selected; '--standalone' never worked, and is no longer
accepted.
  - Libtool and libtoolize no longer choke on paths with a comma in them.
  - In the case where $SHELL does not have the same enhanced features
(e.g. the ability to parse 'var+=append') as $CONFIG_SHELL, libtool
will now correctly fallback to using only vanilla shell features
instead of failing with a parse at startup.
  - Correctly recognize import libraries when Microsoft dumpbin is used
as the name lister and extend the dumpbin wrapper to find symbols
in import libraries using the -headers option of dumpbin. Also fix a
bug in the dumpbin wrapper that could lead to broken symbol listings
in some corner cases.
  - Use the improved Microsoft dumpbin support to mend preloading of
import libraries for Microsoft Visual C/C++.
  - No longer mangle module-definition (.def) files when feeding them to
the Microsoft Visual C/C++ linker via the -export-symbols argument to
the libtool script, thus matching how .def files are handled when
using GNU tools.
  - Recognize more variants (e.g. those starting with a LIBRARY statement)
of module-definitions (.def) files when using them instead

Re: Libtool library used but 'LIBTOOL' is undefined

2013-09-23 Thread Giuseppe Aprea
I am not sure I understand you; Here
http://www.mesa3d.org/install.htmlthey say to install in the standard
way: configure-make-make install.
In the attachment you can find all stderr and stdout from configure and
make. configure step is ok while I receive errors during make step.




On Sat, Sep 21, 2013 at 5:15 PM, Robert Boehne rboe...@gmail.com wrote:

 Mesa
 On Sep 21, 2013 1:21 AM, Giuseppe Aprea giuseppe.ap...@gmail.com
 wrote:

 Thanks for your answer but I am not sure I understand it. Are you talking
 about libtool, automake or mesalib installation?

 The file I attached is given by configure+make. More in detail, the
 configure works fine while the make steps gives an error.

 g


 On Fri, Sep 20, 2013 at 6:50 PM, Robert Boehne rboe...@gmail.com wrote:

 You seem to have mismatched bits of Makefiles and configure.  To
 install, you should simply unpack a tar ball and run configure.  It looks
 like you have regenerated some of these things on an inconsistent way.

 HTH,

 Robert Boehne
 On Sep 20, 2013 10:35 AM, Giuseppe Aprea giuseppe.ap...@gmail.com
 wrote:

 Hi all,

 I have a problem during mesalib installation which seems connected
 with libtool. I guess the problem may be due to my environment since I
 have automake and libtool installed in non-standard places.

 libtool is under ${GLOBAL_PREFIX}/libtool/${LIBTOOL_VERSION}/
 (version=2.4.2)
 automake is under ${GLOBAL_PREFIX}/automake/${AUTOMAKE_VERSION}
 (version=1.12.6)
 pkg-config is under ${GLOBAL_PREFIX}/pkg-config/${PKGCONFIG_VERSION}
 (version=0.28)

 trying to install mesalib under 
 ${GLOBAL_PREFIX}/mesalib/${MESALIB_VERSION},
 during make I receive lots of errors like:

 src/mesa/drivers/dri/radeon/Makefile.am:42:   The usual way to define
 'LIBTOOL' is to add 'LT_INIT'
 src/mesa/drivers/dri/radeon/Makefile.am:42:   to 'configure.ac' and
 run 'aclocal' and 'autoconf' again.
 src/mesa/drivers/dri/radeon/Makefile.am:42:   If 'LT_INIT' is in '
 configure.ac', make sure
 src/mesa/drivers/dri/radeon/Makefile.am:42:   its definition is in
 aclocal's search path.
 src/mesa/drivers/dri/swrast/Makefile.am:39: error: Libtool library
 used but 'LIBTOOL' is undefined
 src/mesa/drivers/dri/swrast/Makefile.am:39:   The usual way to define
 'LIBTOOL' is to add 'LT_INIT'
 src/mesa/drivers/dri/swrast/Makefile.am:39:   to 'configure.ac' and
 run 'aclocal' and 'autoconf' again.
 src/mesa/drivers/dri/swrast/Makefile.am:39:   If 'LT_INIT' is in '
 configure.ac', make sure
 src/mesa/drivers/dri/swrast/Makefile.am:39:   its definition is in
 aclocal's search path.
 src/mesa/drivers/osmesa/Makefile.am:35: error: Libtool library used
 but 'LIBTOOL' is undefined
 src/mesa/drivers/osmesa/Makefile.am:35:   The usual way to define
 'LIBTOOL' is to add 'LT_INIT'
 src/mesa/drivers/osmesa/Makefile.am:35:   to 'configure.ac' and run
 'aclocal' and 'autoconf' again.
 src/mesa/drivers/osmesa/Makefile.am:35:   If 'LT_INIT' is in '
 configure.ac', make sure
 src/mesa/drivers/osmesa/Makefile.am:35:   its definition is in
 aclocal's search path.
 src/mesa/drivers/x11/Makefile.am:35: error: Libtool library used but
 'LIBTOOL' is undefined
 src/mesa/drivers/x11/Makefile.am:35:   The usual way to define
 'LIBTOOL' is to add 'LT_INIT'
 src/mesa/drivers/x11/Makefile.am:35:   to 'configure.ac' and run
 'aclocal' and 'autoconf' again.
 src/mesa/drivers/x11/Makefile.am:35:   If 'LT_INIT' is in 'configure.ac',
 make sure
 src/mesa/drivers/x11/Makefile.am:35:   its definition is in 
 aclocal'ssearch path.
 src/mesa/libdricore/Makefile.am:68: error: Libtool library used but
 'LIBTOOL' is undefined
 src/mesa/libdricore/Makefile.am:68:   The usual way to define
 'LIBTOOL' is to add 'LT_INIT'
 src/mesa/libdricore/Makefile.am:68:   to 'configure.ac' and run
 'aclocal' and 'autoconf' again.
 src/mesa/libdricore/Makefile.am:68:   If 'LT_INIT' is in 'configure.ac',
 make sure
 src/mesa/libdricore/Makefile.am:68:   its definition is in aclocal'ssearch 
 path.
 src/mesa/program/Makefile.am:41: error: Libtool library used but
 'LIBTOOL' is undefined
 src/mesa/program/Makefile.am:41:   The usual way to define 'LIBTOOL'
 is to add 'LT_INIT'
 src/mesa/program/Makefile.am:41:   to 'configure.ac' and run 'aclocal'
 and 'autoconf' again.
 src/mesa/program/Makefile.am:41:   If 'LT_INIT' is in 'configure.ac',
 make sure
 src/mesa/program/Makefile.am:41:   its definition is in aclocal'ssearch 
 path.

 I am working on a cluster where i am supposed to install my stuff as
 non-root so I am forced to install in non-standard paths.I defined
 ACLOCAL=aclocal -I${GLOBAL_PREFIX}/pkg-config/${PKGCONFIG
 _VERSION}/share/aclocal and then run configure and make; complete
 output is in attachment.

 It seems I need to define LT_INIT in configure.ac but it is already
 defined (from configure.ac in root meslib src folder):

 LT_PREREQ([2.2])
 LT_INIT([disable-static])

 I also tried to set LIBTOOL=${GLOBAL_PREFIX}/libtool/${LIBTOOL
 _VERSION}/bin/libtool but it didn't help.
 I would like to ask if anyone can give

Re: libtool - warnings when installing GMP using DESTDIR

2013-09-23 Thread Michael Young

Thanks, Richard.

I realize that there are off-the-shelf build tools available - open 
source and

otherwise.  (There are also prebuilt toolchains available for many
architectures.)  Ultimately, I probably will move to using one, and I'll 
keep

Yocto/Poky in mind.  Right now, I'm doing things the hard way, mainly as a
learning exercise.

Thanks again,
   Michael

___
https://lists.gnu.org/mailman/listinfo/libtool


Re: libtool - warnings when installing GMP using DESTDIR

2013-09-23 Thread Michael Young

It just dawned on me... is it that the output from the finish operation the
help that the manual refers to?  And the ldconfig -n command in the 
output a
suggested command to be run by the SA in order to create the appropriate 
links?


If so, I apologize for being a bit slow on the uptake... just let me 
know and

chalk it up to SUE.

Thanks,
   Michael

___
https://lists.gnu.org/mailman/listinfo/libtool


Re: libtool - warnings when installing GMP using DESTDIR

2013-09-20 Thread Richard Purdie
On Thu, 2013-09-19 at 15:58 -0400, Michael Young wrote:
 I'm trying to do a staged build/install of libgmp(xx) release 5.1.2.
  This is
 part of an effort to develop a general build system (mostly bash
 scripts, make
 files, etc.) for toolchains I will be using.  I intend to use these
 scripts to
 build both native and cross-builds, depending on configuration /
 arguments, so
 using DESTDIR for prefixing the install tree is important.  Right now,
 I'm 
 working on native builds on an Ubuntu 12.04 32-bit x86 machine;
 libtool 
 version = 2.4.2.)
 
I can't help with the libtool issue but there are several build systems
out there that already have these issues solves such as the one I work
on:

http://www.yoctoproject.org/docs/current/yocto-project-qs/yocto-project-qs.html

which runs on Linux and can build cross compilers targeting the common
architectures and the cross compiler itself can run on linux, windows
and osx.

Cheers,

Richard


___
https://lists.gnu.org/mailman/listinfo/libtool


Re: libtool - warnings when installing GMP using DESTDIR

2013-09-20 Thread Robert Boehne
The relinking warning is just to let you know it is linking, it isn't a
potential problem.

Robert Boehne
On Sep 19, 2013 6:21 PM, Michael Young young@gmail.com wrote:

 I was originally going to post this to the gmp-discuss list, but after
 reviewing
 it, it seems like it fits better here.  Please kindly redirect me if this
 is
 better handled elsewhere...

 I'm trying to do a staged build/install of libgmp(xx) release 5.1.2.  This
 is
 part of an effort to develop a general build system (mostly bash
 scripts, make
 files, etc.) for toolchains I will be using.  I intend to use these
 scripts to
 build both native and cross-builds, depending on configuration /
 arguments, so
 using DESTDIR for prefixing the install tree is important.  Right now, I'm
 working on native builds on an Ubuntu 12.04 32-bit x86 machine; libtool
 version = 2.4.2.)

 When building/installing gmp, I use DESTDIR with make install (as follows,
 with
 the configured prefix being
 /home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install), as
 follows:

make install DESTDIR=/home/youngmj/tmp

 I get the following warning / output:

 ***
   *snip*
 libtool: install: warning: relinking `libgmpxx.la'
 libtool: install: (cd
 /home/youngmj/tmp/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/build;
 /bin/bash
 /home/youngmj/tmp/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/build/libtool
  --tag CXX --mode=relink g++ -version-info 7:2:3 -o libgmpxx.la -rpath
 /home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib dummy.lo
 cxx/isfuns.lo cxx/ismpf.lo cxx/ismpq.lo cxx/ismpz.lo cxx/ismpznw.lo
 cxx/limits.lo cxx/osdoprnti.lo cxx/osfuns.lo cxx/osmpf.lo cxx/osmpq.lo
 cxx/osmpz.lo libgmp.la -inst-prefix-dir /home/youngmj/tmp)
 libtool: relink: g++  -fPIC -DPIC -shared -nostdlib
 /usr/lib/gcc/i686-linux-gnu/4.6/../../../i386-linux-gnu/crti.o
 /usr/lib/gcc/i686-linux-gnu/4.6/crtbeginS.o  .libs/dummy.o
 cxx/.libs/isfuns.o cxx/.libs/ismpf.o cxx/.libs/ismpq.o cxx/.libs/ismpz.o
 cxx/.libs/ismpznw.o cxx/.libs/limits.o cxx/.libs/osdoprnti.o
 cxx/.libs/osfuns.o cxx/.libs/osmpf.o cxx/.libs/osmpq.o cxx/.libs/osmpz.o
 -Wl,-rpath
 -Wl,/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib
 -L/home/youngmj/tmp/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib
 -L/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib -lgmp
 -L/usr/lib/gcc/i686-linux-gnu/4.6
 -L/usr/lib/gcc/i686-linux-gnu/4.6/../../../i386-linux-gnu
 -L/usr/lib/gcc/i686-linux-gnu/4.6/../../../../lib -L/lib/i386-linux-gnu
 -L/lib/../lib -L/usr/lib/i386-linux-gnu -L/usr/lib/../lib -L.
 -L/usr/lib/gcc/i686-linux-gnu/4.6/../../.. -lstdc++ -lm -lc -lgcc_s
 /usr/lib/gcc/i686-linux-gnu/4.6/crtendS.o
 /usr/lib/gcc/i686-linux-gnu/4.6/../../../i386-linux-gnu/crtn.o
  -Wl,-soname -Wl,libgmpxx.so.4 -o .libs/libgmpxx.so.4.3.2
 libtool: install: /usr/bin/install -c .libs/libgmpxx.so.4.3.2T
 /home/youngmj/tmp/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib/libgmpxx.so.4.3.2
 libtool: install: (cd
 /home/youngmj/tmp/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib
  { ln -s -f libgmpxx.so.4.3.2 libgmpxx.so.4 || { rm -f libgmpxx.so.4 
 ln -s libgmpxx.so.4.3.2 libgmpxx.so.4; }; })
 libtool: install: (cd
 /home/youngmj/tmp/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib
  { ln -s -f libgmpxx.so.4.3.2 libgmpxx.so || { rm -f libgmpxx.so  ln -s
 libgmpxx.so.4.3.2 libgmpxx.so; }; })
 libtool: install: /usr/bin/install -c .libs/libgmpxx.lai
 /home/youngmj/tmp/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib/
 libgmpxx.la
 libtool: install: /usr/bin/install -c .libs/libgmp.a
 /home/youngmj/tmp/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib/libgmp.a
 libtool: install: chmod 644
 /home/youngmj/tmp/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib/libgmp.a
 libtool: install: ranlib
 /home/youngmj/tmp/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib/libgmp.a
 libtool: install: /usr/bin/install -c .libs/libgmpxx.a
 /home/youngmj/tmp/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib/libgmpxx.a
 libtool: install: chmod 644
 /home/youngmj/tmp/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib/libgmpxx.a
 libtool: install: ranlib
 /home/youngmj/tmp/home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib/libgmpxx.a
 libtool: install: warning: remember to run `libtool --finish
 /home/youngmj/DevTools_3/gmp/Version_5.1.2/gmp__native/install/lib'
   *snip*
 

 [BTW - the T in the .so library version (4th line) looks wierd... can
 anyone
 verify this is OK?]

 The second warning is not the primary problem - I run the finish command
 once I
 move the installation into place.  The first warning (relinking) is what
 I'm most
 concerned about. I see where the warning is coming from - the following is
 in
 libgmpxx.la after the build and verification (make check), but prior to
 install

Libtool library used but 'LIBTOOL' is undefined

2013-09-20 Thread Giuseppe Aprea
Hi all,

I have a problem during mesalib installation which seems connected with
libtool. I guess the problem may be due to my environment since I have
automake and libtool installed in non-standard places.

libtool is under ${GLOBAL_PREFIX}/libtool/${LIBTOOL_VERSION}/
(version=2.4.2)
automake is under ${GLOBAL_PREFIX}/automake/${AUTOMAKE_VERSION}
(version=1.12.6)
pkg-config is under ${GLOBAL_PREFIX}/pkg-config/${PKGCONFIG_VERSION}
(version=0.28)

trying to install mesalib under ${GLOBAL_PREFIX}/mesalib/${MESALIB_VERSION},
during make I receive lots of errors like:

src/mesa/drivers/dri/radeon/Makefile.am:42:   The usual way to define
'LIBTOOL' is to add 'LT_INIT'
src/mesa/drivers/dri/radeon/Makefile.am:42:   to 'configure.ac' and run
'aclocal' and 'autoconf' again.
src/mesa/drivers/dri/radeon/Makefile.am:42:   If 'LT_INIT' is in '
configure.ac', make sure
src/mesa/drivers/dri/radeon/Makefile.am:42:   its definition is in
aclocal'ssearch path.
src/mesa/drivers/dri/swrast/Makefile.am:39: error: Libtool library used but
'LIBTOOL' is undefined
src/mesa/drivers/dri/swrast/Makefile.am:39:   The usual way to define
'LIBTOOL' is to add 'LT_INIT'
src/mesa/drivers/dri/swrast/Makefile.am:39:   to 'configure.ac' and run
'aclocal' and 'autoconf' again.
src/mesa/drivers/dri/swrast/Makefile.am:39:   If 'LT_INIT' is in '
configure.ac', make sure
src/mesa/drivers/dri/swrast/Makefile.am:39:   its definition is in
aclocal'ssearch path.
src/mesa/drivers/osmesa/Makefile.am:35: error: Libtool library used but
'LIBTOOL' is undefined
src/mesa/drivers/osmesa/Makefile.am:35:   The usual way to define 'LIBTOOL'
is to add 'LT_INIT'
src/mesa/drivers/osmesa/Makefile.am:35:   to 'configure.ac' and run
'aclocal' and 'autoconf' again.
src/mesa/drivers/osmesa/Makefile.am:35:   If 'LT_INIT' is in 'configure.ac',
make sure
src/mesa/drivers/osmesa/Makefile.am:35:   its definition is in
aclocal'ssearch path.
src/mesa/drivers/x11/Makefile.am:35: error: Libtool library used but
'LIBTOOL' is undefined
src/mesa/drivers/x11/Makefile.am:35:   The usual way to define 'LIBTOOL' is
to add 'LT_INIT'
src/mesa/drivers/x11/Makefile.am:35:   to 'configure.ac' and run 'aclocal'
and 'autoconf' again.
src/mesa/drivers/x11/Makefile.am:35:   If 'LT_INIT' is in 'configure.ac',
make sure
src/mesa/drivers/x11/Makefile.am:35:   its definition is in
aclocal'ssearch path.
src/mesa/libdricore/Makefile.am:68: error: Libtool library used but
'LIBTOOL' is undefined
src/mesa/libdricore/Makefile.am:68:   The usual way to define 'LIBTOOL' is
to add 'LT_INIT'
src/mesa/libdricore/Makefile.am:68:   to 'configure.ac' and run 'aclocal'
and 'autoconf' again.
src/mesa/libdricore/Makefile.am:68:   If 'LT_INIT' is in 'configure.ac',
make sure
src/mesa/libdricore/Makefile.am:68:   its definition is in aclocal's search
path.
src/mesa/program/Makefile.am:41: error: Libtool library used but 'LIBTOOL'
is undefined
src/mesa/program/Makefile.am:41:   The usual way to define 'LIBTOOL' is to
add 'LT_INIT'
src/mesa/program/Makefile.am:41:   to 'configure.ac' and run 'aclocal' and
'autoconf' again.
src/mesa/program/Makefile.am:41:   If 'LT_INIT' is in 'configure.ac', make
sure
src/mesa/program/Makefile.am:41:   its definition is in aclocal's search
path.

I am working on a cluster where i am supposed to install my stuff as
non-root so I am forced to install in non-standard paths.I defined ACLOCAL=
aclocal -I${GLOBAL_PREFIX}/pkg-config/${PKGCONFIG_VERSION}/share/aclocal
and then run configure and make; complete output is in attachment.

It seems I need to define LT_INIT in configure.ac but it is already defined
(from configure.ac in root meslib src folder):

LT_PREREQ([2.2])
LT_INIT([disable-static])

I also tried to set LIBTOOL=${GLOBAL_PREFIX}/libtool/${LIBTOOL_VERSION}/bin/
libtool but it didn't help.
I would like to ask if anyone can give me any help, please.

Any suggestion is welcome!

Thanks in advance.


mylog.bz2
Description: BZip2 compressed data
___
https://lists.gnu.org/mailman/listinfo/libtool


<    2   3   4   5   6   7   8   9   10   11   >