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

2014-12-04 Thread Tijl Coosemans
On Thu, 27 Nov 2014 18:59:56 +0100 Tijl Coosemans  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.



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

2014-12-04 Thread Gary V. Vaughan
Hi Tijl,

> On Dec 4, 2014, at 9:00 AM, Tijl Coosemans  wrote:
> 
> On Thu, 27 Nov 2014 18:59:56 +0100 Tijl Coosemans  wrote:
>> --- 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.

Argh.  Sorry about that, and thanks for picking up the mistake.  Hopefully,
this also fixes the test failures reported on freebsds recently.

Please confirm that current master is behaving for you, and I'll put out
a patch release.

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




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

2014-12-04 Thread Tijl Coosemans
On Thu, 4 Dec 2014 13:55:54 + "Gary V. Vaughan"  wrote:
> On Dec 4, 2014, at 9:00 AM, Tijl Coosemans  wrote:
>> On Thu, 27 Nov 2014 18:59:56 +0100 Tijl Coosemans  wrote:
>>> --- 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.
> 
> Argh.  Sorry about that, and thanks for picking up the mistake.  Hopefully,
> this also fixes the test failures reported on freebsds recently.
> 
> Please confirm that current master is behaving for you, and I'll put out
> a patch release.

Looks good.  The output of make check is also ok.