[MPlayer-dev-eng] [PATCH] configure: linking against static libraries is preferred on OS/2

Reimar Döffinger Reimar.Doeffinger at gmx.de
Sun Dec 7 13:57:13 CET 2014


On 07.12.2014, at 13:08, KO Myung-Hun <komh78 at gmail.com> wrote:
> Reimar Döffinger wrote:
>> On Tue, Dec 02, 2014 at 12:16:39PM +0900, KO Myung-Hun wrote:
>>> Hi/2.
>>> 
>>> Reimar Döffinger wrote:
>>>> On Mon, Dec 01, 2014 at 12:15:21PM +0900, KO Myung-Hun wrote:
>>>>> ---
>>>>> configure | 5 ++++-
>>>>> 1 file changed, 4 insertions(+), 1 deletion(-)
>>>>> 
>>>>> diff --git a/configure b/configure
>>>>> index fd2b115..81a2e18 100755
>>>>> --- a/configure
>>>>> +++ b/configure
>>>>> @@ -4338,7 +4338,7 @@ fi #if linux
>>>>> echocheck "pkg-config"
>>>>> _pkg_config=pkg-config
>>>>> if $($_pkg_config --version > /dev/null 2>&1); then
>>>>> -  if test "$ld_static"; then
>>>>> +  if test "$ld_static" || os2 ; then
>>>>>     _pkg_config="$_pkg_config --static"
>>>>>   fi
>>>>>   echores "yes"
>>>>> @@ -8063,6 +8063,9 @@ echores "$_dvdnav"
>>>>> 
>>>>> extra_ldflags="$extra_ldflags $libm"
>>>>> 
>>>>> +# Linking against static libraries is preferred on OS/2
>>>>> +os2 && extra_ldflags="-Wl,-static $extra_ldflags"
>>>> 
>>>> Why, what is special about OS/2 that it should default to static?
>>> 
>>> Without this, OS/2 ld tries to link against DLLs. Then DLL hells wait
>>> for us. I don't want to fall into those hells.
>> 
>> That isn't any different from Windows.
>> 
>>>> Especially compared to e.g. Windows (where people for distribution
>>>> will basically always link statically, too).
>>> 
>>> Even if they have both static and shared libraries ? And without any
>>> additional flags ?
>> 
>> I mean, on Windows people have to explicitly specify if they want to
>> use static libraries, and I just don't see a convincing reason why
>> OS/2 should behave differently from everything else.
>> There is both the option of not installing shared libraries and
>> --enable-static, I am just not convinced the minor convenience
>> of a different default is worth extra code and making OS/2 behave
>> differently from everything else, including Windows.
> 
> First --enable-static does not work on OS/2. Because gcc with -static
> fails at linking time. It's on purpose to prevent libc runtime from
> being linked statically. Due to this, I tried this.
> 
> However, it would be better to fix --enable-static issues than forcing
> to link statically.
> 
> I attach the updated patch.

Thanks for the explanation.
Yes, this looks like a very reasonable solution.


More information about the MPlayer-dev-eng mailing list