Re: [PATCH] ltdl: set libltdl_cv_need_uscore to yes on OS/2

2014-11-27 Thread Gary V. Vaughan
Hi,

 On Nov 27, 2014, at 4:53 AM, KO Myung-Hun kom...@gmail.com wrote:
 Gary V. Vaughan wrote:
 
 On 27 Nov 2014, at 02:47, KO Myung-Hun kom...@gmail.com wrote:
 I agree.
 
 Gary V. Vaughan wrote:
 I pushed the core of a new macro that does exactly that to M4 master just
 now.
 
 Would you let me know whether this works correctly on OS2 for you please?
 
 Of course. Unfortunately, however, it does not work. dlopen() in
 configure fails due to 'file not found'.
 
 Thanks for checking.  Can you tell me why it fails (module is not compiled 
 correctly;
 path argument to dlopen() is wrong), and maybe suggest what would fix it, 
 please?
 
 
 I've look into this problem. Module is not built. To build it, some
 additional variables are required. They are soname, libname,
 output_objdir. And archive_cmds on OS/2 consists of multi lines
 separated by ~. So when using it, quotation is needed. And to eval it
 the function such as func_execute_cmds is needed. In addition, make sure
 .libs exist before building a module.
 
 Finally, please remember that OS/2 does not support DLLs whose base name
 is longer than 8 characters.

Thanks for the swift and helpful feedback.  I pushed some new changes that 
should
address all of those issues.  Please let me know if anything is still wrong, and
in what way it is broken for you if so -- otherwise, I'll port this code into a
new libtool macro and make the next libtool release for m4 master to depend on.

I know I have some other issues you reported to work out in M4, but I'd like to
clear this one up first so I can make the promised libtool release asap.

Many thanks for your help!

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


[PATCH] libtoolize.in: remove two umask 0

2014-11-27 Thread Tijl Coosemans
libtoolize --ltdl -c creates some files with write permissions for
everybody because it sets umask 0 in two places.  This patch removes
the umask commands.

---
 libtoolize.in | 12 ++--
 1 file changed, 2 insertions(+), 10 deletions(-)

diff --git a/libtoolize.in b/libtoolize.in
index d819470..530232d 100644
--- a/libtoolize.in
+++ b/libtoolize.in
@@ -392,11 +392,7 @@ func_copy ()
 
 # Filters always take priority.
 if test -n $my_filter; then
-  if $opt_dry_run || {
-  ( umask 0
-$SED -e $my_filter $my_srcfile  $my_destfile
-  ) /dev/null 21
-}
+  if $opt_dry_run || $SED -e $my_filter $my_srcfile  $my_destfile 
2/dev/null
   then
 func_notquiet_once $my_msg_var
 if $opt_verbose; then
@@ -422,11 +418,7 @@ func_copy ()
 my_copy_msg=$my_copy_type file '$my_destfile'
 $opt_verbose  my_copy_msg=$my_copycmd $my_srcfile $my_destdir
 
-if $opt_dry_run || {
-( umask 0
-  $my_copycmd $my_srcfile $my_destfile
-) /dev/null 21
-  }
+if $opt_dry_run || $my_copycmd $my_srcfile $my_destfile /dev/null 21
 then
   func_notquiet_hdr $my_msg_var $my_copy_msg
 else
-- 
2.1.0




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

2014-11-27 Thread Tijl Coosemans
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'
   need_version=no
   need_lib_prefix=no
   ;;
@@ -2888,7 +2889,7 @@ sysv4*MP*)
   ;;
 
 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
-  version_type=freebsd-elf
+  version_type=sco
   need_lib_prefix=no
   need_version=no
   library_names_spec='$libname$release$shared_ext$versuffix 
$libname$release$shared_ext $libname$shared_ext'
-- 
2.1.0




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

2014-11-27 Thread Tijl Coosemans
On Thu, 27 Nov 2014 18:35:00 + Gary V. Vaughan g...@gnu.org wrote:
 On 27 Nov 2014, at 17:59, Tijl Coosemans t...@freebsd.org 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/
 
 What about people who want to build packages for an old BSD a with the
 earlier versioning scheme? Is it possible to redo your patch so that the
 change only takes effect for *-freebsdx.y* (or similar) where x.y denotes
 the earliest release that fully supports the new versioning scheme?

FreeBSD has always supported the new scheme.  The name of a library
doesn't matter at all.  I think the reason the old scheme was chosen
was because the extension .so.X had always been used for non-libtool
libraries and .so.X.Y.Z was unusual.



Re: [PATCH] ltdl: set libltdl_cv_need_uscore to yes on OS/2

2014-11-27 Thread KO Myung-Hun
Hi/2.

Gary V. Vaughan wrote:
 Hi,
 
 On Nov 27, 2014, at 4:53 AM, KO Myung-Hun kom...@gmail.com wrote:
 Gary V. Vaughan wrote:

 On 27 Nov 2014, at 02:47, KO Myung-Hun kom...@gmail.com wrote:
 I agree.

 Gary V. Vaughan wrote:
 I pushed the core of a new macro that does exactly that to M4 master just
 now.

 Would you let me know whether this works correctly on OS2 for you please?

 Of course. Unfortunately, however, it does not work. dlopen() in
 configure fails due to 'file not found'.

 Thanks for checking.  Can you tell me why it fails (module is not compiled 
 correctly;
 path argument to dlopen() is wrong), and maybe suggest what would fix it, 
 please?


 I've look into this problem. Module is not built. To build it, some
 additional variables are required. They are soname, libname,
 output_objdir. And archive_cmds on OS/2 consists of multi lines
 separated by ~. So when using it, quotation is needed. And to eval it
 the function such as func_execute_cmds is needed. In addition, make sure
 .libs exist before building a module.

 Finally, please remember that OS/2 does not support DLLs whose base name
 is longer than 8 characters.
 
 Thanks for the swift and helpful feedback.  I pushed some new changes that 
 should
 address all of those issues.  Please let me know if anything is still wrong, 
 and
 in what way it is broken for you if so 

Great!!! It works perfectly. Thanks a lot.

 -- otherwise, I'll port this code into a
 new libtool macro and make the next libtool release for m4 master to depend 
 on.
 

Then, LT_FUNC_DLSYM_USCORE will be fixed ?

 I know I have some other issues you reported to work out in M4, but I'd like 
 to
 clear this one up first so I can make the promised libtool release asap.
 

No problem.

 Many thanks for your help!
 

Thanks for your efforts. ^^


-- 
KO Myung-Hun

Using Mozilla SeaMonkey 2.7.2
Under OS/2 Warp 4 for Korean with FixPak #15
In VirtualBox v4.1.32 on Intel Core i7-3615QM 2.30GHz with 8GB RAM

Korean OS/2 User Community : http://www.ecomstation.co.kr