* [gentoo-commits] repo/gentoo:master commit in: profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/systemd/, ...
@ 2022-04-24 2:51 WANG Xuerui
0 siblings, 0 replies; only message in thread
From: WANG Xuerui @ 2022-04-24 2:51 UTC (permalink / raw
To: gentoo-commits
commit: 8cf1e2be6fedc48ae3a45d44e52a5386714a889c
Author: WANG Xuerui <xen0n <AT> gentoo <DOT> org>
AuthorDate: Mon Apr 18 07:58:39 2022 +0000
Commit: WANG Xuerui <xen0n <AT> gentoo <DOT> org>
CommitDate: Sun Apr 24 02:50:40 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8cf1e2be
profiles: import the initial LoongArch profiles
These have been brewing in the loongson-overlay for a while now; let's
continue work in the main tree!
(Dropped profiles to exp status, and removed all package.accept_keywords
and package.use entries pending real keywording/testing, for ::gentoo.
Also revised some comments along the way.)
Closes: https://github.com/gentoo/gentoo/pull/25083
Reviewed-by: Sam James <sam <AT> gentoo.org>
Signed-off-by: WANG Xuerui <xen0n <AT> gentoo.org>
profiles/arch/loong/eapi | 1 +
profiles/arch/loong/la64v100/lp64d/eapi | 1 +
profiles/arch/loong/la64v100/lp64d/make.defaults | 21 +++++++++
profiles/arch/loong/make.defaults | 52 ++++++++++++++++++++++
profiles/arch/loong/package.use.force | 15 +++++++
profiles/arch/loong/package.use.mask | 44 ++++++++++++++++++
profiles/arch/loong/parent | 1 +
profiles/arch/loong/use.force | 5 +++
profiles/arch/loong/use.mask | 5 +++
profiles/default/linux/loong/22.0/la64v100/eapi | 1 +
.../linux/loong/22.0/la64v100/lp64d/desktop/eapi | 1 +
.../linux/loong/22.0/la64v100/lp64d/desktop/parent | 2 +
.../loong/22.0/la64v100/lp64d/desktop/systemd/eapi | 1 +
.../22.0/la64v100/lp64d/desktop/systemd/parent | 2 +
.../default/linux/loong/22.0/la64v100/lp64d/eapi | 1 +
.../default/linux/loong/22.0/la64v100/lp64d/parent | 2 +
.../linux/loong/22.0/la64v100/lp64d/systemd/eapi | 1 +
.../linux/loong/22.0/la64v100/lp64d/systemd/parent | 2 +
profiles/default/linux/loong/22.0/la64v100/parent | 2 +
profiles/default/linux/loong/eapi | 1 +
profiles/default/linux/loong/parent | 3 ++
profiles/profiles.desc | 7 +++
22 files changed, 171 insertions(+)
diff --git a/profiles/arch/loong/eapi b/profiles/arch/loong/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/arch/loong/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/arch/loong/la64v100/lp64d/eapi b/profiles/arch/loong/la64v100/lp64d/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/arch/loong/la64v100/lp64d/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/arch/loong/la64v100/lp64d/make.defaults b/profiles/arch/loong/la64v100/lp64d/make.defaults
new file mode 100644
index 000000000000..bbe4f93abf3c
--- /dev/null
+++ b/profiles/arch/loong/la64v100/lp64d/make.defaults
@@ -0,0 +1,21 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# LoongArch la64v100/lp64d no-multilib profile
+#
+# la64v100 -- the ISA as defined in LoongArch Reference Manual Volume 1, v1.00.
+
+CHOST="loongarch64-unknown-linux-gnu"
+MULTILIB_ABIS="lp64d"
+DEFAULT_ABI="lp64d"
+ABI="lp64d"
+
+CFLAGS="-O2 -pipe -march=loongarch64 -mabi=lp64d"
+CXXFLAGS="${CFLAGS}"
+FFLAGS="${CFLAGS}"
+FCFLAGS="${CFLAGS}"
+
+# We have only one ABI
+MULTILIB_ABIS="lp64d"
+DEFAULT_ABI="lp64d"
+ABI="lp64d"
diff --git a/profiles/arch/loong/make.defaults b/profiles/arch/loong/make.defaults
new file mode 100644
index 000000000000..3c0828d8bc2b
--- /dev/null
+++ b/profiles/arch/loong/make.defaults
@@ -0,0 +1,52 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Main LoongArch profile directory. Common settings for all loong profiles.
+#
+# Subdirectories represent choices for base instruction set; the names come
+# from the "Base Architecture" table, in the *LoongArch Toolchain Conventions*
+# document.
+#
+# https://loongson.github.io/LoongArch-Documentation/LoongArch-toolchain-conventions-EN.html
+
+# This is not a complete profile. Use the subdirectories!
+
+ARCH="loong"
+ACCEPT_KEYWORDS="loong ~loong"
+
+USE_EXPAND_VALUES_ARCH="${USE_EXPAND_VALUES_ARCH} loong"
+
+CFLAGS="-O2 -pipe"
+CXXFLAGS="${CFLAGS}"
+FFLAGS="${CFLAGS}"
+FCFLAGS="${CFLAGS}"
+
+SYMLINK_LIB="no"
+
+# Note about LIBDIR_*:
+#
+# Unlike riscv profiles, LoongArch so far has not defined exact multilib
+# layouts for non-multiarch (i.e. non-Debian-derived) systems; also the ABIs
+# other than LP64D are underdeveloped and likely unusable. So here we only
+# give definitions for lp64d.
+#
+# Should any official spec be revised such that a multilib layout is given,
+# definitions here should be updated to stay compliant.
+
+# Flags for lp64d
+LIBDIR_lp64d="lib64"
+CFLAGS_lp64d="-mabi=lp64d"
+LDFLAGS_lp64d="-m elf64loongarch"
+CHOST_lp64d="loongarch64-unknown-linux-gnu"
+
+# Since many people will want to test this in qemu...
+FEATURES="-pid-sandbox -network-sandbox -ipc-sandbox"
+
+# We need to fetch https git repo (gcc) during bootstrap, before gcc-12.1.0
+# is officially released.
+BOOTSTRAP_USE="${BOOTSTRAP_USE} curl_ssl_openssl ssl"
+
+# The following stuff MUST be defined in subdirs:
+# ABI
+# DEFAULT_ABI
+# MULTILIB_ABIS
diff --git a/profiles/arch/loong/package.use.force b/profiles/arch/loong/package.use.force
new file mode 100644
index 000000000000..c48378812752
--- /dev/null
+++ b/profiles/arch/loong/package.use.force
@@ -0,0 +1,15 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# WANG Xuerui <xen0n@gentoo.org> (2022-04-24)
+# Force-enable experimental-loong on toolchain packages; we're loong.
+sys-kernel/linux-headers experimental-loong
+sys-libs/glibc experimental-loong
+
+# WANG Xuerui <xen0n@gentoo.org> (2022-04-18)
+# gcc-12 is live ebuild for now, hence requiring this
+dev-vcs/git curl
+
+# WANG Xuerui <xen0n@gentoo.org> (2022-04-18)
+# Newer spidermonkey not available yet (due to absence of rust)
+sys-auth/polkit duktape
diff --git a/profiles/arch/loong/package.use.mask b/profiles/arch/loong/package.use.mask
new file mode 100644
index 000000000000..277c269898d7
--- /dev/null
+++ b/profiles/arch/loong/package.use.mask
@@ -0,0 +1,44 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# WANG Xuerui <xen0n@gentoo.org> (2022-04-24)
+# Unmask experimental-loong on toolchain packages; we're loong.
+sys-kernel/linux-headers -experimental-loong
+sys-libs/glibc -experimental-loong
+
+# WANG Xuerui <xen0n@gentoo.org> (2022-04-18)
+# Mask io-uring & zbc pending keywording
+sys-block/fio -io-uring -zbc
+
+# WANG Xuerui <xen0n@gentoo.org> (2022-04-18)
+# We never had non-deprecated libcrypt support from glibc, so disable compat
+# from libxcrypt for a world without libcrypt.so.1
+>=sys-libs/libxcrypt-4.4.23-r1 compat
+
+# WANG Xuerui <xen0n@gentoo.org> (2022-04-18)
+# Catalyst has support for assembling bootloader on this arch
+dev-util/catalyst -system-bootloader
+
+# The below masks are liberally taken from riscv, which has similar
+# limitations.
+
+# LoongArch has no gold
+sys-devel/binutils gold
+
+# sys-libs/libunwind do not support LoongArch for now
+dev-libs/efl unwind
+dev-util/strace unwind
+media-libs/gstreamer unwind
+media-libs/mesa unwind
+net-libs/zeromq unwind
+net-mail/dovecot unwind
+x11-base/xorg-server unwind
+x11-base/xwayland unwind
+
+# These aren't ported to LoongArch yet
+dev-libs/libpcre2 jit
+dev-libs/libpcre jit
+<dev-vcs/git-2.31.0 pcre-jit
+www-servers/nginx pcre-jit
+
+# End snippets taken from riscv
diff --git a/profiles/arch/loong/parent b/profiles/arch/loong/parent
new file mode 100644
index 000000000000..eb001c6e8ab8
--- /dev/null
+++ b/profiles/arch/loong/parent
@@ -0,0 +1 @@
+../base
diff --git a/profiles/arch/loong/use.force b/profiles/arch/loong/use.force
new file mode 100644
index 000000000000..a75f45bda3b2
--- /dev/null
+++ b/profiles/arch/loong/use.force
@@ -0,0 +1,5 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Force the flag which corresponds to ARCH.
+loong
diff --git a/profiles/arch/loong/use.mask b/profiles/arch/loong/use.mask
new file mode 100644
index 000000000000..bc841c189ccb
--- /dev/null
+++ b/profiles/arch/loong/use.mask
@@ -0,0 +1,5 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Unmask the flag which corresponds to ARCH.
+-loong
diff --git a/profiles/default/linux/loong/22.0/la64v100/eapi b/profiles/default/linux/loong/22.0/la64v100/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/eapi b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/parent b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/parent
new file mode 100644
index 000000000000..fae96e8d36b2
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/parent
@@ -0,0 +1,2 @@
+..
+../../../../../../../targets/desktop
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/systemd/eapi b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/systemd/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/systemd/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/systemd/parent b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/systemd/parent
new file mode 100644
index 000000000000..f7739b405877
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/systemd/parent
@@ -0,0 +1,2 @@
+..
+../../../../../../../../targets/systemd
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/eapi b/profiles/default/linux/loong/22.0/la64v100/lp64d/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/parent b/profiles/default/linux/loong/22.0/la64v100/lp64d/parent
new file mode 100644
index 000000000000..b4e81a288683
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/parent
@@ -0,0 +1,2 @@
+..
+../../../../../../arch/loong/la64v100/lp64d
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/systemd/eapi b/profiles/default/linux/loong/22.0/la64v100/lp64d/systemd/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/systemd/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/default/linux/loong/22.0/la64v100/lp64d/systemd/parent b/profiles/default/linux/loong/22.0/la64v100/lp64d/systemd/parent
new file mode 100644
index 000000000000..44f88d3e2df0
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/lp64d/systemd/parent
@@ -0,0 +1,2 @@
+..
+../../../../../../../targets/systemd
diff --git a/profiles/default/linux/loong/22.0/la64v100/parent b/profiles/default/linux/loong/22.0/la64v100/parent
new file mode 100644
index 000000000000..b8f5b5cbc9d2
--- /dev/null
+++ b/profiles/default/linux/loong/22.0/la64v100/parent
@@ -0,0 +1,2 @@
+../..
+../../../../../releases/17.0
diff --git a/profiles/default/linux/loong/eapi b/profiles/default/linux/loong/eapi
new file mode 100644
index 000000000000..7ed6ff82de6b
--- /dev/null
+++ b/profiles/default/linux/loong/eapi
@@ -0,0 +1 @@
+5
diff --git a/profiles/default/linux/loong/parent b/profiles/default/linux/loong/parent
new file mode 100644
index 000000000000..d11fc57ec16b
--- /dev/null
+++ b/profiles/default/linux/loong/parent
@@ -0,0 +1,3 @@
+../../../base
+..
+../../../arch/loong
diff --git a/profiles/profiles.desc b/profiles/profiles.desc
index d95666279088..a32340a2f4d3 100644
--- a/profiles/profiles.desc
+++ b/profiles/profiles.desc
@@ -140,6 +140,13 @@ ia64 default/linux/ia64/17.0/desktop/gnome/systemd stable
ia64 default/linux/ia64/17.0/developer exp
ia64 default/linux/ia64/17.0/systemd exp
+# LoongArch Profiles
+# @MAINTAINER: loong@gentoo.org
+loong default/linux/loong/22.0/la64v100/lp64d exp
+loong default/linux/loong/22.0/la64v100/lp64d/desktop exp
+loong default/linux/loong/22.0/la64v100/lp64d/desktop/systemd exp
+loong default/linux/loong/22.0/la64v100/lp64d/systemd exp
+
# M68K Profiles
# @MAINTAINER: m68k@gentoo.org
m68k default/linux/m68k/17.0 exp
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2022-04-24 2:51 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-04-24 2:51 [gentoo-commits] repo/gentoo:master commit in: profiles/default/linux/loong/22.0/la64v100/lp64d/desktop/systemd/, WANG Xuerui
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox