Needed by multilib dev-libs/glib when USE=selinux; see bugs 480946 and 479282
I'll need some assistance here; how/what does it mean to make a "multilib libselinux"? I have SELinux enabled on a multilib profile (hardened/linux/amd64/selinux) and on no-multilib profiles (hardened/linux/amd64/no-multilbi/selinux) without issues.
By "multilib libselinux" I mean using multilib-minimal.eclass or autotools-multilib.eclass to build libraries and install ABI-specific headers for multiple ABIs at once: for example, for both 32-bit and 64-bit on an amd64 profile. So that instead of using hacks like emul-linux-x86-*, and constantly running into bugs caused by normal package versions and emul-linux-x86-* versions getting out of sync, binary 32-bit packages that need glib would simply depend on glib[abi_x86_32]. See e.g. sys-libs/zlib-1.2.8-r1, dev-libs/glib-2.36.3-r2, or media-libs/libjpeg-turbo-1.3.0-r2 for some examples of how other packages do this.
Created attachment 356016 [details, diff] ebuild diff a quick look at it shows that libpcre and libsepol should be converted first
(In reply to Alexis Ballier from comment #3) > Created attachment 356016 [details, diff] [details, diff] > ebuild diff > > a quick look at it shows that libpcre and libsepol should be converted first pressed enter too quickly: attached is a diff for libsepol; libselinux conversion could be done in a similar way but first needs libpcre tl;dr: you can apply this libsepol patch if you're happy with it and then wait for libpcre to be converted
Created attachment 356054 [details] Buildlog for libsepol with multilib ebuild fixes I'm testing the libsepol patch on my systems, but on my multilib system, it installs the same files as before: ~$ qlist libsepol | grep lib /lib64/libsepol.so.1 /usr/lib64/pkgconfig/libsepol.pc /usr/lib64/libsepol.a /usr/lib64/libsepol.so Shouldn't this now also include /lib/libsepol.so.1 or so?
(In reply to Sven Vermeulen from comment #5) > Created attachment 356054 [details] > Buildlog for libsepol with multilib ebuild fixes > > I'm testing the libsepol patch on my systems, but on my multilib system, it > installs the same files as before: > > ~$ qlist libsepol | grep lib > /lib64/libsepol.so.1 > /usr/lib64/pkgconfig/libsepol.pc > /usr/lib64/libsepol.a > /usr/lib64/libsepol.so > > Shouldn't this now also include /lib/libsepol.so.1 or so? /lib32, yes, but for this you need to enable abi_x86_32 :) (or set ABI_X86="64 32" in make.conf)
Cool thanks! sys-libs/libsepol is updated/committed. there's no bugreport for libpcre yet is there?
(In reply to Sven Vermeulen from comment #7) > there's no bugreport for libpcre yet is there? nope; it needs libedit/libreadline which in turn need ncurses for which there is a bug
I was about to start on this one, but then I noticed libselinux also uses python_copy_sources; doesn't this interfere with multilib_copysources?
(In reply to Sven Vermeulen from comment #9) > I was about to start on this one, but then I noticed libselinux also uses > python_copy_sources; doesn't this interfere with multilib_copysources? it should work just the same but you should disable python & ruby stuff for non native ABIs: it will not work and is useless i.e, in your code: 'if use python; then' becomes 'if multilib_is_native_abi && use python; then' in multilib_src_* and also, python_copy_sources is better ran in multilib_src_compile since you will enter this function with a correctly set BUILD_DIR env var
sys-libs/libselinux-2.2.2-r1 now has multilib support. ˜arch for now; also bumped to version 2.2.2
libselinux-2.2.2-r4 is now stable