Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 24 Feb 2019 14:21:50 +0100
From:      =?UTF-8?B?VMSzbA==?= Coosemans <tijl@FreeBSD.org>
To:        Diane Bruce <db@db.net>
Cc:        Dima Pasechnik <dimpase+freebsd@gmail.com>, gerald@freebsd.org, Dave Horsfall <dave@horsfall.org>, FreeBSD Ports <freebsd-ports@freebsd.org>, Steve Kargl <sgk@troutmask.apl.washington.edu>
Subject:   Re: FreeCAD 0.17 && /lib//libgcc_s.so.1
Message-ID:  <20190224142150.685debe4@kalimero.tijl.coosemans.org>
In-Reply-To: <20190223183117.GA65065@night.db.net>
References:  <a2102b4e-7d7a-7d5b-2ba1-b9a14f8574f6@pinyon.org> <f6a45ec9-7ae4-d9ba-f71c-f2ef8c235039@grosbein.net> <416689e6-37f9-17ec-54d8-0d224c26f30f@pinyon.org> <20190217151604.GB68620@night.db.net> <20190221180515.39c79ce6@kalimero.tijl.coosemans.org> <092b17f0-6fbf-662e-1061-403442248abd@pinyon.org> <20190222140407.2145c11e@kalimero.tijl.coosemans.org> <alpine.BSF.2.21.9999.1902230913380.84718@aneurin.horsfall.org> <20190223000620.GA12700@troutmask.apl.washington.edu> <CAAWYfq20PgO9RoaN2esyqf-dc2xyqfmkLVaSe8yrx-X4E1s=ZQ@mail.gmail.com> <20190223183117.GA65065@night.db.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 23 Feb 2019 13:31:17 -0500 Diane Bruce <db@db.net> wrote:
> On Sat, Feb 23, 2019 at 10:52:03AM +0000, Dima Pasechnik wrote:
>> On Sat, Feb 23, 2019 at 12:07 AM Steve Kargl
>> <sgk@troutmask.apl.washington.edu> wrote:
>>> On Sat, Feb 23, 2019 at 09:19:01AM +1100, Dave Horsfall wrote:
>>>> On Fri, 22 Feb 2019, T=C4=B3l Coosemans wrote:
>>>>> If I were the lang/gcc maintainer this -rpath problem would be my
>>>>> number one priority.  The current maintainer has never proposed
>>>>> any solutions and when I submit patches he always resists.  I'm
>>>>> done wasting my time fighting him.
>>>>
>>>> I'm late to this discussion (not being a Fortran/Python user) but
>>>> is there any way to remove a recalcitrant maintainer?
>>>
>>> Can you explain what you mean?  The maintainer of the lang/gcc
>>> ports is a long-time member of the GCC steering committee
>>> and a long-time maintainer of all gcc FreeBSD ports.  There
>>> are very few FreeBSD users (like 3 of us) who have commit access
>>> to the gcc tree.  Seems like a dubious idea to remove one of
>>> those 3.
>>=20
>> Given the amount of time unsuspecting and half-suspecting users wasted
>> on making Fortran code (often in form of a Python extension) working
>> on FreeBSD (e.g. I probably wasted weeks), time is high to do
>> something, e.g. commit the said patches---there is an agreement that
>> they are correct, right?
>=20
> Dima, gerald has always been very helpful in all my communications
> with him. Have you filed a PR for the fix? dropped  him an email?
>=20
> I know we (gerald and ?? can't remember) tried a static lib change
> a few years ago. I believe it didn't work at the time due to missing
> symbols which we have since added.

This cannot be entirely correct.  I don't see what missing symbols this
would have been.  I attached my patch to bug 208120 on 2017-02-09 and
you responded it was the best idea.  mmel then discovered it didn't
entirely fix the problem on ARM where _Unwind_Backtrace has version
GCC_4.3.0 instead of GCC_3.3.0.  The gcc commit that changed this
doesn't explain why this was done, but we'll have to make the same
change in FreeBSD ARM libgcc_s to be ABI compatible (since _Unwind* is
part of the ABI).  This isn't a blocker for the patch.

I emailed the patch to gerald on 2017-02-21.  He responded in the usual
way that he prefers patches submitted upstream and because I thought the
patch would not be accepted upstream he proposed an alternative solution
where gcc would always add -rpath on FreeBSD so you didn't have to
specify it on the command line.  I responded this wouldn't fix the case
where clang was used as a linker (e.g. to combine fortran and c++ code
in one program) and that the FAQ on the gcc website said it was a bad
idea for other reasons.  I also said upstream might accept my patch if
it was a configure option but that the gcc configure scripts are
complicated and I didn't know where to add it exactly.  Then silence.
This is typical for all my conversations with him over the years so I
stopped caring.

I'm not asking that he stops maintaining gcc.  All I want is a little
more pragmatism.  User experience is more important than the patch being
in the perfect shape to be submitted upstream.  Be more practical
instead of idealistic.  The -rpath problem affects all users.
Maintaining a patch in the ports tree affects just the maintainer.  Make
decisions based on weighing pros and cons.  Ideals are just guidelines.
If a situation is bad enough then committing an imperfect patch is
better than doing nothing.

I'm a user of gcc on FreeBSD.  I'm not a gcc developer and I don't want
to become one.  If a maintainer wants patches to be in a perfect shape
he's asking users to be developers.  This doesn't work.  Either the
maintainer has to improve the patch himself or he has to play the role
of liaison between the user and an upstream developer.  If this takes
too long and the situation is bad enough then he has to be willing to
add the imperfect patch to the port.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20190224142150.685debe4>