This series introduces the global USE flag 'split-usr' to control
whether binaries and libraries are split into separate / and /usr
directories, or if they are always installed in /usr. This is a step
toward making merged /usr workable on Gentoo for the average user.

This USE flag is already being used by some packages, including
sys-apps/baselayout and sys-apps/systemd.

This series also moves the gen_usr_ldscript function to a new eclass,
and makes it a noop on most systems when split-usr is enabled. Moving
it to a new eclass allows us to avoid adding IUSE="split-usr" to every
ebuild that uses toolchain-funcs.eclass.

Mike Gilbert (6):
  profiles: add global USE flag 'split-usr'
  profiles: enable USE="split-usr" in base
  usr-ldscript.eclass: copy gen_usr_ldscript from toolchain-funcs.eclass
  usr-ldscript.eclass: return early if USE=split-usr is disabled
  Convert ebuilds to inherit usr-ldscript
  toolchain-funcs.eclass: deprecate gen_usr_ldscript

 app-accessibility/brltty/brltty-5.2-r1.ebuild |   2 +-
 app-accessibility/brltty/brltty-6.0-r1.ebuild |   2 +-
 app-arch/bzip2/bzip2-1.0.6-r11.ebuild         |   2 +-
 app-arch/bzip2/bzip2-1.0.7.ebuild             |   2 +-
 app-arch/bzip2/bzip2-1.0.8.ebuild             |   2 +-
 app-arch/bzip2/bzip2-9999.ebuild              |   2 +-
 app-arch/xz-utils/xz-utils-5.2.4-r2.ebuild    |   2 +-
 app-arch/xz-utils/xz-utils-5.2.4-r3.ebuild    |   2 +-
 app-arch/xz-utils/xz-utils-9999.ebuild        |   2 +-
 dev-libs/expat/expat-2.2.6.ebuild             |   2 +-
 dev-libs/expat/expat-2.2.7.ebuild             |   2 +-
 dev-libs/libaio/libaio-0.3.110.ebuild         |   2 +-
 dev-libs/libaio/libaio-0.3.111.ebuild         |   2 +-
 dev-libs/libaio/libaio-0.3.112.ebuild         |   2 +-
 dev-libs/libaio/libaio-9999.ebuild            |   2 +-
 dev-libs/libedit/libedit-20130712.3.1.ebuild  |   2 +-
 dev-libs/libedit/libedit-20170329.3.1.ebuild  |   2 +-
 dev-libs/libiconv/libiconv-1.14-r1.ebuild     |   2 +-
 dev-libs/libiconv/libiconv-1.15.ebuild        |   2 +-
 dev-libs/libintl/libintl-0.19.7.ebuild        |   2 +-
 dev-libs/libintl/libintl-0.19.8.1.ebuild      |   2 +-
 dev-libs/libintl/libintl-0.20.1.ebuild        |   2 +-
 dev-libs/libpcre/libpcre-8.41-r1.ebuild       |   2 +-
 dev-libs/libpcre/libpcre-8.42.ebuild          |   2 +-
 dev-libs/libpcre/libpcre-8.43.ebuild          |   2 +-
 dev-libs/libpcre2/libpcre2-10.32.ebuild       |   2 +-
 dev-libs/libpcre2/libpcre2-10.33.ebuild       |   2 +-
 .../libpwquality/libpwquality-1.4.0.ebuild    |   2 +-
 .../libusb-compat-0.1.5-r2.ebuild             |   2 +-
 .../libusb-compat-0.1.5-r3.ebuild             |   2 +-
 dev-libs/libusb/libusb-1.0.19-r1.ebuild       |   2 +-
 dev-libs/libusb/libusb-1.0.21.ebuild          |   2 +-
 dev-libs/libusb/libusb-1.0.22.ebuild          |   2 +-
 dev-libs/lzo/lzo-2.10.ebuild                  |   2 +-
 eclass/toolchain-funcs.eclass                 |  15 +-
 eclass/usr-ldscript.eclass                    | 160 ++++++++++++++++++
 .../iptables/iptables-1.6.1-r3.ebuild         |   2 +-
 .../iptables/iptables-1.6.2-r2.ebuild         |   2 +-
 .../iptables/iptables-1.8.2-r2.ebuild         |   2 +-
 .../iptables/iptables-1.8.3-r1.ebuild         |   2 +-
 net-libs/libmnl/libmnl-1.0.3-r1.ebuild        |   2 +-
 net-libs/libmnl/libmnl-1.0.4.ebuild           |   2 +-
 net-libs/libnftnl/libnftnl-1.0.8-r1.ebuild    |   2 +-
 net-libs/libnftnl/libnftnl-1.1.1-r1.ebuild    |   2 +-
 net-libs/libnftnl/libnftnl-1.1.2-r1.ebuild    |   2 +-
 net-libs/libnftnl/libnftnl-1.1.3.ebuild       |   2 +-
 net-libs/libtirpc/libtirpc-1.0.2-r1.ebuild    |   2 +-
 net-libs/libtirpc/libtirpc-1.0.3.ebuild       |   2 +-
 net-libs/libtirpc/libtirpc-1.1.4.ebuild       |   2 +-
 profiles/base/make.defaults                   |   4 +
 profiles/use.desc                             |   1 +
 sys-apps/acl/acl-2.2.52-r1.ebuild             |   2 +-
 sys-apps/acl/acl-2.2.53.ebuild                |   2 +-
 sys-apps/attr/attr-2.4.47-r2.ebuild           |   2 +-
 sys-apps/attr/attr-2.4.48-r2.ebuild           |   2 +-
 sys-apps/attr/attr-2.4.48-r3.ebuild           |   2 +-
 sys-apps/dmapi/dmapi-2.2.12-r1.ebuild         |   2 +-
 sys-apps/keyutils/keyutils-1.5.11-r1.ebuild   |   2 +-
 sys-apps/keyutils/keyutils-1.5.9-r4.ebuild    |   2 +-
 sys-apps/keyutils/keyutils-1.6.ebuild         |   2 +-
 sys-apps/openrc/openrc-0.34.11.ebuild         |   2 +-
 sys-apps/openrc/openrc-0.38.3-r1.ebuild       |   2 +-
 sys-apps/openrc/openrc-0.38.3.ebuild          |   2 +-
 sys-apps/openrc/openrc-0.41.2.ebuild          |   2 +-
 sys-apps/openrc/openrc-9999.ebuild            |   2 +-
 .../tcp-wrappers-7.6.22-r1.ebuild             |   2 +-
 sys-apps/util-linux/util-linux-2.33-r1.ebuild |   2 +-
 sys-apps/util-linux/util-linux-2.33.1.ebuild  |   2 +-
 sys-apps/util-linux/util-linux-2.33.2.ebuild  |   2 +-
 sys-apps/util-linux/util-linux-2.34-r2.ebuild |   2 +-
 sys-apps/util-linux/util-linux-9999.ebuild    |   2 +-
 sys-auth/skey/skey-1.1.5-r11.ebuild           |   2 +-
 .../freebsd-cddl/freebsd-cddl-11.1.ebuild     |   2 +-
 .../freebsd-cddl/freebsd-cddl-9.1.ebuild      |   2 +-
 .../freebsd-lib/freebsd-lib-11.1-r1.ebuild    |   2 +-
 .../freebsd-lib/freebsd-lib-9.1-r11.ebuild    |   2 +-
 sys-fs/e2fsprogs/e2fsprogs-1.44.5.ebuild      |   2 +-
 sys-fs/e2fsprogs/e2fsprogs-1.44.6.ebuild      |   2 +-
 sys-fs/e2fsprogs/e2fsprogs-1.45.1-r1.ebuild   |   2 +-
 sys-fs/e2fsprogs/e2fsprogs-1.45.2.ebuild      |   2 +-
 sys-fs/lvm2/lvm2-2.02.116.ebuild              |   2 +-
 sys-fs/lvm2/lvm2-2.02.145-r2.ebuild           |   2 +-
 sys-fs/lvm2/lvm2-2.02.183.ebuild              |   2 +-
 sys-fs/lvm2/lvm2-2.02.184-r4.ebuild           |   2 +-
 sys-fs/lvm2/lvm2-2.02.185.ebuild              |   2 +-
 sys-fs/lvm2/lvm2-2.03.05.ebuild               |   2 +-
 sys-fs/reiser4progs/reiser4progs-1.1.0.ebuild |   2 +-
 sys-fs/reiser4progs/reiser4progs-1.2.0.ebuild |   2 +-
 sys-fs/reiser4progs/reiser4progs-1.2.1.ebuild |   2 +-
 .../reiserfsprogs/reiserfsprogs-3.6.25.ebuild |   2 +-
 .../reiserfsprogs/reiserfsprogs-3.6.27.ebuild |   2 +-
 sys-fs/sysfsutils/sysfsutils-2.1.0.ebuild     |   2 +-
 sys-fs/xfsprogs/xfsprogs-4.17.0-r1.ebuild     |   2 +-
 sys-fs/xfsprogs/xfsprogs-4.19.0.ebuild        |   2 +-
 sys-fs/xfsprogs/xfsprogs-4.20.0.ebuild        |   2 +-
 sys-fs/xfsprogs/xfsprogs-5.0.0.ebuild         |   2 +-
 sys-fs/zfs/zfs-0.6.5.11-r2.ebuild             |   2 +-
 sys-fs/zfs/zfs-0.7.13.ebuild                  |   2 +-
 sys-fs/zfs/zfs-0.7.9999.ebuild                |   2 +-
 sys-fs/zfs/zfs-0.8.1.ebuild                   |   2 +-
 sys-fs/zfs/zfs-9999.ebuild                    |   2 +-
 sys-libs/cracklib/cracklib-2.9.6-r2.ebuild    |   2 +-
 sys-libs/cracklib/cracklib-2.9.7.ebuild       |   2 +-
 .../e2fsprogs-libs-1.44.5.ebuild              |   2 +-
 .../e2fsprogs-libs-1.44.6.ebuild              |   2 +-
 .../e2fsprogs-libs-1.45.1.ebuild              |   2 +-
 .../e2fsprogs-libs-1.45.2.ebuild              |   2 +-
 sys-libs/glibc/glibc-2.19-r2.ebuild           |   2 +-
 sys-libs/glibc/glibc-2.26-r7.ebuild           |   2 +-
 sys-libs/glibc/glibc-2.27-r6.ebuild           |   2 +-
 sys-libs/glibc/glibc-2.28-r6.ebuild           |   2 +-
 sys-libs/glibc/glibc-2.29-r2.ebuild           |   2 +-
 sys-libs/glibc/glibc-9999.ebuild              |   2 +-
 sys-libs/gpm/gpm-1.20.7-r2.ebuild             |   2 +-
 sys-libs/libaal/libaal-1.0.6.ebuild           |   2 +-
 sys-libs/libaal/libaal-1.0.7-r1.ebuild        |   2 +-
 sys-libs/libaal/libaal-1.0.7.ebuild           |   2 +-
 sys-libs/libcap/libcap-2.26-r2.ebuild         |   2 +-
 sys-libs/libcap/libcap-2.27.ebuild            |   2 +-
 sys-libs/libnih/libnih-1.0.3-r3.ebuild        |   2 +-
 sys-libs/ncurses/ncurses-6.1-r2.ebuild        |   2 +-
 sys-libs/ncurses/ncurses-6.1-r3.ebuild        |   2 +-
 sys-libs/ncurses/ncurses-6.1_p20181020.ebuild |   2 +-
 sys-libs/pam/pam-1.2.1-r2.ebuild              |   2 +-
 sys-libs/pam/pam-1.3.0-r2.ebuild              |   2 +-
 sys-libs/pam/pam-1.3.1-r1.ebuild              |   2 +-
 sys-libs/pwdb/pwdb-0.62-r1.ebuild             |   2 +-
 sys-libs/readline/readline-6.3_p8-r3.ebuild   |   2 +-
 sys-libs/readline/readline-7.0_p3-r1.ebuild   |   2 +-
 sys-libs/readline/readline-7.0_p3.ebuild      |   2 +-
 sys-libs/readline/readline-7.0_p5.ebuild      |   2 +-
 sys-libs/readline/readline-8.0.ebuild         |   2 +-
 sys-libs/zlib/zlib-1.2.11-r2.ebuild           |   2 +-
 sys-process/audit/audit-2.6.4.ebuild          |   2 +-
 sys-process/audit/audit-2.7.1.ebuild          |   2 +-
 sys-process/audit/audit-2.8.2.ebuild          |   2 +-
 sys-process/audit/audit-2.8.3.ebuild          |   2 +-
 sys-process/audit/audit-2.8.4.ebuild          |   2 +-
 sys-process/procps/procps-3.3.15-r1.ebuild    |   2 +-
 139 files changed, 304 insertions(+), 146 deletions(-)
 create mode 100644 eclass/usr-ldscript.eclass

-- 
2.22.0


Reply via email to