Hi,

I ported libtool to GNU/kOpenSolaris [1].  Because the checks are
always the same for all Glibc-based systems, and having to wait for
libtool to propagate to every package out there is a PITA, I propose
using a generic '*-gnu' match.

Attached is a patch for libtool (with ChangeLog entry) and a
"make check" log.

[1] Glibc-based system on kernel of Opensolaris, see:
    http://csclub.uwaterloo.ca/~dtbartle/opensolaris/

-- 
Robert Millan

  The DRM opt-in fallacy: "Your data belongs to us. We will decide when (and
  how) you may access your data; but nobody's threatening your freedom: we
  still allow you to remove your data and not access it at all."
2008-12-22  Robert Millan  <[email protected]>

	* libltdl/m4/libtool.m4: Recognize all Glibc-based GNU variants
	by matching $host_os against `*-gnu'.
	* libltdl/m4/ltdl.m4: Likewise.

index b7b566d..c8dfa77 100644
--- a/libltdl/m4/libtool.m4
+++ b/libltdl/m4/libtool.m4
@@ -2380,7 +2380,7 @@ linux*oldld* | linux*aout* | linux*coff*)
   ;;
 
 # This must be Linux ELF.
-linux* | k*bsd*-gnu)
+linux* | *-gnu)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -3014,7 +3014,7 @@ irix5* | irix6* | nonstopux*)
   ;;
 
 # This must be Linux ELF.
-linux* | k*bsd*-gnu)
+linux* | *-gnu)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
@@ -3635,7 +3635,7 @@ m4_if([$1], [CXX], [
 	    ;;
 	esac
 	;;
-      linux* | k*bsd*-gnu)
+      linux* | *-gnu)
 	case $cc_basename in
 	  KCC*)
 	    # KAI C++ Compiler
@@ -3919,7 +3919,7 @@ m4_if([$1], [CXX], [
       _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
       ;;
 
-    linux* | k*bsd*-gnu)
+    linux* | *-gnu)
       case $cc_basename in
       # old Intel for x86_64 which still supported -KPIC.
       ecc*)
@@ -4300,7 +4300,7 @@ _LT_EOF
       _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
       ;;
 
-    gnu* | linux* | tpf* | k*bsd*-gnu)
+    gnu* | linux* | tpf* | *-gnu)
       tmp_diet=no
       if test "$host_os" = linux-dietlibc; then
 	case $cc_basename in
@@ -5792,7 +5792,7 @@ if test "$_lt_caught_CXX_error" != yes; then
         _LT_TAGVAR(inherit_rpath, $1)=yes
         ;;
 
-      linux* | k*bsd*-gnu)
+      linux* | *-gnu)
         case $cc_basename in
           KCC*)
 	    # Kuck and Associates, Inc. (KAI) C++ Compiler
index a2b1a4e..2dbefed 100644
--- a/libltdl/m4/ltdl.m4
+++ b/libltdl/m4/ltdl.m4
@@ -468,7 +468,7 @@ AC_CACHE_CHECK([whether deplibs are loaded by dlopen],
   freebsd* | dragonfly*)
     lt_cv_sys_dlopen_deplibs=yes
     ;;
-  gnu* | linux* | k*bsd*-gnu)
+  gnu* | linux* | *-gnu)
     # GNU and its variants, using gnu ld.so (Glibc)
     lt_cv_sys_dlopen_deplibs=yes
     ;;
PASS: tests/link.test
PASS: tests/link-2.test
PASS: tests/nomode.test
PASS: tests/objectlist.test
PASS: tests/quote.test
PASS: tests/sh.test
PASS: tests/suffix.test
PASS: tests/tagtrace.test
PASS: tests/cdemo-static.test
PASS: tests/cdemo-make.test
PASS: tests/cdemo-exec.test
PASS: tests/demo-static.test
PASS: tests/demo-make.test
PASS: tests/demo-exec.test
PASS: tests/demo-inst.test
PASS: tests/demo-unst.test
PASS: tests/depdemo-static.test
PASS: tests/depdemo-make.test
PASS: tests/depdemo-exec.test
PASS: tests/depdemo-inst.test
PASS: tests/depdemo-unst.test
PASS: tests/mdemo-static.test
PASS: tests/mdemo-make.test
PASS: tests/mdemo-exec.test
PASS: tests/mdemo-inst.test
PASS: tests/mdemo-unst.test
PASS: tests/cdemo-conf.test
PASS: tests/cdemo-make.test
PASS: tests/cdemo-exec.test
PASS: tests/demo-conf.test
PASS: tests/demo-make.test
PASS: tests/demo-exec.test
PASS: tests/demo-inst.test
PASS: tests/demo-unst.test
PASS: tests/demo-deplibs.test
PASS: tests/depdemo-conf.test
PASS: tests/depdemo-make.test
PASS: tests/depdemo-exec.test
PASS: tests/depdemo-inst.test
PASS: tests/depdemo-unst.test
PASS: tests/mdemo-conf.test
PASS: tests/mdemo-make.test
PASS: tests/mdemo-exec.test
PASS: tests/mdemo-inst.test
PASS: tests/mdemo-unst.test
PASS: tests/mdemo-dryrun.test
PASS: tests/mdemo2-conf.test
PASS: tests/mdemo2-make.test
PASS: tests/mdemo2-exec.test
PASS: tests/pdemo-conf.test
PASS: tests/pdemo-make.test
PASS: tests/pdemo-exec.test
PASS: tests/pdemo-inst.test
PASS: tests/demo-nofast.test
PASS: tests/demo-make.test
PASS: tests/demo-exec.test
PASS: tests/demo-inst.test
PASS: tests/demo-unst.test
PASS: tests/depdemo-nofast.test
PASS: tests/depdemo-make.test
PASS: tests/depdemo-exec.test
PASS: tests/depdemo-inst.test
PASS: tests/depdemo-unst.test
PASS: tests/demo-pic.test
PASS: tests/demo-make.test
PASS: tests/demo-exec.test
PASS: tests/demo-nopic.test
PASS: tests/demo-make.test
PASS: tests/demo-exec.test
PASS: tests/cdemo-shared.test
PASS: tests/cdemo-make.test
PASS: tests/cdemo-exec.test
PASS: tests/demo-shared.test
PASS: tests/demo-make.test
PASS: tests/demo-exec.test
PASS: tests/demo-inst.test
PASS: tests/demo-hardcode.test
PASS: tests/demo-relink.test
PASS: tests/demo-noinst-link.test
PASS: tests/demo-unst.test
PASS: tests/depdemo-shared.test
PASS: tests/depdemo-make.test
PASS: tests/depdemo-exec.test
PASS: tests/depdemo-inst.test
PASS: tests/depdemo-relink.test
PASS: tests/depdemo-unst.test
PASS: tests/mdemo-shared.test
PASS: tests/mdemo-make.test
PASS: tests/mdemo-exec.test
PASS: tests/mdemo-inst.test
PASS: tests/mdemo-unst.test
PASS: tests/cdemo-undef.test
PASS: tests/cdemo-make.test
PASS: tests/cdemo-exec.test
PASS: tests/tagdemo-static.test
PASS: tests/tagdemo-make.test
PASS: tests/tagdemo-exec.test
PASS: tests/tagdemo-conf.test
PASS: tests/tagdemo-make.test
PASS: tests/tagdemo-exec.test
PASS: tests/tagdemo-shared.test
PASS: tests/tagdemo-make.test
PASS: tests/tagdemo-exec.test
PASS: tests/tagdemo-undef.test
PASS: tests/tagdemo-make.test
PASS: tests/tagdemo-exec.test
====================
All 106 tests passed
====================

[...]

## -------------------------- ##
## libtool 2.2.7a test suite. ##
## -------------------------- ##

Libtoolize operation.

  1: libtoolize macro installation                   ok
  2: libtoolize macro directory mismatch error       ok
  3: libtoolize macro serial update                  ok
  4: libtoolize config files serial update           ok
  5: diagnose missing LT_CONFIG_LTDL_DIR             ok
  6: copy ltdl.m4 with shared macro directory        ok
  7: correctly parse LTDL_INIT from configure.ac     ok
  8: diagnose missing LTDL_INIT invocation           ok
  9: upgrading verbatim style aclocal.m4             ok
 10: verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR     ok
 11: nonrecursive ltdl with AC_CONFIG_MACRO_DIR      ok
 12: subproject ltdl with non-shared directories     ok
 13: LIBTOOLIZE_OPTIONS                              ok
 14: cleanup old installation                        ok

Testing libtool functions.

 15: duplicate members in archive tests              ok
 16: duplicate convenience archive names             ok
 17: preserve duplicate convenience deps             expected failure 
(duplicate_deps.at:72)
 18: inherited_linker_flags                          ok
 19: C convenience archives                          ok
 20: C++ convenience archives                        ok
 21: F77 convenience archives                        skipped 
(convenience.at:110)
 22: FC convenience archives                         skipped 
(convenience.at:170)
 23: Java convenience archives                       skipped 
(convenience.at:230)
 24: Link order test                                 ok
 25: Link order of deplibs                           ok
 26: Failure tests                                   ok
 27: shlibpath_overrides_runpath                     ok
 28: Runpath in libtool library files                ok
 29: static linking flags for programs               ok
 30: ccache -all-static                              ok
 31: Export test                                     ok
 32: sys_lib_search_path                             ok
 33: indirect convenience                            ok
 34: indirect uninstalled                            ok
 35: static library contains static library          expected failure 
(archive-in-archive.at:49)
 36: execute mode                                    ok
 37: inferred tag                                    ok
 38: CXX inferred tag                                ok
 39: F77 inferred tag                                skipped (infer-tag.at:56)
 40: FC inferred tag                                 skipped (infer-tag.at:70)
 41: GCJ inferred tag                                skipped (infer-tag.at:84)
 42: localized compiler messages                     ok
 43: Install tests                                   ok

DESTDIR tests

 44: Simple DESTDIR install                          ok
 45: DESTDIR with in-package deplibs                 ok

Support for older m4 interface.

 46: AM_PROG_LIBTOOL                                 ok
 47: AC_WITH_LTDL                                    ok

Libtool subdir-objects support.

 48: C subdir-objects                                ok
 49: C++ subdir-objects                              ok

Libltdl functionality.

 50: lt_dlexit unloading libs                        ok
 51: lt_dlopenadvise library loading                 ok
 52: ltdl API                                        skipped (ltdl-api.at:31)
 53: enforced lib prefix                             ok

Standalone Libltdl.

 54: compiling softlinked libltdl                    ok
 55: compiling copied libltdl                        ok
 56: installable libltdl                             ok
 57: linking libltdl without autotools               ok

Subproject Libltdl.

 58: compiling softlinked libltdl                    ok
 59: compiling copied libltdl                        ok
 60: installable libltdl                             ok
 61: linking libltdl without autotools               ok

Nonrecursive Automake Libltdl.

 62: compiling softlinked libltdl                    ok
 63: compiling copied libltdl                        ok
 64: installable libltdl                             ok

Recursive Automake Libltdl.

 65: compiling softlinked libltdl                    ok
 66: compiling copied libltdl                        ok
 67: installable libltdl                             ok

C++ template tests.

 68: simple template test                            ok
 69: template test with subdirs                      ok

Constructors.

 70: C++ static constructors                         ok

libtool script generation.

 71: config.status                                   ok
 72: config.lt                                       ok

Libtool usage in GCC

 73: AC_NO_EXECUTABLES                               ok

Detecting identical deplibs.

 74: build tree relpaths                             expected failure 
(deplibs-ident.at:68)

configure interface to libltdl.

 75: installable libltdl                             ok
 76: --with-ltdl-include/lib                         ok
 77: --with-included-ltdl                            ok
 78: convenience libltdl                             ok

Libtool stress test.

 79: Link option thorough search test                ok
 80: Run tests with low max_cmd_len                  ok

Mac OS X tests

 81: darwin fat compile                              skipped (darwin.at:42)

## ------------- ##
## Test results. ##
## ------------- ##

73 tests behaved as expected.
8 tests were skipped.

Reply via email to