summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony G. Basile <blueness@gentoo.org>2018-01-27 15:39:00 -0500
committerAnthony G. Basile <blueness@gentoo.org>2018-01-28 11:34:43 -0500
commitdeb72d3a8b4e6f37c9191a229bbe19affa597492 (patch)
tree796201289c1072d8f98d34c948a1076fab6feb5c /profiles
parentprofiles: fix inheritance in hardened/linux/musl/x86, bug #645926 (diff)
downloadgentoo-deb72d3a8b4e6f37c9191a229bbe19affa597492.tar.gz
gentoo-deb72d3a8b4e6f37c9191a229bbe19affa597492.tar.bz2
gentoo-deb72d3a8b4e6f37c9191a229bbe19affa597492.zip
profiles: restructure amd64, arm and x86 musl profiles
This restructuring brings the musl profiles into conformity with the glibc profiles for amd64, arm and x86. Yet to be done are the profiles for ppc and mips. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
Diffstat (limited to 'profiles')
-rw-r--r--profiles/default/linux/amd64/17.0/musl/eapi1
-rw-r--r--profiles/default/linux/amd64/17.0/musl/hardened/eapi1
-rw-r--r--profiles/default/linux/amd64/17.0/musl/hardened/parent2
-rw-r--r--profiles/default/linux/amd64/17.0/musl/make.defaults10
-rw-r--r--profiles/default/linux/amd64/17.0/musl/parent3
-rw-r--r--profiles/default/linux/arm/17.0/musl/armv7a/eapi1
-rw-r--r--profiles/default/linux/arm/17.0/musl/armv7a/hardened/eapi1
-rw-r--r--profiles/default/linux/arm/17.0/musl/armv7a/hardened/parent2
-rw-r--r--profiles/default/linux/arm/17.0/musl/armv7a/make.defaults8
-rw-r--r--profiles/default/linux/arm/17.0/musl/armv7a/parent1
-rw-r--r--profiles/default/linux/arm/17.0/musl/eapi1
-rw-r--r--profiles/default/linux/arm/17.0/musl/make.defaults5
-rw-r--r--profiles/default/linux/arm/17.0/musl/parent3
-rw-r--r--profiles/default/linux/x86/17.0/musl/eapi1
-rw-r--r--profiles/default/linux/x86/17.0/musl/make.defaults5
-rw-r--r--profiles/default/linux/x86/17.0/musl/parent3
-rw-r--r--profiles/default/linux/x86/17.0/musl/use.mask5
-rw-r--r--profiles/features/musl/eapi1
-rw-r--r--profiles/features/musl/make.defaults18
-rw-r--r--profiles/features/musl/package.mask26
-rw-r--r--profiles/features/musl/package.use7
-rw-r--r--profiles/features/musl/package.use.force9
-rw-r--r--profiles/features/musl/package.use.mask19
-rw-r--r--profiles/features/musl/packages6
-rw-r--r--profiles/features/musl/packages.build10
-rw-r--r--profiles/features/musl/use.force6
-rw-r--r--profiles/features/musl/use.mask7
-rw-r--r--profiles/profiles.desc5
28 files changed, 167 insertions, 0 deletions
diff --git a/profiles/default/linux/amd64/17.0/musl/eapi b/profiles/default/linux/amd64/17.0/musl/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/default/linux/amd64/17.0/musl/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/default/linux/amd64/17.0/musl/hardened/eapi b/profiles/default/linux/amd64/17.0/musl/hardened/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/default/linux/amd64/17.0/musl/hardened/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/default/linux/amd64/17.0/musl/hardened/parent b/profiles/default/linux/amd64/17.0/musl/hardened/parent
new file mode 100644
index 000000000000..45a355b0beba
--- /dev/null
+++ b/profiles/default/linux/amd64/17.0/musl/hardened/parent
@@ -0,0 +1,2 @@
+..
+../../../../../../features/hardened/amd64
diff --git a/profiles/default/linux/amd64/17.0/musl/make.defaults b/profiles/default/linux/amd64/17.0/musl/make.defaults
new file mode 100644
index 000000000000..d09a4c218030
--- /dev/null
+++ b/profiles/default/linux/amd64/17.0/musl/make.defaults
@@ -0,0 +1,10 @@
+# Copyright 1999-2018 Gentoo Foundation.
+# Distributed under the terms of the GNU General Public License v2
+
+CHOST="x86_64-gentoo-linux-musl"
+
+# Anthony G. Basile <blueness@gentoo.org> (01 Jul 2014)
+# Multilib-related setup, bug #515130
+MULTILIB_ABIS="amd64"
+CHOST_amd64="${CHOST}"
+LIBDIR_amd64="lib"
diff --git a/profiles/default/linux/amd64/17.0/musl/parent b/profiles/default/linux/amd64/17.0/musl/parent
new file mode 100644
index 000000000000..8b660ec6dcac
--- /dev/null
+++ b/profiles/default/linux/amd64/17.0/musl/parent
@@ -0,0 +1,3 @@
+..
+../../../../../arch/amd64/no-multilib
+../../../../../features/musl/
diff --git a/profiles/default/linux/arm/17.0/musl/armv7a/eapi b/profiles/default/linux/arm/17.0/musl/armv7a/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/musl/armv7a/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/default/linux/arm/17.0/musl/armv7a/hardened/eapi b/profiles/default/linux/arm/17.0/musl/armv7a/hardened/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/musl/armv7a/hardened/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/default/linux/arm/17.0/musl/armv7a/hardened/parent b/profiles/default/linux/arm/17.0/musl/armv7a/hardened/parent
new file mode 100644
index 000000000000..3e3d7782bae7
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/musl/armv7a/hardened/parent
@@ -0,0 +1,2 @@
+..
+../../../../../../../features/hardened
diff --git a/profiles/default/linux/arm/17.0/musl/armv7a/make.defaults b/profiles/default/linux/arm/17.0/musl/armv7a/make.defaults
new file mode 100644
index 000000000000..c0cb6c11748f
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/musl/armv7a/make.defaults
@@ -0,0 +1,8 @@
+# Copyright 1999-2018 Gentoo Foundation.
+# Distributed under the terms of the GNU General Public License v2
+
+CHOST="armv7a-hardfloat-linux-musleabi"
+CFLAGS="-O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard"
+CXXFLAGS="${CFLAGS}"
+FFLAGS="${CFLAGS}"
+FCFLAGS="${CFLAGS}"
diff --git a/profiles/default/linux/arm/17.0/musl/armv7a/parent b/profiles/default/linux/arm/17.0/musl/armv7a/parent
new file mode 100644
index 000000000000..f3229c5b9876
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/musl/armv7a/parent
@@ -0,0 +1 @@
+..
diff --git a/profiles/default/linux/arm/17.0/musl/eapi b/profiles/default/linux/arm/17.0/musl/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/musl/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/default/linux/arm/17.0/musl/make.defaults b/profiles/default/linux/arm/17.0/musl/make.defaults
new file mode 100644
index 000000000000..52e98be4833e
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/musl/make.defaults
@@ -0,0 +1,5 @@
+# Copyright 1999-2018 Gentoo Foundation.
+# Distributed under the terms of the GNU General Public License v2
+
+CHOST="arm-unknown-linux-musleabi"
+CHOST_arm="${CHOST}"
diff --git a/profiles/default/linux/arm/17.0/musl/parent b/profiles/default/linux/arm/17.0/musl/parent
new file mode 100644
index 000000000000..f381f1758c6e
--- /dev/null
+++ b/profiles/default/linux/arm/17.0/musl/parent
@@ -0,0 +1,3 @@
+..
+../../../../../arch/arm
+../../../../../features/musl/
diff --git a/profiles/default/linux/x86/17.0/musl/eapi b/profiles/default/linux/x86/17.0/musl/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/default/linux/x86/17.0/musl/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/default/linux/x86/17.0/musl/make.defaults b/profiles/default/linux/x86/17.0/musl/make.defaults
new file mode 100644
index 000000000000..80515e7c892d
--- /dev/null
+++ b/profiles/default/linux/x86/17.0/musl/make.defaults
@@ -0,0 +1,5 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+CHOST="i686-gentoo-linux-musl"
+CHOST_x86="${CHOST}"
diff --git a/profiles/default/linux/x86/17.0/musl/parent b/profiles/default/linux/x86/17.0/musl/parent
new file mode 100644
index 000000000000..8b660ec6dcac
--- /dev/null
+++ b/profiles/default/linux/x86/17.0/musl/parent
@@ -0,0 +1,3 @@
+..
+../../../../../arch/amd64/no-multilib
+../../../../../features/musl/
diff --git a/profiles/default/linux/x86/17.0/musl/use.mask b/profiles/default/linux/x86/17.0/musl/use.mask
new file mode 100644
index 000000000000..057f0d454f09
--- /dev/null
+++ b/profiles/default/linux/x86/17.0/musl/use.mask
@@ -0,0 +1,5 @@
+# Copyright 1999-2018 Gentoo Foundation.
+# Distributed under the terms of the GNU General Public License, v2
+
+# ssp is broken on x86 musl. This is critical for gcc-6.
+ssp
diff --git a/profiles/features/musl/eapi b/profiles/features/musl/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/features/musl/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/features/musl/make.defaults b/profiles/features/musl/make.defaults
new file mode 100644
index 000000000000..e2dbf5d8a4b7
--- /dev/null
+++ b/profiles/features/musl/make.defaults
@@ -0,0 +1,18 @@
+# Copyright 1999-2018 Gentoo Foundation.
+# Distributed under the terms of the GNU General Public License v2
+
+PORTAGE_LIBC="musl"
+ELIBC="musl"
+
+FEATURES="sandbox sfperms strict"
+
+USE="nptl unicode -berkdb -gdbm"
+BOOTSTRAP_USE="${BOOTSTRAP_USE} nptl -berkdb -gdbm"
+
+# All libraries are in /lib or /usr/lib
+SYMLINK_LIB="no"
+FEATURES="-multilib-strict"
+
+# TODO: fix so musl doesn't generate this for all packages
+# that use a charset, it causes package collisons.
+INSTALL_MASK="charset.alias"
diff --git a/profiles/features/musl/package.mask b/profiles/features/musl/package.mask
new file mode 100644
index 000000000000..cb795facd556
--- /dev/null
+++ b/profiles/features/musl/package.mask
@@ -0,0 +1,26 @@
+# Copyright 1999-2018 Gentoo Foundation.
+# Distributed under the terms of the GNU General Public License v2
+
+sys-libs/uclibc
+sys-libs/uclibc-ng
+sys-libs/glibc
+
+# Older versions of net-mail/mailutils fail on musl, bug #604212
+<net-mail/mailutils-3.2
+
+# We use eudev which is tested on both uclibc and musl
+sys-apps/systemd
+sys-fs/udev
+
+# dev-libs/elfutils needs a port to musl, bug #602126
+dev-libs/elfutils
+>virtual/libelf-2
+
+# packages that unconditionally depend on dev-libs/elfutils
+<net-firewall/fwbuilder-5.3.7
+
+# Ian Stakenvicius, 2017-06-14
+# on behalf of mozilla@gentoo.org
+# Mask firefox-54 and above as it requires rust
+# now, and rust reportedly will not build yet.
+>=www-client/firefox-54.0
diff --git a/profiles/features/musl/package.use b/profiles/features/musl/package.use
new file mode 100644
index 000000000000..87d13cec246e
--- /dev/null
+++ b/profiles/features/musl/package.use
@@ -0,0 +1,7 @@
+# Copyright 1999-2018 Gentoo Foundation.
+# Distributed under the terms of the GNU General Public License v2
+
+# Anthony G. Basile <blueness@gentoo.org> (14 Jul 2016)
+# We need this to break a circular dependency with
+# 'sys-libs/libcap pam' in stage3 catalyst builds
+sys-libs/pam -filecaps
diff --git a/profiles/features/musl/package.use.force b/profiles/features/musl/package.use.force
new file mode 100644
index 000000000000..c26a7ba83f24
--- /dev/null
+++ b/profiles/features/musl/package.use.force
@@ -0,0 +1,9 @@
+# Copyright 1999-2018 Gentoo Foundation.
+# Distributed under the terms of the GNU General Public License v2
+
+# Force system-libevent use flag on mozilla packages, since the building of
+# bundled libevent cannot accomodate a system without sysctl.h
+# See bug 574830 for more info.
+>=www-client/firefox-45.0 system-libevent
+>=www-client/seamonkey-2.40 system-libevent
+>=mail-client/thunderbird-45.0 system-libevent
diff --git a/profiles/features/musl/package.use.mask b/profiles/features/musl/package.use.mask
new file mode 100644
index 000000000000..2c0a91e428ed
--- /dev/null
+++ b/profiles/features/musl/package.use.mask
@@ -0,0 +1,19 @@
+# Copyright 1999-2018 Gentoo Foundation.
+# Distributed under the terms of the GNU General Public License v2
+
+# See bug #604542
+net-misc/iputils idn
+
+# See bug #504200
+sys-devel/gcc sanitize vtv
+
+# llvm's sanitizers are also incompatible with musl
+sys-devel/llvm sanitize
+
+# These cause collisions with <libintl.h>
+# even with --without-included-gettext
+sys-devel/gettext nls
+sys-fs/e2fsprogs nls
+
+# See bug #576928
+media-libs/mesa nptl
diff --git a/profiles/features/musl/packages b/profiles/features/musl/packages
new file mode 100644
index 000000000000..4bbf9c32099c
--- /dev/null
+++ b/profiles/features/musl/packages
@@ -0,0 +1,6 @@
+# Copyright 1999-2018 Gentoo Foundation.
+# Distributed under the terms of the GNU General Public License v2
+
+*app-misc/pax-utils
+*sys-apps/sandbox
+-*sys-apps/man-pages
diff --git a/profiles/features/musl/packages.build b/profiles/features/musl/packages.build
new file mode 100644
index 000000000000..38ed7d274207
--- /dev/null
+++ b/profiles/features/musl/packages.build
@@ -0,0 +1,10 @@
+# Copyright 1999-2018 Gentoo Foundation.
+# Distributed under the terms of the GNU General Public License v2
+
+# This file lists extra packages needed to build for
+# a stage 1 based on this profile.
+
+dev-util/pkgconf
+sys-apps/attr
+sys-apps/sandbox
+dev-python/pyxattr
diff --git a/profiles/features/musl/use.force b/profiles/features/musl/use.force
new file mode 100644
index 000000000000..bfe77a581d70
--- /dev/null
+++ b/profiles/features/musl/use.force
@@ -0,0 +1,6 @@
+# Copyright 1999-2018 Gentoo Foundation.
+# Distributed under the terms of the GNU General Public License v2
+
+# Select the correct ELIBC
+elibc_musl
+
diff --git a/profiles/features/musl/use.mask b/profiles/features/musl/use.mask
new file mode 100644
index 000000000000..46c03330afb4
--- /dev/null
+++ b/profiles/features/musl/use.mask
@@ -0,0 +1,7 @@
+# Copyright 1999-2018 Gentoo Foundation.
+# Distributed under the terms of the GNU General Public License v2
+
+# Select the correct ELIBC
+-elibc_musl
+elibc_uclibc
+elibc_glibc
diff --git a/profiles/profiles.desc b/profiles/profiles.desc
index d323534ffc42..e6fe238b8a6b 100644
--- a/profiles/profiles.desc
+++ b/profiles/profiles.desc
@@ -295,8 +295,12 @@ amd64 default/linux/musl/amd64 exp
amd64 hardened/linux/musl/amd64 exp
amd64 default/linux/musl/amd64/x32 exp
amd64 hardened/linux/musl/amd64/x32 exp
+amd64 default/linux/amd64/17.0/musl exp
+amd64 default/linux/amd64/17.0/musl/hardened exp
arm default/linux/musl/arm/armv7a exp
arm hardened/linux/musl/arm/armv7a exp
+arm default/linux/arm/17.0/musl/armv7a exp
+arm default/linux/arm/17.0/musl/armv7a/hardened exp
arm64 default/linux/musl/arm64 exp
arm64 hardened/linux/musl/arm64 exp
mips default/linux/musl/mips exp
@@ -307,6 +311,7 @@ ppc default/linux/musl/ppc exp
ppc hardened/linux/musl/ppc exp
x86 default/linux/musl/x86 exp
x86 hardened/linux/musl/x86 exp
+x86 default/linux/x86/17.0/musl exp
# Non-embedded uclibc profiles
# @MAINTAINER: uclibc@gentoo.org