On 2019-06-08 9:57, Adam Weinberger wrote:
On Sat, Jun 8, 2019 at 10:02 AM Gerald Pfeifer <[email protected]> wrote:

In https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=237688 we had
a user report against lang/gcc* ports that could be traced back to
a certain functionality (option) in another port (devel/binutils)
missing.

In pseudo-code this could be addressed as follows in lang/gcc*

    .if $(binutils built statically)
    IGNORE= GCC requires dynamically linked binutils
    .endif

Now the question is: How to implement something like this practically?

What you have there won't work, because `make index` won't work, plus
Makefiles shouldn't be doing external calls if they don't have to.
You'll also have a problem whereby LOCALBASE isn't defined yet, and I
don't believe that IGNORE after bsd.port.pre.mk will work (I could be
wrong about that).

You have two options:
1) Turn it into a pre-configure, which is slightly ugly for the
end-user but still gets the job done
   pre-configure:
       if some file in binutils is static; then echo "NOPE"; exit 1; fi

2) (The correct way to do it) Create a binutils-static slave port,
remove the static option from binutils proper, and depend specifically
on the non-static port.

Why is a slave port the correct option here instead of flavouring binutils?

_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "[email protected]"

Reply via email to