mirror of
https://github.com/flatcar/scripts.git
synced 2025-11-12 14:11:44 +01:00
Merge pull request #2388 from flatcar/buildbot/weekly-portage-stable-package-updates-2024-10-21
Weekly portage-stable package updates 2024-10-21
This commit is contained in:
commit
31db0ade6e
@ -624,7 +624,7 @@ sys-devel/gnuconfig
|
||||
sys-devel/m4
|
||||
sys-devel/patch
|
||||
|
||||
sys-firmware/edk2-ovmf-bin
|
||||
sys-firmware/edk2-bin
|
||||
sys-firmware/intel-microcode
|
||||
sys-firmware/ipxe
|
||||
sys-firmware/seabios-bin
|
||||
|
||||
3
changelog/security/2024-10-28-weekly-updates.md
Normal file
3
changelog/security/2024-10-28-weekly-updates.md
Normal file
@ -0,0 +1,3 @@
|
||||
- containers-common ([CVE-2024-9341](https://nvd.nist.gov/vuln/detail/CVE-2024-9341))
|
||||
- containers-image ([CVE-2024-3727](https://nvd.nist.gov/vuln/detail/CVE-2024-3727))
|
||||
- podman ([CVE-2024-9407](https://nvd.nist.gov/vuln/detail/CVE-2024-9407))
|
||||
30
changelog/updates/2024-10-28-weekly-updates.md
Normal file
30
changelog/updates/2024-10-28-weekly-updates.md
Normal file
@ -0,0 +1,30 @@
|
||||
- SDK: catalyst ([4.0.0](https://gitweb.gentoo.org/proj/catalyst.git/log/?h=4.0.0))
|
||||
- SDK: crossdev ([20240921](https://gitweb.gentoo.org/proj/crossdev.git/log/?h=20240921))
|
||||
- SDK: edk2-bin ([202408](https://github.com/tianocore/edk2/releases/tag/edk2-stable202408) (includes [202405](https://github.com/tianocore/edk2/releases/tag/edk2-stable202405), [202402](https://github.com/tianocore/edk2/releases/tag/edk2-stable202402), [202311](https://github.com/tianocore/edk2/releases/tag/edk2-stable202311), [202308](https://github.com/tianocore/edk2/releases/tag/edk2-stable202308), [202305](https://github.com/tianocore/edk2/releases/tag/edk2-stable202305), [202302](https://github.com/tianocore/edk2/releases/tag/edk2-stable202302), [202211](https://github.com/tianocore/edk2/releases/tag/edk2-stable202211), [202208](https://github.com/tianocore/edk2/releases/tag/edk2-stable202208), [202205](https://github.com/tianocore/edk2/releases/tag/edk2-stable202205)))
|
||||
- SDK: meson ([1.5.2](https://github.com/mesonbuild/meson/commits/1.5.2/))
|
||||
- SDK: rust ([1.81.0](https://blog.rust-lang.org/2024/09/05/Rust-1.81.0.html))
|
||||
- base, dev: ldb ([2.8.1](https://gitlab.com/samba-team/samba/-/commit/6ca4df6374136d1d205de689618dc8fce5177d14) (includes [2.8.0](https://gitlab.com/samba-team/samba/-/commit/94f11c3c21bc3b8a34d376ab99becd2c6260af62)))
|
||||
- base, dev: libgcrypt ([1.11.0](https://dev.gnupg.org/T7165))
|
||||
- base, dev: samba ([4.19.7](https://gitlab.com/samba-team/samba/-/blob/bce5c475d12fb75619bc85d176bfd40420b4fce8/WHATSNEW.txt))
|
||||
- base, dev: selinux-base ([2.20240916](https://github.com/SELinuxProject/refpolicy/releases/tag/RELEASE_2_20240916))
|
||||
- base, dev: selinux-base-policy ([2.20240916](https://github.com/SELinuxProject/refpolicy/releases/tag/RELEASE_2_20240916))
|
||||
- base, dev: selinux-container ([2.20240916](https://github.com/SELinuxProject/refpolicy/releases/tag/RELEASE_2_20240916))
|
||||
- base, dev: selinux-dbus ([2.20240916](https://github.com/SELinuxProject/refpolicy/releases/tag/RELEASE_2_20240916))
|
||||
- base, dev: selinux-policykit ([2.20240916](https://github.com/SELinuxProject/refpolicy/releases/tag/RELEASE_2_20240916))
|
||||
- base, dev: selinux-sssd ([2.20240916](https://github.com/SELinuxProject/refpolicy/releases/tag/RELEASE_2_20240916))
|
||||
- base, dev: selinux-unconfined ([2.20240916](https://github.com/SELinuxProject/refpolicy/releases/tag/RELEASE_2_20240916))
|
||||
- base, dev: socat ([1.8.0.0](https://repo.or.cz/socat.git/blob/2da070164d454971d5c970b5278e645051f0d0f7:/CHANGES))
|
||||
- base, dev: talloc ([2.4.2](https://gitlab.com/samba-team/samba/-/commit/f28966c1638806a5af1fa4e451b668af638491ce))
|
||||
- base, dev: tdb ([1.4.10](https://gitlab.com/samba-team/samba/-/commit/5032ab712c6e9d6562cd10b1d840d2ee052d1d16))
|
||||
- base, dev: tevent ([0.16.1](https://gitlab.com/samba-team/samba/-/commit/0ba05d5bbb1788b0b8cee26748bcda0c90c48baa) (includes [0.16.0](https://gitlab.com/samba-team/samba/-/commit/acd9248b13cba06d5b748f17aa9bc5d62079d9cc)))
|
||||
- dev: gdb ([15.2](https://lists.gnu.org/archive/html/info-gnu/2024-09/msg00011.html))
|
||||
- sysext-podman: aardvark-dns ([1.12.2](https://github.com/containers/aardvark-dns/releases/tag/v1.12.2) (includes [1.12.1](https://github.com/containers/aardvark-dns/releases/tag/v1.12.1), [1.12.0](https://github.com/containers/aardvark-dns/releases/tag/v1.12.0)))
|
||||
- sysext-podman: containers-common ([0.60.4](https://github.com/containers/common/releases/tag/v0.60.4) (includes [0.60.3](https://github.com/containers/common/releases/tag/v0.60.3), [0.60.2](https://github.com/containers/common/releases/tag/v0.60.2), [0.60.1](https://github.com/containers/common/releases/tag/v0.60.1), [0.60.0](https://github.com/containers/common/releases/tag/v0.60.0), [0.59.2](https://github.com/containers/common/releases/tag/v0.59.2)))
|
||||
- sysext-podman: containers-image ([5.32.2](https://github.com/containers/image/releases/tag/v5.32.2) (includes [5.32.1](https://github.com/containers/image/releases/tag/v5.32.1), [5.32.0](https://github.com/containers/image/releases/tag/v5.32.0), [5.31.0](https://github.com/containers/image/releases/tag/v5.31.0), [5.30.2](https://github.com/containers/image/releases/tag/v5.30.2), [5.30.1](https://github.com/containers/image/releases/tag/v5.30.1)))
|
||||
- sysext-podman: containers-storage ([1.55.0](https://github.com/containers/storage/releases/tag/v1.55.0) (includes [1.54.0](https://github.com/containers/storage/releases/tag/v1.54.0)))
|
||||
- sysext-podman: crun ([1.17](https://github.com/containers/crun/releases/tag/1.17) (includes [1.16.1](https://github.com/containers/crun/releases/tag/1.16.1), [1.16](https://github.com/containers/crun/releases/tag/1.16), [1.15](https://github.com/containers/crun/releases/tag/1.15), [1.14.4](https://github.com/containers/crun/releases/tag/1.14.4)))
|
||||
- sysext-podman: fuse-overlayfs ([1.14](https://github.com/containers/fuse-overlayfs/releases/tag/v1.14))
|
||||
- sysext-podman: netavark ([1.12.2](https://github.com/containers/netavark/releases/tag/v1.12.2) (includes [1.12.1](https://github.com/containers/netavark/releases/tag/v1.12.1), [1.12.0](https://github.com/containers/netavark/releases/tag/v1.12.0), [1.11.0](https://github.com/containers/netavark/releases/tag/v1.11.0)))
|
||||
- sysext-podman: passt ([2024.09.06](https://archives.passt.top/passt-user/20240906171530.763b3179@elisabeth/T/#u))
|
||||
- sysext-podman: podman ([5.2.4](https://github.com/containers/podman/releases/tag/v5.2.4) (includes [5.2.3](https://github.com/containers/podman/releases/tag/v5.2.3), [5.2.2](https://github.com/containers/podman/releases/tag/v5.2.2), [5.2.1](https://github.com/containers/podman/releases/tag/v5.2.1), [5.2.0](https://github.com/containers/podman/releases/tag/v5.2.0), [5.1.2](https://github.com/containers/podman/releases/tag/v5.1.2), [5.1.1](https://github.com/containers/podman/releases/tag/v5.1.1), [5.1.0](https://github.com/containers/podman/releases/tag/v5.1.0)))
|
||||
- sysext-python: setuptools ([74.1.3](https://github.com/pypa/setuptools/blob/v74.1.3/NEWS.rst))
|
||||
@ -43,7 +43,7 @@ DEPEND="
|
||||
sys-apps/seismograph
|
||||
sys-boot/grub
|
||||
amd64? ( sys-boot/shim )
|
||||
sys-firmware/edk2-ovmf-bin
|
||||
sys-firmware/edk2-bin
|
||||
sys-fs/btrfs-progs
|
||||
sys-fs/cryptsetup
|
||||
dev-perl/Parse-Yapp
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
From 07cf1b05c8b3b9460b4afc2998a9f170881faa16 Mon Sep 17 00:00:00 2001
|
||||
From b4725fecc9298279266ecfd842536b1b1c03cdb0 Mon Sep 17 00:00:00 2001
|
||||
From: Krzesimir Nowak <knowak@microsoft.com>
|
||||
Date: Mon, 4 Dec 2023 12:17:25 +0100
|
||||
Subject: [PATCH] Flatcar modifications
|
||||
@ -8,16 +8,16 @@ Subject: [PATCH] Flatcar modifications
|
||||
policy/modules/kernel/corenetwork.if.in | 26 ++++
|
||||
policy/modules/kernel/corenetwork.te.in | 12 +-
|
||||
policy/modules/kernel/files.if | 45 +++++++
|
||||
policy/modules/kernel/kernel.te | 84 ++++++++++++
|
||||
policy/modules/kernel/kernel.te | 125 +++++++++++++++++
|
||||
policy/modules/services/container.fc | 6 +
|
||||
policy/modules/services/container.te | 170 +++++++++++++++++++++++-
|
||||
policy/modules/system/init.te | 8 ++
|
||||
policy/modules/system/locallogin.te | 9 +-
|
||||
policy/modules/system/logging.te | 9 ++
|
||||
10 files changed, 386 insertions(+), 3 deletions(-)
|
||||
10 files changed, 427 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/refpolicy/policy/modules/admin/netutils.te b/refpolicy/policy/modules/admin/netutils.te
|
||||
index 3c43a1d84..429c67220 100644
|
||||
index 63d2f9cb8..62dff5f94 100644
|
||||
--- a/refpolicy/policy/modules/admin/netutils.te
|
||||
+++ b/refpolicy/policy/modules/admin/netutils.te
|
||||
@@ -128,6 +128,16 @@ corenet_raw_sendrecv_generic_if(ping_t)
|
||||
@ -37,7 +37,7 @@ index 3c43a1d84..429c67220 100644
|
||||
|
||||
dev_read_urand(ping_t)
|
||||
|
||||
@@ -212,6 +222,16 @@ corenet_udp_bind_traceroute_port(traceroute_t)
|
||||
@@ -213,6 +223,16 @@ corenet_udp_bind_traceroute_port(traceroute_t)
|
||||
corenet_tcp_connect_all_ports(traceroute_t)
|
||||
corenet_sendrecv_all_client_packets(traceroute_t)
|
||||
corenet_sendrecv_traceroute_server_packets(traceroute_t)
|
||||
@ -55,7 +55,7 @@ index 3c43a1d84..429c67220 100644
|
||||
dev_read_rand(traceroute_t)
|
||||
dev_read_urand(traceroute_t)
|
||||
diff --git a/refpolicy/policy/modules/kernel/corenetwork.if.in b/refpolicy/policy/modules/kernel/corenetwork.if.in
|
||||
index d1038d742..a675c8e28 100644
|
||||
index bc1535469..d057c4031 100644
|
||||
--- a/refpolicy/policy/modules/kernel/corenetwork.if.in
|
||||
+++ b/refpolicy/policy/modules/kernel/corenetwork.if.in
|
||||
@@ -877,6 +877,32 @@ interface(`corenet_sctp_bind_generic_node',`
|
||||
@ -92,7 +92,7 @@ index d1038d742..a675c8e28 100644
|
||||
## <summary>
|
||||
## Bind TCP sockets to generic nodes.
|
||||
diff --git a/refpolicy/policy/modules/kernel/corenetwork.te.in b/refpolicy/policy/modules/kernel/corenetwork.te.in
|
||||
index 53bf7849c..9edac05e8 100644
|
||||
index b1649ec3a..ca612de44 100644
|
||||
--- a/refpolicy/policy/modules/kernel/corenetwork.te.in
|
||||
+++ b/refpolicy/policy/modules/kernel/corenetwork.te.in
|
||||
@@ -381,7 +381,17 @@ allow corenet_unconfined_type port_type:sctp_socket { name_connect };
|
||||
@ -115,10 +115,10 @@ index 53bf7849c..9edac05e8 100644
|
||||
# Infiniband
|
||||
corenet_ib_access_all_pkeys(corenet_unconfined_type)
|
||||
diff --git a/refpolicy/policy/modules/kernel/files.if b/refpolicy/policy/modules/kernel/files.if
|
||||
index b9c451321..104dc1e3e 100644
|
||||
index 778e82713..d1bd353e0 100644
|
||||
--- a/refpolicy/policy/modules/kernel/files.if
|
||||
+++ b/refpolicy/policy/modules/kernel/files.if
|
||||
@@ -8023,3 +8023,48 @@ interface(`files_relabel_all_pidfiles',`
|
||||
@@ -8065,3 +8065,48 @@ interface(`files_relabel_all_pidfiles',`
|
||||
relabel_files_pattern($1, pidfile, pidfile)
|
||||
relabel_lnk_files_pattern($1, pidfile, pidfile)
|
||||
')
|
||||
@ -168,10 +168,10 @@ index b9c451321..104dc1e3e 100644
|
||||
+ relabelfrom_chr_files_pattern($1, { file_type -policy_config_t $2 }, { file_type -policy_config_t $2 })
|
||||
+')
|
||||
diff --git a/refpolicy/policy/modules/kernel/kernel.te b/refpolicy/policy/modules/kernel/kernel.te
|
||||
index a3dbeeeda..69d6bc9f0 100644
|
||||
index b791ebc71..c80159473 100644
|
||||
--- a/refpolicy/policy/modules/kernel/kernel.te
|
||||
+++ b/refpolicy/policy/modules/kernel/kernel.te
|
||||
@@ -376,6 +376,90 @@ files_mounton_default(kernel_t)
|
||||
@@ -377,6 +377,131 @@ files_mounton_default(kernel_t)
|
||||
|
||||
mcs_process_set_categories(kernel_t)
|
||||
|
||||
@ -258,6 +258,47 @@ index a3dbeeeda..69d6bc9f0 100644
|
||||
+optional_policy(`
|
||||
+ mount_watch_reads_runtime_files(kernel_t)
|
||||
+')
|
||||
+
|
||||
+#
|
||||
+# FLATCAR:
|
||||
+#
|
||||
+# This one happens in cl.update.docker-btrfs-compat, cl.update.oem and cl.update.payload.
|
||||
+#
|
||||
+# avc: denied { perfmon } for pid=[0-9]* comm="systemd" capability=38 scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=capability2 permissive=1
|
||||
+# avc: denied { perfmon } for pid=[0-9]* comm="systemd" capability=38 scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=capability2 permissive=0
|
||||
+# avc: denied { perfmon } for pid=[0-9]* comm="runc" capability=38 scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=capability2 permissive=0
|
||||
+#
|
||||
+allow kernel_t self:capability2 { perfmon };
|
||||
+
|
||||
+#
|
||||
+# FLATCAR:
|
||||
+#
|
||||
+# This one happens in sysext.zfs.reboot. The kernel module is a part
|
||||
+# of sysext, and it probably is labeled wrong.
|
||||
+#
|
||||
+# avc: denied { module_load } for pid=[0-9]* comm="modprobe" path="/usr/lib/modules/6.6.56-flatcar/extra/spl.ko" dev="overlay" ino=[0-9]* scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:object_r:unlabeled_t:s0 tclass=system permissive=1
|
||||
+#
|
||||
+allow kernel_t unlabeled_t:system { module_load };
|
||||
+
|
||||
+#
|
||||
+# FLATCAR:
|
||||
+#
|
||||
+# This one happens in cl.update.docker-btrfs-compat, cl.update.oem and cl.update.payload.
|
||||
+#
|
||||
+# avc: denied { confidentiality } for pid=[0-9]* comm="systemd-udevd" lockdown_reason="use of tracefs" scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=lockdown permissive=1
|
||||
+#
|
||||
+allow kernel_t self:lockdown { confidentiality };
|
||||
+
|
||||
+#
|
||||
+# FLATCAR:
|
||||
+#
|
||||
+# This one happens in cl.update.docker-btrfs-compat, cl.update.oem and cl.update.payload.
|
||||
+#
|
||||
+# avc: denied { bpf } for pid=[0-9]* comm="systemd" capability=39 scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=capability2 permissive=1
|
||||
+# avc: denied { bpf } for pid=[0-9]* comm="systemd" capability=39 scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=capability2 permissive=0
|
||||
+# avc: denied { bpf } for pid=[0-9]* comm="runc" capability=39 scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=capability2 permissive=0
|
||||
+#
|
||||
+allow kernel_t self:capability2 { bpf };
|
||||
+
|
||||
mls_process_read_all_levels(kernel_t)
|
||||
mls_process_write_all_levels(kernel_t)
|
||||
@ -280,7 +321,7 @@ index f98e68ba0..045b1b5b2 100644
|
||||
/run/containers(/.*)? gen_context(system_u:object_r:container_runtime_t,s0)
|
||||
/run/crun(/.*)? gen_context(system_u:object_r:container_runtime_t,s0)
|
||||
diff --git a/refpolicy/policy/modules/services/container.te b/refpolicy/policy/modules/services/container.te
|
||||
index 095308a13..7cd6e45e4 100644
|
||||
index 8fcd88e1e..ab16ff8b7 100644
|
||||
--- a/refpolicy/policy/modules/services/container.te
|
||||
+++ b/refpolicy/policy/modules/services/container.te
|
||||
@@ -58,6 +58,52 @@ gen_tunable(container_use_dri, false)
|
||||
@ -345,7 +386,7 @@ index 095308a13..7cd6e45e4 100644
|
||||
|
||||
## <desc>
|
||||
## <p>
|
||||
@@ -1192,3 +1238,125 @@ optional_policy(`
|
||||
@@ -1247,3 +1293,125 @@ optional_policy(`
|
||||
unconfined_domain_noaudit(spc_user_t)
|
||||
domain_ptrace_all_domains(spc_user_t)
|
||||
')
|
||||
@ -472,10 +513,10 @@ index 095308a13..7cd6e45e4 100644
|
||||
+#
|
||||
+allow container_t tmp_t:file { read };
|
||||
diff --git a/refpolicy/policy/modules/system/init.te b/refpolicy/policy/modules/system/init.te
|
||||
index 03d0de8ed..16b75d04d 100644
|
||||
index 796426508..e1761f8fd 100644
|
||||
--- a/refpolicy/policy/modules/system/init.te
|
||||
+++ b/refpolicy/policy/modules/system/init.te
|
||||
@@ -1678,3 +1678,11 @@ optional_policy(`
|
||||
@@ -1686,3 +1686,11 @@ optional_policy(`
|
||||
userdom_dontaudit_rw_all_users_stream_sockets(systemprocess)
|
||||
userdom_dontaudit_write_user_tmp_files(systemprocess)
|
||||
')
|
||||
@ -488,12 +529,12 @@ index 03d0de8ed..16b75d04d 100644
|
||||
+require { type unconfined_t; }
|
||||
+allow init_t unconfined_t:file exec_file_perms;
|
||||
diff --git a/refpolicy/policy/modules/system/locallogin.te b/refpolicy/policy/modules/system/locallogin.te
|
||||
index 4dc9981bc..ee68ba624 100644
|
||||
index 9534db006..e60eb7b59 100644
|
||||
--- a/refpolicy/policy/modules/system/locallogin.te
|
||||
+++ b/refpolicy/policy/modules/system/locallogin.te
|
||||
@@ -34,7 +34,14 @@ role system_r types sulogin_t;
|
||||
|
||||
allow local_login_t self:capability { chown dac_read_search dac_override fowner fsetid kill setgid setuid sys_nice sys_resource sys_tty_config };
|
||||
allow local_login_t self:capability { chown dac_override dac_read_search fowner fsetid kill setgid setuid sys_nice sys_resource sys_tty_config };
|
||||
dontaudit local_login_t self:capability net_admin;
|
||||
-allow local_login_t self:process { getcap setcap setexec setrlimit setsched };
|
||||
+#
|
||||
@ -508,7 +549,7 @@ index 4dc9981bc..ee68ba624 100644
|
||||
allow local_login_t self:fifo_file rw_fifo_file_perms;
|
||||
allow local_login_t self:sock_file read_sock_file_perms;
|
||||
diff --git a/refpolicy/policy/modules/system/logging.te b/refpolicy/policy/modules/system/logging.te
|
||||
index a7b6173d8..343ef1abc 100644
|
||||
index ed01f0e4a..9504b6e72 100644
|
||||
--- a/refpolicy/policy/modules/system/logging.te
|
||||
+++ b/refpolicy/policy/modules/system/logging.te
|
||||
@@ -507,6 +507,15 @@ userdom_dontaudit_search_user_home_dirs(syslogd_t)
|
||||
|
||||
@ -1 +1 @@
|
||||
DIST samba-4.18.9.tar.gz 41332779 BLAKE2B 8a0769c73d42b941b6f69d62243dd2b93d66748231465b853320cf1bf4b3dd8a912ac7bddfaa9c8b1941788951c2ccd630dabb23cf94965bc1d1e4cb5d74d123 SHA512 93a6c878bca583f59208df2a7865bbd453f7a65dc2f39a863797ef807bdeced4d632c5edd4579e341f8cf3b0b2fbe41e68a815a1510518bdd43e9a25a973c94c
|
||||
DIST samba-4.19.7.tar.gz 41851647 BLAKE2B 9bd58363d4cd30f900b286be7c7e172ed0308c4527308d15309a5f3881ba9b1d4c3dd2a37f19d63fdf80a36bd89c9b6001ab2a5aefb724f10721e3a0dc09fa94 SHA512 a837a6255be6268a48c9f41ccad5db040c69b596936a37b011a4c8e3ec68f27ebd1947b86d26b544a7b546ed426dadc450353dff9553698ca4e6e0a3af162ad3
|
||||
|
||||
@ -16,8 +16,9 @@
|
||||
<flag name="cluster">Enable support for clustering</flag>
|
||||
<flag name="glusterfs">Enable support for Glusterfs filesystem via <pkg>sys-cluster/glusterfs</pkg></flag>
|
||||
<flag name="gpg">Use <pkg>app-crypt/gpgme</pkg> for AD DC</flag>
|
||||
<flag name="json">Enable json audit support through <pkg>dev-libs/jansson</pkg></flag>
|
||||
<flag name="iprint">Enabling iPrint technology by Novell</flag>
|
||||
<flag name="json">Enable json audit support through <pkg>dev-libs/jansson</pkg></flag>
|
||||
<flag name="lmdb">Enable LMDB backend for bundled ldb</flag>
|
||||
<flag name="profiling-data">Enables support for collecting profiling data</flag>
|
||||
<flag name="quota">Enables support for user quotas</flag>
|
||||
<flag name="regedit">Enable support for regedit command-line tool</flag>
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..11} )
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="threads(+),xml(+)"
|
||||
TMPFILES_OPTIONAL=1
|
||||
inherit python-single-r1 flag-o-matic waf-utils multilib-minimal linux-info systemd pam tmpfiles
|
||||
@ -17,13 +17,13 @@ if [[ ${PV} == *_rc* ]]; then
|
||||
SRC_URI="https://download.samba.org/pub/samba/rc/${MY_P}.tar.gz"
|
||||
else
|
||||
SRC_URI="https://download.samba.org/pub/samba/stable/${MY_P}.tar.gz"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv sparc x86"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv sparc x86"
|
||||
fi
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
IUSE="acl addc ads ceph client cluster cpu_flags_x86_aes cups debug fam glusterfs gpg"
|
||||
IUSE="acl addc ads ceph client cluster cups debug fam glusterfs gpg"
|
||||
IUSE+=" iprint json ldap llvm-libunwind pam profiling-data python quota +regedit selinux"
|
||||
IUSE+=" snapper spotlight syslog system-heimdal +system-mitkrb5 systemd test unwind winbind"
|
||||
IUSE+=" zeroconf"
|
||||
@ -57,9 +57,9 @@ MULTILIB_WRAPPED_HEADERS=(
|
||||
/usr/include/samba-4.0/ctdb_version.h
|
||||
)
|
||||
|
||||
TALLOC_VERSION="2.4.0"
|
||||
TDB_VERSION="1.4.8"
|
||||
TEVENT_VERSION="0.14.1"
|
||||
TALLOC_VERSION="2.4.1"
|
||||
TDB_VERSION="1.4.9"
|
||||
TEVENT_VERSION="0.15.0"
|
||||
|
||||
# Flatcar: exclude perl, icu, libtasn1, Parse-Yapp from DEPEND
|
||||
COMMON_DEPEND="
|
||||
@ -70,8 +70,8 @@ COMMON_DEPEND="
|
||||
dev-libs/popt[${MULTILIB_USEDEP}]
|
||||
>=net-libs/gnutls-3.4.7:=[${MULTILIB_USEDEP}]
|
||||
>=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
|
||||
>=sys-libs/ldb-2.7.2:=[ldap(+)?,${MULTILIB_USEDEP}]
|
||||
<sys-libs/ldb-2.8.0:=[ldap(+)?,${MULTILIB_USEDEP}]
|
||||
>=sys-libs/ldb-2.8.1:=[ldap(+)?,${MULTILIB_USEDEP}]
|
||||
<sys-libs/ldb-2.9.0:=[ldap(+)?,${MULTILIB_USEDEP}]
|
||||
sys-libs/libcap[${MULTILIB_USEDEP}]
|
||||
sys-libs/liburing:=[${MULTILIB_USEDEP}]
|
||||
sys-libs/ncurses:=
|
||||
@ -111,6 +111,7 @@ COMMON_DEPEND="
|
||||
snapper? ( sys-apps/dbus )
|
||||
system-heimdal? ( >=app-crypt/heimdal-1.5[-ssl(-),${MULTILIB_USEDEP}] )
|
||||
system-mitkrb5? ( >=app-crypt/mit-krb5-1.19[${MULTILIB_USEDEP}] )
|
||||
!system-heimdal? ( !system-mitkrb5? ( sys-apps/keyutils[${MULTILIB_USEDEP}] ) )
|
||||
systemd? ( sys-apps/systemd:= )
|
||||
unwind? (
|
||||
llvm-libunwind? ( sys-libs/llvm-libunwind:= )
|
||||
@ -269,7 +270,6 @@ multilib_src_configure() {
|
||||
--nopyc
|
||||
--nopyo
|
||||
--without-winexe
|
||||
--accel-aes=$(usex cpu_flags_x86_aes intelaesni none)
|
||||
$(multilib_native_use_with acl acl-support)
|
||||
$(multilib_native_usex addc '' '--without-ad-dc')
|
||||
$(multilib_native_use_with ads)
|
||||
@ -377,6 +377,8 @@ multilib_src_install() {
|
||||
dosym nmb.service "$(systemd_get_systemunitdir)/nmbd.service"
|
||||
dosym smb.service "$(systemd_get_systemunitdir)/smbd.service"
|
||||
dosym winbind.service "$(systemd_get_systemunitdir)/winbindd.service"
|
||||
|
||||
use python && python_optimize
|
||||
fi
|
||||
|
||||
if use pam && use winbind ; then
|
||||
@ -7,16 +7,34 @@
|
||||
# Gentoo upstream package stabilisation
|
||||
# (the following packages are "unstable" upstream; we're stabilising these)
|
||||
|
||||
# Needed by updated app-containers/containers-common
|
||||
=app-containers/aardvark-dns-1.12.2 ~amd64 ~arm64
|
||||
|
||||
# Handled by automation
|
||||
=app-containers/containerd-1.7.23 ~amd64 ~arm64 # DO NOT EDIT THIS LINE. Added by containerd-apply-patch.sh on 2024-10-18 08:06:10
|
||||
|
||||
# Needed to address CVE-2024-9341.
|
||||
=app-containers/containers-common-0.60.4 ~amd64 ~arm64
|
||||
|
||||
# Needed to address CVE-2024-3727.
|
||||
=app-containers/containers-image-5.32.2 ~amd64 ~arm64
|
||||
|
||||
# Needed by updated app-containers/containers-common
|
||||
=app-containers/containers-storage-1.55.0 ~amd64 ~arm64
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=app-containers/cri-tools-1.27.0 ~arm64
|
||||
|
||||
# Needed by updated app-containers/containers-common
|
||||
=app-containers/crun-1.17 ~amd64 ~arm64
|
||||
|
||||
# Accept unstable for Docker and its CLI.
|
||||
=app-containers/docker-27.2.1 ~amd64 ~arm64
|
||||
=app-containers/docker-cli-27.2.1 ~amd64 ~arm64
|
||||
|
||||
# Needed by updated app-containers/containers-common
|
||||
=app-containers/netavark-1.12.2 ~amd64 ~arm64
|
||||
|
||||
# Needed to address CVE-2024-3727
|
||||
=app-containers/podman-5.0.3 ~amd64 ~arm64
|
||||
|
||||
@ -37,24 +55,15 @@
|
||||
|
||||
# Needed by arm64-native SDK.
|
||||
=app-crypt/efitools-1.9.2-r1 ~arm64
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=app-crypt/gnupg-2.4.5-r2 ~arm64
|
||||
=app-crypt/pinentry-1.3.1 ~arm64
|
||||
|
||||
# Needed by arm64-native SDK.
|
||||
=app-emulation/open-vmdk-1.0 *
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=app-portage/elt-patches-20240912
|
||||
=app-shells/bash-5.2_p37 ~arm64
|
||||
=dev-build/ninja-1.12.1 ~arm64
|
||||
=dev-build/meson-1.5.2 ~arm64
|
||||
=dev-cpp/abseil-cpp-20230125.3-r4 ~arm64
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=dev-cpp/glog-0.6.0 ~arm64
|
||||
=dev-db/sqlite-3.46.1 ~arm64
|
||||
=dev-lang/tcl-8.6.14 ~arm64
|
||||
=dev-lang/yasm-1.3.0-r1 ~arm64
|
||||
=dev-libs/ding-libs-0.6.2-r1 ~arm64
|
||||
|
||||
@ -62,69 +71,38 @@
|
||||
=dev-libs/jose-12 **
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=dev-libs/libassuan-3.0.0 ~arm64
|
||||
=dev-libs/libgpg-error-1.50 ~arm64
|
||||
=dev-libs/libnl-3.10.0 ~arm64
|
||||
=dev-libs/jsoncpp-1.9.6-r2 ~arm64
|
||||
|
||||
# The only available ebuild (from GURU) has ~amd64 and no keyword for arm64 yet.
|
||||
=dev-libs/luksmeta-9-r1 **
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=dev-libs/userspace-rcu-0.14.1 ~arm64
|
||||
|
||||
# These seem to be the versions we initially got, but the
|
||||
# modifications made to the ebuilds were clobbered, so these are here
|
||||
# to keep using the same version. Can be dropped when these or newer
|
||||
# get stabilized in Gentoo.
|
||||
=dev-libs/yajl-2.1.0-r5 ~arm64
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=dev-util/bpftool-7.5.0-r1 ~arm64
|
||||
|
||||
# Catalyst 4 is not stable yet, but earlier versions are masked now.
|
||||
dev-util/catalyst ~amd64 ~arm64
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=dev-util/pkgconf-2.3.0 ~arm64
|
||||
=dev-util/catalyst-4.0.0 ~amd64 ~arm64
|
||||
|
||||
# Needed for the MIT License
|
||||
=net-analyzer/netperf-2.7.0_p20210121 ~amd64 ~arm64
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=net-analyzer/tcpdump-4.99.5 ~arm64
|
||||
=net-dns/c-ares-1.33.1 ~arm64
|
||||
=net-firewall/conntrack-tools-1.4.8 ~arm64
|
||||
=net-firewall/ipset-7.22-r2 ~arm64
|
||||
=net-libs/gnutls-3.8.7.1-r1 ~arm64
|
||||
=net-libs/libnetfilter_cthelper-1.0.1-r1 ~arm64
|
||||
=net-libs/libnetfilter_cttimeout-1.0.1 ~arm64
|
||||
|
||||
# Needed to address CVE-2023-7256 and CVE-2024-8006.
|
||||
=net-libs/libpcap-1.10.5 ~arm64
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=net-misc/chrony-4.6 ~arm64
|
||||
|
||||
# Needed to address CVE-2024-6197, CVE-2024-6874, CVE-2024-7264 and
|
||||
# CVE-2024-8096.
|
||||
=net-misc/curl-8.10.1 ~amd64 ~arm64
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=net-misc/iperf-3.17.1 ~arm64
|
||||
=net-misc/openssh-9.8_p1-r2 ~arm64
|
||||
# Needed by updated app-containers/containers-common
|
||||
=net-misc/passt-2024.09.06 ~amd64 ~arm64
|
||||
|
||||
# Package has not been stabilised yet.
|
||||
=sys-apps/azure-vm-utils-0.3.0 ~amd64 ~arm64
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=sys-apps/bubblewrap-0.10.0 ~arm64
|
||||
=sys-apps/dtc-1.7.1 ~arm64
|
||||
=sys-apps/kexec-tools-2.0.28 ~arm64
|
||||
=sys-apps/kmod-33 ~arm64
|
||||
=sys-apps/man-db-2.13.0 ~arm64
|
||||
=sys-apps/nvme-cli-2.10.2 ~arm64
|
||||
=sys-apps/zram-generator-1.1.2 ~arm64
|
||||
=sys-block/open-iscsi-2.1.10-r1 ~arm64
|
||||
|
||||
# Upgrade to latest version for secureboot
|
||||
=sys-boot/mokutil-0.6.0 ~amd64
|
||||
@ -134,10 +112,9 @@ dev-util/catalyst ~amd64 ~arm64
|
||||
|
||||
# Keep versions on both arches in sync.
|
||||
=sys-devel/binutils-config-5.5.2 ~arm64
|
||||
=sys-devel/gettext-0.22.5 ~arm64
|
||||
=sys-fs/btrfs-progs-6.10.1 ~arm64
|
||||
=sys-fs/quota-4.09-r1 ~arm64
|
||||
=sys-libs/cracklib-2.10.2 ~arm64
|
||||
=sys-libs/efivar-39-r1 ~arm64
|
||||
=sys-libs/readline-8.2_p13 ~arm64
|
||||
=sys-process/audit-4.0.1-r1 ~arm64
|
||||
|
||||
# Needed in SDK for Secure Boot on arm64. Also addresses CVE-2024-1298.
|
||||
=sys-firmware/edk2-bin-202408 ~amd64 ~arm64
|
||||
|
||||
# Needed by updated app-containers/containers-common
|
||||
=sys-fs/fuse-overlayfs-1.14 ~amd64 ~arm64
|
||||
|
||||
@ -15,9 +15,5 @@
|
||||
# up. Update this to mask later versions when we switch to 3.11.
|
||||
>=dev-lang/python-3.12
|
||||
|
||||
# Samba sticks with the old ldb for now. Can be dropped when we update
|
||||
# samba to 4.19.x.
|
||||
>=sys-libs/ldb-2.8
|
||||
|
||||
# Update engine needs updating to use a newer version of protobuf.
|
||||
>=dev-libs/protobuf-22.0
|
||||
|
||||
@ -29,5 +29,8 @@ sys-libs/zlib static-libs
|
||||
virtual/jpeg static-libs
|
||||
x11-libs/pixman static-libs
|
||||
|
||||
# Get latest EDK2 firmware for Secure Boot on arm64.
|
||||
app-emulation/qemu -pin-upstream-blobs
|
||||
|
||||
# Enable gssapi for SDK
|
||||
net-dns/bind-tools gssapi
|
||||
|
||||
@ -13,7 +13,7 @@ if [[ "${PV}" == "9999" ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/gentoo-perl/perl-cleaner.git"
|
||||
else
|
||||
SRC_URI="https://dev.gentoo.org/~dilfridge/distfiles/${P}.tar.bz2"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
|
||||
@ -4,3 +4,5 @@ DIST libarchive-3.7.5.tar.xz 5437940 BLAKE2B e1cf8490b2db64e912bd181391310653b4e
|
||||
DIST libarchive-3.7.5.tar.xz.asc 659 BLAKE2B 7310b8d7e3f07b8c75910ff3355ffda653402ca2d6db9cdf7d669b9a4ac5f3fb4c4c4482e85184fd68a23c96bce587a95b56efb88ae971399e130e533bd0969a SHA512 7494518b61a58a9aa1e991a2cf6b16340e34d7aa2c25a3c531799785e165541781d1a915437260bc536fe8267140cc69abb2670e8c0576e975a5a2b7ecf8e20d
|
||||
DIST libarchive-3.7.6.tar.xz 5458552 BLAKE2B 3251dc4d59867d1c9b43e78ac7735c27670e819a1aba4f4a76372b8509e2427ff24e379f6102a4cc3c92b965d182c8939bb6df4c82d4d1141cdd1db13bf039a2 SHA512 3ca90d665772418b9ac444044511989e81e785a13db3c101851390ba7c2ba0793c799cedb9df990e900ab78c98207f70ecee7e21829578555dde99424950ae2a
|
||||
DIST libarchive-3.7.6.tar.xz.asc 659 BLAKE2B 9f6a621dd4aa20f06dff71225723e60a6cee1f2a54ff07d2d19670153105f2f75d6439320f49eb46c28a4416828af7dc4f0d827e46ec9aeb5b703f06eb329d77 SHA512 2840b13f910f47d34daeed9680beb4b3cdde2d7de26ab8453756261c51fb7a39b727454f370b0ee60f8e1646c65544331a22558cbe8faf79a201b1d1346b37c1
|
||||
DIST libarchive-3.7.7.tar.xz 5480580 BLAKE2B e118c693f7a78e86ab868fc6c2c77beba539cf5c7d5999e270cdceb225e9f85c68c938ec6ce3a33f75b2a44a6f7debe2c280d2573c1bcf05806300e8dce1a4f0 SHA512 2524f71f4c2ebc254a1927279be3394e820d0a0c6dec7ef835a862aa08c35756edaa4208bcdc710dd092872b59c200b555b78670372e2830822e278ff1ec4e4a
|
||||
DIST libarchive-3.7.7.tar.xz.asc 659 BLAKE2B 066d97312ded566e2c96ffc4603477fc829bcf17dcc057249dad51a0abea7aa5559691c0c25b581212168f8442db028a2dcc34148c648e973450fcb9dd5e35af SHA512 9f532df76bc381b40d7454a7bbbab85e34a646167ee7ca197fae45c713002e32f40e2b2871bc4a0d7149df19e69e2079efd9ab2f22eccf959b203604293d6094
|
||||
|
||||
173
sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.7.7.ebuild
vendored
Normal file
173
sdk_container/src/third_party/portage-stable/app-arch/libarchive/libarchive-3.7.7.ebuild
vendored
Normal file
@ -0,0 +1,173 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
inherit libtool multilib-minimal toolchain-funcs verify-sig
|
||||
|
||||
DESCRIPTION="Multi-format archive and compression library"
|
||||
HOMEPAGE="
|
||||
https://www.libarchive.org/
|
||||
https://github.com/libarchive/libarchive/
|
||||
"
|
||||
SRC_URI="
|
||||
https://www.libarchive.de/downloads/${P}.tar.xz
|
||||
verify-sig? ( https://www.libarchive.de/downloads/${P}.tar.xz.asc )
|
||||
"
|
||||
|
||||
LICENSE="BSD BSD-2 BSD-4 public-domain"
|
||||
SLOT="0/13"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="
|
||||
acl blake2 +bzip2 +e2fsprogs expat +iconv lz4 +lzma lzo nettle
|
||||
static-libs test xattr +zstd
|
||||
"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
sys-libs/zlib:=[${MULTILIB_USEDEP}]
|
||||
acl? ( virtual/acl:=[${MULTILIB_USEDEP}] )
|
||||
blake2? ( app-crypt/libb2:=[${MULTILIB_USEDEP}] )
|
||||
bzip2? ( app-arch/bzip2:=[${MULTILIB_USEDEP}] )
|
||||
expat? ( dev-libs/expat:=[${MULTILIB_USEDEP}] )
|
||||
!expat? ( dev-libs/libxml2:=[${MULTILIB_USEDEP}] )
|
||||
iconv? ( virtual/libiconv:=[${MULTILIB_USEDEP}] )
|
||||
dev-libs/openssl:=[${MULTILIB_USEDEP}]
|
||||
lz4? ( >=app-arch/lz4-0_p131:=[${MULTILIB_USEDEP}] )
|
||||
lzma? ( >=app-arch/xz-utils-5.2.5-r1:=[${MULTILIB_USEDEP}] )
|
||||
lzo? ( >=dev-libs/lzo-2:=[${MULTILIB_USEDEP}] )
|
||||
nettle? ( dev-libs/nettle:=[${MULTILIB_USEDEP}] )
|
||||
zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
kernel_linux? (
|
||||
virtual/os-headers
|
||||
e2fsprogs? ( sys-fs/e2fsprogs[${MULTILIB_USEDEP}] )
|
||||
)
|
||||
test? (
|
||||
app-arch/lrzip
|
||||
app-arch/lz4
|
||||
app-arch/lzip
|
||||
app-arch/lzop
|
||||
app-arch/xz-utils
|
||||
app-arch/zstd
|
||||
lzma? ( app-arch/xz-utils[extra-filters(+)] )
|
||||
)
|
||||
"
|
||||
BDEPEND="
|
||||
verify-sig? ( >=sec-keys/openpgp-keys-libarchive-20221209 )
|
||||
elibc_musl? ( sys-libs/queue-standalone )
|
||||
"
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/libarchive.org.asc
|
||||
|
||||
# false positives (checks for libc-defined hash functions)
|
||||
QA_CONFIG_IMPL_DECL_SKIP=(
|
||||
SHA256_Init SHA256_Update SHA256_Final
|
||||
SHA384_Init SHA384_Update SHA384_Final
|
||||
SHA512_Init SHA512_Update SHA512_Final
|
||||
)
|
||||
|
||||
PATCHES=(
|
||||
# https://github.com/libarchive/libarchive/issues/2069
|
||||
# (we can simply update the command since we don't support old lrzip)
|
||||
"${FILESDIR}/${PN}-3.7.2-lrzip.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Needed for flags to be respected w/ LTO
|
||||
elibtoolize
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
export ac_cv_header_ext2fs_ext2_fs_h=$(usex e2fsprogs) #354923
|
||||
|
||||
local myconf=(
|
||||
$(use_enable acl)
|
||||
$(use_enable static-libs static)
|
||||
$(use_enable xattr)
|
||||
$(use_with blake2 libb2)
|
||||
$(use_with bzip2 bz2lib)
|
||||
$(use_with expat)
|
||||
$(use_with !expat xml2)
|
||||
$(use_with iconv)
|
||||
$(use_with lz4)
|
||||
$(use_with lzma)
|
||||
$(use_with lzo lzo2)
|
||||
$(use_with nettle)
|
||||
--with-zlib
|
||||
$(use_with zstd)
|
||||
|
||||
# Windows-specific
|
||||
--without-cng
|
||||
)
|
||||
if multilib_is_native_abi ; then
|
||||
myconf+=(
|
||||
--enable-bsdcat="$(tc-is-static-only && echo static || echo shared)"
|
||||
--enable-bsdcpio="$(tc-is-static-only && echo static || echo shared)"
|
||||
--enable-bsdtar="$(tc-is-static-only && echo static || echo shared)"
|
||||
--enable-bsdunzip="$(tc-is-static-only && echo static || echo shared)"
|
||||
)
|
||||
else
|
||||
myconf+=(
|
||||
--disable-bsdcat
|
||||
--disable-bsdcpio
|
||||
--disable-bsdtar
|
||||
--disable-bsdunzip
|
||||
)
|
||||
fi
|
||||
|
||||
ECONF_SOURCE="${S}" econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
if multilib_is_native_abi ; then
|
||||
emake
|
||||
else
|
||||
emake libarchive.la
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
mkdir -p "${T}"/bin || die
|
||||
# tests fail when lbzip2[symlink] is used in place of ref bunzip2
|
||||
ln -s "${BROOT}/bin/bunzip2" "${T}"/bin || die
|
||||
# workaround lrzip broken on 32-bit arches with >= 10 threads
|
||||
# https://bugs.gentoo.org/927766
|
||||
cat > "${T}"/bin/lrzip <<-EOF || die
|
||||
#!/bin/sh
|
||||
exec "$(type -P lrzip)" -p1 "\${@}"
|
||||
EOF
|
||||
chmod +x "${T}/bin/lrzip" || die
|
||||
local -x PATH=${T}/bin:${PATH}
|
||||
multilib-minimal_src_test
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# sandbox is breaking long symlink behavior
|
||||
local -x SANDBOX_ON=0
|
||||
local -x LD_PRELOAD=
|
||||
# some locales trigger different output that breaks tests
|
||||
local -x LC_ALL=C.UTF-8
|
||||
emake check
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
if multilib_is_native_abi ; then
|
||||
emake DESTDIR="${D}" install
|
||||
else
|
||||
local install_targets=(
|
||||
install-includeHEADERS
|
||||
install-libLTLIBRARIES
|
||||
install-pkgconfigDATA
|
||||
)
|
||||
emake DESTDIR="${D}" "${install_targets[@]}"
|
||||
fi
|
||||
|
||||
# Libs.private: should be used from libarchive.pc instead
|
||||
find "${ED}" -type f -name "*.la" -delete || die
|
||||
# https://github.com/libarchive/libarchive/issues/1766
|
||||
sed -e '/Requires\.private/s:iconv::' \
|
||||
-i "${ED}/usr/$(get_libdir)/pkgconfig/libarchive.pc" || die
|
||||
}
|
||||
@ -27,6 +27,8 @@ multilib_src_configure() {
|
||||
local emesonargs=(
|
||||
-Dtests=$(usex test true false)
|
||||
-Ddefault_library=$(usex static-libs both shared)
|
||||
# https://bugs.gentoo.org/940641
|
||||
-Dossfuzz=false
|
||||
)
|
||||
# with -Dprograms=false, the test suite is only rudimentary,
|
||||
# so build them for testing non-native ABI as well
|
||||
|
||||
@ -1,6 +1,8 @@
|
||||
DIST aardvark-dns-1.10.0.crate 51028 BLAKE2B 81cdc4eb7eaff7359a1a12657b2bc42603383cf0f80a3a599ce9ce277e15ad83e9d5b36c3de3bef15b3201a1e60d86286ad61469d1d58ba2252b4c0174506ea2 SHA512 3d67f1b3c66aeaf4878c09e5e8fc34717cea6c348e0295bc0521c0c4144433656a3306731c24bb362a0e340e652b036b7544e544cca99b61590547bd7a6ce629
|
||||
DIST aardvark-dns-1.11.0.crate 8977859 BLAKE2B d37c2015d1a46308bea214682133d6364fb50c75e840b664c692c6f344d21a093acab5a93dbf1c7dd624a0adc7cdd38cedc35be8dfde0904a7a773b4f620e002 SHA512 0fb9f9cb20e6c548483778a1109ec315c6135dc1afa3736980754847b06a2e988f5704de7b52b2784b20297d370d47d034137d3899f519d2bb5818a5a68234d8
|
||||
DIST aardvark-dns-1.12.2.crate 55913 BLAKE2B b1c4e647c5a31946a48deb01c4428eb43550e8d906f3328226399ab6ba2ea44907382ceea47ba7ce125800bc8d0a01c287f6a73630a48671873a8df644ede488 SHA512 05a1410229e6e9cc495015e92fb4252d55af8439b9e6cbbba1b0a8b78256b01bca4bc205f61be903201eab27497062335f1c4235ea6ed7818a325d6cc68eb09d
|
||||
DIST aardvark-dns-1.9.0.crate 50846 BLAKE2B bae46eae2ec2071b1a1a301f00dc3e3aac0b3a5f1247f1f5be4f2e4b1d9d906fc22c53e5d56967731fcf226a295e8b1d8868dcfae228b05674a5ddecb58a1455 SHA512 1f21b4c40567c0aff967d38ea224884d5c2cb4a85ddffe7bbc5badd237a1195943e4d76f3c65ceb0cab984aa0c2528d8486e78e1e53c5376792477a6a5f426e7
|
||||
DIST aardvark-dns-v1.10.0-vendor.tar.gz 6283889 BLAKE2B cb69144eabf876e418667782171273541bbc416b456193780b4d7f1d22ad03e18f06ec0d6b1e51e21eab912317bd61dd73266d717fa97a81b4314a3c7d14776a SHA512 68d0106b71f42ba789810020d62911d880debf90a35a086aabfd614403985025dc0c5934087a98943b53f6dfd8ede4add99465cec1ae9a098ff1de1082e1ef9c
|
||||
DIST aardvark-dns-v1.11.0-vendor.tar.gz 6829221 BLAKE2B 42f7df29c407dd91e8e9ea1b43fc368b6795ea17169091d3900e59aea12be16174241c996b016e2f5de3e7a592ac3a1fa1c6b817f16ba282ebdda1ab65bfe61a SHA512 e49a6bb410238b90287a75adee481b8fe899ff680be48831c9b3cf36f9985d1fec1ba5bb858a095ffd520c05888651163d65f8b038e7512e975cfa522c0bee56
|
||||
DIST aardvark-dns-v1.12.2-vendor.tar.gz 6919039 BLAKE2B 5edc43d9e7044da6e3a1694af77dd20c2e2d7ef897083a1609bee32fa96a9c63d18b7e9310e3a7226e71d921a44c5b5184b9975d2712163604a671a1236dcc0d SHA512 1dfacc29962acca5c7baa11fbe4d1c93276b91cb5e1db6033d8e23e963ca4c4098bdbf4bdf89730fdea4d5a45b3a2c00ee65888d502e8009d2adaaa6f8374dba
|
||||
DIST aardvark-dns-v1.9.0-vendor.tar.gz 8085548 BLAKE2B 487f69a9c34832d74783b66c565a7c2f67f101527e8a44c215f167e4ea80f069846b25decbb423972cd42cd9ee7717efc21c3d1b0885a7d87c0fbdb9cfb9d26f SHA512 f7174f1c4275991a6a2655046697f32511586f53fb343efa25f995cc07663091a634e8a82395840b022b6b3c8363863cdf8c9b6d4e38984fb841978eef0b1f22
|
||||
|
||||
@ -0,0 +1,47 @@
|
||||
# Copyright 2023-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
[[ ${PV} == 9999* ]] || CRATES="${PN}@${PV}"
|
||||
inherit cargo
|
||||
|
||||
DESCRIPTION="A container-focused DNS server"
|
||||
HOMEPAGE="https://github.com/containers/aardvark-dns"
|
||||
|
||||
if [[ ${PV} == 9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/containers/aardvark-dns.git"
|
||||
else
|
||||
SRC_URI="${CARGO_CRATE_URIS}"
|
||||
SRC_URI+="https://github.com/containers/aardvark-dns/releases/download/v${PV}/${PN}-v${PV}-vendor.tar.gz"
|
||||
KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv"
|
||||
fi
|
||||
|
||||
# main
|
||||
LICENSE="Apache-2.0"
|
||||
# deps
|
||||
LICENSE+=" 0BSD Apache-2.0-with-LLVM-exceptions MIT Unlicense Unicode-DFS-2016 ZLIB"
|
||||
SLOT="0"
|
||||
QA_FLAGS_IGNORED="usr/libexec/podman/${PN}"
|
||||
QA_PRESTRIPPED="usr/libexec/podman/${PN}"
|
||||
ECARGO_VENDOR="${WORKDIR}/vendor"
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == 9999* ]]; then
|
||||
git-r3_src_unpack
|
||||
cargo_live_src_unpack
|
||||
else
|
||||
cargo_src_unpack
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -i -e "s|m0755 bin|m0755 $(cargo_target_dir)|g;" Makefile || die
|
||||
}
|
||||
|
||||
src_install() {
|
||||
export PREFIX="${EPREFIX}"/usr
|
||||
default
|
||||
}
|
||||
@ -1,3 +1,4 @@
|
||||
DIST containers-common-0.57.0.tar.gz 12700958 BLAKE2B 8432a7d839b94b59eabd75d4978a4d0c1340a64ed626db74e74a8318e08c61172bfba5e4f4c4b0dfffec302c5a310bb5be8fad3ab4d91a6d89ced373a0a6f297 SHA512 b993821040788085ff44e48023a64cea4e3e7e50731c359087bd287168e6849a543d930acbdaff2437fc7951acc46f7183f337dd977215eca814332e6869d1e3
|
||||
DIST containers-common-0.58.0.tar.gz 13164567 BLAKE2B 17795eec2d38b4d8b9d6afeb20e249208c5ae2ac767a365ef7313d1e7c36eadb9a9eb284a657dfe3f4fcb0577448d4883fabbad76e0318425fdc03809e27cd7c SHA512 6f569d68d3b0e5ead304c7f23341808d66a47b6352c772d353d50c5f4777cd8a5a5b85d6faaf2887f828c17ec49b9c5f929177a67294b5bbb69baa80656982a8
|
||||
DIST containers-common-0.59.1.tar.gz 13131960 BLAKE2B 5b3b947789f889955716816fa15a84eb2f398d6cfb59c85bd969442fb8f55715f2c17c78d963ae913d96e6a109f69da745cfc7db8d23e2ed6516f992b982dda0 SHA512 452c9b84f7631afdf39b7b1fcaf2f721bede312d8fb55b89a953f16ca3546c0df11bb23c99588a592b6375275516d1364570261fbc15301ca3ad486ee66eae32
|
||||
DIST containers-common-0.60.4.tar.gz 13106900 BLAKE2B 1afb428044bc8eebd002b884f2a2072971cd83fca561fd509b83088ccdf82b3a62d63ff32ec5ef856c3d0ee0ffac316201fa8f1d7956153ce30e2244cc860f02 SHA512 5d61415d4959486223a36ff98304363a558e6da9ccbdca94f976649a37d404ac00c8454019f60a79360029c91c9565d22868b109dbb84c19f13377e0e23dcc4d
|
||||
|
||||
@ -0,0 +1,75 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit readme.gentoo-r1
|
||||
|
||||
DESCRIPTION="Common config files and docs for Containers stack"
|
||||
HOMEPAGE="https://github.com/containers/common"
|
||||
|
||||
if [[ ${PV} == 9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/containers/common.git"
|
||||
else
|
||||
SRC_URI="https://github.com/containers/common/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${P#containers-}"
|
||||
KEYWORDS="~amd64 ~arm64 ~loong ~riscv"
|
||||
fi
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
RESTRICT="test"
|
||||
RDEPEND="
|
||||
>=app-containers/aardvark-dns-1.12.0
|
||||
>=app-containers/crun-1.17
|
||||
>=app-containers/containers-image-5.32.0
|
||||
>=app-containers/containers-storage-1.55.0
|
||||
app-containers/containers-shortnames
|
||||
>=app-containers/netavark-1.12.0
|
||||
net-firewall/nftables
|
||||
net-firewall/iptables[nftables]
|
||||
>=net-misc/passt-2024.09.06
|
||||
>=sys-fs/fuse-overlayfs-1.14
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
>=dev-go/go-md2man-2.0.3
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/examplify-mounts-conf.patch"
|
||||
)
|
||||
|
||||
DOC_CONTENTS="\n
|
||||
For rootless operations, one needs to configure subuid(5) and subgid(5)\n
|
||||
See /etc/sub{uid,gid} to check whether rootless user is already configured\n
|
||||
If not, quickly configure it with:\n
|
||||
usermod --add-subuids 1065536-1131071 <rootless user>\n
|
||||
usermod --add-subgids 1065536-1131071 <rootless user>\n
|
||||
"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
[[ -f docs/Makefile && -f Makefile ]] || die
|
||||
sed -i -e 's|/usr/local|/usr|g;' docs/Makefile Makefile || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
emake docs
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${ED}" install
|
||||
readme.gentoo_create_doc
|
||||
|
||||
insinto /usr/share/containers
|
||||
doins pkg/seccomp/seccomp.json pkg/subscriptions/mounts.conf
|
||||
|
||||
keepdir /etc/containers/certs.d /etc/containers/oci/hooks.d /etc/containers/systemd /var/lib/containers/sigstore
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
}
|
||||
@ -21,16 +21,16 @@ LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
RESTRICT="test"
|
||||
RDEPEND="
|
||||
>=app-containers/aardvark-dns-1.10.0
|
||||
>=app-containers/crun-1.14.3
|
||||
>=app-containers/containers-image-5.30.0
|
||||
>=app-containers/containers-storage-1.53.0
|
||||
>=app-containers/aardvark-dns-1.12.0
|
||||
>=app-containers/crun-1.17
|
||||
>=app-containers/containers-image-5.32.0
|
||||
>=app-containers/containers-storage-1.55.0
|
||||
app-containers/containers-shortnames
|
||||
>=app-containers/netavark-1.10.3
|
||||
>=app-containers/netavark-1.12.0
|
||||
net-firewall/nftables
|
||||
net-firewall/iptables[nftables]
|
||||
>=net-misc/passt-2024.03.20
|
||||
>=sys-fs/fuse-overlayfs-1.13
|
||||
>=net-misc/passt-2024.09.06
|
||||
>=sys-fs/fuse-overlayfs-1.14
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
|
||||
@ -1,2 +1,3 @@
|
||||
DIST containers-image-5.29.2.tar.gz 707618 BLAKE2B f1556cbb26ceedd74a338355caf8b557c43286726f4be63544cebc9a8f4b92be78d7a0cddbedaba7352d13e9fc399f62ee114caba6c8b1ecc334dab1379e523b SHA512 f3f6e09670dc393067992a78303f01e2584dabe79ba156973a50d7a460c011e5a27d0ccdf0ff6b399099a9a3a4c57f3badf24fb5d0704efd645ab7196a544d8f
|
||||
DIST containers-image-5.30.0.tar.gz 719070 BLAKE2B 5952ab703b6df793f326dd4fc82f50c5f672e2b9d142e0bc706014092420e3563599d9f1c1f65f743e1a8144b91f92b2326d7bf4c3024b5efb466d777a8ad613 SHA512 89cd0d482bb5d70037ff51413b7abca01d36bc7f39e9dc130c78462e501dae32193137a367d81532afd216a7432e127728147e6e839d5d99eeb6b6680f31d4dc
|
||||
DIST containers-image-5.32.2.tar.gz 735422 BLAKE2B a0585c877b4679226d1760bf873ceeb5cba7f5177ab83fa6f8a161b1f3958f3d660445556b13b4221712c241cee94429cabdb1fd4186d4dc6edba7b032fce2bc SHA512 7498f9e446b2c205b033703641f7cfcb6c8bd8f097b12ef3f734c94772d63fc7b9b40a6700d53d93919d2c34772f079aa3cb7d9f9e5a130b6587f4fe2a558df6
|
||||
|
||||
@ -0,0 +1,35 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Default config and docs related to Containers' images"
|
||||
HOMEPAGE="https://github.com/containers/image"
|
||||
|
||||
if [[ ${PV} == 9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/containers/image.git"
|
||||
else
|
||||
SRC_URI="https://github.com/containers/image/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${P#containers-}"
|
||||
KEYWORDS="~amd64 ~arm64 ~loong ~riscv"
|
||||
fi
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
|
||||
# https://github.com/gentoo/gentoo/pull/35012#discussion_r1473740969
|
||||
RESTRICT='test'
|
||||
BDEPEND=">=dev-go/go-md2man-2.0.3"
|
||||
RDEPEND="!<=app-containers/containers-common-0.57.0"
|
||||
|
||||
src_compile() {
|
||||
emake docs
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${ED}" install
|
||||
|
||||
insinto /etc/containers
|
||||
doins registries.conf
|
||||
}
|
||||
@ -22,9 +22,6 @@ SLOT="0"
|
||||
RESTRICT='test'
|
||||
BDEPEND=">=dev-go/go-md2man-2.0.3"
|
||||
RDEPEND="!<=app-containers/containers-common-0.57.0"
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/fix-warnings.patch
|
||||
)
|
||||
|
||||
src_compile() {
|
||||
emake docs
|
||||
|
||||
@ -1,3 +1,4 @@
|
||||
DIST containers-storage-1.51.0.tar.gz 4283732 BLAKE2B 108401d68e617e6237e68cf2147113680e0452a8d15ee099da9872508800f3e7b8f2c5508e17d9c5f3d58fec4efc1c20f23f1a567fe592533c0e63efd05ae5c8 SHA512 89916b49438bce8bb774b4aa799676d4b3a946a0b5207a1b5241b1a3ac0875b06b3cd8e81d7e23332ceae6010b693516fc31d8c7f75a37e7ad3056a83c75b6c1
|
||||
DIST containers-storage-1.53.0.tar.gz 4291738 BLAKE2B 939ecca8a948165c42453d5461429d46249d73582869793969f9d4ae52d0a9fec25e6c39cd13190dad0730d9a17de7af1f237b3cf5434fd30f442c78e57ee7b3 SHA512 ea4a1d1899208eb8861e36beba206724b1f55cfd6007bc5a90c3a6a5e02835b4a2985814dc9363c31dcdc81a3fb331b29f51f5523628edb8d9c64c465d6dcaa3
|
||||
DIST containers-storage-1.54.0.tar.gz 4165066 BLAKE2B 30f3e4287e9db46fca81ae6c08d3016ec4be6f38a4981d310f06cbc72e4125b458446fe49675f53232efdf0bec58e9cd18aa90424677e1b726338f1fb62b7172 SHA512 e3535ab378bcb7b852d1ebf431e94696f53da469278f618c07dde2d3c8c6b5b3a4c71d65a9c14d1c1b4fa1e41a0550029468ef9ba1f24c1d3294a5aeec55b5fd
|
||||
DIST containers-storage-1.55.0.tar.gz 4197147 BLAKE2B 62bf192225383961d045f7128b4da32af2b1c9a5f9844e17b2264e81b8fa4494f6d2705ec6415245c0c5d889604e712d922d76c46e8ec6600dff5476b2a530ff SHA512 4c035385167c4c3f6048f8bc2bbbd3cfe9993390d580449e0e5b52576a27d286bd536799c96e46d946b9bfa61ff7263325145acddd7fabfbfbacb967d81843d3
|
||||
|
||||
@ -0,0 +1,32 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Default config and docs related to Containers' storage"
|
||||
HOMEPAGE="https://github.com/containers/storage"
|
||||
|
||||
if [[ ${PV} == 9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/containers/storage.git"
|
||||
else
|
||||
SRC_URI="https://github.com/containers/storage/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${P#containers-}"
|
||||
KEYWORDS="~amd64 ~arm64 ~loong ~riscv"
|
||||
fi
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
|
||||
BDEPEND=">=dev-go/go-md2man-2.0.2"
|
||||
|
||||
src_compile() {
|
||||
emake -C docs GOMD2MAN=go-md2man containers-storage.conf.5
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${ED}" -C docs install
|
||||
|
||||
insinto /etc/containers
|
||||
doins storage.conf
|
||||
}
|
||||
@ -1,4 +1,5 @@
|
||||
DIST crun-1.11.2.tar.xz 738176 BLAKE2B ef13475089c87599159ce00dd26fbb19c7f2bb9564352c1f8040925e521bb924cf28a8d1f37cc95ce7d1b2797b8654740e9ad08352e357c8c9e2d176466101e0 SHA512 ae35ffb9bd1c7acebfd7f6236fa6a7ad524593d8f2cea1203f0e89023e9791d2d5bbc5c5cfc32ee5f18ad80662a1659076ab5f4d5ff74c6026842f2dd12be977
|
||||
DIST crun-1.14.3.tar.xz 750456 BLAKE2B 5a63b5da2f85ff1a83d4589be224c5b7a1123b6d7714b90a63c1907b78d42392aff25ffe5d9a4127173ac47026d57e9c93a39f5ba4b07de7f9f3722c14e6d203 SHA512 d6645c519ff00dda5def6d58240600d15e76969489918d51c0def2fee7dbad6374f83e5afc14a998d176aa2944765df5cd84c3031b265a1931ab23f2fc965fc1
|
||||
DIST crun-1.16.tar.gz 1759549 BLAKE2B 1dfdf9177ae52e627c92e70e48a558bb355c87f629e95f1debaf6b7d8c38802110bd796545d5b2dbe3cac7f8de1f9c94e9b5f046cc618e73afd4c434188d585c SHA512 718e17abdb8c2a9e1fdd39f09e7e3e435d88c5785cc13c1e67f492847d7d938cf399aecc055ecf88720fa8f73b8539f057e3b0e53f10f4e382f5664a2243b959
|
||||
DIST crun-1.17.tar.gz 1773153 BLAKE2B 9f75cb6879e0b8cd47bb8939c1cf6f88d5e13e6d8932c652ea20c64501bc69fbda84dd061866a9c08e353848f39d1022bf67fbc0d160d5ef7fdc08c1edec03f9 SHA512 7556467c5e0e93bb7321e2e88de8a2f537340e3e0acaa5501eab8deb0f4bb93c4561f8d063156789d3ee98fdd49069fc52c0ed0c773bd44db476eeeccc16aa1a
|
||||
DIST crun-1.8.4.tar.xz 729552 BLAKE2B 8169518a0ddd8deb3820f7030d03dec6941d5d34fb73a036b82f15b0d8f2f702e117de00b829a16cb9976e118f5a5ca732b1cd572708f664cfeafc564f883824 SHA512 2ed80db2e7ddd1438bbe33e99ec2cdbcc55c4869504f719ff9302e834929752af09a59cd905accb37ee5f6cae3b9b16fd4f4c3fdab31db5fc38b007c1505bfa0
|
||||
|
||||
75
sdk_container/src/third_party/portage-stable/app-containers/crun/crun-1.17.ebuild
vendored
Normal file
75
sdk_container/src/third_party/portage-stable/app-containers/crun/crun-1.17.ebuild
vendored
Normal file
@ -0,0 +1,75 @@
|
||||
# Copyright 2019-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
|
||||
inherit python-any-r1
|
||||
|
||||
DESCRIPTION="A fast and low-memory footprint OCI Container Runtime fully written in C"
|
||||
HOMEPAGE="https://github.com/containers/crun"
|
||||
|
||||
if [[ "$PV" == *9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/containers/${PN}.git"
|
||||
else
|
||||
SRC_URI="https://github.com/containers/${PN}/releases/download/${PV}/${P}.tar.gz"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2+ LGPL-2.1+"
|
||||
SLOT="0"
|
||||
IUSE="+bpf +caps criu +seccomp selinux systemd static-libs"
|
||||
|
||||
DEPEND="
|
||||
dev-libs/yajl:=
|
||||
sys-kernel/linux-headers
|
||||
caps? ( sys-libs/libcap )
|
||||
criu? ( >=sys-process/criu-3.15 )
|
||||
seccomp? ( sys-libs/libseccomp )
|
||||
systemd? ( sys-apps/systemd:= )
|
||||
"
|
||||
RDEPEND="${DEPEND}
|
||||
selinux? ( sec-policy/selinux-container )"
|
||||
BDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
src_configure() {
|
||||
local myeconfargs=(
|
||||
$(use_enable bpf)
|
||||
$(use_enable caps)
|
||||
$(use_enable criu)
|
||||
$(use_enable seccomp)
|
||||
$(use_enable systemd)
|
||||
$(usex static-libs '--enable-shared --enable-static' '--enable-shared --disable-static' '' '')
|
||||
)
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake "DESTDIR=${D}" install-exec
|
||||
doman crun.1
|
||||
einstalldocs
|
||||
|
||||
einfo "Cleaning up .la files"
|
||||
find "${ED}" -name '*.la' -delete || die
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake check-TESTS -C ./libocispec
|
||||
|
||||
# the crun test suite is comprehensive to the extent that tests will fail
|
||||
# within a sandbox environment, due to the nature of the privileges
|
||||
# required to create linux "containers".
|
||||
local supported_tests=(
|
||||
"tests/tests_libcrun_utils"
|
||||
"tests/tests_libcrun_errors"
|
||||
"tests/tests_libcrun_intelrdt"
|
||||
"tests/test_oci_features"
|
||||
)
|
||||
emake check-TESTS TESTS="${supported_tests[*]}"
|
||||
}
|
||||
@ -1,8 +1,10 @@
|
||||
DIST netavark-1.10.2.crate 154261 BLAKE2B 2da5b12917f5db01d82c47808f403e06d6abbcbad0b777d1871de73d52d25219e3d6f8db48feb862aff8a20ed2184c728e813871aa1acc1d02e3997987a932b6 SHA512 362dd2652b3a9d9d1dec99cd85bc6e74b323d86b79ded742e68472e0b58881a5306d7217218d88e27d5e1c4094f2d67c9cb766d4b4c1ee2185c8b4fcbd299e3d
|
||||
DIST netavark-1.10.3.crate 154416 BLAKE2B a7750304484ae820eb3bb1bc4de8c2ad22d95494fe10471014e0eb999fb7578c5e9c2ab352fe357d964d701206ee7016f87134a62afe0a03cd1b574cae1264ca SHA512 6ed9cd5a69a6eacc4ad839a82680c7b98d453564aadee41eb6ea632223fba7fbdb20f11e4146dc74b6c6d3695ac50624424b3260dbb7769a4100a918e4328dbf
|
||||
DIST netavark-1.11.0.crate 155698 BLAKE2B df460f6a2e5ce82645dccf6ca487724da2abc6f3f2c90f56d935d691ddd9a4229b785177a4e6360f75aa13ee7cdb29a2794c0b7360ef9d40ea3f946771d3ab73 SHA512 e25b075f98cb2aa55cf0e8d8868aac3b6ff0b390f4f0632d6ee2f431cede144948ed98015576cf8a64fcc1a2c33c454415159951aacbdf0611613da867db9a13
|
||||
DIST netavark-1.12.2.crate 156878 BLAKE2B 787fd23e3fa233a18a753aa55a43413aafff47b4d0733a9f2250d3f2159c1a3d0dd20272997701b3bc39a6a042060e3d2edad2418326873111d8183f0060560c SHA512 45e423e15945ce63e1bb5d2364377de65efd2f2edfeb0fd3522d2d8afb5cb60e1951b5810ac1dbdbbdf77176885b738ad864132daa8d7de858fb4edce340d7ea
|
||||
DIST netavark-1.9.0.crate 139321 BLAKE2B c0c40c5b109544c094bf83ba9c73f829472c7703a72e25ec3dcb9b62b926f404618b2cb143fcc944f2240db074de14e711115d6f51d722125e152eea0ac0a631 SHA512 7a5fb4a856b5815c141ad63abbe0f122d762a411b86189add76cfff99adfdb066e24a7b577683950efdc39f2b7955bbdfb31f2c1c41037702fb732916e8aeebe
|
||||
DIST netavark-v1.10.2-vendor.tar.gz 16135498 BLAKE2B 607cad9d80067d579adaafdea22b238f5e2f6f92a3c6aed530c8e97bce2f7f869adeabbc7b7d1c04f7c517459112c42b5588aa3ccbf04d5205d2b8212c1e7a42 SHA512 a5079b724d25af60cc094dd5c0bc9e01d503f64bee7ef1c8e616e79793726d848a5e000d951f02d2516f10feea23e30ab637b37ae09da5580f4edb1e783240c0
|
||||
DIST netavark-v1.10.3-vendor.tar.gz 16135507 BLAKE2B 114519b76d932c5918fd91cea73e8bc9f5aa3a63275f9218e667e400c3e2512e5db29ce806b5e5b509b043c04a3436344a27cf170e203d4360d00247e48b5ca9 SHA512 b8a99f45ba4ebb20414fe052ff08b1e7a7a86994c7dfa2f36d0500d52bcbd2d279aeff19fb0844a65e2375e86da33af735851f038f598771d2dac96ff7e032a5
|
||||
DIST netavark-v1.11.0-vendor.tar.gz 17751524 BLAKE2B b466b27674e6944b2de8a684ee3e14f26775b6065f0f1e82987a0c240725c01f88d2138641b768b5e03fce5b26908d0281b1983b8c1844af4999064bf24d8f15 SHA512 d858bddaaf41b284af9ede84a4d3aab5b5935ea83df5261dfa58e2b7d14962dd55983b1a95b2692e323ea40fc2dc4d9b1bdf2aed90644739e6333c794a7915cb
|
||||
DIST netavark-v1.12.2-vendor.tar.gz 18364290 BLAKE2B e2f09d53ac8106196aa873732df66f0357a5e26488cc1b8f1d10f5f5d650d471272efca7f33860afe6242500d934ee22d9ea58c256e47e296ed57d8d563f1f27 SHA512 1396eb4e41282745949a7a511c6c44e703c810624e56b8ca9455fec52c59d4ec4333103e00188b2b8c08a60bb9e8a8eca6ed995103c0dc20b3b91c1e0a1d0dfb
|
||||
DIST netavark-v1.9.0-vendor.tar.gz 16032862 BLAKE2B 313bcde75f2355dab3fa4fdc82881109924c07408aa352e92b590356cf292cd60ad39d8ef31687935e3fed6f22ec8c3b8f26e6eae21fdf211c29c83b745c8a84 SHA512 a5c11dd47122490579a260b6ac3b1c8f01d1c2881e58dbcc5bece398c7d6ef01f376f8c342df4ef619b135cc92a95c48741c8098413c33ede696c87a9cdcc96c
|
||||
|
||||
59
sdk_container/src/third_party/portage-stable/app-containers/netavark/netavark-1.12.2.ebuild
vendored
Normal file
59
sdk_container/src/third_party/portage-stable/app-containers/netavark/netavark-1.12.2.ebuild
vendored
Normal file
@ -0,0 +1,59 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
[[ ${PV} == 9999* ]] || CRATES="${PN}@${PV}"
|
||||
|
||||
inherit cargo systemd
|
||||
|
||||
DESCRIPTION="A container network stack"
|
||||
HOMEPAGE="https://github.com/containers/netavark"
|
||||
|
||||
if [[ ${PV} == 9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/containers/netavark.git"
|
||||
else
|
||||
SRC_URI="${CARGO_CRATE_URIS} https://github.com/containers/netavark/releases/download/v${PV}/${PN}-v${PV}-vendor.tar.gz"
|
||||
KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv"
|
||||
fi
|
||||
|
||||
# main
|
||||
LICENSE="Apache-2.0"
|
||||
# deps
|
||||
LICENSE+=" Apache-2.0-with-LLVM-exceptions BSD BSD-2 Boost-1.0 MIT Unicode-DFS-2016 Unlicense ZLIB"
|
||||
SLOT="0"
|
||||
BDEPEND="dev-go/go-md2man
|
||||
dev-libs/protobuf"
|
||||
|
||||
QA_FLAGS_IGNORED="
|
||||
usr/libexec/podman/${PN}"
|
||||
QA_PRESTRIPPED="
|
||||
usr/libexec/podman/${PN}"
|
||||
|
||||
ECARGO_VENDOR="${WORKDIR}/vendor"
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == 9999* ]]; then
|
||||
git-r3_src_unpack
|
||||
cargo_live_src_unpack
|
||||
else
|
||||
cargo_src_unpack
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
sed -i -e "s|m0755 bin|m0755 $(cargo_target_dir)|g;" Makefile || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cargo_src_compile
|
||||
export PREFIX="${EPREFIX}"/usr SYSTEMDDIR="$(systemd_get_systemunitdir)"
|
||||
emake docs
|
||||
}
|
||||
|
||||
# Following is needed because we want to use `make install` instead of `cargo install` (exported by cargo.eclass)
|
||||
src_install() {
|
||||
default
|
||||
}
|
||||
@ -2,3 +2,4 @@ DIST podman-4.9.4.tar.gz 21733620 BLAKE2B 17d099c0a13fbbb77556742313c39995127fc9
|
||||
DIST podman-5.0.2.tar.gz 23811875 BLAKE2B e943eb36eb0b80332223afc5d971c0886f6eaffeb7133c634d28c0a38e9aae6a54266691067dbca7684882f8b6dad72c3d5de2287ec5a7e8fb4b1cfd96df0b4d SHA512 70dbac9fc81d66eb9b0a5174f5776b805397005cacca917674d2b001591fadd05a776c956e693bad932e9eefe591c35da5c566e8e9e01db8be42bc454cd03104
|
||||
DIST podman-5.0.3.tar.gz 23814179 BLAKE2B 46385710e4d24f8eca3a7c98c18a97b96ecd4691b3c965c5a5e7bc690d40d892a6d5fb71c1dd8ec56cc907a2167ab5ee795b4d2c2279c58cef3a5a1cece8b678 SHA512 c605a52cc5aba43d485796c4986f2d1be704e5c931473bf5ba1cf77f703cdb3d16f41d33da0b25287e8d001077f77caf117d3ea5dbd7c56a744274025d9ab07d
|
||||
DIST podman-5.1.1.tar.gz 23794366 BLAKE2B 0612a148972c96f532e96a8eb1ab388d80b32fe2ca7c5626e615748ef269a853407aeb39f34686d9eb75de239882e524cf5ee7c97152caccf5f77eb6ecfd54d8 SHA512 e896ee97980da4a522eb865d2eacb6876dd8bc5be1488aed8bd81a81af95faa1383b176b5d236d4af0f76bc30ddad5230df3e11c59ffc6f86e5b4cf3876ff184
|
||||
DIST podman-5.2.4.tar.gz 23833172 BLAKE2B b04f9b7009d42eb15396ed918889c43e3164e433ca9eb8485c9c642ba121a48cd9030b365a3853935f01e323576931b199b3ba0d2ec90bacf2400e3bdfd60483 SHA512 c6dc05cb377ba6ca3bf7a8d7875c97af9e82b972812702e011e41f7922a4546166061dd5fb809fbef9dd13ee233744de7b7fe16906d8d9631133fc4205a980c5
|
||||
|
||||
146
sdk_container/src/third_party/portage-stable/app-containers/podman/podman-5.2.4.ebuild
vendored
Normal file
146
sdk_container/src/third_party/portage-stable/app-containers/podman/podman-5.2.4.ebuild
vendored
Normal file
@ -0,0 +1,146 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{11..13} )
|
||||
|
||||
inherit go-module python-any-r1 tmpfiles toolchain-funcs linux-info
|
||||
|
||||
DESCRIPTION="A tool for managing OCI containers and pods with Docker-compatible CLI"
|
||||
HOMEPAGE="https://github.com/containers/podman/ https://podman.io/"
|
||||
|
||||
if [[ ${PV} == 9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/containers/podman.git"
|
||||
else
|
||||
SRC_URI="https://github.com/containers/podman/archive/v${PV/_rc/-rc}.tar.gz -> ${P}.tar.gz"
|
||||
S="${WORKDIR}/${P/_rc/-rc}"
|
||||
[[ ${PV} != *rc* ]] && \
|
||||
KEYWORDS="amd64 arm64 ~loong ~riscv"
|
||||
fi
|
||||
|
||||
# main pkg
|
||||
LICENSE="Apache-2.0"
|
||||
# deps
|
||||
LICENSE+=" BSD BSD-2 CC-BY-SA-4.0 ISC MIT MPL-2.0"
|
||||
SLOT="0"
|
||||
IUSE="apparmor btrfs +seccomp selinux systemd wrapper"
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="
|
||||
app-containers/catatonit
|
||||
>=app-containers/conmon-2.1.10
|
||||
>=app-containers/containers-common-0.58.0-r1
|
||||
app-crypt/gpgme:=
|
||||
dev-libs/libassuan:=
|
||||
dev-libs/libgpg-error:=
|
||||
sys-apps/shadow:=
|
||||
|
||||
apparmor? ( sys-libs/libapparmor )
|
||||
btrfs? ( sys-fs/btrfs-progs )
|
||||
wrapper? ( !app-containers/docker-cli )
|
||||
seccomp? ( sys-libs/libseccomp:= )
|
||||
selinux? ( sec-policy/selinux-podman sys-libs/libselinux:= )
|
||||
systemd? ( sys-apps/systemd:= )
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
dev-go/go-md2man
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${T}"/togglable-seccomp.patch
|
||||
)
|
||||
|
||||
CONFIG_CHECK="
|
||||
~USER_NS
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
use btrfs && CONFIG_CHECK+=" ~BTRFS_FS"
|
||||
linux-info_pkg_setup
|
||||
python-any-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cat <<'EOF' > "${T}"/togglable-seccomp.patch || die
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -56,7 +56,6 @@ BUILDTAGS ?= \
|
||||
$(shell hack/systemd_tag.sh) \
|
||||
$(shell hack/libsubid_tag.sh) \
|
||||
exclude_graphdriver_devicemapper \
|
||||
- seccomp
|
||||
# allow downstreams to easily add build tags while keeping our defaults
|
||||
BUILDTAGS += ${EXTRA_BUILDTAGS}
|
||||
# N/B: This value is managed by Renovate, manual changes are
|
||||
EOF
|
||||
|
||||
default
|
||||
|
||||
# assure necessary files are present
|
||||
local file
|
||||
for file in apparmor_tag btrfs_installed_tag btrfs_tag systemd_tag; do
|
||||
[[ -f hack/"${file}".sh ]] || die
|
||||
done
|
||||
|
||||
local feature
|
||||
for feature in apparmor systemd; do
|
||||
cat <<-EOF > hack/"${feature}"_tag.sh || die
|
||||
#!/usr/bin/env bash
|
||||
$(usex ${feature} "echo ${feature}" echo)
|
||||
EOF
|
||||
done
|
||||
|
||||
echo -e "#!/usr/bin/env bash\n echo" > hack/btrfs_installed_tag.sh || die
|
||||
cat <<-EOF > hack/btrfs_tag.sh || die
|
||||
#!/usr/bin/env bash
|
||||
$(usex btrfs echo 'echo exclude_graphdriver_btrfs btrfs_noversion')
|
||||
EOF
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
export PREFIX="${EPREFIX}/usr"
|
||||
|
||||
# For non-live versions, prevent git operations which causes sandbox violations
|
||||
# https://github.com/gentoo/gentoo/pull/33531#issuecomment-1786107493
|
||||
[[ ${PV} != 9999* ]] && export COMMIT_NO="" GIT_COMMIT="" EPOCH_TEST_COMMIT=""
|
||||
|
||||
# Use proper pkg-config to get gpgme cflags and ldflags when
|
||||
# cross-compiling, bug 930982.
|
||||
if tc-is-cross-compiler; then
|
||||
tc-export PKG_CONFIG
|
||||
fi
|
||||
|
||||
emake BUILDFLAGS="-v -work -x" GOMD2MAN="go-md2man" EXTRA_BUILDTAGS="$(usev seccomp)" \
|
||||
all $(usev wrapper docker-docs)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" install install.completions $(usev wrapper install.docker-full)
|
||||
|
||||
if use !systemd; then
|
||||
newconfd "${FILESDIR}"/podman-5.0.0_rc4.confd podman
|
||||
newinitd "${FILESDIR}"/podman-5.0.0_rc4.initd podman
|
||||
|
||||
newinitd "${FILESDIR}"/podman-restart-5.0.0_rc4.initd podman-restart
|
||||
newconfd "${FILESDIR}"/podman-restart-5.0.0_rc4.confd podman-restart
|
||||
|
||||
newinitd "${FILESDIR}"/podman-clean-transient-5.0.0_rc6.initd podman-clean-transient
|
||||
newconfd "${FILESDIR}"/podman-clean-transient-5.0.0_rc6.confd podman-clean-transient
|
||||
|
||||
exeinto /etc/cron.daily
|
||||
newexe "${FILESDIR}"/podman-auto-update-5.0.0.cron podman-auto-update
|
||||
|
||||
insinto /etc/logrotate.d
|
||||
newins "${FILESDIR}/podman.logrotated" podman
|
||||
fi
|
||||
|
||||
keepdir /var/lib/containers
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
tmpfiles_process podman.conf $(usev wrapper podman-docker.conf)
|
||||
}
|
||||
@ -23,7 +23,7 @@ S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="bzip2 doc ldap nls readline selinux +smartcard ssl test +tofu tpm tools usb user-socket wks-server"
|
||||
RESTRICT="!test? ( test )"
|
||||
REQUIRED_USE="test? ( tofu )"
|
||||
|
||||
@ -34,7 +34,7 @@ LICENSE="GPL-2 LGPL-2.1"
|
||||
# Bump FUDGE if a release is made which breaks ABI without changing SONAME.
|
||||
# (Reset to 0 if FUDGE != 0 if libgpgme/libgpgmepp/libqpggme change.)
|
||||
SLOT="1/11.6.15.2"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="common-lisp static-libs +cxx python qt5 qt6 test"
|
||||
RESTRICT="!test? ( test )"
|
||||
REQUIRED_USE="
|
||||
|
||||
155
sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.21.3-r1.ebuild
vendored
Normal file
155
sdk_container/src/third_party/portage-stable/app-crypt/mit-krb5/mit-krb5-1.21.3-r1.ebuild
vendored
Normal file
@ -0,0 +1,155 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{11..13} )
|
||||
inherit autotools flag-o-matic python-any-r1 systemd toolchain-funcs multilib-minimal
|
||||
|
||||
MY_P="${P/mit-}"
|
||||
P_DIR=$(ver_cut 1-2)
|
||||
DESCRIPTION="MIT Kerberos V"
|
||||
HOMEPAGE="https://web.mit.edu/kerberos/www/"
|
||||
SRC_URI="https://web.mit.edu/kerberos/dist/krb5/${P_DIR}/${MY_P}.tar.gz"
|
||||
S=${WORKDIR}/${MY_P}/src
|
||||
|
||||
LICENSE="openafs-krb5-a BSD MIT OPENLDAP BSD-2 HPND BSD-4 ISC RSA CC-BY-SA-3.0 || ( BSD-2 GPL-2+ )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
IUSE="cpu_flags_x86_aes doc +keyutils lmdb nls openldap +pkinit selinux test xinetd"
|
||||
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
DEPEND="
|
||||
!!app-crypt/heimdal
|
||||
>=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
|
||||
|| (
|
||||
>=dev-libs/libverto-0.2.5[libev,${MULTILIB_USEDEP}]
|
||||
>=dev-libs/libverto-0.2.5[libevent,${MULTILIB_USEDEP}]
|
||||
)
|
||||
keyutils? ( >=sys-apps/keyutils-1.5.8:=[${MULTILIB_USEDEP}] )
|
||||
lmdb? ( dev-db/lmdb:= )
|
||||
nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
|
||||
openldap? ( >=net-nds/openldap-2.4.38-r1:=[${MULTILIB_USEDEP}] )
|
||||
pkinit? ( >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}] )
|
||||
xinetd? ( sys-apps/xinetd )
|
||||
"
|
||||
BDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
>=sys-fs/e2fsprogs-1.46.4-r51[${MULTILIB_USEDEP}]
|
||||
app-alternatives/yacc
|
||||
cpu_flags_x86_aes? (
|
||||
amd64? ( dev-lang/yasm )
|
||||
x86? ( dev-lang/yasm )
|
||||
)
|
||||
doc? ( virtual/latex-base )
|
||||
test? ( dev-util/cmocka )
|
||||
"
|
||||
RDEPEND="${DEPEND}
|
||||
selinux? ( sec-policy/selinux-kerberos )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-1.12_warn_cflags.patch"
|
||||
"${FILESDIR}/${PN}_dont_create_rundir.patch"
|
||||
"${FILESDIR}/${PN}-1.18.2-krb5-config.patch"
|
||||
)
|
||||
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/krb5-config
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
# Make sure we always use the system copies.
|
||||
rm -rf util/{et,ss,verto}
|
||||
sed -i 's:^[[:space:]]*util/verto$::' configure.ac || die
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# lto-type-mismatch (bug #854225)
|
||||
filter-lto
|
||||
|
||||
multilib-minimal_src_configure
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
ECONF_SOURCE=${S} \
|
||||
AR="$(tc-getAR)" \
|
||||
WARN_CFLAGS="set" \
|
||||
econf \
|
||||
$(use_with openldap ldap) \
|
||||
$(use_enable nls) \
|
||||
$(use_enable pkinit) \
|
||||
$(use_with lmdb) \
|
||||
$(use_with keyutils) \
|
||||
--without-hesiod \
|
||||
--enable-shared \
|
||||
--with-system-et \
|
||||
--with-system-ss \
|
||||
--enable-dns-for-realm \
|
||||
--enable-kdc-lookaside-cache \
|
||||
--with-system-verto \
|
||||
--enable-thread-support \
|
||||
--disable-rpath
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
emake -j1
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
multilib_is_native_abi && emake -j1 check
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
emake \
|
||||
DESTDIR="${D}" \
|
||||
EXAMPLEDIR="${EPREFIX}/usr/share/doc/${PF}/examples" \
|
||||
install
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
# default database dir
|
||||
keepdir /var/lib/krb5kdc
|
||||
|
||||
cd ..
|
||||
dodoc README
|
||||
|
||||
newinitd "${FILESDIR}"/mit-krb5kadmind.initd-r2 mit-krb5kadmind
|
||||
newinitd "${FILESDIR}"/mit-krb5kdc.initd-r2 mit-krb5kdc
|
||||
newinitd "${FILESDIR}"/mit-krb5kpropd.initd-r2 mit-krb5kpropd
|
||||
newconfd "${FILESDIR}"/mit-krb5kadmind.confd mit-krb5kadmind
|
||||
newconfd "${FILESDIR}"/mit-krb5kdc.confd mit-krb5kdc
|
||||
newconfd "${FILESDIR}"/mit-krb5kpropd.confd mit-krb5kpropd
|
||||
|
||||
systemd_newunit "${FILESDIR}"/mit-krb5kadmind.service mit-krb5kadmind.service
|
||||
systemd_newunit "${FILESDIR}"/mit-krb5kdc.service mit-krb5kdc.service
|
||||
systemd_newunit "${FILESDIR}"/mit-krb5kpropd.service mit-krb5kpropd.service
|
||||
systemd_newunit "${FILESDIR}"/mit-krb5kpropd_at.service "mit-krb5kpropd@.service"
|
||||
systemd_newunit "${FILESDIR}"/mit-krb5kpropd.socket mit-krb5kpropd.socket
|
||||
|
||||
insinto /etc
|
||||
newins "${ED}/usr/share/doc/${PF}/examples/krb5.conf" krb5.conf.example
|
||||
insinto /var/lib/krb5kdc
|
||||
newins "${ED}/usr/share/doc/${PF}/examples/kdc.conf" kdc.conf.example
|
||||
|
||||
if use openldap ; then
|
||||
dodoc "${S}/plugins/kdb/ldap/libkdb_ldap/kerberos.ldif"
|
||||
dodoc "${S}/plugins/kdb/ldap/libkdb_ldap/kerberos.openldap.ldif"
|
||||
insinto /etc/openldap/schema
|
||||
doins "${S}/plugins/kdb/ldap/libkdb_ldap/kerberos.schema"
|
||||
fi
|
||||
|
||||
if use xinetd ; then
|
||||
insinto /etc/xinetd.d
|
||||
newins "${FILESDIR}/kpropd.xinetd" kpropd
|
||||
fi
|
||||
|
||||
if use doc; then
|
||||
dodoc -r doc/html
|
||||
docinto pdf
|
||||
dodoc doc/pdf/*.pdf
|
||||
fi
|
||||
}
|
||||
@ -1,99 +0,0 @@
|
||||
https://dev.gnupg.org/T6161
|
||||
https://bugs.gentoo.org/819939
|
||||
https://bugs.gentoo.org/837719
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -508,8 +508,12 @@ fi
|
||||
dnl
|
||||
dnl Check for libX11 library
|
||||
dnl
|
||||
+AC_ARG_WITH(x,
|
||||
+ AS_HELP_STRING([--with-x],[use libX11]),
|
||||
+ [want_x11=$withval], [want_x11=maybe])
|
||||
+
|
||||
have_x11=no
|
||||
-if test "$have_w32_system" != "yes"; then
|
||||
+AS_IF([test "$have_w32_system" != "yes" && test "$want_x11" != "no"], [
|
||||
PKG_CHECK_MODULES(
|
||||
LIBX11,
|
||||
[x11],
|
||||
@@ -519,18 +523,20 @@ if test "$have_w32_system" != "yes"; then
|
||||
have_x11=no
|
||||
]
|
||||
)
|
||||
+])
|
||||
|
||||
- if test "$have_x11" = "yes"; then
|
||||
- AC_DEFINE(HAVE_X11, 1,
|
||||
- [The pinentries can optionally use x11.])
|
||||
- fi
|
||||
-fi
|
||||
+AS_IF([test "$have_x11" = "yes"], [AC_DEFINE(HAVE_X11, 1, [The pinentries can optionally use x11.])])
|
||||
|
||||
dnl
|
||||
dnl Check for KF5WaylandClient library
|
||||
dnl
|
||||
+
|
||||
+AC_ARG_ENABLE(kf5-wayland,
|
||||
+ AS_HELP_STRING([--enable-kf5-wayland],[use KF5WaylandClient for capslock indication on Wayland]),
|
||||
+ [want_kf5_wayland=$enableval], [want_kf5_wayland=maybe])
|
||||
+
|
||||
have_kf5waylandclient=no
|
||||
-if test "$have_w32_system" != "yes"; then
|
||||
+AS_IF([test "$have_w32_system" != "yes" && test "$want_kf5_wayland" != "no"], [
|
||||
PKG_CHECK_MODULES(
|
||||
KF5WAYLANDCLIENT,
|
||||
[KF5WaylandClient >= 5.60],
|
||||
@@ -540,7 +546,7 @@ if test "$have_w32_system" != "yes"; then
|
||||
have_kf5waylandclient=no
|
||||
]
|
||||
)
|
||||
-fi
|
||||
+])
|
||||
|
||||
dnl
|
||||
dnl Check for Qt5 pinentry program.
|
||||
--- a/m4/qt.m4
|
||||
+++ b/m4/qt.m4
|
||||
@@ -33,6 +33,10 @@ AC_DEFUN([FIND_QT],
|
||||
enable_pinentry_qt5=$enableval,
|
||||
enable_pinentry_qt5="try")
|
||||
|
||||
+ AC_ARG_ENABLE(qtx11extras,
|
||||
+ AS_HELP_STRING([--enable-qtx11extras],[use Qt5X11Extras for capslock indication on X11]),
|
||||
+ [want_qtx11extras=$enableval], [want_qtx11extras=maybe])
|
||||
+
|
||||
have_qt5_libs="no";
|
||||
require_qt_cpp11="no";
|
||||
|
||||
@@ -63,20 +67,22 @@ AC_DEFUN([FIND_QT],
|
||||
fi
|
||||
fi
|
||||
|
||||
- if test "$have_x11" = "yes"; then
|
||||
+ have_qt5_x11extras=no
|
||||
+ AS_IF([test "$have_x11" = "yes" && test "$want_qtx11extras" != "no"], [
|
||||
PKG_CHECK_MODULES(
|
||||
PINENTRY_QT_X11_EXTRAS,
|
||||
Qt5X11Extras >= 5.1.0,
|
||||
[have_qt5_x11extras="yes"],
|
||||
- [
|
||||
- AC_MSG_WARN([pinentry-qt will be built without Caps Lock warning on X11])
|
||||
- have_qt5_x11extras="no"
|
||||
- ])
|
||||
- if test "$have_qt5_x11extras" = "yes"; then
|
||||
+ [have_qt5_x11extras="no"]
|
||||
+ )
|
||||
+ ])
|
||||
+
|
||||
+ AS_IF([test "$have_qt5_x11extras" = "yes"], [
|
||||
PINENTRY_QT_CFLAGS="$LIBX11_CFLAGS $PINENTRY_QT_CFLAGS $PINENTRY_QT_X11_EXTRAS_CFLAGS"
|
||||
PINENTRY_QT_LIBS="$LIBX11_LIBS $PINENTRY_QT_LIBS $PINENTRY_QT_X11_EXTRAS_LIBS"
|
||||
- fi
|
||||
- fi
|
||||
+ ], [
|
||||
+ AC_MSG_WARN([pinentry-qt will be built without Caps Lock warning on X11])
|
||||
+ ])
|
||||
|
||||
AC_CHECK_TOOL(MOC, moc)
|
||||
AC_MSG_CHECKING([moc version])
|
||||
@ -1,313 +0,0 @@
|
||||
https://bugs.gentoo.org/925557
|
||||
https://dev.gnupg.org/D566
|
||||
|
||||
From 8ab1682e80a2b4185ee9ef66cbb44340245966fc Mon Sep 17 00:00:00 2001
|
||||
From: Werner Koch <wk@gnupg.org>
|
||||
Date: Mon, 20 Mar 2023 08:31:04 +0100
|
||||
Subject: [PATCH] Fix problem with inclusion of wrong memory.h.
|
||||
|
||||
* secmem/memory.h: Rename to ...
|
||||
* secmem/secmem.h: this.
|
||||
* pinentry/pinentry.h: Include secmem.h. Remove almost all inclusions
|
||||
of memory.h or replace them by "../secmem/secmem.h".
|
||||
--
|
||||
|
||||
See-also: https://dev.gnupg.org/D566
|
||||
---
|
||||
fltk/main.cxx | 1 -
|
||||
fltk/pinwindow.cxx | 2 +-
|
||||
gnome3/pinentry-gnome3.c | 2 --
|
||||
pinentry/password-cache.c | 2 +-
|
||||
pinentry/pinentry-curses.c | 7 +++----
|
||||
pinentry/pinentry-emacs.c | 2 +-
|
||||
pinentry/pinentry.c | 1 -
|
||||
pinentry/pinentry.h | 2 ++
|
||||
secmem/Makefile.am | 2 +-
|
||||
secmem/secmem++.h | 2 +-
|
||||
secmem/secmem.c | 2 +-
|
||||
secmem/{memory.h => secmem.h} | 0
|
||||
tqt/secqstring.h | 2 +-
|
||||
tty/pinentry-tty.c | 1 -
|
||||
w32/main.c | 1 -
|
||||
15 files changed, 12 insertions(+), 17 deletions(-)
|
||||
rename secmem/{memory.h => secmem.h} (100%)
|
||||
|
||||
--- a/fltk/main.cxx 2019-03-05 23:09:48.000000000 -0800
|
||||
+++ b/fltk/main.cxx 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -34,7 +34,6 @@
|
||||
#include <getopt.h>
|
||||
#include <assert.h>
|
||||
|
||||
-#include "memory.h"
|
||||
#include <memory>
|
||||
|
||||
#include <pinentry.h>
|
||||
--- a/fltk/pinwindow.cxx 2017-12-03 08:13:05.000000000 -0800
|
||||
+++ b/fltk/pinwindow.cxx 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -32,7 +32,7 @@
|
||||
#include <FL/Fl_Return_Button.H>
|
||||
#include <FL/Fl_Pixmap.H>
|
||||
|
||||
-#include "memory.h"
|
||||
+#include "../secmem/secmem.h"
|
||||
|
||||
#include "encrypt.xpm"
|
||||
#include "icon.xpm"
|
||||
--- a/gnome3/pinentry-gnome3.c 2022-08-24 03:31:59.000000000 -0700
|
||||
+++ b/gnome3/pinentry-gnome3.c 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -30,8 +30,6 @@
|
||||
|
||||
#include <assuan.h>
|
||||
|
||||
-#include "memory.h"
|
||||
-
|
||||
#include "pinentry.h"
|
||||
|
||||
#ifdef FALLBACK_CURSES
|
||||
--- a/pinentry/password-cache.c 2017-12-03 08:13:15.000000000 -0800
|
||||
+++ b/pinentry/password-cache.c 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -31,7 +31,7 @@
|
||||
#endif
|
||||
|
||||
#include "password-cache.h"
|
||||
-#include "memory.h"
|
||||
+#include "../secmem/secmem.h"
|
||||
|
||||
#ifdef HAVE_LIBSECRET
|
||||
static const SecretSchema *
|
||||
--- a/pinentry/pinentry.c 2022-08-24 03:31:59.000000000 -0700
|
||||
+++ b/pinentry/pinentry.c 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -44,7 +44,6 @@
|
||||
|
||||
#include <assuan.h>
|
||||
|
||||
-#include "memory.h"
|
||||
#include "secmem-util.h"
|
||||
#include "argparse.h"
|
||||
#include "pinentry.h"
|
||||
--- a/pinentry/pinentry-curses.c 2022-08-24 03:31:59.000000000 -0700
|
||||
+++ b/pinentry/pinentry-curses.c 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -62,8 +62,6 @@
|
||||
#include <utime.h>
|
||||
#endif /*HAVE_UTIME_H*/
|
||||
|
||||
-#include <memory.h>
|
||||
-
|
||||
#ifdef HAVE_WCHAR_H
|
||||
#include <wchar.h>
|
||||
#endif /*HAVE_WCHAR_H*/
|
||||
@@ -1017,10 +1015,11 @@
|
||||
#ifndef HAVE_DOSISH_SYSTEM
|
||||
int no_input = 1;
|
||||
#endif
|
||||
-
|
||||
#ifdef HAVE_NCURSESW
|
||||
char *old_ctype = NULL;
|
||||
+#endif
|
||||
|
||||
+#ifdef HAVE_NCURSESW
|
||||
if (pinentry->lc_ctype)
|
||||
{
|
||||
old_ctype = strdup (setlocale (LC_CTYPE, NULL));
|
||||
--- a/pinentry/pinentry-emacs.c 2021-08-11 04:16:10.000000000 -0700
|
||||
+++ b/pinentry/pinentry-emacs.c 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -48,7 +48,7 @@
|
||||
#include <assuan.h>
|
||||
|
||||
#include "pinentry-emacs.h"
|
||||
-#include "memory.h"
|
||||
+#include "../secmem/secmem.h"
|
||||
#include "secmem-util.h"
|
||||
|
||||
/* The communication mechanism is similar to emacsclient, but there
|
||||
--- a/pinentry/pinentry.h 2022-08-24 03:31:59.000000000 -0700
|
||||
+++ b/pinentry/pinentry.h 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -21,6 +21,8 @@
|
||||
#ifndef PINENTRY_H
|
||||
#define PINENTRY_H
|
||||
|
||||
+#include "../secmem/secmem.h"
|
||||
+
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#if 0
|
||||
--- a/secmem/Makefile.am 2017-12-03 08:13:05.000000000 -0800
|
||||
+++ b/secmem/Makefile.am 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -22,7 +22,7 @@
|
||||
noinst_LIBRARIES = libsecmem.a
|
||||
|
||||
libsecmem_a_SOURCES = \
|
||||
- memory.h \
|
||||
+ secmem.h \
|
||||
secmem-util.h \
|
||||
util.h \
|
||||
secmem.c \
|
||||
--- a/secmem/memory.h 2017-12-03 08:13:05.000000000 -0800
|
||||
+++ b/secmem/memory.h 1969-12-31 16:00:00.000000000 -0800
|
||||
@@ -1,55 +0,0 @@
|
||||
-/* Quintuple Agent secure memory allocation
|
||||
- * Copyright (C) 1998,1999 Free Software Foundation, Inc.
|
||||
- * Copyright (C) 1999,2000 Robert Bihlmeyer <robbe@orcus.priv.at>
|
||||
- *
|
||||
- * This program is free software; you can redistribute it and/or modify
|
||||
- * it under the terms of the GNU General Public License as published by
|
||||
- * the Free Software Foundation; either version 2 of the License, or
|
||||
- * (at your option) any later version.
|
||||
- *
|
||||
- * This program is distributed in the hope that it will be useful,
|
||||
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
- * GNU General Public License for more details.
|
||||
- *
|
||||
- * You should have received a copy of the GNU General Public License
|
||||
- * along with this program; if not, see <https://www.gnu.org/licenses/>.
|
||||
- * SPDX-License-Identifier: GPL-2.0+
|
||||
- */
|
||||
-
|
||||
-#ifndef _MEMORY_H
|
||||
-#define _MEMORY_H
|
||||
-
|
||||
-#include <sys/types.h>
|
||||
-
|
||||
-#ifdef __cplusplus
|
||||
-extern "C" {
|
||||
-#if 0
|
||||
-}
|
||||
-#endif
|
||||
-#endif
|
||||
-
|
||||
-
|
||||
-/* values for flags, hardcoded in secmem.c */
|
||||
-#define SECMEM_WARN 0
|
||||
-#define SECMEM_DONT_WARN 1
|
||||
-#define SECMEM_SUSPEND_WARN 2
|
||||
-
|
||||
-void secmem_init( size_t npool );
|
||||
-void secmem_term( void );
|
||||
-void *secmem_malloc( size_t size );
|
||||
-void *secmem_realloc( void *a, size_t newsize );
|
||||
-void secmem_free( void *a );
|
||||
-int m_is_secure( const void *p );
|
||||
-void secmem_dump_stats(void);
|
||||
-void secmem_set_flags( unsigned flags );
|
||||
-unsigned secmem_get_flags(void);
|
||||
-size_t secmem_get_max_size (void);
|
||||
-
|
||||
-#if 0
|
||||
-{
|
||||
-#endif
|
||||
-#ifdef __cplusplus
|
||||
-}
|
||||
-#endif
|
||||
-#endif /* _MEMORY_H */
|
||||
--- a/secmem/secmem.c 2022-08-24 03:31:59.000000000 -0700
|
||||
+++ b/secmem/secmem.c 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -34,7 +34,7 @@
|
||||
#endif
|
||||
#include <string.h>
|
||||
|
||||
-#include "memory.h"
|
||||
+#include "secmem.h"
|
||||
|
||||
#ifdef ORIGINAL_GPG_VERSION
|
||||
#include "types.h"
|
||||
--- a/secmem/secmem++.h 2017-12-03 08:13:05.000000000 -0800
|
||||
+++ b/secmem/secmem++.h 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -19,7 +19,7 @@
|
||||
#ifndef __SECMEM_SECMEMPP_H__
|
||||
#define __SECMEM_SECMEMPP_H__
|
||||
|
||||
-#include "secmem/memory.h"
|
||||
+#include "../secmem/secmem.h"
|
||||
#include <cstddef>
|
||||
|
||||
namespace secmem {
|
||||
--- a/secmem/secmem.h 1969-12-31 16:00:00.000000000 -0800
|
||||
+++ b/secmem/secmem.h 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -0,0 +1,55 @@
|
||||
+/* Quintuple Agent secure memory allocation
|
||||
+ * Copyright (C) 1998,1999 Free Software Foundation, Inc.
|
||||
+ * Copyright (C) 1999,2000 Robert Bihlmeyer <robbe@orcus.priv.at>
|
||||
+ *
|
||||
+ * This program is free software; you can redistribute it and/or modify
|
||||
+ * it under the terms of the GNU General Public License as published by
|
||||
+ * the Free Software Foundation; either version 2 of the License, or
|
||||
+ * (at your option) any later version.
|
||||
+ *
|
||||
+ * This program is distributed in the hope that it will be useful,
|
||||
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+ * GNU General Public License for more details.
|
||||
+ *
|
||||
+ * You should have received a copy of the GNU General Public License
|
||||
+ * along with this program; if not, see <https://www.gnu.org/licenses/>.
|
||||
+ * SPDX-License-Identifier: GPL-2.0+
|
||||
+ */
|
||||
+
|
||||
+#ifndef _MEMORY_H
|
||||
+#define _MEMORY_H
|
||||
+
|
||||
+#include <sys/types.h>
|
||||
+
|
||||
+#ifdef __cplusplus
|
||||
+extern "C" {
|
||||
+#if 0
|
||||
+}
|
||||
+#endif
|
||||
+#endif
|
||||
+
|
||||
+
|
||||
+/* values for flags, hardcoded in secmem.c */
|
||||
+#define SECMEM_WARN 0
|
||||
+#define SECMEM_DONT_WARN 1
|
||||
+#define SECMEM_SUSPEND_WARN 2
|
||||
+
|
||||
+void secmem_init( size_t npool );
|
||||
+void secmem_term( void );
|
||||
+void *secmem_malloc( size_t size );
|
||||
+void *secmem_realloc( void *a, size_t newsize );
|
||||
+void secmem_free( void *a );
|
||||
+int m_is_secure( const void *p );
|
||||
+void secmem_dump_stats(void);
|
||||
+void secmem_set_flags( unsigned flags );
|
||||
+unsigned secmem_get_flags(void);
|
||||
+size_t secmem_get_max_size (void);
|
||||
+
|
||||
+#if 0
|
||||
+{
|
||||
+#endif
|
||||
+#ifdef __cplusplus
|
||||
+}
|
||||
+#endif
|
||||
+#endif /* _MEMORY_H */
|
||||
--- a/tqt/secqstring.h 2017-12-03 08:33:12.000000000 -0800
|
||||
+++ b/tqt/secqstring.h 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -65,7 +65,7 @@
|
||||
|
||||
extern "C"
|
||||
{
|
||||
-#include "memory.h"
|
||||
+#include "../secmem/secmem.h"
|
||||
}
|
||||
|
||||
/* We need the original qchar and qstring for transparent conversion
|
||||
--- a/tty/pinentry-tty.c 2021-08-11 04:16:10.000000000 -0700
|
||||
+++ b/tty/pinentry-tty.c 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -41,7 +41,6 @@
|
||||
#include <gpg-error.h>
|
||||
|
||||
#include "pinentry.h"
|
||||
-#include "memory.h"
|
||||
|
||||
#ifndef HAVE_DOSISH_SYSTEM
|
||||
static int timed_out;
|
||||
--- a/w32/main.c 2022-08-24 03:31:59.000000000 -0700
|
||||
+++ b/w32/main.c 2024-02-26 11:02:47.822134762 -0800
|
||||
@@ -29,7 +29,6 @@
|
||||
#endif
|
||||
|
||||
#include "pinentry.h"
|
||||
-#include "memory.h"
|
||||
|
||||
#include "resource.h"
|
||||
/* #include "msgcodes.h" */
|
||||
@ -13,7 +13,7 @@ SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="caps efl emacs gtk keyring ncurses qt5 qt6 wayland X"
|
||||
|
||||
DEPEND="
|
||||
|
||||
@ -1,2 +1,2 @@
|
||||
DIST rhash-1.4.3-src.tar.gz 429290 BLAKE2B d225aeae0b3a8fb2e093a9aef50cd07a790c7e9734e91114deef2ca8492c85261b8ed5dea45958e35e049ea888885175608962ea72297bdef48b00c52f51eaca SHA512 d87ffcde28d8f25cf775c279fed457e52d24523ed9b695629dae694b3c22372247d18f6032f8ce13a0b70fa2953be408982e46659daaa7c4ab227ae89eaed9c7
|
||||
DIST rhash-1.4.4-src.tar.gz 435691 BLAKE2B f3d42f333ad9a82fe4a8ef5af5d8008abf526c05c06a00c7033881d5a27ba663c3cc5cefb73ea8157ac24cb10a50a4e500706d489e61a03dbaee74a4735d1722 SHA512 00a7e5e058b53ce20ae79509815452ed9cb699d1322b678220b72c61dea3ea2f8fa131acfade8bb6d9f6af913f0c3c472330841181b22314b8755166310c946f
|
||||
DIST rhash-1.4.5-src.tar.gz 444526 BLAKE2B 11021119e8af28e12491eabd55232e24a056bce79b624c970e4806c28fe707ea1395eb390572dba3453900d4512e5896d70642370d0c9340359e2fee95d62c8d SHA512 49bd6aa2497efc4871ae31eaca51d2dc78ceb7126311557d5280b14fafe9355eaecad37f0f78f865e4e1dd1aeb506d3301989cd2f9fff7b0091c81978e8c2f2e
|
||||
|
||||
@ -1,89 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit flag-o-matic toolchain-funcs multilib-minimal
|
||||
|
||||
DESCRIPTION="Console utility and library for computing and verifying file hash sums"
|
||||
HOMEPAGE="https://rhash.sourceforge.net/"
|
||||
SRC_URI="https://downloads.sourceforge.net/${PN}/${P}-src.tar.gz"
|
||||
|
||||
LICENSE="0BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="debug nls ssl static-libs"
|
||||
|
||||
RDEPEND="
|
||||
ssl? (
|
||||
dev-libs/openssl:0=[${MULTILIB_USEDEP}]
|
||||
)"
|
||||
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
"
|
||||
|
||||
BDEPEND="
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
S="${WORKDIR}/RHash-${PV}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
if [[ ${CHOST} == *-darwin* && ${CHOST##*darwin} -le 9 ]] ; then
|
||||
# we lack posix_memalign
|
||||
sed -i -e '/if _POSIX_VERSION/s/if .*$/if 0/' \
|
||||
librhash/util.h || die
|
||||
fi
|
||||
|
||||
multilib_copy_sources
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
# ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
|
||||
# https://github.com/gentoo/gentoo/pull/28355
|
||||
# mold needs this too but right now tc-ld-is-mold is also not available
|
||||
if tc-ld-is-lld; then
|
||||
append-ldflags -Wl,--undefined-version
|
||||
fi
|
||||
|
||||
set -- \
|
||||
./configure \
|
||||
--target="${CHOST}" \
|
||||
--cc="$(tc-getCC)" \
|
||||
--ar="$(tc-getAR)" \
|
||||
--extra-cflags="${CFLAGS}" \
|
||||
--extra-ldflags="${LDFLAGS}" \
|
||||
--prefix="${EPREFIX}"/usr \
|
||||
--libdir="${EPREFIX}"/usr/$(get_libdir) \
|
||||
--sysconfdir="${EPREFIX}"/etc \
|
||||
--disable-openssl-runtime \
|
||||
--disable-static \
|
||||
--enable-lib-shared \
|
||||
$(use_enable debug) \
|
||||
$(use_enable nls gettext) \
|
||||
$(use_enable ssl openssl) \
|
||||
$(use_enable static-libs lib-static)
|
||||
|
||||
echo "${@}"
|
||||
"${@}" || die "configure failed"
|
||||
}
|
||||
|
||||
multilib_src_compile() {
|
||||
emake all \
|
||||
$(multilib_is_native_abi && use nls && echo compile-gmo)
|
||||
}
|
||||
|
||||
multilib_src_install() {
|
||||
# -j1 needed due to race condition.
|
||||
emake DESTDIR="${D}" -j1 \
|
||||
install{,-lib-headers,-pkg-config} \
|
||||
$(multilib_is_native_abi && use nls && echo install-gmo) \
|
||||
install-lib-so-link
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
emake test
|
||||
}
|
||||
@ -11,7 +11,7 @@ SRC_URI="https://downloads.sourceforge.net/${PN}/${P}-src.tar.gz"
|
||||
|
||||
LICENSE="0BSD"
|
||||
SLOT="0/1"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
IUSE="debug nls ssl static-libs"
|
||||
|
||||
RDEPEND="
|
||||
|
||||
@ -8,6 +8,7 @@ inherit flag-o-matic toolchain-funcs multilib-minimal
|
||||
DESCRIPTION="Console utility and library for computing and verifying file hash sums"
|
||||
HOMEPAGE="https://rhash.sourceforge.net/"
|
||||
SRC_URI="https://downloads.sourceforge.net/${PN}/${P}-src.tar.gz"
|
||||
S="${WORKDIR}/RHash-${PV}"
|
||||
|
||||
LICENSE="0BSD"
|
||||
SLOT="0/1"
|
||||
@ -27,12 +28,6 @@ BDEPEND="
|
||||
nls? ( sys-devel/gettext )
|
||||
"
|
||||
|
||||
S="${WORKDIR}/RHash-${PV}"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-prefix.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
@ -54,12 +49,7 @@ src_prepare() {
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
# ideally we want !tc-ld-is-bfd for best future-proofing, but it needs
|
||||
# https://github.com/gentoo/gentoo/pull/28355
|
||||
# mold needs this too but right now tc-ld-is-mold is also not available
|
||||
if tc-ld-is-lld; then
|
||||
append-ldflags -Wl,--undefined-version
|
||||
fi
|
||||
append-ldflags $(test-flags-CCLD -Wl,--undefined-version)
|
||||
|
||||
set -- \
|
||||
./configure \
|
||||
@ -2,3 +2,4 @@ DIST eclass-manpages-20240512.tar.xz 452732 BLAKE2B e39fe919e90d24247ff1a5153359
|
||||
DIST eclass-manpages-20240614.tar.xz 450756 BLAKE2B 50435ab646a238f47cc96573af3d8ed53e14b700c9284253a2a9efbda40fc058f475a9900e56c3d6575ceafa4385eec89d9d1df87dd5ec94425c69daf258ab0e SHA512 80c0ba3eac7affc670f10d2eca58293bb79de94cc3b9d2349dd9b2227efd02b08d7e8a095161b484f87b3e23042afea73fadbd0cff867006bfbbb748a5051c55
|
||||
DIST eclass-manpages-20240811.tar.xz 455124 BLAKE2B dde9ffe7baa7fcb6904af47a5fb7bf05103c2646b682e27fd3454eaf2ee4708d059c666eddbd39571899d23bcc8ef411e75f16c905048a103f818f396e390794 SHA512 d62979614e1301bba51798280f21baa46a55c594f4345f07b1c21b772bb22cc0be2db55a2d3b190bf2a5921c727329266743a2f2b0ad0ef2a14f1a967c779e55
|
||||
DIST eclass-manpages-20240901.tar.xz 460224 BLAKE2B 96743842457d552079bed954839f05c71f36f9618d5fff5a20df2383e3615053ef93cb748756727e9131c1896106ccae4013dc9888cddbea60cc1d330b8f7cc3 SHA512 8b3128f5cc7626410e9988cf42a2448566f0859aa02388b1dd888d47714dafe7cac1c607d32e48331b4697f80bc9e4b806e9f21257e5ce3883216649e9fcafcd
|
||||
DIST eclass-manpages-20241015.tar.xz 455572 BLAKE2B a6d3a92bf1a24c36f44e80c00f4e7779b88f42c0a33583793a6e8f6c1427e8295967c0855c876a363fa219b10dbc8a1848a57f307de6deca8fd966640ee3121b SHA512 cabe349aadf8f5f00adf72a04cb10ce0f3ed12c49e5f4c151a5da31223941ee7c1e71b7c84fb8a6dfd6eb14f176792132feb6cd04a1123ed17300b429dcb9878
|
||||
|
||||
@ -0,0 +1,24 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Instructions to make a dist tarball:
|
||||
# git clone https://github.com/projg2/eclass-to-manpage.git
|
||||
# cd eclass-to-manpage
|
||||
# make dist ECLASSDIR=~/g/eclass/
|
||||
|
||||
DESCRIPTION="Collection of Gentoo eclass manpages"
|
||||
HOMEPAGE="https://github.com/projg2/eclass-to-manpage"
|
||||
SRC_URI="https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
# Keep the keywords stable. No need to change to ~arch.
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
|
||||
|
||||
BDEPEND="sys-apps/gawk"
|
||||
|
||||
src_install() {
|
||||
emake install DESTDIR="${D}" PREFIX="${EPREFIX}/usr"
|
||||
}
|
||||
@ -13,7 +13,7 @@ QEMU_DOCS_VERSION="7.2.0"
|
||||
# bug #830088
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10,11} )
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
@ -240,15 +240,15 @@ SEABIOS_VERSION="1.16.0"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -930,10 +930,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -957,10 +957,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -13,7 +13,7 @@ QEMU_DOCS_VERSION="7.2.0"
|
||||
# bug #830088
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10,11} )
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
@ -240,15 +240,15 @@ SEABIOS_VERSION="1.16.0"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -930,10 +930,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -957,10 +957,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -13,7 +13,7 @@ QEMU_DOCS_VERSION="7.2.0"
|
||||
# bug #830088
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10,11} )
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
@ -240,15 +240,15 @@ SEABIOS_VERSION="1.16.0"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -930,10 +930,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -957,10 +957,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -13,7 +13,7 @@ QEMU_DOCS_VERSION="7.2.0"
|
||||
# bug #830088
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10,11} )
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
@ -41,7 +41,7 @@ else
|
||||
fi
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
[[ "${PV}" != *_rc* ]] && KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
|
||||
[[ "${PV}" != *_rc* ]] && KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ppc64 ~riscv x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools"
|
||||
@ -240,15 +240,15 @@ SEABIOS_VERSION="1.16.0"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -930,10 +930,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -957,10 +957,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -240,15 +240,15 @@ SEABIOS_VERSION="1.16.0"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -931,10 +931,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -958,10 +958,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -15,7 +15,7 @@ QEMU_DOCS_VERSION=8.1.0
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
PYTHON_REQ_USE="ensurepip(-),ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
|
||||
@ -240,15 +240,15 @@ SEABIOS_VERSION="1.16.0"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -276,7 +276,6 @@ BDEPEND="
|
||||
dev-lang/perl
|
||||
>=dev-build/meson-0.63.0
|
||||
app-alternatives/ninja
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
>=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}]
|
||||
@ -931,10 +930,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -958,10 +957,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -14,7 +14,7 @@ QEMU_DOCS_VERSION=$(ver_cut 1-2).0
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
PYTHON_REQ_USE="ensurepip(-),ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
|
||||
@ -245,15 +245,15 @@ SEABIOS_VERSION="1.16.0"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -281,7 +281,6 @@ BDEPEND="
|
||||
dev-lang/perl
|
||||
>=dev-build/meson-0.63.0
|
||||
app-alternatives/ninja
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
>=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}]
|
||||
@ -951,10 +950,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -978,10 +977,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -14,7 +14,7 @@ QEMU_DOCS_VERSION=$(ver_cut 1-2).0
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
PYTHON_REQ_USE="ensurepip(-),ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
|
||||
@ -245,15 +245,15 @@ SEABIOS_VERSION="1.16.3"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -281,7 +281,6 @@ BDEPEND="
|
||||
dev-lang/perl
|
||||
>=dev-build/meson-0.63.0
|
||||
app-alternatives/ninja
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
>=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}]
|
||||
@ -951,10 +950,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -978,10 +977,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -14,7 +14,7 @@ QEMU_DOCS_VERSION=$(ver_cut 1-2).0
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
PYTHON_REQ_USE="ensurepip(-),ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
|
||||
@ -245,15 +245,15 @@ SEABIOS_VERSION="1.16.3"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -281,7 +281,6 @@ BDEPEND="
|
||||
dev-lang/perl
|
||||
>=dev-build/meson-0.63.0
|
||||
app-alternatives/ninja
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
>=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}]
|
||||
@ -951,10 +950,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -978,10 +977,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -14,7 +14,7 @@ QEMU_DOCS_VERSION=$(ver_cut 1-2).0
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
PYTHON_REQ_USE="ensurepip(-),ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
|
||||
@ -245,15 +245,15 @@ SEABIOS_VERSION="1.16.3"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -281,7 +281,6 @@ BDEPEND="
|
||||
dev-lang/perl
|
||||
>=dev-build/meson-0.63.0
|
||||
app-alternatives/ninja
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
>=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}]
|
||||
@ -951,10 +950,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -978,10 +977,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -14,7 +14,7 @@ QEMU_DOCS_VERSION=$(ver_cut 1-2).0
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
PYTHON_REQ_USE="ensurepip(-),ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
|
||||
@ -245,15 +245,15 @@ SEABIOS_VERSION="1.16.3"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -281,7 +281,6 @@ BDEPEND="
|
||||
dev-lang/perl
|
||||
>=dev-build/meson-0.63.0
|
||||
app-alternatives/ninja
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
>=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}]
|
||||
@ -955,10 +954,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -982,10 +981,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -14,7 +14,7 @@ QEMU_DOCS_VERSION=$(ver_cut 1-2).0
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
PYTHON_REQ_USE="ensurepip(-),ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
|
||||
@ -245,15 +245,15 @@ SEABIOS_VERSION="1.16.3"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -281,7 +281,6 @@ BDEPEND="
|
||||
dev-lang/perl
|
||||
>=dev-build/meson-0.63.0
|
||||
app-alternatives/ninja
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
>=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}]
|
||||
@ -955,10 +954,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -982,10 +981,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -14,7 +14,7 @@ QEMU_DOCS_VERSION=$(ver_cut 1-2).0
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
PYTHON_REQ_USE="ensurepip(-),ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
|
||||
@ -247,15 +247,15 @@ SEABIOS_VERSION="1.16.3"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -283,7 +283,6 @@ BDEPEND="
|
||||
dev-lang/perl
|
||||
>=dev-build/meson-0.63.0
|
||||
app-alternatives/ninja
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
>=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}]
|
||||
@ -958,10 +957,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -985,10 +984,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -14,7 +14,7 @@ QEMU_DOCS_VERSION=$(ver_cut 1-2).0
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
PYTHON_REQ_USE="ensurepip(-),ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
|
||||
@ -247,15 +247,15 @@ SEABIOS_VERSION="1.16.3"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -283,7 +283,6 @@ BDEPEND="
|
||||
dev-lang/perl
|
||||
>=dev-build/meson-0.63.0
|
||||
app-alternatives/ninja
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
>=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}]
|
||||
@ -958,10 +957,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -985,10 +984,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -14,7 +14,7 @@ QEMU_DOCS_VERSION=$(ver_cut 1-3)
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
PYTHON_REQ_USE="ensurepip(-),ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
|
||||
@ -246,15 +246,15 @@ SEABIOS_VERSION="1.16.3"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -282,7 +282,6 @@ BDEPEND="
|
||||
dev-lang/perl
|
||||
>=dev-build/meson-0.63.0
|
||||
app-alternatives/ninja
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
>=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}]
|
||||
@ -957,10 +956,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -984,10 +983,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -14,7 +14,7 @@ QEMU_DOCS_VERSION=$(ver_cut 1-3)
|
||||
QEMU_DOC_USEFLAG="+doc"
|
||||
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
PYTHON_REQ_USE="ncurses,readline"
|
||||
PYTHON_REQ_USE="ensurepip(-),ncurses,readline"
|
||||
|
||||
FIRMWARE_ABI_VERSION="7.2.0"
|
||||
|
||||
@ -246,15 +246,15 @@ SEABIOS_VERSION="1.16.3"
|
||||
|
||||
X86_FIRMWARE_DEPEND="
|
||||
pin-upstream-blobs? (
|
||||
~sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
~sys-firmware/ipxe-1.21.1[binary,qemu]
|
||||
~sys-firmware/seabios-bin-${SEABIOS_VERSION}
|
||||
~sys-firmware/sgabios-0.1_pre10[binary]
|
||||
)
|
||||
!pin-upstream-blobs? (
|
||||
|| (
|
||||
>=sys-firmware/edk2-ovmf-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-ovmf-bin-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-${EDK2_OVMF_VERSION}
|
||||
>=sys-firmware/edk2-bin-${EDK2_OVMF_VERSION}
|
||||
)
|
||||
sys-firmware/ipxe[qemu]
|
||||
|| (
|
||||
@ -282,7 +282,6 @@ BDEPEND="
|
||||
dev-lang/perl
|
||||
>=dev-build/meson-0.63.0
|
||||
app-alternatives/ninja
|
||||
dev-python/pip[${PYTHON_USEDEP}]
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
>=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}]
|
||||
@ -957,10 +956,10 @@ pkg_postinst() {
|
||||
if use pin-upstream-blobs && firmware_abi_change; then
|
||||
ewarn "This version of qemu pins new versions of firmware blobs:"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
ewarn " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
ewarn " $(best_version sys-firmware/edk2-ovmf)"
|
||||
ewarn " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
@ -984,10 +983,10 @@ pkg_info() {
|
||||
echo "Using:"
|
||||
echo " $(best_version app-emulation/spice-protocol)"
|
||||
|
||||
if has_version 'sys-firmware/edk2-ovmf-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-ovmf-bin)"
|
||||
if has_version 'sys-firmware/edk2-bin'; then
|
||||
echo " $(best_version sys-firmware/edk2-bin)"
|
||||
else
|
||||
echo " $(best_version sys-firmware/edk2-ovmf)"
|
||||
echo " $(best_version sys-firmware/edk2)"
|
||||
fi
|
||||
|
||||
if has_version 'sys-firmware/seabios-bin'; then
|
||||
|
||||
@ -19,7 +19,7 @@ else
|
||||
https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}.tar.xz
|
||||
"
|
||||
|
||||
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~arm64-linux ~ppc64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~arm64-linux ~ppc64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
LICENSE="GPL-2"
|
||||
|
||||
@ -1,6 +1,2 @@
|
||||
DIST getuto-1.10.2.tar.gz 10561 BLAKE2B 93093e9027b6fc1f8e2dac5fbcdab847c95742fe2e5b4fa142591039f639570a589b28f954cb7290d22b06cd18d189d2176d937bbd256a2cd91270c5c762c3b9 SHA512 9e559551a0b85d1fd41202d6cc6d328021320647789d374c6ccacd5a7d29beb63959385499b84bc3b3bea18b17c50d54a78526150d39b4103719753930f1fff3
|
||||
DIST getuto-1.11.tar.gz 10686 BLAKE2B c92121dc9b02e6af5101dcd27a64e59828270fd54a42a9b333d844d0f75d93206f91f130699f7dbf6d825cbc2c2a341ced9f1f0247ed1ee39ef5226a51f59c0e SHA512 f73b81134b8cf306b19fdc49bd797278ea08b5c64695dd4da9c4000701e627c9b8b7a8909bff4fd4a72b801df6bcbf6d1638b126556dd9b11628989e8602b6be
|
||||
DIST getuto-1.12.tar.gz 10708 BLAKE2B 5c6e1fbb614043268667b60460298b4acba3f2379465a7e8a0043b537940c1e98749bf4580fde4ce30fac46bf0826d8c1a2ddc5602281fcdb942871f4457b7ad SHA512 0be8d0b78c0be5878986f5b55bff952d2ccd3b73c8a3f47d40a692ee084b77473422ec66aced9eb1ee6be8e5e5409c77d7bac76ca94f1da065c527ed6e2d2076
|
||||
DIST getuto-1.13.tar.gz 10758 BLAKE2B cf7412e6253f883c29a3d89048073d14f982e4bc708ebe11541e4273c69cdc3f1131b6b62484b3b4f1131a11dc541776368f4bfe4500f0ec01e24de9e925a69d SHA512 111c60595dce79b3286afaa8d8485cb852d4d8a4ea5f0659ccde538a9ee8ccdb4d7d7251cce713b30e4f8a769891539bf6fdb52978b5f25df6536afb16dc8f2a
|
||||
DIST getuto-1.9.1.tar.gz 10220 BLAKE2B 4c756f36e9d1272ab194c65e75b6c4d47c248190029ce2b5fe6edb1253998aaa311dd1ae59f893200d1588a52d1bcb53376a32f279c841ae6b5cf5e5b0eeb163 SHA512 3f8e5359940fa5582bea8dc11f2a0846c3f6bdc555974f2f049d5c6ff282029b6393a8c6ae221d327376b4df05de492f44720de90f76f5e3deb436171507f0cb
|
||||
DIST libc-1-r1-1.gpkg.tar 20480 BLAKE2B b2c184e20c1a29ff66240e992f9f81219285f525eb63cea081372685cf03a2e231a2edb528259617e74c655fbe61b6e0d8fc0bbdbd8452b6098de58432f019d7 SHA512 ce52f398ea8979ec16161381803740d49a4294c77303880f54090c379ba5eb8e545a3d3550f229cacc18c7763dc3adf7936561ba1c64b43c87692ec66084e4e6
|
||||
|
||||
@ -1,50 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Standalone Gentoo gpg trust anchor generation tool for binpkgs"
|
||||
HOMEPAGE="https://github.com/projg2/getuto"
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/projg2/getuto"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="
|
||||
https://github.com/projg2/getuto/archive/refs/tags/${P}.tar.gz
|
||||
"
|
||||
S=${WORKDIR}/${PN}-${P}
|
||||
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
|
||||
fi
|
||||
|
||||
SRC_URI+=" test? ( https://mirror.bytemark.co.uk/gentoo/releases/amd64/binpackages/17.1/x86-64/virtual/libc/libc-1-r1-1.gpkg.tar )"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
app-crypt/gnupg
|
||||
dev-libs/openssl
|
||||
sec-keys/openpgp-keys-gentoo-release
|
||||
sys-apps/gentoo-functions
|
||||
"
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
git-r3_src_unpack
|
||||
else
|
||||
# Don't mangle test data
|
||||
unpack ${P}.tar.gz
|
||||
fi
|
||||
|
||||
if use test ; then
|
||||
cp "${DISTDIR}"/libc-1-r1-1.gpkg.tar "${S}" || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin getuto
|
||||
}
|
||||
@ -1,50 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Standalone Gentoo gpg trust anchor generation tool for binpkgs"
|
||||
HOMEPAGE="https://github.com/projg2/getuto"
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/projg2/getuto"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="
|
||||
https://github.com/projg2/getuto/archive/refs/tags/${P}.tar.gz
|
||||
"
|
||||
S=${WORKDIR}/${PN}-${P}
|
||||
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
|
||||
fi
|
||||
|
||||
SRC_URI+=" test? ( https://mirror.bytemark.co.uk/gentoo/releases/amd64/binpackages/17.1/x86-64/virtual/libc/libc-1-r1-1.gpkg.tar )"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
app-crypt/gnupg
|
||||
dev-libs/openssl
|
||||
sec-keys/openpgp-keys-gentoo-release
|
||||
sys-apps/gentoo-functions
|
||||
"
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
git-r3_src_unpack
|
||||
else
|
||||
# Don't mangle test data
|
||||
unpack ${P}.tar.gz
|
||||
fi
|
||||
|
||||
if use test ; then
|
||||
cp "${DISTDIR}"/libc-1-r1-1.gpkg.tar "${S}" || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin getuto
|
||||
}
|
||||
@ -1,50 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Standalone Gentoo gpg trust anchor generation tool for binpkgs"
|
||||
HOMEPAGE="https://github.com/projg2/getuto"
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/projg2/getuto"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="
|
||||
https://github.com/projg2/getuto/archive/refs/tags/${P}.tar.gz
|
||||
"
|
||||
S=${WORKDIR}/${PN}-${P}
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
||||
fi
|
||||
|
||||
SRC_URI+=" test? ( https://mirror.bytemark.co.uk/gentoo/releases/amd64/binpackages/17.1/x86-64/virtual/libc/libc-1-r1-1.gpkg.tar )"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
app-crypt/gnupg
|
||||
dev-libs/openssl
|
||||
sec-keys/openpgp-keys-gentoo-release
|
||||
sys-apps/gentoo-functions
|
||||
"
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
git-r3_src_unpack
|
||||
else
|
||||
# Don't mangle test data
|
||||
unpack ${P}.tar.gz
|
||||
fi
|
||||
|
||||
if use test ; then
|
||||
cp "${DISTDIR}"/libc-1-r1-1.gpkg.tar "${S}" || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin getuto
|
||||
}
|
||||
@ -1,50 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="Standalone Gentoo gpg trust anchor generation tool for binpkgs"
|
||||
HOMEPAGE="https://github.com/projg2/getuto"
|
||||
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/projg2/getuto"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="
|
||||
https://github.com/projg2/getuto/archive/refs/tags/${P}.tar.gz
|
||||
"
|
||||
S=${WORKDIR}/${PN}-${P}
|
||||
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
|
||||
fi
|
||||
|
||||
SRC_URI+=" test? ( https://mirror.bytemark.co.uk/gentoo/releases/amd64/binpackages/17.1/x86-64/virtual/libc/libc-1-r1-1.gpkg.tar )"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
IUSE="test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
app-crypt/gnupg
|
||||
dev-libs/openssl
|
||||
sec-keys/openpgp-keys-gentoo-release
|
||||
sys-apps/gentoo-functions
|
||||
"
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
git-r3_src_unpack
|
||||
else
|
||||
# Don't mangle test data
|
||||
unpack ${P}.tar.gz
|
||||
fi
|
||||
|
||||
if use test ; then
|
||||
cp "${DISTDIR}"/libc-1-r1-1.gpkg.tar "${S}" || die
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin getuto
|
||||
}
|
||||
@ -24,7 +24,8 @@ DIST bash-5.2.tar.gz 10950833 BLAKE2B 51b196e710794ebad8eac28c31c93eb99ac1a7db30
|
||||
DIST bash-5.2.tar.gz.sig 95 BLAKE2B 2991b7c46ef1cdca08062f419be47fca7551f4c5d9aad8a5c1da74974f5e7707d23914b4cecf9b6c9610471146b2c49b611bb62a5d974f1c37cceb77b719851c SHA512 a161664f124f906be32709f66702f8f780e6d52e558ea45e71ec60a959c9435ff68477ee65a0a9f6c0051d5592f5044fb3b410cf3cd3ae5a8a323789b01be258
|
||||
DIST bash-5.3-alpha.tar.gz 11195025 BLAKE2B b3325f6927d7dde86aae165891317b972f0b9814e134676b3d7d3aea81ce4d4cad1a01f160e290352072153ad3568ee21701a35190ef5e6274b3c03fc95c8d42 SHA512 52354eb7cd71330192ec76fdda04bcacf758a312e89b45558db5f5345f19b0d8e54732049934958cf89786f5bd7c538d88859eb8d8d22dabfc9ec7305263d10e
|
||||
DIST bash-5.3-alpha.tar.gz.sig 95 BLAKE2B 69c8b33fe2a40498662ef084967701cff1926086785a41d6f49a3c2e2b9908499226d3d970bdb6397a74d3ccc22acb3651261ad2a421799eb135c64a78af8589 SHA512 c9587da66457e2010b0852c6dbf5949821a543b7f1b616a4d016df3477913e2a655c57289e83adeeb31b8b8afca22313e3af76cf727b93932d33a889c1263c20
|
||||
DIST bash-5.3_alpha_p20240927-254081c09767738833cdf161b4bc3feb1a51690a.tar.xz 8547936 BLAKE2B 1af25e3b7fb3760d245625b788f6a6f94985b7f1a7bf7bcf9b5dd81b8df42d8dcad078edaee9c9e744a28341e0f1199f50b9aa9cef7a327b008b64f5fde4bb9d SHA512 b6191ceebe1e9d72f50108abbd687a8d20a620a9683df98ced74d7311c3cea9388af1a39c98c13e2b7e7037622231e44dd84b9d209bed18c488d9f2550f3adae
|
||||
DIST bash-5.3_alpha_p20241015-3ed028ccec871bc8d3b198c1681374b1e37df7cd.tar.gz 15914321 BLAKE2B 7ded011dbba5d9a017a03a7d8dca9bad3baaece4407c69f89f4aeb117bdac25e916e189bff38496ae127964ce5779a2dcf1de3d62b59d54f16a5c2811bfa09e3 SHA512 128d8f4bed5c69e6af8784607f4ef995d45a58a11ab9c47112d95459ef881e06f165406a337fd4ef12ab637883fd83a4c60b0a8a2a265ecd4ffead0786247fc4
|
||||
DIST bash-5.3_alpha_p20241018-261c6e8cc6c59b63be3a1597aadec72e9cf5ae72.tar.gz 15933785 BLAKE2B 95a5fd2e16e4d7e4b7c0d503887a99c2ba8570d9218d64b66397b063620732d504ce75491e98f9f363144d6ca88c35988c6a724e2253d3b2bac49fb75f6076c2 SHA512 ecd51f3b347377de5007dd3cfc68e37990125ab5a89691a4fbb08461e57066565f31137d3c5876a78300af0cd4cb487b263319c921676e985357cf37439a3b9b
|
||||
DIST bash205b-001 1132 BLAKE2B 0c5eef29777d54ef05957ea3d63b1556fb380bd20c238dc28993d822b37bc4e78ff4048ad069f6b8cd25da77ccdeb7aecd86c4349cb9d81e5e94c7001eeae5e6 SHA512 5ce4357468821b05e747201f3aa57225ad8f540c9e2c87051720490e039c30b478b9b662a68f14a0800fefe40184e4495e2645665200f9d75e9a115b2ac08071
|
||||
DIST bash205b-002 755 BLAKE2B 6a6ed5679d451f02f8104b345c1722d11718ce3b4043b581c17786d40d8da69a34786fb56d0c363dba277b8e9dd33f12f70c9cc73a9fc39ba4a8319406f0458d SHA512 46947b0229478d5c2cfeff68b8ebc00e4ef0c8b94e336ca12f72b4490ba3622c0240c01c17c1641c3b07adc2c64ec94d6d780365e8990768ec8888f3a9526883
|
||||
DIST bash205b-003 2356 BLAKE2B b7887d00d92fd298cd07a15e1c73b516dabd22ecd74c97091636dd97a0cd55024ed698e5cc924c4311d994dd326b1ad074bea35e7650cf9cf4e25c60d2713fa7 SHA512 74528ca5d165b812d299f1c69b47757bd677c0b22ce4217e155cd641708b02364a93c6709fb57b546b376b36da74429a61493921c7c199563da40ddcf1c1f399
|
||||
|
||||
@ -1,402 +0,0 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc
|
||||
inherit flag-o-matic toolchain-funcs prefix verify-sig
|
||||
|
||||
# Uncomment if we have a patchset.
|
||||
#GENTOO_PATCH_DEV="sam"
|
||||
#GENTOO_PATCH_VER="${PV}"
|
||||
|
||||
MY_PV=${PV/_p*}
|
||||
MY_PV=${MY_PV/_/-}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
MY_PATCHES=()
|
||||
|
||||
# Determine the patchlevel. See ftp://ftp.gnu.org/gnu/bash/bash-5.2-patches/.
|
||||
case ${PV} in
|
||||
*_p*)
|
||||
PLEVEL=${PV##*_p}
|
||||
;;
|
||||
9999|*_alpha*|*_beta*|*_rc*)
|
||||
# Set a negative patchlevel to indicate that it's a pre-release.
|
||||
PLEVEL=-1
|
||||
;;
|
||||
*)
|
||||
PLEVEL=0
|
||||
esac
|
||||
|
||||
# The version of readline this bash normally ships with. Note that we only use
|
||||
# the bundled copy of readline for pre-releases.
|
||||
READLINE_VER="8.2_p1"
|
||||
|
||||
DESCRIPTION="The standard GNU Bourne again shell"
|
||||
HOMEPAGE="https://tiswww.case.edu/php/chet/bash/bashtop.html https://git.savannah.gnu.org/cgit/bash.git"
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
EGIT_REPO_URI="https://git.savannah.gnu.org/git/bash.git"
|
||||
EGIT_BRANCH=devel
|
||||
inherit git-r3
|
||||
else
|
||||
my_urls=( {'mirror://gnu/bash','ftp://ftp.cwru.edu/pub/bash'}/"${MY_P}.tar.gz" )
|
||||
|
||||
# bash-5.1 -> bash51
|
||||
my_p=${PN}$(ver_cut 1-2) my_p=${my_p/.}
|
||||
|
||||
for (( my_patch_idx = 1; my_patch_idx <= PLEVEL; my_patch_idx++ )); do
|
||||
printf -v my_patch_ver %s-%03d "${my_p}" "${my_patch_idx}"
|
||||
my_urls+=( {'mirror://gnu/bash','ftp://ftp.cwru.edu/pub/bash'}/"${MY_P}-patches/${my_patch_ver}" )
|
||||
MY_PATCHES+=( "${DISTDIR}/${my_patch_ver}" )
|
||||
done
|
||||
|
||||
SRC_URI="${my_urls[*]} verify-sig? ( ${my_urls[*]/%/.sig} )"
|
||||
|
||||
unset -v my_urls my_p my_patch_idx my_patch_ver
|
||||
fi
|
||||
|
||||
if [[ ${GENTOO_PATCH_VER} ]]; then
|
||||
SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV:?}/distfiles/${CATEGORY}/${PN}/${PN}-${GENTOO_PATCH_VER:?}-patches.tar.xz"
|
||||
fi
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
if (( PLEVEL >= 0 )); then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
IUSE="afs bashlogger examples mem-scramble +net nls plugins pgo +readline"
|
||||
|
||||
DEPEND="
|
||||
>=sys-libs/ncurses-5.2-r2:=
|
||||
nls? ( virtual/libintl )
|
||||
"
|
||||
if (( PLEVEL >= 0 )); then
|
||||
DEPEND+=" readline? ( >=sys-libs/readline-${READLINE_VER}:= )"
|
||||
fi
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
"
|
||||
# We only need bison (yacc) when the .y files get patched (bash42-005, bash51-011).
|
||||
BDEPEND="
|
||||
pgo? ( dev-util/gperf )
|
||||
verify-sig? ( sec-keys/openpgp-keys-chetramey )
|
||||
"
|
||||
|
||||
# EAPI 8 tries to append it but it doesn't exist here.
|
||||
QA_CONFIGURE_OPTIONS="--disable-static"
|
||||
|
||||
PATCHES=(
|
||||
#"${WORKDIR}"/${PN}-${GENTOO_PATCH_VER}/
|
||||
|
||||
# Patches to or from Chet, posted to the bug-bash mailing list.
|
||||
"${FILESDIR}/${PN}-5.0-syslog-history-extern.patch"
|
||||
"${FILESDIR}/${PN}-5.2_p15-random-ub.patch"
|
||||
"${FILESDIR}/${PN}-5.2_p15-configure-clang16.patch"
|
||||
"${FILESDIR}/${PN}-5.2_p21-wpointer-to-int.patch"
|
||||
"${FILESDIR}/${PN}-5.2_p21-configure-strtold.patch"
|
||||
"${FILESDIR}/${PN}-5.2_p32-memory-leaks.patch"
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
# bug #7332
|
||||
if is-flag -malign-double; then
|
||||
eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
|
||||
eerror "as it breaks LFS (struct stat64) on x86."
|
||||
die "remove -malign-double from your CFLAGS mr ricer"
|
||||
fi
|
||||
|
||||
if use bashlogger; then
|
||||
ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
|
||||
ewarn "This will log ALL output you enter into the shell, you have been warned."
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
local patch
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
git-r3_src_unpack
|
||||
else
|
||||
if use verify-sig; then
|
||||
verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig}
|
||||
|
||||
for patch in "${MY_PATCHES[@]}"; do
|
||||
verify-sig_verify_detached "${patch}"{,.sig}
|
||||
done
|
||||
fi
|
||||
|
||||
unpack "${MY_P}.tar.gz"
|
||||
|
||||
if [[ ${GENTOO_PATCH_VER} ]]; then
|
||||
unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Include official patches.
|
||||
(( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}"
|
||||
|
||||
# Clean out local libs so we know we use system ones w/releases. The
|
||||
# touch utility is invoked for the benefit of config.status.
|
||||
if (( PLEVEL >= 0 )); then
|
||||
rm -rf lib/{readline,termcap}/* \
|
||||
&& touch lib/{readline,termcap}/Makefile.in \
|
||||
&& sed -i -E 's:\$[{(](RL|HIST)_LIBSRC[)}]/[[:alpha:]_-]*\.h::g' Makefile.in \
|
||||
|| die
|
||||
fi
|
||||
|
||||
# Prefixify hardcoded path names. No-op for non-prefix.
|
||||
hprefixify pathnames.h.in
|
||||
|
||||
# Avoid regenerating docs after patches, bug #407985.
|
||||
sed -i -E '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in \
|
||||
&& touch -r . doc/* \
|
||||
|| die
|
||||
|
||||
# Sometimes hangs (more noticeable w/ pgo), bug #907403.
|
||||
rm tests/run-jobs || die
|
||||
|
||||
eapply -p0 "${PATCHES[@]}"
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local -a myconf
|
||||
|
||||
# Upstream only test with Bison and require GNUisms like YYEOF and
|
||||
# YYERRCODE. The former at least may be in POSIX soon:
|
||||
# https://www.austingroupbugs.net/view.php?id=1269.
|
||||
# configure warns on use of non-Bison but doesn't abort. The result
|
||||
# may misbehave at runtime.
|
||||
unset -v YACC
|
||||
|
||||
myconf=(
|
||||
--disable-profiling
|
||||
|
||||
# Force linking with system curses ... the bundled termcap lib
|
||||
# sucks bad compared to ncurses. For the most part, ncurses
|
||||
# is here because readline needs it. But bash itself calls
|
||||
# ncurses in one or two small places :(.
|
||||
--with-curses
|
||||
|
||||
$(use_enable mem-scramble)
|
||||
$(use_enable net net-redirections)
|
||||
$(use_enable readline)
|
||||
$(use_enable readline bang-history)
|
||||
$(use_enable readline history)
|
||||
$(use_with afs)
|
||||
$(use_with mem-scramble bash-malloc)
|
||||
)
|
||||
|
||||
# For descriptions of these, see config-top.h.
|
||||
# bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426
|
||||
append-cppflags \
|
||||
-DDEFAULT_PATH_VALUE=\'\""${EPREFIX}"/usr/local/sbin:"${EPREFIX}"/usr/local/bin:"${EPREFIX}"/usr/sbin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/bin\"\' \
|
||||
-DSTANDARD_UTILS_PATH=\'\""${EPREFIX}"/bin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/usr/sbin\"\' \
|
||||
-DSYS_BASHRC=\'\""${EPREFIX}"/etc/bash/bashrc\"\' \
|
||||
-DSYS_BASH_LOGOUT=\'\""${EPREFIX}"/etc/bash/bash_logout\"\' \
|
||||
-DNON_INTERACTIVE_LOGIN_SHELLS \
|
||||
-DSSH_SOURCE_BASHRC \
|
||||
$(use bashlogger && echo -DSYSLOG_HISTORY)
|
||||
|
||||
use nls || myconf+=( --disable-nls )
|
||||
|
||||
if (( PLEVEL >= 0 )); then
|
||||
# Historically, we always used the builtin readline, but since
|
||||
# our handling of SONAME upgrades has gotten much more stable
|
||||
# in the PM (and the readline ebuild itself preserves the old
|
||||
# libs during upgrades), linking against the system copy should
|
||||
# be safe.
|
||||
# Exact cached version here doesn't really matter as long as it
|
||||
# is at least what's in the DEPEND up above.
|
||||
export ac_cv_rl_version=${READLINE_VER%%_*}
|
||||
|
||||
# Use system readline only with released versions.
|
||||
myconf+=( --with-installed-readline=. )
|
||||
fi
|
||||
|
||||
if use plugins; then
|
||||
append-ldflags "-Wl,-rpath,${EPREFIX}/usr/$(get_libdir)/bash"
|
||||
else
|
||||
# Disable the plugins logic by hand since bash doesn't provide
|
||||
# a way of doing it.
|
||||
export ac_cv_func_dl{close,open,sym}=no \
|
||||
ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
|
||||
|
||||
sed -i -e '/LOCAL_LDFLAGS=/s:-rdynamic::' configure || die
|
||||
fi
|
||||
|
||||
# bug #444070
|
||||
tc-export AR
|
||||
|
||||
econf "${myconf[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local -a pgo_generate_flags pgo_use_flags
|
||||
local flag
|
||||
|
||||
# -fprofile-partial-training because upstream notes the test suite isn't
|
||||
# super comprehensive.
|
||||
# https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo
|
||||
if use pgo; then
|
||||
pgo_generate_flags=(
|
||||
-fprofile-update=atomic
|
||||
-fprofile-dir="${T}"/pgo
|
||||
-fprofile-generate="${T}"/pgo
|
||||
)
|
||||
pgo_use_flags=(
|
||||
-fprofile-use="${T}"/pgo
|
||||
-fprofile-dir="${T}"/pgo
|
||||
)
|
||||
if flag=$(test-flags-CC -fprofile-partial-training); then
|
||||
pgo_generate_flags+=( "${flag}" )
|
||||
pgo_use_flags+=( "${flag}" )
|
||||
fi
|
||||
fi
|
||||
|
||||
emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}"
|
||||
use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" all others
|
||||
|
||||
# Build Bash and run its tests to generate profiles.
|
||||
if (( ${#pgo_generate_flags[@]} )); then
|
||||
# Used in test suite.
|
||||
unset -v A
|
||||
|
||||
emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" -k check
|
||||
|
||||
if tc-is-clang; then
|
||||
llvm-profdata merge "${T}"/pgo --output="${T}"/pgo/default.profdata || die
|
||||
fi
|
||||
|
||||
# Rebuild Bash using the profiling data we just generated.
|
||||
emake clean
|
||||
emake CFLAGS="${CFLAGS} ${pgo_use_flags[*]}"
|
||||
use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" all others
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Used in test suite.
|
||||
unset -v A
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local d f
|
||||
|
||||
default
|
||||
|
||||
my_prefixify() {
|
||||
while read -r; do
|
||||
if [[ $REPLY == *$1* ]]; then
|
||||
REPLY=${REPLY/"/etc/"/"${EPREFIX}/etc/"}
|
||||
fi
|
||||
printf '%s\n' "${REPLY}" || ! break
|
||||
done < "$2" || die
|
||||
}
|
||||
|
||||
dodir /bin
|
||||
mv -- "${ED}"/usr/bin/bash "${ED}"/bin/ || die
|
||||
dosym bash /bin/rbash
|
||||
|
||||
insinto /etc/bash
|
||||
doins "${FILESDIR}"/bash_logout
|
||||
my_prefixify bashrc.d "${FILESDIR}"/bashrc-r1 | newins - bashrc
|
||||
|
||||
insinto /etc/bash/bashrc.d
|
||||
my_prefixify DIR_COLORS "${FILESDIR}"/bashrc.d/10-gentoo-color.bash | newins - 10-gentoo-color.bash
|
||||
newins "${FILESDIR}"/bashrc.d/10-gentoo-title-r1.bash 10-gentoo-title.bash
|
||||
if [[ ! ${EPREFIX} ]]; then
|
||||
doins "${FILESDIR}"/bashrc.d/15-gentoo-bashrc-check.bash
|
||||
fi
|
||||
|
||||
insinto /etc/skel
|
||||
for f in bash{_logout,_profile,rc}; do
|
||||
newins "${FILESDIR}/dot-${f}" ".${f}"
|
||||
done
|
||||
|
||||
if use plugins; then
|
||||
exeinto "/usr/$(get_libdir)/bash"
|
||||
set -- examples/loadables/*.o
|
||||
doexe "${@%.o}"
|
||||
|
||||
insinto /usr/include/bash-plugins
|
||||
doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h}
|
||||
fi
|
||||
|
||||
if use examples; then
|
||||
for d in examples/{functions,misc,scripts,startup-files}; do
|
||||
exeinto "/usr/share/doc/${PF}/${d}"
|
||||
docinto "${d}"
|
||||
for f in "${d}"/*; do
|
||||
if [[ ${f##*/} != @(PERMISSION|*README) ]]; then
|
||||
doexe "${f}"
|
||||
else
|
||||
dodoc "${f}"
|
||||
fi
|
||||
done
|
||||
done
|
||||
fi
|
||||
|
||||
# Install bash_builtins.1 and rbash.1.
|
||||
emake -C doc DESTDIR="${D}" install_builtins
|
||||
sed 's:bash\.1:man1/&:' doc/rbash.1 > "${T}"/rbash.1 || die
|
||||
doman "${T}"/rbash.1
|
||||
|
||||
newdoc CWRU/changelog ChangeLog
|
||||
dosym bash.info /usr/share/info/bashref.info
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]]; then
|
||||
mkdir -p -- "${EROOT}"/etc/bash \
|
||||
&& mv -f -- "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/ \
|
||||
|| die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
local old_ver
|
||||
|
||||
# If /bin/sh does not exist, provide it.
|
||||
if [[ ! -e ${EROOT}/bin/sh ]]; then
|
||||
ln -sf -- bash "${EROOT}"/bin/sh || die
|
||||
fi
|
||||
|
||||
read -r old_ver <<<"${REPLACING_VERSIONS}"
|
||||
if [[ ! $old_ver ]]; then
|
||||
:
|
||||
elif ver_test "$old_ver" -ge "5.2" && ver_test "$old_ver" -ge "5.2_p26-r8"; then
|
||||
return
|
||||
fi
|
||||
|
||||
while read -r; do ewarn "${REPLY}"; done <<'EOF'
|
||||
Files under /etc/bash/bashrc.d must now have a suffix of .sh or .bash.
|
||||
|
||||
Gentoo now defaults to defining PROMPT_COMMAND as an array. Depending on the
|
||||
characteristics of the operating environment, it may contain a command to set
|
||||
the terminal's window title. Those who were already choosing to customise the
|
||||
PROMPT_COMMAND variable are now advised to append their commands like so:
|
||||
|
||||
PROMPT_COMMAND+=('custom command goes here')
|
||||
|
||||
Gentoo no longer defaults to having bash set the window title in the case
|
||||
that the terminal is controlled by sshd(8), unless screen is launched on the
|
||||
remote side or the terminal reliably supports saving and restoring the title
|
||||
(as alacritty, foot and tmux do). Those wanting for the title to be set
|
||||
regardless may adjust ~/.bashrc - or create a custom /etc/bash/bashrc.d
|
||||
drop-in - to set PROMPT_COMMMAND like so:
|
||||
|
||||
PROMPT_COMMAND=(genfun_set_win_title)
|
||||
|
||||
Those who would prefer for bash never to interfere with the window title may
|
||||
now opt out of the default title setting behaviour, either with the "unset -v
|
||||
PROMPT_COMMAND" command or by re-defining PROMPT_COMMAND as desired.
|
||||
EOF
|
||||
}
|
||||
@ -65,7 +65,7 @@ S=${WORKDIR}/${MY_P}
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
if (( PLEVEL >= 0 )); then
|
||||
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
IUSE="afs bashlogger examples mem-scramble +net nls plugins pgo +readline"
|
||||
|
||||
|
||||
@ -45,8 +45,8 @@ elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then
|
||||
# the alpha, and the next pre-release is usually quite far away.
|
||||
#
|
||||
# i.e. if it's worth packaging the alpha, it's worth packaging a followup.
|
||||
BASH_COMMIT="254081c09767738833cdf161b4bc3feb1a51690a"
|
||||
SRC_URI="https://git.savannah.gnu.org/cgit/bash.git/snapshot/bash-${BASH_COMMIT}.tar.xz -> ${P}-${BASH_COMMIT}.tar.xz"
|
||||
BASH_COMMIT="3ed028ccec871bc8d3b198c1681374b1e37df7cd"
|
||||
SRC_URI="https://git.savannah.gnu.org/cgit/bash.git/snapshot/bash-${BASH_COMMIT}.tar.gz -> ${P}-${BASH_COMMIT}.tar.gz"
|
||||
S=${WORKDIR}/${PN}-${BASH_COMMIT}
|
||||
else
|
||||
my_urls=( {'mirror://gnu/bash','ftp://ftp.cwru.edu/pub/bash'}/"${MY_P}.tar.gz" )
|
||||
@ -15,22 +15,22 @@ MY_PV=${MY_PV/_/-}
|
||||
MY_P=${PN}-${MY_PV}
|
||||
MY_PATCHES=()
|
||||
|
||||
# Determine the patchlevel. See ftp://ftp.gnu.org/gnu/bash/bash-5.2-patches/.
|
||||
# Determine the patchlevel.
|
||||
case ${PV} in
|
||||
*_p*)
|
||||
PLEVEL=${PV##*_p}
|
||||
;;
|
||||
9999|*_alpha*|*_beta*|*_rc*)
|
||||
# Set a negative patchlevel to indicate that it's a pre-release.
|
||||
PLEVEL=-1
|
||||
;;
|
||||
*_p*)
|
||||
PLEVEL=${PV##*_p}
|
||||
;;
|
||||
*)
|
||||
PLEVEL=0
|
||||
esac
|
||||
|
||||
# The version of readline this bash normally ships with. Note that we only use
|
||||
# the bundled copy of readline for pre-releases.
|
||||
READLINE_VER="8.2_p1"
|
||||
READLINE_VER="8.3_alpha"
|
||||
|
||||
DESCRIPTION="The standard GNU Bourne again shell"
|
||||
HOMEPAGE="https://tiswww.case.edu/php/chet/bash/bashtop.html https://git.savannah.gnu.org/cgit/bash.git"
|
||||
@ -39,6 +39,15 @@ if [[ ${PV} == 9999 ]]; then
|
||||
EGIT_REPO_URI="https://git.savannah.gnu.org/git/bash.git"
|
||||
EGIT_BRANCH=devel
|
||||
inherit git-r3
|
||||
elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then
|
||||
# It can be useful to have snapshots in the pre-release period once
|
||||
# the first alpha is out, as various bugs get reported and fixed from
|
||||
# the alpha, and the next pre-release is usually quite far away.
|
||||
#
|
||||
# i.e. if it's worth packaging the alpha, it's worth packaging a followup.
|
||||
BASH_COMMIT="261c6e8cc6c59b63be3a1597aadec72e9cf5ae72"
|
||||
SRC_URI="https://git.savannah.gnu.org/cgit/bash.git/snapshot/bash-${BASH_COMMIT}.tar.gz -> ${P}-${BASH_COMMIT}.tar.gz"
|
||||
S=${WORKDIR}/${PN}-${BASH_COMMIT}
|
||||
else
|
||||
my_urls=( {'mirror://gnu/bash','ftp://ftp.cwru.edu/pub/bash'}/"${MY_P}.tar.gz" )
|
||||
|
||||
@ -52,6 +61,7 @@ else
|
||||
done
|
||||
|
||||
SRC_URI="${my_urls[*]} verify-sig? ( ${my_urls[*]/%/.sig} )"
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
unset -v my_urls my_p my_patch_idx my_patch_ver
|
||||
fi
|
||||
@ -60,8 +70,6 @@ if [[ ${GENTOO_PATCH_VER} ]]; then
|
||||
SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV:?}/distfiles/${CATEGORY}/${PN}/${PN}-${GENTOO_PATCH_VER:?}-patches.tar.xz"
|
||||
fi
|
||||
|
||||
S=${WORKDIR}/${MY_P}
|
||||
|
||||
LICENSE="GPL-3+"
|
||||
SLOT="0"
|
||||
if (( PLEVEL >= 0 )); then
|
||||
@ -93,12 +101,6 @@ PATCHES=(
|
||||
|
||||
# Patches to or from Chet, posted to the bug-bash mailing list.
|
||||
"${FILESDIR}/${PN}-5.0-syslog-history-extern.patch"
|
||||
"${FILESDIR}/${PN}-5.2_p15-random-ub.patch"
|
||||
"${FILESDIR}/${PN}-5.2_p15-configure-clang16.patch"
|
||||
"${FILESDIR}/${PN}-5.2_p21-wpointer-to-int.patch"
|
||||
"${FILESDIR}/${PN}-5.2_p21-configure-strtold.patch"
|
||||
"${FILESDIR}/${PN}-5.2_p32-memory-leaks.patch"
|
||||
"${FILESDIR}/${PN}-5.2_p32-read-delimiter-in-invalid-mbchar.patch"
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
@ -120,6 +122,8 @@ src_unpack() {
|
||||
|
||||
if [[ ${PV} == 9999 ]]; then
|
||||
git-r3_src_unpack
|
||||
elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then
|
||||
default
|
||||
else
|
||||
if use verify-sig; then
|
||||
verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig}
|
||||
@ -175,6 +179,10 @@ src_configure() {
|
||||
# may misbehave at runtime.
|
||||
unset -v YACC
|
||||
|
||||
# wcsnwidth(), substring() issues with -Wlto-type-mismatch, reported
|
||||
# upstream to Chet by email.
|
||||
filter-lto
|
||||
|
||||
myconf=(
|
||||
--disable-profiling
|
||||
|
||||
@ -17,7 +17,7 @@ SRC_URI="https://github.com/asciidoc-py/asciidoc-py/releases/download/${PV}/${P}
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
RDEPEND="
|
||||
app-text/docbook-xml-dtd:4.5
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
|
||||
EAPI=8
|
||||
|
||||
USE_RUBY="ruby30 ruby31"
|
||||
USE_RUBY="ruby31 ruby32 ruby33"
|
||||
inherit ruby-single
|
||||
|
||||
DOCBOOKDIR="/usr/share/sgml/${PN/-//}"
|
||||
|
||||
@ -1 +1,2 @@
|
||||
DIST autoconf-archive-2023.02.20.tar.xz 678184 BLAKE2B a72469e61a6ef702cbf4e30712c7dbe36369da7dad6e2312eb7026af41a989a47ded0a27975349486b69155f9e8199f89720dc57f98440b2766294a0f8755ee6 SHA512 a744f5aa0c1a813b81ad1528aebf7511bde7f470f34626d2057ed6664127120182e031fec5d22027d4a204544266135f202b8ef453bff70a3b0315c506c82528
|
||||
DIST autoconf-archive-2024.10.16.tar.xz 677768 BLAKE2B 64554b7258c527f2e6bb115bec08e358bd4f10b940cdbe58c073fb3bdeccab78897250766e600b7e5fd79a76d633135d1caf2c7e81893bd68cab704073cac2c5 SHA512 91140cb666447f12a1d39d7d42f5fe6ea3601bb586f466381c9e949087aafa06aed8d061a4f5d020a3d234eb710e4bb47cd25380bcffd8c423fa1a7af05e988b
|
||||
|
||||
@ -0,0 +1,18 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DESCRIPTION="GNU Autoconf Macro Archive"
|
||||
HOMEPAGE="https://www.gnu.org/software/autoconf-archive/"
|
||||
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
# File collisions, bug #540246
|
||||
RDEPEND="
|
||||
!=gnome-base/gnome-common-3.14.0-r0
|
||||
!>=gnome-base/gnome-common-3.14.0-r1[-autoconf-archive(+)]
|
||||
"
|
||||
@ -15,3 +15,6 @@ DIST cmake-3.30.3.tar.gz 11501292 BLAKE2B 8b6d989b90568b6fe42ada549f5cd766d8f919
|
||||
DIST cmake-3.30.4-SHA-256.txt 1646 BLAKE2B 0092ca4577ad6433b4560c66a9cdaf7c4ee3bc87473533a91841d5d3759ca7bcf0dce40af1e7b122fc6cb47f98b7d61724f6c00ca5e0d5c927dcc5ff488b4345 SHA512 ef732c6ce8ecd5288d9ec6485abef7a381faa0545848337e1d31a1c7ed3191ed9f7c5edf49ce0e194ad254640b27843ae2cd668c78ccf2835730b2936c19d09d
|
||||
DIST cmake-3.30.4-SHA-256.txt.asc 833 BLAKE2B 4cd2d11bcaa1379e99d231716118034ca2bb39f27c48f590f00f8f57c6f37a874c2d4dbea816e1d3c62972b13dce5d723d837a77c56054834afdecf7d786491d SHA512 3e9c0e17f46d5e85c438d92248ab642be19a0b46b01c057ad253c1bce68cdf867296946b0709021f6bc75d555b0814b0fb1e36de0bacb650c81b59800144c1e6
|
||||
DIST cmake-3.30.4.tar.gz 11502808 BLAKE2B 591b4df9442e77116864f44eba568341ac30be6705061f33603cac56f47fb34730132537d1863ad70d890661eefb4741c0c40cf7a1a85a905300deafc22ba8de SHA512 d444fb94a56aebcda8344f48b5555d330c8d0602d5e68771800934a7df8667c97971ac44c8f0e71f7c1c0276b687fbca6fc5ac3102d5b755591dda7eddf49d0d
|
||||
DIST cmake-3.30.5-SHA-256.txt 1646 BLAKE2B a91c0663dd11a6f854a4acdc5902b67811a311fd5161dc86140f1a39fb1f3aadce0df348e27569936c6e51def096ab6572635e00ce3d2b7554fadea4a3d4287f SHA512 a5a2285049fae435f53d0dfdfaea9a740d2f6e08dd1b149ab1f0d5e3ddc8afb2c3fac4a8018a7eb24ec90155535362160abe5ca2681808a96d19d191a3aa3713
|
||||
DIST cmake-3.30.5-SHA-256.txt.asc 833 BLAKE2B cb7db2d0263d77cbc6798aa916a4584ccc7e7e9724c362c1471cda4b87c53ed1d1cbacf84573768844d16c3356ad32dae4500a6704fc22b8b1e824e2be6a0435 SHA512 fdd31e5b872c3dba1c66dd2ae077721f7054f6df9f261548fce86f9d4d4d403130511c4ce7ce57bcb3501abd87ab506177b513d160592db6e09d70d34e4a24e5
|
||||
DIST cmake-3.30.5.tar.gz 11502354 BLAKE2B 47eb5abcd9d634b10053b2052dae11fc85e74f78ca2489d72088eba8ca84ecaf22a248b27a92bf50666b76e8cba40ba9b952d3d76d8e57112d136e26087f5696 SHA512 968ad4769e869378049b1d82ace98db25a6cb234b6362a51737f0d2978b8914ad42967ba112741850b23631e73b8a8876cd4f99dd0285b9da1c2bb5ea4c4ee4e
|
||||
|
||||
293
sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-3.30.5.ebuild
vendored
Normal file
293
sdk_container/src/third_party/portage-stable/dev-build/cmake/cmake-3.30.5.ebuild
vendored
Normal file
@ -0,0 +1,293 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-cmake-docs
|
||||
# Set to 1 if prebuilt, 0 if not
|
||||
# (the construct below is to allow overriding from env for script)
|
||||
: ${CMAKE_DOCS_PREBUILT:=1}
|
||||
|
||||
CMAKE_DOCS_PREBUILT_DEV=sam
|
||||
CMAKE_DOCS_VERSION=$(ver_cut 1-2).0
|
||||
# Default to generating docs (inc. man pages) if no prebuilt; overridden later
|
||||
# See bug #784815
|
||||
CMAKE_DOCS_USEFLAG="+doc"
|
||||
|
||||
# TODO RunCMake.LinkWhatYouUse fails consistently w/ ninja
|
||||
# ... but seems fine as of 3.22.3?
|
||||
# TODO ... but bootstrap sometimes(?) fails with ninja now. bug #834759.
|
||||
CMAKE_MAKEFILE_GENERATOR="emake"
|
||||
CMAKE_REMOVE_MODULES_LIST=( none )
|
||||
inherit bash-completion-r1 cmake flag-o-matic multiprocessing \
|
||||
toolchain-funcs xdg-utils
|
||||
|
||||
MY_P="${P/_/-}"
|
||||
|
||||
DESCRIPTION="Cross platform Make"
|
||||
HOMEPAGE="https://cmake.org/"
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
CMAKE_DOCS_PREBUILT=0
|
||||
|
||||
EGIT_REPO_URI="https://gitlab.kitware.com/cmake/cmake.git"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://cmake.org/files/v$(ver_cut 1-2)/${MY_P}.tar.gz"
|
||||
|
||||
if [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
|
||||
SRC_URI+=" !doc? ( https://dev.gentoo.org/~${CMAKE_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${CMAKE_DOCS_VERSION}-docs.tar.xz )"
|
||||
fi
|
||||
|
||||
if [[ ${PV} != *_rc* ]] ; then
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/bradking.asc
|
||||
inherit verify-sig
|
||||
|
||||
SRC_URI+=" verify-sig? (
|
||||
https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt
|
||||
https://github.com/Kitware/CMake/releases/download/v$(ver_cut 1-3)/${MY_P}-SHA-256.txt.asc
|
||||
)"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
|
||||
BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-bradking-20230817 )"
|
||||
fi
|
||||
fi
|
||||
|
||||
[[ ${CMAKE_DOCS_PREBUILT} == 1 ]] && CMAKE_DOCS_USEFLAG="doc"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
IUSE="${CMAKE_DOCS_USEFLAG} dap gui ncurses qt6 test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
RDEPEND="
|
||||
>=app-arch/libarchive-3.3.3:=
|
||||
app-crypt/rhash:0=
|
||||
>=dev-libs/expat-2.0.1
|
||||
>=dev-libs/jsoncpp-1.9.2-r2:0=
|
||||
>=dev-libs/libuv-1.10.0:=
|
||||
>=net-misc/curl-7.21.5[ssl]
|
||||
sys-libs/zlib
|
||||
virtual/pkgconfig
|
||||
dap? ( dev-cpp/cppdap )
|
||||
gui? (
|
||||
!qt6? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtwidgets:5
|
||||
)
|
||||
qt6? ( dev-qt/qtbase:6[gui,widgets] )
|
||||
)
|
||||
ncurses? ( sys-libs/ncurses:= )
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND+="
|
||||
doc? (
|
||||
dev-python/requests
|
||||
dev-python/sphinx
|
||||
)
|
||||
test? ( app-arch/libarchive[zstd] )
|
||||
"
|
||||
|
||||
SITEFILE="50${PN}-gentoo.el"
|
||||
|
||||
PATCHES=(
|
||||
# Prefix
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0001-Don-t-use-.so-for-modules-on-darwin-macos.-Use-.bund.patch
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0002-Set-some-proper-paths-to-make-cmake-find-our-tools.patch
|
||||
# Misc
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0003-Prefer-pkgconfig-in-FindBLAS.patch
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch
|
||||
# Cuda
|
||||
"${FILESDIR}/${PN}-3.30.3-cudahostld.patch"
|
||||
|
||||
# Upstream fixes (can usually be removed with a version bump)
|
||||
)
|
||||
|
||||
cmake_src_bootstrap() {
|
||||
# disable running of cmake in bootstrap command
|
||||
sed -i \
|
||||
-e '/"${cmake_bootstrap_dir}\/cmake"/s/^/#DONOTRUN /' \
|
||||
bootstrap || die "sed failed"
|
||||
|
||||
# execinfo.h on Solaris isn't quite what it is on Darwin
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
sed -i -e 's/execinfo\.h/blablabla.h/' \
|
||||
Source/kwsys/CMakeLists.txt || die
|
||||
fi
|
||||
|
||||
# bootstrap script isn't exactly /bin/sh compatible
|
||||
tc-env_build ${CONFIG_SHELL:-sh} ./bootstrap \
|
||||
--prefix="${T}/cmakestrap/" \
|
||||
--parallel=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)") \
|
||||
|| die "Bootstrap failed"
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if [[ ${PV} == 9999 ]] ; then
|
||||
git-r3_src_unpack
|
||||
elif [[ ${PV} == *_rc* ]] || ! use verify-sig ; then
|
||||
default
|
||||
else
|
||||
cd "${DISTDIR}" || die
|
||||
|
||||
# See https://mgorny.pl/articles/verify-sig-by-example.html#verifying-using-a-checksum-file-with-a-detached-signature
|
||||
verify-sig_verify_detached ${MY_P}-SHA-256.txt{,.asc}
|
||||
verify-sig_verify_unsigned_checksums ${MY_P}-SHA-256.txt sha256 ${MY_P}.tar.gz
|
||||
|
||||
cd "${WORKDIR}" || die
|
||||
|
||||
default
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cmake_src_prepare
|
||||
|
||||
if [[ ${CHOST} == *-darwin* ]] ; then
|
||||
# Disable Xcode hooks, bug #652134
|
||||
sed -i -e 's/cm\(\|Global\|Local\)XCode[^.]\+\.\(cxx\|h\)//' \
|
||||
Source/CMakeLists.txt || die
|
||||
sed -i -e '/define CMAKE_USE_XCODE/s/XCODE/NO_XCODE/' \
|
||||
-e '/cmGlobalXCodeGenerator.h/d' \
|
||||
Source/cmake.cxx || die
|
||||
# Disable system integration, bug #933744
|
||||
sed -i -e 's/__APPLE__/__DISABLED__/' \
|
||||
Source/cmFindProgramCommand.cxx \
|
||||
Source/CPack/cmCPackGeneratorFactory.cxx || die
|
||||
sed -i -e 's/__MAC_OS_X_VERSION_MIN_REQUIRED/__DISABLED__/' \
|
||||
Source/cmMachO.cxx || die
|
||||
sed -i -e 's:CPack/cmCPack\(Bundle\|DragNDrop\|PKG\|ProductBuild\)Generator.cxx::' \
|
||||
Source/CMakeLists.txt || die
|
||||
|
||||
# Disable isysroot usage with GCC, we've properly instructed
|
||||
# where things are via GCC configuration and ldwrapper
|
||||
sed -i -e '/cmake_gnu_set_sysroot_flag/d' \
|
||||
Modules/Platform/Apple-GNU-*.cmake || die
|
||||
# Disable isysroot usage with clang as well
|
||||
sed -i -e '/_SYSROOT_FLAG/d' \
|
||||
Modules/Platform/Apple-Clang.cmake || die
|
||||
# Don't set a POSIX standard, system headers don't like that, #757426
|
||||
sed -i -e 's/^#if !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
|
||||
Source/cmLoadCommandCommand.cxx \
|
||||
Source/cmStandardLexer.h \
|
||||
Source/cmSystemTools.cxx \
|
||||
Source/cmTimestamp.cxx
|
||||
sed -i -e 's/^#if !defined(_POSIX_C_SOURCE) && !defined(_WIN32) && !defined(__sun)/& \&\& !defined(__APPLE__)/' \
|
||||
Source/cmStandardLexer.h
|
||||
fi
|
||||
|
||||
# Add gcc libs to the default link paths
|
||||
sed -i \
|
||||
-e "s|@GENTOO_PORTAGE_GCCLIBDIR@|${EPREFIX}/usr/${CHOST}/lib/|g" \
|
||||
-e "$(usex prefix-guest "s|@GENTOO_HOST@||" "/@GENTOO_HOST@/d")" \
|
||||
-e "s|@GENTOO_PORTAGE_EPREFIX@|${EPREFIX}/|g" \
|
||||
Modules/Platform/{UnixPaths,Darwin}.cmake || die "sed failed"
|
||||
|
||||
## in theory we could handle these flags in src_configure, as we do in many other packages. But we *must*
|
||||
## handle them as part of bootstrapping, sadly.
|
||||
|
||||
# Fix linking on Solaris
|
||||
[[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl
|
||||
|
||||
# ODR warnings, bug #858335
|
||||
# https://gitlab.kitware.com/cmake/cmake/-/issues/20740
|
||||
filter-lto
|
||||
|
||||
if ! has_version -b \>=${CATEGORY}/${PN}-3.13 || ! cmake --version &>/dev/null ; then
|
||||
CMAKE_BINARY="${S}/Bootstrap.cmk/cmake"
|
||||
cmake_src_bootstrap
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCMAKE_USE_SYSTEM_LIBRARIES=ON
|
||||
-DCMake_ENABLE_DEBUGGER=$(usex dap)
|
||||
-DCMAKE_DOC_DIR=/share/doc/${PF}
|
||||
-DCMAKE_MAN_DIR=/share/man
|
||||
-DCMAKE_DATA_DIR=/share/${PN}
|
||||
-DSPHINX_MAN=$(usex doc)
|
||||
-DSPHINX_HTML=$(usex doc)
|
||||
-DBUILD_CursesDialog="$(usex ncurses)"
|
||||
-DBUILD_TESTING=$(usex test)
|
||||
-DBUILD_QtDialog=$(usex gui)
|
||||
)
|
||||
|
||||
use gui && mycmakeargs+=( -DCMake_QT_MAJOR_VERSION=$(usex qt6 6 5) )
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Fix OutDir and SelectLibraryConfigurations tests
|
||||
# these are altered thanks to our eclass
|
||||
sed -i -e 's:^#_cmake_modify_IGNORE ::g' \
|
||||
"${S}"/Tests/{OutDir,CMakeOnly/SelectLibraryConfigurations}/CMakeLists.txt \
|
||||
|| die
|
||||
|
||||
unset CLICOLOR CLICOLOR_FORCE CMAKE_COMPILER_COLOR_DIAGNOSTICS CMAKE_COLOR_DIAGNOSTICS
|
||||
|
||||
pushd "${BUILD_DIR}" > /dev/null || die
|
||||
|
||||
# Excluded tests:
|
||||
# BootstrapTest: we actualy bootstrap it every time so why test it.
|
||||
# BundleUtilities: bundle creation broken
|
||||
# CMakeOnly.AllFindModules: pthread issues
|
||||
# CTest.updatecvs: which fails to commit as root
|
||||
# Fortran: requires fortran
|
||||
# RunCMake.CompilerLauncher: also requires fortran
|
||||
# RunCMake.CPack_RPM: breaks if app-arch/rpm is installed because
|
||||
# debugedit binary is not in the expected location
|
||||
# RunCMake.CPack_DEB: breaks if app-arch/dpkg is installed because
|
||||
# it can't find a deb package that owns libc
|
||||
# TestUpload, which requires network access
|
||||
# RunCMake.CMP0125, known failure reported upstream (bug #829414)
|
||||
local myctestargs=(
|
||||
--output-on-failure
|
||||
-E "(BootstrapTest|BundleUtilities|CMakeOnly.AllFindModules|CompileOptions|CTest.UpdateCVS|Fortran|RunCMake.CompilerLauncher|RunCMake.CPack_(DEB|RPM)|TestUpload|RunCMake.CMP0125)" \
|
||||
)
|
||||
|
||||
local -x QT_QPA_PLATFORM=offscreen
|
||||
|
||||
cmake_src_test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
# If USE=doc, there'll be newly generated docs which we install instead.
|
||||
if ! use doc && [[ ${CMAKE_DOCS_PREBUILT} == 1 ]] ; then
|
||||
doman "${WORKDIR}"/${PN}-${CMAKE_DOCS_VERSION}-docs/man*/*.[0-8]
|
||||
fi
|
||||
|
||||
insinto /usr/share/vim/vimfiles/syntax
|
||||
doins Auxiliary/vim/syntax/cmake.vim
|
||||
|
||||
insinto /usr/share/vim/vimfiles/indent
|
||||
doins Auxiliary/vim/indent/cmake.vim
|
||||
|
||||
insinto /usr/share/vim/vimfiles/ftdetect
|
||||
doins "${FILESDIR}/${PN}.vim"
|
||||
|
||||
dobashcomp Auxiliary/bash-completion/{${PN},ctest,cpack}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use gui; then
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
if use gui; then
|
||||
xdg_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
fi
|
||||
}
|
||||
@ -101,7 +101,6 @@ PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0003-Prefer-pkgconfig-in-FindBLAS.patch
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch
|
||||
"${FILESDIR}"/${PN}-3.27.0_rc1-0006-Filter-out-distcc-warnings-to-avoid-confusing-CMake.patch
|
||||
# Cuda
|
||||
"${FILESDIR}/${PN}-3.30.3-cudahostld.patch"
|
||||
|
||||
|
||||
@ -10,9 +10,9 @@ DIST meson-1.5.1.tar.gz 2257106 BLAKE2B 3368b209444d0873217bafee2339b395dca9fa43
|
||||
DIST meson-1.5.1.tar.gz.asc 833 BLAKE2B c099720b102b8fff581f2043000454f5cb3593352a8b69c681cda73dae7172fb7d892dc0500e29fffe4ba7828cdcba418acea230563dc26a7a89139ab526b231 SHA512 f8210dd309a104b4169bc2eae9ff370f3ced6fe2c5dfc8f3477c9fbbed983dd6636ea05822d9345d7570e88bfe7789c6cc075e5a91d578a8376666d16ad550a3
|
||||
DIST meson-1.5.2.tar.gz 2265788 BLAKE2B bda0742cf053cb235833b347e66b8706983815fda5d62815aa6455980837e061fb0db2f7472966e6e09a199b0850477a3b448b6ad3b7db717da6b43906cbe2ac SHA512 9f601bdadaf2dae312ff02caa9dcd3fe13659a101e601417bdb908d8b91cdd4a12302433b00c188c1562287a06ada656044d79821d0beb0e0e41c63ab5d48112
|
||||
DIST meson-1.5.2.tar.gz.asc 833 BLAKE2B 0ea6af017430568b2834081a60d0153cc80cb55d835b1f570e27ae6220a163aff9f4607654fe87841df112c78763b4d45dabd45072e398cdf901762095ce52e7 SHA512 7b7c0ee2b872c83d98954079fc27665b3a9ec5464aa8decc5919ff4e1c4134d7006494bd64b901dc2ade408131ea512eefef9416f3c57d1460c9308cb6683fc8
|
||||
DIST meson-1.6.0rc1.tar.gz 2275126 BLAKE2B 0b0ff79ed21fa7b65829730dee3d246ca5012c3ef6185e58b7e4eb22aa7ea24741a7d0e1df56d32488761e504862350a505f043360695472a24a602ee6959dee SHA512 36d6015a353cefdcb26c442e78b9a3d8d69c1c505c84522c0422b956254cf5fe83dfc427442daf9999a874b378e571a2a28cbfe2fb0eb748c38a08cd24c07665
|
||||
DIST meson-1.6.0rc1.tar.gz.asc 833 BLAKE2B 06beb3d168519b6ba3adeb41eb81320b10db8684f7f8768306b96cc1ecd9cff1c8e07d489825160e4a8a493b760da60a944ea3b465529b2a860f780f6d65e8ef SHA512 cbb579d4231aeeb9aa56540dd8068a22a06e3fef82207c9860da861e319920154c4286a991efadad235ecd006041c38a3122b3850d6ce0bbaa0c8250c43d6291
|
||||
DIST meson-1.6.0.tar.gz 2277602 BLAKE2B c1d8f143b17fab90c6128a721ac45b9ed6b85d67272149058e74ab827822b6f2c84ebdc261290585e6af38ab5dca52ca013de9b7be70922c96260fc5ee708893 SHA512 8805f07d0cfe2050305eff009b20973bfe3aab808a263479ed98a31fa026c1a378285928c2dd058e4224abc1b347aeee5c1628c964375135e9b4647819a119bc
|
||||
DIST meson-1.6.0.tar.gz.asc 833 BLAKE2B 4cb8483a0b40330f71c86b9ede2dbccf2eb430138508983232924d70512100a36094974048783d814b9d83c11719f4be5a6541dc0eeaee3044048c38f28106c4 SHA512 4f1f47a5aafc8de8180a47303f2ea2d7dff1b792ee3e1dbf64bd96ea64b2a1696b664fb3ea4169b73c7a950f4371481c083f18ab11fdaf3bccf2b8671e40cd7d
|
||||
DIST meson-reference-1.4.2.3 339324 BLAKE2B 1a4fbd8c27a8cfba773777eabd2ebaa0f76ec0c61dcfe1c7b4483737b348ff9528d68f26e68d7d40b2e1875611eed5b9a31c1cf55fed8eabb42fc1e31d9ef14b SHA512 8b8ec43e812599203ec44c08805eb6818485805c45b9c69802261eaa35efc97846a96f6472c6b1ef5f6c703e7153fd957df7b805f173ca3400a2030dfbe002ca
|
||||
DIST meson-reference-1.5.1.3 341110 BLAKE2B 5267c2eea1b1281f87e63eb08aa928257dd98088b4d5c27c2785d2d8066c2c28536f7f56bf804ffe37d2f51552c91f31ff7e2729f3b2485d594a9e44a0df9ab1 SHA512 2d36e87e9bc2de0b958f4b20544b0bd9f2b0ffb646768e68fefcd5dfb8f09c24db40f27208b5f2d1f6ba02e7465f68a538ea72be118670c76e0959e090a42cf3
|
||||
DIST meson-reference-1.5.2.3 341110 BLAKE2B 0d588b796f7f2da2dcb0e7822acde6a9a461930da4bfead3cf9148fa0fac18cd0ccbc6e891f555c973836f1c16b4eae299908a838a0b6843293de8815d30fc23 SHA512 64715ce2113e362e7d67179fe13566bc8f84ce7f4e6d795b836f42455a871173fee06e3e969e2996022d7e6c9b4b5379587a4c0c3d97b4bca527fb8902d3547f
|
||||
DIST meson-reference-1.6.0rc1.3 343734 BLAKE2B 6d10d99158e2905140a7a318e780e19f5e589103657194b5b669bb48e83c4ed28e152ae9cd8dd2d65b643572012f215a339df9ca530e075c6d88d383ccd2d29e SHA512 4e298dedb829f630ed47854325c24f2c1948db91627f7e8067bf81483f33e714a9439713ce170f42dd66ee07314d7b0ad032a46241898c7e981546c772c4a26c
|
||||
DIST meson-reference-1.6.0.3 343730 BLAKE2B 18704b557298da2ea1f3edb4ed6c421bff3f973a215e56b340de2e78b1330e13eb00830cf44c3a8d04fd685ec6f8e6d078a4b9f03cf5b9e5413cbbfce55a22dd SHA512 2752b51dfa404ebae107f6579acca4268140aba8b1a672762fa4fa66819dc4449560313c5eb6c17433cc2cf273ce57d3d04b846bddf74902825b530de777f4ea
|
||||
|
||||
@ -33,7 +33,7 @@ else
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg
|
||||
|
||||
if [[ ${PV} != *_rc* ]] ; then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
@ -15,7 +15,7 @@ if [[ ${PV} == 9999 ]]; then
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://github.com/ninja-build/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
GTEST_VER=1.14.0
|
||||
|
||||
@ -1,2 +1,2 @@
|
||||
DIST gtest-1.13.0.tar.gz 862871 BLAKE2B d2768332c233d62f7a5f5332b63dc587c96c24765b2eeaa4f4caf5d421b175aa850d81cec4f50eeef9e06d4b86cb959555b4c2862a197ce3cb86d61fcb51f5d1 SHA512 70c0cfb1b4147bdecb467ecb22ae5b5529eec0abc085763213a796b7cdbd81d1761d12b342060539b936fa54f345d33f060601544874d6213fdde79111fa813e
|
||||
DIST gtest-1.14.0.tar.gz 867764 BLAKE2B c457f55ac572b9fb1553eee3df7eeeaf1e7dd2c3d747dd5e90dd279038fa5c71bb7b7d9ba1cf7e6143898b2a1d24d100584bd2a48ded41a426870c4825eec1b2 SHA512 765c326ccc1b87a01027385e69238266e356361cd4ee3e18e3c9d137a5d11fa5d657c164d02dd1be8fe693c8e10f2b580588dbfa57d27f070e2750f50d3e662c
|
||||
DIST gtest-1.15.2.tar.gz 872667 BLAKE2B 2525d7a8572364cc2c2c129197201fc31e3cb4aadf4be37a995447a9b8e393205628e666dd190dca9a169b693883a5a2a5cafd6432cc3d1263a0c834ff8cf121 SHA512 9046841044a2bf7edfd96854ad9c44ffae4fcb9fb59a075b367507c0762a98eb32cb6968d46663228272e26321e96f4dd287c95baa22c6af9bad902b8b6ede4e
|
||||
|
||||
@ -0,0 +1,17 @@
|
||||
Similar to the bazel build, gtest is supposed to pass --has_absl_flags to
|
||||
gtest_help_test if building with abseil support but neglects to.
|
||||
|
||||
--- a/googletest/CMakeLists.txt
|
||||
+++ b/googletest/CMakeLists.txt
|
||||
@@ -293,7 +293,11 @@
|
||||
py_test(googletest-filter-unittest)
|
||||
|
||||
cxx_executable(gtest_help_test_ test gtest_main)
|
||||
+ if(NOT GTEST_HAS_ABSL)
|
||||
py_test(gtest_help_test)
|
||||
+ else()
|
||||
+ py_test(gtest_help_test --has_absl_flags)
|
||||
+ endif()
|
||||
|
||||
cxx_executable(googletest-list-tests-unittest_ test gtest)
|
||||
py_test(googletest-list-tests-unittest)
|
||||
@ -0,0 +1,32 @@
|
||||
dev-libs/re2 is built with a Makefile which doesn't install any cmake modules.
|
||||
For now, use pkgconfig.
|
||||
|
||||
Bug: https://bugs.gentoo.org/940734
|
||||
Signed-off-by: Peter Levine <plevine457@gmail.com>
|
||||
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -25,7 +25,9 @@
|
||||
find_package(absl REQUIRED)
|
||||
endif()
|
||||
if(NOT TARGET re2::re2)
|
||||
- find_package(re2 REQUIRED)
|
||||
+ find_package(PkgConfig REQUIRED)
|
||||
+ pkg_check_modules(re2 REQUIRED IMPORTED_TARGET re2)
|
||||
+ add_library(re2::re2 ALIAS PkgConfig::re2)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
--- a/googletest/cmake/Config.cmake.in
|
||||
+++ b/googletest/cmake/Config.cmake.in
|
||||
@@ -6,7 +6,9 @@
|
||||
endif()
|
||||
if (@GTEST_HAS_ABSL@)
|
||||
find_dependency(absl)
|
||||
- find_dependency(re2)
|
||||
+ find_package(PkgConfig)
|
||||
+ pkg_check_modules(re2 IMPORTED_TARGET re2)
|
||||
+ add_library(re2::re2 ALIAS PkgConfig::re2)
|
||||
endif()
|
||||
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/@targets_export_name@.cmake")
|
||||
@ -1,78 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Python is required for tests and some build tasks.
|
||||
PYTHON_COMPAT=( python3_{9..11} )
|
||||
|
||||
inherit cmake-multilib python-any-r1
|
||||
|
||||
if [[ ${PV} == "9999" ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/google/googletest"
|
||||
else
|
||||
if [[ -z ${GOOGLETEST_COMMIT} ]]; then
|
||||
SRC_URI="https://github.com/google/googletest/archive/refs/tags/v${PV}.tar.gz
|
||||
-> ${P}.tar.gz"
|
||||
S="${WORKDIR}"/googletest-${PV}
|
||||
else
|
||||
SRC_URI="https://github.com/google/googletest/archive/${GOOGLETEST_COMMIT}.tar.gz
|
||||
-> ${P}.tar.gz"
|
||||
S="${WORKDIR}"/googletest-${GOOGLETEST_COMMIT}
|
||||
fi
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Google C++ Testing Framework"
|
||||
HOMEPAGE="https://github.com/google/googletest"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
IUSE="doc examples test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="test? ( ${PYTHON_DEPS} )"
|
||||
|
||||
pkg_setup() {
|
||||
use test && python-any-r1_pkg_setup
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
cmake_src_prepare
|
||||
|
||||
sed -i -e '/set(cxx_base_flags /s:-Werror::' \
|
||||
googletest/cmake/internal_utils.cmake || die "sed failed!"
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DBUILD_GMOCK=ON
|
||||
-DINSTALL_GTEST=ON
|
||||
|
||||
# tests
|
||||
-Dgmock_build_tests=$(usex test)
|
||||
-Dgtest_build_tests=$(usex test)
|
||||
-DPYTHON_EXECUTABLE="${PYTHON}"
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# Exclude tests that fail with FEATURES="usersandbox"
|
||||
cmake_src_test -E "googletest-(death-test|port)-test"
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
|
||||
newdoc googletest/README.md README.googletest.md
|
||||
newdoc googlemock/README.md README.googlemock.md
|
||||
|
||||
use doc && dodoc -r docs/.
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
dodoc googletest/samples/*.{cc,h}
|
||||
fi
|
||||
}
|
||||
@ -6,7 +6,7 @@ EAPI=8
|
||||
# Python is required for tests and some build tasks.
|
||||
PYTHON_COMPAT=( python3_{10..13} )
|
||||
|
||||
inherit cmake-multilib python-any-r1
|
||||
inherit cmake-multilib flag-o-matic python-any-r1 toolchain-funcs
|
||||
|
||||
if [[ ${PV} == "9999" ]]; then
|
||||
inherit git-r3
|
||||
@ -21,7 +21,7 @@ else
|
||||
-> ${P}.tar.gz"
|
||||
S="${WORKDIR}"/googletest-${GOOGLETEST_COMMIT}
|
||||
fi
|
||||
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Google C++ Testing Framework"
|
||||
@ -29,34 +29,51 @@ HOMEPAGE="https://github.com/google/googletest"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
IUSE="doc examples test"
|
||||
IUSE="abseil doc examples test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="test? ( ${PYTHON_DEPS} )"
|
||||
DEPEND="abseil? (
|
||||
dev-cpp/abseil-cpp:=[${MULTILIB_USEDEP}]
|
||||
dev-libs/re2:=[${MULTILIB_USEDEP}] )"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
# Exclude tests that fail with FEATURES="usersandbox"
|
||||
CMAKE_SKIP_TESTS=( "googletest-(death-test|port)-test" )
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/gtest-find-re2-with-pkgconfig.patch
|
||||
"${FILESDIR}"/gtest-1.15.2-fix-gtest_help_test.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
use test && python-any-r1_pkg_setup
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
if use arm && [[ $(tc-is-softfloat) =~ (softfp)|(no) ]]; then
|
||||
replace-flags -O* -O1 # bug #925093
|
||||
fi
|
||||
|
||||
local mycmakeargs=(
|
||||
-DBUILD_GMOCK=ON
|
||||
-DINSTALL_GTEST=ON
|
||||
-DGTEST_HAS_ABSL=$(usex abseil)
|
||||
|
||||
# tests
|
||||
-Dgmock_build_tests=$(usex test)
|
||||
-Dgtest_build_tests=$(usex test)
|
||||
)
|
||||
use test && mycmakeargs+=( -DPython3_EXECUTABLE="${PYTHON}" )
|
||||
if use test; then
|
||||
if use x86 || use x86-linux; then
|
||||
append-cxxflags -ffloat-store # bug #905007
|
||||
fi
|
||||
mycmakeargs+=( -DPython3_EXECUTABLE="${PYTHON}" )
|
||||
fi
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# Exclude tests that fail with FEATURES="usersandbox"
|
||||
cmake_src_test -E "googletest-(death-test|port)-test"
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
|
||||
@ -21,7 +21,7 @@ else
|
||||
-> ${P}.tar.gz"
|
||||
S="${WORKDIR}"/googletest-${GOOGLETEST_COMMIT}
|
||||
fi
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Google C++ Testing Framework"
|
||||
@ -29,10 +29,22 @@ HOMEPAGE="https://github.com/google/googletest"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
IUSE="doc examples test"
|
||||
IUSE="abseil doc examples test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
BDEPEND="test? ( ${PYTHON_DEPS} )"
|
||||
DEPEND="abseil? (
|
||||
dev-cpp/abseil-cpp:=[${MULTILIB_USEDEP}]
|
||||
dev-libs/re2:=[${MULTILIB_USEDEP}] )"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
# Exclude tests that fail with FEATURES="usersandbox"
|
||||
CMAKE_SKIP_TESTS=( "googletest-(death-test|port)-test" )
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/gtest-find-re2-with-pkgconfig.patch
|
||||
"${FILESDIR}"/gtest-1.15.2-fix-gtest_help_test.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
use test && python-any-r1_pkg_setup
|
||||
@ -46,6 +58,7 @@ multilib_src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DBUILD_GMOCK=ON
|
||||
-DINSTALL_GTEST=ON
|
||||
-DGTEST_HAS_ABSL=$(usex abseil)
|
||||
|
||||
# tests
|
||||
-Dgmock_build_tests=$(usex test)
|
||||
@ -61,11 +74,6 @@ multilib_src_configure() {
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# Exclude tests that fail with FEATURES="usersandbox"
|
||||
cmake_src_test -E "googletest-(death-test|port)-test"
|
||||
}
|
||||
|
||||
multilib_src_install_all() {
|
||||
einstalldocs
|
||||
|
||||
|
||||
@ -9,6 +9,11 @@
|
||||
<email>proxy-maint@gentoo.org</email>
|
||||
<name>Proxy Maintainers</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="abseil">
|
||||
Build with functionality provided by <pkg>dev-cpp/abseil-cpp</pkg> and <pkg>dev-libs/re2</pkg>
|
||||
</flag>
|
||||
</use>
|
||||
<upstream>
|
||||
<doc lang="en">https://github.com/google/googletest/tree/HEAD/docs</doc>
|
||||
<remote-id type="github">google/googletest</remote-id>
|
||||
|
||||
@ -74,7 +74,7 @@ LICENSE="GPL-3+ LGPL-2.1+"
|
||||
SLOT="0"
|
||||
IUSE="cet debuginfod guile lzma multitarget nls +python +server sim source-highlight test vanilla xml xxhash zstd"
|
||||
if [[ -n ${REGULAR_RELEASE} ]] ; then
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
@ -74,7 +74,7 @@ LICENSE="GPL-3+ LGPL-2.1+"
|
||||
SLOT="0"
|
||||
IUSE="cet debuginfod guile lzma multitarget nls +python +server sim source-highlight test vanilla xml xxhash zstd"
|
||||
if [[ -n ${REGULAR_RELEASE} ]] ; then
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
|
||||
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
|
||||
fi
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
@ -8,8 +8,10 @@ DIST Python-3.12.6.tar.xz 20434028 BLAKE2B 527fafdbfd0c1784ff72a93cdeb3f49666bae
|
||||
DIST Python-3.12.6.tar.xz.asc 963 BLAKE2B d5f9e4c5053610a1a53769278e69d8a25e2fb047afb2a55dfee67917d8d200ebc159e614327ac87f34a4a9718cb3436b55190322ee231116b26074a78bb72642 SHA512 91a15bb7e8dd26616a2cdabe69c3ee81668cc67cb55a88b2be20433d24c9f8ae41c8f93f67aff2fa5858cd5b94600409cd472bd437a2fd33153483734ecd863f
|
||||
DIST Python-3.12.7.tar.xz 20444032 BLAKE2B eed8744261cab3b401963ec5187a8b814adb9a18f8d0a6a3d59c027a83cf8408524af9b20204b0a0861d173cc33c45ae37bb1542a1ace3344dc59c649087ff1f SHA512 4a363d3f852ad8f4fd1484aa4cec35494a3811be48ef67fadb2bdf2e2489ed07dc78fad6ab475257db503ddd64d39f9800f23a1c94b6bbd15b7f632cff0c90ae
|
||||
DIST Python-3.12.7.tar.xz.asc 963 BLAKE2B 8c7db3d1971d93a10c611a2e6dd3679d0b331b48df87b5fe410b089061e48753d98af67084d4f051a31ae803fce3aa3c7af7cba9c692640f50068bd1e46f40e6 SHA512 4d0a7a0da2c81888e93d8ff89ca2ed4bb85a7b0bd00f0d54a14e2c201affac2677ef3984d2b5aea253e624f6465548d9032eefdd9033c1eb3864d82cfd8d3df0
|
||||
DIST Python-3.13.0rc3.tar.xz 22527884 BLAKE2B 9c6423e9871b30af70ece10598e798da443b40b3e40cae86ec59d396184df005627a5edeedf34d31c7953f972850e41d1cc708edd8e39c1327d319b0f6973049 SHA512 152e5b6d64048c1779612e66d5999c424ca7c61c8a0f4973f7b3019629d6a7923b422aec0bee30e7bc2d589a807d87e15a19b8fb4446bcf082eb663885a49b36
|
||||
DIST Python-3.13.0rc3.tar.xz.asc 963 BLAKE2B e03d902eee320939cb77094e1b64e0101d0172ebdcc502255da1c0fc84476f43fafe900321c78cd78248a751b3a3921572ba4f305ed77ed78f175184b21f667f SHA512 c8f80b12f5e3021a11fc3ef5ce84572db9de7165ce89a03206cb0727b54f90ca2e444a16df064e6423e15b7bf2364db088b0c9315967dd340e735eabf7b892ce
|
||||
DIST Python-3.13.0.tar.xz 22532980 BLAKE2B 4a4e397199402de8c9fe8e4d63443ed972cbe8a4f541743908d699c7987127d159d600fd14145b6a946e8671426279d230c9155fdc5863c1e49a945eedcbf21b SHA512 44a143c9b96b55b01885ec020c3364265bda55289615cd7d5071915b0d0178a6f35e7551a89090001fcb7f3172d38177a56bf8b8532b15c9dbc50295c9210152
|
||||
DIST Python-3.13.0.tar.xz.asc 963 BLAKE2B d05f02692a9fea42b73dbfe5dc42bd6533555e5ecb848510d2b94bb7f0e55d4a0f89bcd20b073ed2c7f7a68be35b12cb6dbff6bc16fc9a4592ded2c339ada7fd SHA512 1b8bb0fe4eb93e31ec1770e90b94d44b5864c0391aad5dcba3a30d8e505d9b17107385414353c0060007f8a536254f49b8e919f36ddf6421a6e4330f817f1a3e
|
||||
DIST Python-3.14.0a1.tar.xz 22613224 BLAKE2B 1427d8a8e500bceb667852dd227bf00d1dc77cde6513e3202d5e0fb8e0019b4f214ac1ee1686e833d52f4200c667da573e84bea6eb19f463d018d484b82cfa9f SHA512 f96e8923662c1ba5ffb99673e59f5ce2366b13ea853e21e5a5c74efcf0a36f20d00612a9b882caf6482d2179b7315ae0331dcb45be19b7b9676f0ed4bf2256b8
|
||||
DIST Python-3.14.0a1.tar.xz.sigstore 4799 BLAKE2B 79c271a133e49f46aa478f9645a9c6998081538a05bd20395155c9b490cf13e11c47bb72a60f82b8297fb870af1c67922af648c9ba8fab6e3b31f7040991c39f SHA512 5115325d0a2f43bd0cc3d0888cad78deb90dfb36976c3341f0c237b15334883d1df3fee1dce53af7fe70ff9d630a98c9df4c2524f36183f61a74dd69f69e6257
|
||||
DIST Python-3.8.20.tar.xz 18962788 BLAKE2B 715c75e0c0a3d3b77af7f07478311bb0554b80aac72915be703aa2d0dd6459a972e5669808e64da14a0b91bb183e00655055c1726f302dc3ccd8721e3b4ae3e6 SHA512 3c9341ee1fd33cb687958dcf2b7c0c7700489726c4d530c3e9d9537d46a6ab534541a4b312232d8505bea395a07e4518c42d75fb7571103e6b266f8f44115c61
|
||||
DIST Python-3.8.20.tar.xz.asc 833 BLAKE2B 5c86c15a1090b42e42bb7512565b1a7ad9d2137d59e9fd1ab0f83fdfc37dfcf184389418d6703db809e9c8c04a169af292665a2b58bf5dc61b7724ecbb4132d9 SHA512 a751ae0407a593d97acac4d5f8a0456580c753efa12a7d960125c219b4897fdb26fc1ffd43d8ea33ad1449162dd3b2904c16b6c51c57561ba73de3ffa62e0eed
|
||||
DIST Python-3.9.20.tar.xz 19648968 BLAKE2B 80a337ff406130599b8320068d11bc275d23473cedd7c85fcb9e40134f0f2d533be6e712139e788a6423cdc74cea938f306aa37c2a5099e3051f3e390159279c SHA512 c828f33edf1704e3149499d6d34e89264cb5cdb2b09ff05561641b359716d7996f0fe928629e09f006b1fd7850fdaf937275919c7fdd83f5efc32707c64d814b
|
||||
@ -20,6 +22,7 @@ DIST python-gentoo-patches-3.11.10_p1.tar.xz 10592 BLAKE2B 1cc02d22b55cb76beba13
|
||||
DIST python-gentoo-patches-3.12.6_p2.tar.xz 8144 BLAKE2B 2f36ce972e0b3e2884c9df629e3aeb1af05e4c77dffb866ff28e08a0a7df3c7cf36a9de250d148d909c07fd5bad483c95b3267818657c04e7d0d6fe512e21f9a SHA512 caa86c6cf693f9293b3aa8944452d117b78c1c3f8d6a6aa658cb5c2d2ffb0cecc6cf14b293872bd2101766ee7167ba88183904b2814090f8cbc64c1fa3b771be
|
||||
DIST python-gentoo-patches-3.12.6_p4-r1.tar.xz 9072 BLAKE2B 831f6c4284035832e0536ad3211d10c078e6c356e1fa593dd45984b29253deaf703bcb71e1b488508992dd37d5a140591c9193f1620bb966e39b048e4d5c6746 SHA512 9c61e0396c98fb45f3dccad9165e3f2b7bbeabd4a6fe88cc6e05a9d3012e39068571e63527dc831efaf24cb0e8fee75f60454481b2d1a0a44bedba69a7ed5c95
|
||||
DIST python-gentoo-patches-3.12.7_p1-r1.tar.xz 10552 BLAKE2B c71ffbbaa4dccd012fced7979c54f2b895ac207a892fd4b0118ab9ef678931c5449f6205855bf5fab9bc7fb5e5af0fc7c5b89bab608e5539855db571bb9d3aa4 SHA512 62207e2eb44e4eeb464ba4bdcefe15b3e03793793cbd033c153cdbf1c9a861779f3bb7259dc09e786c183450123ea283583d9870eca9d6c7b25e5f3dba6f89d6
|
||||
DIST python-gentoo-patches-3.13.0rc3-r1.tar.xz 8324 BLAKE2B 8a8124bf2c8bcb93113e7a17394dd83087c7f7d49e56e6878947029c496dcf8f6acb1da62124c73ee4121639fbaa6c3cbea13032c786c8b57bbbc379386394cf SHA512 cdfdd0f744f87438863432880791c611ae14f6169fdce08bfc22deb1e5b1f62aeb87044e6f7b15524b26bef8383ca1641d9b2861558bba597a74551e3ef478a7
|
||||
DIST python-gentoo-patches-3.13.0.tar.xz 8316 BLAKE2B 8fb8ba8f41f310140ad7066b614952023112d5043e5d82058364125611785144c1843e87eecb7669bcbab51c40d0694069526219f7419a7009517ce0821b74ba SHA512 0eb31ebfa3411020aa70b3b66fd7eec98b4b7a686b0e8f1f7ed76a8186a7c1ee85ccd9565a86a1d7ec13b975855eeb7303036af05e2dfdce3d64e4ad99299df4
|
||||
DIST python-gentoo-patches-3.14.0a1-r2.tar.xz 6008 BLAKE2B bb833fb522e008eb79355fd13952c4fc3efc4684e9a2f26680d57b2bb137d25b461ce34ac7cbf0a7c64a558fa2cd63ad393f23cb90f620395efefd1c01bf01f5 SHA512 60568f83765f8045c789391b1f44ab6ac633a00ca84a6c93afb6067294093dd87a262feb6ea1d0879ed90bcdfa7d02054da5974cb9218686fbe629bdf11d0792
|
||||
DIST python-gentoo-patches-3.8.20_p2.tar.xz 42296 BLAKE2B c0f2c4d0adcb6c10eb68342b911016666cb68308717a5ca1369100a39229ce16c6e9dfdf9e1b4cffe0191d03ca5ee7d9568cd24885fd0f4f32f14e2e8c0a96a3 SHA512 cb9e98c0dd823b6e4f8a60e9095ab58e596cd9411b675678a0d4adefc92b37e14cecc7cecb82e287ac34a9ce1d4595f261b0736bcc9fc62c43c7d8c0b3be70e7
|
||||
DIST python-gentoo-patches-3.9.20_p1.tar.xz 34944 BLAKE2B 332454661adc03033c7e8a5fcc91081b7d405826e9bf89bb2c2e178a0795e4415c9e87ae923756470ee973441f242e194b397354964b8f43dadd4965d210a4f4 SHA512 19bf7227535526a733633723b75d49786dfd8738595c1115b4e05665bc13a1ea70cbf0cc62cb27e81c75f5db2aa56ab985eaa5abde6243697caccb2cb5288005
|
||||
|
||||
@ -14,10 +14,6 @@
|
||||
to bootstrap pip and setuptools (if disabled, it will
|
||||
be only possible to use venv `--without-pip`)
|
||||
</flag>
|
||||
<flag name="gil">
|
||||
Build with Global Interpreter Lock. Disable to use
|
||||
the experimental freethreading mode.
|
||||
</flag>
|
||||
<flag name="jit">
|
||||
Enable experimental Just-In-Time compilation support.
|
||||
</flag>
|
||||
|
||||
@ -459,6 +459,7 @@ src_compile() {
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
local -x TMPDIR=/tmp
|
||||
fi
|
||||
|
||||
# also need to clear the flags explicitly here or they end up
|
||||
@ -493,6 +494,7 @@ src_test() {
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
local -x TMPDIR=/tmp
|
||||
|
||||
nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
|
||||
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||
|
||||
@ -469,6 +469,7 @@ src_compile() {
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
local -x TMPDIR=/tmp
|
||||
fi
|
||||
|
||||
# also need to clear the flags explicitly here or they end up
|
||||
@ -508,6 +509,7 @@ src_test() {
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
local -x TMPDIR=/tmp
|
||||
|
||||
nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
|
||||
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||
|
||||
@ -28,7 +28,7 @@ S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="PSF-2"
|
||||
SLOT="${PYVER}"
|
||||
KEYWORDS="~alpha amd64 arm ~arm64 hppa ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc x86"
|
||||
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc x86"
|
||||
IUSE="
|
||||
bluetooth build debug +ensurepip examples gdbm libedit
|
||||
+ncurses pgo +readline +sqlite +ssl test tk valgrind
|
||||
|
||||
@ -466,6 +466,7 @@ src_compile() {
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
local -x TMPDIR=/tmp
|
||||
fi
|
||||
|
||||
# also need to clear the flags explicitly here or they end up
|
||||
@ -505,6 +506,7 @@ src_test() {
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
local -x TMPDIR=/tmp
|
||||
|
||||
nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
|
||||
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||
|
||||
657
sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.0-r100.ebuild
vendored
Normal file
657
sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.0-r100.ebuild
vendored
Normal file
@ -0,0 +1,657 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="8"
|
||||
|
||||
LLVM_COMPAT=( 18 )
|
||||
LLVM_OPTIONAL=1
|
||||
WANT_LIBTOOL="none"
|
||||
|
||||
inherit autotools check-reqs flag-o-matic linux-info llvm-r1
|
||||
inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs
|
||||
inherit verify-sig
|
||||
|
||||
MY_PV=${PV/_}
|
||||
MY_P="Python-${MY_PV%_p*}"
|
||||
PYVER="$(ver_cut 1-2)t"
|
||||
PATCHSET="python-gentoo-patches-${MY_PV}"
|
||||
|
||||
DESCRIPTION="Freethreading (no-GIL) version of Python programming language"
|
||||
HOMEPAGE="
|
||||
https://www.python.org/
|
||||
https://github.com/python/cpython/
|
||||
"
|
||||
SRC_URI="
|
||||
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
|
||||
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
|
||||
verify-sig? (
|
||||
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
|
||||
)
|
||||
"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="PSF-2"
|
||||
SLOT="${PYVER}"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
IUSE="
|
||||
bluetooth build debug +ensurepip examples gdbm jit
|
||||
libedit +ncurses pgo +readline +sqlite +ssl test tk valgrind
|
||||
"
|
||||
REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# Do not add a dependency on dev-lang/python to this ebuild.
|
||||
# If you need to apply a patch which requires python for bootstrapping, please
|
||||
# run the bootstrap code on your dev box and include the results in the
|
||||
# patchset. See bug 447752.
|
||||
|
||||
RDEPEND="
|
||||
app-arch/bzip2:=
|
||||
app-arch/xz-utils:=
|
||||
app-crypt/libb2
|
||||
>=dev-libs/expat-2.1:=
|
||||
dev-libs/libffi:=
|
||||
dev-libs/mpdecimal:=
|
||||
dev-python/gentoo-common
|
||||
>=sys-libs/zlib-1.1.3:=
|
||||
virtual/libintl
|
||||
ensurepip? ( dev-python/ensurepip-pip )
|
||||
gdbm? ( sys-libs/gdbm:=[berkdb] )
|
||||
kernel_linux? ( sys-apps/util-linux:= )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2:= )
|
||||
readline? (
|
||||
!libedit? ( >=sys-libs/readline-4.1:= )
|
||||
libedit? ( dev-libs/libedit:= )
|
||||
)
|
||||
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
|
||||
ssl? ( >=dev-libs/openssl-1.1.1:= )
|
||||
tk? (
|
||||
>=dev-lang/tcl-8.0:=
|
||||
>=dev-lang/tk-8.0:=
|
||||
dev-tcltk/blt:=
|
||||
dev-tcltk/tix
|
||||
)
|
||||
"
|
||||
# bluetooth requires headers from bluez
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
test? (
|
||||
dev-python/ensurepip-pip
|
||||
dev-python/ensurepip-setuptools
|
||||
dev-python/ensurepip-wheel
|
||||
)
|
||||
valgrind? ( dev-debug/valgrind )
|
||||
"
|
||||
# autoconf-archive needed to eautoreconf
|
||||
BDEPEND="
|
||||
dev-build/autoconf-archive
|
||||
app-alternatives/awk
|
||||
virtual/pkgconfig
|
||||
jit? (
|
||||
$(llvm_gen_dep '
|
||||
sys-devel/clang:${LLVM_SLOT}
|
||||
sys-devel/llvm:${LLVM_SLOT}
|
||||
')
|
||||
)
|
||||
verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 )
|
||||
"
|
||||
RDEPEND+="
|
||||
!build? ( app-misc/mime-types )
|
||||
"
|
||||
if [[ ${PV} != *_alpha* ]]; then
|
||||
RDEPEND+="
|
||||
dev-lang/python-exec[python_targets_python${PYVER/./_}(-)]
|
||||
"
|
||||
fi
|
||||
|
||||
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc
|
||||
|
||||
# large file tests involve a 2.5G file being copied (duplicated)
|
||||
CHECKREQS_DISK_BUILD=5500M
|
||||
|
||||
QA_PKGCONFIG_VERSION=${PYVER%t}
|
||||
# false positives -- functions specific to *BSD
|
||||
QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
|
||||
|
||||
declare -rgA PYTHON_KERNEL_CHECKS=(
|
||||
["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589
|
||||
["DNOTIFY"]="test_fcntl" # bug 938662
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
if use pgo || use test; then
|
||||
check-reqs_pkg_pretend
|
||||
fi
|
||||
|
||||
ewarn "Freethreading build is considered experimental upstream. Using it"
|
||||
ewarn "could lead to unexpected breakage, including race conditions"
|
||||
ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless"
|
||||
ewarn "you can reproduce the problem with dev-lang/python. Instead,"
|
||||
ewarn "please consider reporting freethreading problems upstream."
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
if [[ ${MERGE_TYPE} != binary ]]; then
|
||||
use jit && llvm-r1_pkg_setup
|
||||
if use test || use pgo; then
|
||||
check-reqs_pkg_setup
|
||||
|
||||
local CONFIG_CHECK
|
||||
for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do
|
||||
CONFIG_CHECK+="~${f} "
|
||||
done
|
||||
linux-info_pkg_setup
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if use verify-sig; then
|
||||
verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
|
||||
fi
|
||||
default
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Ensure that internal copies of expat and libffi are not used.
|
||||
# TODO: Makefile has annoying deps on expat headers
|
||||
#rm -r Modules/expat || die
|
||||
|
||||
local PATCHES=(
|
||||
"${WORKDIR}/${PATCHSET}"
|
||||
)
|
||||
|
||||
default
|
||||
|
||||
# force the correct number of jobs
|
||||
# https://bugs.gentoo.org/737660
|
||||
sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die
|
||||
|
||||
# breaks tests when using --with-wheel-pkg-dir
|
||||
rm -r Lib/test/wheeldata || die
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
build_cbuild_python() {
|
||||
# Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
|
||||
local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
|
||||
|
||||
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
|
||||
# propagated to sysconfig for built extensions
|
||||
#
|
||||
# -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway)
|
||||
local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto"
|
||||
local -x LDFLAGS_NODIST=${BUILD_LDFLAGS}
|
||||
local -x CFLAGS= LDFLAGS=
|
||||
local -x BUILD_CFLAGS="${CFLAGS_NODIST}"
|
||||
local -x BUILD_LDFLAGS=${LDFLAGS_NODIST}
|
||||
|
||||
# We need to build our own Python on CBUILD first, and feed it in.
|
||||
# bug #847910
|
||||
local myeconfargs_cbuild=(
|
||||
"${myeconfargs[@]}"
|
||||
|
||||
--prefix="${BROOT}"/usr
|
||||
--libdir="${cbuild_libdir:2}"
|
||||
|
||||
# Avoid needing to load the right libpython.so.
|
||||
--disable-shared
|
||||
|
||||
# As minimal as possible for the mini CBUILD Python
|
||||
# we build just for cross to satisfy --with-build-python.
|
||||
--without-lto
|
||||
--without-readline
|
||||
--disable-optimizations
|
||||
)
|
||||
|
||||
mkdir "${WORKDIR}"/${P}-${CBUILD} || die
|
||||
pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
|
||||
|
||||
# Avoid as many dependencies as possible for the cross build.
|
||||
mkdir Modules || die
|
||||
cat > Modules/Setup.local <<-EOF || die
|
||||
*disabled*
|
||||
nis
|
||||
_dbm _gdbm
|
||||
_sqlite3
|
||||
_hashlib _ssl
|
||||
_curses _curses_panel
|
||||
readline
|
||||
_tkinter
|
||||
pyexpat
|
||||
zlib
|
||||
# We disabled these for CBUILD because Python's setup.py can't handle locating
|
||||
# libdir correctly for cross. This should be rechecked for the pure Makefile approach,
|
||||
# and uncommented if needed.
|
||||
#_ctypes
|
||||
EOF
|
||||
|
||||
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
|
||||
|
||||
# Unfortunately, we do have to build this immediately, and
|
||||
# not in src_compile, because CHOST configure for Python
|
||||
# will check the existence of the --with-build-python value
|
||||
# immediately.
|
||||
emake
|
||||
popd &> /dev/null || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# disable automagic bluetooth headers detection
|
||||
if ! use bluetooth; then
|
||||
local -x ac_cv_header_bluetooth_bluetooth_h=no
|
||||
fi
|
||||
|
||||
append-flags -fwrapv
|
||||
filter-flags -malign-double
|
||||
|
||||
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
||||
# PKG_CONFIG needed for cross.
|
||||
tc-export CXX PKG_CONFIG
|
||||
|
||||
local dbmliborder=
|
||||
if use gdbm; then
|
||||
dbmliborder+="${dbmliborder:+:}gdbm"
|
||||
fi
|
||||
|
||||
# Set baseline test skip flags.
|
||||
COMMON_TEST_SKIPS=(
|
||||
# this is actually test_gdb.test_pretty_print
|
||||
-x test_pretty_print
|
||||
)
|
||||
|
||||
# Arch-specific skips. See #931888 for a collection of these.
|
||||
case ${CHOST} in
|
||||
alpha*)
|
||||
COMMON_TEST_SKIPS+=(
|
||||
-x test_builtin
|
||||
-x test_capi
|
||||
-x test_cmath
|
||||
-x test_float
|
||||
# timeout
|
||||
-x test_free_threading
|
||||
-x test_math
|
||||
-x test_numeric_tower
|
||||
-x test_random
|
||||
-x test_statistics
|
||||
# bug 653850
|
||||
-x test_resource
|
||||
-x test_strtod
|
||||
)
|
||||
;;
|
||||
mips*)
|
||||
COMMON_TEST_SKIPS+=(
|
||||
-x test_ctypes
|
||||
-x test_external_inspection
|
||||
-x test_statistics
|
||||
)
|
||||
;;
|
||||
powerpc64-*) # big endian
|
||||
COMMON_TEST_SKIPS+=(
|
||||
-x test_descr
|
||||
)
|
||||
;;
|
||||
riscv*)
|
||||
COMMON_TEST_SKIPS+=(
|
||||
-x test_urllib2
|
||||
)
|
||||
;;
|
||||
sparc*)
|
||||
COMMON_TEST_SKIPS+=(
|
||||
# bug 788022
|
||||
-x test_multiprocessing_fork
|
||||
-x test_multiprocessing_forkserver
|
||||
|
||||
-x test_ctypes
|
||||
-x test_descr
|
||||
# bug 931908
|
||||
-x test_exceptions
|
||||
)
|
||||
;;
|
||||
esac
|
||||
|
||||
# Kernel-config specific skips
|
||||
for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do
|
||||
if ! linux_config_exists || ! linux_chkconfig_present "${option}"
|
||||
then
|
||||
COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" )
|
||||
fi
|
||||
done
|
||||
|
||||
# musl-specific skips
|
||||
use elibc_musl && COMMON_TEST_SKIPS+=(
|
||||
# various musl locale deficiencies
|
||||
-x test__locale
|
||||
-x test_c_locale_coercion
|
||||
-x test_locale
|
||||
-x test_re
|
||||
|
||||
# known issues with find_library on musl
|
||||
# https://bugs.python.org/issue21622
|
||||
-x test_ctypes
|
||||
|
||||
# fpathconf, ttyname errno values
|
||||
-x test_os
|
||||
)
|
||||
|
||||
if use pgo; then
|
||||
local profile_task_flags=(
|
||||
-m test
|
||||
"-j$(makeopts_jobs)"
|
||||
--pgo-extended
|
||||
--verbose3
|
||||
-u-network
|
||||
|
||||
# We use a timeout because of how often we've had hang issues
|
||||
# here. It also matches the default upstream PROFILE_TASK.
|
||||
--timeout 1200
|
||||
|
||||
"${COMMON_TEST_SKIPS[@]}"
|
||||
|
||||
-x test_dtrace
|
||||
|
||||
# All of these seem to occasionally hang for PGO inconsistently
|
||||
# They'll even hang here but be fine in src_test sometimes.
|
||||
# bug #828535 (and related: bug #788022)
|
||||
-x test_asyncio
|
||||
-x test_httpservers
|
||||
-x test_logging
|
||||
-x test_multiprocessing_fork
|
||||
-x test_socket
|
||||
-x test_xmlrpc
|
||||
|
||||
# Hangs (actually runs indefinitely executing itself w/ many cpython builds)
|
||||
# bug #900429
|
||||
-x test_tools
|
||||
|
||||
# Fails in profiling run, passes in src_test().
|
||||
-x test_capi
|
||||
-x test_external_inspection
|
||||
)
|
||||
|
||||
# Arch-specific skips. See #931888 for a collection of these.
|
||||
case ${CHOST} in
|
||||
alpha*)
|
||||
profile_task_flags+=(
|
||||
-x test_os
|
||||
)
|
||||
;;
|
||||
hppa*)
|
||||
profile_task_flags+=(
|
||||
-x test_descr
|
||||
# bug 931908
|
||||
-x test_exceptions
|
||||
-x test_os
|
||||
)
|
||||
;;
|
||||
powerpc64-*) # big endian
|
||||
profile_task_flags+=(
|
||||
# bug 931908
|
||||
-x test_exceptions
|
||||
)
|
||||
;;
|
||||
riscv*)
|
||||
profile_task_flags+=(
|
||||
-x test_statistics
|
||||
)
|
||||
;;
|
||||
esac
|
||||
|
||||
if has_version "app-arch/rpm" ; then
|
||||
# Avoid sandbox failure (attempts to write to /var/lib/rpm)
|
||||
profile_task_flags+=(
|
||||
-x test_distutils
|
||||
)
|
||||
fi
|
||||
local -x PROFILE_TASK="${profile_task_flags[*]}"
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
# glibc-2.30 removes it; since we can't cleanly force-rebuild
|
||||
# Python on glibc upgrade, remove it proactively to give
|
||||
# a chance for users rebuilding python before glibc
|
||||
ac_cv_header_stropts_h=no
|
||||
|
||||
--enable-shared
|
||||
--without-static-libpython
|
||||
--enable-ipv6
|
||||
--infodir='${prefix}/share/info'
|
||||
--mandir='${prefix}/share/man'
|
||||
--with-computed-gotos
|
||||
--with-dbmliborder="${dbmliborder}"
|
||||
--with-libc=
|
||||
--enable-loadable-sqlite-extensions
|
||||
--without-ensurepip
|
||||
--without-lto
|
||||
--with-system-expat
|
||||
--with-system-libmpdec
|
||||
--with-platlibdir=lib
|
||||
--with-pkg-config=yes
|
||||
--with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
|
||||
--disable-gil
|
||||
|
||||
$(use_with debug assertions)
|
||||
$(use_enable jit experimental-jit)
|
||||
$(use_enable pgo optimizations)
|
||||
$(use_with readline readline "$(usex libedit editline readline)")
|
||||
$(use_with valgrind)
|
||||
)
|
||||
|
||||
# https://bugs.gentoo.org/700012
|
||||
if tc-is-lto; then
|
||||
append-cflags $(test-flags-CC -ffat-lto-objects)
|
||||
myeconfargs+=(
|
||||
--with-lto
|
||||
)
|
||||
fi
|
||||
|
||||
# Force-disable modules we don't want built.
|
||||
# See Modules/Setup for docs on how this works. Setup.local contains our local deviations.
|
||||
cat > Modules/Setup.local <<-EOF || die
|
||||
*disabled*
|
||||
nis
|
||||
$(usev !gdbm '_gdbm _dbm')
|
||||
$(usev !sqlite '_sqlite3')
|
||||
$(usev !ssl '_hashlib _ssl')
|
||||
$(usev !ncurses '_curses _curses_panel')
|
||||
$(usev !readline 'readline')
|
||||
$(usev !tk '_tkinter')
|
||||
EOF
|
||||
|
||||
# disable implicit optimization/debugging flags
|
||||
local -x OPT=
|
||||
|
||||
if tc-is-cross-compiler ; then
|
||||
build_cbuild_python
|
||||
myeconfargs+=(
|
||||
# Point the imminent CHOST build to the Python we just
|
||||
# built for CBUILD.
|
||||
--with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
|
||||
)
|
||||
fi
|
||||
|
||||
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
|
||||
# propagated to sysconfig for built extensions
|
||||
local -x CFLAGS_NODIST=${CFLAGS}
|
||||
local -x LDFLAGS_NODIST=${LDFLAGS}
|
||||
local -x CFLAGS= LDFLAGS=
|
||||
|
||||
# Fix implicit declarations on cross and prefix builds. Bug #674070.
|
||||
if use ncurses; then
|
||||
append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
|
||||
fi
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
|
||||
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
|
||||
eerror "configure has detected that the sem_open function is broken."
|
||||
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
|
||||
die "Broken sem_open function (bug 496328)"
|
||||
fi
|
||||
|
||||
# install epython.py as part of stdlib
|
||||
echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Ensure sed works as expected
|
||||
# https://bugs.gentoo.org/594768
|
||||
local -x LC_ALL=C
|
||||
export PYTHONSTRICTEXTENSIONBUILD=1
|
||||
|
||||
# Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
|
||||
# end up writing bytecode & violating sandbox.
|
||||
# bug #831897
|
||||
local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
|
||||
|
||||
# Gentoo hack to disable accessing system site-packages
|
||||
export GENTOO_CPYTHON_BUILD=1
|
||||
|
||||
if use pgo ; then
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
local -x TMPDIR=/tmp
|
||||
fi
|
||||
|
||||
# also need to clear the flags explicitly here or they end up
|
||||
# in _sysconfigdata*
|
||||
emake CPPFLAGS= CFLAGS= LDFLAGS=
|
||||
|
||||
# Restore saved value from above.
|
||||
local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
|
||||
|
||||
# Work around bug 329499. See also bug 413751 and 457194.
|
||||
if has_version dev-libs/libffi[pax-kernel]; then
|
||||
pax-mark E python
|
||||
else
|
||||
pax-mark m python
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Tests will not work when cross compiling.
|
||||
if tc-is-cross-compiler; then
|
||||
elog "Disabling tests due to crosscompiling."
|
||||
return
|
||||
fi
|
||||
|
||||
# this just happens to skip test_support.test_freeze that is broken
|
||||
# without bundled expat
|
||||
# TODO: get a proper skip for it upstream
|
||||
local -x LOGNAME=buildbot
|
||||
|
||||
local test_opts=(
|
||||
--verbose3
|
||||
-u-network
|
||||
-j "$(makeopts_jobs)"
|
||||
"${COMMON_TEST_SKIPS[@]}"
|
||||
)
|
||||
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
local -x TMPDIR=/tmp
|
||||
|
||||
nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
|
||||
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||
local ret=${?}
|
||||
|
||||
[[ ${ret} -eq 0 ]] || die "emake test failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local libdir=${ED}/usr/lib/python${PYVER}
|
||||
|
||||
# -j1 hack for now for bug #843458
|
||||
emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall
|
||||
|
||||
# Fix collisions between different slots of Python.
|
||||
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
|
||||
# Fix collision with GIL-enabled build.
|
||||
rm "${ED}/usr/bin/python${PYVER%t}" || die
|
||||
mv "${ED}"/usr/bin/pydoc{${PYVER%t},${PYVER}} || die
|
||||
mv "${ED}"/usr/share/man/man1/python{${PYVER%t},${PYVER}}.1 || die
|
||||
|
||||
# Cheap hack to get version with ABIFLAGS
|
||||
local abiver=$(cd "${ED}/usr/include"; echo python*)
|
||||
if [[ ${abiver} != python${PYVER} ]]; then
|
||||
# Replace python3.X with a symlink to python3.Xm
|
||||
rm "${ED}/usr/bin/python${PYVER}" || die
|
||||
dosym "${abiver}" "/usr/bin/python${PYVER}"
|
||||
# Create python3.X-config symlink
|
||||
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
|
||||
# Create python-3.5m.pc symlink
|
||||
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
|
||||
fi
|
||||
|
||||
# python seems to get rebuilt in src_install (bug 569908)
|
||||
# Work around it for now.
|
||||
if has_version dev-libs/libffi[pax-kernel]; then
|
||||
pax-mark E "${ED}/usr/bin/${abiver}"
|
||||
else
|
||||
pax-mark m "${ED}/usr/bin/${abiver}"
|
||||
fi
|
||||
|
||||
rm -r "${libdir}"/ensurepip/_bundled || die
|
||||
if ! use sqlite; then
|
||||
rm -r "${libdir}/"sqlite3 || die
|
||||
fi
|
||||
if use tk; then
|
||||
# rename to avoid collision with dev-lang/python
|
||||
mv "${ED}"/usr/bin/idle{${PYVER%t},${PYVER}} || die
|
||||
else
|
||||
rm -r "${ED}/usr/bin/idle${PYVER%t}" || die
|
||||
rm -r "${libdir}/"{idlelib,tkinter} || die
|
||||
fi
|
||||
|
||||
ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die
|
||||
|
||||
dodoc Misc/{ACKS,HISTORY,NEWS}
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
find Tools -name __pycache__ -exec rm -fr {} + || die
|
||||
dodoc -r Tools
|
||||
fi
|
||||
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
|
||||
local libname=$(
|
||||
printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' |
|
||||
emake --no-print-directory -s -f - 2>/dev/null
|
||||
)
|
||||
newins Tools/gdb/libpython.py "${libname}"-gdb.py
|
||||
|
||||
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
|
||||
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
|
||||
sed \
|
||||
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
|
||||
-e "s:@PYDOC@:pydoc${PYVER}:" \
|
||||
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
|
||||
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
|
||||
|
||||
# python-exec wrapping support
|
||||
local pymajor=${PYVER%.*}
|
||||
local EPYTHON=python${PYVER}
|
||||
local scriptdir=${D}$(python_get_scriptdir)
|
||||
mkdir -p "${scriptdir}" || die
|
||||
# python and pythonX
|
||||
ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die
|
||||
ln -s "python${pymajor}" "${scriptdir}/python" || die
|
||||
# python-config and pythonX-config
|
||||
# note: we need to create a wrapper rather than symlinking it due
|
||||
# to some random dirname(argv[0]) magic performed by python-config
|
||||
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
|
||||
#!/bin/sh
|
||||
exec "${abiver}-config" "\${@}"
|
||||
EOF
|
||||
chmod +x "${scriptdir}/python${pymajor}-config" || die
|
||||
ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die
|
||||
# pydoc
|
||||
ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die
|
||||
# idle
|
||||
if use tk; then
|
||||
ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
|
||||
fi
|
||||
}
|
||||
@ -14,7 +14,7 @@ inherit verify-sig
|
||||
MY_PV=${PV/_}
|
||||
MY_P="Python-${MY_PV%_p*}"
|
||||
PYVER=$(ver_cut 1-2)
|
||||
PATCHSET="python-gentoo-patches-${MY_PV}-r1"
|
||||
PATCHSET="python-gentoo-patches-${MY_PV}"
|
||||
|
||||
DESCRIPTION="An interpreted, interactive, object-oriented programming language"
|
||||
HOMEPAGE="
|
||||
@ -34,7 +34,7 @@ LICENSE="PSF-2"
|
||||
SLOT="${PYVER}"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
IUSE="
|
||||
bluetooth build +debug +ensurepip examples gdbm +gil jit
|
||||
bluetooth build debug +ensurepip examples gdbm jit
|
||||
libedit +ncurses pgo +readline +sqlite +ssl test tk valgrind
|
||||
"
|
||||
REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )"
|
||||
@ -114,7 +114,7 @@ QA_PKGCONFIG_VERSION=${PYVER}
|
||||
# false positives -- functions specific to *BSD
|
||||
QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
|
||||
|
||||
declare -rA PYTHON_KERNEL_CHECKS=(
|
||||
declare -rgA PYTHON_KERNEL_CHECKS=(
|
||||
["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589
|
||||
["DNOTIFY"]="test_fcntl" # bug 938662
|
||||
)
|
||||
@ -124,12 +124,12 @@ pkg_pretend() {
|
||||
check-reqs_pkg_pretend
|
||||
fi
|
||||
|
||||
if ! use gil || use jit; then
|
||||
ewarn "USE=-gil and USE=jit flags are considered experimental upstream. Using"
|
||||
ewarn "them could lead to unexpected breakage, including race conditions"
|
||||
if use jit; then
|
||||
ewarn "USE=jit is considered experimental upstream. Using it"
|
||||
ewarn "could lead to unexpected breakage, including race conditions"
|
||||
ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless"
|
||||
ewarn "you can reproduce the problem with dev-lang/python[gil,-jit]. Instead,"
|
||||
ewarn "please consider reporting freethreading / JIT problems upstream."
|
||||
ewarn "you can reproduce the problem with dev-lang/python[-jit]. Instead,"
|
||||
ewarn "please consider reporting JIT problems upstream."
|
||||
fi
|
||||
}
|
||||
|
||||
@ -431,9 +431,9 @@ src_configure() {
|
||||
--with-platlibdir=lib
|
||||
--with-pkg-config=yes
|
||||
--with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
|
||||
--enable-gil
|
||||
|
||||
$(use_with debug assertions)
|
||||
$(use_enable gil)
|
||||
$(use_enable jit experimental-jit)
|
||||
$(use_enable pgo optimizations)
|
||||
$(use_with readline readline "$(usex libedit editline readline)")
|
||||
@ -514,6 +514,7 @@ src_compile() {
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
local -x TMPDIR=/tmp
|
||||
fi
|
||||
|
||||
# also need to clear the flags explicitly here or they end up
|
||||
@ -553,6 +554,7 @@ src_test() {
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
local -x TMPDIR=/tmp
|
||||
|
||||
nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
|
||||
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||
659
sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_alpha1-r100.ebuild
vendored
Normal file
659
sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.14.0_alpha1-r100.ebuild
vendored
Normal file
@ -0,0 +1,659 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI="8"
|
||||
|
||||
LLVM_COMPAT=( 18 )
|
||||
LLVM_OPTIONAL=1
|
||||
WANT_LIBTOOL="none"
|
||||
|
||||
inherit autotools check-reqs flag-o-matic linux-info llvm-r1
|
||||
inherit multiprocessing pax-utils python-utils-r1 toolchain-funcs
|
||||
inherit verify-sig
|
||||
|
||||
MY_PV=${PV/_alpha/a}
|
||||
MY_P="Python-${MY_PV%_p*}"
|
||||
PYVER="$(ver_cut 1-2)t"
|
||||
PATCHSET="python-gentoo-patches-${MY_PV}-r2"
|
||||
|
||||
DESCRIPTION="Freethreading (no-GIL) version of Python programming language"
|
||||
HOMEPAGE="
|
||||
https://www.python.org/
|
||||
https://github.com/python/cpython/
|
||||
"
|
||||
SRC_URI="
|
||||
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
|
||||
https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
|
||||
verify-sig? (
|
||||
https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.sigstore
|
||||
)
|
||||
"
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
LICENSE="PSF-2"
|
||||
SLOT="${PYVER}"
|
||||
IUSE="
|
||||
bluetooth build debug +ensurepip examples gdbm jit
|
||||
libedit +ncurses pgo +readline +sqlite +ssl test tk valgrind
|
||||
"
|
||||
REQUIRED_USE="jit? ( ${LLVM_REQUIRED_USE} )"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# Do not add a dependency on dev-lang/python to this ebuild.
|
||||
# If you need to apply a patch which requires python for bootstrapping, please
|
||||
# run the bootstrap code on your dev box and include the results in the
|
||||
# patchset. See bug 447752.
|
||||
|
||||
RDEPEND="
|
||||
app-arch/bzip2:=
|
||||
app-arch/xz-utils:=
|
||||
>=dev-libs/expat-2.1:=
|
||||
dev-libs/libffi:=
|
||||
dev-libs/mpdecimal:=
|
||||
dev-python/gentoo-common
|
||||
>=sys-libs/zlib-1.1.3:=
|
||||
virtual/libintl
|
||||
ensurepip? ( dev-python/ensurepip-pip )
|
||||
gdbm? ( sys-libs/gdbm:=[berkdb] )
|
||||
kernel_linux? ( sys-apps/util-linux:= )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2:= )
|
||||
readline? (
|
||||
!libedit? ( >=sys-libs/readline-4.1:= )
|
||||
libedit? ( dev-libs/libedit:= )
|
||||
)
|
||||
sqlite? ( >=dev-db/sqlite-3.3.8:3= )
|
||||
ssl? ( >=dev-libs/openssl-1.1.1:= )
|
||||
tk? (
|
||||
>=dev-lang/tcl-8.0:=
|
||||
>=dev-lang/tk-8.0:=
|
||||
dev-tcltk/blt:=
|
||||
dev-tcltk/tix
|
||||
)
|
||||
"
|
||||
# bluetooth requires headers from bluez
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
bluetooth? ( net-wireless/bluez )
|
||||
test? (
|
||||
dev-python/ensurepip-pip
|
||||
dev-python/ensurepip-setuptools
|
||||
dev-python/ensurepip-wheel
|
||||
)
|
||||
valgrind? ( dev-debug/valgrind )
|
||||
"
|
||||
# autoconf-archive needed to eautoreconf
|
||||
BDEPEND="
|
||||
dev-build/autoconf-archive
|
||||
app-alternatives/awk
|
||||
virtual/pkgconfig
|
||||
jit? (
|
||||
$(llvm_gen_dep '
|
||||
sys-devel/clang:${LLVM_SLOT}
|
||||
sys-devel/llvm:${LLVM_SLOT}
|
||||
')
|
||||
)
|
||||
verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 )
|
||||
"
|
||||
RDEPEND+="
|
||||
!build? ( app-misc/mime-types )
|
||||
"
|
||||
if [[ ${PV} != *_alpha* ]]; then
|
||||
RDEPEND+="
|
||||
dev-lang/python-exec[python_targets_python${PYVER/./_}(-)]
|
||||
"
|
||||
fi
|
||||
|
||||
# https://www.python.org/downloads/metadata/sigstore/
|
||||
VERIFY_SIG_METHOD=sigstore
|
||||
VERIFY_SIG_CERT_IDENTITY=hugo@python.org
|
||||
VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth
|
||||
|
||||
# large file tests involve a 2.5G file being copied (duplicated)
|
||||
CHECKREQS_DISK_BUILD=5500M
|
||||
|
||||
QA_PKGCONFIG_VERSION=${PYVER%t}
|
||||
# false positives -- functions specific to *BSD
|
||||
QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags )
|
||||
|
||||
declare -rgA PYTHON_KERNEL_CHECKS=(
|
||||
["CROSS_MEMORY_ATTACH"]="test_external_inspection" #bug 938589
|
||||
["DNOTIFY"]="test_fcntl" # bug 938662
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
if use pgo || use test; then
|
||||
check-reqs_pkg_pretend
|
||||
fi
|
||||
|
||||
ewarn "Freethreading build is considered experimental upstream. Using it"
|
||||
ewarn "could lead to unexpected breakage, including race conditions"
|
||||
ewarn "and crashes, respectively. Please do not file Gentoo bugs, unless"
|
||||
ewarn "you can reproduce the problem with dev-lang/python. Instead,"
|
||||
ewarn "please consider reporting freethreading problems upstream."
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
if [[ ${MERGE_TYPE} != binary ]]; then
|
||||
use jit && llvm-r1_pkg_setup
|
||||
if use test || use pgo; then
|
||||
check-reqs_pkg_setup
|
||||
|
||||
local CONFIG_CHECK
|
||||
for f in "${!PYTHON_KERNEL_CHECKS[@]}"; do
|
||||
CONFIG_CHECK+="~${f} "
|
||||
done
|
||||
linux-info_pkg_setup
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if use verify-sig; then
|
||||
verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore}
|
||||
fi
|
||||
default
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Ensure that internal copies of expat and libffi are not used.
|
||||
# TODO: Makefile has annoying deps on expat headers
|
||||
#rm -r Modules/expat || die
|
||||
|
||||
local PATCHES=(
|
||||
"${WORKDIR}/${PATCHSET}"
|
||||
)
|
||||
|
||||
default
|
||||
|
||||
# force the correct number of jobs
|
||||
# https://bugs.gentoo.org/737660
|
||||
sed -i -e "s:-j0:-j$(makeopts_jobs):" Makefile.pre.in || die
|
||||
|
||||
# breaks tests when using --with-wheel-pkg-dir
|
||||
rm -r Lib/test/wheeldata || die
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
build_cbuild_python() {
|
||||
# Hack to workaround get_libdir not being able to handle CBUILD, bug #794181
|
||||
local cbuild_libdir=$(unset PKG_CONFIG_PATH ; $(tc-getBUILD_PKG_CONFIG) --keep-system-libs --libs-only-L libffi)
|
||||
|
||||
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
|
||||
# propagated to sysconfig for built extensions
|
||||
#
|
||||
# -fno-lto to avoid bug #700012 (not like it matters for mini-CBUILD Python anyway)
|
||||
local -x CFLAGS_NODIST="${BUILD_CFLAGS} -fno-lto"
|
||||
local -x LDFLAGS_NODIST=${BUILD_LDFLAGS}
|
||||
local -x CFLAGS= LDFLAGS=
|
||||
local -x BUILD_CFLAGS="${CFLAGS_NODIST}"
|
||||
local -x BUILD_LDFLAGS=${LDFLAGS_NODIST}
|
||||
|
||||
# We need to build our own Python on CBUILD first, and feed it in.
|
||||
# bug #847910
|
||||
local myeconfargs_cbuild=(
|
||||
"${myeconfargs[@]}"
|
||||
|
||||
--prefix="${BROOT}"/usr
|
||||
--libdir="${cbuild_libdir:2}"
|
||||
|
||||
# Avoid needing to load the right libpython.so.
|
||||
--disable-shared
|
||||
|
||||
# As minimal as possible for the mini CBUILD Python
|
||||
# we build just for cross to satisfy --with-build-python.
|
||||
--without-lto
|
||||
--without-readline
|
||||
--disable-optimizations
|
||||
)
|
||||
|
||||
mkdir "${WORKDIR}"/${P}-${CBUILD} || die
|
||||
pushd "${WORKDIR}"/${P}-${CBUILD} &> /dev/null || die
|
||||
|
||||
# Avoid as many dependencies as possible for the cross build.
|
||||
mkdir Modules || die
|
||||
cat > Modules/Setup.local <<-EOF || die
|
||||
*disabled*
|
||||
nis
|
||||
_dbm _gdbm
|
||||
_sqlite3
|
||||
_hashlib _ssl
|
||||
_curses _curses_panel
|
||||
readline
|
||||
_tkinter
|
||||
pyexpat
|
||||
zlib
|
||||
# We disabled these for CBUILD because Python's setup.py can't handle locating
|
||||
# libdir correctly for cross. This should be rechecked for the pure Makefile approach,
|
||||
# and uncommented if needed.
|
||||
#_ctypes
|
||||
EOF
|
||||
|
||||
ECONF_SOURCE="${S}" econf_build "${myeconfargs_cbuild[@]}"
|
||||
|
||||
# Unfortunately, we do have to build this immediately, and
|
||||
# not in src_compile, because CHOST configure for Python
|
||||
# will check the existence of the --with-build-python value
|
||||
# immediately.
|
||||
emake
|
||||
popd &> /dev/null || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# disable automagic bluetooth headers detection
|
||||
if ! use bluetooth; then
|
||||
local -x ac_cv_header_bluetooth_bluetooth_h=no
|
||||
fi
|
||||
|
||||
append-flags -fwrapv
|
||||
filter-flags -malign-double
|
||||
|
||||
# Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
|
||||
# PKG_CONFIG needed for cross.
|
||||
tc-export CXX PKG_CONFIG
|
||||
|
||||
local dbmliborder=
|
||||
if use gdbm; then
|
||||
dbmliborder+="${dbmliborder:+:}gdbm"
|
||||
fi
|
||||
|
||||
# Set baseline test skip flags.
|
||||
COMMON_TEST_SKIPS=(
|
||||
# this is actually test_gdb.test_pretty_print
|
||||
-x test_pretty_print
|
||||
)
|
||||
|
||||
# Arch-specific skips. See #931888 for a collection of these.
|
||||
case ${CHOST} in
|
||||
alpha*)
|
||||
COMMON_TEST_SKIPS+=(
|
||||
-x test_builtin
|
||||
-x test_capi
|
||||
-x test_cmath
|
||||
-x test_float
|
||||
# timeout
|
||||
-x test_free_threading
|
||||
-x test_math
|
||||
-x test_numeric_tower
|
||||
-x test_random
|
||||
-x test_statistics
|
||||
# bug 653850
|
||||
-x test_resource
|
||||
-x test_strtod
|
||||
)
|
||||
;;
|
||||
mips*)
|
||||
COMMON_TEST_SKIPS+=(
|
||||
-x test_ctypes
|
||||
-x test_external_inspection
|
||||
-x test_statistics
|
||||
)
|
||||
;;
|
||||
powerpc64-*) # big endian
|
||||
COMMON_TEST_SKIPS+=(
|
||||
-x test_descr
|
||||
)
|
||||
;;
|
||||
riscv*)
|
||||
COMMON_TEST_SKIPS+=(
|
||||
-x test_urllib2
|
||||
)
|
||||
;;
|
||||
sparc*)
|
||||
COMMON_TEST_SKIPS+=(
|
||||
# bug 788022
|
||||
-x test_multiprocessing_fork
|
||||
-x test_multiprocessing_forkserver
|
||||
|
||||
-x test_ctypes
|
||||
-x test_descr
|
||||
# bug 931908
|
||||
-x test_exceptions
|
||||
)
|
||||
;;
|
||||
esac
|
||||
|
||||
# Kernel-config specific skips
|
||||
for option in "${!PYTHON_KERNEL_CHECKS[@]}"; do
|
||||
if ! linux_config_exists || ! linux_chkconfig_present "${option}"
|
||||
then
|
||||
COMMON_TEST_SKIPS+=( -x "${PYTHON_KERNEL_CHECKS[${option}]}" )
|
||||
fi
|
||||
done
|
||||
|
||||
# musl-specific skips
|
||||
use elibc_musl && COMMON_TEST_SKIPS+=(
|
||||
# various musl locale deficiencies
|
||||
-x test__locale
|
||||
-x test_c_locale_coercion
|
||||
-x test_locale
|
||||
-x test_re
|
||||
|
||||
# known issues with find_library on musl
|
||||
# https://bugs.python.org/issue21622
|
||||
-x test_ctypes
|
||||
|
||||
# fpathconf, ttyname errno values
|
||||
-x test_os
|
||||
)
|
||||
|
||||
if use pgo; then
|
||||
local profile_task_flags=(
|
||||
-m test
|
||||
"-j$(makeopts_jobs)"
|
||||
--pgo-extended
|
||||
--verbose3
|
||||
-u-network
|
||||
|
||||
# We use a timeout because of how often we've had hang issues
|
||||
# here. It also matches the default upstream PROFILE_TASK.
|
||||
--timeout 1200
|
||||
|
||||
"${COMMON_TEST_SKIPS[@]}"
|
||||
|
||||
-x test_dtrace
|
||||
|
||||
# All of these seem to occasionally hang for PGO inconsistently
|
||||
# They'll even hang here but be fine in src_test sometimes.
|
||||
# bug #828535 (and related: bug #788022)
|
||||
-x test_asyncio
|
||||
-x test_httpservers
|
||||
-x test_logging
|
||||
-x test_multiprocessing_fork
|
||||
-x test_socket
|
||||
-x test_xmlrpc
|
||||
|
||||
# Hangs (actually runs indefinitely executing itself w/ many cpython builds)
|
||||
# bug #900429
|
||||
-x test_tools
|
||||
|
||||
# Fails in profiling run, passes in src_test().
|
||||
-x test_capi
|
||||
-x test_embed
|
||||
-x test_external_inspection
|
||||
)
|
||||
|
||||
# Arch-specific skips. See #931888 for a collection of these.
|
||||
case ${CHOST} in
|
||||
alpha*)
|
||||
profile_task_flags+=(
|
||||
-x test_os
|
||||
)
|
||||
;;
|
||||
hppa*)
|
||||
profile_task_flags+=(
|
||||
-x test_descr
|
||||
# bug 931908
|
||||
-x test_exceptions
|
||||
-x test_os
|
||||
)
|
||||
;;
|
||||
powerpc64-*) # big endian
|
||||
profile_task_flags+=(
|
||||
# bug 931908
|
||||
-x test_exceptions
|
||||
)
|
||||
;;
|
||||
riscv*)
|
||||
profile_task_flags+=(
|
||||
-x test_statistics
|
||||
)
|
||||
;;
|
||||
esac
|
||||
|
||||
if has_version "app-arch/rpm" ; then
|
||||
# Avoid sandbox failure (attempts to write to /var/lib/rpm)
|
||||
profile_task_flags+=(
|
||||
-x test_distutils
|
||||
)
|
||||
fi
|
||||
local -x PROFILE_TASK="${profile_task_flags[*]}"
|
||||
fi
|
||||
|
||||
local myeconfargs=(
|
||||
# glibc-2.30 removes it; since we can't cleanly force-rebuild
|
||||
# Python on glibc upgrade, remove it proactively to give
|
||||
# a chance for users rebuilding python before glibc
|
||||
ac_cv_header_stropts_h=no
|
||||
|
||||
--enable-shared
|
||||
--without-static-libpython
|
||||
--enable-ipv6
|
||||
--infodir='${prefix}/share/info'
|
||||
--mandir='${prefix}/share/man'
|
||||
--with-computed-gotos
|
||||
--with-dbmliborder="${dbmliborder}"
|
||||
--with-libc=
|
||||
--enable-loadable-sqlite-extensions
|
||||
--without-ensurepip
|
||||
--without-lto
|
||||
--with-system-expat
|
||||
--with-system-libmpdec
|
||||
--with-platlibdir=lib
|
||||
--with-pkg-config=yes
|
||||
--with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip
|
||||
--disable-gil
|
||||
|
||||
$(use_with debug assertions)
|
||||
$(use_enable jit experimental-jit)
|
||||
$(use_enable pgo optimizations)
|
||||
$(use_with readline readline "$(usex libedit editline readline)")
|
||||
$(use_with valgrind)
|
||||
)
|
||||
|
||||
# https://bugs.gentoo.org/700012
|
||||
if tc-is-lto; then
|
||||
append-cflags $(test-flags-CC -ffat-lto-objects)
|
||||
myeconfargs+=(
|
||||
--with-lto
|
||||
)
|
||||
fi
|
||||
|
||||
# Force-disable modules we don't want built.
|
||||
# See Modules/Setup for docs on how this works. Setup.local contains our local deviations.
|
||||
cat > Modules/Setup.local <<-EOF || die
|
||||
*disabled*
|
||||
nis
|
||||
$(usev !gdbm '_gdbm _dbm')
|
||||
$(usev !sqlite '_sqlite3')
|
||||
$(usev !ssl '_hashlib _ssl')
|
||||
$(usev !ncurses '_curses _curses_panel')
|
||||
$(usev !readline 'readline')
|
||||
$(usev !tk '_tkinter')
|
||||
EOF
|
||||
|
||||
# disable implicit optimization/debugging flags
|
||||
local -x OPT=
|
||||
|
||||
if tc-is-cross-compiler ; then
|
||||
build_cbuild_python
|
||||
myeconfargs+=(
|
||||
# Point the imminent CHOST build to the Python we just
|
||||
# built for CBUILD.
|
||||
--with-build-python="${WORKDIR}"/${P}-${CBUILD}/python
|
||||
)
|
||||
fi
|
||||
|
||||
# pass system CFLAGS & LDFLAGS as _NODIST, otherwise they'll get
|
||||
# propagated to sysconfig for built extensions
|
||||
local -x CFLAGS_NODIST=${CFLAGS}
|
||||
local -x LDFLAGS_NODIST=${LDFLAGS}
|
||||
local -x CFLAGS= LDFLAGS=
|
||||
|
||||
# Fix implicit declarations on cross and prefix builds. Bug #674070.
|
||||
if use ncurses; then
|
||||
append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
|
||||
fi
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
|
||||
if grep -q "#define POSIX_SEMAPHORES_NOT_ENABLED 1" pyconfig.h; then
|
||||
eerror "configure has detected that the sem_open function is broken."
|
||||
eerror "Please ensure that /dev/shm is mounted as a tmpfs with mode 1777."
|
||||
die "Broken sem_open function (bug 496328)"
|
||||
fi
|
||||
|
||||
# install epython.py as part of stdlib
|
||||
echo "EPYTHON='python${PYVER}'" > Lib/epython.py || die
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Ensure sed works as expected
|
||||
# https://bugs.gentoo.org/594768
|
||||
local -x LC_ALL=C
|
||||
export PYTHONSTRICTEXTENSIONBUILD=1
|
||||
|
||||
# Save PYTHONDONTWRITEBYTECODE so that 'has_version' doesn't
|
||||
# end up writing bytecode & violating sandbox.
|
||||
# bug #831897
|
||||
local -x _PYTHONDONTWRITEBYTECODE=${PYTHONDONTWRITEBYTECODE}
|
||||
|
||||
# Gentoo hack to disable accessing system site-packages
|
||||
export GENTOO_CPYTHON_BUILD=1
|
||||
|
||||
if use pgo ; then
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
local -x TMPDIR=/tmp
|
||||
fi
|
||||
|
||||
# also need to clear the flags explicitly here or they end up
|
||||
# in _sysconfigdata*
|
||||
emake CPPFLAGS= CFLAGS= LDFLAGS=
|
||||
|
||||
# Restore saved value from above.
|
||||
local -x PYTHONDONTWRITEBYTECODE=${_PYTHONDONTWRITEBYTECODE}
|
||||
|
||||
# Work around bug 329499. See also bug 413751 and 457194.
|
||||
if has_version dev-libs/libffi[pax-kernel]; then
|
||||
pax-mark E python
|
||||
else
|
||||
pax-mark m python
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# Tests will not work when cross compiling.
|
||||
if tc-is-cross-compiler; then
|
||||
elog "Disabling tests due to crosscompiling."
|
||||
return
|
||||
fi
|
||||
|
||||
# this just happens to skip test_support.test_freeze that is broken
|
||||
# without bundled expat
|
||||
# TODO: get a proper skip for it upstream
|
||||
local -x LOGNAME=buildbot
|
||||
|
||||
local test_opts=(
|
||||
--verbose3
|
||||
-u-network
|
||||
-j "$(makeopts_jobs)"
|
||||
"${COMMON_TEST_SKIPS[@]}"
|
||||
)
|
||||
|
||||
# bug 660358
|
||||
local -x COLUMNS=80
|
||||
local -x PYTHONDONTWRITEBYTECODE=
|
||||
local -x TMPDIR=/tmp
|
||||
|
||||
nonfatal emake -Onone test EXTRATESTOPTS="${test_opts[*]}" \
|
||||
CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
|
||||
local ret=${?}
|
||||
|
||||
[[ ${ret} -eq 0 ]] || die "emake test failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local libdir=${ED}/usr/lib/python${PYVER}
|
||||
|
||||
# -j1 hack for now for bug #843458
|
||||
emake -j1 DESTDIR="${D}" TEST_MODULES=no altinstall
|
||||
|
||||
# Fix collisions between different slots of Python.
|
||||
rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
|
||||
# Fix collision with GIL-enabled build.
|
||||
rm "${ED}/usr/bin/python${PYVER%t}" || die
|
||||
mv "${ED}"/usr/bin/pydoc{${PYVER%t},${PYVER}} || die
|
||||
mv "${ED}"/usr/share/man/man1/python{${PYVER%t},${PYVER}}.1 || die
|
||||
|
||||
# Cheap hack to get version with ABIFLAGS
|
||||
local abiver=$(cd "${ED}/usr/include"; echo python*)
|
||||
if [[ ${abiver} != python${PYVER} ]]; then
|
||||
# Replace python3.X with a symlink to python3.Xm
|
||||
rm "${ED}/usr/bin/python${PYVER}" || die
|
||||
dosym "${abiver}" "/usr/bin/python${PYVER}"
|
||||
# Create python3.X-config symlink
|
||||
dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
|
||||
# Create python-3.5m.pc symlink
|
||||
dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
|
||||
fi
|
||||
|
||||
# python seems to get rebuilt in src_install (bug 569908)
|
||||
# Work around it for now.
|
||||
if has_version dev-libs/libffi[pax-kernel]; then
|
||||
pax-mark E "${ED}/usr/bin/${abiver}"
|
||||
else
|
||||
pax-mark m "${ED}/usr/bin/${abiver}"
|
||||
fi
|
||||
|
||||
rm -r "${libdir}"/ensurepip/_bundled || die
|
||||
if ! use sqlite; then
|
||||
rm -r "${libdir}/"sqlite3 || die
|
||||
fi
|
||||
if use tk; then
|
||||
# rename to avoid collision with dev-lang/python
|
||||
mv "${ED}"/usr/bin/idle{${PYVER%t},${PYVER}} || die
|
||||
else
|
||||
rm -r "${ED}/usr/bin/idle${PYVER%t}" || die
|
||||
rm -r "${libdir}/"{idlelib,tkinter} || die
|
||||
fi
|
||||
|
||||
ln -s ../python/EXTERNALLY-MANAGED "${libdir}/EXTERNALLY-MANAGED" || die
|
||||
|
||||
dodoc Misc/{ACKS,HISTORY,NEWS}
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
find Tools -name __pycache__ -exec rm -fr {} + || die
|
||||
dodoc -r Tools
|
||||
fi
|
||||
insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
|
||||
local libname=$(
|
||||
printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' |
|
||||
emake --no-print-directory -s -f - 2>/dev/null
|
||||
)
|
||||
newins Tools/gdb/libpython.py "${libname}"-gdb.py
|
||||
|
||||
newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
|
||||
newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
|
||||
sed \
|
||||
-e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
|
||||
-e "s:@PYDOC@:pydoc${PYVER}:" \
|
||||
-i "${ED}/etc/conf.d/pydoc-${PYVER}" \
|
||||
"${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
|
||||
|
||||
# python-exec wrapping support
|
||||
local pymajor=${PYVER%.*}
|
||||
local EPYTHON=python${PYVER}
|
||||
local scriptdir=${D}$(python_get_scriptdir)
|
||||
mkdir -p "${scriptdir}" || die
|
||||
# python and pythonX
|
||||
ln -s "../../../bin/${abiver}" "${scriptdir}/python${pymajor}" || die
|
||||
ln -s "python${pymajor}" "${scriptdir}/python" || die
|
||||
# python-config and pythonX-config
|
||||
# note: we need to create a wrapper rather than symlinking it due
|
||||
# to some random dirname(argv[0]) magic performed by python-config
|
||||
cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
|
||||
#!/bin/sh
|
||||
exec "${abiver}-config" "\${@}"
|
||||
EOF
|
||||
chmod +x "${scriptdir}/python${pymajor}-config" || die
|
||||
ln -s "python${pymajor}-config" "${scriptdir}/python-config" || die
|
||||
# pydoc
|
||||
ln -s "../../../bin/pydoc${PYVER}" "${scriptdir}/pydoc" || die
|
||||
# idle
|
||||
if use tk; then
|
||||
ln -s "../../../bin/idle${PYVER}" "${scriptdir}/idle" || die
|
||||
fi
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user