octave-maintainers
[Top][All Lists]
Advanced

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

Re: SONAME clarification


From: Marco Atzeri
Subject: Re: SONAME clarification
Date: Thu, 29 Jan 2009 16:22:19 +0100 (CET)

--- "John W. Eaton"  ha scritto:

> On 28-Jan-2009, Marco Atzeri wrote:
> 
> | > On 28-Jan-2009, Marco Atzeri wrote:
> | > | *********************************
> | > | 
> | > | the installed lib files will be
> | > | 
> | > | usr/bin/cygcruft.dll
> | > | usr/bin/cygoctave.dll
> | > | usr/bin/cygoctinterp.dll
> | > | 
> | > | usr/lib/octave-3.0.4/libcruft.dll.a
> | > | usr/lib/octave-3.0.4/libcruft.dll.a.3.0.4
> | > | usr/lib/octave-3.0.4/liboctave.dll.a
> | > | usr/lib/octave-3.0.4/liboctave.dll.a.3.0.4
> | > | usr/lib/octave-3.0.4/liboctinterp.dll.a
> | > | usr/lib/octave-3.0.4/liboctinterp.dll.a.3.0.4
> | > 
> | > Yes, but in your current patch the install rules
> are
> | > still using
> | > $(SOPRE) as a prefix for static libraries.  That
> | > doesn't seem correct,
> | > or the name SOPRE is not the best choice.  Which
> is
> | > it?
> | > 
> | 
> | No idea, I chosen SOPRE as it was needed to 
> | change SONAME, but any other name is fine.
> 
> In the end, I decided to go with three separate
> prefixes to go along
> with the three separate types of suffixes we have:
> 
>   LIBPRE     LIBEXT
>   SHLLIBPRE  SHLLIB and SHLLIB_VER
>   SHLBINPRE  SHLBIN and SHLBIN_VER
> 
> and checked in the following changeset:
> 
>  
>
http://hg.savannah.gnu.org/hgweb/octave/rev/f8b3ece45bda
> 
> If this is not the right thing to do for some
> platform(s), then please
> submit patches relative to the current sources from
> the Mercurial
> archive.  For example, I'm not sure how SHLEXT and
> SHLEXT_VER fit into
> this arrangement, and whether there should also be a
> prefix variable
> corresponding to those variables.
> 
> jwe
> 

Hi John,
thanks for the effort, however
something is not as expected on cygwin
 
$ file lib*       

libcruft.so:         PE32 executable for MS Windows
(DLL) (console) Intel 80386 32-bit
libcruft.so.3.1.51+: symbolic link to `libcruft.so'
liblibcruftso:       current ar archive

I will try to investigate why I have "so" instead of
"dll".
For the last "liblibcruftso" SONAME does not work 
if $(basename) is already "libcruft"

SONAME_FLAGS='-Wl,--out-implib=$(SHLLIBPRE)$(basename
$@)$(SHLLIB)'

should it be something like
SONAME_FLAGS='-Wl,--out-implib=$(patsubst
lib,$(SHLBINPRE)%,$@).$(SHLLIB)'


but I need to verify an prepare a patch

from config.log
*****************************
SHLBIN=''
SHLBINPRE='cyg'
SHLBIN_VER='$(SHLBIN).$(version)'
SHLEXT='so'
SHLEXT_VER='$(SHLEXT).$(version)'
SHLLIB='$(SHLEXT)'
SHLLIBPRE='lib'
SHLLIB_VER='$(SHLLIB).$(version)'
SHLLINKEXT=''
SH_LD='$(CXX)'
SH_LDFLAGS='-shared -Wl,--export-all-symbols
-Wl,--enable-auto-import -Wl,--enable-auto-image-base'
SONAME_FLAGS='-Wl,--out-implib=$(SHLLIBPRE)$(basename
$@)$(SHLLIB)'
*****************************





      


reply via email to

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