SONAME clarification
Benjamin Lindner
lindnerben at gmx.net
Mon Feb 2 14:20:17 CST 2009
Benjamin Lindner wrote:
>>
>> 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.
>>
>
> May I suggest that we please use *separate* case statements for separate
> build archictectures, if the overlap is not significant.
>
> Truly, cygwin and mingw now show to be different enough to justify
> separate treatment. Aside from completely different naming conventions,
> in the mingw case I also need additional flags, since mkoctfile and
> octave-config are compiled executables and not shell scripts - which is
> *not* the case for cygwin.
>
> Keeping mingw and cygwin separate here, changes due to architecture
> affect only the architecture in question - keep it independent, this
> makes maintaining much easier for both cygwin and mingw
>
> I see an immediate bug now, as the
> library_path_var=PATH
> statement is missing for the mingw case (I guess cygwin will also need
> this)
>
> Also I miss the three statements
> CPICFLAG=
> CXXPICFLAG=
> FPICFLAG=
> for mingw target (code compiled with mingw in inherently PI, so it is
> not required to add -fPIC, as the resulting gcc warning tells).
>
> Also I don't understand the meaning of SHLBIN. What is it supposed to
> mean? A search through the source code shows no targets containing
> SHLBIN? A short comment in configure.in would I guess be very helpful
> for those who are not familiar with all the makefile conventions in full
> depth.
>
> Sorry for making such a noise here, but this changeset gives me a bit of
> a headache tracking down what has changed for mingw platform, because of
> modifications orinigally intended for the cygwin platform...
>
> I am perfectly willing to provide changesets here, but I feel I do no
> longer understand the code...
>
Ok, here's a try for a changeset
It separates cygwin and mingw targets in the switch/case chain, and adds
the appropriate variables for the mingw target.
The reasons I vote for separation of targets are again:
*) different naming scheme for libraries
*) compiled versions of mkoctfile and octave-config for the mingw target
*) possible future addition of support for shared libgcc/libstdc++ for
mingw target
These distinctions would otherwise lead to nested if-then-else checks
which are IMO harder to read and maintain.
benjamin
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: separate-cygwin-mingw-configure.patch
Url: https://www-old.cae.wisc.edu/pipermail/octave-maintainers/attachments/20090202/e6a5a621/attachment.ksh
More information about the Octave-maintainers
mailing list