]> git.ipfire.org Git - thirdparty/libtool.git/commitdiff
Support for the Haiku operating system.
authorIngo Weinhold <ingo_weinhold@gmx.de>
Sun, 1 Nov 2009 09:53:23 +0000 (10:53 +0100)
committerRalf Wildenhues <Ralf.Wildenhues@gmx.de>
Sun, 1 Nov 2009 09:53:23 +0000 (10:53 +0100)
* libltdl/config/ltmain.m4sh (func_mode_link): Add cases for
`*-*-haiku*' alongside `*-*-beos*'.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_CHECK_MAGIC_METHOD, LT_LIB_M, _LT_COMPILER_PIC)
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Add cases for
`haiku*'.
* NEWS, THANKS: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
ChangeLog
NEWS
THANKS
libltdl/config/ltmain.m4sh
libltdl/m4/libtool.m4

index d91de618f26b57baa0392c11ca6108db4c05750d..496911b9dafe123d7dc3a8309c1873e560686fae 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2009-11-01  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
+
+       Support for the Haiku operating system.
+       * libltdl/config/ltmain.m4sh (func_mode_link): Add cases for
+       `*-*-haiku*' alongside `*-*-beos*'.
+       * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
+       (_LT_CHECK_MAGIC_METHOD, LT_LIB_M, _LT_COMPILER_PIC)
+       (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Add cases for
+       `haiku*'.
+       * NEWS, THANKS: Update.
+
 2009-11-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 
        Fix quoting of AS, DLLTOOL, and OBJDUMP for the libtool script.
diff --git a/NEWS b/NEWS
index 78433789b85733fbcdef5377f3f0b60b7b74fd42..80f04133b21cd4ed86cdd702f1b2daad0ffe6eb1 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -26,6 +26,7 @@ New in 2.2.8 2009-??-??: git version 2.2.7a, Libtool team:
   - Improved support for Atari FreeMiNT.
   - With binutils 2.19.50+, shared libraries can be built on AIX.
   - Initial support for the Cuda Compiler Driver on GNU/Linux.
+  - Support for Haiku (i586-pc-haiku).
 
 * Bug fixes:
 
diff --git a/THANKS b/THANKS
index d18609aa055b188ab79cfe0bae8743b0f605262c..03cd59275c2132f48983ab962c764e68bec784cf 100644 (file)
--- a/THANKS
+++ b/THANKS
   Henning Nielsen Lund         hnl_dk@amigaos.dk
   Howard Chu                   hyc@highlandsun.com
   Ian Lance Taylor             ian@cygnus.com
+  Ingo Weinhold                        ingo_weinhold@gmx.de
   Jakub Bogusz                 qboosh@pld-linux.org
   Jacob Meuser                 jakemsr@jakemsr.com
   James Su                     james.su@gmail.com
index f1bf43fb8aeb4fd1212b864e1c1bbd88e31a6cd7..91d080041f16f7f38e3099e9f23afc66baa74408 100644 (file)
@@ -4126,7 +4126,7 @@ func_mode_link ()
       -l*)
        if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
          case $host in
-         *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc*)
+         *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*)
            # These systems don't actually have a C or math library (as such)
            continue
            ;;
@@ -6083,7 +6083,7 @@ func_mode_link ()
       if test "$build_libtool_libs" = yes; then
        if test -n "$rpath"; then
          case $host in
-         *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc*)
+         *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*)
            # these systems don't actually have a c library (as such)!
            ;;
          *-*-rhapsody* | *-*-darwin1.[012])
index 02f5b5deef49f5414cef513a0c7b6b0269399dd6..02b49c9a486fc8107270650f6e16b62e542989c9 100644 (file)
@@ -2324,6 +2324,19 @@ gnu*)
   hardcode_into_libs=yes
   ;;
 
+haiku*)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  dynamic_linker="$host_os runtime_loader"
+  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
+  soname_spec='${libname}${release}${shared_ext}$major'
+  shlibpath_var=LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
+  sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib'
+  hardcode_into_libs=yes
+  ;;
+
 hpux9* | hpux10* | hpux11*)
   # Give a soname corresponding to the major version so that dld.sl refuses to
   # link against other versions.
@@ -3029,6 +3042,10 @@ gnu*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
+haiku*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
+
 hpux10.20* | hpux11*)
   lt_cv_file_magic_cmd=/usr/bin/file
   case $host_cpu in
@@ -3259,7 +3276,7 @@ AC_DEFUN([LT_LIB_M],
 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
 LIBM=
 case $host in
-*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
+*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
   # These system don't have libm, or don't need it
   ;;
 *-ncr-sysv4.3*)
@@ -3597,6 +3614,11 @@ m4_if([$1], [CXX], [
       # DJGPP does not support shared libraries at all
       _LT_TAGVAR(lt_prog_compiler_pic, $1)=
       ;;
+    haiku*)
+      # PIC is the default for Haiku.
+      # The "-static" flag exists, but is broken.
+      _LT_TAGVAR(lt_prog_compiler_static, $1)=
+      ;;
     interix[[3-9]]*)
       # Interix 3.x gcc -fpic/-fPIC options generate broken code.
       # Instead, we relocate shared libraries at runtime.
@@ -3902,6 +3924,12 @@ m4_if([$1], [CXX], [
       _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
       ;;
 
+    haiku*)
+      # PIC is the default for Haiku.
+      # The "-static" flag exists, but is broken.
+      _LT_TAGVAR(lt_prog_compiler_static, $1)=
+      ;;
+
     hpux*)
       # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
       # PA HP-UX.  On IA64 HP-UX, PIC is the default but the pic flag
@@ -4389,6 +4417,11 @@ _LT_EOF
       fi
       ;;
 
+    haiku*)
+      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+      _LT_TAGVAR(link_all_deplibs, $1)=yes
+      ;;
+
     interix[[3-9]]*)
       _LT_TAGVAR(hardcode_direct, $1)=no
       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -5743,6 +5776,11 @@ if test "$_lt_caught_CXX_error" != yes; then
       gnu*)
         ;;
 
+      haiku*)
+        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+        _LT_TAGVAR(link_all_deplibs, $1)=yes
+        ;;
+
       hpux9*)
         _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
         _LT_TAGVAR(hardcode_libdir_separator, $1)=: