libtool-patches
[Top][All Lists]
Advanced

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

Re: [PATCH] make freebsd-elf version type similar to linux version type


From: Tijl Coosemans
Subject: Re: [PATCH] make freebsd-elf version type similar to linux version type
Date: Thu, 4 Dec 2014 10:00:17 +0100

On Thu, 27 Nov 2014 18:59:56 +0100 Tijl Coosemans <address@hidden> wrote:
> On FreeBSD we have switched from using .so.$current as library extension
> to .so.$major.$age.$revision where $major is $current-$age.  Our package
> of libtool has been patched similar to the patch below which you can see
> here: https://svnweb.freebsd.org/ports/head/devel/libtool/files/
> 
> The "freebsd-elf" version type was also used for SCO UnixWare.  This
> patch creates a separate version type "sco" for that system.
> 
> ---
>  build-aux/ltmain.in | 14 ++++++++++----
>  m4/libtool.m4       |  5 +++--
>  2 files changed, 13 insertions(+), 6 deletions(-)
> 
> diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
> index 65b5a2d..6cea0f8 100644
> --- a/build-aux/ltmain.in
> +++ b/build-aux/ltmain.in
> @@ -6795,13 +6795,13 @@ func_mode_link ()
>         #
>         case $version_type in
>         # correct linux to gnu/linux during the next big refactor
> -       darwin|linux|osf|windows|none)
> +       darwin|freebsd-elf|linux|osf|windows|none)
>           func_arith $number_major + $number_minor
>           current=$func_arith_result
>           age=$number_minor
>           revision=$number_revision
>           ;;
> -       freebsd-aout|freebsd-elf|qnx|sunos)
> +       freebsd-aout|qnx|sco|sunos)
>           current=$number_major
>           revision=$number_minor
>           age=0
> @@ -6887,8 +6887,9 @@ func_mode_link ()
>         ;;
>  
>       freebsd-elf)
> -       major=.$current
> -       versuffix=.$current
> +       func_arith $current - $age
> +       major=.$func_arith_result
> +       versuffix=$major.$age.$revision
>         ;;
>  
>       irix | nonstopux)
> @@ -6951,6 +6952,11 @@ func_mode_link ()
>         versuffix=.$current
>         ;;
>  
> +     sco)
> +       major=.$current
> +       versuffix=.$current
> +       ;;
> +
>       sunos)
>         major=.$current
>         versuffix=.$current.$revision
> diff --git a/m4/libtool.m4 b/m4/libtool.m4
> index 320d8b3..acbda77 100644
> --- a/m4/libtool.m4
> +++ b/m4/libtool.m4
> @@ -2543,7 +2543,8 @@ freebsd* | dragonfly*)
>    version_type=freebsd-$objformat
>    case $version_type in
>      freebsd-elf*)
> -      library_names_spec='$libname$release$shared_ext$versuffix 
> $libname$release$shared_ext $libname$shared_ext'
> +      library_names_spec='$libname$release$shared_ext$versuffix 
> $libname$release$shared_ext$major $libname$shared_ext'
> +      soname_spec='$libname$release$shared_ext$major'

This patch seems to have been committed without this soname_spec line.



reply via email to

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