On 8/28/2012 4:05 PM, Diego Elio Pettenò wrote:
On 28/08/2012 15:36, Mart Raudsepp wrote:
static-libs is for installing static libraries IN ADDITION to shared
libraries, not instead.
USE=static is for what you have in mind there.
PE is not the same as ELF so on Windows you either build one or the
other for a number of reasons.
In this case, the issue is purportedly that the headers get generated
differently, depending on whether you build static or dynamic.
I don't think too much, unless I have to, about what kind of
libtool/gcc/gentoo magic makes it all possible, but by and large, static
and dynamic libraries "just work" in my overlay. So if gentoo-prefix
would create both static and dynamic for a given library on elf, the
same thing happens in my overlay (I mean that this typically happens
without any hand-holding, on my part, to make it work).
Now on a different note, this is not even what USE=static is for — but
that's way behind what we were discussing before.
euse -i says:
static - !!do not set this during bootstrap!! Causes binaries
to be statically linked instead of dynamically
Pretty sure I've done the right thing in my overlay by masking, but it
can't hurt to mention that I'm always happy to hear any suggestions or
ideas (although of course I reserve the right to politely decide that
your ideas are crap and ignore them :P).
My reasoning for the flag-mask is that Gentoo always builds the dynamic
libs for these packages and therefore so should my overlay. Unless I
fix the underlying conflict or implement some kind of side-by-side
scheme (a la libncursesw), I really have no choice but to forbid
building statically (note that cygports adopts the same solution).
Masking the use-flag for the affected atoms accomplishes this
prohibition exactly, exclusively, and without any kludge (except
unfortunately I still have to patch the e-build, as, for some goofy
reason, configure doesn't interpret the static/dynamic options the same
way after applying the cygports patches -- hopefully I can fix that just
by leaving some patches out; I just haven't gotten to it yet).
-gmt