libtool-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: branch-1-5 UnixWare fixes


From: Ralf Wildenhues
Subject: Re: branch-1-5 UnixWare fixes
Date: Sun, 25 Sep 2005 16:06:48 +0200
User-agent: Mutt/1.5.9i

Hi Tim,

* Tim Rice wrote on Fri, Sep 23, 2005 at 10:20:29PM CEST:
> 
> I did some work on branch-1-5 to try and get libtool fully functional
> on UnixWare 7.1.4. I was mostly successful, only the quote test fails.
> Probably a ksh bug.

Which of the quote test lines fail?  Did you run the test in a new build
tree or did you ever re-configure (there is a bug in branch-1-5 wrt.
setting $SHELL correctly on a config.status-induced configure rerun.  If
in doubt retry with a new build tree)

> As a side effect, OpenServer 6 (also SVR5) passes all tests. While I
> was at it I cleaned up the earlier UnixWare releases a little bit.

Hmm.  While the improvements look really good, and I know virtually
nothing about the systems in question, I still have a couple of
comments.  It would be nice if you could take a look, see below.

Thanks!
Ralf

Content-Description: branch-1-5-uw.patch
> --- libtool-1.5/libtool.m4.old        2005-09-09 08:56:16.000000000 -0700
> +++ libtool-1.5/libtool.m4    2005-09-23 10:53:24.163558381 -0700
> @@ -1655,7 +1655,7 @@
>    need_version=yes
>    ;;
>  
> -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
> +sysv4 | sysv4.2uw2* | sysv4.3*)
>    version_type=linux
>    library_names_spec='${libname}${release}${shared_ext}$versuffix 
> ${libname}${release}${shared_ext}$major $libname${shared_ext}'
>    soname_spec='${libname}${release}${shared_ext}$major'
> @@ -1688,6 +1688,19 @@
>    fi
>    ;;
>  
> +sysv5*)
> +  version_type=linux
> +  need_lib_prefix=no
> +  need_version=no
> +  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=LD_LIBRARY_PATH
> +  shlibpath_overrides_runpath=yes
> +  hardcode_into_libs=yes
> +  sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
> +  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
> +  ;;
> +
>  uts4*)
>    version_type=linux
>    library_names_spec='${libname}${release}${shared_ext}$versuffix 
> ${libname}${release}${shared_ext}$major $libname${shared_ext}'
> @@ -2314,11 +2327,11 @@
>    lt_cv_deplibs_check_method=pass_all
>    ;;
>  
> -sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]*)
> +sysv5*)
>    lt_cv_deplibs_check_method=pass_all
>    ;;
>  
> -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
> +sysv4 | sysv4.2uw2* | sysv4.3*)
>    case $host_vendor in
>    motorola)
>      lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB 
> (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
> @@ -2339,10 +2352,13 @@
>    siemens)
>      lt_cv_deplibs_check_method=pass_all
>      ;;
> +  pc)
> +    lt_cv_deplibs_check_method=pass_all
> +    ;;
>    esac
>    ;;
>  
> -sysv4*uw2* | unixware7*)
> +unixware7*)

Now, this macro doesn't have a match for sysv4*uw2* any more.  Is this
intentional?

>    lt_cv_deplibs_check_method=pass_all
>    ;;
>  esac
> @@ -3559,8 +3575,29 @@
>       ;;
>      esac
>      ;;
> -  sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*)
> -    _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
> +  sysv5OpenUNIX8* | sysv5UnixWare7.[[01]].[[01]]* | sysv5uw[[78]]* | 
> unixware7*)
> +    case $cc_basename in
> +      CC*)
> +     _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z ${wl}text'
> +     _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h ${wl}$soname -o $lib 
> $libobjs $deplibs $compiler_flags'
> +     _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
> +     runpath_var='LD_RUN_PATH'
> +     _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
> +     ;;
> +    esac
> +    ;;
> +  sysv5*)
> +    case $cc_basename in
> +      CC*)
> +     _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z ${wl}text'
> +     _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h ${wl}$soname -o $lib 
> $libobjs $deplibs $compiler_flags'
> +     _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
> +     _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
> +     _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
> +     runpath_var='LD_RUN_PATH'
> +     _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
> +     ;;
> +    esac
>      ;;
>    tandem*)
>      case $cc_basename in
> @@ -4949,7 +4986,14 @@
>           ;;
>       esac
>       ;;
> -      unixware*)
> +      unixware* | sysv5*)
> +     case $cc_basename in
> +       CC*)
> +         _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
> +         _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
> +         _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
> +         ;;
> +     esac
>       ;;
>        vxworks*)
>       ;;
> @@ -5404,7 +5448,7 @@
>        fi
>        ;;
>  
> -    solaris* | sysv5*)
> +    solaris*)

Any reason for this change?

>        if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
>       _LT_AC_TAGVAR(ld_shlibs, $1)=no
>       cat <<EOF 1>&2
> @@ -5966,27 +6010,30 @@
>        runpath_var=LD_RUN_PATH
>        ;;
>  
> -   sysv5OpenUNIX8* | sysv5UnixWare7* |  sysv5uw[[78]]* | unixware7*)
> +    sysv5OpenUNIX8* | sysv5UnixWare7.[[01]].[[10]]* |  sysv5uw[[78]]* | 
> unixware7*)
>        _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z ${wl}text'
>        if test "$GCC" = yes; then
>       _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o 
> $lib $libobjs $deplibs $compiler_flags'
>        else
>       _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h ${wl}$soname -o $lib 
> $libobjs $deplibs $compiler_flags'
>        fi
> +      _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
>        runpath_var='LD_RUN_PATH'
>        _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
>        ;;
>  
>      sysv5*)
> -      _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
> -      # $CC -shared without GNU ld will not create a library from C++
> -      # object files and a static libstdc++, better avoid it by now
> -      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h 
> $soname -o $lib $libobjs $deplibs $linker_flags'
> -      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > 
> $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo 
> "local: *; };" >> $lib.exp~
> -             $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib 
> $libobjs $deplibs $linker_flags~$rm $lib.exp'
> -      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
> -      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
> +      _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z ${wl}text'
> +      if test "$GCC" = yes; then
> +     _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o 
> $lib $libobjs $deplibs $compiler_flags'
> +      else
> +     _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h ${wl}$soname -o $lib 
> $libobjs $deplibs $compiler_flags'
> +      fi
> +      _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
> +      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
> +      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
>        runpath_var='LD_RUN_PATH'
> +      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
>        ;;

You removed setting of archive_expsym_cmds here.  Was this intentional?
Did it not work?

>  
>      uts4*)
> --- libtool-1.5/ltdl.m4.old   2005-04-29 01:56:01.000000000 -0700
> +++ libtool-1.5/ltdl.m4       2005-09-19 12:11:08.639253005 -0700
> @@ -175,6 +175,9 @@
>    solaris*)
>      libltdl_cv_sys_dlopen_deplibs=yes
>      ;;
> +  sysv5*)
> +    libltdl_cv_sys_dlopen_deplibs=yes
> +    ;;
>    esac
>    ])
>  if test "$libltdl_cv_sys_dlopen_deplibs" != yes; then

Cheers,
Ralf




reply via email to

[Prev in Thread] Current Thread [Next in Thread]