diff --git a/changelog/security/2023-12-13-weekly-package-updates.md b/changelog/security/2023-12-13-weekly-package-updates.md new file mode 100644 index 00000000000..c24ea4754fa --- /dev/null +++ b/changelog/security/2023-12-13-weekly-package-updates.md @@ -0,0 +1 @@ +- intel-microcode ([CVE-2023-23583](https://nvd.nist.gov/vuln/detail/CVE-2023-23583)) diff --git a/changelog/updates/2023-12-13-weekly-package-updates.md b/changelog/updates/2023-12-13-weekly-package-updates.md new file mode 100644 index 00000000000..96db88c8208 --- /dev/null +++ b/changelog/updates/2023-12-13-weekly-package-updates.md @@ -0,0 +1,12 @@ +- bpftool ([6.5.7](https://kernelnewbies.org/Linux_6.5#Tracing.2C_perf_and_BPF)) +- c-ares ([1.21.0](https://c-ares.org/changelog.html#1_21_0)) +- intel-microcode ([20231114_p20231114](https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/releases/tag/microcode-20231114)) +- selinux-base ([2.20231002](https://github.com/SELinuxProject/refpolicy/releases/tag/RELEASE_2_20231002)) +- selinux-base-policy ([2.20231002](https://github.com/SELinuxProject/refpolicy/releases/tag/RELEASE_2_20231002)) +- selinux-container ([2.20231002](https://github.com/SELinuxProject/refpolicy/releases/tag/RELEASE_2_20231002)) +- selinux-dbus ([2.20231002](https://github.com/SELinuxProject/refpolicy/releases/tag/RELEASE_2_20231002)) +- selinux-sssd ([2.20231002](https://github.com/SELinuxProject/refpolicy/releases/tag/RELEASE_2_20231002)) +- selinux-unconfined ([2.20231002](https://github.com/SELinuxProject/refpolicy/releases/tag/RELEASE_2_20231002)) +- whois ([5.5.20](https://github.com/rfc1036/whois/blob/v5.5.20/debian/changelog)) +- xz-utils ([5.4.5](https://github.com/tukaani-project/xz/releases/tag/v5.4.5)) +- zlib ([1.3](https://github.com/madler/zlib/releases/tag/v1.3)) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/flatcar-selinux-patches/0001-Flatcar-modifications.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/flatcar-selinux-patches/0001-Flatcar-modifications.patch new file mode 100644 index 00000000000..29cd63e12d5 --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/flatcar-selinux-patches/0001-Flatcar-modifications.patch @@ -0,0 +1,501 @@ +From 5293e66fafd5f5cf2872abc03d8b49ed5bc81b9a Mon Sep 17 00:00:00 2001 +From: Krzesimir Nowak +Date: Mon, 4 Dec 2023 12:17:25 +0100 +Subject: [PATCH] Flatcar modifications + +--- + policy/modules/admin/netutils.te | 20 ++++ + 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 | 73 ++++++++++++ + policy/modules/services/container.fc | 6 + + policy/modules/services/container.te | 150 +++++++++++++++++++++++- + policy/modules/system/init.te | 8 ++ + policy/modules/system/locallogin.te | 9 +- + policy/modules/system/logging.te | 9 ++ + 10 files changed, 355 insertions(+), 3 deletions(-) + +diff --git a/refpolicy/policy/modules/admin/netutils.te b/refpolicy/policy/modules/admin/netutils.te +index 3c43a1d84..429c67220 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) + corenet_raw_sendrecv_generic_node(ping_t) + corenet_tcp_sendrecv_generic_node(ping_t) + corenet_raw_bind_generic_node(ping_t) ++# ++# FLATCAR: ++# ++# This is to fix ping -I with some IP or network interface. ++# ++# Based on https://github.com/fedora-selinux/selinux-policy/pull/403 ++# ++# TODO: What AVC does this fix? ++# ++corenet_icmp_bind_generic_node(ping_t) + + dev_read_urand(ping_t) + +@@ -212,6 +222,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) ++# ++# FLATCAR: ++# ++# This is to fix ping -I with some IP or network interface. ++# ++# Based on https://github.com/fedora-selinux/selinux-policy/pull/403 ++# ++# TODO: What AVC does this fix? ++# ++corenet_icmp_bind_generic_node(traceroute_t) + + 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 +--- 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',` + allow $1 node_t:sctp_socket node_bind; + ') + ++# ++# FLATCAR: ++# ++# This is to fix ping -I with some IP or network interface. Added ++# icmp_socket here. ++# ++# Based on https://github.com/fedora-selinux/selinux-policy/pull/403 ++# ++######################################## ++## ++## Bind ICMP sockets to generic nodes. ++## ++## ++## ++## Domain allowed access. ++## ++## ++# ++interface(`corenet_icmp_bind_generic_node',` ++ gen_require(` ++ type node_t; ++ ') ++ ++ allow $1 node_t:icmp_socket node_bind; ++') ++ + ######################################## + ## + ## 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 +--- 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 }; + + # Bind to any network address. + allow corenet_unconfined_type port_type:{ tcp_socket udp_socket rawip_socket sctp_socket } name_bind; +-allow corenet_unconfined_type node_type:{ tcp_socket udp_socket rawip_socket sctp_socket } node_bind; ++# ++# FLATCAR: ++# ++# This is to fix ping -I with some IP or network interface. Added ++# icmp_socket here. ++# ++# Based on https://github.com/fedora-selinux/selinux-policy/pull/403 ++# ++# TODO: What AVC does this fix? ++# ++allow corenet_unconfined_type node_type:{ icmp_socket tcp_socket udp_socket rawip_socket sctp_socket } node_bind; + + # 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 370ac0931..098d0cd6c 100644 +--- a/refpolicy/policy/modules/kernel/files.if ++++ b/refpolicy/policy/modules/kernel/files.if +@@ -7911,3 +7911,48 @@ interface(`files_relabel_all_pidfiles',` + relabel_files_pattern($1, pidfile, pidfile) + relabel_lnk_files_pattern($1, pidfile, pidfile) + ') ++ ++# ++# FLATCAR: ++# ++# It's a part of our relabeling effort. Not finished, not yet used. ++# ++# Upstream PR: https://github.com/SELinuxProject/refpolicy/pull/515 ++# ++# Second part of this change: https://github.com/flatcar/coreos-overlay/blob/f9a9943cb7ebfcb6fa625b06eb808a65572f54ff/sec-policy/selinux-base-policy/files/systemd-relabel.patch ++# ++######################################## ++## ++## Relabel all files on the filesystem, except ++## policy_config_t and exceptions. ++## ++## ++## ++## Domain allowed access. ++## ++## ++## ++## ++## The types to be excluded. Each type or attribute ++## must be negated by the caller. ++## ++## ++## ++# ++interface(`files_relabel_all_non_policy_files',` ++ gen_require(` ++ attribute file_type; ++ type policy_config_t; ++ ') ++ ++ allow $1 { file_type -policy_config_t $2 }:dir list_dir_perms; ++ relabel_dirs_pattern($1, { file_type -policy_config_t $2 }, { file_type -policy_config_t $2 }) ++ relabel_files_pattern($1, { file_type -policy_config_t $2 }, { file_type -policy_config_t $2 }) ++ relabel_lnk_files_pattern($1, { file_type -policy_config_t $2 }, { file_type -policy_config_t $2 }) ++ relabel_fifo_files_pattern($1, { file_type -policy_config_t $2 }, { file_type -policy_config_t $2 }) ++ relabel_sock_files_pattern($1, { file_type -policy_config_t $2 }, { file_type -policy_config_t $2 }) ++ # this is only relabelfrom since there should be no ++ # device nodes with file types. ++ relabelfrom_blk_files_pattern($1, { file_type -policy_config_t $2 }, { file_type -policy_config_t $2 }) ++ 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 8156ac087..72a07e753 100644 +--- a/refpolicy/policy/modules/kernel/kernel.te ++++ b/refpolicy/policy/modules/kernel/kernel.te +@@ -369,6 +369,79 @@ files_mounton_default(kernel_t) + + mcs_process_set_categories(kernel_t) + ++# ++# FLATCAR: ++# ++# TODO: What AVCs does this fix? ++# ++allow kernel_t self:user_namespace create; ++ ++# ++# FLATCAR: ++# ++# Occurs in coreos.tls.fetch-urls tests. Haven't pinpointed the cause yet: ++# ++# avc: denied { add_name } for pid=[0-9]* comm="bash" name="63" scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=dir permissive=0 ++# ++# Occurs in kubeadm.v.calico.base and ++# kubeadm.v.calico.cgroupv1.base: ++# ++# avc: denied { add_name } for pid=[0-9]* comm="tee" name="63" scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=dir permissive=0 ++# ++allow kernel_t self:dir { add_name }; ++ ++# ++# FLATCAR: ++# ++# Occurs in coreos.tls.fetch-urls tests. Haven't pinpointed the cause yet: ++# ++# avc: denied { create } for pid=[0-9]* comm="bash" name="63" scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:object_r:kernel_t:s0 tclass=file permissive=0 ++# ++# Occurs in kubeadm.v.calico.base and ++# kubeadm.v.calico.cgroupv1.base: ++# ++# avc: denied { create } for pid=[0-9]* comm="tee" name="63" scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:object_r:kernel_t:s0 tclass=file permissive=0 ++# ++allow kernel_t self:file { create }; ++ ++# ++# FLATCAR: ++# ++# Occurs in coreos.tls.fetch-urls tests. Haven't pinpointed the cause ++# yet: ++# ++# avc: denied { write } for pid=[0-9]* comm="bash" name="fd" dev="proc" ino=[0-9]* scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=dir permissive=0 ++# ++# This one occurs a lot in kubeadm.v.calico.base and ++# kubeadm.v.calico.cgroupv1.base, is this from mantle's ++# kola/tests/kubeadm/templates.go? ++# ++# avc: denied { write } for pid=[0-9]* comm="tee" name="fd" dev="proc" ino=[0-9]* scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=dir permissive=0 ++# ++allow kernel_t self:dir { write }; ++ ++# ++# FLATCAR: ++# ++# This one happens a lot in kubeadm.v..cgroupv1.base. No ++# idea what is this, but looks like a vestige of cgroupv1 support. ++# ++# avc: denied { audit_read } for pid=[0-9]* comm="systemd" capability=37 scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=capability2 permissive=1 ++# ++allow kernel_t self:capability2 { audit_read }; ++ ++# ++# FLATCAR: ++# ++# This one happens a lot in kubeadm.v..cgroupv1.base and ++# kubeadm.v..base for cilium and calico. ++# ++# avc: denied { watch_reads } for pid=[0-9]* comm="systemd" path="/run/mount/utab.lock" dev="tmpfs" ino=[0-9]* scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:object_r:mount_runtime_t:s0 tclass=file permissive=0 ++# ++optional_policy(` ++ mount_watch_reads_runtime_files(kernel_t) ++') ++ + mls_process_read_all_levels(kernel_t) + mls_process_write_all_levels(kernel_t) + mls_file_write_all_levels(kernel_t) +diff --git a/refpolicy/policy/modules/services/container.fc b/refpolicy/policy/modules/services/container.fc +index 49e5d59bb..3769ad311 100644 +--- a/refpolicy/policy/modules/services/container.fc ++++ b/refpolicy/policy/modules/services/container.fc +@@ -38,6 +38,12 @@ HOME_DIR/\.docker(/.*)? gen_context(system_u:object_r:container_conf_home_t,s0) + /etc/cni(/.*)? gen_context(system_u:object_r:container_config_t,s0) + /etc/docker(/.*)? gen_context(system_u:object_r:container_config_t,s0) + /etc/containerd(/.*)? gen_context(system_u:object_r:container_config_t,s0) ++# ++# FLATCAR: ++# ++# We keep containerd config in /usr/share, so label it as container_config_t too. ++# ++/usr/share/containerd(/.*)? gen_context(system_u:object_r:container_config_t,s0) + + /run/containers(/.*)? gen_context(system_u:object_r:container_runtime_t,s0) + /run/libpod(/.*)? 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 a5ad4686d..ceaeb2dfc 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) + ## + gen_tunable(container_use_ecryptfs, false) + ++# FLATCAR: ++# ++# Turned to be true by default to address following AVCs: ++# ++# This one comes from cl.internet (DockerPing?): ++# ++# For ping inside docker container. ++# ++# Boolean container_use_host_all_caps also allows this. Maybe this ++# should be turned on by default then? ++# ++# avc: denied { net_raw } for pid=[0-9]* comm="ping" capability=13 scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tclass=capability permissive=0 ++# ++# This one comes from docker.base: ++# ++# avc: denied { setuid } for pid=[0-9]* comm="ping" capability=7 scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tclass=capability permissive=0 ++# ++# This one happens in kubeadm.v..base for cilium and calico ++# ++# avc: denied { chown } for pid=[0-9]* comm="nginx" capability=0 scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tclass=capability permissive=0 ++# ++# Boolean container_use_host_all_caps also allows this. Maybe this ++# should be turned on by default then? ++# ++# This one happens in kubeadm.v..base for cilium and calico ++# ++# avc: denied { dac_override } for pid=[0-9]* comm="rpcbind" capability=1 scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tclass=capability permissive=0 ++# ++# This comes from the same place: ++# ++# avc: denied { dac_override } for pid=[0-9]* comm="systemd-tmpfile" capability=1 scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tclass=capability permissive=0 ++# ++# Boolean container_use_host_all_caps also allows this. Maybe this ++# should be turned on by default then? ++# ++# This one happens in kubeadm.v..base for cilium and calico ++# ++# avc: denied { dac_read_search } for pid=[0-9]* comm="rpcbind" capability=2 scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tclass=capability permissive=0 ++# ++# This comes from the same place: ++# ++# avc: denied { dac_read_search } for pid=[0-9]* comm="systemd-tmpfile" capability=2 scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tclass=capability permissive=0 ++# ++# Boolean container_use_host_all_caps also allows this. Maybe this ++# should be turned on by default then? ++# + ## + ##

+ ## Allow containers to use all capabilities in a +@@ -65,7 +111,7 @@ gen_tunable(container_use_ecryptfs, false) + ## directly on the host. + ##

+ ##
+-gen_tunable(container_use_host_all_caps, false) ++gen_tunable(container_use_host_all_caps, true) + + ## + ##

+@@ -1088,3 +1134,105 @@ optional_policy(` + unconfined_domain_noaudit(spc_user_t) + domain_ptrace_all_domains(spc_user_t) + ') ++ ++# ++# FLATCAR: ++# ++# The rules below were added long time ago. ++# ++# TODO: Would be nice to document what they were trying to fix. And ++# maybe document what AVCs they were trying to address? I suspect that ++# a lot of them are not necessary now or won't be necessary when whole ++# image will be labeled. ++# ++ ++allow container_domain self:socket_class_set { accept ioctl read getattr lock write append getopt setopt }; ++allow container_domain init_t:unix_stream_socket { accept ioctl read getattr lock write append getopt shutdown }; ++ ++# required for sharing /run for the etcd-wrapper ++files_mounton_runtime_dirs(container_engine_domain) ++ ++# this is a hack while the system is not labelled. we need to authorize transition from kernel_t ++require { ++ type kernel_t; ++ type tmpfs_t; ++ type var_lib_t; ++ type unconfined_t; ++} ++allow kernel_t container_t:process transition; ++allow initrc_t container_t:process transition; ++allow kernel_t container_t:process2 nnp_transition; ++allow kernel_t unconfined_t:process transition; ++fs_manage_tmpfs_chr_files(container_t) ++fs_manage_tmpfs_dirs(container_t) ++fs_manage_tmpfs_files(container_t) ++fs_manage_tmpfs_sockets(container_t) ++fs_manage_tmpfs_symlinks(container_t) ++fs_remount_tmpfs(container_t) ++kernel_read_messages(container_t) ++kernel_sigchld(container_t) ++kernel_use_fds(container_t) ++allow container_t self:process getcap; ++files_read_var_lib_files(container_t) ++files_read_var_lib_symlinks(container_t) ++term_use_generic_ptys(container_t) ++term_setattr_generic_ptys(container_t) ++allow container_t tmpfs_t:chr_file { read write open }; ++allow container_t container_file_t:chr_file { manage_file_perms }; ++allow container_t self:process getpgid; ++allow container_t container_file_t:file { entrypoint mounton }; ++allow container_t var_lib_t:file { entrypoint execute execute_no_trans }; ++allow container_t kernel_t:fifo_file { getattr ioctl read write open append }; ++allow container_t initrc_t:fifo_file { getattr ioctl read write open append }; ++filetrans_pattern(kernel_t, etc_t, container_file_t, dir, "cni") ++ ++# this is required by flanneld ++allow container_t kernel_t:system { module_request }; ++ ++# required by flanneld to write into /run/flannel/subnet.env ++filetrans_pattern(kernel_t, var_run_t, container_file_t, dir, "flannel") ++ ++# required for cilium ++allow kernel_t spc_t:process transition; ++# required for using cilium cgroup v1 ++allow kernel_t self:perf_event { open cpu kernel read }; ++allow unconfined_t container_file_t:file { entrypoint }; ++ ++# ++# These ones come from kubeadm.v..base for cilium and calico: ++# ++# avc: denied { watch } for pid=[0-9]* comm="kube-apiserver" path="/etc/kubernetes/pki/apiserver.crt" dev="overlay" ino=[0-9]* scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:object_r:etc_t:s0 tclass=file permissive=0 ++# ++# avc: denied { watch } for pid=[0-9]* comm="kube-apiserver" path="/etc/kubernetes/pki/ca.crt" dev="overlay" ino=[0-9]* scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:object_r:etc_t:s0 tclass=file permissive=0 ++# ++# avc: denied { watch } for pid=[0-9]* comm="kube-apiserver" path="/etc/kubernetes/pki/front-proxy-ca.crt" dev="overlay" ino=[0-9]* scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:object_r:etc_t:s0 tclass=file permissive=0 ++# ++# avc: denied { watch } for pid=[0-9]* comm="kube-apiserver" path="/etc/kubernetes/pki/front-proxy-client.crt" dev="overlay" ino=[0-9]* scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:object_r:etc_t:s0 tclass=file permissive=0 ++# ++# avc: denied { watch } for pid=[0-9]* comm="kube-controller" path="/etc/kubernetes/pki/ca.crt" dev="overlay" ino=[0-9]* scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:object_r:etc_t:s0 tclass=file permissive=0 ++# ++# avc: denied { watch } for pid=[0-9]* comm="kube-controller" path="/etc/kubernetes/pki/front-proxy-ca.crt" dev="overlay" ino=[0-9]* scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:object_r:etc_t:s0 tclass=file permissive=0 ++# ++allow container_t etc_t:file watch; ++ ++# ++# This one comes from kubeadm.v..base for cilium and calico: ++# ++# avc: denied { watch } for pid=[0-9]* comm="kube-controller" path="/opt/libexec/kubernetes/kubelet-plugins/volume/exec" dev="vda9" ino=[0-9]* scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:object_r:usr_t:s0 tclass=dir permissive=0 ++# ++# This one comes from kubeadm.v.calico.base: ++# ++# avc: denied { watch } for pid=[0-9]* comm="kube-controller" path="/opt/libexec/kubernetes/kubelet-plugins/volume/exec/nodeagent~uds" dev="vda9" ino=[0-9]* scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:object_r:usr_t:s0 tclass=dir permissive=0 ++# ++allow container_t usr_t:dir { watch }; ++ ++# ++# These ones come from kubeadm.v.calico.base: ++# ++# avc: denied { execute } for pid=[0-9]* comm="kube-controller" name="uds" dev="vda9" ino=[0-9]* scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:object_r:usr_t:s0 tclass=file permissive=0 ++# ++# avc: denied { execute_no_trans } for pid=[0-9]* comm="kube-controller" path="/opt/libexec/kubernetes/kubelet-plugins/volume/exec/nodeagent~uds/uds" dev="vda9" ino=[0-9]* scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:object_r:usr_t:s0 tclass=file permissive=0 ++# ++# avc: denied { map } for pid=[0-9]* comm="uds" path="/opt/libexec/kubernetes/kubelet-plugins/volume/exec/nodeagent~uds/uds" dev="vda9" ino=[0-9]* scontext=system_u:system_r:container_t:s0:c[0-9]*,c[0-9]* tcontext=system_u:object_r:usr_t:s0 tclass=file permissive=0 ++# ++allow container_t usr_t:file { execute execute_no_trans map }; +diff --git a/refpolicy/policy/modules/system/init.te b/refpolicy/policy/modules/system/init.te +index c83d88b74..b55afabc0 100644 +--- a/refpolicy/policy/modules/system/init.te ++++ b/refpolicy/policy/modules/system/init.te +@@ -1658,3 +1658,11 @@ optional_policy(` + userdom_dontaudit_rw_all_users_stream_sockets(systemprocess) + userdom_dontaudit_write_user_tmp_files(systemprocess) + ') ++ ++# ++# FLATCAR: ++# ++# TODO: What AVC does this fix? ++# ++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 +--- 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 }; + dontaudit local_login_t self:capability net_admin; +-allow local_login_t self:process { getcap setcap setexec setrlimit setsched }; ++# ++# FLATCAR: ++# ++# Added setpgid here. ++# ++# TODO: What AVC does this fix? ++# ++allow local_login_t self:process { setpgid getcap setcap setexec setrlimit setsched }; + allow local_login_t self:fd use; + 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 +--- 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) + + ifdef(`init_systemd',` + # for systemd-journal ++ ++ # ++ # FLATCAR: ++ # ++ # TODO: What AVC does this fix? ++ # ++ require { type kernel_t; } ++ allow syslogd_t kernel_t:netlink_audit_socket getattr; ++ + allow syslogd_t self:capability audit_control; + allow syslogd_t self:netlink_audit_socket connected_socket_perms; + allow syslogd_t self:capability2 audit_read; +-- +2.34.1 + diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/flatcar-selinux-patches/README.md b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/flatcar-selinux-patches/README.md new file mode 100644 index 00000000000..26a0617e7fa --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/flatcar-selinux-patches/README.md @@ -0,0 +1,17 @@ +The following steps were needed to make these patches: + +- Clone the refpolicy repo: + - https://github.com/SELinuxProject/refpolicy.git +- Checkout the appropriate tag: + - For example `RELEASE_2_20231002`. +- Apply the Gentoo patch: + - See the sec-policy/selinux-base ebuild in portage-stable for the + patch tarball URL. +- Apply our changes. +- Generate the patch: + - Since sec-policy/selinux- packages set their source directory to + work directory (in Gentooese: `S=${WORKDIR}/`), the user patches + are applied from the parent directory of the refpolicy sources. In + order to generate proper patches, do `git format-patch + --src-prefix=a/refpolicy/ --dst-prefix=b/refpolicy/ + ` diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base new file mode 120000 index 00000000000..283011aeaff --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base @@ -0,0 +1 @@ +flatcar-selinux-patches \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy new file mode 120000 index 00000000000..283011aeaff --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy @@ -0,0 +1 @@ +flatcar-selinux-patches \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy/init.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy/init.patch deleted file mode 100644 index 35b00b1b64f..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy/init.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff --git a/policy/modules/system/init.te b/policy/modules/system/init.te -index dbd39cf8f..563559ca7 100644 ---- a/refpolicy/policy/modules/system/init.te -+++ b/refpolicy/policy/modules/system/init.te -@@ -1503,3 +1503,6 @@ optional_policy(` - userdom_dontaudit_rw_all_users_stream_sockets(systemprocess) - userdom_dontaudit_write_user_tmp_files(systemprocess) - ') -+ -+require { type unconfined_t; } -+allow init_t unconfined_t:file exec_file_perms; diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy/locallogin.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy/locallogin.patch deleted file mode 100644 index 6b688e26fda..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy/locallogin.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/policy/modules/system/locallogin.te b/policy/modules/system/locallogin.te -index 109980e79..d5c4a5d95 100644 ---- a/refpolicy/policy/modules/system/locallogin.te -+++ b/refpolicy/policy/modules/system/locallogin.te -@@ -34,7 +34,7 @@ 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 }; - dontaudit local_login_t self:capability net_admin; --allow local_login_t self:process { getcap setcap setexec setrlimit setsched }; -+allow local_login_t self:process { setpgid getcap setcap setexec setrlimit setsched }; - allow local_login_t self:fd use; - 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/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy/logging.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy/logging.patch deleted file mode 100644 index 7e760b6dbab..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy/logging.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff --git a/policy/modules/system/logging.te b/policy/modules/system/logging.te -index abd61e6bd..fb5d69366 100644 ---- a/refpolicy/policy/modules/system/logging.te -+++ b/refpolicy/policy/modules/system/logging.te -@@ -525,11 +525,13 @@ userdom_dontaudit_search_user_home_dirs(syslogd_t) - - ifdef(`init_systemd',` - # for systemd-journal -+ require { type kernel_t; } - allow syslogd_t self:capability audit_control; - allow syslogd_t self:netlink_audit_socket connected_socket_perms; - allow syslogd_t self:capability2 audit_read; - allow syslogd_t self:capability { chown setgid setuid sys_ptrace }; - allow syslogd_t self:netlink_audit_socket { getattr getopt read setopt write nlmsg_write }; -+ allow syslogd_t kernel_t:netlink_audit_socket getattr; - - # remove /run/log/journal when switching to permanent storage - allow syslogd_t var_log_t:dir rmdir; diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy/ping.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy/ping.patch deleted file mode 100644 index ee99de5b771..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base-policy/ping.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff -u -r refpolicy/policy/modules/admin/netutils.te refpolicy/policy/modules/admin/netutils.te ---- a/refpolicy/policy/modules/admin/netutils.te 2022-01-12 14:28:26.850809330 -0000 -+++ b/refpolicy/policy/modules/admin/netutils.te 2022-01-12 14:29:50.323880882 -0000 -@@ -117,6 +117,7 @@ - corenet_raw_sendrecv_generic_node(ping_t) - corenet_tcp_sendrecv_generic_node(ping_t) - corenet_raw_bind_generic_node(ping_t) -+corenet_icmp_bind_generic_node(ping_t) - - dev_read_urand(ping_t) - -@@ -189,6 +190,7 @@ - corenet_tcp_connect_all_ports(traceroute_t) - corenet_sendrecv_all_client_packets(traceroute_t) - corenet_sendrecv_traceroute_server_packets(traceroute_t) -+corenet_icmp_bind_generic_node(traceroute_t) - - dev_read_rand(traceroute_t) - dev_read_urand(traceroute_t) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base/0001-policy-modules-kernel-all-more-actions-for-kernel.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base/0001-policy-modules-kernel-all-more-actions-for-kernel.patch deleted file mode 100644 index 883720831e7..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base/0001-policy-modules-kernel-all-more-actions-for-kernel.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git refpolicy/policy/modules/kernel/kernel.te refpolicy/policy/modules/kernel/kernel.te -index 56dbd5af5..b5cf0e3c0 100644 ---- a/refpolicy/policy/modules/kernel/kernel.te -+++ b/refpolicy/policy/modules/kernel/kernel.te -@@ -363,6 +363,11 @@ files_list_home(kernel_t) - files_read_usr_files(kernel_t) - - mcs_process_set_categories(kernel_t) -+mcs_killall(kernel_t) -+mcs_file_read_all(kernel_t) -+mcs_file_write_all(kernel_t) -+mcs_ptrace_all(kernel_t) -+allow kernel_t self:user_namespace create; - - mls_process_read_all_levels(kernel_t) - mls_process_write_all_levels(kernel_t) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base/files-relabel.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base/files-relabel.patch deleted file mode 100644 index dd1090a7abe..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base/files-relabel.patch +++ /dev/null @@ -1,44 +0,0 @@ -diff --git a/policy/modules/kernel/files.if b/policy/modules/kernel/files.if -index 495cbe2f4..a5605f866 100644 ---- a/refpolicy/policy/modules/kernel/files.if -+++ b/refpolicy/policy/modules/kernel/files.if -@@ -7892,3 +7892,39 @@ interface(`files_unconfined',` - - typeattribute $1 files_unconfined_type; - ') -+ -+######################################## -+##

-+## Relabel all files on the filesystem, except -+## policy_config_t and exceptions. -+## -+## -+## -+## Domain allowed access. -+## -+## -+## -+## -+## The types to be excluded. Each type or attribute -+## must be negated by the caller. -+## -+## -+## -+# -+interface(`files_relabel_all_non_policy_files',` -+ gen_require(` -+ attribute file_type; -+ type policy_config_t; -+ ') -+ -+ allow $1 { file_type -policy_config_t $2 }:dir list_dir_perms; -+ relabel_dirs_pattern($1, { file_type -policy_config_t $2 }, { file_type -policy_config_t $2 }) -+ relabel_files_pattern($1, { file_type -policy_config_t $2 }, { file_type -policy_config_t $2 }) -+ relabel_lnk_files_pattern($1, { file_type -policy_config_t $2 }, { file_type -policy_config_t $2 }) -+ relabel_fifo_files_pattern($1, { file_type -policy_config_t $2 }, { file_type -policy_config_t $2 }) -+ relabel_sock_files_pattern($1, { file_type -policy_config_t $2 }, { file_type -policy_config_t $2 }) -+ # this is only relabelfrom since there should be no -+ # device nodes with file types. -+ relabelfrom_blk_files_pattern($1, { file_type -policy_config_t $2 }, { file_type -policy_config_t $2 }) -+ relabelfrom_chr_files_pattern($1, { file_type -policy_config_t $2 }, { file_type -policy_config_t $2 }) -+') diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base/icmp-bind.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base/icmp-bind.patch deleted file mode 100644 index 1b4bb314673..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-base/icmp-bind.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff -u -r refpolicy/policy/modules/kernel/corenetwork.if.in refpolicy2/policy/modules/kernel/corenetwork.if.in ---- a/refpolicy/policy/modules/kernel/corenetwork.if.in 2022-01-12 16:59:47.572670384 -0000 -+++ b/refpolicy2/policy/modules/kernel/corenetwork.if.in 2022-01-12 17:01:54.974858982 -0000 -@@ -879,6 +879,24 @@ - - ######################################## - ## -+## Bind ICMP sockets to generic nodes. -+## -+## -+## -+## Domain allowed access. -+## -+## -+# -+interface(`corenet_icmp_bind_generic_node',` -+ gen_require(` -+ type node_t; -+ ') -+ -+ allow $1 node_t:icmp_socket node_bind; -+') -+ -+######################################## -+## - ## Bind TCP sockets to generic nodes. - ## - ## -diff -u -r refpolicy/policy/modules/kernel/corenetwork.te.in refpolicy2/policy/modules/kernel/corenetwork.te.in ---- a/refpolicy/policy/modules/kernel/corenetwork.te.in 2022-01-12 16:59:47.573670362 -0000 -+++ b/refpolicy2/policy/modules/kernel/corenetwork.te.in 2022-01-12 17:03:12.754142616 -0000 -@@ -373,7 +373,7 @@ - - # Bind to any network address. - allow corenet_unconfined_type port_type:{ tcp_socket udp_socket rawip_socket sctp_socket } name_bind; --allow corenet_unconfined_type node_type:{ tcp_socket udp_socket rawip_socket sctp_socket } node_bind; -+allow corenet_unconfined_type node_type:{ icmp_socket tcp_socket udp_socket rawip_socket sctp_socket } node_bind; - - # Infiniband - corenet_ib_access_all_pkeys(corenet_unconfined_type) diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-container b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-container new file mode 120000 index 00000000000..283011aeaff --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-container @@ -0,0 +1 @@ +flatcar-selinux-patches \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-container/container.patch b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-container/container.patch deleted file mode 100644 index 809c81244ec..00000000000 --- a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-container/container.patch +++ /dev/null @@ -1,77 +0,0 @@ -diff --git a/policy/modules/services/container.fc b/policy/modules/services/container.fc -index 056aa6023..e4bcada03 100644 ---- a/refpolicy/policy/modules/services/container.fc -+++ b/refpolicy/policy/modules/services/container.fc -@@ -113,3 +113,5 @@ HOME_DIR/\.docker(/.*)? gen_context(system_u:object_r:container_conf_home_t,s0) - /var/log/kube-controller-manager(/.*)? gen_context(system_u:object_r:container_log_t,s0) - /var/log/kube-proxy(/.*)? gen_context(system_u:object_r:container_log_t,s0) - /var/log/kube-scheduler(/.*)? gen_context(system_u:object_r:container_log_t,s0) -+ -+/usr/share/containerd(/.*)? gen_context(system_u:object_r:container_config_t,s0) -diff --git a/policy/modules/services/container.te b/policy/modules/services/container.te -index 5de421fc3..4a6c2760e 100644 ---- a/refpolicy/policy/modules/services/container.te -+++ b/refpolicy/policy/modules/services/container.te -@@ -1007,3 +1007,62 @@ optional_policy(` - unconfined_domain_noaudit(spc_user_t) - domain_ptrace_all_domains(spc_user_t) - ') -+ -+allow container_domain self:socket_class_set { accept ioctl read getattr lock write append getopt setopt }; -+allow container_domain init_t:unix_stream_socket { accept ioctl read getattr lock write append getopt shutdown }; -+ -+# required for sharing /run for the etcd-wrapper -+files_mounton_runtime_dirs(container_engine_domain) -+ -+# this is a hack while the system is not labelled. we need to authorize transition from kernel_t -+require { -+ type kernel_t; -+ type tmpfs_t; -+ type var_lib_t; -+ type unconfined_t; -+} -+allow kernel_t container_t:process transition; -+allow initrc_t container_t:process transition; -+allow kernel_t container_t:process2 nnp_transition; -+allow kernel_t unconfined_t:process transition; -+fs_manage_tmpfs_chr_files(container_t) -+fs_manage_tmpfs_dirs(container_t) -+fs_manage_tmpfs_files(container_t) -+fs_manage_tmpfs_sockets(container_t) -+fs_manage_tmpfs_symlinks(container_t) -+fs_remount_tmpfs(container_t) -+kernel_read_messages(container_t) -+kernel_sigchld(container_t) -+kernel_use_fds(container_t) -+allow container_t self:process getcap; -+files_read_var_lib_files(container_t) -+files_read_var_lib_symlinks(container_t) -+term_use_generic_ptys(container_t) -+term_setattr_generic_ptys(container_t) -+allow container_t tmpfs_t:chr_file { read write open }; -+allow container_t container_file_t:chr_file { manage_file_perms }; -+allow container_t self:capability sys_chroot; -+allow container_t self:process getpgid; -+allow container_t container_file_t:file { entrypoint mounton }; -+allow container_t var_lib_t:file { entrypoint execute execute_no_trans }; -+allow container_t kernel_t:fifo_file { getattr ioctl read write open append }; -+allow container_t initrc_t:fifo_file { getattr ioctl read write open append }; -+filetrans_pattern(kernel_t, etc_t, container_file_t, dir, "cni"); -+ -+# this is required by flanneld -+allow container_t kernel_t:system { module_request }; -+ -+# required by flanneld to write into /run/flannel/subnet.env -+filetrans_pattern(kernel_t, var_run_t, container_file_t, dir, "flannel"); -+ -+# required for cilium -+allow kernel_t spc_t:process transition; -+# required for cilium, can be upstreamed -+# Jun 20 08:01:43 localhost audit[3480]: AVC avc: denied { open } for pid=3480 comm="cilium-agent" scontext=system_u:system_r:spc_t:s0 tcontext=system_u:system_r:spc_t:s0 tclass=perf_event permissive=1 -+# Jun 20 08:01:43 localhost audit[3480]: AVC avc: denied { kernel } for pid=3480 comm="cilium-agent" scontext=system_u:system_r:spc_t:s0 tcontext=system_u:system_r:spc_t:s0 tclass=perf_event permissive=1 -+# Jun 20 08:01:43 localhost audit[3480]: AVC avc: denied { cpu } for pid=3480 comm="cilium-agent" scontext=system_u:system_r:spc_t:s0 tcontext=system_u:system_r:spc_t:s0 tclass=perf_event permissive=1 -+# Jun 20 08:01:43 localhost audit[3480]: AVC avc: denied { read } for pid=3480 comm="cilium-agent" scontext=system_u:system_r:spc_t:s0 tcontext=system_u:system_r:spc_t:s0 tclass=perf_event permissive=1 -+allow spc_t self:perf_event { open cpu kernel read }; -+# required for using cilium cgroup v1 -+allow kernel_t self:perf_event { open cpu kernel read }; -+allow unconfined_t container_file_t:file { entrypoint }; diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-dbus b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-dbus new file mode 120000 index 00000000000..283011aeaff --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-dbus @@ -0,0 +1 @@ +flatcar-selinux-patches \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-sssd b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-sssd new file mode 120000 index 00000000000..283011aeaff --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-sssd @@ -0,0 +1 @@ +flatcar-selinux-patches \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-unconfined b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-unconfined new file mode 120000 index 00000000000..283011aeaff --- /dev/null +++ b/sdk_container/src/third_party/coreos-overlay/coreos/user-patches/sec-policy/selinux-unconfined @@ -0,0 +1 @@ +flatcar-selinux-patches \ No newline at end of file diff --git a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords index b2b8926d980..bcf17fd1d22 100644 --- a/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords +++ b/sdk_container/src/third_party/coreos-overlay/profiles/coreos/base/package.accept_keywords @@ -56,7 +56,7 @@ =dev-libs/libgcrypt-1.10.2 ~arm64 =dev-libs/libsodium-1.0.19-r1 ~arm64 =dev-libs/libunistring-1.1-r1 ~arm64 -=dev-util/bpftool-6.3 ~arm64 +=dev-util/bpftool-6.5.7 ~arm64 =net-firewall/conntrack-tools-1.4.6-r1 ~arm64 # Required for addressing CVE-2023-0361. @@ -71,25 +71,16 @@ # Keep versions on both arches in sync. =net-nds/openldap-2.6.4-r1 ~amd64 -=sec-policy/selinux-base-2.20200818-r3 ~arm64 -=sec-policy/selinux-base-policy-2.20200818-r3 ~arm64 -=sec-policy/selinux-unconfined-2.20200818-r2 ~arm64 -=sec-policy/selinux-virt-2.20200818-r2 ~arm64 -=sys-apps/checkpolicy-3.1 ~arm64 =sys-apps/kexec-tools-2.0.24 ~arm64 -=sys-apps/policycoreutils-3.1-r4 ~arm64 -=sys-apps/semodule-utils-3.1 ~arm64 -=sys-apps/smartmontools-7.4 ~arm64 =sys-block/thin-provisioning-tools-1.0.6 ~amd64 # Enable ipvsadm for arm64. =sys-cluster/ipvsadm-1.31-r1 ~arm64 # Keep versions on both arches in sync. +=sys-devel/binutils-2.40-r9 ~arm64 =sys-firmware/edk2-aarch64-18.02 ** -=sys-libs/libselinux-3.1-r3 ~arm64 -=sys-libs/libsemanage-3.1-r2 ~arm64 -=sys-libs/libsepol-3.1 ~arm64 +=sys-libs/binutils-libs-2.40-r7 ~arm64 # Needed to fix CVE-2023-29491. =sys-libs/ncurses-6.4_p20230527 ~amd64 ~arm64 @@ -99,7 +90,7 @@ =sys-libs/readline-8.2_p1 ~amd64 ~arm64 # Needed to fix CVE-2023-4016. -=sys-process/procps-4.0.4 ~amd64 ~arm64 +=sys-process/procps-4.0.4 ~amd64 # Accept unstable host Rust compilers. =virtual/rust-1.73.0 ~amd64 ~arm64 diff --git a/sdk_container/src/third_party/portage-stable/app-alternatives/gzip/gzip-1.ebuild b/sdk_container/src/third_party/portage-stable/app-alternatives/gzip/gzip-1.ebuild index 8a083740abc..e4bd6b71a0d 100644 --- a/sdk_container/src/third_party/portage-stable/app-alternatives/gzip/gzip-1.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-alternatives/gzip/gzip-1.ebuild @@ -11,7 +11,7 @@ ALTERNATIVES=( inherit app-alternatives DESCRIPTION="gzip symlinks" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="split-usr" RDEPEND=" diff --git a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.4.5.ebuild b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.4.5.ebuild index 817c272e119..b14b9dda369 100644 --- a/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.4.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-arch/xz-utils/xz-utils-5.4.5.ebuild @@ -35,7 +35,7 @@ else " if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi S="${WORKDIR}/${MY_P}" diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/Manifest b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/Manifest index 1dac761372e..df137dea8fa 100644 --- a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/Manifest @@ -2,3 +2,5 @@ DIST docker-cli-24.0.5-man.tar.xz 82496 BLAKE2B f3295b684dbf8d251ba13a19b9bad9b8 DIST docker-cli-24.0.5.tar.gz 6243993 BLAKE2B a7ce84ecf329bc74e48f3a6e1b12a9e310a8f27ac68918ffeb40ab9c4eab8b79e753265b48220fcd3ab40b4136de5ebd44607831f642664eaf732111bd8f41b1 SHA512 765c67634d91d248b156d3e407398b98b7a0a89507bbac0310d4a68b95aa1a05e3af43c8b90bc10166748749d8cc36670619fc9efca110beefbdcd4385dc96be DIST docker-cli-24.0.6-man.tar.xz 82600 BLAKE2B 9e39bf200d252a0d91b0b6f17680a4c1b34e55cc9f357a59f124138cef39c5ff10fb104c51efe3010bca9a4f72447764ced1c02e3bb3924051fa6f1f01a8f6fa SHA512 5e972647961899e438b765f53afff570b9f0c1742c7c72a3a424887719c3a6afbd467d15884d44ac64b752c984261967f304afa5c168466fe6f611967d18a578 DIST docker-cli-24.0.6.tar.gz 6244014 BLAKE2B c5f2082e44a568d3f6ee2ff5df9e9b727808f0b70d7d0c6c18b9769c1c4d0f49d371cbd08c95e748d441dc0ef011b66446527b0eeb33368ee59b85496185ba12 SHA512 55c56ae08eb314cce5f4c93544c6748586eadb3abe502d39d4d297e14d274af37346b38695a20a91dcfe51d3d35a77ddd7aa69d170b525e5e6ba345161869cd8 +DIST docker-cli-24.0.7-man.tar.xz 82228 BLAKE2B 7fbf114a724157243c78de9ae03b5d0b1237c5b506cd44edd7a28ffc13609a36b7acf66a25e1eff9f60966e48346d97e70f946cca9301f27fd0355db53a1994d SHA512 af2075e3c731c7e0da4941f4baf35e798f87d1e1f3fa09e85b27a4bcadfd767074af2acaff1fd919d8af2a89ed6d49daefcc0811342d1757886db7a28d1252f2 +DIST docker-cli-24.0.7.tar.gz 6451010 BLAKE2B de047f55ce388c09ec33492f470daf87c6f2d1651b0cd839634183494fba4065506661d2d15aac0dc076d005426411f4099ba8e8d95ea2c7247bb114a00f4eef SHA512 b4811e4ecaf1f17e5a53ee4fb34affab79545d87a1662b0f915efb28108989128f8bbf165c4aed111fcb0c851f7ec7d9137eb0f31447d698b058ff4200dba18d diff --git a/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-24.0.7.ebuild b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-24.0.7.ebuild new file mode 100644 index 00000000000..67adf9a5f12 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-containers/docker-cli/docker-cli-24.0.7.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +GIT_COMMIT=afdd53b4e3 +EGO_PN="github.com/docker/cli" +MY_PV=${PV/_/-} +inherit bash-completion-r1 golang-vcs-snapshot + +DESCRIPTION="the command line binary for docker" +HOMEPAGE="https://www.docker.com/" +SRC_URI="https://github.com/docker/cli/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz" +SRC_URI+=" https://dev.gentoo.org/~williamh/dist/${P}-man.tar.xz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" +IUSE="hardened selinux" + +RDEPEND="!' + elog + + if use device-mapper; then + elog " Devicemapper storage driver has been deprecated" + elog " It will be removed in a future release" + elog + fi + + if use overlay; then + elog " Overlay storage driver/USEflag has been deprecated" + elog " in favor of overlay2 (enabled unconditionally)" + elog + fi + + if has_version sys-fs/zfs; then + elog " ZFS storage driver is available" + elog " Check https://docs.docker.com/storage/storagedriver/zfs-driver for more info" + elog + fi +} + +pkg_postrm() { + udev_reload +} diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.2.1-r3.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.2.1-r3.ebuild index f0e6942d4e0..b86cc8d3ea5 100644 --- a/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.2.1-r3.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.2.1-r3.ebuild @@ -27,7 +27,7 @@ DEPEND=" dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtwidgets:5 - wayland? ( kde-frameworks/kwayland:5 ) + wayland? ( kde-plasma/kwayland:5 ) X? ( dev-qt/qtx11extras:5 x11-libs/libX11 diff --git a/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.2.1-r4.ebuild b/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.2.1-r4.ebuild new file mode 100644 index 00000000000..df4649ad6bf --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-crypt/pinentry/pinentry-1.2.1-r4.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc +inherit autotools qmake-utils verify-sig + +DESCRIPTION="Simple passphrase entry dialogs which utilize the Assuan protocol" +HOMEPAGE="https://gnupg.org/aegypten2/" +SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" +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 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="caps efl emacs gtk keyring ncurses qt5 wayland X" + +DEPEND=" + >=dev-libs/libassuan-2.1 + >=dev-libs/libgcrypt-1.6.3 + >=dev-libs/libgpg-error-1.17 + efl? ( dev-libs/efl[X] ) + keyring? ( app-crypt/libsecret ) + ncurses? ( sys-libs/ncurses:= ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + wayland? ( kde-plasma/kwayland:5 ) + X? ( + dev-qt/qtx11extras:5 + x11-libs/libX11 + ) + ) +" +RDEPEND=" + ${DEPEND} + gtk? ( app-crypt/gcr:0[gtk] ) +" +BDEPEND=" + sys-devel/gettext + virtual/pkgconfig + verify-sig? ( sec-keys/openpgp-keys-gnupg ) +" +PDEPEND="emacs? ( app-emacs/pinentry )" +IDEPEND=">=app-eselect/eselect-pinentry-0.7.2" + +DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO ) + +PATCHES=( + "${FILESDIR}/${PN}-1.0.0-AR.patch" + "${FILESDIR}/${PN}-1.2.1-automagic-capslock.patch" # bug #819939, bug #837719 +) + +src_prepare() { + default + + unset FLTK_CONFIG + + eautoreconf +} + +src_configure() { + export PATH="$(qt5_get_bindir):${PATH}" + export QTLIB="$(qt5_get_libdir)" + + local myeconfargs=( + $(use_enable efl pinentry-efl) + $(use_enable emacs pinentry-emacs) + $(use_enable keyring libsecret) + $(use_enable gtk pinentry-gnome3) + $(use_enable ncurses fallback-curses) + $(use_enable ncurses pinentry-curses) + $(use_enable qt5 pinentry-qt) + $(use_enable wayland kf5-wayland) + $(use_enable X qtx11extras) + $(use_with X x) + + --enable-pinentry-tty + --disable-pinentry-fltk + --disable-pinentry-gtk2 + + MOC="$(qt5_get_bindir)"/moc + GPG_ERROR_CONFIG="${ESYSROOT}"/usr/bin/${CHOST}-gpg-error-config + LIBASSUAN_CONFIG="${ESYSROOT}"/usr/bin/libassuan-config + + $("${S}/configure" --help | grep -- '--without-.*-prefix' | sed -e 's/^ *\([^ ]*\) .*/\1/g') + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + default + + rm "${ED}"/usr/bin/pinentry || die + + use qt5 && dosym pinentry-qt /usr/bin/pinentry-qt5 +} + +pkg_postinst() { + eselect pinentry update ifunset +} + +pkg_postrm() { + eselect pinentry update ifunset +} diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/Manifest b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/Manifest index 1ef215baf86..dee7d76f9aa 100644 --- a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/Manifest @@ -3,4 +3,6 @@ DIST vim-9.0.1503.tar.gz 17010118 BLAKE2B 4f74d52a3fcf7875031378f86fc3411c64c92e DIST vim-9.0.1627.tar.gz 17048824 BLAKE2B 3fa583cf676c2388641b1240ed4b90c2e42cd9f50ea44a943cce86bba4bf278adf54837bb5c4530471fd57cfcd08cd39be78b17a5e907435a02dc5874ff7f571 SHA512 d2fb863e03d4ad773fcba8917f3cd1e373f661aa8b8a20bd3e416a73788997d31c6dd106a1bf59d72475bb577bbe6d52eb079fff9c7152d96bb6e5c9aa6e2f3b DIST vim-9.0.1678.tar.gz 17069551 BLAKE2B e83cea77513eb0d8b3ed02bd508333fb97357d2d7a91a90c5a9376b03b444a0b65b6ce04b14e191e33445132845af71193ab140ea615bb03a2c24a904b726cb4 SHA512 c5ffb7ca56ff4eee70f06599dd84db2eb28ddadac229d4f7faf01174805923636a4ce61486bdf5a47910c929613dc9b9290dfc9288006222b4bc4ac891548bb8 DIST vim-9.0.1777.tar.gz 17177555 BLAKE2B ad6d785f4c6b112199bd2f34e0b7f6070615fba8dce25354a7ded40ff8536388e7b7120c1f2fad790c8dc7134d74649697b6e95777e79dcf1e208ead81b229d6 SHA512 702781b6a9cf540d22aa0bc1e25a4fb785ff2b22e9c6a59643e87fd6f7b3e5444adbee1816bfaa0b45b9655bb56dc2d13904230840a0ecea56f5453034d81a2e +DIST vim-9.0.2092-patches.tar.xz 2640 BLAKE2B 3a4b2bc57712de3b92b0e8d9b2d428e4d576665a183927051eddd53d019a5ca413c74dc10aff09917ee3120bd2e2ba441219d7238994f0d5ba14fc9c31180199 SHA512 ec27e4056460948ff86bc48a21de239a84b53757a8283144ec121654096796d970ad832234d6591a132bcd38bc12dc507cc7795a11cd383d20f08b4d9bcb051f +DIST vim-9.0.2092.tar.gz 17359377 BLAKE2B eeb50de7e4876ce0e2a1e8b241ea2c7c472898495ef5517fa115e01f29ef8922fb7ef970f2c1a3ffe65a8274e2c59bd5a939f397048c6b486683c29c01484d1e SHA512 1c3e78ee1bb507858e0d30a8a1e646c16dd6d8d666ea587e91d1c90e490aef46387d6dfadc01e80f9aa807f7b109e4072efa8d8115fcd2a81dd62cabc30a8001 DIST vim-patches-vim-9.0.1000-patches.tar.bz2 3245 BLAKE2B 3bf3d0e314cc3f96d5d9675de196a62c4c8a72645d56ef94b80768571c99cba5cc556442e3bd2dfa8818460fd851fe7bd1ae15999af7225fb271b81c43105843 SHA512 2883441a2001bf7ce89a7f0862f780b71cc0164c8fcb8dbdf7040e1bcbcf408d138d3d77f308aa54c762e9975fa5ec89cfceeabbf721344dfc938870a363667a diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.0.2092.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.0.2092.ebuild new file mode 100644 index 00000000000..7650dbd8918 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-editors/vim-core/vim-core-9.0.2092.ebuild @@ -0,0 +1,231 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please bump with app-editors/vim and app-editors/gvim + +VIM_VERSION="9.0" +VIM_PATCHES_VERSION="9.0.2092" +inherit bash-completion-r1 desktop flag-o-matic prefix toolchain-funcs vim-doc xdg-utils + +if [[ ${PV} == 9999* ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/vim/vim.git" + EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV} +else + SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz + https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi +S="${WORKDIR}/vim-${PV}" + +DESCRIPTION="vim and gvim shared files" +HOMEPAGE="https://www.vim.org https://github.com/vim/vim" + +LICENSE="vim" +SLOT="0" +IUSE="nls acl minimal" + +# ncurses is only needed by ./configure, so no subslot operator required +DEPEND=">=sys-libs/ncurses-5.2-r2:0" +BDEPEND="sys-devel/autoconf" + +if [[ ${PV} != 9999* ]]; then + # Gentoo patches to fix runtime issues, cross-compile errors, etc + PATCHES=( + "${WORKDIR}/vim-${VIM_PATCHES_VERSION}-patches" + ) +fi + +# platform-specific checks (bug #898406): +# - acl() -- Solaris +# - statacl() -- AIX +QA_CONFIG_IMPL_DECL_SKIP=( + 'acl' + 'statacl' +) + +pkg_setup() { + # people with broken alphabets run into trouble. bug #82186. + unset LANG LC_ALL + export LC_COLLATE="C" +} + +src_prepare() { + default + + # Fixup a script to use awk instead of nawk + sed -i \ + -e '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ + "${S}"/runtime/tools/mve.awk || die "sed failed" + + # See bug #77841. We remove this file after the tarball extraction. + rm -v "${S}"/runtime/tools/vimspell.sh || die "rm failed" + + # Read vimrc and gvimrc from /etc/vim + echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' >> "${S}"/src/feature.h || die + echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h || die + + # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. + # Hopefully this pattern won't break for a while at least. + # This fixes bug #29398 (27 Sep 2003 agriffis) + sed -i 's/\> "$c" || die "echo failed" + done + + # Try to avoid sandbox problems. Bug #114475. + if [[ -d "${S}"/src/po ]]; then + sed -i -e \ + '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ + "${S}"/src/po/Makefile || die "sed failed" + fi + + cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" + + # Fix bug #76331: -O3 causes problems, use -O2 instead. We'll do this for + # everyone since previous flag filtering bugs have turned out to affect + # multiple archs... + replace-flags -O3 -O2 + + # Fix bug #18245: Prevent "make" from the following chain: + # (1) Notice configure.ac is newer than auto/configure + # (2) Rebuild auto/configure + # (3) Notice auto/configure is newer than auto/config.mk + # (4) Run ./configure (with wrong args) to remake auto/config.mk + sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" + + # Remove src/auto/configure file. + rm -v src/auto/configure || die "rm configure failed" +} + +src_configure() { + # Fix bug #37354: Disallow -funroll-all-loops on amd64 + # Bug 57859 suggests that we want to do this for all archs + filter-flags -funroll-all-loops + + emake -j1 -C src autoconf + + # This should fix a sandbox violation (see bug 24447). The hvc + # things are for ppc64, see bug 86433. + for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do + if [[ -e "${file}" ]]; then + addwrite ${file} + fi + done + + # Let Portage do the stripping. Some people like that. + export ac_cv_prog_STRIP="$(type -P true ) faking strip" + + local myconf=( + --with-modified-by="Gentoo-${PVR} (RIP Bram)" + --enable-gui=no + --without-x + --disable-darwin + --disable-perlinterp + --disable-pythoninterp + --disable-rubyinterp + --disable-gpm + --disable-selinux + $(use_enable nls) + $(use_enable acl) + ) + + # Keep Gentoo Prefix env contained within the EPREFIX + use prefix && myconf+=( --without-local-dir ) + + if tc-is-cross-compiler ; then + export vim_cv_getcwd_broken=no \ + vim_cv_memmove_handles_overlap=yes \ + vim_cv_stat_ignores_slash=yes \ + vim_cv_terminfo=yes \ + vim_cv_toupper_broken=no + fi + + econf "${myconf[@]}" +} + +src_compile() { + emake -j1 -C src auto/osdef.h objects + emake tools +} + +src_test() { :; } + +src_install() { + local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} + + dodir /usr/{bin,share/{man/man1,vim}} + emake -C src \ + installruntime \ + installmanlinks \ + installmacros \ + installtutor \ + installtutorbin \ + installtools \ + install-languages \ + DESTDIR="${D}" \ + BINDIR="${EPREFIX}"/usr/bin \ + MANDIR="${EPREFIX}"/usr/share/man \ + DATADIR="${EPREFIX}"/usr/share + + keepdir ${vimfiles}/keymap + + # default vimrc is installed by vim-core since it applies to + # both vim and gvim + insinto /etc/vim/ + newins "${FILESDIR}"/vimrc-r6 vimrc + eprefixify "${ED}"/etc/vim/vimrc + + if use minimal; then + # To save space, install only a subset of the files. + # Helps minimalize the livecd, bug 65144. + rm -rv "${ED}${vimfiles}"/{compiler,doc,ftplugin,indent} || die + rm -rv "${ED}${vimfiles}"/{macros,print,tools,tutor} || die + rm -v "${ED}"/usr/bin/vimtutor || die + + for f in "${ED}${vimfiles}"/colors/*.vim; do + if [[ ${f} != */@(default).vim ]] ; then + printf '%s\0' "${f}" + fi + done | xargs -0 rm -f || die + + for f in "${ED}${vimfiles}"/syntax/*.vim; do + if [[ ${f} != */@(conf|crontab|fstab|inittab|resolv|sshdconfig|syntax|nosyntax|synload).vim ]] ; then + printf '%s\0' "${f}" + fi + done | xargs -0 rm -f || die + fi + + newbashcomp "${FILESDIR}"/xxd-completion xxd + + # install gvim icon since both vim/gvim desktop files reference it + doicon -s scalable "${FILESDIR}"/gvim.svg +} + +pkg_postinst() { + # update documentation tags (from vim-doc.eclass) + update_vim_helptags + + # update icon cache + xdg_icon_cache_update +} + +pkg_postrm() { + # Update documentation tags (from vim-doc.eclass) + update_vim_helptags + + # update icon cache + xdg_icon_cache_update +} diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim/Manifest b/sdk_container/src/third_party/portage-stable/app-editors/vim/Manifest index 1ef215baf86..dee7d76f9aa 100644 --- a/sdk_container/src/third_party/portage-stable/app-editors/vim/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-editors/vim/Manifest @@ -3,4 +3,6 @@ DIST vim-9.0.1503.tar.gz 17010118 BLAKE2B 4f74d52a3fcf7875031378f86fc3411c64c92e DIST vim-9.0.1627.tar.gz 17048824 BLAKE2B 3fa583cf676c2388641b1240ed4b90c2e42cd9f50ea44a943cce86bba4bf278adf54837bb5c4530471fd57cfcd08cd39be78b17a5e907435a02dc5874ff7f571 SHA512 d2fb863e03d4ad773fcba8917f3cd1e373f661aa8b8a20bd3e416a73788997d31c6dd106a1bf59d72475bb577bbe6d52eb079fff9c7152d96bb6e5c9aa6e2f3b DIST vim-9.0.1678.tar.gz 17069551 BLAKE2B e83cea77513eb0d8b3ed02bd508333fb97357d2d7a91a90c5a9376b03b444a0b65b6ce04b14e191e33445132845af71193ab140ea615bb03a2c24a904b726cb4 SHA512 c5ffb7ca56ff4eee70f06599dd84db2eb28ddadac229d4f7faf01174805923636a4ce61486bdf5a47910c929613dc9b9290dfc9288006222b4bc4ac891548bb8 DIST vim-9.0.1777.tar.gz 17177555 BLAKE2B ad6d785f4c6b112199bd2f34e0b7f6070615fba8dce25354a7ded40ff8536388e7b7120c1f2fad790c8dc7134d74649697b6e95777e79dcf1e208ead81b229d6 SHA512 702781b6a9cf540d22aa0bc1e25a4fb785ff2b22e9c6a59643e87fd6f7b3e5444adbee1816bfaa0b45b9655bb56dc2d13904230840a0ecea56f5453034d81a2e +DIST vim-9.0.2092-patches.tar.xz 2640 BLAKE2B 3a4b2bc57712de3b92b0e8d9b2d428e4d576665a183927051eddd53d019a5ca413c74dc10aff09917ee3120bd2e2ba441219d7238994f0d5ba14fc9c31180199 SHA512 ec27e4056460948ff86bc48a21de239a84b53757a8283144ec121654096796d970ad832234d6591a132bcd38bc12dc507cc7795a11cd383d20f08b4d9bcb051f +DIST vim-9.0.2092.tar.gz 17359377 BLAKE2B eeb50de7e4876ce0e2a1e8b241ea2c7c472898495ef5517fa115e01f29ef8922fb7ef970f2c1a3ffe65a8274e2c59bd5a939f397048c6b486683c29c01484d1e SHA512 1c3e78ee1bb507858e0d30a8a1e646c16dd6d8d666ea587e91d1c90e490aef46387d6dfadc01e80f9aa807f7b109e4072efa8d8115fcd2a81dd62cabc30a8001 DIST vim-patches-vim-9.0.1000-patches.tar.bz2 3245 BLAKE2B 3bf3d0e314cc3f96d5d9675de196a62c4c8a72645d56ef94b80768571c99cba5cc556442e3bd2dfa8818460fd851fe7bd1ae15999af7225fb271b81c43105843 SHA512 2883441a2001bf7ce89a7f0862f780b71cc0164c8fcb8dbdf7040e1bcbcf408d138d3d77f308aa54c762e9975fa5ec89cfceeabbf721344dfc938870a363667a diff --git a/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.0.2092.ebuild b/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.0.2092.ebuild new file mode 100644 index 00000000000..9a75568cdf8 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-editors/vim/vim-9.0.2092.ebuild @@ -0,0 +1,370 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please bump with app-editors/vim-core and app-editors/gvim + +VIM_VERSION="9.0" +VIM_PATCHES_VERSION="9.0.2092" + +LUA_COMPAT=( lua5-{1..4} luajit ) +PYTHON_COMPAT=( python3_{9..11} ) +PYTHON_REQ_USE="threads(+)" +USE_RUBY="ruby27 ruby30 ruby31" + +inherit vim-doc flag-o-matic bash-completion-r1 lua-single python-single-r1 ruby-single toolchain-funcs desktop xdg-utils + +if [[ ${PV} == 9999* ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/vim/vim.git" +else + SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz + https://git.sr.ht/~xxc3nsoredxx/vim-patches/refs/download/vim-${VIM_PATCHES_VERSION}-patches/vim-${VIM_PATCHES_VERSION}-patches.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi + +DESCRIPTION="Vim, an improved vi-style text editor" +HOMEPAGE="https://www.vim.org https://github.com/vim/vim" + +LICENSE="vim" +SLOT="0" +IUSE="X acl crypt cscope debug gpm lua minimal nls perl python racket ruby selinux sound tcl terminal vim-pager" +REQUIRED_USE=" + lua? ( ${LUA_REQUIRED_USE} ) + python? ( ${PYTHON_REQUIRED_USE} ) + vim-pager? ( !minimal ) +" + +RDEPEND=" + >=app-eselect/eselect-vi-1.1 + >=sys-libs/ncurses-5.2-r2:0= + nls? ( virtual/libintl ) + acl? ( kernel_linux? ( sys-apps/acl ) ) + crypt? ( dev-libs/libsodium:= ) + cscope? ( dev-util/cscope ) + gpm? ( >=sys-libs/gpm-1.19.3 ) + lua? ( ${LUA_DEPS} + $(lua_gen_impl_dep 'deprecated' lua5-1) + ) + ~app-editors/vim-core-${PV} + vim-pager? ( app-editors/vim-core[-minimal] ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + racket? ( dev-scheme/racket ) + ruby? ( ${RUBY_DEPS} ) + selinux? ( sys-libs/libselinux ) + sound? ( media-libs/libcanberra ) + tcl? ( dev-lang/tcl:0= ) + X? ( x11-libs/libXt ) +" +DEPEND="${RDEPEND}" +# configure runs the Lua interpreter +BDEPEND=" + sys-devel/autoconf + lua? ( ${LUA_DEPS} ) + nls? ( sys-devel/gettext ) +" +PDEPEND="!minimal? ( app-vim/gentoo-syntax )" + +if [[ ${PV} != 9999* ]]; then + # Gentoo patches to fix runtime issues, cross-compile errors, etc + PATCHES=( + "${WORKDIR}/vim-${VIM_PATCHES_VERSION}-patches" + ) +fi + +# platform-specific checks (bug #898452): +# - acl() -- Solaris +# - statacl() -- AIX +QA_CONFIG_IMPL_DECL_SKIP=( + 'acl' + 'statacl' +) + +pkg_setup() { + # people with broken alphabets run into trouble. bug #82186. + unset LANG LC_ALL + export LC_COLLATE="C" + + use lua && lua-single_pkg_setup + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + + # Fixup a script to use awk instead of nawk + sed -i -e \ + '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ + "${S}"/runtime/tools/mve.awk || die "mve.awk sed failed" + + # Read vimrc and gvimrc from /etc/vim + echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \ + >> "${S}"/src/feature.h || die "echo failed" + echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \ + >> "${S}"/src/feature.h || die "echo failed" + + # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. + # Hopefully this pattern won't break for a while at least. + # This fixes bug #29398 (27 Sep 2003 agriffis) + sed -i -e \ + 's/\> "$c" || die "echo failed" + done + + # conditionally make the manpager.sh script + if use vim-pager; then + cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed" + #!/bin/sh + sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\ + vim \\ + -c 'let no_plugin_maps = 1' \\ + -c 'set nolist nomod ft=man ts=8' \\ + -c 'let g:showmarks_enable=0' \\ + -c 'runtime! macros/less.vim' - + _EOF_ + fi + + # Try to avoid sandbox problems. Bug #114475. + if [[ -d "${S}"/src/po ]]; then + sed -i -e \ + '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ + "${S}"/src/po/Makefile || die "sed failed" + fi + + cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" + + # Fix bug 18245: Prevent "make" from the following chain: + # (1) Notice configure.ac is newer than auto/configure + # (2) Rebuild auto/configure + # (3) Notice auto/configure is newer than auto/config.mk + # (4) Run ./configure (with wrong args) to remake auto/config.mk + sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" + rm src/auto/configure || die "rm failed" +} + +src_configure() { + + # Fix bug #37354: Disallow -funroll-all-loops on amd64 + # Bug #57859 suggests that we want to do this for all archs + filter-flags -funroll-all-loops + + # Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for + # everyone since previous flag filtering bugs have turned out to affect + # multiple archs... + replace-flags -O3 -O2 + + emake -j1 -C src autoconf + + # This should fix a sandbox violation (see bug #24447). The hvc + # things are for ppc64, see bug #86433. + for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do + if [[ -e "${file}" ]]; then + addwrite ${file} + fi + done + + local myconf=() + if use minimal; then + myconf=( + --with-features=tiny + --disable-nls + --disable-canberra + --disable-acl + --enable-gui=no + --without-x + --disable-darwin + --disable-luainterp + --disable-perlinterp + --disable-pythoninterp + --disable-mzschemeinterp + --disable-rubyinterp + --disable-selinux + --disable-tclinterp + --disable-gpm + ) + else + use debug && append-flags "-DDEBUG" + + myconf=( + --with-features=huge + $(use_enable sound canberra) + $(use_enable acl) + $(use_enable crypt libsodium) + $(use_enable cscope) + $(use_enable gpm) + $(use_enable nls) + $(use_enable perl perlinterp) + $(use_enable python python3interp) + $(use_with python python3-command "${PYTHON}") + $(use_enable racket mzschemeinterp) + $(use_enable ruby rubyinterp) + $(use_enable selinux) + $(use_enable tcl tclinterp) + $(use_enable terminal) + ) + + # --with-features=huge forces on cscope even if we --disable it. We need + # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm) + if ! use cscope; then + sed -i -e \ + '/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed" + fi + + if use lua; then + # -DLUA_COMPAT_OPENLIB=1 is required to enable the + # deprecated (in 5.1) luaL_openlib API (#874690) + use lua_single_target_lua5-1 && append-cppflags -DLUA_COMPAT_OPENLIB=1 + + myconf+=( + --enable-luainterp + $(use_with lua_single_target_luajit luajit) + --with-lua-prefix="${EPREFIX}/usr" + ) + fi + + # don't test USE=X here ... see bug #19115 + # but need to provide a way to link against X ... see bug #20093 + myconf+=( + --enable-gui=no + --disable-darwin + $(use_with X x) + ) + fi + + # let package manager strip binaries + export ac_cv_prog_STRIP="$(type -P true ) faking strip" + + # keep prefix env contained within the EPREFIX + use prefix && myconf+=( --without-local-dir ) + + if tc-is-cross-compiler ; then + export vim_cv_getcwd_broken=no \ + vim_cv_memmove_handles_overlap=yes \ + vim_cv_stat_ignores_slash=yes \ + vim_cv_terminfo=yes \ + vim_cv_toupper_broken=no + fi + + econf \ + --with-modified-by="Gentoo-${PVR} (RIP Bram)" \ + "${myconf[@]}" +} + +src_compile() { + # The following allows emake to be used + emake -j1 -C src auto/osdef.h objects + + emake +} + +src_test() { + einfo + einfo "Starting vim tests. Several error messages will be shown" + einfo "while the tests run. This is normal behaviour and does not" + einfo "indicate a fault." + einfo + ewarn "If the tests fail, your terminal may be left in a strange" + ewarn "state. Usually, running 'reset' will fix this." + einfo + + # Don't let vim talk to X + unset DISPLAY + + # Arch and opensuse seem to do this and at this point, I'm willing + # to try anything to avoid random test hangs! + export TERM=xterm + + # See https://github.com/vim/vim/blob/f08b0eb8691ff09f98bc4beef986ece1c521655f/src/testdir/runtest.vim#L5 + # for more information on test variables we can use. + # Note that certain variables need vim-compatible regex (not PCRE), see e.g. + # http://www.softpanorama.org/Editors/Vimorama/vim_regular_expressions.shtml. + # + # Skipped tests: + # - Test_expand_star_star + # Hangs because of a recursive symlink in /usr/include/nodejs (bug #616680) + # - Test_exrc + # Looks in wrong location? (bug #742710) + # - Test_job_tty_in_out + # Fragile and depends on TERM(?) + # - Test_spelldump_bang + # Hangs. + # - Test_fuzzy_completion_env + # Too sensitive to leaked environment variables. + # - Test_term_mouse_multiple_clicks_to_select_mode + # Hangs. + # - Test_spelldump + # Hangs. + export TEST_SKIP_PAT='\(Test_expand_star_star\|Test_exrc\|Test_job_tty_in_out\|Test_spelldump_bang\|Test_fuzzy_completion_env\|Test_term_mouse_multiple_clicks_to_select_mode\|Test_spelldump\)' + + emake -j1 -C src/testdir nongui +} + +# Call eselect vi update with --if-unset +# to respect user's choice (bug #187449) +eselect_vi_update() { + ebegin "Calling eselect vi update" + eselect vi update --if-unset + eend $? +} + +src_install() { + local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} + + # Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are + # managed by eselect-vi + dobin src/vim + if ! use minimal ; then + dosym vim /usr/bin/vimdiff + fi + dosym vim /usr/bin/rvim + dosym vim /usr/bin/rview + if use vim-pager ; then + dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager + dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager + insinto ${vimfiles}/macros + doins runtime/macros/manpager.sh + fperms a+x ${vimfiles}/macros/manpager.sh + fi + + domenu runtime/vim.desktop + + newbashcomp "${FILESDIR}"/${PN}-completion ${PN} + + # keep in sync with 'complete ... -F' list + bashcomp_alias vim ex vi view rvim rview vimdiff +} + +pkg_postinst() { + # Update documentation tags (from vim-doc.eclass) + update_vim_helptags + + # Call eselect vi update + eselect_vi_update + + # update desktop file mime cache + xdg_desktop_database_update +} + +pkg_postrm() { + # Update documentation tags (from vim-doc.eclass) + update_vim_helptags + + # Call eselect vi update + eselect_vi_update + + # update desktop file mime cache + xdg_desktop_database_update +} diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/Manifest b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/Manifest index 910dd2f70ad..237f5e529e8 100644 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/Manifest @@ -4,8 +4,10 @@ DIST keycodemapdb-f5772a62ec52591ff6870b7e8ef32482371f22c6.tar.bz2 27971 BLAKE2B DIST qemu-7.2.0-docs.tar.xz 1984184 BLAKE2B 103900fb7903ed8d75f7f012bf61fa2d6fce345b657c851d0437c3384f5735bd1cfd3129320683ea7846ea0b0940e5af5b2663c9320f12fee74b058523a8ea06 SHA512 a7edd448982865e07533c300d3e44a8b50cefbdde1982b73c24d0b2aa74315439252c59b634c75de312860874c7b06c75aa72629da681b5105f28ee936794585 DIST qemu-7.2.4.tar.xz 121849100 BLAKE2B a9c5ffce9ff0fac4e2d1fa4be1a1dcee2f5d7f793ddf726871c5ae9a68c22f7ba03692a8a5096de3051030d3c2f34e46697d5af2d66c34984b8161ae3bb07b42 SHA512 fa765673833a1f2cbecdb9d47dc7dc29d7613be5a5c8fc63925ae70e1f5aafb4f9f02e45b212a329f17b689351b8a9cdf5f5235ab6adb71bb40e41868898d95b DIST qemu-7.2.6.tar.xz 121322888 BLAKE2B c3f51cc1647f5c75774513f624c2e1a1e4badd7275c9f9a64a175809daf17d0b3c58eab0c36fa98fc46834d4d79f8552d1c9f34e840ee21ddd049cc3adba480a SHA512 534fffe2d751a707a7cf15db8d5b9eddc2468fd7fe875715e79ee879fb20d7370553588384d345b586eeaddf9284de36f2d0d69f747380ee55161cc6eb09bf30 +DIST qemu-7.2.7.tar.xz 121869000 BLAKE2B b8d754c4c4e4aea63dc884ec568edf308829fe869e4eb8b9c0ae6a4f30debcbaa6a584decce416eed7bd4dd4913263238ed28575a1cf56db939bc141815de25a SHA512 44c0023a9f6177706be5e565297b0ff5fd62a0ea17b085fe478677ada33ab4c922968e4e8fca7aecb310b2b7809a08c075262cc640981a42bcee618e6ae4e592 DIST qemu-8.0.0-docs.tar.xz 3218024 BLAKE2B b764a625024e78a39470048355471e12cfb57ab3c34e764dc4200fdf5c1aea635d26095ec961979bf46f177101c5bd38618bacf7e98e04bd64688ab5e29591aa SHA512 d9dfe191372e105fe16fe8f66f41ed793ade4c89b5ab1d84b39459f3419a1ca61bd49422a83981965cc257c05eca7fd49054703f58f179f5c7b656e9473a1054 DIST qemu-8.0.4.tar.xz 126179324 BLAKE2B dfb98964c629b251f0004b4630ae4500a52465579417d6f5c7dbbb1f672e10d8d7ffb98a4b00e26fb98b3c867208146dbdca026e4d30cbf1752ac733c4d9b915 SHA512 bd5ed682d51f974abd4be93f949701f9b5bfb87fd9929e31df130534da2f2c03b99adc9f924b3efd47d3b254e0e3c0046f4e69fbe9f6d0c4ac1f6babecb29449 DIST qemu-8.0.5.tar.xz 126175064 BLAKE2B 1d1f78c185ab64b4ca946a44ad04d0bbb6ea48de058037e4ba18176abeb0f0528754c6e832f742f93227182bbce145544eca5b908a366006e7ee58876aca0bda SHA512 ec9679473dda84a2f56ae8ee0039ec4dafb056414bfc5a3a147b2b6bb45ae3b130dd80f6385e8567b5d18f4be94f3536bc8acc45c61eddf40c9678b46cb8bddc DIST qemu-8.1.0-docs.tar.xz 2129912 BLAKE2B 8aaf7b748538afdb5bcb6da15dbd96572d086824377c4b0e93f1ddc695f9a4775471e360a9616d2d481dbf8113e91d2601c69d92cef565fb90b65ffacfdb304e SHA512 905515742bb56a439fc8117ec48ea668e7b2bf0244587673e4352d9e8e49911eb84ff093596ff566e44787197cf9789ec8950e3d75fb7a670c5546394a322ac9 DIST qemu-8.1.2.tar.xz 123553328 BLAKE2B 8f48638cd1f0285356aae2d14862f56cc79da09bb9ff9f09e90221fdca851e9c3f8a3d940039f578d24d0b4435baf19cb52a3e927e97bf978ea674d148ecd746 SHA512 d95ba8b294115b86b7f3bd1b438b059e38c7ccc68f14e76b455b355b4b68ec84fb799bef44dbf96befcad7c40a15f4660096b5ad5be4396d54dfeaba34c89db8 +DIST qemu-8.1.3.tar.xz 124040288 BLAKE2B 365b5fa508c57f4738b73666c6f7306985b5d3fe00d1f1bd14d9277121adbd7ffda7764fbded834512e88d19f96b2c3def39bdf336396c27b26dc388c3821852 SHA512 d3847f1c0c0099937d08bba604713ac288b6151867a8da230297ee1d93b7e741fa406a2f7bf6645ce3293c0a98458dc9c79454746e7c2920e9a73e0574753e5a diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/files/qemu-7.2.0-tcg-curl-ssl.patch b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/files/qemu-7.2.0-tcg-curl-ssl.patch deleted file mode 100644 index 2b0a9f63037..00000000000 --- a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/files/qemu-7.2.0-tcg-curl-ssl.patch +++ /dev/null @@ -1,182 +0,0 @@ -https://bugs.gentoo.org/895746#c3 -https://gitlab.com/qemu-project/qemu/-/issues/1471 -https://gitlab.com/qemu-project/qemu/-/commit/60c7dd22e1383754d5f150bc9f7c2785c662a7b6 - -From 60c7dd22e1383754d5f150bc9f7c2785c662a7b6 Mon Sep 17 00:00:00 2001 -From: Paolo Bonzini -Date: Tue, 31 Jan 2023 09:48:03 +0100 -Subject: [PATCH] target/i386: fix ADOX followed by ADCX - -When ADCX is followed by ADOX or vice versa, the second instruction's -carry comes from EFLAGS and the condition codes use the CC_OP_ADCOX -operation. Retrieving the carry from EFLAGS is handled by this bit -of gen_ADCOX: - - tcg_gen_extract_tl(carry_in, cpu_cc_src, - ctz32(cc_op == CC_OP_ADCX ? CC_C : CC_O), 1); - -Unfortunately, in this case cc_op has been overwritten by the previous -"if" statement to CC_OP_ADCOX. This works by chance when the first -instruction is ADCX; however, if the first instruction is ADOX, -ADCX will incorrectly take its carry from OF instead of CF. - -Fix by moving the computation of the new cc_op at the end of the function. -The included exhaustive test case fails without this patch and passes -afterwards. - -Because ADCX/ADOX need not be invoked through the VEX prefix, this -regression bisects to commit 16fc5726a6e2 ("target/i386: reimplement -0x0f 0x38, add AVX", 2022-10-18). However, the mistake happened a -little earlier, when BMI instructions were rewritten using the new -decoder framework. - -Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1471 -Reported-by: Paul Jolly -Fixes: 1d0b926150e5 ("target/i386: move scalar 0F 38 and 0F 3A instruction to new decoder", 2022-10-18) -Cc: qemu-stable@nongnu.org -Signed-off-by: Paolo Bonzini ---- a/target/i386/tcg/emit.c.inc -+++ b/target/i386/tcg/emit.c.inc -@@ -1015,6 +1015,7 @@ VSIB_AVX(VPGATHERQ, vpgatherq) - - static void gen_ADCOX(DisasContext *s, CPUX86State *env, MemOp ot, int cc_op) - { -+ int opposite_cc_op; - TCGv carry_in = NULL; - TCGv carry_out = (cc_op == CC_OP_ADCX ? cpu_cc_dst : cpu_cc_src2); - TCGv zero; -@@ -1022,14 +1023,8 @@ static void gen_ADCOX(DisasContext *s, CPUX86State *env, MemOp ot, int cc_op) - if (cc_op == s->cc_op || s->cc_op == CC_OP_ADCOX) { - /* Re-use the carry-out from a previous round. */ - carry_in = carry_out; -- cc_op = s->cc_op; -- } else if (s->cc_op == CC_OP_ADCX || s->cc_op == CC_OP_ADOX) { -- /* Merge with the carry-out from the opposite instruction. */ -- cc_op = CC_OP_ADCOX; -- } -- -- /* If we don't have a carry-in, get it out of EFLAGS. */ -- if (!carry_in) { -+ } else { -+ /* We don't have a carry-in, get it out of EFLAGS. */ - if (s->cc_op != CC_OP_ADCX && s->cc_op != CC_OP_ADOX) { - gen_compute_eflags(s); - } -@@ -1053,7 +1048,14 @@ static void gen_ADCOX(DisasContext *s, CPUX86State *env, MemOp ot, int cc_op) - tcg_gen_add2_tl(s->T0, carry_out, s->T0, carry_out, s->T1, zero); - break; - } -- set_cc_op(s, cc_op); -+ -+ opposite_cc_op = cc_op == CC_OP_ADCX ? CC_OP_ADOX : CC_OP_ADCX; -+ if (s->cc_op == CC_OP_ADCOX || s->cc_op == opposite_cc_op) { -+ /* Merge with the carry-out from the opposite instruction. */ -+ set_cc_op(s, CC_OP_ADCOX); -+ } else { -+ set_cc_op(s, cc_op); -+ } - } - - static void gen_ADCX(DisasContext *s, CPUX86State *env, X86DecodedInsn *decode) ---- a/tests/tcg/i386/Makefile.target -+++ b/tests/tcg/i386/Makefile.target -@@ -14,7 +14,7 @@ config-cc.mak: Makefile - I386_SRCS=$(notdir $(wildcard $(I386_SRC)/*.c)) - ALL_X86_TESTS=$(I386_SRCS:.c=) - SKIP_I386_TESTS=test-i386-ssse3 test-avx test-3dnow test-mmx --X86_64_TESTS:=$(filter test-i386-bmi2 $(SKIP_I386_TESTS), $(ALL_X86_TESTS)) -+X86_64_TESTS:=$(filter test-i386-adcox test-i386-bmi2 $(SKIP_I386_TESTS), $(ALL_X86_TESTS)) - - test-i386-sse-exceptions: CFLAGS += -msse4.1 -mfpmath=sse - run-test-i386-sse-exceptions: QEMU_OPTS += -cpu max -@@ -28,6 +28,10 @@ test-i386-bmi2: CFLAGS=-O2 - run-test-i386-bmi2: QEMU_OPTS += -cpu max - run-plugin-test-i386-bmi2-%: QEMU_OPTS += -cpu max - -+test-i386-adcox: CFLAGS=-O2 -+run-test-i386-adcox: QEMU_OPTS += -cpu max -+run-plugin-test-i386-adcox-%: QEMU_OPTS += -cpu max -+ - # - # hello-i386 is a barebones app - # ---- /dev/null -+++ b/tests/tcg/i386/test-i386-adcox.c -@@ -0,0 +1,75 @@ -+/* See if various BMI2 instructions give expected results */ -+#include -+#include -+#include -+ -+#define CC_C 1 -+#define CC_O (1 << 11) -+ -+#ifdef __x86_64__ -+#define REG uint64_t -+#else -+#define REG uint32_t -+#endif -+ -+void test_adox_adcx(uint32_t in_c, uint32_t in_o, REG adcx_operand, REG adox_operand) -+{ -+ REG flags; -+ REG out_adcx, out_adox; -+ -+ asm("pushf; pop %0" : "=r"(flags)); -+ flags &= ~(CC_C | CC_O); -+ flags |= (in_c ? CC_C : 0); -+ flags |= (in_o ? CC_O : 0); -+ -+ out_adcx = adcx_operand; -+ out_adox = adox_operand; -+ asm("push %0; popf;" -+ "adox %3, %2;" -+ "adcx %3, %1;" -+ "pushf; pop %0" -+ : "+r" (flags), "+r" (out_adcx), "+r" (out_adox) -+ : "r" ((REG)-1), "0" (flags), "1" (out_adcx), "2" (out_adox)); -+ -+ assert(out_adcx == in_c + adcx_operand - 1); -+ assert(out_adox == in_o + adox_operand - 1); -+ assert(!!(flags & CC_C) == (in_c || adcx_operand)); -+ assert(!!(flags & CC_O) == (in_o || adox_operand)); -+} -+ -+void test_adcx_adox(uint32_t in_c, uint32_t in_o, REG adcx_operand, REG adox_operand) -+{ -+ REG flags; -+ REG out_adcx, out_adox; -+ -+ asm("pushf; pop %0" : "=r"(flags)); -+ flags &= ~(CC_C | CC_O); -+ flags |= (in_c ? CC_C : 0); -+ flags |= (in_o ? CC_O : 0); -+ -+ out_adcx = adcx_operand; -+ out_adox = adox_operand; -+ asm("push %0; popf;" -+ "adcx %3, %1;" -+ "adox %3, %2;" -+ "pushf; pop %0" -+ : "+r" (flags), "+r" (out_adcx), "+r" (out_adox) -+ : "r" ((REG)-1), "0" (flags), "1" (out_adcx), "2" (out_adox)); -+ -+ assert(out_adcx == in_c + adcx_operand - 1); -+ assert(out_adox == in_o + adox_operand - 1); -+ assert(!!(flags & CC_C) == (in_c || adcx_operand)); -+ assert(!!(flags & CC_O) == (in_o || adox_operand)); -+} -+ -+int main(int argc, char *argv[]) { -+ /* try all combinations of input CF, input OF, CF from op1+op2, OF from op2+op1 */ -+ int i; -+ for (i = 0; i <= 15; i++) { -+ printf("%d\n", i); -+ test_adcx_adox(!!(i & 1), !!(i & 2), !!(i & 4), !!(i & 8)); -+ test_adox_adcx(!!(i & 1), !!(i & 2), !!(i & 4), !!(i & 8)); -+ } -+ return 0; -+} -+ --- -GitLab diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-7.2.7.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-7.2.7.ebuild new file mode 100644 index 00000000000..dd5799797da --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-7.2.7.ebuild @@ -0,0 +1,971 @@ +# Copyright 1999-2023 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-qemu-docs +# Set to 1 if prebuilt, 0 if not +# (the construct below is to allow overriding from env for script) +QEMU_DOCS_PREBUILT=${QEMU_DOCS_PREBUILT:-1} +QEMU_DOCS_PREBUILT_DEV=ajak +QEMU_DOCS_VERSION="7.2.0" +# Default to generating docs (inc. man pages) if no prebuilt; overridden later +# bug #830088 +QEMU_DOC_USEFLAG="+doc" + +PYTHON_COMPAT=( python3_{9,10,11} ) +PYTHON_REQ_USE="ncurses,readline" + +FIRMWARE_ABI_VERSION="7.2.0" + +inherit linux-info toolchain-funcs python-r1 udev fcaps readme.gentoo-r1 \ + pax-utils xdg-utils + +if [[ ${PV} == *9999* ]]; then + QEMU_DOCS_PREBUILT=0 + + EGIT_REPO_URI="https://gitlab.com/qemu-project/qemu.git/" + EGIT_SUBMODULES=( + tests/fp/berkeley-softfloat-3 + tests/fp/berkeley-testfloat-3 + ui/keycodemapdb + ) + inherit git-r3 + SRC_URI="" +else + MY_P="${PN}-${PV/_rc/-rc}" + SRC_URI="https://download.qemu.org/${MY_P}.tar.xz" + + if [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then + SRC_URI+=" !doc? ( https://dev.gentoo.org/~${QEMU_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${QEMU_DOCS_VERSION}-docs.tar.xz )" + fi + + S="${WORKDIR}/${MY_P}" + [[ "${PV}" != *_rc* ]] && KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +fi + +DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" +HOMEPAGE="https://www.qemu.org https://www.linux-kvm.org" + +LICENSE="GPL-2 LGPL-2 BSD-2" +SLOT="0" + +[[ ${QEMU_DOCS_PREBUILT} == 1 ]] && QEMU_DOC_USEFLAG="doc" + +IUSE="accessibility +aio alsa bpf bzip2 capstone +curl debug ${QEMU_DOC_USEFLAG} + +fdt fuse glusterfs +gnutls gtk infiniband iscsi io-uring + jack jemalloc +jpeg + lzo multipath + ncurses nfs nls numa opengl +oss pam +pin-upstream-blobs + plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux + +slirp + smartcard snappy spice ssh static static-user systemtap test udev usb + usbredir vde +vhost-net virgl virtfs +vnc vte xattr xen + zstd" + +COMMON_TARGETS=" + aarch64 + alpha + arm + cris + hppa + i386 + loongarch64 + m68k + microblaze + microblazeel + mips + mips64 + mips64el + mipsel + nios2 + or1k + ppc + ppc64 + riscv32 + riscv64 + s390x + sh4 + sh4eb + sparc + sparc64 + x86_64 + xtensa + xtensaeb +" +IUSE_SOFTMMU_TARGETS=" + ${COMMON_TARGETS} + avr + rx + tricore +" +IUSE_USER_TARGETS=" + ${COMMON_TARGETS} + aarch64_be + armeb + hexagon + mipsn32 + mipsn32el + ppc64le + sparc32plus +" + +use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS}) +use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS}) +IUSE+=" ${use_softmmu_targets} ${use_user_targets}" + +RESTRICT="!test? ( test )" + +# Allow no targets to be built so that people can get a tools-only build. +# Block USE flag configurations known to not work. +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} + qemu_softmmu_targets_arm? ( fdt ) + qemu_softmmu_targets_microblaze? ( fdt ) + qemu_softmmu_targets_mips64el? ( fdt ) + qemu_softmmu_targets_ppc64? ( fdt ) + qemu_softmmu_targets_ppc? ( fdt ) + qemu_softmmu_targets_riscv32? ( fdt ) + qemu_softmmu_targets_riscv64? ( fdt ) + qemu_softmmu_targets_x86_64? ( fdt ) + sdl-image? ( sdl ) + static? ( static-user !alsa !gtk !jack !opengl !pam !pulseaudio !plugins !rbd !snappy !udev ) + static-user? ( !plugins ) + virgl? ( opengl ) + virtfs? ( xattr ) + vnc? ( gnutls ) + vte? ( gtk ) + multipath? ( udev ) + plugins? ( !static !static-user ) +" +for smname in ${IUSE_SOFTMMU_TARGETS} ; do + REQUIRED_USE+=" qemu_softmmu_targets_${smname}? ( seccomp ) " +done + +# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...) +# and user/softmmu targets (qemu-*, qemu-system-*). +# +# Yep, you need both libcap and libcap-ng since virtfs only uses libcap. +# +# The attr lib isn't always linked in (although the USE flag is always +# respected). This is because qemu supports using the C library's API +# when available rather than always using the external library. +ALL_DEPEND=" + dev-libs/glib:2[static-libs(+)] + sys-libs/zlib[static-libs(+)] + python? ( ${PYTHON_DEPS} ) + systemtap? ( dev-util/systemtap ) + xattr? ( sys-apps/attr[static-libs(+)] )" + +# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...) +# softmmu targets (qemu-system-*). +SOFTMMU_TOOLS_DEPEND=" + sys-libs/libcap-ng[static-libs(+)] + >=x11-libs/pixman-0.28.0[static-libs(+)] + accessibility? ( + app-accessibility/brltty[api] + app-accessibility/brltty[static-libs(+)] + ) + aio? ( dev-libs/libaio[static-libs(+)] ) + alsa? ( >=media-libs/alsa-lib-1.0.13 ) + bpf? ( dev-libs/libbpf:= ) + bzip2? ( app-arch/bzip2[static-libs(+)] ) + capstone? ( dev-libs/capstone:=[static-libs(+)] ) + curl? ( >=net-misc/curl-7.15.4[static-libs(+)] ) + fdt? ( >=sys-apps/dtc-1.5.1[static-libs(+)] ) + fuse? ( >=sys-fs/fuse-3.1:3[static-libs(+)] ) + glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] ) + gnutls? ( + >=net-libs/gnutls-3.0:=[static-libs(+)] + dev-libs/nettle:=[static-libs(+)] + ) + gtk? ( + x11-libs/cairo + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/libX11 + vte? ( x11-libs/vte:2.91 ) + ) + infiniband? ( sys-cluster/rdma-core[static-libs(+)] ) + iscsi? ( net-libs/libiscsi ) + io-uring? ( sys-libs/liburing:=[static-libs(+)] ) + jack? ( virtual/jack ) + jemalloc? ( dev-libs/jemalloc ) + jpeg? ( media-libs/libjpeg-turbo:=[static-libs(+)] ) + lzo? ( dev-libs/lzo:2[static-libs(+)] ) + multipath? ( sys-fs/multipath-tools ) + ncurses? ( + sys-libs/ncurses:=[unicode(+)] + sys-libs/ncurses:=[static-libs(+)] + ) + nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] ) + numa? ( sys-process/numactl[static-libs(+)] ) + opengl? ( + virtual/opengl + media-libs/libepoxy[static-libs(+)] + media-libs/mesa[static-libs(+)] + media-libs/mesa[egl(+),gbm(+)] + ) + pam? ( sys-libs/pam ) + png? ( media-libs/libpng:0=[static-libs(+)] ) + pulseaudio? ( media-libs/libpulse ) + rbd? ( sys-cluster/ceph ) + sasl? ( dev-libs/cyrus-sasl[static-libs(+)] ) + sdl? ( + media-libs/libsdl2[video] + media-libs/libsdl2[static-libs(+)] + ) + sdl-image? ( media-libs/sdl2-image[static-libs(+)] ) + seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] ) + slirp? ( net-libs/libslirp[static-libs(+)] ) + smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] ) + snappy? ( app-arch/snappy:= ) + spice? ( + >=app-emulation/spice-protocol-0.12.3 + >=app-emulation/spice-0.12.0[static-libs(+)] + ) + ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] ) + udev? ( virtual/libudev:= ) + usb? ( >=virtual/libusb-1-r2:1[static-libs(+)] ) + usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] ) + vde? ( net-misc/vde[static-libs(+)] ) + virgl? ( media-libs/virglrenderer[static-libs(+)] ) + virtfs? ( sys-libs/libcap ) + xen? ( app-emulation/xen-tools:= ) + zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] ) +" + +EDK2_OVMF_VERSION="202202" +SEABIOS_VERSION="1.16.0" + +X86_FIRMWARE_DEPEND=" + pin-upstream-blobs? ( + ~sys-firmware/edk2-ovmf-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/ipxe[qemu] + || ( + >=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios] + >=sys-firmware/seabios-bin-${SEABIOS_VERSION} + ) + sys-firmware/sgabios + )" +PPC_FIRMWARE_DEPEND=" + pin-upstream-blobs? ( + ~sys-firmware/seabios-bin-${SEABIOS_VERSION} + ) + !pin-upstream-blobs? ( + || ( + >=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios] + >=sys-firmware/seabios-bin-${SEABIOS_VERSION} + ) + ) +" + +BDEPEND=" + $(python_gen_impl_dep) + dev-lang/perl + dev-util/meson + sys-apps/texinfo + virtual/pkgconfig + doc? ( + dev-python/sphinx[${PYTHON_USEDEP}] + dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}] + ) + gtk? ( nls? ( sys-devel/gettext ) ) + test? ( + dev-libs/glib[utils] + sys-devel/bc + ) +" +CDEPEND=" + !static? ( + ${ALL_DEPEND//\[static-libs(+)]} + ${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]} + ) + qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} ) + qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} ) + qemu_softmmu_targets_ppc? ( ${PPC_FIRMWARE_DEPEND} ) + qemu_softmmu_targets_ppc64? ( ${PPC_FIRMWARE_DEPEND} ) +" +DEPEND="${CDEPEND} + kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 ) + static? ( + ${ALL_DEPEND} + ${SOFTMMU_TOOLS_DEPEND} + ) + static-user? ( ${ALL_DEPEND} )" +RDEPEND="${CDEPEND} + acct-group/kvm + selinux? ( + sec-policy/selinux-qemu + sys-libs/libselinux + )" + +PATCHES=( + "${FILESDIR}"/${PN}-5.2.0-disable-keymap.patch + "${FILESDIR}"/${PN}-6.0.0-make.patch + "${FILESDIR}"/${PN}-7.1.0-also-build-virtfs-proxy-helper.patch + "${FILESDIR}"/${PN}-7.1.0-capstone-include-path.patch + "${FILESDIR}"/${PN}-7.2.0-disable-gmp.patch +) + +QA_PREBUILT=" + usr/share/qemu/hppa-firmware.img + usr/share/qemu/openbios-ppc + usr/share/qemu/openbios-sparc64 + usr/share/qemu/openbios-sparc32 + usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.elf + usr/share/qemu/opensbi-riscv32-generic-fw_dynamic.elf + usr/share/qemu/palcode-clipper + usr/share/qemu/s390-ccw.img + usr/share/qemu/s390-netboot.img + usr/share/qemu/u-boot.e500 +" + +QA_WX_LOAD="usr/bin/qemu-i386 + usr/bin/qemu-x86_64 + usr/bin/qemu-alpha + usr/bin/qemu-arm + usr/bin/qemu-cris + usr/bin/qemu-m68k + usr/bin/qemu-microblaze + usr/bin/qemu-microblazeel + usr/bin/qemu-mips + usr/bin/qemu-mipsel + usr/bin/qemu-or1k + usr/bin/qemu-ppc + usr/bin/qemu-ppc64 + usr/bin/qemu-sh4 + usr/bin/qemu-sh4eb + usr/bin/qemu-sparc + usr/bin/qemu-sparc64 + usr/bin/qemu-armeb + usr/bin/qemu-sparc32plus + usr/bin/qemu-s390x + usr/bin/qemu-unicore32 +" + +DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the +kernel module loaded before running kvm. The easiest way to ensure that the +kernel module is loaded is to load it on boot. + For AMD CPUs the module is called 'kvm-amd'. + For Intel CPUs the module is called 'kvm-intel'. +Please review /etc/conf.d/modules for how to load these. + +Make sure your user is in the 'kvm' group. Just run + $ gpasswd -a kvm +then have re-login. + +For brand new installs, the default permissions on /dev/kvm might not let +you access it. You can tell udev to reset ownership/perms: + $ udevadm trigger -c add /dev/kvm + +If you want to register binfmt handlers for qemu user targets: +For openrc: + # rc-update add qemu-binfmt +For systemd: + # ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf" + +pkg_pretend() { + if use kernel_linux && kernel_is lt 2 6 25; then + eerror "This version of KVM requires a host kernel of 2.6.25 or higher." + elif use kernel_linux; then + if ! linux_config_exists; then + eerror "Unable to check your kernel for KVM support" + else + CONFIG_CHECK="~KVM ~TUN ~BRIDGE" + ERROR_KVM="You must enable KVM in your kernel to continue" + ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in" + ERROR_KVM_AMD+=" your kernel configuration." + ERROR_KVM_INTEL="If you have an Intel CPU, you must enable" + ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration." + ERROR_TUN="You will need the Universal TUN/TAP driver compiled" + ERROR_TUN+=" into your kernel or loaded as a module to use the" + ERROR_TUN+=" virtual network device if using -net tap." + ERROR_BRIDGE="You will also need support for 802.1d" + ERROR_BRIDGE+=" Ethernet Bridging for some network configurations." + use vhost-net && CONFIG_CHECK+=" ~VHOST_NET" + ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net" + ERROR_VHOST_NET+=" support" + + if use amd64 || use x86 || use amd64-linux || use x86-linux; then + if grep -q AuthenticAMD /proc/cpuinfo; then + CONFIG_CHECK+=" ~KVM_AMD" + elif grep -q GenuineIntel /proc/cpuinfo; then + CONFIG_CHECK+=" ~KVM_INTEL" + fi + fi + + use python && CONFIG_CHECK+=" ~DEBUG_FS" + ERROR_DEBUG_FS="debugFS support required for kvm_stat" + + # Now do the actual checks setup above + check_extra_config + fi + fi + + if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then + eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt" + eerror "instances are still pointing to it. Please update your" + eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag" + eerror "and the right system binary (e.g. qemu-system-x86_64)." + die "update your virt configs to not use qemu-kvm" + fi +} + +# Sanity check to make sure target lists are kept up-to-date. +check_targets() { + local var=$1 mak=$2 + local detected sorted + + pushd "${S}"/configs/targets/ >/dev/null || die + + # Force C locale until glibc is updated. #564936 + detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u)) + sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u)) + if [[ ${sorted} != "${detected}" ]] ; then + eerror "The ebuild needs to be kept in sync." + eerror "${var}: ${sorted}" + eerror "$(printf '%-*s' ${#var} configure): ${detected}" + die "sync ${var} to the list of targets" + fi + + popd >/dev/null +} + +src_prepare() { + check_targets IUSE_SOFTMMU_TARGETS softmmu + check_targets IUSE_USER_TARGETS linux-user + + default + + # Use correct toolchain to fix cross-compiling + tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB STRINGS + export WINDRES=${CHOST}-windres + + # Verbose builds + MAKEOPTS+=" V=1" + + # We already force -D_FORTIFY_SOURCE=2 (or 3) in our toolchain, but + # this setting (-U then -D..=2) will prevent us from trying out 3, so + # drop it. No change to level of protection b/c we patch our toolchain. + sed -i -e 's/-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2//' configure || die + + # Remove bundled modules + rm -r dtc meson roms/*/ || die +} + +## +# configures qemu based on the build directory and the build type +# we are using. +# +qemu_src_configure() { + debug-print-function ${FUNCNAME} "$@" + + local buildtype=$1 + local builddir="${S}/${buildtype}-build" + + mkdir "${builddir}" || die + + local conf_opts=( + --prefix=/usr + --sysconfdir=/etc + --bindir=/usr/bin + --libdir=/usr/$(get_libdir) + --datadir=/usr/share + --docdir=/usr/share/doc/${PF}/html + --mandir=/usr/share/man + --localstatedir=/var + --disable-bsd-user + --disable-containers # bug #732972 + --disable-guest-agent + --disable-strip + --with-git-submodules=ignore + + # bug #746752: TCG interpreter has a few limitations: + # - it does not support FPU + # - it's generally slower on non-self-modifying code + # It's advantage is support for host architectures + # where native codegeneration is not implemented. + # Gentoo has qemu keyworded only on targets with + # native code generation available. Avoid the interpreter. + --disable-tcg-interpreter + + --disable-werror + # We support gnutls/nettle for crypto operations. It is possible + # to use gcrypt when gnutls/nettle are disabled (but not when they + # are enabled), but it's not really worth the hassle. Disable it + # all the time to avoid automatically detecting it. #568856 + --disable-gcrypt + --cc="$(tc-getCC)" + --cxx="$(tc-getCXX)" + --host-cc="$(tc-getBUILD_CC)" + + $(use_enable alsa) + $(use_enable debug debug-info) + $(use_enable debug debug-tcg) + $(use_enable jack) + $(use_enable nls gettext) + $(use_enable oss) + $(use_enable plugins) + $(use_enable pulseaudio pa) + $(use_enable selinux) + $(use_enable xattr attr) + ) + + # Disable options not used by user targets. This simplifies building + # static user targets (USE=static-user) considerably. + conf_notuser() { + if [[ ${buildtype} == "user" ]] ; then + echo "--disable-${2:-$1}" + else + use_enable "$@" + fi + } + # Enable option only for softmmu build, but not 'user' or 'tools' + conf_softmmu() { + if [[ ${buildtype} == "softmmu" ]] ; then + use_enable "$@" + else + echo "--disable-${2:-$1}" + fi + } + # Enable option only for tools build, but not 'user' or 'softmmu' + conf_tools() { + if [[ ${buildtype} == "tools" ]] ; then + use_enable "$@" + else + echo "--disable-${2:-$1}" + fi + } + # Special case for the malloc flag, because the --disable flag does + # not exist and trying like above will break configuring. + conf_malloc() { + if [[ ! ${buildtype} == "user" ]] ; then + usex "${1}" "--enable-malloc=${1}" "" + fi + } + conf_opts+=( + $(conf_notuser accessibility brlapi) + $(conf_notuser aio linux-aio) + $(conf_softmmu bpf) + $(conf_notuser bzip2) + $(conf_notuser capstone) + $(conf_notuser curl) + $(conf_tools doc docs) + $(conf_notuser fdt) + $(conf_notuser fuse) + $(conf_notuser glusterfs) + $(conf_notuser gnutls) + $(conf_notuser gnutls nettle) + $(conf_notuser gtk) + $(conf_notuser infiniband rdma) + $(conf_notuser iscsi libiscsi) + $(conf_notuser io-uring linux-io-uring) + $(conf_malloc jemalloc) + $(conf_notuser jpeg vnc-jpeg) + $(conf_notuser kernel_linux kvm) + $(conf_notuser lzo) + $(conf_notuser multipath mpath) + $(conf_notuser ncurses curses) + $(conf_notuser nfs libnfs) + $(conf_notuser numa) + $(conf_notuser opengl) + $(conf_notuser pam auth-pam) + $(conf_notuser png) + $(conf_notuser rbd) + $(conf_notuser sasl vnc-sasl) + $(conf_notuser sdl) + $(conf_softmmu sdl-image) + $(conf_notuser seccomp) + $(conf_notuser slirp) + $(conf_notuser smartcard) + $(conf_notuser snappy) + $(conf_notuser spice) + $(conf_notuser ssh libssh) + $(conf_notuser udev libudev) + $(conf_notuser usb libusb) + $(conf_notuser usbredir usb-redir) + $(conf_notuser vde) + $(conf_notuser vhost-net) + $(conf_notuser virgl virglrenderer) + $(conf_softmmu virtfs) + $(conf_notuser vnc) + $(conf_notuser vte) + $(conf_notuser xen) + $(conf_notuser xen xen-pci-passthrough) + # use prebuilt keymaps, bug #759604 + --disable-xkbcommon + $(conf_notuser zstd) + ) + + if [[ ! ${buildtype} == "user" ]] ; then + # audio options + local audio_opts=( + # Note: backend order matters here: #716202 + # We iterate from higher-level to lower level. + $(usex pulseaudio pa "") + $(usev jack) + $(usev sdl) + $(usev alsa) + $(usev oss) + ) + conf_opts+=( + --audio-drv-list=$(IFS=,; echo "${audio_opts[*]}") + ) + fi + + case ${buildtype} in + user) + conf_opts+=( + --enable-linux-user + --disable-system + --disable-blobs + --disable-tools + --disable-cap-ng + --disable-seccomp + ) + local static_flag="static-user" + ;; + softmmu) + conf_opts+=( + --disable-linux-user + --enable-system + --disable-tools + --enable-cap-ng + --enable-seccomp + ) + local static_flag="static" + ;; + tools) + conf_opts+=( + --disable-linux-user + --disable-system + --disable-blobs + --enable-tools + --enable-cap-ng + ) + local static_flag="static" + ;; + esac + + local targets="${buildtype}_targets" + [[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" ) + + # Add support for SystemTAP + use systemtap && conf_opts+=( --enable-trace-backend=dtrace ) + + # We always want to attempt to build with PIE support as it results + # in a more secure binary. But it doesn't work with static or if + # the current GCC doesn't have PIE support. + if use ${static_flag}; then + conf_opts+=( --static --disable-pie ) + else + tc-enables-pie && conf_opts+=( --enable-pie ) + fi + + # Meson will not use a cross-file unless cross_prefix is set. + tc-is-cross-compiler && conf_opts+=( --cross-prefix="${CHOST}-" ) + + # Plumb through equivalent of EXTRA_ECONF to allow experiments + # like bug #747928. + conf_opts+=( ${EXTRA_CONF_QEMU} ) + + echo "../configure ${conf_opts[*]}" + cd "${builddir}" + ../configure "${conf_opts[@]}" || die "configure failed" +} + +src_configure() { + local target + + python_setup + + softmmu_targets= softmmu_bins=() + user_targets= user_bins=() + + for target in ${IUSE_SOFTMMU_TARGETS} ; do + if use "qemu_softmmu_targets_${target}"; then + softmmu_targets+=",${target}-softmmu" + softmmu_bins+=( "qemu-system-${target}" ) + fi + done + + for target in ${IUSE_USER_TARGETS} ; do + if use "qemu_user_targets_${target}"; then + user_targets+=",${target}-linux-user" + user_bins+=( "qemu-${target}" ) + fi + done + + softmmu_targets=${softmmu_targets#,} + user_targets=${user_targets#,} + + [[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu" + [[ -n ${user_targets} ]] && qemu_src_configure "user" + qemu_src_configure "tools" +} + +src_compile() { + if [[ -n ${user_targets} ]]; then + cd "${S}/user-build" || die + default + fi + + if [[ -n ${softmmu_targets} ]]; then + cd "${S}/softmmu-build" || die + default + fi + + cd "${S}/tools-build" || die + default +} + +src_test() { + if [[ -n ${softmmu_targets} ]]; then + cd "${S}/softmmu-build" || die + pax-mark m */qemu-system-* #515550 + emake check + fi +} + +qemu_python_install() { + python_domodule "${S}/python/qemu" + + python_doscript "${S}/scripts/kvm/vmxcap" + python_doscript "${S}/scripts/qmp/qmp-shell" + python_doscript "${S}/scripts/qmp/qemu-ga-client" +} + +# Generate binfmt support files. +# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc) +# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt) +generate_initd() { + local out="${T}/qemu-binfmt" + local out_systemd="${T}/qemu.conf" + local d="${T}/binfmt.d" + + einfo "Generating qemu binfmt scripts and configuration files" + + # Generate the debian fragments first. + mkdir -p "${d}" + "${S}"/scripts/qemu-binfmt-conf.sh \ + --debian \ + --exportdir "${d}" \ + --qemu-path "${EPREFIX}/usr/bin" \ + || die + # Then turn the fragments into a shell script we can source. + sed -E -i \ + -e 's:^([^ ]+) (.*)$:\1="\2":' \ + "${d}"/* || die + + # Generate the init.d script by assembling the fragments from above. + local f qcpu package interpreter magic mask + cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die + for f in "${d}"/qemu-* ; do + source "${f}" + + # Normalize the cpu logic like we do in the init.d for the native cpu. + qcpu=${package#qemu-} + case ${qcpu} in + arm*) qcpu="arm";; + mips*) qcpu="mips";; + ppc*) qcpu="ppc";; + s390*) qcpu="s390";; + sh*) qcpu="sh";; + sparc*) qcpu="sparc";; + esac + + # we use 'printf' here to be portable across 'sh' + # implementations: #679168 + cat <>"${out}" + if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then + printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register + fi +EOF + + echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}" + + done + cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die +} + +src_install() { + if [[ -n ${user_targets} ]]; then + cd "${S}/user-build" + emake DESTDIR="${ED}" install + + # Install binfmt handler init script for user targets. + generate_initd + doinitd "${T}/qemu-binfmt" + + # Install binfmt/qemu.conf. + insinto "/usr/share/qemu/binfmt.d" + doins "${T}/qemu.conf" + fi + + if [[ -n ${softmmu_targets} ]]; then + cd "${S}/softmmu-build" + emake DESTDIR="${ED}" install + + # This might not exist if the test failed. #512010 + [[ -e check-report.html ]] && dodoc check-report.html + + if use kernel_linux; then + udev_newrules "${FILESDIR}"/65-kvm.rules-r2 65-kvm.rules + fi + + if use python; then + python_foreach_impl qemu_python_install + fi + fi + + cd "${S}/tools-build" || die + emake DESTDIR="${ED}" install + + # If USE=doc, there'll be newly generated docs which we install instead. + if ! use doc && [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${PN}-${QEMU_DOCS_VERSION}-docs/docs/*.[0-8] + fi + + # Disable mprotect on the qemu binaries as they use JITs to be fast #459348 + pushd "${ED}"/usr/bin >/dev/null || die + pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594 + popd >/dev/null || die + + # Install config file example for qemu-bridge-helper + insinto "/etc/qemu" + doins "${FILESDIR}/bridge.conf" + + cd "${S}" || die + dodoc MAINTAINERS docs/specs/pci-ids.txt + newdoc pc-bios/README README.pc-bios + + # Disallow stripping of prebuilt firmware files. + dostrip -x ${QA_PREBUILT} + + if [[ -n ${softmmu_targets} ]]; then + # Remove SeaBIOS since we're using the SeaBIOS packaged one + if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then + dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin + fi + + # Remove vgabios since we're using the seavgabios packaged one + rm "${ED}/usr/share/qemu/vgabios.bin" + rm "${ED}/usr/share/qemu/vgabios-cirrus.bin" + rm "${ED}/usr/share/qemu/vgabios-qxl.bin" + rm "${ED}/usr/share/qemu/vgabios-stdvga.bin" + rm "${ED}/usr/share/qemu/vgabios-virtio.bin" + rm "${ED}/usr/share/qemu/vgabios-vmware.bin" + + # PPC/PPC64 loads vgabios-stdvga + if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64; then + dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin + dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin + dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin + dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin + dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin + dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin + fi + + # Remove sgabios since we're using the sgabios packaged one + if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then + dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin + fi + + # Remove iPXE since we're using the iPXE packaged one + if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then + dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom + dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom + dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom + dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom + dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom + dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom + fi + fi + + DISABLE_AUTOFORMATTING=true + readme.gentoo_create_doc +} + +firmware_abi_change() { + local pv + for pv in ${REPLACING_VERSIONS}; do + if ver_test ${pv} -lt ${FIRMWARE_ABI_VERSION}; then + return 0 + fi + done + return 1 +} + +pkg_postinst() { + if [[ -n ${softmmu_targets} ]] && use kernel_linux; then + udev_reload + fi + + xdg_icon_cache_update + + [[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \ + fcaps cap_net_admin "${EROOT}"/usr/libexec/qemu-bridge-helper + + DISABLE_AUTOFORMATTING=true + readme.gentoo_print_elog + + 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)" + else + ewarn " $(best_version sys-firmware/edk2-ovmf)" + fi + + if has_version 'sys-firmware/seabios-bin'; then + ewarn " $(best_version sys-firmware/seabios-bin)" + else + ewarn " $(best_version sys-firmware/seabios)" + fi + + ewarn " $(best_version sys-firmware/ipxe)" + ewarn " $(best_version sys-firmware/sgabios)" + ewarn "This might break resume of hibernated guests (started with a different" + ewarn "firmware version) and live migration to/from qemu versions with different" + ewarn "firmware. Please (cold) restart all running guests. For functional" + ewarn "guest migration ensure that all" + ewarn "hosts run at least" + ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}." + fi +} + +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)" + else + echo " $(best_version sys-firmware/edk2-ovmf)" + fi + + if has_version 'sys-firmware/seabios-bin'; then + echo " $(best_version sys-firmware/seabios-bin)" + else + echo " $(best_version sys-firmware/seabios)" + fi + + echo " $(best_version sys-firmware/ipxe)" + echo " $(best_version sys-firmware/sgabios)" +} + +pkg_postrm() { + xdg_icon_cache_update + udev_reload +} diff --git a/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-8.1.3.ebuild b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-8.1.3.ebuild new file mode 100644 index 00000000000..2ea790325cf --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-emulation/qemu/qemu-8.1.3.ebuild @@ -0,0 +1,969 @@ +# Copyright 1999-2023 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-qemu-docs +# Set to 1 if prebuilt, 0 if not +# (the construct below is to allow overriding from env for script) +QEMU_DOCS_PREBUILT=${QEMU_DOCS_PREBUILT:-1} +QEMU_DOCS_PREBUILT_DEV=sam +#QEMU_DOCS_VERSION=$(ver_cut 1-3) +QEMU_DOCS_VERSION=8.1.0 +# Default to generating docs (inc. man pages) if no prebuilt; overridden later +# bug #830088 +QEMU_DOC_USEFLAG="+doc" + +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="ncurses,readline" + +FIRMWARE_ABI_VERSION="7.2.0" + +inherit linux-info toolchain-funcs python-r1 udev fcaps readme.gentoo-r1 \ + pax-utils xdg-utils + +if [[ ${PV} == *9999* ]]; then + QEMU_DOCS_PREBUILT=0 + + EGIT_REPO_URI="https://gitlab.com/qemu-project/qemu.git/" + EGIT_SUBMODULES=( + tests/fp/berkeley-softfloat-3 + tests/fp/berkeley-testfloat-3 + subprojects/keycodemapdb + ) + inherit git-r3 + SRC_URI="" +else + MY_P="${PN}-${PV/_rc/-rc}" + SRC_URI="https://download.qemu.org/${MY_P}.tar.xz" + + if [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then + SRC_URI+=" !doc? ( https://dev.gentoo.org/~${QEMU_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${QEMU_DOCS_VERSION}-docs.tar.xz )" + fi + + S="${WORKDIR}/${MY_P}" + [[ "${PV}" != *_rc* ]] && KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +fi + +DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" +HOMEPAGE="https://www.qemu.org https://www.linux-kvm.org" + +LICENSE="GPL-2 LGPL-2 BSD-2" +SLOT="0" + +[[ ${QEMU_DOCS_PREBUILT} == 1 ]] && QEMU_DOC_USEFLAG="doc" + +IUSE="accessibility +aio alsa bpf bzip2 capstone +curl debug ${QEMU_DOC_USEFLAG} + +fdt fuse glusterfs +gnutls gtk infiniband iscsi io-uring + jack jemalloc +jpeg keyutils + lzo multipath + ncurses nfs nls numa opengl +oss pam +pin-upstream-blobs pipewire + plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux + +slirp + smartcard snappy spice ssh static-user systemtap test udev usb + usbredir vde +vhost-net virgl virtfs +vnc vte xattr xen + zstd" + +COMMON_TARGETS=" + aarch64 + alpha + arm + cris + hppa + i386 + loongarch64 + m68k + microblaze + microblazeel + mips + mips64 + mips64el + mipsel + nios2 + or1k + ppc + ppc64 + riscv32 + riscv64 + s390x + sh4 + sh4eb + sparc + sparc64 + x86_64 + xtensa + xtensaeb +" +IUSE_SOFTMMU_TARGETS=" + ${COMMON_TARGETS} + avr + rx + tricore +" +IUSE_USER_TARGETS=" + ${COMMON_TARGETS} + aarch64_be + armeb + hexagon + mipsn32 + mipsn32el + ppc64le + sparc32plus +" + +use_softmmu_targets=$(printf ' qemu_softmmu_targets_%s' ${IUSE_SOFTMMU_TARGETS}) +use_user_targets=$(printf ' qemu_user_targets_%s' ${IUSE_USER_TARGETS}) +IUSE+=" ${use_softmmu_targets} ${use_user_targets}" + +RESTRICT="!test? ( test )" + +# Allow no targets to be built so that people can get a tools-only build. +# Block USE flag configurations known to not work. +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} + qemu_softmmu_targets_arm? ( fdt ) + qemu_softmmu_targets_microblaze? ( fdt ) + qemu_softmmu_targets_mips64el? ( fdt ) + qemu_softmmu_targets_ppc64? ( fdt ) + qemu_softmmu_targets_ppc? ( fdt ) + qemu_softmmu_targets_riscv32? ( fdt ) + qemu_softmmu_targets_riscv64? ( fdt ) + qemu_softmmu_targets_x86_64? ( fdt ) + sdl-image? ( sdl ) + static-user? ( !plugins ) + virgl? ( opengl ) + virtfs? ( xattr ) + vnc? ( gnutls ) + vte? ( gtk ) + multipath? ( udev ) + plugins? ( !static-user ) +" +for smname in ${IUSE_SOFTMMU_TARGETS} ; do + REQUIRED_USE+=" qemu_softmmu_targets_${smname}? ( kernel_linux? ( seccomp ) )" +done + +# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...) +# and user/softmmu targets (qemu-*, qemu-system-*). +# +# Yep, you need both libcap and libcap-ng since virtfs only uses libcap. +# +# The attr lib isn't always linked in (although the USE flag is always +# respected). This is because qemu supports using the C library's API +# when available rather than always using the external library. +ALL_DEPEND=" + dev-libs/glib:2[static-libs(+)] + sys-libs/zlib[static-libs(+)] + python? ( ${PYTHON_DEPS} ) + systemtap? ( dev-util/systemtap ) + xattr? ( sys-apps/attr[static-libs(+)] ) +" + +# Dependencies required for qemu tools (qemu-nbd, qemu-img, qemu-io, ...) +# softmmu targets (qemu-system-*). +SOFTMMU_TOOLS_DEPEND=" + >=x11-libs/pixman-0.28.0[static-libs(+)] + accessibility? ( + app-accessibility/brltty[api] + app-accessibility/brltty[static-libs(+)] + ) + aio? ( dev-libs/libaio[static-libs(+)] ) + alsa? ( >=media-libs/alsa-lib-1.0.13 ) + bpf? ( dev-libs/libbpf:= ) + bzip2? ( app-arch/bzip2[static-libs(+)] ) + capstone? ( dev-libs/capstone:=[static-libs(+)] ) + curl? ( >=net-misc/curl-7.15.4[static-libs(+)] ) + fdt? ( >=sys-apps/dtc-1.5.1[static-libs(+)] ) + fuse? ( >=sys-fs/fuse-3.1:3[static-libs(+)] ) + glusterfs? ( >=sys-cluster/glusterfs-3.4.0[static-libs(+)] ) + gnutls? ( + >=net-libs/gnutls-3.0:=[static-libs(+)] + dev-libs/nettle:=[static-libs(+)] + ) + gtk? ( + x11-libs/gtk+:3 + vte? ( x11-libs/vte:2.91 ) + ) + infiniband? ( sys-cluster/rdma-core[static-libs(+)] ) + iscsi? ( net-libs/libiscsi ) + io-uring? ( sys-libs/liburing:=[static-libs(+)] ) + jack? ( virtual/jack ) + jemalloc? ( dev-libs/jemalloc ) + jpeg? ( media-libs/libjpeg-turbo:=[static-libs(+)] ) + kernel_linux? ( sys-libs/libcap-ng[static-libs(+)] ) + keyutils? ( sys-apps/keyutils[static-libs(+)] ) + lzo? ( dev-libs/lzo:2[static-libs(+)] ) + multipath? ( sys-fs/multipath-tools ) + ncurses? ( + sys-libs/ncurses:=[unicode(+)] + sys-libs/ncurses:=[static-libs(+)] + ) + nfs? ( >=net-fs/libnfs-1.9.3:=[static-libs(+)] ) + numa? ( sys-process/numactl[static-libs(+)] ) + opengl? ( + virtual/opengl + media-libs/libepoxy[static-libs(+)] + media-libs/mesa[static-libs(+)] + media-libs/mesa[egl(+),gbm(+)] + ) + pam? ( sys-libs/pam ) + pipewire? ( >=media-video/pipewire-0.3.60 ) + png? ( >=media-libs/libpng-1.6.34:=[static-libs(+)] ) + pulseaudio? ( media-libs/libpulse ) + rbd? ( sys-cluster/ceph ) + sasl? ( dev-libs/cyrus-sasl[static-libs(+)] ) + sdl? ( + media-libs/libsdl2[video] + media-libs/libsdl2[static-libs(+)] + ) + sdl-image? ( media-libs/sdl2-image[static-libs(+)] ) + seccomp? ( >=sys-libs/libseccomp-2.1.0[static-libs(+)] ) + slirp? ( net-libs/libslirp[static-libs(+)] ) + smartcard? ( >=app-emulation/libcacard-2.5.0[static-libs(+)] ) + snappy? ( app-arch/snappy:= ) + spice? ( + >=app-emulation/spice-protocol-0.14.0 + >=app-emulation/spice-0.14.0[static-libs(+)] + ) + ssh? ( >=net-libs/libssh-0.8.6[static-libs(+)] ) + udev? ( virtual/libudev:= ) + usb? ( >=virtual/libusb-1-r2:1[static-libs(+)] ) + usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] ) + vde? ( net-misc/vde[static-libs(+)] ) + virgl? ( media-libs/virglrenderer[static-libs(+)] ) + virtfs? ( sys-libs/libcap ) + xen? ( app-emulation/xen-tools:= ) + zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] ) +" + +EDK2_OVMF_VERSION="202202" +SEABIOS_VERSION="1.16.0" + +X86_FIRMWARE_DEPEND=" + pin-upstream-blobs? ( + ~sys-firmware/edk2-ovmf-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/ipxe[qemu] + || ( + >=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios] + >=sys-firmware/seabios-bin-${SEABIOS_VERSION} + ) + sys-firmware/sgabios + ) +" +PPC_FIRMWARE_DEPEND=" + pin-upstream-blobs? ( + ~sys-firmware/seabios-bin-${SEABIOS_VERSION} + ) + !pin-upstream-blobs? ( + || ( + >=sys-firmware/seabios-${SEABIOS_VERSION}[seavgabios] + >=sys-firmware/seabios-bin-${SEABIOS_VERSION} + ) + ) +" + +# See bug #913084 for pip dep +BDEPEND=" + $(python_gen_impl_dep) + dev-lang/perl + >=dev-util/meson-0.63.0 + dev-python/pip[${PYTHON_USEDEP}] + virtual/pkgconfig + doc? ( + >=dev-python/sphinx-1.6.0[${PYTHON_USEDEP}] + dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}] + ) + gtk? ( nls? ( sys-devel/gettext ) ) + test? ( + dev-libs/glib[utils] + sys-devel/bc + ) +" +CDEPEND=" + ${ALL_DEPEND//\[static-libs(+)]} + ${SOFTMMU_TOOLS_DEPEND//\[static-libs(+)]} + qemu_softmmu_targets_i386? ( ${X86_FIRMWARE_DEPEND} ) + qemu_softmmu_targets_x86_64? ( ${X86_FIRMWARE_DEPEND} ) + qemu_softmmu_targets_ppc? ( ${PPC_FIRMWARE_DEPEND} ) + qemu_softmmu_targets_ppc64? ( ${PPC_FIRMWARE_DEPEND} ) +" +DEPEND=" + ${CDEPEND} + kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 ) + static-user? ( ${ALL_DEPEND} ) +" +RDEPEND=" + ${CDEPEND} + acct-group/kvm + selinux? ( + sec-policy/selinux-qemu + sys-libs/libselinux + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-8.0.0-disable-keymap.patch + "${FILESDIR}"/${PN}-7.1.0-capstone-include-path.patch + "${FILESDIR}"/${PN}-8.1.0-also-build-virtfs-proxy-helper.patch + "${FILESDIR}"/${PN}-8.1.0-skip-tests.patch + "${FILESDIR}"/${PN}-8.1.0-find-sphinx.patch +) + +QA_PREBUILT=" + usr/share/qemu/hppa-firmware.img + usr/share/qemu/openbios-ppc + usr/share/qemu/openbios-sparc64 + usr/share/qemu/openbios-sparc32 + usr/share/qemu/opensbi-riscv64-generic-fw_dynamic.elf + usr/share/qemu/opensbi-riscv32-generic-fw_dynamic.elf + usr/share/qemu/palcode-clipper + usr/share/qemu/s390-ccw.img + usr/share/qemu/s390-netboot.img + usr/share/qemu/u-boot.e500 +" + +QA_WX_LOAD=" + usr/bin/qemu-i386 + usr/bin/qemu-x86_64 + usr/bin/qemu-alpha + usr/bin/qemu-arm + usr/bin/qemu-cris + usr/bin/qemu-m68k + usr/bin/qemu-microblaze + usr/bin/qemu-microblazeel + usr/bin/qemu-mips + usr/bin/qemu-mipsel + usr/bin/qemu-or1k + usr/bin/qemu-ppc + usr/bin/qemu-ppc64 + usr/bin/qemu-sh4 + usr/bin/qemu-sh4eb + usr/bin/qemu-sparc + usr/bin/qemu-sparc64 + usr/bin/qemu-armeb + usr/bin/qemu-sparc32plus + usr/bin/qemu-s390x + usr/bin/qemu-unicore32 +" + +DOC_CONTENTS="If you don't have kvm compiled into the kernel, make sure you have the +kernel module loaded before running kvm. The easiest way to ensure that the +kernel module is loaded is to load it on boot. + For AMD CPUs the module is called 'kvm-amd'. + For Intel CPUs the module is called 'kvm-intel'. +Please review /etc/conf.d/modules for how to load these. + +Make sure your user is in the 'kvm' group. Just run + $ gpasswd -a kvm +then have re-login. + +For brand new installs, the default permissions on /dev/kvm might not let +you access it. You can tell udev to reset ownership/perms: + $ udevadm trigger -c add /dev/kvm + +If you want to register binfmt handlers for qemu user targets: +For openrc: + # rc-update add qemu-binfmt +For systemd: + # ln -s /usr/share/qemu/binfmt.d/qemu.conf /etc/binfmt.d/qemu.conf" + +pkg_pretend() { + if use kernel_linux && kernel_is lt 2 6 25; then + eerror "This version of KVM requires a host kernel of 2.6.25 or higher." + elif use kernel_linux; then + if ! linux_config_exists; then + eerror "Unable to check your kernel for KVM support" + else + CONFIG_CHECK="~KVM ~TUN ~BRIDGE" + ERROR_KVM="You must enable KVM in your kernel to continue" + ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in" + ERROR_KVM_AMD+=" your kernel configuration." + ERROR_KVM_INTEL="If you have an Intel CPU, you must enable" + ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration." + ERROR_TUN="You will need the Universal TUN/TAP driver compiled" + ERROR_TUN+=" into your kernel or loaded as a module to use the" + ERROR_TUN+=" virtual network device if using -net tap." + ERROR_BRIDGE="You will also need support for 802.1d" + ERROR_BRIDGE+=" Ethernet Bridging for some network configurations." + use vhost-net && CONFIG_CHECK+=" ~VHOST_NET" + ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net" + ERROR_VHOST_NET+=" support" + + if use amd64 || use x86 || use amd64-linux || use x86-linux; then + if grep -q AuthenticAMD /proc/cpuinfo; then + CONFIG_CHECK+=" ~KVM_AMD" + elif grep -q GenuineIntel /proc/cpuinfo; then + CONFIG_CHECK+=" ~KVM_INTEL" + fi + fi + + use python && CONFIG_CHECK+=" ~DEBUG_FS" + ERROR_DEBUG_FS="debugFS support required for kvm_stat" + + # Now do the actual checks setup above + check_extra_config + fi + fi + + if grep -qs '/usr/bin/qemu-kvm' "${EROOT}"/etc/libvirt/qemu/*.xml; then + eerror "The kvm/qemu-kvm wrappers no longer exist, but your libvirt" + eerror "instances are still pointing to it. Please update your" + eerror "configs in /etc/libvirt/qemu/ to use the -enable-kvm flag" + eerror "and the right system binary (e.g. qemu-system-x86_64)." + die "update your virt configs to not use qemu-kvm" + fi +} + +# Sanity check to make sure target lists are kept up-to-date. +check_targets() { + local var=$1 mak=$2 + local detected sorted + + pushd "${S}"/configs/targets/ >/dev/null || die + + # Force C locale until glibc is updated. #564936 + detected=$(echo $(printf '%s\n' *-${mak}.mak | sed "s:-${mak}.mak::" | LC_COLLATE=C sort -u)) + sorted=$(echo $(printf '%s\n' ${!var} | LC_COLLATE=C sort -u)) + if [[ ${sorted} != "${detected}" ]] ; then + eerror "The ebuild needs to be kept in sync." + eerror "${var}: ${sorted}" + eerror "$(printf '%-*s' ${#var} configure): ${detected}" + die "sync ${var} to the list of targets" + fi + + popd >/dev/null +} + +src_prepare() { + check_targets IUSE_SOFTMMU_TARGETS softmmu + check_targets IUSE_USER_TARGETS linux-user + + default + + # Use correct toolchain to fix cross-compiling + tc-export AR AS LD NM OBJCOPY PKG_CONFIG RANLIB STRINGS + export WINDRES=${CHOST}-windres + + # Verbose builds + MAKEOPTS+=" V=1" + + # Remove bundled modules + rm -r subprojects/dtc roms/*/ || die +} + +## +# configures qemu based on the build directory and the build type +# we are using. +# +qemu_src_configure() { + debug-print-function ${FUNCNAME} "$@" + + local buildtype=$1 + local builddir="${S}/${buildtype}-build" + + mkdir "${builddir}" || die + + local conf_opts=( + --prefix=/usr + --sysconfdir=/etc + --bindir=/usr/bin + --libdir=/usr/$(get_libdir) + --datadir=/usr/share + --docdir=/usr/share/doc/${PF}/html + --mandir=/usr/share/man + --localstatedir=/var + --disable-bsd-user + --disable-containers # bug #732972 + --disable-guest-agent + --disable-strip + --disable-download + + # bug #746752: TCG interpreter has a few limitations: + # - it does not support FPU + # - it's generally slower on non-self-modifying code + # It's advantage is support for host architectures + # where native codegeneration is not implemented. + # Gentoo has qemu keyworded only on targets with + # native code generation available. Avoid the interpreter. + --disable-tcg-interpreter + + --disable-werror + # We support gnutls/nettle for crypto operations. It is possible + # to use gcrypt when gnutls/nettle are disabled (but not when they + # are enabled), but it's not really worth the hassle. Disable it + # all the time to avoid automatically detecting it. #568856 + --disable-gcrypt + --cc="$(tc-getCC)" + --cxx="$(tc-getCXX)" + --objcc="$(tc-getCC)" + --host-cc="$(tc-getBUILD_CC)" + + $(use_enable alsa) + $(use_enable debug debug-info) + $(use_enable debug debug-tcg) + $(use_enable jack) + $(use_enable nls gettext) + $(use_enable oss) + $(use_enable pipewire) + $(use_enable plugins) + $(use_enable pulseaudio pa) + $(use_enable selinux) + $(use_enable xattr attr) + ) + + # Disable options not used by user targets. This simplifies building + # static user targets (USE=static-user) considerably. + conf_notuser() { + if [[ ${buildtype} == "user" ]] ; then + echo "--disable-${2:-$1}" + else + use_enable "$@" + fi + } + # Enable option only for softmmu build, but not 'user' or 'tools' + conf_softmmu() { + if [[ ${buildtype} == "softmmu" ]] ; then + use_enable "$@" + else + echo "--disable-${2:-$1}" + fi + } + # Enable option only for tools build, but not 'user' or 'softmmu' + conf_tools() { + if [[ ${buildtype} == "tools" ]] ; then + use_enable "$@" + else + echo "--disable-${2:-$1}" + fi + } + # Special case for the malloc flag, because the --disable flag does + # not exist and trying like above will break configuring. + conf_malloc() { + if [[ ! ${buildtype} == "user" ]] ; then + usex "${1}" "--enable-malloc=${1}" "" + fi + } + conf_opts+=( + $(conf_notuser accessibility brlapi) + $(conf_notuser aio linux-aio) + $(conf_softmmu bpf) + $(conf_notuser bzip2) + $(conf_notuser capstone) + $(conf_notuser curl) + $(conf_tools doc docs) + $(conf_notuser fdt) + $(conf_notuser fuse) + $(conf_notuser glusterfs) + $(conf_notuser gnutls) + $(conf_notuser gnutls nettle) + $(conf_notuser gtk) + $(conf_notuser infiniband rdma) + $(conf_notuser iscsi libiscsi) + $(conf_notuser io-uring linux-io-uring) + $(conf_malloc jemalloc) + $(conf_notuser jpeg vnc-jpeg) + $(conf_notuser kernel_linux kvm) + $(conf_notuser keyutils libkeyutils) + $(conf_notuser lzo) + $(conf_notuser multipath mpath) + $(conf_notuser ncurses curses) + $(conf_notuser nfs libnfs) + $(conf_notuser numa) + $(conf_notuser opengl) + $(conf_notuser pam auth-pam) + $(conf_notuser png) + $(conf_notuser rbd) + $(conf_notuser sasl vnc-sasl) + $(conf_notuser sdl) + $(conf_softmmu sdl-image) + $(conf_notuser seccomp) + $(conf_notuser slirp) + $(conf_notuser smartcard) + $(conf_notuser snappy) + $(conf_notuser spice) + $(conf_notuser ssh libssh) + $(conf_notuser udev libudev) + $(conf_notuser usb libusb) + $(conf_notuser usbredir usb-redir) + $(conf_notuser vde) + $(conf_notuser vhost-net) + $(conf_notuser virgl virglrenderer) + $(conf_softmmu virtfs) + $(conf_notuser vnc) + $(conf_notuser vte) + $(conf_notuser xen) + $(conf_notuser xen xen-pci-passthrough) + # use prebuilt keymaps, bug #759604 + --disable-xkbcommon + $(conf_notuser zstd) + ) + + if [[ ! ${buildtype} == "user" ]] ; then + # audio options + local audio_opts=( + # Note: backend order matters here: #716202 + # We iterate from higher-level to lower level. + $(usex pulseaudio pa "") + $(usev pipewire) + $(usev jack) + $(usev sdl) + $(usev alsa) + $(usev oss) + ) + conf_opts+=( + --audio-drv-list=$(IFS=,; echo "${audio_opts[*]}") + ) + fi + + case ${buildtype} in + user) + conf_opts+=( + --enable-linux-user + --disable-system + --disable-tools + --disable-cap-ng + --disable-seccomp + ) + local static_flag="static-user" + ;; + softmmu) + conf_opts+=( + --disable-linux-user + --enable-system + --disable-tools + --enable-cap-ng + --enable-seccomp + ) + local static_flag="none" + ;; + tools) + conf_opts+=( + --disable-linux-user + --disable-system + --enable-tools + --enable-cap-ng + ) + local static_flag="none" + ;; + esac + + local targets="${buildtype}_targets" + [[ -n ${targets} ]] && conf_opts+=( --target-list="${!targets}" ) + + # Add support for SystemTAP + use systemtap && conf_opts+=( --enable-trace-backends="dtrace" ) + + # We always want to attempt to build with PIE support as it results + # in a more secure binary. But it doesn't work with static or if + # the current GCC doesn't have PIE support. + if [[ ${static_flag} != "none" ]] && use ${static_flag}; then + conf_opts+=( --static --disable-pie ) + else + tc-enables-pie && conf_opts+=( --enable-pie ) + fi + + # Meson will not use a cross-file unless cross_prefix is set. + tc-is-cross-compiler && conf_opts+=( --cross-prefix="${CHOST}-" ) + + # Plumb through equivalent of EXTRA_ECONF to allow experiments + # like bug #747928. + conf_opts+=( ${EXTRA_CONF_QEMU} ) + + echo "../configure ${conf_opts[*]}" + cd "${builddir}" + ../configure "${conf_opts[@]}" || die "configure failed" +} + +src_configure() { + local target + + python_setup + + softmmu_targets= softmmu_bins=() + user_targets= user_bins=() + + for target in ${IUSE_SOFTMMU_TARGETS} ; do + if use "qemu_softmmu_targets_${target}"; then + softmmu_targets+=",${target}-softmmu" + softmmu_bins+=( "qemu-system-${target}" ) + fi + done + + for target in ${IUSE_USER_TARGETS} ; do + if use "qemu_user_targets_${target}"; then + user_targets+=",${target}-linux-user" + user_bins+=( "qemu-${target}" ) + fi + done + + softmmu_targets=${softmmu_targets#,} + user_targets=${user_targets#,} + + [[ -n ${softmmu_targets} ]] && qemu_src_configure "softmmu" + [[ -n ${user_targets} ]] && qemu_src_configure "user" + qemu_src_configure "tools" +} + +src_compile() { + if [[ -n ${user_targets} ]]; then + cd "${S}/user-build" || die + default + fi + + if [[ -n ${softmmu_targets} ]]; then + cd "${S}/softmmu-build" || die + default + fi + + cd "${S}/tools-build" || die + default +} + +src_test() { + if [[ -n ${softmmu_targets} ]]; then + cd "${S}/softmmu-build" || die + pax-mark m */qemu-system-* #515550 + emake check + fi +} + +qemu_python_install() { + python_domodule "${S}/python/qemu" + + python_doscript "${S}/scripts/kvm/vmxcap" + python_doscript "${S}/scripts/qmp/qmp-shell" + python_doscript "${S}/scripts/qmp/qemu-ga-client" +} + +# Generate binfmt support files. +# - /etc/init.d/qemu-binfmt script which registers the user handlers (openrc) +# - /usr/share/qemu/binfmt.d/qemu.conf (for use with systemd-binfmt) +generate_initd() { + local out="${T}/qemu-binfmt" + local out_systemd="${T}/qemu.conf" + local d="${T}/binfmt.d" + + einfo "Generating qemu binfmt scripts and configuration files" + + # Generate the debian fragments first. + mkdir -p "${d}" + "${S}"/scripts/qemu-binfmt-conf.sh \ + --debian \ + --exportdir "${d}" \ + --qemu-path "${EPREFIX}/usr/bin" \ + || die + # Then turn the fragments into a shell script we can source. + sed -E -i \ + -e 's:^([^ ]+) (.*)$:\1="\2":' \ + "${d}"/* || die + + # Generate the init.d script by assembling the fragments from above. + local f qcpu package interpreter magic mask + cat "${FILESDIR}"/qemu-binfmt.initd.head >"${out}" || die + for f in "${d}"/qemu-* ; do + source "${f}" + + # Normalize the cpu logic like we do in the init.d for the native cpu. + qcpu=${package#qemu-} + case ${qcpu} in + arm*) qcpu="arm";; + mips*) qcpu="mips";; + ppc*) qcpu="ppc";; + s390*) qcpu="s390";; + sh*) qcpu="sh";; + sparc*) qcpu="sparc";; + esac + + # we use 'printf' here to be portable across 'sh' + # implementations: #679168 + cat <>"${out}" + if [ "\${cpu}" != "${qcpu}" -a -x "${interpreter}" ] ; then + printf '%s\n' ':${package}:M::${magic}:${mask}:${interpreter}:'"\${QEMU_BINFMT_FLAGS}" >/proc/sys/fs/binfmt_misc/register + fi +EOF + + echo ":${package}:M::${magic}:${mask}:${interpreter}:OC" >>"${out_systemd}" + + done + cat "${FILESDIR}"/qemu-binfmt.initd.tail >>"${out}" || die +} + +src_install() { + if [[ -n ${user_targets} ]]; then + cd "${S}/user-build" + emake DESTDIR="${ED}" install + + # Install binfmt handler init script for user targets. + generate_initd + doinitd "${T}/qemu-binfmt" + + # Install binfmt/qemu.conf. + insinto "/usr/share/qemu/binfmt.d" + doins "${T}/qemu.conf" + fi + + if [[ -n ${softmmu_targets} ]]; then + cd "${S}/softmmu-build" + emake DESTDIR="${ED}" install + + # This might not exist if the test failed. #512010 + [[ -e check-report.html ]] && dodoc check-report.html + + if use kernel_linux; then + udev_newrules "${FILESDIR}"/65-kvm.rules-r2 65-kvm.rules + fi + + if use python; then + python_foreach_impl qemu_python_install + fi + fi + + cd "${S}/tools-build" || die + emake DESTDIR="${ED}" install + + # If USE=doc, there'll be newly generated docs which we install instead. + if ! use doc && [[ ${QEMU_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${PN}-${QEMU_DOCS_VERSION}-docs/docs/*.[0-8] + fi + + # Disable mprotect on the qemu binaries as they use JITs to be fast #459348 + pushd "${ED}"/usr/bin >/dev/null || die + pax-mark mr "${softmmu_bins[@]}" "${user_bins[@]}" # bug 575594 + popd >/dev/null || die + + # Install config file example for qemu-bridge-helper + insinto "/etc/qemu" + doins "${FILESDIR}/bridge.conf" + + cd "${S}" || die + dodoc MAINTAINERS + newdoc pc-bios/README README.pc-bios + + # Disallow stripping of prebuilt firmware files. + dostrip -x ${QA_PREBUILT} + + if [[ -n ${softmmu_targets} ]]; then + # Remove SeaBIOS since we're using the SeaBIOS packaged one + if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then + dosym ../seabios/bios-256k.bin /usr/share/qemu/bios-256k.bin + fi + + # Remove vgabios since we're using the seavgabios packaged one + rm "${ED}/usr/share/qemu/vgabios.bin" + rm "${ED}/usr/share/qemu/vgabios-cirrus.bin" + rm "${ED}/usr/share/qemu/vgabios-qxl.bin" + rm "${ED}/usr/share/qemu/vgabios-stdvga.bin" + rm "${ED}/usr/share/qemu/vgabios-virtio.bin" + rm "${ED}/usr/share/qemu/vgabios-vmware.bin" + + # PPC/PPC64 loads vgabios-stdvga + if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 || use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64; then + dosym ../seavgabios/vgabios-isavga.bin /usr/share/qemu/vgabios.bin + dosym ../seavgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin + dosym ../seavgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin + dosym ../seavgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin + dosym ../seavgabios/vgabios-virtio.bin /usr/share/qemu/vgabios-virtio.bin + dosym ../seavgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin + fi + + # Remove sgabios since we're using the sgabios packaged one + if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then + dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin + fi + + # Remove iPXE since we're using the iPXE packaged one + if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then + dosym ../ipxe/8086100e.rom /usr/share/qemu/pxe-e1000.rom + dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom + dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom + dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom + dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom + dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom + fi + fi + + DISABLE_AUTOFORMATTING=true + readme.gentoo_create_doc +} + +firmware_abi_change() { + local pv + for pv in ${REPLACING_VERSIONS}; do + if ver_test ${pv} -lt ${FIRMWARE_ABI_VERSION}; then + return 0 + fi + done + return 1 +} + +pkg_postinst() { + if [[ -n ${softmmu_targets} ]] && use kernel_linux; then + udev_reload + fi + + xdg_icon_cache_update + + [[ -z ${EPREFIX} ]] && [[ -f ${EROOT}/usr/libexec/qemu-bridge-helper ]] && \ + fcaps cap_net_admin "${EROOT}"/usr/libexec/qemu-bridge-helper + + DISABLE_AUTOFORMATTING=true + readme.gentoo_print_elog + + 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)" + else + ewarn " $(best_version sys-firmware/edk2-ovmf)" + fi + + if has_version 'sys-firmware/seabios-bin'; then + ewarn " $(best_version sys-firmware/seabios-bin)" + else + ewarn " $(best_version sys-firmware/seabios)" + fi + + ewarn " $(best_version sys-firmware/ipxe)" + ewarn " $(best_version sys-firmware/sgabios)" + ewarn "This might break resume of hibernated guests (started with a different" + ewarn "firmware version) and live migration to/from qemu versions with different" + ewarn "firmware. Please (cold) restart all running guests. For functional" + ewarn "guest migration ensure that all" + ewarn "hosts run at least" + ewarn " app-emulation/qemu-${FIRMWARE_ABI_VERSION}." + fi +} + +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)" + else + echo " $(best_version sys-firmware/edk2-ovmf)" + fi + + if has_version 'sys-firmware/seabios-bin'; then + echo " $(best_version sys-firmware/seabios-bin)" + else + echo " $(best_version sys-firmware/seabios)" + fi + + echo " $(best_version sys-firmware/ipxe)" + echo " $(best_version sys-firmware/sgabios)" +} + +pkg_postrm() { + xdg_icon_cache_update + udev_reload +} diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/Manifest b/sdk_container/src/third_party/portage-stable/app-shells/bash/Manifest index 45a63cd6c25..c4530d8443f 100644 --- a/sdk_container/src/third_party/portage-stable/app-shells/bash/Manifest +++ b/sdk_container/src/third_party/portage-stable/app-shells/bash/Manifest @@ -403,3 +403,15 @@ DIST bash52-014 3245 BLAKE2B 990e6566c446ce030d1333a05de9027a994054e983bf414e9aa DIST bash52-014.sig 95 BLAKE2B 2206483fd1b356099bab6fb7793d21dbd5b2adcbe2b108c69c5d7ccd6a13f934c69adcecd5f3fb1783b380c91c362609a175c4b95f25ac9996bbfad0147f250d SHA512 e7404ca3ff8bac3cb0dc7edd0bfc79dddd07734474c8d99a4dfffae87645653f05a26911e5f1e4670d80472423c84b42f86c84835ca310c083bcf16cdf860dd2 DIST bash52-015 8088 BLAKE2B 038f03bc543297a3f2e7612afdee7b27eb5d65d7f81c22976936211f4a80acd9f0faf1ba6c56e20fc653b877a448ab7872b5488da3684952682d80c752227ab2 SHA512 eb1bd6b3bf8811d765f222cd48360eb7f3f0aaa4f29f1b6c1f17635b819e5e4734ec4e7fcfde551fd7a6299a7d67869ea0bc5cc86cc523bc4a64d30e433df493 DIST bash52-015.sig 95 BLAKE2B b32afb78e24554ccc73f95883e1c78cdee222e589634ecca947b00ce163596373de6179f7c6e6bccbb9ab846c9ff3c8ee04723f23b1a641c908f535c01cbea2c SHA512 047d84c9e1bc996acfb735667409a7285d025fc8c63b9c7da86ace9e6be133d58bd66bf8bf918b81d27aaebc5795419604418d2ddb0ee11b675f283b634f441f +DIST bash52-016 1225 BLAKE2B 675b70e1df1083021fb6336e50d10012dc02e1a80865a64579256319ca98c8282af20e7210ef9d993f97718c7bfed2315f23edac04e6f3af65a1e08cd5f7ef2e SHA512 11c3197870570050767887a7497b52549caf2bf74e69c5a4eb95ff316942177da0a1150819f7051eb690841796b98d9a81f784204d18ad176cd2c29473e466d4 +DIST bash52-016.sig 95 BLAKE2B 6b61d9293f0f804c12d3c0a0afa802d91fbdbb55e3f69daaad8b1fcb23718ebcca56c9a9fc6b35eaefe05f146b5a502291aead23c523f966e32e3f0585b0fc08 SHA512 59bae9616765a10b3f12f5ca6f6ef6c2d2179c50d94e5698b1c6bfc5cb0819328ee8537bab86ab6efb936f262bdfe14f7fc9d5ba0b88e5c4ebd2cf1aae22990a +DIST bash52-017 1396 BLAKE2B 461f2f6543501306faa5decd98211699f0ce84eea5a1225145dc401ec0ca893c9d8021359c04af4dec265e7d247f2fbb70cfe8d5382e3c38fd2774e017de4aed SHA512 1844d1f4fbce0ae1dd8f2b9c152decc7cc645b7c0c66e84ed129072251e990f2da2220917957e98dd8b1299d2d10fb2dd23e184e40457063c1d554bb132ef1e5 +DIST bash52-017.sig 95 BLAKE2B cf83b861273b9f7e7611367f7551be7af678839fd1c0570eaf1f8ec54ab8e858b78086f2c20ff5d1899aa8544cc27dd2dc2b6d518f6ff4e1d35bc6f4eb5c752e SHA512 8978eeb9180d2cf699247a1cff537708be9882916cba02ed991b0403aaf0b9d7bbff54b601f4251466114dc0ce5100685ef655504ce1f2d08bb5f5a2b73dadd8 +DIST bash52-018 151467 BLAKE2B 89f95c096f8e487e2a1a00541087d157321b125ae93dc656af0cf6ead9158401a028f5c838c4b81aeb95e7c4951a3b4dfb1a88e08297a03236c0ad36eb6710d2 SHA512 b454ba8a311b0943f9669425891499fe8d4b5f1a90899bf6c4d0969699e21f8f8e08d0b0e23a7cf5c97aa6b21384ae907ed710254053e7edd43328aa6003780c +DIST bash52-018.sig 95 BLAKE2B 4b371fda53d2bd01b4527688209b49677b5b9f60de6c393fb2b810ba1342c98af0b1e50f35a0a6ef85116686451fad1e103da74611645ed99e04f438dd6245c7 SHA512 0930923972e94dab24f33ef68be03dde13b9b13424078102f5f7d5a7c8080f64989b283417efe2c72c89d2e2c2def9a27470b3e125cc233f5c95122c78b9b540 +DIST bash52-019 2548 BLAKE2B bcf683825da1e56692d7024748501cc582e623168fc1a8713ef3b4eb284222f6bf9144871d6357464a1c8c031f105ca6cac6cc591b5463d8b72eb139fcf044f0 SHA512 d009b0a571a3e23ab723c6c6fd4b28c48db1a927d690b4c42d7ed2fa51052aaf662026a2de9e4ee3676087eac844f8b57adae567556228c4fd8fb4ed3c8a1b94 +DIST bash52-019.sig 95 BLAKE2B f42700d5a25003d9f3e722c6230bb8795e2d01fe4b4b49411956757346f8df42bdfcc5af3a87469df7f560fb9857a05e45258f6057fd26090f0d3e17f9303fc5 SHA512 56de5fe1b98ff89ea5483f9ccef68ea8a7563e7cfa933daa223cd98f9b2d882e6692ae34859281906a228e9c510f1506c3c808eaaad6eeab762df00da2fbf55b +DIST bash52-020 1459 BLAKE2B de3e38dbb2395c765767aed516ae3d143e3187a44964f90c587f41f93447c43515481e3c9bd562175d750d0dfb9e4e3eacb25c31f8bf54168fa544c938955eae SHA512 a5a927e90ac3daead54e90f8ff99dbda0fd652c3df83b7bcde0adb136fc4ba8498810e5bfa1d7f0c143422bf1f4622a4669c96e505bccad7c9a271d7e0668187 +DIST bash52-020.sig 95 BLAKE2B 8fd778b381cc14d17de8f2b7e215fa0d35c569a90d46fac77c0a94bea525bd62428663f0a908e64ff773bd4caf0aab7f92c2dda1f4158aacbd53f053be91d16d SHA512 0ae6d9189329e560a89af9f42f0f98126faeb15d29bd327e6bd7694870a9bcfae3d3d545e42baf4223dcc732a50d46e4c22477c41b98be85736bb05a359eeeec +DIST bash52-021 1890 BLAKE2B cc2d886da8c51eb7bdbed694423eae29dc05dc2c7bd0cd41b9ee3acbc56ef135043bb48275c4162d33d2d4051a0a8b27f3aec097335b9d15e38fd841a6793f71 SHA512 c3a61e975819919d7ba120f322fc5e9a420b21f03d7bf989a5e7b6a99bfe35372744277040e88361ee383ab53b05d607d52ff2000b401de038af67c91728b48f +DIST bash52-021.sig 95 BLAKE2B 79572b14f423f0a96e89d106c5ed448c2b447760e99c743354bd6315132325c19312cfcad98f94c42d3094bb4283c1f7753ac4d3c600d46c63e49d0f7cc3befd SHA512 4063559edade78d1510c12b825aa29925e515807b447e50fe564770ee26ddf34e18b47132e5154a4c883043cc80b3d6415e4ba370bad308a17dc0f6b53fc61c5 diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.2_p21.ebuild b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.2_p21.ebuild new file mode 100644 index 00000000000..08518b8b363 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-shells/bash/bash-5.2_p21.ebuild @@ -0,0 +1,373 @@ +# Copyright 1999-2023 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}" + +# Official patchlevel +# See ftp://ftp.cwru.edu/pub/bash/bash-5.1-patches/ +PLEVEL="${PV##*_p}" +MY_PV="${PV/_p*}" +MY_PV="${MY_PV/_/-}" +MY_P="${PN}-${MY_PV}" +MY_PATCHES=() + +is_release() { + case ${PV} in + 9999|*_alpha*|*_beta*|*_rc*) + return 1 + ;; + *) + return 0 + ;; + esac +} + +[[ ${PV} != *_p* ]] && PLEVEL=0 + +# The version of readline this bash normally ships with. +# Note: right now, we don't use the system copy of readline for bash for non-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 +elif is_release ; then + SRC_URI="mirror://gnu/bash/${MY_P}.tar.gz" + SRC_URI+=" verify-sig? ( mirror://gnu/bash/${MY_P}.tar.gz.sig )" + + if [[ ${PLEVEL} -gt 0 ]] ; then + # bash-5.1 -> bash51 + my_p=${PN}$(ver_rs 1-2 '' $(ver_cut 1-2)) + + patch_url= + my_patch_index= + + upstream_url_base="mirror://gnu/bash" + mirror_url_base="ftp://ftp.cwru.edu/pub/bash" + + for ((my_patch_index=1; my_patch_index <= ${PLEVEL} ; my_patch_index++)) ; do + printf -v mangled_patch_ver ${my_p}-%03d ${my_patch_index} + patch_url="${upstream_url_base}/${MY_P}-patches/${mangled_patch_ver}" + + SRC_URI+=" ${patch_url}" + SRC_URI+=" verify-sig? ( ${patch_url}.sig )" + + # Add in the mirror URL too. + SRC_URI+=" ${patch_url/${upstream_url_base}/${mirror_url_base}}" + SRC_URI+=" verify-sig? ( ${patch_url/${upstream_url_base}/${mirror_url_base}} )" + + MY_PATCHES+=( "${DISTDIR}"/${mangled_patch_ver} ) + done + + unset my_p patch_url my_patch_index upstream_url_base mirror_url_base + fi +else + SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz" + SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz.sig )" +fi + +if [[ -n ${GENTOO_PATCH_VER} ]] ; then + SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${GENTOO_PATCH_VER}-patches.tar.xz" +fi + +LICENSE="GPL-3+" +SLOT="0" +if is_release ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 is_release ; 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 ) +" + +S="${WORKDIR}/${MY_P}" + +# EAPI 8 tries to append it but it doesn't exist here +QA_CONFIGURE_OPTIONS="--disable-static" + +PATCHES=( + #"${WORKDIR}"/${PN}-${GENTOO_PATCH_VER}/ + + # Patches from Chet sent to bash-bug ml + "${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 +) + +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() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + else + if use verify-sig ; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.gz{,.sig} + + local patch + for patch in "${MY_PATCHES[@]}" ; do + verify-sig_verify_detached ${patch}{,.sig} + done + fi + + unpack ${MY_P}.tar.gz + + if [[ -n ${GENTOO_PATCH_VER} ]] ; then + unpack ${PN}-${GENTOO_PATCH_VER}-patches.tar.xz + fi + fi +} + +src_prepare() { + # Include official patches + [[ ${PLEVEL} -gt 0 ]] && eapply -p0 "${MY_PATCHES[@]}" + + # Clean out local libs so we know we use system ones w/releases. + if is_release ; then + rm -rf lib/{readline,termcap}/* || die + touch lib/{readline,termcap}/Makefile.in || die # for config.status + sed -ri -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 -r '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in || die + touch -r . doc/* || die + + # Sometimes hangs (more noticeable w/ pgo), bug #907403. + rm tests/run-jobs || die + + eapply -p0 "${PATCHES[@]}" + eapply_user +} + +src_configure() { + # 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 YACC + + local 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) + + # Don't even think about building this statically without + # reading bug #7714 first. If you still build it statically, + # don't come crying to us with bugs ;). + #use static && export LDFLAGS="${LDFLAGS} -static" + use nls || myconf+=( --disable-nls ) + + if is_release ; 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() { + # -fprofile-partial-training because upstream note the test suite isn't super comprehensive + # See https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo + local pgo_generate_flags=$(usev pgo "-fprofile-update=atomic -fprofile-dir=${T}/pgo -fprofile-generate=${T}/pgo $(test-flags-CC -fprofile-partial-training)") + local pgo_use_flags=$(usev pgo "-fprofile-use=${T}/pgo -fprofile-dir=${T}/pgo $(test-flags-CC -fprofile-partial-training)") + + 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 use pgo ; then + # Used in test suite. + unset 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 A + + default +} + +src_install() { + local d f + + default + + dodir /bin + mv "${ED}"/usr/bin/bash "${ED}"/bin/ || die + dosym bash /bin/rbash + + insinto /etc/bash + doins "${FILESDIR}"/bash_logout + doins "$(prefixify_ro "${FILESDIR}"/bashrc)" + + keepdir /etc/bash/bashrc.d + + insinto /etc/skel + for f in bash{_logout,_profile,rc} ; do + newins "${FILESDIR}"/dot-${f} .${f} + done + + local sed_args=( + -e 's:#GNU#@::' + -e '/#@/d' + ) + + if ! use readline ; then + # bug #432338 + sed_args+=( + -e '/^shopt -s histappend/s:^:#:' + -e 's:use_color=true:use_color=false:' + ) + fi + + sed -i \ + "${sed_args[@]}" \ + "${ED}"/etc/skel/.bashrc \ + "${ED}"/etc/bash/bashrc || die + + if use plugins ; then + exeinto /usr/$(get_libdir)/bash + doexe $(echo examples/loadables/*.o | sed 's:\.o::g') + + 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 ]] && [[ ${f##*/} != *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/ + fi +} + +pkg_postinst() { + # If /bin/sh does not exist, provide it + if [[ ! -e ${EROOT}/bin/sh ]] ; then + ln -sf bash "${EROOT}"/bin/sh + fi +} diff --git a/sdk_container/src/third_party/portage-stable/app-shells/bash/files/bash-5.2_p21-wpointer-to-int.patch b/sdk_container/src/third_party/portage-stable/app-shells/bash/files/bash-5.2_p21-wpointer-to-int.patch new file mode 100644 index 00000000000..3d4abbc47f4 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/app-shells/bash/files/bash-5.2_p21-wpointer-to-int.patch @@ -0,0 +1,13 @@ +https://lists.gnu.org/archive/html/bug-bash/2023-03/msg00116.html +https://git.savannah.gnu.org/cgit/bash.git/commit/?h=devel&id=57d4dc15ff35895a1c1248f948f59739ffb99fde +--- lib/sh/random.c ++++ lib/sh/random.c +@@ -90,7 +90,7 @@ genseed () + u_bits32_t iv; + + gettimeofday (&tv, NULL); +- iv = (u_bits32_t)seedrand; /* let the compiler truncate */ ++ iv = (uintptr_t)seedrand; /* let the compiler truncate */ + iv = tv.tv_sec ^ tv.tv_usec ^ getpid () ^ getppid () ^ current_user.uid ^ iv; + return (iv); + } diff --git a/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-10.2.0.ebuild b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-10.2.0.ebuild index 8293d38ca4e..e9bcfe8888c 100644 --- a/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-10.2.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/asciidoc-10.2.0.ebuild @@ -5,7 +5,7 @@ EAPI=8 DISTUTILS_SINGLE_IMPL=1 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{9..11} pypy3 ) +PYTHON_COMPAT=( python3_{10..12} pypy3 ) inherit distutils-r1 optfeature readme.gentoo-r1 pypi DESCRIPTION="A plain text human readable/writable document format" @@ -15,10 +15,12 @@ LICENSE="GPL-2" SLOT="0" KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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 +RDEPEND=" + app-text/docbook-xml-dtd:4.5 >=app-text/docbook-xsl-stylesheets-1.75 dev-libs/libxslt - dev-libs/libxml2:2" + dev-libs/libxml2:2 +" DOC_CONTENTS=" If you are going to use a2x, please also look at a2x(1) under diff --git a/sdk_container/src/third_party/portage-stable/app-text/asciidoc/metadata.xml b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/metadata.xml index fe643142c87..5e3bb3ff9c8 100644 --- a/sdk_container/src/third_party/portage-stable/app-text/asciidoc/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/app-text/asciidoc/metadata.xml @@ -5,6 +5,7 @@ asciidoc asciidoc-py/asciidoc-py + asciidoc https://github.com/asciidoc-py/asciidoc-py/issues diff --git a/sdk_container/src/third_party/portage-stable/dev-db/sqlite/Manifest b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/Manifest index bb3d1202095..f622bde9f30 100644 --- a/sdk_container/src/third_party/portage-stable/dev-db/sqlite/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/Manifest @@ -2,7 +2,9 @@ DIST sqlite-doc-3420000.zip 10665938 BLAKE2B 62aef59e6976101ecca60d1ee194e9e5580 DIST sqlite-doc-3430000.zip 10663888 BLAKE2B 2bffca5a33c46183bf9d82042b89ad0968aa6061c7ccd5f6cd7a886ae48faa9a5356883b02048b66661f253401513d90f689f8a9f6debc0897cd25997c19ab4e SHA512 393c759e86a2fd6a7bbdc820c78289b84f984acd83879d7385c8627c73060562d376d66a9464887fdbccdea395025db677aa4c6f37aa32e99048fcde3561ae06 DIST sqlite-doc-3430100.zip 10668827 BLAKE2B 66ae2abbe4e6f7e7922f55f90f0bdac150948b7d76c633299a4ce34dfaa050d7b0f7404938c3b39c2b117223a5bc57ca981e466d8fc1efef5d0a1892350e64c3 SHA512 62c107d716c3c656b12a08750f81db25ccb68c267795247307be88a44b3fe7ceb0f1563278a2f504b91cd985a83196a50e58de5f3240601c49a25b2b3e147d8c DIST sqlite-doc-3430200.zip 10681883 BLAKE2B 4bdf30c44fc7df2c54a26092ffd06779d42e41d260b0ea0303db7b0ba1f1e087a452fa8fde9ce4969910e773a7620606bccad515100e2b2c642e34df4cda9282 SHA512 efef55ee96745afccbb48fa5b611b4de86871ccf36ee1da8d164a9c063aca3049392de856c5f81fc6117b8e5ef8dba63bda9bd1bd4663a0746f81f1f348aa11c +DIST sqlite-doc-3440000.zip 10689348 BLAKE2B 37f37ad801dbc690a8165936d627276e2ecbef7b5b37c2f1a4cd1d32340cebfefe3b58d944df6ccf28e3dadeb8539153cb39f6c485e097d125a3f923293fa157 SHA512 6873fcc265a1d89e63237d7703e750f5e4191591e17392a1060091408a9bce75e824b0bbc3d8cf2a82d6d58454f73cf3fd7c65c7276268bdfba527a168c580ff DIST sqlite-src-3420000.zip 13910252 BLAKE2B defe14bf0b5588775b2a2b17b3adbbaf39f1e95eac049cbd4868e2e59fbf50fb92b11c74ecf12fe0138521e7d4d3cc2a4bf45e7c83fd774abd7aa9ed7ee0f925 SHA512 509b7aa292870c927ef137469028e5e07ca74907414c5b295360cb10b377a42de7469d3afe79f8d9947d486ef74d676679c7f2d3b1caaeb8c949f27201180def DIST sqlite-src-3430000.zip 13927457 BLAKE2B dfa7311af66b76ca18001f98712f6187030d24e4ca679dbe1d30ef12d77f439056724087ae19640a77b075b35e3faeecc342ab8fcd5625ccd832f3e0fbe2b004 SHA512 56a16980bf10ba0d312ada183cabaa4123faf4ed531749d70349ca55ca11cc8a6733f473b2247f6cc0e500523f1b598ffee31efb81e07879c523957f0e3efa90 DIST sqlite-src-3430100.zip 13928044 BLAKE2B dcd1927bc092b5b8a2eb244132a8c4d62a17ab2fe67c2c53c3c48159c9fa6055fd35627ac6339b95627da5fa5d374db43e0dfa4d2f733e5fa7ad0844e8208018 SHA512 90f320653069b5ba9caadc8fbc914c7e63e520b884dbf9267badb07f5c573141d7db903dbfbcc0a97f6a116d8c4edec0cfac70c3c6b8ffb2efbb808f559173e3 DIST sqlite-src-3430200.zip 13929567 BLAKE2B 9366861b500bb6400b0d4eadf6890449b624dd42b039ee3861e18c088e1d96873978882ab747b52ac1dace40399ad7f5e583f7af608fb2120d22c311df947f65 SHA512 ab704038ae8d315144935cb99a727f85a7457ab5f0b8c639f49bb14a973dabe4784f9b23bd1ae7a351a81ce4a443142a05867c29eddb724beeff0b5c8dc0409f +DIST sqlite-src-3440000.zip 14059695 BLAKE2B da24095877348680e199eca1bfd2099d8fdeb127e222f73aa4e6090c7921b88de81a7859cdb77040f52102e4046c851a3b8e5b5d70bea3b146c962224aa33929 SHA512 3376d42b5f78afa028e4112ec545b5dd63b38188368046b92f0ebc536fd3ba909b0fdf6cd36f4d2de1d08a5eb3aa29a723f368adfa7208a5c737a04e878ca0d4 diff --git a/sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.44.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.44.0.ebuild new file mode 100644 index 00000000000..fb473fb1a98 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-db/sqlite/sqlite-3.44.0.ebuild @@ -0,0 +1,428 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic multilib-minimal toolchain-funcs + +DESCRIPTION="SQL database engine" +HOMEPAGE="https://sqlite.org/" + +# On version updates, make sure to read the forum (https://sqlite.org/forum/forum) +# for hints regarding test failures, backports, etc. +if [[ ${PV} == 9999 ]]; then + S="${WORKDIR}"/${PN} + PROPERTIES="live" +else + printf -v SRC_PV "%u%02u%02u%02u" $(ver_rs 1- " ") + DOC_PV="${SRC_PV}" + #printf -v DOC_PV "%u%02u%02u00" $(ver_rs 1-3 " ") + + SRC_URI=" + https://sqlite.org/2023/${PN}-src-${SRC_PV}.zip + doc? ( https://sqlite.org/2023/${PN}-doc-${DOC_PV}.zip ) + " + S="${WORKDIR}/${PN}-src-${SRC_PV}" + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="public-domain" +SLOT="3" +IUSE="debug doc icu +readline secure-delete static-libs tcl test tools" +RESTRICT="!test? ( test )" + +RDEPEND=" + sys-libs/zlib:=[${MULTILIB_USEDEP}] + icu? ( dev-libs/icu:=[${MULTILIB_USEDEP}] ) + readline? ( sys-libs/readline:=[${MULTILIB_USEDEP}] ) + tcl? ( dev-lang/tcl:=[${MULTILIB_USEDEP}] ) + tools? ( dev-lang/tcl:= ) +" +DEPEND=" + ${RDEPEND} + test? ( >=dev-lang/tcl-8.6:0[${MULTILIB_USEDEP}] ) +" +BDEPEND=">=dev-lang/tcl-8.6:0" +if [[ ${PV} == 9999 ]]; then + BDEPEND+=" dev-vcs/fossil" +else + BDEPEND+=" app-arch/unzip" +fi + +_fossil_fetch() { + local distdir="${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}" + local repo_id="${1}" + local repo_uri="${2}" + + local -x FOSSIL_HOME="${HOME}" + + mkdir -p "${T}/fossil/${repo_id}" || die + pushd "${T}/fossil/${repo_id}" > /dev/null || die + + if [[ -n "${EVCS_OFFLINE}" ]]; then + if [[ ! -f "${distdir}/fossil-src/${repo_id}/${repo_id}.fossil" ]]; then + die "Network activity disabled using EVCS_OFFLINE and clone of repository missing: \"${distdir}/fossil-src/${repo_id}/${repo_id}.fossil\"" + fi + else + if [[ ! -f "${distdir}/fossil-src/${repo_id}/${repo_id}.fossil" ]]; then + einfo fossil clone --verbose "${repo_uri}" "${repo_id}.fossil" + fossil clone --verbose "${repo_uri}" "${repo_id}.fossil" || die + echo + else + cp -p "${distdir}/fossil-src/${repo_id}/${repo_id}.fossil" . || die + einfo fossil pull --repository "${repo_id}.fossil" --verbose "${repo_uri}" + fossil pull --repository "${repo_id}.fossil" --verbose "${repo_uri}" || die + echo + fi + + ( + addwrite "${distdir}" + mkdir -p "${distdir}/fossil-src/${repo_id}" || die + cp -p "${repo_id}.fossil" "${distdir}/fossil-src/${repo_id}/${repo_id}.fossil" || die + ) + fi + + popd > /dev/null || die +} + +_fossil_checkout() { + local distdir="${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}" + local repo_id="${1}" + local branch_or_commit="${2}" + local target_directory="${3}" + + local -x FOSSIL_HOME="${HOME}" + + if [[ ! -f "${distdir}/fossil-src/${repo_id}/${repo_id}.fossil" ]]; then + die "Clone of repository missing: \"${distdir}/fossil-src/${repo_id}/${repo_id}.fossil\"" + fi + + if [[ ! -f "${T}/fossil/${repo_id}/${repo_id}.fossil" ]]; then + mkdir -p "${T}/fossil/${repo_id}" || die + cp -p "${distdir}/fossil-src/${repo_id}/${repo_id}.fossil" "${T}/fossil/${repo_id}" || die + fi + + mkdir "${target_directory}" || die + pushd "${target_directory}" > /dev/null || die + + einfo fossil open --quiet "${T}/fossil/${repo_id}/${repo_id}.fossil" "${branch_or_commit}" + fossil open --quiet "${T}/fossil/${repo_id}/${repo_id}.fossil" "${branch_or_commit}" || die + echo + + popd > /dev/null || die +} + +fossil_fetch() { + local repo_id="${1}" + local repo_uri="${2}" + local target_directory="${3}" + + local branch_or_commit="${EFOSSIL_COMMIT:-${EFOSSIL_BRANCH:-trunk}}" + + _fossil_fetch "${repo_id}" "${repo_uri}" + _fossil_checkout "${repo_id}" "${branch_or_commit}" "${target_directory}" +} + +src_unpack() { + if [[ ${PV} == 9999 ]]; then + fossil_fetch sqlite https://sqlite.org/src "${WORKDIR}/${PN}" + if use doc; then + fossil_fetch sqlite-doc https://sqlite.org/docsrc "${WORKDIR}/${PN}-doc" + fi + else + default + fi +} + +src_prepare() { + default + + eautoreconf + multilib_copy_sources +} + +multilib_src_configure() { + local -x CPPFLAGS="${CPPFLAGS}" CFLAGS="${CFLAGS}" + local options=() + + options+=( + --enable-load-extension + --enable-threadsafe + ) + + # Support detection of misuse of SQLite API. + # https://sqlite.org/compile.html#enable_api_armor + append-cppflags -DSQLITE_ENABLE_API_ARMOR + + # Support bytecode and tables_used virtual tables. + # https://sqlite.org/compile.html#enable_bytecode_vtab + # https://sqlite.org/bytecodevtab.html + append-cppflags -DSQLITE_ENABLE_BYTECODE_VTAB + + # Support column metadata functions. + # https://sqlite.org/compile.html#enable_column_metadata + # https://sqlite.org/c3ref/column_database_name.html + append-cppflags -DSQLITE_ENABLE_COLUMN_METADATA + + # Support sqlite_dbpage virtual table. + # https://sqlite.org/compile.html#enable_dbpage_vtab + # https://sqlite.org/dbpage.html + append-cppflags -DSQLITE_ENABLE_DBPAGE_VTAB + + # Support dbstat virtual table. + # https://sqlite.org/compile.html#enable_dbstat_vtab + # https://sqlite.org/dbstat.html + append-cppflags -DSQLITE_ENABLE_DBSTAT_VTAB + + # Support sqlite3_serialize() and sqlite3_deserialize() functions. + # https://sqlite.org/compile.html#enable_deserialize + # https://sqlite.org/c3ref/serialize.html + # https://sqlite.org/c3ref/deserialize.html + append-cppflags -DSQLITE_ENABLE_DESERIALIZE + + # Support comments in output of EXPLAIN. + # https://sqlite.org/compile.html#enable_explain_comments + append-cppflags -DSQLITE_ENABLE_EXPLAIN_COMMENTS + + # Support Full-Text Search versions 3, 4 and 5. + # https://sqlite.org/compile.html#enable_fts3 + # https://sqlite.org/compile.html#enable_fts3_parenthesis + # https://sqlite.org/compile.html#enable_fts4 + # https://sqlite.org/compile.html#enable_fts5 + # https://sqlite.org/fts3.html + # https://sqlite.org/fts5.html + append-cppflags -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4 + options+=( --enable-fts5 ) + + # Support hidden columns. + append-cppflags -DSQLITE_ENABLE_HIDDEN_COLUMNS + + # Support memsys5 memory allocator. + # https://sqlite.org/compile.html#enable_memsys5 + # https://sqlite.org/malloc.html#memsys5 + append-cppflags -DSQLITE_ENABLE_MEMSYS5 + + # Support sqlite3_normalized_sql() function. + # https://sqlite.org/c3ref/expanded_sql.html + append-cppflags -DSQLITE_ENABLE_NORMALIZE + + # Support sqlite_offset() function. + # https://sqlite.org/compile.html#enable_offset_sql_func + # https://sqlite.org/lang_corefunc.html#sqlite_offset + append-cppflags -DSQLITE_ENABLE_OFFSET_SQL_FUNC + + # Support pre-update hook functions. + # https://sqlite.org/compile.html#enable_preupdate_hook + # https://sqlite.org/c3ref/preupdate_count.html + append-cppflags -DSQLITE_ENABLE_PREUPDATE_HOOK + + # Support Resumable Bulk Update extension. + # https://sqlite.org/compile.html#enable_rbu + # https://sqlite.org/rbu.html + append-cppflags -DSQLITE_ENABLE_RBU + + # Support R*Trees. + # https://sqlite.org/compile.html#enable_rtree + # https://sqlite.org/compile.html#enable_geopoly + # https://sqlite.org/rtree.html + # https://sqlite.org/geopoly.html + append-cppflags -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_GEOPOLY + + # Support Session extension. + # https://sqlite.org/compile.html#enable_session + # https://sqlite.org/sessionintro.html + append-cppflags -DSQLITE_ENABLE_SESSION + + # Support scan status functions. + # https://sqlite.org/compile.html#enable_stmt_scanstatus + # https://sqlite.org/c3ref/stmt_scanstatus.html + # https://sqlite.org/c3ref/stmt_scanstatus_reset.html + append-cppflags -DSQLITE_ENABLE_STMT_SCANSTATUS + + # Support sqlite_stmt virtual table. + # https://sqlite.org/compile.html#enable_stmtvtab + # https://sqlite.org/stmt.html + append-cppflags -DSQLITE_ENABLE_STMTVTAB + + # Support unknown() function. + # https://sqlite.org/compile.html#enable_unknown_sql_function + append-cppflags -DSQLITE_ENABLE_UNKNOWN_SQL_FUNCTION + + # Support unlock notification. + # https://sqlite.org/compile.html#enable_unlock_notify + # https://sqlite.org/c3ref/unlock_notify.html + # https://sqlite.org/unlock_notify.html + append-cppflags -DSQLITE_ENABLE_UNLOCK_NOTIFY + + # Support LIMIT and ORDER BY clauses on DELETE and UPDATE statements. + # https://sqlite.org/compile.html#enable_update_delete_limit + # https://sqlite.org/lang_delete.html#optional_limit_and_order_by_clauses + # https://sqlite.org/lang_update.html#optional_limit_and_order_by_clauses + append-cppflags -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT + + # Support soundex() function. + # https://sqlite.org/compile.html#soundex + # https://sqlite.org/lang_corefunc.html#soundex + append-cppflags -DSQLITE_SOUNDEX + + # Support URI filenames. + # https://sqlite.org/compile.html#use_uri + # https://sqlite.org/uri.html + append-cppflags -DSQLITE_USE_URI + + options+=( $(use_enable debug) ) + + if use icu; then + # Support ICU extension. + # https://sqlite.org/compile.html#enable_icu + append-cppflags -DSQLITE_ENABLE_ICU + sed -e "s/^TLIBS = @LIBS@/& -licui18n -licuuc/" -i Makefile.in || die "sed failed" + fi + + options+=( + --disable-editline + $(use_enable readline) + ) + + if use readline; then + options+=( --with-readline-inc="-I${ESYSROOT}/usr/include/readline" ) + fi + + if use secure-delete; then + # Enable secure_delete pragma by default. + # https://sqlite.org/compile.html#secure_delete + # https://sqlite.org/pragma.html#pragma_secure_delete + append-cppflags -DSQLITE_SECURE_DELETE + fi + + options+=( $(use_enable static-libs static) ) + + # tcl, test, tools USE flags. + if use tcl || use test || { use tools && multilib_is_native_abi; }; then + options+=( + --enable-tcl + --with-tcl="${ESYSROOT}/usr/$(get_libdir)" + ) + else + options+=( --disable-tcl ) + fi + + if [[ "${ABI}" == "x86" ]]; then + if $(tc-getCC) ${CPPFLAGS} ${CFLAGS} -E -P -dM - < /dev/null 2> /dev/null | grep -q "^#define __SSE__ 1$"; then + append-cflags -mfpmath=sse + else + append-cflags -ffloat-store + fi + + # Skip known-broken test for now + # https://sqlite.org/forum/forumpost/d97caf168f + # https://sqlite.org/forum/forumpost/50f136d91d + if use test ; then + rm test/atof1.test || die + fi + fi + + econf "${options[@]}" +} + +multilib_src_compile() { + emake HAVE_TCL="$(usev tcl 1)" TCLLIBDIR="${EPREFIX}/usr/$(get_libdir)/${P}" + + if use tools && multilib_is_native_abi; then + emake changeset dbdump dbhash dbtotxt index_usage rbu scrub showdb showjournal showshm showstat4 showwal sqldiff sqlite3_analyzer sqlite3_checker sqlite3_expert sqltclsh + fi + + if [[ ${PV} == 9999 ]] && use doc && multilib_is_native_abi; then + emake tclsqlite3.c + + local build_directory="$(pwd)" + build_directory="${build_directory##*/}" + + mkdir "${WORKDIR}/${PN}-doc-build" || die + pushd "${WORKDIR}/${PN}-doc-build" > /dev/null || die + + emake -f "../${PN}-doc/Makefile" -j1 SRC="../${PN}" BLD="../${build_directory}" DOC="../${PN}-doc" CC="$(tc-getBUILD_CC)" TCLINC="" TCLFLAGS="$($(tc-getBUILD_PKG_CONFIG) --libs tcl) -ldl -lm" base doc + rmdir doc/matrix{/*,} || die + + popd > /dev/null || die + fi +} + +multilib_src_test() { + if [[ "${EUID}" -eq 0 ]]; then + ewarn "Skipping tests due to root permissions" + return + fi + + local -x SQLITE_HISTORY="${T}/sqlite_history_${ABI}" + + # e_uri.test tries to open files in /. + # bug #839798 + local SANDBOX_PREDICT=${SANDBOX_PREDICT} + addpredict "/test.db:/ÿ.db" + + emake -Onone HAVE_TCL="$(usex tcl 1 "")" $(usex debug 'fulltest' 'test') +} + +multilib_src_install() { + emake DESTDIR="${D}" HAVE_TCL="$(usex tcl 1 "")" TCLLIBDIR="${EPREFIX}/usr/$(get_libdir)/${P}" install + + if use tools && multilib_is_native_abi; then + install_tool() { + if [[ -f ".libs/${1}" ]]; then + newbin ".libs/${1}" "${2}" + else + newbin "${1}" "${2}" + fi + } + + install_tool changeset sqlite3-changeset + install_tool dbdump sqlite3-db-dump + install_tool dbhash sqlite3-db-hash + install_tool dbtotxt sqlite3-db-to-txt + install_tool index_usage sqlite3-index-usage + install_tool rbu sqlite3-rbu + install_tool scrub sqlite3-scrub + install_tool showdb sqlite3-show-db + install_tool showjournal sqlite3-show-journal + install_tool showshm sqlite3-show-shm + install_tool showstat4 sqlite3-show-stat4 + install_tool showwal sqlite3-show-wal + install_tool sqldiff sqlite3-diff + install_tool sqlite3_analyzer sqlite3-analyzer + install_tool sqlite3_checker sqlite3-checker + install_tool sqlite3_expert sqlite3-expert + install_tool sqltclsh sqlite3-tclsh + + unset -f install_tool + fi +} + +multilib_src_install_all() { + find "${ED}" -name "*.la" -delete || die + + doman sqlite3.1 + + if use doc; then + if [[ ${PV} == 9999 ]]; then + pushd "${WORKDIR}/${PN}-doc-build/doc" > /dev/null || die + else + pushd "${WORKDIR}/${PN}-doc-${DOC_PV}" > /dev/null || die + fi + + find "(" -name "*.db" -o -name "*.txt" ")" -delete || die + if [[ ${PV} != 9999 ]]; then + rm search search.d/admin || die + rmdir search.d || die + find -name "*~" -delete || die + fi + + ( + docinto html + dodoc -r * + ) + + popd > /dev/null || die + fi +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/lua/lua-5.4.6.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/lua/lua-5.4.6.ebuild index 0e62f50571e..b880a4d62f6 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/lua/lua-5.4.6.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/lua/lua-5.4.6.ebuild @@ -12,7 +12,7 @@ SRC_URI="https://dev.gentoo.org/~soap/distfiles/${P}.tar.xz" LICENSE="MIT" SLOT="5.4" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" IUSE="+deprecated readline" DEPEND=" diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/perl/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/perl/Manifest index 6df0c7cd965..5f9c7cc1f8b 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/perl/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/perl/Manifest @@ -3,6 +3,8 @@ DIST perl-5.36.0.tar.xz 13051500 BLAKE2B e4864a4c21e5242df4164c73db8af10f7b9c36b DIST perl-5.36.1.tar.xz 13053604 BLAKE2B baab610d16e444338ad7d529bad6a88e12010786bd25f2ab117ab4dd636859ff862cb925700095434f05a802bea5b89a9d41769f26bdbae439443020950882bd SHA512 8d1ec654c59d078bfc477f11c9526233199a85e4d4f6f5a55bf9eb7802cd355189c669cc6785d2d5e741c1de4d740b7a0cfd3c0198122586a07ac7f527fb14af DIST perl-5.38.0-patches-1.tar.gz 26047 BLAKE2B 809dd5242f9868e54525ae8056598d3252c889afc72ed6f122174f828947223399a5ba4dbc16dd43501f7138205991f8c102cbe0ed94175ae3353040c53a0162 SHA512 c66160e20095555aa21d3be70050dce934d62e55e01dcf0f716129b2faa390923958a48bc448b4fab6f55e5b097eb378f7a6409a92c024fe68c8b34fddcfc5e4 DIST perl-5.38.0.tar.xz 13565448 BLAKE2B 22fd334d911e8ebe16ad2a96522110ad2c14d09dcd04d5e64391c7ffffbb8ec92dd80d3a0f8eb105fb45aef8a2f78457174133503f7aeac4d90f762a44631478 SHA512 71beff7f6daa22a967972f5805daf2d4ff837a17e5ab808780f815d5914a67acf4f2e92acac0f2d8b24bdde4ceec0c2f7cb3029b5eadeeb30191f757e1bf0f9d +DIST perl-5.38.1.tar.xz 13683376 BLAKE2B 1a34d37cbf67da5c17a93d9262c2e0095da4e76f5517656084abf11ba61eefc328346e326402c16836462a4363b7a35a5ae723ecb0a75982abf84df08d8e9390 SHA512 720b2c2707f219509e652bc3d80f9ce82bec85f882dee9ff88b6bc5183064d66333651830daeb92a6e96bbe5d9d48581ab8496ce9427f8db6103fc438e2c05db DIST perl-cross-1.4.1.tar.gz 117688 BLAKE2B e01103fb92764213dafb1ab92954fdc4bdcf1bd71a0064279ee75fed55a1c71850eaabdf667d6ab1c15eadccf7497668e5bb5ab13de33fef707fba14bfd52912 SHA512 5f403d3a52f724383d25c23b08e8001954300fa8f07a5b49df440ef4d06ef756404a6e448093c4f4d4f9a470b1c3f2b1b8b27d3d227ac1823552f6a377edd06a DIST perl-cross-1.4.tar.gz 113861 BLAKE2B 7c7783afccc6a04ab122a7c60b1cff7f0a2725655b2b63325ca25d7b8acb0cf993b496e2a590db943054336337ad215550b6b2a565f1d91a5aa9cfe3a4c36db4 SHA512 bde73cac13c0b42c4c6783d7e30dea491d70b65131e1c8434ef75db1f39a8e15ef5857568b706e8456faa3822402676dd247a1f20f4bed983597fdd5a6b4faad +DIST perl-cross-1.5.1.tar.gz 118175 BLAKE2B 0b4a650073756056423fc8e0a309f0bdf665d207122bdd34ef7f5c6e3faf800adb963aa36b5f755171432e2db04025bd94cf049661f63d2f8a20c174b1884770 SHA512 beacee078b3321dcdba16fe2b1f54cdf8528715961209b685663fe8a50500c53299f047f5df974895f9b850de8bbf7bdc343b11878133c45c4bb1d6a2db90efd DIST perl-cross-1.5.tar.gz 115073 BLAKE2B ecc2764beef5dd188e56c2e499297e09e03a48fe4cb3b1582005e5899d7a3e9f28b9e600a18e16560a9a1955fef6d0a543a601574991a3853c8c9cdee7acc5df SHA512 b358d79e10777118b97568329e11b6b72cfe4960f2f3c0e857de31b515bd588448ad224d182b083f4075b47fd3877decbb037e7d26d4ba090011e6e41946370f diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/perl/perl-5.38.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/perl/perl-5.38.1.ebuild new file mode 100644 index 00000000000..c30d3b9ad31 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/perl/perl-5.38.1.ebuild @@ -0,0 +1,820 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit alternatives flag-o-matic toolchain-funcs multilib multiprocessing + +PATCH_VER=1 +CROSS_VER=1.5.1 +PATCH_BASE="perl-5.38.0-patches-${PATCH_VER}" +PATCH_DEV=dilfridge + +DIST_AUTHOR=RJBS + +# Greatest first, don't include yourself +# Devel point-releases are not ABI-intercompatible, but stable point releases are +# BIN_OLDVERSEN contains only C-ABI-intercompatible versions +PERL_BIN_OLDVERSEN="" + +if [[ "${PV##*.}" == "9999" ]]; then + DIST_VERSION=5.30.0 +else + DIST_VERSION="${PV/_rc/-RC}" +fi +SHORT_PV="${DIST_VERSION%.*}" + +# Even numbered major versions are ABI intercompatible +# Odd numbered major versions are not +if [[ $(( ${SHORT_PV#*.} % 2 )) == 1 ]]; then + SUBSLOT="${DIST_VERSION%-RC*}" +else + SUBSLOT="${DIST_VERSION%.*}" +fi + +# Used only in tar paths +MY_P="perl-${DIST_VERSION}" +# Used in library paths +MY_PV="${DIST_VERSION%-RC*}" + +DESCRIPTION="Larry Wall's Practical Extraction and Report Language" + +SRC_URI=" + mirror://cpan/src/5.0/${MY_P}.tar.xz + mirror://cpan/authors/id/${DIST_AUTHOR:0:1}/${DIST_AUTHOR:0:2}/${DIST_AUTHOR}/${MY_P}.tar.xz + https://github.com/gentoo-perl/perl-patchset/archive/refs/tags/${PATCH_BASE}.tar.gz + https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${PATCH_BASE}.tar.gz + https://github.com/arsv/perl-cross/releases/download/${CROSS_VER}/perl-cross-${CROSS_VER}.tar.gz +" + +HOMEPAGE="https://www.perl.org/" + +LICENSE="|| ( Artistic GPL-1+ )" +SLOT="0/${SUBSLOT}" + +if [[ "${PV##*.}" != "9999" ]] && [[ "${PV/rc//}" == "${PV}" ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi + +IUSE="berkdb debug doc gdbm ithreads minimal quadmath" + +RDEPEND=" + berkdb? ( sys-libs/db:= ) + gdbm? ( >=sys-libs/gdbm-1.8.3:= ) + app-arch/bzip2 + >=sys-libs/zlib-1.2.12 + virtual/libcrypt:= +" +DEPEND="${RDEPEND}" +BDEPEND="${RDEPEND}" + +PDEPEND=" + >=app-admin/perl-cleaner-2.30 + !minimal? ( + >=virtual/perl-CPAN-2.290.0 + >=virtual/perl-Encode-3.120.0 + >=virtual/perl-File-Temp-0.230.400-r2 + >=virtual/perl-Data-Dumper-2.154.0 + virtual/perl-Test-Harness + ) +" +# bug 390719, bug 523624 +# virtual/perl-Test-Harness is here for the bundled ExtUtils::MakeMaker + +S="${WORKDIR}/${MY_P}" + +dual_scripts() { + src_remove_dual perl-core/Archive-Tar 2.400.0 ptar ptardiff ptargrep + src_remove_dual perl-core/CPAN 2.360.0 cpan + src_remove_dual perl-core/Digest-SHA 6.40.0 shasum + src_remove_dual perl-core/Encode 3.190.0 enc2xs piconv + src_remove_dual perl-core/ExtUtils-MakeMaker 7.700.0 instmodsh + src_remove_dual perl-core/ExtUtils-ParseXS 3.510.0 xsubpp + src_remove_dual perl-core/IO-Compress 2.204.0 zipdetails + src_remove_dual perl-core/JSON-PP 4.160.0 json_pp + src_remove_dual perl-core/Module-CoreList 5.202.311.250 corelist + src_remove_dual perl-core/Pod-Checker 1.750.0 podchecker + src_remove_dual perl-core/Pod-Perldoc 3.280.100 perldoc + src_remove_dual perl-core/Pod-Usage 2.30.0 pod2usage + src_remove_dual perl-core/Test-Harness 3.440.0 prove + src_remove_dual perl-core/podlators 5.10.0 pod2man pod2text + src_remove_dual_man perl-core/podlators 5.10.0 /usr/share/man/man1/perlpodstyle.1 +} + +check_rebuild() { + # Fresh install + if [[ -z "${REPLACING_VERSIONS}" ]]; then + return 0; + # Major Upgrade + # doesn't matter if there's multiple copies, it still needs a rebuild + # if the string is anything other than "5.CURRENTMAJOR" + elif [[ "${REPLACING_VERSIONS%.*}" != "${PV%.*}" ]]; then + echo "" + ewarn "UPDATE THE PERL MODULES:" + ewarn "After updating dev-lang/perl the installed Perl modules" + ewarn "have to be re-installed. In most cases, this is done automatically" + ewarn "by the package manager, but subsequent steps are still recommended" + ewarn "to ensure system consistency." + ewarn + ewarn "You should start with a depclean to remove any unused perl dependencies" + ewarn "that may confuse portage in future. Regular depcleans are also encouraged" + ewarn "as part of your regular update cycle, as that will keep perl upgrades working." + ewarn "Recommended: emerge --depclean -va" + ewarn + ewarn "You should then call perl-cleaner to clean up any old files and trigger any" + ewarn "remaining rebuilds portage may have missed." + ewarn "Use: perl-cleaner --all" + return 0; + + # Reinstall w/ USE Change + elif + ( use ithreads && ! has_version dev-lang/perl[ithreads] ) || \ + ( ! use ithreads && has_version dev-lang/perl[ithreads] ) || \ + ( use quadmath && ! has_version dev-lang/perl[quadmath] ) || \ + ( ! use quadmath && has_version dev-lang/perl[quadmath] ) || \ + ( use debug && ! has_version dev-lang/perl[debug] ) || \ + ( ! use debug && has_version dev-lang/perl[debug] ) ; then + echo "" + ewarn "TOGGLED USE-FLAGS WARNING:" + ewarn "You changed one of the use-flags ithreads, quadmath, or debug." + ewarn "You must rebuild all perl-modules installed." + ewarn "Use: perl-cleaner --modules ; perl-cleaner --force --libperl" + fi +} + +pkg_setup() { + case ${CHOST} in + *-darwin*) osname="darwin" ;; + *-solaris*) osname="solaris" ;; + *) osname="linux" ;; + esac + + myarch="${CHOST%%-*}-${osname}" + if use debug ; then + myarch+="-debug" + fi + if use quadmath ; then + myarch+="-quadmath" + fi + if use ithreads ; then + mythreading="-multi" + myarch+="-thread" + fi + + PRIV_BASE="/usr/$(get_libdir)/perl5" + SITE_BASE="/usr/local/$(get_libdir)/perl5" + VENDOR_BASE="/usr/$(get_libdir)/perl5/vendor_perl" + + LIBPERL="libperl$(get_libname ${MY_PV} )" + + PRIV_LIB="${PRIV_BASE}/${SUBSLOT}" + ARCH_LIB="${PRIV_BASE}/${SUBSLOT}/${myarch}${mythreading}" + SITE_LIB="${SITE_BASE}/${SUBSLOT}" + SITE_ARCH="${SITE_BASE}/${SUBSLOT}/${myarch}${mythreading}" + VENDOR_LIB="${VENDOR_BASE}/${SUBSLOT}" + VENDOR_ARCH="${VENDOR_BASE}/${SUBSLOT}/${myarch}${mythreading}" + + dual_scripts +} + +src_remove_dual_file() { + local i pkg ver + pkg="$1" + ver="$2" + shift 2 + case "${EBUILD_PHASE:-none}" in + postinst|postrm) + for i in "$@" ; do + alternatives_auto_makesym "${i}" "${i}-[0-9]*" + done + ;; + setup) + for i in "$@" ; do + if [[ -f ${EROOT}${i} && ! -h ${EROOT}${i} ]] ; then + has_version ${pkg} && ewarn "You must reinstall ${pkg} !" + break + fi + done + ;; + install) + for i in "$@" ; do + if ! [[ -f "${ED}"${i} ]] ; then + ewarn "${i} does not exist!" + continue + fi + mv "${ED}"${i}{,-${ver}-${P}} || die + done + ;; + esac +} + +src_remove_dual_man() { + local i pkg ver ff + pkg="$1" + ver="$2" + shift 2 + case "${EBUILD_PHASE:-none}" in + postinst|postrm) + for i in "$@" ; do + ff=`echo "${EROOT}${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}}"*` + ff=${ff##*${i#${i%.[0-9]}}} + alternatives_auto_makesym "${i}${ff}" "${i%.[0-9]}-[0-9]*" + done + ;; + install) + for i in "$@" ; do + if ! [[ -f "${ED}"${i} ]] ; then + ewarn "${i} does not exist!" + continue + fi + mv "${ED}"${i} "${ED}"${i%.[0-9]}-${ver}-${P}${i#${i%.[0-9]}} || die + done + ;; + esac +} + +src_remove_dual() { + local i pkg ver + pkg="$1" + ver="$2" + shift 2 + for i in "$@" ; do + src_remove_dual_file "${pkg}" "${ver}" "/usr/bin/${i}" + src_remove_dual_man "${pkg}" "${ver}" "/usr/share/man/man1/${i}.1" + done +} + +src_prepare_perlcross() { + cp -a ../perl-cross-${CROSS_VER}/* . || die + + # bug 794463, needs further analysis what is exactly wrong here + eapply "${FILESDIR}/perl-5.34.0-crossfit.patch" + + # bug 604072 + MAKEOPTS+=" -j1" + export MAKEOPTS +} + +src_prepare_dynamic() { + ln -s ${LIBPERL} libperl$(get_libname ${SHORT_PV}) || die + ln -s ${LIBPERL} libperl$(get_libname ) || die +} + +# Copy a patch into the patch series +# add_patch SRC_PATH DEST_NAME ['description'] ['bug'] ['bug'] +# - description is optional, but recommended +# - all arguments after descriptions are bug URLs +add_patch() { + local patchdir="${WORKDIR}/patches" + local infodir="${WORKDIR}/patch-info" + local src_name dest_name desc + src_name="$1" + dest_name="$2" + desc="$3" + shift; shift; shift; + einfo "Adding ${dest_name} to patch bundle" + cp "${src_name}" "${patchdir}/${dest_name}" || die "Couldn't copy ${src_name} to ${dest_name}" + if [[ -n "${desc}" ]]; then + printf "%s" "${desc}" > "${infodir}/${dest_name}.desc" || die "Couldn't write ${dest_name}.desc" + fi + if [[ $# -gt 0 ]]; then + # Note: when $@ is more than one element, this emits a + # line for each element + printf "%s\n" "$@" > "${infodir}/${dest_name}.bugs" || die "Couldn't write ${dest_name}.bugs" + fi +} + +# Remove a patch using a glob expr +# eg: +# rm_patch *-darwin-Use-CC* +# +rm_patch() { + local patchdir="${WORKDIR}/patches" + local expr="$1" + local patch="$( cd "${patchdir}"; echo $expr )" + einfo "Removing $patch ($expr) from patch bundle" + if [[ -e "${patchdir}/${patch}" ]]; then + rm -f "${patchdir}/${patch}" || die "Can't remove ${patch} ( $expr )" + else + ewarn "No ${expr} found in ${patchdir} to remove" + fi +} + +# Yes, this is a reasonable amount of code for something seemingly simple +# but this is far easier to debug when things go wrong, and things went wrong +# multiple times while I was getting the exact number of slashes right, which +# requires circumnavigating both bash and sed escape mechanisms. +c_escape_string() { + local slash dquote + slash='\' + dquote='"' + re_slash="${slash}${slash}" + re_dquote="${slash}${dquote}" + + # Convert \ to \\, + # " to \" + echo "$1" |\ + sed "s|${re_slash}|${re_slash}${re_slash}|g" |\ + sed "s|${re_dquote}|${re_slash}${re_dquote}|g" +} +c_escape_file() { + c_escape_string "$(cat "$1")" +} + +apply_patchdir() { + local patchdir="${WORKDIR}/patches" + local infodir="${WORKDIR}/patch-info" + local patchoutput="patchlevel-gentoo.h" + + # Inject Patch-Level info into description for patchlevel.h patch + # to show in -V + local patch_expr="*List-packaged-patches*" + local patch="$( cd "${patchdir}"; echo $patch_expr )"; + einfo "Injecting patch-level info into ${patch}.desc ( $patch_expr )" + + if [[ -e "${patchdir}/${patch}" ]]; then + printf "List packaged patches for %s(%s) in patchlevel.h" "${PF}" "${PATCH_BASE}"\ + >"${infodir}/${patch}.desc" || die "Can't rewrite ${patch}.desc" + else + eerror "No $patch_expr found in ${patchdir}" + fi + + # Compute patch list to apply + # different name other than PATCHES to stop default + # reapplying it + # Single depth is currently only supported, as artifacts can reside + # from the old layout being multiple-directories, as well as it grossly + # simplifying the patchlevel_gentoo.h generation. + local PERL_PATCHES=($( + find "${patchdir}" -maxdepth 1 -mindepth 1 -type f -printf "%f\n" |\ + grep -E '[.](diff|patch)$' |\ + sort -n + )) + + for patch in "${PERL_PATCHES[@]}"; do + eapply "${WORKDIR}"/patches/${patch} + done + + einfo "Generating $patchoutput" + + # This code creates a header file, each iteration + # creates one-or-more-lines for each entry found in PERL_PATCHES + # and STDOUT is redirected to the .h file + for patch in "${PERL_PATCHES[@]}"; do + local desc_f="${infodir}/${patch}.desc" + local bugs_f="${infodir}/${patch}.bugs" + + printf ',"%s"\n' "${patch}" + if [[ ! -e "${desc_f}" ]]; then + ewarn "No description provided for ${patch} (expected: ${desc_f} )" + else + local desc="$(c_escape_file "${desc_f}")" + printf ',"- %s"\n' "${desc}" + fi + if [[ -e "${bugs_f}" ]]; then + while read -d $'\n' -r line; do + local esc_line="$(c_escape_string "${line}")" + printf ',"- Bug: %s"\n' "${esc_line}" + done <"${bugs_f}" + fi + done > "${S}/${patchoutput}" + printf "%s\n" "${patchoutput}" >> "${S}/MANIFEST" + +} + +src_prepare() { + + local patchdir="${WORKDIR}/patches" + + mv -v "${WORKDIR}/perl-patchset-${PATCH_BASE}/patches" "${WORKDIR}/patches" || die + mv -v "${WORKDIR}/perl-patchset-${PATCH_BASE}/patch-info" "${WORKDIR}/patch-info" || die + + # Prepare Patch dir with additional patches / remove unwanted patches + # Inject bug/desc entries for perl -V + # Old example: + # add_patch "${FILESDIR}/${PN}-5.26.2-hppa.patch" "100-5.26.2-hppa.patch"\ + # "Fix broken miniperl on hppa"\ + # "https://bugs.debian.org/869122" "https://bugs.gentoo.org/634162" + + if [[ ${CHOST} == *-solaris* ]] ; then + # do NOT mess with nsl, on Solaris this is always necessary, + # when -lsocket is used e.g. to get h_errno + rm_patch "*-nsl-and-cl*" + fi + + apply_patchdir + + tc-is-cross-compiler && src_prepare_perlcross + + tc-is-static-only || src_prepare_dynamic + + if use gdbm; then + sed -i "s:INC => .*:INC => \"-I${EROOT}/usr/include/gdbm\":g" \ + ext/NDBM_File/Makefile.PL || die + fi + + # Use errno.h from prefix rather than from host system, bug #645804 + if use prefix && [[ -e "${EPREFIX}"/usr/include/errno.h ]] ; then + sed -i "/my..sysroot/s:'':'${EPREFIX}':" ext/Errno/Errno_pm.PL || die + fi + + if [[ ${CHOST} == *-solaris* ]] ; then + # set a soname, fix linking against just built libperl + sed -i -e 's/netbsd\*/netbsd*|solaris*/' Makefile.SH || die + fi + + if [[ ${CHOST} == *-darwin* ]] ; then + # fix install_name (soname) not to reference $D + sed -i -e '/install_name `pwd/s/`pwd`/\\$(shrpdir)/' Makefile.SH || die + + # fix environ linkage absence (only a real issue on Darwin9) + if [[ ${CHOST##*-darwin} -le 9 ]] ; then + sed -i -e '/^PLDLFLAGS =/s/=/= -include crt_externs.h -Denviron="(*_NSGetEnviron())"/' \ + Makefile.SH || die + fi + fi + + default +} + +myconf() { + # the myconf array is declared in src_configure + myconf=( "${myconf[@]}" "$@" ) +} + +# Outputs a list of versions which have been seen in any of the +# primary perl @INC prefix paths, such as: +# /usr/lib64/perl5/ +# /usr/local/lib64/perl5/ +# /usr/lib64/perl5/vendor_perl/ +# +# All values of NUMBER must be like "5.x.y" or like "5.x" +# +find_candidate_inc_versions() { + local regex='.*/5[.][0-9]+\([.][0-9]+\|\)$' + local dirs=( + "${EROOT}${PRIV_BASE}" + "${EROOT}${SITE_BASE}" + "${EROOT}${VENDOR_BASE}" + ) + for dir in "${dirs[@]}"; do + if [[ ! -e "${dir}" ]]; then + continue + fi + # Without access to readdir() on these dirs, find will not be able + # to reveal any @INC directories inside them, and will subsequently prune + # them from the built perl's @INC support, breaking our compatiblity options + # entirely. + if [[ ! -r "${dir}" || ! -x "${dir}" ]]; then + eerror "Bad permissions on ${dir}, this will probably break things" + eerror "Ensure ${dir} is +rx for at least uid=$EUID" + eerror "Recommended permission is +rx for all" + eerror "> chmod o+rx ${dir}" + fi + done + einfo "Scanning for old @INC dirs matching '$regex' in: ${dirs[*]}" + find "${dirs[@]}" -maxdepth 1 -mindepth 1 -type d -regex "${regex}" -printf "%f " 2>/dev/null +} + +# Sort versions passed versiony-ly, remove self-version if present +# dedup. Takes each version as an argument +sanitize_inc_versions() { + local vexclude="${SUBSLOT}" + einfo "Normalizing/Sorting candidate list: $*" + einfo " to remove '${vexclude}'" + # Note, general numeric sort has to be used + # for the last component, or unique will convert + # 5.30.0 + 5.30 into just 5.30 + printf "%s\n" "$@" |\ + grep -vxF "${vexclude}" |\ + sort -u -nr -t'.' -k1,1rn -k2,2rn -k3,3rg +} + +versions_to_inclist() { + local oldv="${DIST_VERSION%-RC} ${PERL_BIN_OLDVERSEN}" + + for v; do + has "${v}" ${oldv} && echo -n "${v}/${myarch}${mythreading}/ "; + echo -n "${v}/ "; + done +} + +versions_to_gentoolibdirs() { + local oldv="${DIST_VERSION%-RC} ${PERL_BIN_OLDVERSEN}" + local root + local v + for v; do + for root in "${PRIV_BASE}" "${VENDOR_BASE}" "${SITE_BASE}"; do + local fullpath="${EROOT}${root}/${v}" + if [[ -e "${fullpath}" ]]; then + has "${v}" ${oldv} && printf "%s:" "${fullpath}/${myarch}${mythreading}"; + printf "%s:" "${fullpath}" + fi + done + done +} + +src_configure() { + declare -a myconf + + export LC_ALL="C" + [[ ${COLUMNS:-1} -ge 1 ]] || unset COLUMNS # bug #394091 + + # Perl has problems compiling with -Os in your flags with glibc + replace-flags "-Os" "-O2" + + # xlocale.h is going away in glibc-2.26, so it's counterproductive + # if we use it and include it in CORE/perl.h ... Perl builds just + # fine with glibc and locale.h only. + # However, the darwin prefix people have no locale.h ... + use elibc_glibc && myconf -Ui_xlocale + + # This flag makes compiling crash in interesting ways + filter-flags "-malign-double" + + # Generic LTO broken since 5.28, triggers EUMM failures + filter-lto + + use sparc && myconf -Ud_longdbl + + export BUILD_BZIP2=0 + export BZIP2_INCLUDE=${EROOT}/usr/include + export BZIP2_LIB=${EROOT}/usr/$(get_libdir) + + export BUILD_ZLIB=False + export ZLIB_INCLUDE=${EROOT}/usr/include + export ZLIB_LIB=${EROOT}/usr/$(get_libdir) + + # allow either gdbm to provide ndbm (in ) or db1 + myndbm='U' + mygdbm='U' + mydb='U' + if use gdbm ; then + mygdbm='D' + if use berkdb ; then + myndbm='D' + fi + fi + if use berkdb ; then + mydb='D' + has_version '=sys-libs/db-1*' && myndbm='D' + fi + + myconf "-${myndbm}i_ndbm" "-${mygdbm}i_gdbm" "-${mydb}i_db" + + if use alpha && [[ "$(tc-getCC)" = "ccc" ]] ; then + ewarn "Perl will not be built with berkdb support, use gcc if you needed it..." + myconf -Ui_db -Ui_ndbm + fi + + use ithreads && myconf -Dusethreads + + use quadmath && myconf -Dusequadmath + + if use debug ; then + append-cflags "-g" + myconf -DDEBUGGING + elif [[ ${CFLAGS} == *-g* ]] ; then + myconf -DDEBUGGING=-g + else + myconf -DDEBUGGING=none + fi + + # modifying 'optimize' prevents cross configure script from appending required flags + if tc-is-cross-compiler; then + append-cflags "-fwrapv" + + # bug #913171 + export HOSTCFLAGS="${CFLAGS_FOR_BUILD} -D_GNU_SOURCE" + fi + + # bug #877659, bug #821577 + append-cflags -fno-strict-aliasing + + # Autodiscover all old version directories, some of them will even be newer + # if you downgrade + if [[ -z ${PERL_OLDVERSEN} ]]; then + PERL_OLDVERSEN="$( find_candidate_inc_versions )" + fi + + # Fixup versions, removing self match, fixing order and dupes + PERL_OLDVERSEN="$( sanitize_inc_versions ${PERL_OLDVERSEN} )" + + # Experts who want a "Pure" install can set PERL_OLDVERSEN to an empty string + if [[ -n "${PERL_OLDVERSEN// }" ]]; then + local inclist="$( versions_to_inclist ${PERL_OLDVERSEN} )" + einfo "This version of perl may partially support modules previously" + einfo "installed in any of the following paths:" + for incpath in ${inclist}; do + [[ -e "${EROOT}${VENDOR_BASE}/${incpath}" ]] && einfo " ${EROOT}${VENDOR_BASE}/${incpath}" + [[ -e "${EROOT}${PRIV_BASE}/${incpath}" ]] && einfo " ${EROOT}${PRIV_BASE}/${incpath}" + [[ -e "${EROOT}${SITE_BASE}/${incpath}" ]] && einfo " ${EROOT}${SITE_BASE}/${incpath}" + done + einfo "This is a temporary measure and you should aim to cleanup these paths" + einfo "via world updates and perl-cleaner" + # myconf -Dinc_version_list="${inclist}" + myconf -Dgentoolibdirs="$( versions_to_gentoolibdirs ${PERL_OLDVERSEN} )" + fi + + [[ ${ELIBC} == "FreeBSD" ]] && myconf "-Dlibc=/usr/$(get_libdir)/libc.a" + + # Make sure we can do the final link #523730, need to set deployment + # target to override hardcoded 10.3 which breaks on modern OSX + [[ ${CHOST} == *-darwin* ]] && \ + myconf "-Dld=env MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} $(tc-getCC)" + + # Older macOS with non-Apple GCC chokes on inline in system headers + # using c89 mode as injected by cflags.SH, in addition, we override + # cflags, so we loose PERL_DARWIN which enables compat code that + # apparently on more recent macOS releases is no longer necessary + [[ ${CHOST} == *-darwin* && ${CHOST##*darwin} -le 9 ]] && tc-is-gcc && \ + append-cflags -Dinline=__inline__ -DPERL_DARWIN + + # Prefix: the host system needs not to follow Gentoo multilib stuff, and in + # Prefix itself we don't do multilib either, so make sure perl can find + # something compatible. + if use prefix ; then + # Set a hook to check for each detected library whether it actually works. + export libscheck=" + ( echo 'main(){}' > '${T}'/conftest.c && + $(tc-getCC) -o '${T}'/conftest '${T}'/conftest.c -l\$thislib >/dev/null 2>/dev/null + ) || xxx=/dev/null" + + # Use all host paths that might contain useful stuff, the hook above will filter out bad choices. + local paths="/lib/*-linux-gnu /usr/lib/*-linux-gnu /lib64 /lib/64 /usr/lib64 /usr/lib/64 /lib32 /usr/lib32 /lib /usr/lib" + myconf "-Dlibpth=${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir) ${paths}" + elif [[ $(get_libdir) != "lib" ]] ; then + # We need to use " and not ', as the written config.sh use ' ... + myconf "-Dlibpth=/usr/local/$(get_libdir) /$(get_libdir) /usr/$(get_libdir)" + fi + + # don't try building ODBM, bug #354453 + disabled_extensions="ODBM_File" + + if ! use gdbm ; then + # workaround for bug #157774: don't try building GDBM related stuff with USE="-gdbm" + disabled_extensions="${disabled_extensions} GDBM_File NDBM_File" + fi + + myconf -Dnoextensions="${disabled_extensions}" + + [[ "${PV##*.}" == "9999" ]] && myconf -Dusedevel -Uversiononly + + [[ -n "${EXTRA_ECONF}" ]] && ewarn During Perl build, EXTRA_ECONF=${EXTRA_ECONF} + # allow fiddling via EXTRA_ECONF, bug 558070 + eval "local -a EXTRA_ECONF=(${EXTRA_ECONF})" + + # setting -Dld= to tc-getLD breaks perl and all perl things + # https://github.com/Perl/perl5/issues/17791#issuecomment-630145202 + myconf \ + -Duseshrplib \ + -Darchname="${myarch}" \ + -Dcc="$(tc-getCC)" \ + -Dar="$(tc-getAR)" \ + -Dnm="$(tc-getNM)" \ + -Dcpp="$(tc-getCPP)" \ + -Dranlib="$(tc-getRANLIB)" \ + -Accflags="${CFLAGS} -DNO_PERL_RAND_SEED" \ + -Doptimize="${CFLAGS}" \ + -Dldflags="${LDFLAGS}" \ + -Dprefix="${EPREFIX}"'/usr' \ + -Dsiteprefix="${EPREFIX}"'/usr/local' \ + -Dvendorprefix="${EPREFIX}"'/usr' \ + -Dscriptdir="${EPREFIX}"'/usr/bin' \ + -Dprivlib="${EPREFIX}${PRIV_LIB}" \ + -Darchlib="${EPREFIX}${ARCH_LIB}" \ + -Dsitelib="${EPREFIX}${SITE_LIB}" \ + -Dsitearch="${EPREFIX}${SITE_ARCH}" \ + -Dvendorlib="${EPREFIX}${VENDOR_LIB}" \ + -Dvendorarch="${EPREFIX}${VENDOR_ARCH}" \ + -Dman1dir="${EPREFIX}"/usr/share/man/man1 \ + -Dman3dir="${EPREFIX}"/usr/share/man/man3 \ + -Dsiteman1dir="${EPREFIX}"/usr/local/man/man1 \ + -Dsiteman3dir="${EPREFIX}"/usr/local/man/man3 \ + -Dvendorman1dir="${EPREFIX}"/usr/share/man/man1 \ + -Dvendorman3dir="${EPREFIX}"/usr/share/man/man3 \ + -Dman1ext='1' \ + -Dman3ext='3pm' \ + -Dlibperl="${LIBPERL}" \ + -Dlocincpth="${EPREFIX}"'/usr/include ' \ + -Dglibpth="${EPREFIX}/$(get_libdir) ${EPREFIX}/usr/$(get_libdir)"' ' \ + -Duselargefiles \ + -Dd_semctl_semun \ + -Dcf_by='Gentoo' \ + -Dmyhostname='localhost' \ + -Dperladmin='root@localhost' \ + -Ud_csh \ + -Dsh="${EPREFIX}"/bin/sh \ + -Dtargetsh="${EPREFIX}"/bin/sh \ + -Uusenm \ + "${EXTRA_ECONF[@]}" + + if tc-is-cross-compiler; then + ./configure \ + --target="${CHOST}" \ + --build="${CBUILD}" \ + -Dinstallprefix='' \ + -Dinstallusrbinperl='undef' \ + -Dusevendorprefix='define' \ + "${myconf[@]}" \ + || die "Unable to configure" + else + sh Configure \ + -des \ + -Dinstallprefix="${EPREFIX}"'/usr' \ + -Dinstallusrbinperl='n' \ + "${myconf[@]}" \ + || die "Unable to configure" + fi +} + +src_test() { + export NO_GENTOO_NETWORK_TESTS=1; + export GENTOO_ASSUME_SANDBOXED="${GENTOO_ASSUME_SANDBOXED:-1}" + export GENTOO_NO_PORTING_TESTS="${GENTOO_NO_PORTING_TESTS:-1}" + if [[ ${EUID} == 0 ]] ; then + ewarn "Test fails with a sandbox error (#328793) if run as root. Skipping tests..." + return 0 + fi + TEST_JOBS="$(makeopts_jobs)" make test_harness || die "test failed" +} + +src_install() { + local i + local coredir="${ARCH_LIB}/CORE" + + emake DESTDIR="${D}" install + + rm -f "${ED}/usr/bin/perl${MY_PV}" + ln -s perl "${ED}"/usr/bin/perl${MY_PV} || die + + if ! tc-is-static-only ; then + dolib.so "${ED}"${coredir}/${LIBPERL} + rm -f "${ED}"${coredir}/${LIBPERL} + ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname ${SHORT_PV}) || die + ln -sf ${LIBPERL} "${ED}"/usr/$(get_libdir)/libperl$(get_libname) || die + + ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/${LIBPERL} || die + ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname ${SHORT_PV}) || die + ln -sf ../../../../${LIBPERL} "${ED}"${coredir}/libperl$(get_libname) || die + fi + + rm -rf "${ED}"/usr/share/man/man3 || die "Unable to remove module man pages" + + # This removes ${D} from Config.pm + for i in $(find "${D}" -iname "Config.pm" ) ; do + einfo "Removing ${D} from ${i}..." + sed -i -e "s:${D}::" "${i}" || die "Sed failed" + done + + dodoc Changes* README AUTHORS + + if use doc ; then + # HTML Documentation + # We expect errors, warnings, and such with the following. + + dodir /usr/share/doc/${PF}/html + LD_LIBRARY_PATH=. ./perl installhtml \ + --podroot='.' \ + --podpath='lib:ext:pod:vms' \ + --recurse \ + --htmldir="${ED}/usr/share/doc/${PF}/html" + fi + + [[ -d ${ED}/usr/local ]] && rm -r "${ED}"/usr/local + + dual_scripts +} + +pkg_preinst() { + check_rebuild +} + +pkg_postinst() { + dual_scripts + + if [[ -z "${ROOT}" ]] ; then + local INC DIR file + INC=$(perl -e 'for $line (@INC) { next if $line eq "."; next if $line =~ m/'${SHORT_PV}'|etc|local|perl$/; print "$line\n" }') + einfo "Removing old .ph files" + for DIR in ${INC} ; do + if [[ -d "${DIR}" ]] ; then + for file in $(find "${DIR}" -name "*.ph" -type f ) ; do + rm -f "${file}" + einfo "<< ${file}" + done + fi + done + # Silently remove the now empty dirs + for DIR in ${INC} ; do + if [[ -d "${DIR}" ]] ; then + find "${DIR}" -depth -type d -print0 | xargs -0 -r rmdir &> /dev/null + fi + done + + fi +} + +pkg_postrm() { + dual_scripts +} diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest b/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest index f35634d1aa6..5d070d82dc3 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/Manifest @@ -18,6 +18,8 @@ DIST Python-3.12.0rc3.tar.xz 20566024 BLAKE2B b5f709eb80ceec58ced5bc7b0a4bd96496 DIST Python-3.12.0rc3.tar.xz.asc 963 BLAKE2B 790b5c25ff5058d4d53c0c189ba82ba32b62cdfb100e658ca6171b2ade73bbfa155208a6c3053f498caf664852649d900b8a5173e48928f5c3c90d51a557877b SHA512 224d4402b96d6f5938d0eec83a3e494e25b4d883f9466c653788b86fc4ce5ab26ac8d9891f7aa20a6bd4766a5bc47fbe19afbc27db9148071b6b215bbdcc32f6 DIST Python-3.13.0a1.tar.xz 20137588 BLAKE2B 62612d22ce652f4b1d7ce93aa30bd5814dbf271dbe98e321b99d003d7da8f74798e55f556db75fc39b676295c1d1f7b31919c444fe3c667d2fbd2ea16799a211 SHA512 456c6c7cb18b92645269ffa6c4db4b18370664aa60f2dbe8f42c87ae4d6d0e34940500fa06c13f0f043c33213f4e3022e233ef01bb65b50fba91454f1db3ed5e DIST Python-3.13.0a1.tar.xz.asc 963 BLAKE2B b4d765b76bfa13370bb9eb649e009149a292a09ec2739bbc7014be1026b9e6de06d3223cdc404fa86ef022a67c5605513c47050ca14f9d9d8dffd5e505f64328 SHA512 964e9eca1964b43333c755437d923abf0e96c7567a09ae3b9a9aad52fa5063b9699546e7b1f0bc96883b7487f3c44fd3bfda1573147fc1c4384580d77ec0272f +DIST Python-3.13.0a2.tar.xz 20244640 BLAKE2B b1edae4c5f6c33e7250f718caa3164e163ea13f245817a997f0497d20bb9695e6e2f777eb42fc210b21fb315bd1753fe4a46b7f213312a03201481d26544fa63 SHA512 2702f630ebb49a835c213656f2f0d41f87daf2dad6b856821f4011f4614c19279656eaa1dad9f1cbfd258992aa5f59d4571577057c6a4ad1cdcfa4d8ada3b607 +DIST Python-3.13.0a2.tar.xz.asc 963 BLAKE2B db603fcf2dcf0c727b3a92a5ccbaadd080e11d664b1c07944ef082b5ca8625b2ccd4d4384d344d14e61eb73466011f2284f5240d710b3be7206c7316e2a3872b SHA512 c6a0101b844701fcd860a519ec4830bde0df486ea78377831544dbe0db25dd67c28360f46d5ef01db64aa4347cf7b0d489590f6dc91e768b16753228f2c93b25 DIST Python-3.8.18.tar.xz 20696952 BLAKE2B 45be712aeef8bb3ba04aa2bd7d0282aa5f817327749c620ede18ee307fcb432540db9062a8186b08b49467515c74f01eb6fa739f366cca76dfadedcb22858429 SHA512 0be1d85cafade25e99b8277ba51d7b9b3a3d2dbbcc52fd0d1c633c47982e5dd87fd7a0ca180a78d7801d79a8ecafa79bd9d501d544cd7b6da53ea409daa70adf DIST Python-3.8.18.tar.xz.asc 833 BLAKE2B bc4e989748d53c6be7040e78d9f1852227c6a76f4c63a68824f5139defd51d1ea7988df01f961ff5c77382e156ef45fead2bb97bddbb38b208ddfa9c709e4f34 SHA512 99a0fd74fe19144819fd9522836474e10c1593787eb464694bdc6224b2d4a9331e31d2ecafc35c2bbb9bf67f20186295b28f9374c1fdcd05ac13f5f400219489 DIST Python-3.9.18.tar.xz 19673928 BLAKE2B 97da9bedaf29101e5df82199ac3ee12f1da74d5cc89de21ff1510c3f6d34d7f9194489e79855f1ab3c6f26768738e784cb7231c1a692fa746edd21d35558bc4e SHA512 aab155aca757d298394eddb91ff9a8f239665bd46feb495c6b6f735bbcb7489c05c858cc4cd08f1575c24f293b33492d763e9a140d92f0b2b0cc81a165a677c7 @@ -35,5 +37,6 @@ DIST python-gentoo-patches-3.12.0rc2_p1.tar.xz 5168 BLAKE2B 399ad4854c46e0a2bdc7 DIST python-gentoo-patches-3.12.0rc3.tar.xz 5168 BLAKE2B 66f132bb26c5ce36823897a6938c0f7018afd8f3c53cf738656929a944604de2764263c437c6ee4f81b617f02a33ef154d354998d14fcaef358b19b867da2937 SHA512 72fb6371871bb41ba59ddf711444fa17524fc7ac185db0ac762f6664c61cf086c73d13df10c0346094f603ed2d783bae201ee79de8d7d4cc339b74b26bd0a2f6 DIST python-gentoo-patches-3.12.0rc3_p1.tar.xz 9700 BLAKE2B e87bc56dcf82dc0ba598ac68ffda4dbd4dd8dac4b1e9d2bc092f4ef05b9045a41270dffc7b727bcc4e82df302ee923d29dae9c18ebf97494a016c30c2f3073ac SHA512 5d9eb94ab0ffe1fba81362c448dabcd771f89e0a8576a72e7d5748831b9b8bb858942ed6c2eee3306be2a42fe4ed01f971269969c0fd6279c32d390a3a8f7cd8 DIST python-gentoo-patches-3.13.0a1.tar.xz 4352 BLAKE2B 49f52cee497fbde6ca9628002d367e64455a628d383ce88c89a773b8d566c1601a22b65ccc130ce842bef67d3014ed987d35f86a1b83ac7ba9ad78fb7b0a6144 SHA512 bcfdc102f7c52681263e216fb46b08bcb6fa104d5a70f64eba16ab30bad2c7a9bd64a7031d3dc4f6bda842486ce8edd4bd4c17d0de14e6f2682876a8af396c5f +DIST python-gentoo-patches-3.13.0a2.tar.xz 4360 BLAKE2B 1c55b3ae512a2c04bab00fb3a47faabd2726b6cd7a082d27b4c354ff334c22cb7296d9bf4ca531fc91e2d31be8b1f385de82081980272bca9163bc208b54fea4 SHA512 c7bd4dc3f8f698d65ffe54f46432903e3591687d997b1f6b7429bead461652d9de9dea3515cb0063a662d14ddcf7916199779d61edf888cc24c01d89f1fafbee DIST python-gentoo-patches-3.8.18.tar.xz 32424 BLAKE2B 2e0b6e1c8e3df666934ba283214ca1577b01140dea00513f6420b0255650002e4bc4cb142076620227cd430bc2547123fd392883285886e543ef72ca466f8ea6 SHA512 b005f1054b726fc8c82a50b006309de64fb7858fe5c22cc7b160687d059a7859ec9388706b74a0e6c1f42301bed071dc639eb8cfae0d7c5eef2f565c63cc2d29 DIST python-gentoo-patches-3.9.18.tar.xz 25044 BLAKE2B 1d9ace5c5a0f1c15bc23595cc51d64b4c2b416552cdaaa960c3e34360aba3e7029a06e2a077212c68fa7aee4fd20f649a3b0926bd4ebb10e529e8350ab051e63 SHA512 bc180c3346dfae60a7db221d114146ee83409bc42092171eb05c83de528bf5f0e5654d1441f40ba839d0a98e866a5b43452fb7a72047c837497620a12097b8f5 diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_p1.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_p1.ebuild index df871bbf0ed..be7a24c7779 100644 --- a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_p1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.12.0_p1.ebuild @@ -28,7 +28,7 @@ S="${WORKDIR}/${MY_P}" LICENSE="PSF-2" SLOT="${PYVER}" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha ~amd64 ~arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE=" bluetooth build debug +ensurepip examples gdbm libedit lto +ncurses pgo +readline +sqlite +ssl test tk valgrind diff --git a/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.0_alpha2.ebuild b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.0_alpha2.ebuild new file mode 100644 index 00000000000..b2364be2514 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-lang/python/python-3.13.0_alpha2.ebuild @@ -0,0 +1,530 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" +WANT_LIBTOOL="none" + +inherit autotools check-reqs flag-o-matic multiprocessing pax-utils +inherit python-utils-r1 toolchain-funcs verify-sig + +MY_PV=${PV/_alpha/a} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2) +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="An interpreted, interactive, object-oriented 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}" +IUSE=" + bluetooth build debug +ensurepip examples gdbm libedit lto + +ncurses pgo +readline +sqlite +ssl test tk valgrind +" +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-python/gentoo-common + >=sys-libs/zlib-1.1.3:= + virtual/libcrypt:= + 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? ( + app-arch/xz-utils[extra-filters(+)] + dev-python/ensurepip-pip + dev-python/ensurepip-setuptools + dev-python/ensurepip-wheel + ) + valgrind? ( dev-util/valgrind ) +" +# autoconf-archive needed to eautoreconf +BDEPEND=" + sys-devel/autoconf-archive + app-alternatives/awk + virtual/pkgconfig + 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} +# false positives -- functions specific to *BSD +QA_CONFIG_IMPL_DECL_SKIP=( chflags lchflags ) + +pkg_pretend() { + use test && check-reqs_pkg_pretend +} + +pkg_setup() { + use test && check-reqs_pkg_setup +} + +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 + + 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 _crypt + 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() { + local disable + # 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 + + # https://bugs.gentoo.org/700012 + if is-flagq -flto || is-flagq '-flto=*'; then + append-cflags $(test-flags-CC -ffat-lto-objects) + fi + + # 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 + + if use pgo; then + local profile_task_flags=( + -m test + "-j$(makeopts_jobs)" + --pgo-extended + -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 + + -x test_gdb + -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 + ) + + 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 + --with-system-expat + --with-platlibdir=lib + --with-pkg-config=yes + --with-wheel-pkg-dir="${EPREFIX}"/usr/lib/python/ensurepip + + $(use_with debug assertions) + $(use_with lto) + $(use_enable pgo optimizations) + $(use_with readline readline "$(usex libedit editline readline)") + $(use_with valgrind) + ) + # 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} + + if use pgo ; then + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + + addpredict "/usr/lib/python${PYVER}/site-packages" + 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=( + -u-network + -j "$(makeopts_jobs)" + + # fails + -x test_gdb + ) + + if use sparc ; then + # bug #788022 + test_opts+=( + -x test_multiprocessing_fork + -x test_multiprocessing_forkserver + ) + fi + + # workaround docutils breaking tests + cat > Lib/docutils.py <<-EOF || die + raise ImportError("Thou shalt not import!") + EOF + + # bug 660358 + local -x COLUMNS=80 + local -x PYTHONDONTWRITEBYTECODE= + # workaround https://bugs.gentoo.org/775416 + addwrite "/usr/lib/python${PYVER}/site-packages" + + nonfatal emake test EXTRATESTOPTS="${test_opts[*]}" \ + CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty + local ret=${?} + + rm Lib/docutils.py || die + + [[ ${ret} -eq 0 ]] || die "emake test failed" +} + +src_install() { + local libdir=${ED}/usr/lib/python${PYVER} + + # the Makefile rules are broken + # https://github.com/python/cpython/issues/100221 + mkdir -p "${libdir}"/lib-dynload || die + + # -j1 hack for now for bug #843458 + emake -j1 DESTDIR="${D}" altinstall + + # Fix collisions between different slots of Python. + rm "${ED}/usr/$(get_libdir)/libpython3.so" || 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 ensurepip; then + rm -r "${libdir}"/ensurepip || die + fi + if ! use sqlite; then + rm -r "${libdir}/"sqlite3 || die + fi + if ! use tk; then + rm -r "${ED}/usr/bin/idle${PYVER}" || die + rm -r "${libdir}/"{idlelib,tkinter,test/test_tk*} || 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 +} + +pkg_postinst() { + local v + for v in ${REPLACING_VERSIONS}; do + if ver_test "${v}" -lt 3.11.0_beta4-r2; then + ewarn "Python 3.11.0b4 has changed its module ABI. The .pyc files" + ewarn "installed previously are no longer valid and will be regenerated" + ewarn "(or ignored) on the next import. This may cause sandbox failures" + ewarn "when installing some packages and checksum mismatches when removing" + ewarn "old versions. To actively prevent this, rebuild all packages" + ewarn "installing Python 3.11 modules, e.g. using:" + ewarn + ewarn " emerge -1v /usr/lib/python3.11/site-packages" + fi + done +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/Manifest index 5177d5a25a7..66c4bb18aec 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/Manifest @@ -1,6 +1,3 @@ -DIST elfutils-0.187-patches.tar.xz 2804 BLAKE2B 77cbd0666d8da3d5229baaba6605c84e7990200f39bfb72b2008eb2527e4567abd90c93c291cc0c8f3c10bbf97758ccf5877cbdae823780cf8dc97ff4ff2f932 SHA512 d056fdd6ae0e71471087af472a72384d6e73ff2d7fe1b708b5ec9f091a913c8327197660132b7a6619a0db86534715507ef67ee91691a00a591c1d24c55a99f4 -DIST elfutils-0.188.tar.bz2 9112977 BLAKE2B 6b0474f1436eaf6af73b735b9b2ddd5448ab9c03fbaa0be745a31c89ae8f15b0e21a651409c38643ca125794ce82c19d7b46db4a079f3e72cb919d643560e7a4 SHA512 585551b2d937d19d1becfc2f28935db1dd1a3d25571a62f322b70ac8da98c1a741a55d070327705df6c3e2ee026652e0b9a3c733b050a0b0ec5f2fc75d5b74b5 -DIST elfutils-0.188.tar.bz2.sig 310 BLAKE2B c8d9135cffde3b1dd337b692d5351855cf799915d3ebd553327febaac192bd2f108b3f45a6376d458e179390a1ceaf4809762cdc40ea1e05fed0214ac33ed56e SHA512 4cc8a7417d244e319a1650d71b1831660cfe41afc7c73e9c83d1f076f4013fe15247e8b4f5e12a5396d83c4f1c7663ca4be5ea42bff3dc23263f85331fd9d566 DIST elfutils-0.189.tar.bz2 9143169 BLAKE2B 30596271e14cf3408326abc38a9775b849b8cb0ee119a5455df9434a7d3b9a57afb15e0236a179a26c7bd400d303749964c9d6350c419f747784fd99d12517e0 SHA512 93a877e34db93e5498581d0ab2d702b08c0d87e4cafd9cec9d6636dfa85a168095c305c11583a5b0fb79374dd93bc8d0e9ce6016e6c172764bcea12861605b71 DIST elfutils-0.189.tar.bz2.sig 310 BLAKE2B d4155de64b15a9ab5c497cd603e73bf918eb1117de36cf28f8ddb50ccb4874fb24cffdf44bcbbc028b2ef3f64562960bf11a431274d861f9db96e3d865b37ec2 SHA512 2016c5f0ccd16f7feb0c825164bb18b2f1afad17dcd39d9f159429360fe4afd645665f612397d48bde191a1e59bb8352e2d065d61d7f649b929c3a7e7bfe8dd0 DIST elfutils-0.190.tar.bz2 9162766 BLAKE2B 9934aff08f1898377708b28595fb52130ef9f80408132ac7d306845b10672ba45cf1ac69783da07b3eea9fd647741d44da45b8b2626c45a768cb2844c6186513 SHA512 9c4f5328097e028286c42f29e39dc3d80914b656cdfbbe05b639e91bc787ae8ae64dd4d69a6e317ce30c01648ded10281b86a51e718295f4c589df1225a48102 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.188.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.188.ebuild deleted file mode 100644 index 3fcaf83642a..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.188.ebuild +++ /dev/null @@ -1,122 +0,0 @@ -# Copyright 2003-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/elfutils.gpg -inherit flag-o-matic multilib-minimal verify-sig - -DESCRIPTION="Libraries/utilities to handle ELF objects (drop in replacement for libelf)" -HOMEPAGE="https://sourceware.org/elfutils/" -SRC_URI="https://sourceware.org/elfutils/ftp/${PV}/${P}.tar.bz2" -SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-0.187-patches.tar.xz" -SRC_URI+=" verify-sig? ( https://sourceware.org/elfutils/ftp/${PV}/${P}.tar.bz2.sig )" - -LICENSE="|| ( GPL-2+ LGPL-3+ ) utils? ( GPL-3+ )" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 lzma nls static-libs test +utils zstd" -RESTRICT="!test? ( test )" - -RDEPEND=" - !dev-libs/libelf - >=sys-libs/zlib-1.2.8-r1[static-libs?,${MULTILIB_USEDEP}] - bzip2? ( >=app-arch/bzip2-1.0.6-r4[static-libs?,${MULTILIB_USEDEP}] ) - lzma? ( >=app-arch/xz-utils-5.0.5-r1[static-libs?,${MULTILIB_USEDEP}] ) - zstd? ( app-arch/zstd:=[static-libs?,${MULTILIB_USEDEP}] ) - elibc_musl? ( - dev-libs/libbsd - sys-libs/argp-standalone - sys-libs/fts-standalone - sys-libs/obstack-standalone - ) -" -DEPEND=" - ${RDEPEND} -" -BDEPEND=" - >=sys-devel/flex-2.5.4a - sys-devel/m4 - nls? ( sys-devel/gettext ) - verify-sig? ( sec-keys/openpgp-keys-elfutils ) -" - -PATCHES=( - "${WORKDIR}"/${PN}-0.187-patches/ -) - -src_unpack() { - if use verify-sig ; then - # Needed for downloaded patch (which is unsigned, which is fine) - verify-sig_verify_detached "${DISTDIR}"/${P}.tar.bz2{,.sig} - fi - - default -} - -src_prepare() { - default - - if use elibc_musl; then - eapply "${WORKDIR}"/${PN}-0.187-patches/musl/ - fi - - if ! use static-libs; then - sed -i -e '/^lib_LIBRARIES/s:=.*:=:' -e '/^%.os/s:%.o$::' lib{asm,dw,elf}/Makefile.in || die - fi - - # https://sourceware.org/PR23914 - sed -i 's:-Werror::' */Makefile.in || die -} - -src_configure() { - # bug #407135 - use test && append-flags -g - - multilib-minimal_src_configure -} - -multilib_src_configure() { - local myeconfargs=( - $(use_enable nls) - --disable-debuginfod - --disable-libdebuginfod - - # explicitly disable thread safety, it's not recommended by upstream - # doesn't build either on musl. - --disable-thread-safety - - # Valgrind option is just for running tests under it; dodgy under sandbox - # and indeed even w/ glibc with newer instructions. - --disable-valgrind - --program-prefix="eu-" - --with-zlib - $(use_with bzip2 bzlib) - $(use_with lzma) - $(use_with zstd) - ) - - # Needed because sets alignment macro - is-flagq -fsanitize=address && myeconfargs+=( --enable-sanitize-address ) - is-flagq -fsanitize=undefined && myeconfargs+=( --enable-sanitize-undefined ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_test() { - env LD_LIBRARY_PATH="${BUILD_DIR}/libelf:${BUILD_DIR}/libebl:${BUILD_DIR}/libdw:${BUILD_DIR}/libasm" \ - LC_ALL="C" \ - emake check VERBOSE=1 -} - -multilib_src_install_all() { - einstalldocs - - dodoc NOTES - - # These build quick, and are needed for most tests, so don't - # disable their building when the USE flag is disabled. - if ! use utils; then - rm -rf "${ED}"/usr/bin || die - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.189-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.189-r1.ebuild deleted file mode 100644 index 7158de2c9a2..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.189-r1.ebuild +++ /dev/null @@ -1,127 +0,0 @@ -# Copyright 2003-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/elfutils.gpg -inherit autotools flag-o-matic multilib-minimal verify-sig - -DESCRIPTION="Libraries/utilities to handle ELF objects (drop in replacement for libelf)" -HOMEPAGE="https://sourceware.org/elfutils/" -SRC_URI="https://sourceware.org/elfutils/ftp/${PV}/${P}.tar.bz2" -SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-0.187-patches.tar.xz" -SRC_URI+=" verify-sig? ( https://sourceware.org/elfutils/ftp/${PV}/${P}.tar.bz2.sig )" - -LICENSE="|| ( GPL-2+ LGPL-3+ ) utils? ( GPL-3+ )" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 lzma nls static-libs test +utils zstd" -RESTRICT="!test? ( test )" - -RDEPEND=" - !dev-libs/libelf - >=sys-libs/zlib-1.2.8-r1[static-libs?,${MULTILIB_USEDEP}] - bzip2? ( >=app-arch/bzip2-1.0.6-r4[static-libs?,${MULTILIB_USEDEP}] ) - lzma? ( >=app-arch/xz-utils-5.0.5-r1[static-libs?,${MULTILIB_USEDEP}] ) - zstd? ( app-arch/zstd:=[static-libs?,${MULTILIB_USEDEP}] ) - elibc_musl? ( - dev-libs/libbsd - sys-libs/argp-standalone - sys-libs/fts-standalone - sys-libs/obstack-standalone - ) -" -DEPEND=" - ${RDEPEND} -" -BDEPEND=" - >=sys-devel/flex-2.5.4a - sys-devel/m4 - nls? ( sys-devel/gettext ) - verify-sig? ( sec-keys/openpgp-keys-elfutils ) -" - -PATCHES=( - "${WORKDIR}"/${PN}-0.187-patches/ - "${FILESDIR}"/${P}-configure-bashisms.patch - "${FILESDIR}"/${P}-clang16-tests.patch -) - -src_unpack() { - if use verify-sig ; then - # Needed for downloaded patch (which is unsigned, which is fine) - verify-sig_verify_detached "${DISTDIR}"/${P}.tar.bz2{,.sig} - fi - - default -} - -src_prepare() { - default - - if use elibc_musl; then - eapply "${WORKDIR}"/${PN}-0.187-patches/musl/ - fi - - # Only here for ${P}-configure-bashisms.patch, delete on next bump! - eautoreconf - - if ! use static-libs; then - sed -i -e '/^lib_LIBRARIES/s:=.*:=:' -e '/^%.os/s:%.o$::' lib{asm,dw,elf}/Makefile.in || die - fi - - # https://sourceware.org/PR23914 - sed -i 's:-Werror::' */Makefile.in || die -} - -src_configure() { - # bug #407135 - use test && append-flags -g - - multilib-minimal_src_configure -} - -multilib_src_configure() { - local myeconfargs=( - $(use_enable nls) - --disable-debuginfod - --disable-libdebuginfod - - # explicitly disable thread safety, it's not recommended by upstream - # doesn't build either on musl. - --disable-thread-safety - - # Valgrind option is just for running tests under it; dodgy under sandbox - # and indeed even w/ glibc with newer instructions. - --disable-valgrind - --program-prefix="eu-" - --with-zlib - $(use_with bzip2 bzlib) - $(use_with lzma) - $(use_with zstd) - ) - - # Needed because sets alignment macro - is-flagq -fsanitize=address && myeconfargs+=( --enable-sanitize-address ) - is-flagq -fsanitize=undefined && myeconfargs+=( --enable-sanitize-undefined ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_test() { - env LD_LIBRARY_PATH="${BUILD_DIR}/libelf:${BUILD_DIR}/libebl:${BUILD_DIR}/libdw:${BUILD_DIR}/libasm" \ - LC_ALL="C" \ - emake check VERBOSE=1 -} - -multilib_src_install_all() { - einstalldocs - - dodoc NOTES - - # These build quick, and are needed for most tests, so don't - # disable their building when the USE flag is disabled. - if ! use utils; then - rm -rf "${ED}"/usr/bin || die - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.189-r3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.189-r3.ebuild deleted file mode 100644 index 238b3fd8098..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.189-r3.ebuild +++ /dev/null @@ -1,127 +0,0 @@ -# Copyright 2003-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/elfutils.gpg -inherit autotools flag-o-matic multilib-minimal verify-sig - -DESCRIPTION="Libraries/utilities to handle ELF objects (drop in replacement for libelf)" -HOMEPAGE="https://sourceware.org/elfutils/" -SRC_URI="https://sourceware.org/elfutils/ftp/${PV}/${P}.tar.bz2" -SRC_URI+=" verify-sig? ( https://sourceware.org/elfutils/ftp/${PV}/${P}.tar.bz2.sig )" - -LICENSE="|| ( GPL-2+ LGPL-3+ ) utils? ( GPL-3+ )" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" -IUSE="bzip2 debuginfod lzma nls static-libs test +utils zstd" -RESTRICT="!test? ( test )" - -RDEPEND=" - !dev-libs/libelf - >=sys-libs/zlib-1.2.8-r1[static-libs?,${MULTILIB_USEDEP}] - bzip2? ( >=app-arch/bzip2-1.0.6-r4[static-libs?,${MULTILIB_USEDEP}] ) - debuginfod? ( - app-arch/libarchive:= - dev-db/sqlite:3= - net-libs/libmicrohttpd:= - - net-misc/curl[static-libs?,${MULTILIB_USEDEP}] - ) - lzma? ( >=app-arch/xz-utils-5.0.5-r1[static-libs?,${MULTILIB_USEDEP}] ) - zstd? ( app-arch/zstd:=[static-libs?,${MULTILIB_USEDEP}] ) - elibc_musl? ( - dev-libs/libbsd - sys-libs/argp-standalone - sys-libs/fts-standalone - sys-libs/obstack-standalone - ) -" -DEPEND=" - ${RDEPEND} -" -BDEPEND=" - >=sys-devel/flex-2.5.4a - sys-devel/m4 - nls? ( sys-devel/gettext ) - verify-sig? ( sec-keys/openpgp-keys-elfutils ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-0.189-PaX-support.patch - "${FILESDIR}"/${PN}-0.189-skip-DT_RELR-failing-tests.patch - "${FILESDIR}"/${PN}-0.189-tests-run-lfs-symbols.sh-needs-gawk.patch - "${FILESDIR}"/${PN}-0.189-musl-aarch64-regs.patch - "${FILESDIR}"/${PN}-0.189-musl-macros.patch - "${FILESDIR}"/${P}-configure-bashisms.patch - "${FILESDIR}"/${P}-clang16-tests.patch -) - -src_prepare() { - default - - # Only here for ${P}-configure-bashisms.patch, delete on next bump! - eautoreconf - - if ! use static-libs; then - sed -i -e '/^lib_LIBRARIES/s:=.*:=:' -e '/^%.os/s:%.o$::' lib{asm,dw,elf}/Makefile.in || die - fi - - # https://sourceware.org/PR23914 - sed -i 's:-Werror::' */Makefile.in || die -} - -src_configure() { - # bug #407135 - use test && append-flags -g - - # bug 660738 - filter-flags -fno-asynchronous-unwind-tables - - multilib-minimal_src_configure -} - -multilib_src_configure() { - local myeconfargs=( - $(use_enable nls) - $(multilib_native_use_enable debuginfod) - $(use_enable debuginfod libdebuginfod) - - # explicitly disable thread safety, it's not recommended by upstream - # doesn't build either on musl. - --disable-thread-safety - - # Valgrind option is just for running tests under it; dodgy under sandbox - # and indeed even w/ glibc with newer instructions. - --disable-valgrind - --program-prefix="eu-" - --with-zlib - $(use_with bzip2 bzlib) - $(use_with lzma) - $(use_with zstd) - ) - - # Needed because sets alignment macro - is-flagq -fsanitize=address && myeconfargs+=( --enable-sanitize-address ) - is-flagq -fsanitize=undefined && myeconfargs+=( --enable-sanitize-undefined ) - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_test() { - env LD_LIBRARY_PATH="${BUILD_DIR}/libelf:${BUILD_DIR}/libebl:${BUILD_DIR}/libdw:${BUILD_DIR}/libasm" \ - LC_ALL="C" \ - emake check VERBOSE=1 -} - -multilib_src_install_all() { - einstalldocs - - dodoc NOTES - - # These build quick, and are needed for most tests, so don't - # disable their building when the USE flag is disabled. - if ! use utils; then - rm -rf "${ED}"/usr/bin || die - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.189-r4.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.189-r4.ebuild index abfa0027df3..4fbcbbab5b6 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.189-r4.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/elfutils/elfutils-0.189-r4.ebuild @@ -13,7 +13,7 @@ SRC_URI+=" verify-sig? ( https://sourceware.org/elfutils/ftp/${PV}/${P}.tar.bz2. LICENSE="|| ( GPL-2+ LGPL-3+ ) utils? ( GPL-3+ )" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" IUSE="bzip2 debuginfod lzma nls static-libs test +utils zstd" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/Manifest index b32b0bd8534..3160e534cd6 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/Manifest @@ -2,5 +2,7 @@ DIST libgcrypt-1.10.1.tar.bz2 3778457 BLAKE2B 46f30459891183b6d9ec18f1c7907fee0a DIST libgcrypt-1.10.1.tar.bz2.sig 119 BLAKE2B 5261d7dbfd5d82b2d3fa2ebf864a9ef0c7c978dd66a71c078df7bbb3b63f5d85180e5f909f43a49712fc16c45f7aabaa6bc30ed82a39ffc9a5d483ea6a94d162 SHA512 b156ae05079776698bc95ba5a9e48e95de8f716aa1760ef4b2e7cb8518ccec660337fc7823f865bde870461800d472fd8e458d03a7095b6bb614f6dd96f796d8 DIST libgcrypt-1.10.2.tar.bz2 3795164 BLAKE2B c86b29648664aae3fb694b20ad258828d2cecbb09db2b83df00fbdebd5d74228c92015c50f659c250cb0768ccaef7949294d9b7cdcd47e1387b7dce81d35da19 SHA512 3a850baddfe8ffe8b3e96dc54af3fbb9e1dab204db1f06b9b90b8fbbfb7fb7276260cd1e61ba4dde5a662a2385385007478834e62e95f785d2e3d32652adb29e DIST libgcrypt-1.10.2.tar.bz2.sig 119 BLAKE2B 3753134a1ed1fd2bfd2c64f175c3745db02791359646b3f0229c80ce4ccedbb147ee889a6b8c4fe4bf7e9067d804ee18a8411cd347026cd1656ad1d4d5686bec SHA512 9350444a0bcfa49217815a831f2286ccea470311673257bd809eb5dedbe97d2a5543b0bc7fb752312df69adeb7ac5f064e433f2545a8bf3e494027986cd8020c +DIST libgcrypt-1.10.3.tar.bz2 3783827 BLAKE2B 1a228e02820e886016eb55dee75936c4422a15fb4f95a2f9bcd1e4faac4015d4321c7c8d23f164eb08ece5d62935ab3b3d3104eabfdd22db997ab3e5689dfa6f SHA512 8a8d4c61a6622d8481ceb9edc88ec43f58da32e316f79f8d4775325a48f8936aaa9eb355923b39e2c267b784e9c390600daeb62e0c94f00e30bbadb0d8c0865d +DIST libgcrypt-1.10.3.tar.bz2.sig 238 BLAKE2B 216baebca91b2e940f60d70a4260b6b6b8221ef88cfb42b020bc7b3743a465ef2cf105316648ed1e689cbbf7d79da421aa9f08b5af21c5b862734cf01f377214 SHA512 73795781a458c334ec6daade1b86ae8b788dd5da0b7198b46b8e54a103c5ec4c65a5dd7e6a9d173d136889f24e7f5721992f59117334f39bd1c8a94e3b55a048 DIST libgcrypt-1.9.4.tar.bz2 3239704 BLAKE2B b8244bc12a68955797b0c2b474ac5c95df1014231f7180a2ffa113e3aacedc98eed60ee1e4b30b032a5fcd6a04855ae07142c223906d5db9c28328a71e014f33 SHA512 d0e117ac73c94d70e9521ee1e6328691498cc8328f8c4e21338096908f5c04c7b838966eb63d59494565f4e19f506c07dab4f4d922150d75610d9f7b57abbf60 DIST libgcrypt-1.9.4.tar.bz2.sig 119 BLAKE2B 4012c22259a9fd56f9da6c87d60077cea0dbfef85d4d4ad1ff6a2375ddefafc4cd03ee9083d18e080c14c95887b495062af886732a9593bcf1b8f187d21073fe SHA512 4aee16449b4b50dac62bd80217e769f32f43fb7cd994402b7d9cffbb1934b2771041c8c0c41a63ced9c8d9408025f9c5608ffc7f00e5e9a9b92a07cb5118a98a diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.1-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.1-r2.ebuild index e966ec63af1..8e315d592a7 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.1-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.1-r2.ebuild @@ -157,6 +157,14 @@ multilib_src_compile() { multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf } +multilib_src_test() { + # t-secmem and t-sexp need mlock which requires extra privileges; nspawn + # at least disallows that by default. + local -x GCRYPT_IN_ASAN_TEST=1 + + default +} + multilib_src_install() { emake DESTDIR="${D}" install multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.1-r3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.1-r3.ebuild index f50e95fd6d3..d2dccd75aed 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.1-r3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.1-r3.ebuild @@ -160,6 +160,14 @@ multilib_src_compile() { multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf } +multilib_src_test() { + # t-secmem and t-sexp need mlock which requires extra privileges; nspawn + # at least disallows that by default. + local -x GCRYPT_IN_ASAN_TEST=1 + + default +} + multilib_src_install() { emake DESTDIR="${D}" install multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.2.ebuild index fb3af0f2b1e..1f99ec03e9d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.2.ebuild @@ -158,6 +158,14 @@ multilib_src_compile() { multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf } +multilib_src_test() { + # t-secmem and t-sexp need mlock which requires extra privileges; nspawn + # at least disallows that by default. + local -x GCRYPT_IN_ASAN_TEST=1 + + default +} + multilib_src_install() { emake DESTDIR="${D}" install multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.3.ebuild new file mode 100644 index 00000000000..2761d93ca69 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.10.3.ebuild @@ -0,0 +1,180 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc +inherit autotools flag-o-matic linux-info multilib-minimal toolchain-funcs verify-sig + +DESCRIPTION="General purpose crypto library based on the code used in GnuPG" +HOMEPAGE="https://www.gnupg.org/" +SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" +SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" + +LICENSE="LGPL-2.1 MIT" +SLOT="0/20" # subslot = soname major version +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="+asm cpu_flags_arm_neon cpu_flags_arm_aes cpu_flags_arm_sha1 cpu_flags_arm_sha2 cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 cpu_flags_ppc_vsx3 cpu_flags_x86_aes cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_padlock cpu_flags_x86_sha cpu_flags_x86_sse4_1 doc +getentropy static-libs" + +# Build system only has --disable-arm-crypto-support right now +# If changing this, update src_configure logic too. +# ARM CPUs seem to, right now, support all-or-nothing for crypto extensions, +# but this looks like it might change in future. This is just a safety check +# in case people somehow do have a CPU which only supports some. They must +# for now disable them all if that's the case. +REQUIRED_USE=" + cpu_flags_arm_aes? ( cpu_flags_arm_sha1 cpu_flags_arm_sha2 ) + cpu_flags_arm_sha1? ( cpu_flags_arm_aes cpu_flags_arm_sha2 ) + cpu_flags_arm_sha2? ( cpu_flags_arm_aes cpu_flags_arm_sha1 ) + cpu_flags_ppc_vsx3? ( cpu_flags_ppc_altivec cpu_flags_ppc_vsx2 ) + cpu_flags_ppc_vsx2? ( cpu_flags_ppc_altivec ) +" + +RDEPEND=" + >=dev-libs/libgpg-error-1.25[${MULTILIB_USEDEP}] + getentropy? ( + kernel_linux? ( + elibc_glibc? ( >=sys-libs/glibc-2.25 ) + elibc_musl? ( >=sys-libs/musl-1.1.20 ) + ) + ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + doc? ( virtual/texi2dvi ) + verify-sig? ( sec-keys/openpgp-keys-gnupg ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-multilib-syspath.patch + "${FILESDIR}"/${PN}-powerpc-darwin.patch + "${FILESDIR}"/${PN}-1.9.4-no-fgrep-libgcrypt-config.patch +) + +MULTILIB_CHOST_TOOLS=( + /usr/bin/libgcrypt-config +) + +pkg_pretend() { + if [[ ${MERGE_TYPE} == buildonly ]]; then + return + fi + if use kernel_linux && use getentropy; then + unset KV_FULL + get_running_version + if [[ -n ${KV_FULL} ]] && kernel_is -lt 3 17; then + eerror "The getentropy function requires the getrandom syscall." + eerror "This was introduced in Linux 3.17." + eerror "Your system is currently running Linux ${KV_FULL}." + eerror "Disable the 'getentropy' USE flag or upgrade your kernel." + die "Kernel is too old for getentropy" + fi + fi +} + +pkg_setup() { + : +} + +src_prepare() { + default + eautoreconf +} + +multilib_src_configure() { + if [[ ${CHOST} == *86*-solaris* ]] ; then + # ASM code uses GNU ELF syntax, divide in particular, we need to + # allow this via ASFLAGS, since we don't have a flag-o-matic + # function for that, we'll have to abuse cflags for this + append-cflags -Wa,--divide + fi + + if [[ ${CHOST} == powerpc* ]] ; then + # ./configure does a lot of automagic, prevent that + # generic ppc32+ppc64 altivec + use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec=no + use cpu_flags_ppc_altivec || local -x gcry_cv_cc_ppc_altivec_cflags=no + # power8 vector extension, aka arch 2.07 ISA, also checked below via ppc-crypto-support + use cpu_flags_ppc_vsx2 || local -x gcry_cv_gcc_inline_asm_ppc_altivec=no + # power9 vector extension, aka arch 3.00 ISA + use cpu_flags_ppc_vsx3 || local -x gcry_cv_gcc_inline_asm_ppc_arch_3_00=no + fi + + # Workaround for GCC < 11.3 bug + # https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commitdiff;h=0b399721ce9709ae25f9d2050360c5ab2115ae29 + # https://dev.gnupg.org/T5581 + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102124 + if use arm64 && tc-is-gcc && (($(gcc-major-version) == 11)) && + (($(gcc-minor-version) <= 2)) && (($(gcc-micro-version) == 0)) ; then + append-flags -fno-tree-loop-vectorize + fi + + # 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 + + local myeconfargs=( + CC_FOR_BUILD="$(tc-getBUILD_CC)" + + --enable-noexecstack + $(use_enable cpu_flags_arm_neon neon-support) + # See REQUIRED_USE comment above + $(use_enable cpu_flags_arm_aes arm-crypto-support) + $(use_enable cpu_flags_ppc_vsx2 ppc-crypto-support) + $(use_enable cpu_flags_x86_aes aesni-support) + $(use_enable cpu_flags_x86_avx avx-support) + $(use_enable cpu_flags_x86_avx2 avx2-support) + $(use_enable cpu_flags_x86_padlock padlock-support) + $(use_enable cpu_flags_x86_sha shaext-support) + $(use_enable cpu_flags_x86_sse4_1 sse41-support) + # required for sys-power/suspend[crypt], bug 751568 + $(use_enable static-libs static) + + # disabled due to various applications requiring privileges + # after libgcrypt drops them (bug #468616) + --without-capabilities + + # http://trac.videolan.org/vlc/ticket/620 + $([[ ${CHOST} == *86*-darwin* ]] && echo "--disable-asm") + + $(use asm || echo "--disable-asm") + + GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config" + ) + + if use kernel_linux; then + # --enable-random=getentropy requires getentropy/getrandom. + # --enable-random=linux enables legacy code that tries getrandom + # and falls back to reading /dev/random. + myeconfargs+=( --enable-random=$(usex getentropy getentropy linux) ) + fi + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" \ + $("${S}/configure" --help | grep -o -- '--without-.*-prefix') +} + +multilib_src_compile() { + default + multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf +} + +multilib_src_test() { + # t-secmem and t-sexp need mlock which requires extra privileges; nspawn + # at least disallows that by default. + local -x GCRYPT_IN_ASAN_TEST=1 + + default +} + +multilib_src_install() { + emake DESTDIR="${D}" install + multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf +} + +multilib_src_install_all() { + default + find "${ED}" -type f -name '*.la' -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.4-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.4-r2.ebuild index 30988830e25..040fad866c5 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.4-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libgcrypt/libgcrypt-1.9.4-r2.ebuild @@ -123,6 +123,14 @@ multilib_src_compile() { multilib_is_native_abi && use doc && VARTEXFONTS="${T}/fonts" emake -C doc gcrypt.pdf } +multilib_src_test() { + # t-secmem and t-sexp need mlock which requires extra privileges; nspawn + # at least disallows that by default. + local -x GCRYPT_IN_ASAN_TEST=1 + + default +} + multilib_src_install() { emake DESTDIR="${D}" install multilib_is_native_abi && use doc && dodoc doc/gcrypt.pdf diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libksba/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libksba/Manifest index 4c082e80d2f..34635a34e79 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libksba/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libksba/Manifest @@ -2,3 +2,5 @@ DIST libksba-1.6.3.tar.bz2 668287 BLAKE2B a2b474aa5ea8eb387a2d9a459ec1e3daf36bbe DIST libksba-1.6.3.tar.bz2.sig 119 BLAKE2B c6ab01889e7d7efa6117b388c8bf8e1916a3d5c174659b01a34a60bcf8e04181aaf60c79ebd8ab423300f19de084a7968db9b9afd8aa5980246d9ce3f91d66d2 SHA512 57081497e32af41abbe84678dfb2379318ae75fdde1f871f3960b7dce7270b952a832b64accbb2a1f19fbef8db9f4d35ac59890ac6cbe45215a65f6971ba43f1 DIST libksba-1.6.4.tar.bz2 668445 BLAKE2B 639be954727e2c3a74e075c52090bc2d9998a149f168ede376520d83a7dfd776212ba2948270096b303803e9f41381747f73c8ec97117a4d743b8df49defef9a SHA512 07bc26584d1901b2975a02012d90084e3c247a7aeab56d7bcc7197ef0210ece0c4ffd5cb468b998ef696deadfcfdc5fa5dc367077863926503e8f7a8d06856a5 DIST libksba-1.6.4.tar.bz2.sig 119 BLAKE2B 5b9edcf65eb7b46182144a8d17a1656ada93a8a7ce3106ea5f525ab3e892b078f9c723544c13702d6d3b40fefd2bff78dc0cfbc3b1a3c156ba18740ecfc42ce6 SHA512 fbf75e03b9e0e771027acfef8cc702744a0d1fe37ef285fcf6475d4a58f7936d3bc890ee3ffe923195152bbcede807ba721ac3fdfdd6d05a1a523416f64ff8c1 +DIST libksba-1.6.5.tar.bz2 708400 BLAKE2B 934bde6412de6c1f3062b101930d7b2beac3f6e3f2fbeb5c964a6252b68a3b70c7cb3a48c7eac04b7f1d2ea3c717e1c7e164c1bc6113b46244b9dd130c64b540 SHA512 959312ac0bb2dabcdd22217266daccdf3938d62ff2936c767cade76888757ece1bb6fe79f2c679db03d1baf3919757265d0ded216fee8b8d235e94a70fcf05de +DIST libksba-1.6.5.tar.bz2.sig 119 BLAKE2B 70f290ed44160af2882b5f2543965e3003dd0fd106ab6eaa1f7dfbb878d1f0402c16f3e802af6be589e501e17d0ead82c03afe73c8353b314c8cafb24e7d4a11 SHA512 e70f136edcf29bf931eccaf930e0ae644fd372e0a6f472599898d2fd5e44e64ab2cea63b0be2b1d9a468f73f607881dfdf06adfe6d1fc9ebd66b21e4c245f837 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libksba/libksba-1.6.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libksba/libksba-1.6.5.ebuild new file mode 100644 index 00000000000..bf2dd08153c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libksba/libksba-1.6.5.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maintainers should: +# 1. Join the "Gentoo" project at https://dev.gnupg.org/project/view/27/ +# 2. Subscribe to release tasks like https://dev.gnupg.org/T6159 +# (find the one for the current release then subscribe to it + +# any subsequent ones linked within so you're covered for a while.) + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc +# in-source builds are not supported: https://dev.gnupg.org/T6313#166339 +inherit toolchain-funcs out-of-source verify-sig libtool + +DESCRIPTION="X.509 and CMS (PKCS#7) library" +HOMEPAGE="https://www.gnupg.org/related_software/libksba" +SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" +SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" + +LICENSE="LGPL-3+ GPL-2+ GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="static-libs" + +RDEPEND=">=dev-libs/libgpg-error-1.33" +DEPEND="${RDEPEND}" +BDEPEND=" + sys-devel/bison + verify-sig? ( sec-keys/openpgp-keys-gnupg ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.6.0-no-fgrep-ksba-config.patch +) + +src_prepare() { + default + + elibtoolize # necessary on Solaris for shared lib support +} + +my_src_configure() { + export CC_FOR_BUILD="$(tc-getBUILD_CC)" + + local myeconfargs=( + --disable-valgrind-tests + $(use_enable static-libs static) + + GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config" + LIBGCRYPT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-libgcrypt-config" + ) + + econf "${myeconfargs[@]}" +} + +my_src_install() { + default + + # People need to use ksba-config for --cflags and --libs + find "${ED}" -type f -name '*.la' -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/Manifest index 0e61e6ca0a8..e84f057fa9c 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/Manifest @@ -1,3 +1,4 @@ DIST libuv-1.44.2.tar.gz 1309062 BLAKE2B 883a1fbffcd8f55bf28ea5a79ed18aa3e2f2fac126285e8aca2ef9370eafc62f69f95ddb8bf27d4159e038bfb0a01abafdf0dadbc4309e5d31f0e77057ee84ac SHA512 d21c890787b0b364fafa5fc0cbbff296bc2ca269e1991d2f7f35fcb37b8634da377466f5af5a4245425fcf876ae6870d100ab32b12bce64f8e0b01fd25a1bc83 DIST libuv-1.45.0.tar.gz 1307245 BLAKE2B fcd9aad052cf641e5e974b1e3c47bef7968474f4b0e38363559719a164867ce6e67630c1d0fd0386da22ba5b82e35c6ca946b7509a8a08f08f972388e70a40b9 SHA512 a156dd0ed06bc7c50515f46ef6e5636d870288636f442ce9ec46716e22fdaa664ce49e432f4737c81e9c6013b34ed150e7420ab9fc316ed23281096954359774 DIST libuv-1.46.0.tar.gz 1311065 BLAKE2B fd492b6ca873a08ad4df7561b9d83a09d9bd2cbc10c17265c02982a231edb5c6d71698aecc9a14d455ea230f9e791807f42561d8b3c96e37edb4a709860859b0 SHA512 e3a7c10ffd909f9b128fb2316e09b8456e87278107178b49368f31ba30e7f62d64e7eba650cc59ef2d7eb178199c7a2c5b5c99b333849200492235116d7aee7a +DIST libuv-1.47.0.tar.gz 1316016 BLAKE2B 6c530f8625366a9bf3f99ac4eb6b3bf3d4f6a05f98848e08cdab884934d79862cf8e79dd2d506ec734d701faab517eba2215063dce4b4216add5cfd6bfebd82e SHA512 3d0e76c4e29c5de14fddda07409f8db30dc64261d1c0bdfce7f70eb8f5ac911707fe662e81c4f117e4068cb0728158fc2b8255f8aa497c0f688e46c7fb93a5b3 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/files/libuv-1.47.0-hppa-kernel.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/files/libuv-1.47.0-hppa-kernel.patch new file mode 100644 index 00000000000..1871ae22139 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/files/libuv-1.47.0-hppa-kernel.patch @@ -0,0 +1,32 @@ +https://github.com/libuv/libuv/commit/f1444293652cf5478a67b9305271d73ad6d36232 + +From f1444293652cf5478a67b9305271d73ad6d36232 Mon Sep 17 00:00:00 2001 +From: matoro <12038583+matoro@users.noreply.github.com> +Date: Wed, 15 Nov 2023 17:57:06 -0500 +Subject: [PATCH] linux: disable io_uring on hppa below kernel 6.1.51 (#4224) + +First kernel with support is 6.1, was only fully functional from .51 +onwards: https://lore.kernel.org/all/cb912694-b1fe-dbb0-4d8c-d608f3526905@gmx.de/ + +Co-authored-by: matoro +--- a/src/unix/linux.c ++++ b/src/unix/linux.c +@@ -487,8 +487,16 @@ static int uv__use_io_uring(void) { + use = atomic_load_explicit(&use_io_uring, memory_order_relaxed); + + if (use == 0) { ++ use = uv__kernel_version() >= ++#if defined(__hppa__) ++ /* io_uring first supported on parisc in 6.1, functional in .51 */ ++ /* https://lore.kernel.org/all/cb912694-b1fe-dbb0-4d8c-d608f3526905@gmx.de/ */ ++ /* 6.1.51 */ 0x060133 ++#else + /* Older kernels have a bug where the sqpoll thread uses 100% CPU. */ +- use = uv__kernel_version() >= /* 5.10.186 */ 0x050ABA ? 1 : -1; ++ /* 5.10.186 */ 0x050ABA ++#endif ++ ? 1 : -1; + + /* But users can still enable it if they so desire. */ + val = getenv("UV_USE_IO_URING"); + diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/files/libuv-1.47.0-ipv6-tests.patch b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/files/libuv-1.47.0-ipv6-tests.patch new file mode 100644 index 00000000000..20176dc7aba --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/files/libuv-1.47.0-ipv6-tests.patch @@ -0,0 +1,54 @@ +https://github.com/libuv/libuv/issues/4211 +https://github.com/libuv/libuv/pull/4220 +https://github.com/libuv/libuv/commit/54d8364c2406758b572621af381f1d83e01ae46c + +From 54d8364c2406758b572621af381f1d83e01ae46c Mon Sep 17 00:00:00 2001 +From: Ben Noordhuis +Date: Tue, 14 Nov 2023 22:09:30 +0100 +Subject: [PATCH] test: check if ipv6 link-local traffic is routable (#4220) + +Fixes: https://github.com/libuv/libuv/issues/4211 +--- a/test/test-tcp-connect6-error.c ++++ b/test/test-tcp-connect6-error.c +@@ -23,6 +23,7 @@ + #include "task.h" + #include + #include ++#include + + + static int connect_cb_called = 0; +@@ -75,9 +76,13 @@ TEST_IMPL(tcp_connect6_error_fault) { + + + TEST_IMPL(tcp_connect6_link_local) { ++ uv_interface_address_t* ifs; ++ uv_interface_address_t* p; + struct sockaddr_in6 addr; + uv_connect_t req; + uv_tcp_t server; ++ int ok; ++ int n; + + if (!can_ipv6()) + RETURN_SKIP("IPv6 not supported"); +@@ -90,6 +95,18 @@ TEST_IMPL(tcp_connect6_link_local) { + RETURN_SKIP("Test does not currently work in QEMU"); + #endif /* defined(__QEMU__) */ + ++ /* Check there's an interface that routes link-local (fe80::/10) traffic. */ ++ ASSERT_OK(uv_interface_addresses(&ifs, &n)); ++ for (p = ifs; p < &ifs[n]; p++) ++ if (p->address.address6.sin6_family == AF_INET6) ++ if (!memcmp(&p->address.address6.sin6_addr, "\xfe\x80", 2)) ++ break; ++ ok = (p < &ifs[n]); ++ uv_free_interface_addresses(ifs, n); ++ ++ if (!ok) ++ RETURN_SKIP("IPv6 link-local traffic not supported"); ++ + ASSERT_OK(uv_ip6_addr("fe80::0bad:babe", 1337, &addr)); + ASSERT_OK(uv_tcp_init(uv_default_loop(), &server)); + + diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.45.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.45.0.ebuild index 0028ef084a4..56efb658455 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.45.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.45.0.ebuild @@ -13,7 +13,7 @@ if [[ ${PV} = 9999* ]]; then inherit git-r3 else SRC_URI="https://github.com/libuv/libuv/archive/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi LICENSE="BSD BSD-2 ISC MIT" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.46.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.46.0.ebuild index 6a05fb8e9ad..ebc3bbc8489 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.46.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.46.0.ebuild @@ -13,7 +13,7 @@ if [[ ${PV} = 9999* ]]; then inherit git-r3 else SRC_URI="https://github.com/libuv/libuv/archive/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi LICENSE="BSD BSD-2 ISC MIT" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.47.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.47.0-r1.ebuild new file mode 100644 index 00000000000..879df48c159 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-1.47.0-r1.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="Cross-platform asychronous I/O" +HOMEPAGE="https://github.com/libuv/libuv" + +if [[ ${PV} = 9999* ]]; then + EGIT_REPO_URI="https://github.com/libuv/libuv.git" + inherit git-r3 +else + SRC_URI="https://github.com/libuv/libuv/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="BSD BSD-2 ISC MIT" +SLOT="0/1" + +BDEPEND=" + sys-devel/libtool + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${P}-ipv6-tests.patch + "${FILESDIR}"/${P}-hppa-kernel.patch +) + +src_prepare() { + default + + echo "m4_define([UV_EXTRA_AUTOMAKE_FLAGS], [serial-tests])" \ + > m4/libuv-extra-automake-flags.m4 || die + + if [[ ${CHOST} == *-darwin* && ${CHOST##*darwin} -le 9 ]] ; then + eapply "${FILESDIR}"/${PN}-1.41.0-darwin.patch + fi + + # Upstream fails to ship a configure script + eautoreconf +} + +src_configure() { + local myeconfargs=( + cc_cv_cflags__g=no + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + default + + find "${ED}" -name '*.la' -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-9999.ebuild index 771fe56d3e9..0028ef084a4 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libuv/libuv-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -13,7 +13,7 @@ if [[ ${PV} = 9999* ]]; then inherit git-r3 else SRC_URI="https://github.com/libuv/libuv/archive/v${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi LICENSE="BSD BSD-2 ISC MIT" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/Manifest index 86d72d402aa..a9cc6d0ab51 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/Manifest @@ -1,6 +1,8 @@ DIST libxml2-2.10.4.tar.xz 2643600 BLAKE2B 5bbb63c6e58accf434513aeb974fed7349e5458de642ef89db77768c8d1383532614254e0e3f1d9471e2274c6b81a04a0a3afcb602707ce79550c2bd8e9028d9 SHA512 792c1dceb098cd353a7eca4c46d31cce6310b2553d97fd3918cf0b94d93b2480759202036511bde36c24166236bd4616f57e79959eea9afe3f60614bdfe13094 DIST libxml2-2.11.4.tar.xz 2626756 BLAKE2B 5d7e6388291a8473195131f5cb22aee9a4182f28fd8eed468c449b762d363cfb1713a7466c1f98e96cf819ed8f78e13a6ba930c2fadd8d63869b6efe8e8be8a8 SHA512 c1df7441c729430bdd2de52e9da69b171afc4b776e4a2eb43acbc71ada7a3814a465247fb5fca4c83ecf1c281f7745069ec3d051a7964cb7cc119a3d983f93ba DIST libxml2-2.11.5.tar.xz 2628132 BLAKE2B 4af53ef7c19cfcddcf3de5c694a1b03cf4212f8e4c4cb3d873a897fddd8a89d7a52d049a8b85e96c6cdb471689aa385512d87b9710074e90583bf7ad46319172 SHA512 8f087cdaf61957567f04280facc70211c09ca131a532fd13ed4bfc38ddec50e44b1f842b108e635bd4205232036a3e1097904ac016f1fd135bacd17aebb04272 +DIST libxml2-2.11.6.tar.xz 2628652 BLAKE2B 0a1776ca44b21143c538665b6cf7a50962bb1bda6c85f45e4fd4fb7c36ecb4d592d1f5a8d38015bac06a3acb6f7adb1d4afa10fe95987197509f4c1f45b15962 SHA512 43d244450b494c7dbd3521287b87cba0c11267be8d7940a1ecd49dbf0ebefdd052c4c3472c3f267b0d8c431d9b5b964b05067af9e38bc4b0e4f46bc0445b6201 +DIST libxml2-2.12.1.tar.xz 2637392 BLAKE2B 86ca96c35388386d4e6433e4c452bdca46d9267a9370117c5f5d8826de79a01b09a6a9184e27e805f657ac06aba106ee118c5aff3bcdef9231d01d1569c5fd9e SHA512 84ade06df7d170b777cfe701389444176a02714b1d8f1916d022ef6cf7cf85822571989608dcecc470c2eec044a65dd971562a95921ddb1668736295a5be2806 DIST xmlts20130923.tar.gz 641522 BLAKE2B 63a47bc69278ef510cd0b3779aed729e1b309e30efa0015d28ed051cc03f9dfddb447ab57b07b3393e8f47393d15473b0e199c34cb1f5f746b15ddfaa55670be SHA512 d5c4d26b324ed21f4e0641cd7f8b76dbf9de80df8b519982e44d41c960df29fd03618e02e9693b2d11ad06d19c4a965274c95a048ec3b9653eacb919a7f8b733 DIST xsts-2002-01-16.tar.gz 6894439 BLAKE2B 1e9ec63d2c104655e64249e07440a04d862fcbcd4d4e19745d81b34994319b510a531c9d6df1491fae1e90b5d0764f0f1a827251ca8df5d613178b0eab01ef25 SHA512 43300af6d39c1e2221b0ed7318fe14c7464eeb6eb030ed1e22eb29b4ab17f014e2a4c8887c3a46ae5d243e3072da27f00f4e285498ae6f1288177d38d1108288 DIST xsts-2004-01-14.tar.gz 2761085 BLAKE2B 41545995fb3a65d053257c376c07d45ffd1041a433bfbdb46d4dd87a5afb60c18c8629a3d988323f9e7a1d709775b5a7e5930276a7121c0725a22705c0976e36 SHA512 32854388d7e720ad67156baf50bf2bae7bd878ca3e35fd7e44e57cad3f434f69d56bbbedd61509f8a1faf01c9eae74a078df8fe130780b182c05c05cb1c39ebe diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.11.6.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.11.6.ebuild new file mode 100644 index 00000000000..ad027676e47 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.11.6.ebuild @@ -0,0 +1,200 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Note: Please bump in sync with dev-libs/libxslt + +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="xml(+)" +inherit flag-o-matic python-r1 multilib-minimal + +XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite" +XSTS_NAME_1="xmlschema2002-01-16" +XSTS_NAME_2="xmlschema2004-01-14" +XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" +XSTS_TARBALL_2="xsts-2004-01-14.tar.gz" +XMLCONF_TARBALL="xmlts20130923.tar.gz" + +DESCRIPTION="XML C parser and toolkit" +HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2" + inherit autotools git-r3 +else + inherit gnome.org libtool + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi + +SRC_URI+=" + test? ( + ${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1} + ${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2} + https://www.w3.org/XML/Test/${XMLCONF_TARBALL} + ) +" +S="${WORKDIR}/${PN}-${PV%_rc*}" + +LICENSE="MIT" +SLOT="2" +IUSE="debug examples +ftp icu lzma +python readline static-libs test" +RESTRICT="!test? ( test )" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND=" + virtual/libiconv + >=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] + icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] ) + lzma? ( >=app-arch/xz-utils-5.0.5-r1:=[${MULTILIB_USEDEP}] ) + python? ( ${PYTHON_DEPS} ) + readline? ( sys-libs/readline:= ) +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +if [[ ${PV} == 9999 ]] ; then + BDEPEND+=" dev-util/gtk-doc-am" +fi + +MULTILIB_CHOST_TOOLS=( + /usr/bin/xml2-config +) + +PATCHES=( + "${FILESDIR}"/${PN}-2.11.5-CVE-2023-45322.patch +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + else + local tarname=${P/_rc/-rc}.tar.xz + + # ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR}, + # as they are needed as tarballs in ${S}/xstc instead and not unpacked + unpack ${tarname} + + if [[ -n ${PATCHSET_VERSION} ]] ; then + unpack ${PN}-${PATCHSET_VERSION}.tar.xz + fi + fi + + cd "${S}" || die + + if use test ; then + cp "${DISTDIR}/${XSTS_TARBALL_1}" \ + "${DISTDIR}/${XSTS_TARBALL_2}" \ + "${S}"/xstc/ \ + || die "Failed to install test tarballs" + unpack ${XMLCONF_TARBALL} + fi +} + +src_prepare() { + default + + if [[ ${PV} == 9999 ]] ; then + eautoreconf + else + # Please do not remove, as else we get references to PORTAGE_TMPDIR + # in /usr/lib/python?.?/site-packages/libxml2mod.la among things. + elibtoolize + fi +} + +multilib_src_configure() { + # Filter seemingly problematic CFLAGS (bug #26320) + filter-flags -fprefetch-loop-arrays -funroll-loops + + # Notes: + # The meaning of the 'debug' USE flag does not apply to the --with-debug + # switch (enabling the libxml2 debug module). See bug #100898. + libxml2_configure() { + ECONF_SOURCE="${S}" econf \ + --enable-ipv6 \ + $(use_with ftp) \ + $(use_with debug run-debug) \ + $(use_with icu) \ + $(use_with lzma) \ + $(use_enable static-libs static) \ + $(multilib_native_use_with readline) \ + $(multilib_native_use_with readline history) \ + "$@" + } + + # Build python bindings separately + libxml2_configure --without-python + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_configure --with-python +} + +libxml2_py_emake() { + pushd "${BUILD_DIR}"/python >/dev/null || die + + emake top_builddir="${NATIVE_BUILD_DIR}" "$@" + + popd >/dev/null || die +} + +multilib_src_compile() { + default + + if multilib_is_native_abi && use python ; then + NATIVE_BUILD_DIR="${BUILD_DIR}" + python_foreach_impl run_in_build_dir libxml2_py_emake all + fi +} + +multilib_src_test() { + ln -s "${S}"/xmlconf || die + + emake check + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_py_emake check +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_py_emake DESTDIR="${D}" install + + # Hack until automake release is made for the optimise fix + # https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097 + multilib_is_native_abi && use python && python_foreach_impl python_optimize +} + +multilib_src_install_all() { + einstalldocs + + if ! use examples ; then + rm -rf "${ED}"/usr/share/doc/${PF}/examples || die + rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die + fi + + rm -rf "${ED}"/usr/share/doc/${PN}-python-${PVR} || die + + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + # We don't want to do the xmlcatalog during stage1, as xmlcatalog will not + # be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887. + if [[ -n "${ROOT}" ]]; then + elog "Skipping XML catalog creation for stage building (bug #208887)." + else + # Need an XML catalog, so no-one writes to a non-existent one + CATALOG="${EROOT}/etc/xml/catalog" + + # We don't want to clobber an existing catalog though, + # only ensure that one is there + # + if [[ ! -e "${CATALOG}" ]]; then + [[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml" + "${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}" + einfo "Created XML catalog in ${CATALOG}" + fi + fi +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.12.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.12.1.ebuild new file mode 100644 index 00000000000..7a65290535a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libxml2/libxml2-2.12.1.ebuild @@ -0,0 +1,196 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Note: Please bump in sync with dev-libs/libxslt + +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="xml(+)" +inherit flag-o-matic python-r1 multilib-minimal + +XSTS_HOME="http://www.w3.org/XML/2004/xml-schema-test-suite" +XSTS_NAME_1="xmlschema2002-01-16" +XSTS_NAME_2="xmlschema2004-01-14" +XSTS_TARBALL_1="xsts-2002-01-16.tar.gz" +XSTS_TARBALL_2="xsts-2004-01-14.tar.gz" +XMLCONF_TARBALL="xmlts20130923.tar.gz" + +DESCRIPTION="XML C parser and toolkit" +HOMEPAGE="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/home" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxml2" + inherit autotools git-r3 +else + inherit gnome.org libtool + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi + +SRC_URI+=" + test? ( + ${XSTS_HOME}/${XSTS_NAME_1}/${XSTS_TARBALL_1} + ${XSTS_HOME}/${XSTS_NAME_2}/${XSTS_TARBALL_2} + https://www.w3.org/XML/Test/${XMLCONF_TARBALL} + ) +" +S="${WORKDIR}/${PN}-${PV%_rc*}" + +LICENSE="MIT" +SLOT="2" +IUSE="debug examples +ftp icu lzma +python readline static-libs test" +RESTRICT="!test? ( test )" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND=" + virtual/libiconv + >=sys-libs/zlib-1.2.8-r1:=[${MULTILIB_USEDEP}] + icu? ( >=dev-libs/icu-51.2-r1:=[${MULTILIB_USEDEP}] ) + lzma? ( >=app-arch/xz-utils-5.0.5-r1:=[${MULTILIB_USEDEP}] ) + python? ( ${PYTHON_DEPS} ) + readline? ( sys-libs/readline:= ) +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +if [[ ${PV} == 9999 ]] ; then + BDEPEND+=" dev-util/gtk-doc-am" +fi + +MULTILIB_CHOST_TOOLS=( + /usr/bin/xml2-config +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + else + local tarname=${P/_rc/-rc}.tar.xz + + # ${A} isn't used to avoid unpacking of test tarballs into ${WORKDIR}, + # as they are needed as tarballs in ${S}/xstc instead and not unpacked + unpack ${tarname} + + if [[ -n ${PATCHSET_VERSION} ]] ; then + unpack ${PN}-${PATCHSET_VERSION}.tar.xz + fi + fi + + cd "${S}" || die + + if use test ; then + cp "${DISTDIR}/${XSTS_TARBALL_1}" \ + "${DISTDIR}/${XSTS_TARBALL_2}" \ + "${S}"/xstc/ \ + || die "Failed to install test tarballs" + unpack ${XMLCONF_TARBALL} + fi +} + +src_prepare() { + default + + if [[ ${PV} == 9999 ]] ; then + eautoreconf + else + # Please do not remove, as else we get references to PORTAGE_TMPDIR + # in /usr/lib/python?.?/site-packages/libxml2mod.la among things. + elibtoolize + fi +} + +multilib_src_configure() { + # Filter seemingly problematic CFLAGS (bug #26320) + filter-flags -fprefetch-loop-arrays -funroll-loops + + # Notes: + # The meaning of the 'debug' USE flag does not apply to the --with-debug + # switch (enabling the libxml2 debug module). See bug #100898. + libxml2_configure() { + ECONF_SOURCE="${S}" econf \ + --enable-ipv6 \ + $(use_with ftp) \ + $(use_with debug run-debug) \ + $(use_with icu) \ + $(use_with lzma) \ + $(use_enable static-libs static) \ + $(multilib_native_use_with readline) \ + $(multilib_native_use_with readline history) \ + "$@" + } + + # Build python bindings separately + libxml2_configure --without-python + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_configure --with-python +} + +libxml2_py_emake() { + pushd "${BUILD_DIR}"/python >/dev/null || die + + emake top_builddir="${NATIVE_BUILD_DIR}" "$@" + + popd >/dev/null || die +} + +multilib_src_compile() { + default + + if multilib_is_native_abi && use python ; then + NATIVE_BUILD_DIR="${BUILD_DIR}" + python_foreach_impl run_in_build_dir libxml2_py_emake all + fi +} + +multilib_src_test() { + ln -s "${S}"/xmlconf || die + + emake check + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_py_emake check +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + multilib_is_native_abi && use python && + python_foreach_impl run_in_build_dir libxml2_py_emake DESTDIR="${D}" install + + # Hack until automake release is made for the optimise fix + # https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097 + multilib_is_native_abi && use python && python_foreach_impl python_optimize +} + +multilib_src_install_all() { + einstalldocs + + if ! use examples ; then + rm -rf "${ED}"/usr/share/doc/${PF}/examples || die + rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die + fi + + rm -rf "${ED}"/usr/share/doc/${PN}-python-${PVR} || die + + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + # We don't want to do the xmlcatalog during stage1, as xmlcatalog will not + # be in / and stage1 builds to ROOT=/tmp/stage1root. This fixes bug #208887. + if [[ -n "${ROOT}" ]]; then + elog "Skipping XML catalog creation for stage building (bug #208887)." + else + # Need an XML catalog, so no-one writes to a non-existent one + CATALOG="${EROOT}/etc/xml/catalog" + + # We don't want to clobber an existing catalog though, + # only ensure that one is there + # + if [[ ! -e "${CATALOG}" ]]; then + [[ -d "${EROOT}/etc/xml" ]] || mkdir -p "${EROOT}/etc/xml" + "${EPREFIX}"/usr/bin/xmlcatalog --create > "${CATALOG}" + einfo "Created XML catalog in ${CATALOG}" + fi + fi +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libxslt/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/libxslt/Manifest index 4885a6ef3c0..4e57e45ee7c 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/libxslt/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libxslt/Manifest @@ -1,2 +1,3 @@ DIST libxslt-1.1.37.tar.xz 1588572 BLAKE2B 096d93dd7178bf4483207514b1435f5bf426eea4952ffab7cc00c3e85aa736534c4acb5377af9647aa77a0cd793205194509d997a7bb5cae692f65e326566cd8 SHA512 a4e477d2bb918b7d01945e2c7491c3a4aae799dc1602bbd13de55c8a5052e210a20bc45115347eae44473c8b1d03dbc5e4a2aa18c2218f1fdfd376d87cd501ca DIST libxslt-1.1.38.tar.xz 1576676 BLAKE2B 9397be8b223bd68b326b954fe6a749a269e969b4669747678715728f553916c23475232fc2894a5e4230e15b031981423adeb8f83407f4db8075a784c7e6a55b SHA512 2836bd2990b95680db0960ac4c465d0c6c28a293ad095a224c05021a1c8d2576a45e41da8947a31f4ef3e6ef368cbda65243661e311c9886c19694be5a7c9a8e +DIST libxslt-1.1.39.tar.xz 1578216 BLAKE2B 7c87b769d345fc99a966bea6b4e94533fa211dc3a987ce013a03eefb05dde73ef75526bdecf7d32d8c77112232096fb22d8ec4f0a781b9f59d0422a2db75df01 SHA512 c0c99dc63f8b2acb6cc3ad7ad684ffa2a427ee8d1740495cbf8a7c9b9c8679f96351b4b676c73ccc191014db4cb4ab42b9a0070f6295565f39dbc665c5c16f89 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/libxslt/libxslt-1.1.39.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/libxslt/libxslt-1.1.39.ebuild new file mode 100644 index 00000000000..e7d5b131b6c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/libxslt/libxslt-1.1.39.ebuild @@ -0,0 +1,125 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Note: Please bump this in sync with dev-libs/libxml2. + +PYTHON_COMPAT=( python3_{10..12} ) +inherit flag-o-matic python-r1 multilib-minimal + +DESCRIPTION="XSLT libraries and tools" +HOMEPAGE="https://gitlab.gnome.org/GNOME/libxslt" +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://gitlab.gnome.org/GNOME/libxslt" + inherit autotools git-r3 +else + inherit libtool gnome.org + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi + +LICENSE="MIT" +SLOT="0" +IUSE="crypt debug examples python static-libs" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +BDEPEND=">=virtual/pkgconfig-1" +RDEPEND=" + >=dev-libs/libxml2-2.9.11:2[${MULTILIB_USEDEP}] + crypt? ( >=dev-libs/libgcrypt-1.5.3:0=[${MULTILIB_USEDEP}] ) + python? ( ${PYTHON_DEPS} ) +" +DEPEND="${RDEPEND}" + +MULTILIB_CHOST_TOOLS=( + /usr/bin/xslt-config +) + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/libxslt/xsltconfig.h +) + +src_prepare() { + default + + if [[ ${PV} == 9999 ]] ; then + eautoreconf + else + # Prefix always needs elibtoolize if not eautoreconf'd. + elibtoolize + fi +} + +multilib_src_configure() { + # Remove this after upstream merge request to add AC_SYS_LARGEFILE lands: + # https://gitlab.gnome.org/GNOME/libxslt/-/merge_requests/55 + append-lfs-flags + + libxslt_configure() { + ECONF_SOURCE="${S}" econf \ + --without-python \ + $(use_with crypt crypto) \ + $(use_with debug) \ + $(use_with debug mem-debug) \ + $(use_enable static-libs static) \ + "$@" + } + + # Build Python bindings separately + libxslt_configure --without-python + + if multilib_is_native_abi && use python ; then + NATIVE_BUILD_DIR="${BUILD_DIR}" + python_foreach_impl run_in_build_dir libxslt_configure --with-python + fi +} + +libxslt_py_emake() { + pushd "${BUILD_DIR}"/python >/dev/null || die + + emake top_builddir="${NATIVE_BUILD_DIR}" "$@" + + popd >/dev/null || die +} + +multilib_src_compile() { + default + + if multilib_is_native_abi && use python ; then + python_foreach_impl run_in_build_dir libxslt_py_emake all + fi +} + +multilib_src_test() { + default + + if multilib_is_native_abi && use python ; then + python_foreach_impl run_in_build_dir libxslt_py_emake check + fi +} + +multilib_src_install() { + # "default" does not work here - docs are installed by multilib_src_install_all + emake DESTDIR="${D}" install + + if multilib_is_native_abi && use python; then + python_foreach_impl run_in_build_dir libxslt_py_emake \ + DESTDIR="${D}" \ + install + + # Hack until automake release is made for the optimise fix + # https://git.savannah.gnu.org/cgit/automake.git/commit/?id=bde43d0481ff540418271ac37012a574a4fcf097 + python_foreach_impl python_optimize + fi +} + +multilib_src_install_all() { + einstalldocs + + if ! use examples ; then + rm -rf "${ED}"/usr/share/doc/${PF}/tutorial{,2} || die + rm -rf "${ED}"/usr/share/doc/${PF}/python/examples || die + fi + + find "${ED}" -type f -name "*.la" -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.8.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.8.1.ebuild index f51f106aa24..dc3ba0b941a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.8.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.8.1.ebuild @@ -7,7 +7,7 @@ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/nettle.asc inherit multilib-build multilib-minimal toolchain-funcs verify-sig DESCRIPTION="Low-level cryptographic library" -HOMEPAGE="http://www.lysator.liu.se/~nisse/nettle/" +HOMEPAGE="https://www.lysator.liu.se/~nisse/nettle/ https://git.lysator.liu.se/nettle/nettle" SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.gz.sig )" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.9.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.9.1.ebuild index 5e669dc4844..f2e77b0432a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.9.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.9.1.ebuild @@ -7,7 +7,7 @@ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/nettle.asc inherit multilib-build multilib-minimal toolchain-funcs verify-sig DESCRIPTION="Low-level cryptographic library" -HOMEPAGE="http://www.lysator.liu.se/~nisse/nettle/" +HOMEPAGE="https://www.lysator.liu.se/~nisse/nettle/ https://git.lysator.liu.se/nettle/nettle" SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.gz.sig )" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.9.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.9.ebuild index 67a650f7974..2d307d66cb4 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.9.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-libs/nettle/nettle-3.9.ebuild @@ -7,7 +7,7 @@ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/nettle.asc inherit multilib-build multilib-minimal toolchain-funcs verify-sig DESCRIPTION="Low-level cryptographic library" -HOMEPAGE="http://www.lysator.liu.se/~nisse/nettle/" +HOMEPAGE="https://www.lysator.liu.se/~nisse/nettle/ https://git.lysator.liu.se/nettle/nettle" SRC_URI="mirror://gnu/${PN}/${P}.tar.gz" SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.gz.sig )" diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/oniguruma/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/oniguruma/Manifest index 2d03a4b6279..4526f5b9ea8 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/oniguruma/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/oniguruma/Manifest @@ -1 +1,2 @@ DIST onig-6.9.8.tar.gz 944148 BLAKE2B ee7d91f2d3a7a41d675bcbb9d18490aa3e5a9edb8f3c6e880d27f2218c476499bba21088def41fbb5d500bfb2916af85c2489fca5bd846594fab53ac492531af SHA512 5a3d220961c22cda981bbae06dc383401771362cdf67e4f0b5d2fa8951a03907362edae498f63226287e70715c0abe4acdd22ec3ceb74bbb226234a52c36a4d7 +DIST onig-6.9.9.tar.gz 957444 BLAKE2B d31f4caf5e14477ec1fd40ab764137b49046ac759f487432a129ebdf6da89b128218bb14b08f9359ac0b87286bcd309faa3878b26528926aab6f7d2e25e722b0 SHA512 14d2afd0d2cf86012c9959f221e9a77e7787e709c9dd7295d159e0a9ba89df52fa3edc59f95a6d859c34181e2e2e53e21b932b3eceb4d6ddeb2a3445ef951e95 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/oniguruma/oniguruma-6.9.9.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/oniguruma/oniguruma-6.9.9.ebuild new file mode 100644 index 00000000000..8ec4abdc73c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/oniguruma/oniguruma-6.9.9.ebuild @@ -0,0 +1,55 @@ +# Copyright 2003-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +inherit multilib-minimal + +if [[ "${PV}" == "9999" ]]; then + inherit autotools git-r3 + + EGIT_REPO_URI="https://github.com/kkos/oniguruma" +fi + +DESCRIPTION="Regular expression library for different character encodings" +HOMEPAGE="https://github.com/kkos/oniguruma" +if [[ "${PV}" == "9999" ]]; then + SRC_URI="" +else + SRC_URI="https://github.com/kkos/${PN}/releases/download/v${PV}/onig-${PV}.tar.gz" +fi + +LICENSE="BSD-2" +SLOT="0/5" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="crnl-as-line-terminator static-libs" + +BDEPEND="" +DEPEND="" +RDEPEND="" + +if [[ "${PV}" != "9999" ]]; then + S="${WORKDIR}/onig-${PV}" +fi + +DOCS=(AUTHORS HISTORY README{,_japanese} doc/{API,CALLOUTS.API,CALLOUTS.BUILTIN,FAQ,RE}{,.ja} doc/{SYNTAX.md,UNICODE_PROPERTIES}) + +src_prepare() { + default + + if [[ "${PV}" == "9999" ]]; then + eautoreconf + fi +} + +multilib_src_configure() { + ECONF_SOURCE="${S}" econf \ + --enable-posix-api \ + $(use_enable crnl-as-line-terminator) \ + $(use_enable static-libs static) +} + +multilib_src_install_all() { + einstalldocs + find "${ED}" -name "*.la" -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/xmlsec/Manifest b/sdk_container/src/third_party/portage-stable/dev-libs/xmlsec/Manifest index 3c2ede1438c..c1fd7521877 100644 --- a/sdk_container/src/third_party/portage-stable/dev-libs/xmlsec/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-libs/xmlsec/Manifest @@ -1,3 +1,4 @@ DIST xmlsec1-1.2.37.tar.gz 2009175 BLAKE2B 19f43ba6bf6eb49428b9c5563baecbab21476f326cceee13785ae16769afa258f100732831c0f3f7d160543bd075cdcfdc5cbf11b7406637ee6c2f0e27c07f30 SHA512 99220cb28a346ffac0023f9f177d6a7be3ddcea04bea434b7dc926c1f0aaa5564d75f74f92896ac100179c04d77e001f688ddf46fed4e0a0b4f20b7b87c24900 DIST xmlsec1-1.2.38.tar.gz 2036578 BLAKE2B 03f7e1b5e659793bf1984c5a59582d9459089ce913620d5cc1e5a5d0eb65557580cd23fa190db277298fd7cc55bd41563b93cf61a37c8b7521a4690cd2ca3489 SHA512 724089777caae95db27e67f24381c066eaae23a9d64819a18bb04837c1ab1b380d19be2c7ee25659ca481d9eab96fcbe8027a430a0ac1630ad3b073cddd20fac DIST xmlsec1-1.3.1.tar.gz 2432943 BLAKE2B 1dafdffd959579add5c579e3fa9c9f9ddc73ce4aadc6fc2139506e6e64ffcd1bbe7298786e414900eb9f33f93b0a47da64e686c499e48d4c80d81b256db6692e SHA512 7f30c15c3edcafe70fa5febaa0ba39f73f8d30525ee102b5961a658dd2842fbc58e63f7595f15b150d71bf735bfa7688c3694a191b0d475776ca26902d90d25f +DIST xmlsec1-1.3.2.tar.gz 2437263 BLAKE2B d11953c6e2a263a6742ef62309c2f29e2ba5761d58bee5f8cc761965d0e16fea148811ac3d8036d271400840a62ff2a7fff947bb5331170d3bcc598c558b2a95 SHA512 328f3d27cc1dadee27e5ee4649f6c5a094203cc27f42f1fe98fd429f7dd5630eaadff0e8bf14616016fc3530482ed8bcee4870289a41a083f6dd9bd603782a92 diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/xmlsec/files/xmlsec-1.3.2-libxml2-2.12.0-includes.patch b/sdk_container/src/third_party/portage-stable/dev-libs/xmlsec/files/xmlsec-1.3.2-libxml2-2.12.0-includes.patch new file mode 100644 index 00000000000..e4b7ec4d7f6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/xmlsec/files/xmlsec-1.3.2-libxml2-2.12.0-includes.patch @@ -0,0 +1,114 @@ +https://github.com/lsh123/xmlsec/commit/ffb327376f5bb69e8dfe7f805529e45a40118c2b + +From ffb327376f5bb69e8dfe7f805529e45a40118c2b Mon Sep 17 00:00:00 2001 +From: lsh123 +Date: Mon, 20 Nov 2023 11:50:43 -0500 +Subject: [PATCH] Fix libxml2 v2.12.0 includes (#729) + +--- a/apps/crypto.c ++++ b/apps/crypto.c +@@ -12,6 +12,7 @@ + #endif + + #include ++#include + + #include + #include +--- a/apps/xmlsec.c ++++ b/apps/xmlsec.c +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + #include + + #ifndef XMLSEC_NO_XSLT +@@ -3030,7 +3031,7 @@ xmlSecAppInit(void) { + /* Init libxml */ + xmlInitParser(); + LIBXML_TEST_VERSION +- xmlTreeIndentString = "\t"; ++ xmlThrDefTreeIndentString("\t"); + #ifndef XMLSEC_NO_XSLT + xmlIndentTreeOutput = 1; + #endif /* XMLSEC_NO_XSLT */ +--- a/include/xmlsec/xmlsec.h ++++ b/include/xmlsec/xmlsec.h +@@ -12,6 +12,7 @@ + #define __XMLSEC_H__ + + #include ++#include + + #include + #include +--- a/src/errors_helpers.h ++++ b/src/errors_helpers.h +@@ -136,7 +136,7 @@ extern "C" { + */ + #define xmlSecXmlError(errorFunction, errorObject) \ + { \ +- xmlErrorPtr error = xmlGetLastError(); \ ++ const xmlError * error = xmlGetLastError(); \ + int code = (error != NULL) ? error->code : 0; \ + const char* message = (error != NULL) ? error->message : NULL; \ + xmlSecError(XMLSEC_ERRORS_HERE, \ +@@ -159,7 +159,7 @@ extern "C" { + */ + #define xmlSecXmlError2(errorFunction, errorObject, msg, param) \ + { \ +- xmlErrorPtr error = xmlGetLastError(); \ ++ const xmlError * error = xmlGetLastError(); \ + int code = (error != NULL) ? error->code : 0; \ + const char* message = (error != NULL) ? error->message : NULL; \ + xmlSecError(XMLSEC_ERRORS_HERE, \ +@@ -181,7 +181,7 @@ extern "C" { + */ + #define xmlSecXmlParserError(errorFunction, ctxt, errorObject) \ + { \ +- xmlErrorPtr error = xmlCtxtGetLastError(ctxt);\ ++ const xmlError * error = xmlCtxtGetLastError(ctxt);\ + int code = (error != NULL) ? error->code : 0; \ + const char* message = (error != NULL) ? error->message : NULL; \ + xmlSecError(XMLSEC_ERRORS_HERE, \ +@@ -205,7 +205,7 @@ extern "C" { + */ + #define xmlSecXmlParserError2(errorFunction, ctxt, errorObject, msg, param) \ + { \ +- xmlErrorPtr error = xmlCtxtGetLastError(ctxt);\ ++ const xmlError * error = xmlCtxtGetLastError(ctxt);\ + int code = (error != NULL) ? error->code : 0; \ + const char* message = (error != NULL) ? error->message : NULL; \ + xmlSecError(XMLSEC_ERRORS_HERE, \ +@@ -227,7 +227,7 @@ extern "C" { + */ + #define xmlSecXsltError(errorFunction, ctxt, errorObject) \ + { \ +- xmlErrorPtr error = xmlGetLastError(); \ ++ const xmlError * error = xmlGetLastError(); \ + int code = (error != NULL) ? error->code : 0; \ + const char* message = (error != NULL) ? error->message : NULL; \ + xmlSecError(XMLSEC_ERRORS_HERE, \ +--- a/src/mscrypto/certkeys.c ++++ b/src/mscrypto/certkeys.c +@@ -18,6 +18,7 @@ + #include "globals.h" + + #include ++#include + + #ifndef XMLSEC_NO_GOST + #include "csp_oid.h" +--- a/src/mscrypto/signatures.c ++++ b/src/mscrypto/signatures.c +@@ -17,6 +17,7 @@ + #include "globals.h" + + #include ++#include + + #ifndef XMLSEC_NO_GOST + #include "csp_calg.h" + diff --git a/sdk_container/src/third_party/portage-stable/dev-libs/xmlsec/xmlsec-1.3.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-libs/xmlsec/xmlsec-1.3.2.ebuild new file mode 100644 index 00000000000..c999cba77c0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-libs/xmlsec/xmlsec-1.3.2.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools + +DESCRIPTION="Command line tool for signing, verifying, encrypting and decrypting XML" +HOMEPAGE="https://www.aleksey.com/xmlsec" +SRC_URI="https://www.aleksey.com/xmlsec/download/${PN}1-${PV}.tar.gz" +S="${WORKDIR}/${PN}1-${PV}" + +LICENSE="MIT" +# Upstream consider major version bumps to be changes in either X or Y in X.Y.Z +SLOT="0/$(ver_cut 1-2)" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="doc gcrypt gnutls http nss +openssl static-libs test" +RESTRICT="!test? ( test )" +REQUIRED_USE=" + || ( gnutls nss openssl ) +" + +RDEPEND=" + >=dev-libs/libxml2-2.7.4 + >=dev-libs/libxslt-1.0.20 + dev-libs/libltdl + gcrypt? ( >=dev-libs/libgcrypt-1.4.0:= ) + gnutls? ( >=net-libs/gnutls-3.6.13:= ) + nss? ( + >=dev-libs/nspr-4.4.1 + >=dev-libs/nss-3.9 + ) + openssl? ( dev-libs/openssl:= ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + virtual/pkgconfig + test? ( + nss? ( + >=dev-libs/nss-3.9[utils] + ) + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.3.0-optimisation.patch + "${FILESDIR}"/${P}-libxml2-2.12.0-includes.patch +) + +src_prepare() { + default + + eautoreconf +} + +src_configure() { + local myeconfargs=( + $(use_enable doc docs) + $(use_enable static-libs static) + $(use_with gcrypt) + $(use_with gnutls) + $(use_with nss nspr) + $(use_with nss) + $(use_with openssl) + + --disable-werror + --enable-mans + --enable-pkgconfig + + --enable-concatkdf + --enable-pbkdf2 + --enable-ec + --enable-dh + --enable-sha3 + + --enable-files + $(use_enable http) + --disable-ftp + ) + + # Bash because of bug #721128 + CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}" +} + +src_test() { + # See https://github.com/lsh123/xmlsec/issues/280 for TZ=UTC + TZ=UTC SHELL="${BROOT}"/bin/bash emake TMPFOLDER="${T}" check +} + +src_install() { + default + + find "${ED}" -name '*.la' -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/certifi/certifi-3021.3.16-r3.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/certifi/certifi-3021.3.16-r3.ebuild deleted file mode 100644 index d2592058a6a..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/certifi/certifi-3021.3.16-r3.ebuild +++ /dev/null @@ -1,55 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 7 -- sys-apps/portage dep -EAPI=7 - -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{10..12} pypy3 ) - -inherit distutils-r1 - -MY_P=certifi-system-store-${PV} -DESCRIPTION="A certifi hack to use system trust store on Linux/FreeBSD" -HOMEPAGE=" - https://github.com/tiran/certifi-system-store/ - https://pypi.org/project/certifi-system-store/ -" -SRC_URI=" - https://github.com/tiran/certifi-system-store/archive/v${PV}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="MPL-2.0" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" - -RDEPEND=" - app-misc/ca-certificates - dev-python/setuptools[${PYTHON_USEDEP}] -" - -PATCHES=( - "${FILESDIR}"/${P}-use-importlib.patch -) - -EPYTEST_IGNORE=( - # requires Internet - tests/test_requests.py -) - -distutils_enable_tests pytest - -src_prepare() { - sed -i -e "s^/etc^${EPREFIX}/etc^" src/certifi/core.py || die - distutils-r1_src_prepare -} - -python_compile() { - distutils-r1_python_compile - cd "${BUILD_DIR}/install$(python_get_sitedir)" || die - local distinfo=( certifi_system_store*.dist-info ) - [[ -d ${distinfo} ]] || die - ln -v -s "${distinfo}" "${distinfo/_system_store}" || die -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/certifi/certifi-3021.3.16-r4.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/certifi/certifi-3021.3.16-r4.ebuild index 8bb012fe42a..797d38ddf0e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/certifi/certifi-3021.3.16-r4.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/certifi/certifi-3021.3.16-r4.ebuild @@ -23,7 +23,7 @@ S=${WORKDIR}/${MY_P} LICENSE="MPL-2.0" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" RDEPEND=" app-misc/ca-certificates diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cython/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/cython/Manifest index 63c67f8fddd..7bd49ccadde 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/cython/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/cython/Manifest @@ -3,3 +3,4 @@ DIST cython-3.0.2.gh.tar.gz 2744583 BLAKE2B f631891870a6ce24acf2bcde75ebcb9775cf DIST cython-3.0.3.gh.tar.gz 2753188 BLAKE2B 0e6d40533f1cebf3c4217dc19aeebc2f873a8bacb94e68810e81d1c6d4cd75176de88516f2d82f43b36107656b6cd5e6990547e93bd8436b1aa93c73ccda6eaf SHA512 c27c16abaf0122ad61e0eeb92aa80a33fc491332b8ebec209cd1810d2b0e3bf14fe1e81838803b86f407520a6d6f7ab8b84d97e495e7d91fd6f7702a46980caa DIST cython-3.0.4.gh.tar.gz 2754689 BLAKE2B 5418b8c374565894deb07e7a3f2fe242e1ef43eed5d716cbd9c6b9fd3d62088d9982eb156c981fa9f6edcf42592f2249f9eb450d16ef908be464e357ee9bbea7 SHA512 bc87e38f9c188a5311f75f49ba4b9ec1ee0af00ff9ed655ca69972891f8b0801025265f8cad4521670088275c7da3d6136aeda7ebb6a33554f64cc7aef362c73 DIST cython-3.0.5.gh.tar.gz 2756583 BLAKE2B d9b5af97933030fc1ac49677a5f3fd8194ba6e685dccd257f4ef4af206565ae2fa6f72c1268d8d0604b6fd6f2d8147c542501e8e319588bfdc4a7f40622976ff SHA512 585d3fe810ace55278fcc6ea4508b3b5259320f92998cd688da787cd5f88ac5fc2467025f20da6d968969eb3296ae9c517136d24a4dbb475441271227968f6be +DIST cython-3.0.6.gh.tar.gz 2759853 BLAKE2B fdcbb870418eebfb2e55e28f7223699fee4fb06d52f9f41db55b30fbe6ba6ee3de42af9bbdd8930d418ec790dec195546486ea45c370e2df122d6fada08d38cf SHA512 f1d33775166d0b6541ea98bee5d4186fc6128aad788323224397c1f3ba0a058141ac84a8b3baa4885204dcbf0979141bc4b5316342003e96208952f040f31753 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.0.5.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.0.5.ebuild index 4223753eab9..7ea37ef29dd 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.0.5.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.0.5.ebuild @@ -26,7 +26,7 @@ S=${WORKDIR}/${MY_P} LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="test" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.0.6.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.0.6.ebuild new file mode 100644 index 00000000000..001a1bda564 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/cython/cython-3.0.6.ebuild @@ -0,0 +1,84 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_TESTED=( python3_{10..12} ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" pypy3 ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 multiprocessing toolchain-funcs + +MY_P=${P/_rc/rc} +DESCRIPTION="A Python to C compiler" +HOMEPAGE=" + https://cython.org/ + https://github.com/cython/cython/ + https://pypi.org/project/Cython/ +" +SRC_URI=" + https://github.com/cython/cython/archive/${PV/_rc/rc}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + ${RDEPEND} + test? ( + $(python_gen_cond_dep ' + dev-python/numpy[${PYTHON_USEDEP}] + ' "${PYTHON_TESTED[@]}") + ) +" + +PATCHES=( + "${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch" + "${FILESDIR}/${PN}-0.29.23-test_exceptions-py310.patch" + "${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch" +) + +distutils_enable_sphinx docs \ + dev-python/jinja \ + dev-python/sphinx-issues \ + dev-python/sphinx-tabs + +python_compile() { + # Python gets confused when it is in sys.path before build. + local -x PYTHONPATH= + + distutils-r1_python_compile +} + +python_test() { + if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then + einfo "Skipping tests on ${EPYTHON} (xfail)" + return + fi + + # Needed to avoid confusing cache tests + unset CYTHON_FORCE_REGEN + + tc-export CC + # https://github.com/cython/cython/issues/1911 + local -x CFLAGS="${CFLAGS} -fno-strict-overflow" + "${PYTHON}" runtests.py \ + -vv \ + -j "$(makeopts_jobs)" \ + --work-dir "${BUILD_DIR}"/tests \ + --no-examples \ + --no-code-style \ + || die "Tests fail with ${EPYTHON}" +} + +python_install_all() { + local DOCS=( CHANGES.rst README.rst ToDo.txt USAGE.txt ) + distutils-r1_python_install_all +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/lxml/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/lxml/Manifest index a90d7b0650a..a697a511ea4 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/lxml/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/lxml/Manifest @@ -1,3 +1,2 @@ DIST lxml-4.9.3-patches-2.tar.xz 24288 BLAKE2B 47b7c486a1c1616c875111bd53b14d4211a1eee3f412985f4022e71b85b087abd71d36919fb025257f17de404329284898ddc639f85e8b15ade21778fa218d98 SHA512 713172b4c907db6479a0a803a842824825b212a9b645c1ca356f793658bd6c63113ea248278e7c46b512e22e3130696e9fc5127fea82a67372d920733fc160b0 -DIST lxml-4.9.3-patches.tar.xz 10544 BLAKE2B 407938d2f701400e919110c3bfe84e94621f39f8178850c466d41549ee0eff4f23e93cdd8ea684713e8276acfaa05d6f7b7af4d375c859b9fc5b2981d60983a3 SHA512 c2d5d2ffb035aed6d846de84885b87142b2be7a09ffe6927e7c032acab343730acfcbefd75e8141cf3b41b308c532869a7878b515f3d4eeefa7526a3d2599398 DIST lxml-4.9.3.gh.tar.gz 958628 BLAKE2B ffdf3fe781a03815f7c026229d313721c93375ebafad9b4a20c5d8a380a631401e546d8701a94d8c49615fb6a71e84940d8ca0299b47a37c1c9596db36659113 SHA512 903bd4935c7708b459aee9befcf3f6e3e3aaa9adc122591ea923b6e3d8fd288f07cab3f5f0edb08e3bf9db80414324f0a1a8e5a5089f9cda82f6c50f5df59423 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/lxml/files/lxml-4.9.3-tests-py3.11-cython3.patch b/sdk_container/src/third_party/portage-stable/dev-python/lxml/files/lxml-4.9.3-tests-py3.11-cython3.patch deleted file mode 100644 index 1fb466ab810..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/lxml/files/lxml-4.9.3-tests-py3.11-cython3.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/src/lxml/tests/test_errors.py -+++ b/src/lxml/tests/test_errors.py -@@ -25,6 +25,7 @@ class ErrorTestCase(HelperTestCase): - def test_empty_parse(self): - self.assertRaises(etree.XMLSyntaxError, etree.fromstring, '') - -+ @unittest.skipIf(sys.version_info >= (3, 11), "Known GC failure (https://bugzilla.redhat.com/show_bug.cgi?id=2051510)") - @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_element_cyclic_gc_none(self): - # test if cyclic reference can crash etree diff --git a/sdk_container/src/third_party/portage-stable/dev-python/lxml/files/lxml-4.9.3-tests-pypy.patch b/sdk_container/src/third_party/portage-stable/dev-python/lxml/files/lxml-4.9.3-tests-pypy.patch deleted file mode 100644 index 939e26e5124..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/lxml/files/lxml-4.9.3-tests-pypy.patch +++ /dev/null @@ -1,424 +0,0 @@ -From 1804702b5e3c85c1a16014d62365a29d0a6d0c75 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= -Date: Thu, 30 Jan 2020 06:15:27 +0100 -Subject: [PATCH] Skip tests failing on PyPy - ---- a/doc/element_classes.txt -+++ b/doc/element_classes.txt -@@ -576,10 +576,10 @@ subclasses for elements of this namespace: - - >>> print(honk_element[0].honk()) - HONK -- >>> print(honk_element[0].honking) -+ >>> print(honk_element[0].honking) # doctest: +ELLIPSIS - Traceback (most recent call last): - ... -- AttributeError: 'HonkNSElement' object has no attribute 'honking' -+ AttributeError: 'HonkNSElement' object has no attribute 'honking'... - - >>> print(honk_element[1].text) # uses fallback for non-elements - comment ---- a/src/lxml/tests/test_elementtree.py -+++ b/src/lxml/tests/test_elementtree.py -@@ -26,7 +26,7 @@ from .common_imports import ( - BytesIO, etree, HelperTestCase, - ElementTree, cElementTree, ET_VERSION, CET_VERSION, - filter_by_version, fileInTestDir, canonicalize, tmpfile, -- _str, _bytes, unicode, IS_PYTHON2 -+ _str, _bytes, unicode, IS_PYTHON2, IS_PYPY - ) - - if cElementTree is not None and (CET_VERSION <= (1,0,7) or sys.version_info[0] >= 3): -@@ -2734,6 +2734,7 @@ class _ETreeTestCaseBase(HelperTestCase): - self.assertEqual('TEST', root2[0].get('{%s}a' % ns_href)) - - required_versions_ET['test_register_namespace'] = (1,3) -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_register_namespace(self): - # ET 1.3+ - Element = self.etree.Element ---- a/src/lxml/tests/test_errors.py -+++ b/src/lxml/tests/test_errors.py -@@ -11,7 +11,7 @@ import unittest - import sys, gc, os.path - from lxml import etree - --from .common_imports import HelperTestCase -+from .common_imports import HelperTestCase, IS_PYPY - - - class ErrorTestCase(HelperTestCase): -@@ -25,6 +25,7 @@ class ErrorTestCase(HelperTestCase): - def test_empty_parse(self): - self.assertRaises(etree.XMLSyntaxError, etree.fromstring, '') - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_element_cyclic_gc_none(self): - # test if cyclic reference can crash etree - Element = self.etree.Element ---- a/src/lxml/tests/test_http_io.py -+++ b/src/lxml/tests/test_http_io.py -@@ -11,10 +11,11 @@ import textwrap - import sys - import gzip - --from .common_imports import etree, HelperTestCase, BytesIO, _bytes -+from .common_imports import etree, HelperTestCase, BytesIO, _bytes, IS_PYPY - from .dummy_http_server import webserver, HTTPRequestCollector - - -+@unittest.skipIf(IS_PYPY, "broken on pypy") - class HttpIOTestCase(HelperTestCase): - etree = etree - ---- a/src/lxml/tests/test_nsclasses.py -+++ b/src/lxml/tests/test_nsclasses.py -@@ -9,7 +9,7 @@ from __future__ import absolute_import - - import unittest - --from .common_imports import etree, HelperTestCase, _bytes, make_doctest -+from .common_imports import etree, HelperTestCase, _bytes, make_doctest, IS_PYPY - - class ETreeNamespaceClassesTestCase(HelperTestCase): - -@@ -46,6 +46,7 @@ class ETreeNamespaceClassesTestCase(HelperTestCase): - self.Namespace('ns02').clear() - self.Namespace('ns03').clear() - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_ns_classes(self): - bluff_dict = {'bluff' : self.bluff_class} - maeh_dict = {'maeh' : self.maeh_class} ---- a/src/lxml/tests/test_objectify.py -+++ b/src/lxml/tests/test_objectify.py -@@ -11,7 +11,8 @@ import random - import unittest - - from .common_imports import ( -- etree, HelperTestCase, fileInTestDir, doctest, make_doctest, _bytes, _str, BytesIO -+ etree, HelperTestCase, fileInTestDir, doctest, make_doctest, _bytes, _str, BytesIO, -+ IS_PYPY - ) - - from lxml import objectify -@@ -215,11 +216,13 @@ class ObjectifyTestCase(HelperTestCase): - expected.update(DEFAULT_NSMAP) - self.assertEqual(root.value.nsmap, expected) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_date_element_efactory_text(self): - # ObjectifiedDataElement can also be used as E-Factory - value = objectify.ObjectifiedDataElement('test', 'toast') - self.assertEqual(value.text, 'testtoast') - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_date_element_efactory_tail(self): - # ObjectifiedDataElement can also be used as E-Factory - value = objectify.ObjectifiedElement(objectify.ObjectifiedDataElement(), 'test', 'toast') -@@ -376,6 +379,7 @@ class ObjectifyTestCase(HelperTestCase): - self.assertEqual("4", getattr(root.c1, "{}c2").text) - self.assertEqual("0", getattr(root.c1, "c2").text) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_setattr(self): - for val in [ - 2, 2**32, 1.2, "Won't get fooled again", -@@ -811,6 +815,7 @@ class ObjectifyTestCase(HelperTestCase): - self.assertEqual(3, len(root.findall(".//b"))) - self.assertEqual(2, len(root.findall("b"))) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_build_tree(self): - root = self.Element('root') - root.a = 5 -@@ -840,6 +845,7 @@ class ObjectifyTestCase(HelperTestCase): - self.assertEqual(value, None) - self.assertEqual(value.get(XML_SCHEMA_NIL_ATTR), "true") - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_bool(self): - Element = self.Element - SubElement = self.etree.SubElement -@@ -877,6 +883,7 @@ class ObjectifyTestCase(HelperTestCase): - self.assertEqual(objectify.DataElement(False).text, "false") - self.assertEqual(objectify.DataElement(True).text, "true") - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_str(self): - Element = self.Element - SubElement = self.etree.SubElement -@@ -884,6 +891,7 @@ class ObjectifyTestCase(HelperTestCase): - root.s = "test" - self.assertTrue(isinstance(root.s, objectify.StringElement)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_str_intliteral(self): - Element = self.Element - SubElement = self.etree.SubElement -@@ -891,6 +899,7 @@ class ObjectifyTestCase(HelperTestCase): - root.s = "3" - self.assertTrue(isinstance(root.s, objectify.StringElement)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_str_floatliteral(self): - Element = self.Element - SubElement = self.etree.SubElement -@@ -898,6 +907,7 @@ class ObjectifyTestCase(HelperTestCase): - root.s = "3.72" - self.assertTrue(isinstance(root.s, objectify.StringElement)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_str_mul(self): - Element = self.Element - SubElement = self.etree.SubElement -@@ -910,6 +920,7 @@ class ObjectifyTestCase(HelperTestCase): - self.assertRaises(TypeError, operator.mul, root.s, "honk") - self.assertRaises(TypeError, operator.mul, "honk", root.s) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_str_add(self): - Element = self.Element - SubElement = self.etree.SubElement -@@ -920,6 +931,7 @@ class ObjectifyTestCase(HelperTestCase): - self.assertEqual("test" + s, root.s + s) - self.assertEqual(s + "test", s + root.s) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_str_mod(self): - s = "%d %f %s %r" - el = objectify.DataElement(s) -@@ -985,6 +997,7 @@ class ObjectifyTestCase(HelperTestCase): - self.assertTrue(isinstance(value, objectify.StringElement)) - self.assertEqual(value, "3.20") - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_ustr(self): - Element = self.Element - SubElement = self.etree.SubElement -@@ -992,6 +1005,7 @@ class ObjectifyTestCase(HelperTestCase): - root.s = _str("test") - self.assertTrue(isinstance(root.s, objectify.StringElement)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_ustr_intliteral(self): - Element = self.Element - SubElement = self.etree.SubElement -@@ -999,6 +1013,7 @@ class ObjectifyTestCase(HelperTestCase): - root.s = _str("3") - self.assertTrue(isinstance(root.s, objectify.StringElement)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_ustr_floatliteral(self): - Element = self.Element - SubElement = self.etree.SubElement -@@ -1006,6 +1021,7 @@ class ObjectifyTestCase(HelperTestCase): - root.s = _str("3.72") - self.assertTrue(isinstance(root.s, objectify.StringElement)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_ustr_mul(self): - Element = self.Element - SubElement = self.etree.SubElement -@@ -1018,6 +1034,7 @@ class ObjectifyTestCase(HelperTestCase): - self.assertRaises(TypeError, operator.mul, root.s, _str("honk")) - self.assertRaises(TypeError, operator.mul, _str("honk"), root.s) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_ustr_add(self): - Element = self.Element - SubElement = self.etree.SubElement -@@ -1043,6 +1060,7 @@ class ObjectifyTestCase(HelperTestCase): - self.assertTrue(isinstance(value, objectify.StringElement)) - self.assertEqual(value, _str("3.20")) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_int(self): - Element = self.Element - root = Element("{objectified}root") -@@ -1059,6 +1077,7 @@ class ObjectifyTestCase(HelperTestCase): - value = objectify.DataElement(123) - self.assertEqual(hash(value), hash(123)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_float(self): - Element = self.Element - SubElement = self.etree.SubElement -@@ -1075,6 +1094,7 @@ class ObjectifyTestCase(HelperTestCase): - value = objectify.DataElement(5.5) - self.assertEqual(hash(value), hash(5.5)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_float_precision(self): - # test not losing precision by shortened float str() value - # repr(2.305064300557): '2.305064300557' -@@ -1094,6 +1114,7 @@ class ObjectifyTestCase(HelperTestCase): - s = "2.305064300557" - self.assertEqual(objectify.FloatElement(s), float(s)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_float_precision_consistency(self): - # test consistent FloatElement values for the different instantiation - # possibilities -@@ -1180,6 +1201,7 @@ class ObjectifyTestCase(HelperTestCase): - self.assertEqual(value.text, None) - self.assertEqual(value.pyval, None) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_unregistered(self): - Element = self.Element - SubElement = self.etree.SubElement -@@ -1342,6 +1364,7 @@ class ObjectifyTestCase(HelperTestCase): - self.assertEqual(["why", "try"], - strs) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_str_cmp(self): - XML = self.XML - root = XML(_bytes('testtaste')) -@@ -1369,6 +1392,7 @@ class ObjectifyTestCase(HelperTestCase): - self.assertEqual(root.b, "") - self.assertEqual("", root.b) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_int_cmp(self): - XML = self.XML - root = XML(_bytes('56')) -@@ -1391,6 +1415,7 @@ class ObjectifyTestCase(HelperTestCase): - - # float + long share the NumberElement implementation with int - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_type_bool_cmp(self): - XML = self.XML - root = XML(_bytes('falsetrue')) -@@ -2060,6 +2085,7 @@ class ObjectifyTestCase(HelperTestCase): - before = [objectify.getRegisteredTypes()[0].name], - after = [objectify.getRegisteredTypes()[1].name]) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_registered_type_stringify(self): - from datetime import datetime - def parse_date(value): -@@ -2530,46 +2556,55 @@ class ObjectifyTestCase(HelperTestCase): - - # E-Factory tests, need to use sub-elements as root element is always - # type-looked-up as ObjectifiedElement (no annotations) -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_efactory_int(self): - E = objectify.E - root = E.root(E.val(23)) - self.assertTrue(isinstance(root.val, objectify.IntElement)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_efactory_float(self): - E = objectify.E - root = E.root(E.val(233.23)) - self.assertTrue(isinstance(root.val, objectify.FloatElement)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_efactory_str(self): - E = objectify.E - root = E.root(E.val("what?")) - self.assertTrue(isinstance(root.val, objectify.StringElement)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_efactory_unicode(self): - E = objectify.E - root = E.root(E.val(_str("blöödy häll", encoding="ISO-8859-1"))) - self.assertTrue(isinstance(root.val, objectify.StringElement)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_efactory_bool(self): - E = objectify.E - root = E.root(E.val(True)) - self.assertTrue(isinstance(root.val, objectify.BoolElement)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_efactory_none(self): - E = objectify.E - root = E.root(E.val(None)) - self.assertTrue(isinstance(root.val, objectify.NoneElement)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_efactory_value_concatenation(self): - E = objectify.E - root = E.root(E.val(1, "foo", 2.0, "bar ", True, None)) - self.assertTrue(isinstance(root.val, objectify.StringElement)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_efactory_attrib(self): - E = objectify.E - root = E.root(foo="bar") - self.assertEqual(root.get("foo"), "bar") - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_efactory_nested(self): - E = objectify.E - DataElement = objectify.DataElement -@@ -2584,6 +2619,7 @@ class ObjectifyTestCase(HelperTestCase): - self.assertTrue(isinstance(root.value[0], objectify.IntElement)) - self.assertTrue(isinstance(root.value[1], objectify.FloatElement)) - -+ @unittest.skipIf(IS_PYPY, "broken on pypy") - def test_efactory_subtype(self): - class Attribute(objectify.ObjectifiedDataElement): - def __init__(self): -@@ -2739,7 +2775,8 @@ def test_suite(): - suite = unittest.TestSuite() - suite.addTests([unittest.makeSuite(ObjectifyTestCase)]) - suite.addTests(doctest.DocTestSuite(objectify)) -- suite.addTests([make_doctest('../../../doc/objectify.txt')]) -+ if not IS_PYPY: -+ suite.addTests([make_doctest('../../../doc/objectify.txt')]) - return suite - - if __name__ == '__main__': ---- a/src/lxml/tests/test_xpathevaluator.py -+++ b/src/lxml/tests/test_xpathevaluator.py -@@ -8,7 +8,7 @@ from __future__ import absolute_import - - import unittest, sys - --from .common_imports import etree, HelperTestCase, _bytes, BytesIO, doctest, make_doctest -+from .common_imports import etree, HelperTestCase, _bytes, BytesIO, doctest, make_doctest, IS_PYPY - - - class ETreeXPathTestCase(HelperTestCase): -@@ -740,8 +740,9 @@ def test_suite(): - suite.addTests([unittest.makeSuite(ETreeXPathExsltTestCase)]) - suite.addTests([unittest.makeSuite(ETreeETXPathClassTestCase)]) - suite.addTests([doctest.DocTestSuite()]) -- suite.addTests( -- [make_doctest('../../../doc/xpathxslt.txt')]) -+ if not IS_PYPY: -+ suite.addTests( -+ [make_doctest('../../../doc/xpathxslt.txt')]) - return suite - - if __name__ == '__main__': ---- a/src/lxml/tests/test_xslt.py -+++ b/src/lxml/tests/test_xslt.py -@@ -17,6 +17,8 @@ from textwrap import dedent - from tempfile import NamedTemporaryFile, mkdtemp - - is_python3 = sys.version_info[0] >= 3 -+is_pypy = (getattr(sys, 'implementation', None) == 'pypy' or -+ getattr(sys, 'pypy_version_info', None) is not None) - - try: - unicode -@@ -2098,8 +2100,9 @@ def test_suite(): - suite.addTests([unittest.makeSuite(Py3XSLTTestCase)]) - suite.addTests( - [make_doctest('../../../doc/extensions.txt')]) -- suite.addTests( -- [make_doctest('../../../doc/xpathxslt.txt')]) -+ if not is_pypy: -+ suite.addTests( -+ [make_doctest('../../../doc/xpathxslt.txt')]) - return suite - - if __name__ == '__main__': --- -2.41.0 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/lxml/lxml-4.9.3-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/lxml/lxml-4.9.3-r1.ebuild deleted file mode 100644 index df72e6bd21c..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/lxml/lxml-4.9.3-r1.ebuild +++ /dev/null @@ -1,116 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{10..12} pypy3 ) - -inherit distutils-r1 optfeature toolchain-funcs - -DESCRIPTION="A Pythonic binding for the libxml2 and libxslt libraries" -HOMEPAGE=" - https://lxml.de/ - https://pypi.org/project/lxml/ - https://github.com/lxml/lxml/ -" -SRC_URI=" - https://github.com/lxml/lxml/archive/${P}.tar.gz - -> ${P}.gh.tar.gz - https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-4.9.3-patches.tar.xz -" -S=${WORKDIR}/lxml-${P} - -LICENSE="BSD ElementTree GPL-2 PSF-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="doc examples +threads test" -RESTRICT="!test? ( test )" - -# Note: lib{xml2,xslt} are used as C libraries, not Python modules. -DEPEND=" - >=dev-libs/libxml2-2.10.3 - >=dev-libs/libxslt-1.1.38 -" -RDEPEND=" - ${DEPEND} -" -BDEPEND=" - virtual/pkgconfig - >=dev-python/cython-0.29.35[${PYTHON_USEDEP}] - doc? ( - $(python_gen_any_dep ' - dev-python/docutils[${PYTHON_USEDEP}] - dev-python/pygments[${PYTHON_USEDEP}] - dev-python/sphinx[${PYTHON_USEDEP}] - dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}] - ') - ) - test? ( - dev-python/cssselect[${PYTHON_USEDEP}] - ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-4.9.3-tests-pypy.patch - "${FILESDIR}"/${PN}-4.9.3-tests-py3.11-cython3.patch - "${WORKDIR}"/${PN}-4.9.3-patches -) - -python_check_deps() { - use doc || return 0 - python_has_version -b "dev-python/docutils[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/pygments[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]" && - python_has_version -b "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]" -} - -python_prepare_all() { - # avoid replacing PYTHONPATH in tests. - sed -i -e '/sys\.path/d' test.py || die - - # don't use some random SDK on Darwin - sed -i -e '/_ldflags =/s/=.*isysroot.*darwin.*None/= None/' \ - setupinfo.py || die - - distutils-r1_python_prepare_all -} - -python_compile() { - tc-export PKG_CONFIG - distutils-r1_python_compile -} - -python_compile_all() { - use doc && emake html -} - -python_test() { - local dir=${BUILD_DIR}/test$(python_get_sitedir)/lxml - local -x PATH=${BUILD_DIR}/test/usr/bin:${PATH} - - cp -al "${BUILD_DIR}"/{install,test} || die - cp -al src/lxml/tests "${dir}/" || die - cp -al src/lxml/html/tests "${dir}/html/" || die - ln -rs "${S}"/doc "${dir}"/../../ || die - - "${EPYTHON}" test.py -vv --all-levels -p || die "Test ${test} fails with ${EPYTHON}" -} - -python_install_all() { - if use doc; then - local DOCS=( README.rst *.txt doc/*.txt ) - local HTML_DOCS=( doc/html/. ) - fi - if use examples; then - dodoc -r samples - fi - - distutils-r1_python_install_all -} - -pkg_postinst() { - optfeature "Support for BeautifulSoup as a parser backend" dev-python/beautifulsoup4 - optfeature "Translates CSS selectors to XPath 1.0 expressions" dev-python/cssselect -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/lxml/lxml-4.9.3-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/lxml/lxml-4.9.3-r2.ebuild index 4518e920d4a..cd6b75b3c80 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/lxml/lxml-4.9.3-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-python/lxml/lxml-4.9.3-r2.ebuild @@ -24,7 +24,7 @@ S=${WORKDIR}/lxml-${P} LICENSE="BSD ElementTree GPL-2 PSF-2" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="doc examples +threads test" RESTRICT="!test? ( test )" @@ -76,6 +76,10 @@ python_prepare_all() { } python_compile() { + local DISTUTILS_ARGS=( + # by default it adds -w to CFLAGS + --warnings + ) tc-export PKG_CONFIG distutils-r1_python_compile } diff --git a/sdk_container/src/third_party/portage-stable/dev-python/packaging/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/packaging/Manifest index c184afe1347..7bc73079326 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/packaging/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/packaging/Manifest @@ -1,2 +1 @@ -DIST packaging-23.1.tar.gz 134240 BLAKE2B ef7ef320a98592769078581e32fcc355d05f6fbb7611e7bd83fd2ed64d5f5f5d9c1f89c2a4a91ace1221214a9047e233d8d6a339fd29066b3695137ec5a870bd SHA512 0f2246b8bfeb467623ee72e6fdb7c0416e3b4ba0e00102c1528581e0835cc8e731a812b15e2e429d3ebb0001713d95cc2675f443f4597b092e305a3ef2e9137a DIST packaging-23.2.tar.gz 146714 BLAKE2B cf7986a07312fd82a2a0ee738088993b9570d95cd0b573afa7a1f911bf335de7084e3d40d961adea7f5a8369738688f9d0a4265ef26a393f2d30769bc13f752a SHA512 8ab5e9bc4feef2fac1c9044dc8a6f2d41aaf9fe2dae671de8b98c0b1a19dca2169588b87d85a8c990d808b1e76faee65984ce970eaa3282b75e107ca82cc2863 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-23.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-23.1.ebuild deleted file mode 100644 index 32faf84db1a..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/packaging/packaging-23.1.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 8 -- sys-apps/portage dep -EAPI=8 - -DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( python3_{10..12} pypy3 ) - -inherit distutils-r1 pypi - -DESCRIPTION="Core utilities for Python packages" -HOMEPAGE=" - https://github.com/pypa/packaging/ - https://pypi.org/project/packaging/ -" - -SLOT="0" -LICENSE="|| ( Apache-2.0 BSD-2 )" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" - -RDEPEND=" - >=dev-python/pyparsing-3.0.7-r1[${PYTHON_USEDEP}] - ! pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "${PN}" + version = "${PV}" + description = 'A small Python package for determining appropriate platform-specific dirs, e.g. a "user data dir".' + EOF + # sigh + cat > src/platformdirs/version.py <<-EOF || die + __version__ = version = '${PV}' + __version_tuple__ = version_tuple = (${PV//./, }) + EOF +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pygments/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/pygments/Manifest index 7bad1f079bd..a2ee87b0131 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pygments/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/pygments/Manifest @@ -1 +1,4 @@ DIST Pygments-2.16.1.tar.gz 4872980 BLAKE2B 57ec4f52f2bca3d9df993f583434d61ad0adbc2719f2d0b4ac84160672a3a57ec144509c520f2724a15f0222548abfbe0e743fa31a8dac64d54111b2d7393ae4 SHA512 9b66c79c03e7ecd36cc00efd428a0a6b372e70dbccdcaae26eff4d56c07a17e2e00d2cf0291eb6624ffd1c896b797789b973e80ccbca4240d56daad95eacfd80 +DIST pygments-2.17.0.tar.gz 4827657 BLAKE2B 53ab36177bb88a3a19cd14a86bedab5aecf3286e2b08432f643d31d22179c4bf7e938dc8fffc3a5ecfcfead747d26085730dd611d050ae649cea62353639941e SHA512 b385f58bb7dba6b193e6c9715e0a34a883d810d2ee919a24268d7b9fffaf7501c0964c8d84aa26edcb503141330e6b752fe52d11b3d146177d42ecd3ab9211de +DIST pygments-2.17.1.tar.gz 4827687 BLAKE2B 71e5311b15ece8463a5062a4a83796b5e652b3d67ab2d4578cc03d139816fb3de9dff204c1d35ef9e959e502d57ef22b1507212d3ed477866757e596c6c488f4 SHA512 587f9d32bbb6c9bdbe53db2f5a24b93323905cd515acf3a0e73318c00bdbb71e109d9258de54ac45a1d85fe285ffdd1b9b0397b41391124754f41af4c9e02e4b +DIST pygments-2.17.2.tar.gz 4827772 BLAKE2B 7e6db51ff35ec35981fcdd6f4a1f0a242c29e8b0947a5a3febdee35a0e4047414d49d6883b8fbf9de78b149323f0b3c86b315b03eaada557b4cd70e67917aab8 SHA512 a3408a21f4c0a9f1a81d4fae5c2924f66f1f17daf98a52c4379d6953625354f47bb8db3005e6ab09407627f592843efde12afb14e1271c1e685973eb4c238d89 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.17.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.17.0.ebuild new file mode 100644 index 00000000000..11302a94d36 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.17.0.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYPI_PN=${PN^} +PYTHON_COMPAT=( python3_{10..12} pypy3 ) + +inherit distutils-r1 bash-completion-r1 pypi + +DESCRIPTION="Pygments is a syntax highlighting package written in Python" +HOMEPAGE=" + https://pygments.org/ + https://github.com/pygments/pygments/ + https://pypi.org/project/Pygments/ +" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" + +BDEPEND=" + test? ( + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/wcag-contrast-ratio[${PYTHON_USEDEP}] + virtual/ttf-fonts + ) +" + +EPYTEST_DESELECT=( + # fuzzing tests, very slow + tests/test_basic_api.py::test_random_input + # incompatibility with python-ctags3, apparently + # https://github.com/pygments/pygments/issues/2486 + tests/test_html_formatter.py::test_ctags +) + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_install() { + distutils-r1_src_install + newbashcomp external/pygments.bashcomp pygmentize +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.17.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.17.1.ebuild new file mode 100644 index 00000000000..11302a94d36 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.17.1.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYPI_PN=${PN^} +PYTHON_COMPAT=( python3_{10..12} pypy3 ) + +inherit distutils-r1 bash-completion-r1 pypi + +DESCRIPTION="Pygments is a syntax highlighting package written in Python" +HOMEPAGE=" + https://pygments.org/ + https://github.com/pygments/pygments/ + https://pypi.org/project/Pygments/ +" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" + +BDEPEND=" + test? ( + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/wcag-contrast-ratio[${PYTHON_USEDEP}] + virtual/ttf-fonts + ) +" + +EPYTEST_DESELECT=( + # fuzzing tests, very slow + tests/test_basic_api.py::test_random_input + # incompatibility with python-ctags3, apparently + # https://github.com/pygments/pygments/issues/2486 + tests/test_html_formatter.py::test_ctags +) + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_install() { + distutils-r1_src_install + newbashcomp external/pygments.bashcomp pygmentize +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.17.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.17.2.ebuild new file mode 100644 index 00000000000..11302a94d36 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/pygments/pygments-2.17.2.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYPI_PN=${PN^} +PYTHON_COMPAT=( python3_{10..12} pypy3 ) + +inherit distutils-r1 bash-completion-r1 pypi + +DESCRIPTION="Pygments is a syntax highlighting package written in Python" +HOMEPAGE=" + https://pygments.org/ + https://github.com/pygments/pygments/ + https://pypi.org/project/Pygments/ +" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" + +BDEPEND=" + test? ( + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/wcag-contrast-ratio[${PYTHON_USEDEP}] + virtual/ttf-fonts + ) +" + +EPYTEST_DESELECT=( + # fuzzing tests, very slow + tests/test_basic_api.py::test_random_input + # incompatibility with python-ctags3, apparently + # https://github.com/pygments/pygments/issues/2486 + tests/test_html_formatter.py::test_ctags +) + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_install() { + distutils-r1_src_install + newbashcomp external/pygments.bashcomp pygmentize +} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/Manifest index 133b4bd7f86..6f1cec4a691 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/Manifest @@ -1,3 +1,2 @@ -DIST pyparsing-3.1.0.tar.gz 882565 BLAKE2B 8ed2e15e2422ded9a558b866a5cbbdc0fb6c7ce42962710e42cfd751aae7b48bacd3d6201084189a940d262fb7b142ea37b897bae23f97a175f6152c19adb5c9 SHA512 0ad2e8fff93708426b3675e2d41da12b3f09531bf272799db4095ee618bbaa0f4b90e527ff09dda2acbdb923d59117678fbb28b82a7cfd2b395d686f47b61850 DIST pyparsing-3.1.1.tar.gz 884814 BLAKE2B d5a2b74181d2d93575e9be43285a7156c3b796d58993397c2ed8df10467d54ef193d1f82bbdac0cecd97fb20d1cb64d79f8502b02d8886511ca90c02ac3739bb SHA512 59ae01e13277e25cabd1a1ea41a27aac9235c09746f54c0eaac53d0aae488309fe2044b3b31e1105cb8207ad3326828ec32bdd5e904cceee8b0d032740679628 DIST pyparsing_3.0.9.gh.tar.gz 967771 BLAKE2B c13c74661b9e0d53b4886c9949b01951d220991f916362a13ce0c32c0ab05a6b1cab4d5e5a626acb7563c0ec1716348ede205cb67bf22c0710904f07404ad82a SHA512 1158f27e31f8eced540217b7234b09005eac416fad74faf59678fdae93fe2f76e0e3b5f4adfd3ceb42c8aef19150950293e989c9a5189741175073eb7a03cd6d diff --git a/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/pyparsing-3.1.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/pyparsing-3.1.0.ebuild deleted file mode 100644 index eed60b612a7..00000000000 --- a/sdk_container/src/third_party/portage-stable/dev-python/pyparsing/pyparsing-3.1.0.ebuild +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright 2004-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# please keep this ebuild at EAPI 8 -- sys-apps/portage dep -EAPI=8 - -DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( python3_{10..12} pypy3 ) - -inherit distutils-r1 pypi - -DESCRIPTION="Easy-to-use Python module for text parsing" -HOMEPAGE=" - https://github.com/pyparsing/pyparsing/ - https://pypi.org/project/pyparsing/ -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="examples" - -distutils_enable_tests pytest - -EPYTEST_IGNORE=( - # railroad-diagrams not packaged (and not suitable for packaging yet) - tests/test_diagram.py -) - -EPYTEST_DESELECT=( - # also railroad-diagrams - tests/test_examples.py::TestExamples::test_range_check - tests/test_unit.py::Test02_WithoutPackrat::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test04_WithPackrat::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test06_WithBoundedPackrat::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test08_WithUnboundedPackrat::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test09_WithLeftRecursionParsing::testEmptyExpressionsAreHandledProperly - tests/test_unit.py::Test10_WithLeftRecursionParsingBoundedMemo::testEmptyExpressionsAreHandledProperly -) - -python_install_all() { - if use examples; then - docompress -x /usr/share/doc/${PF}/examples - dodoc -r examples - fi - distutils-r1_python_install_all -} diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest index ec745d1fee8..5cbe453ab82 100644 --- a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/Manifest @@ -1 +1,4 @@ DIST setuptools-68.2.2.tar.gz 2203338 BLAKE2B 3d91bd4b4be1fb7a01b0cca1736187b80f9b07d0e647b49b483d6b8da55f69a678d2c910cde46bd9645dbd10b0b1d14c124d111817cbd7be8d5fab909f787998 SHA512 ed3138a39e8ae47d695e71835024d66d63b8de51aa336bd8524de81a5036aa26cf587caca5d6b46c833f77a6e9c8c1ae6b64e8310f712bd9c4e760196778b2ca +DIST setuptools-69.0.0.tar.gz 2219067 BLAKE2B 3df4e54e2c958b07af0d8ceb58678991ebb01952db90115eaabeb59f1643a67173add5f12fd1ad2e3992f2fcf9bacbfcbbb72e8c7e9d76bdfeaf0556ecc600bf SHA512 652d237fb15d187ede8f1da0406fdf5ba59b04278daf6b24f1ad2e938dabf6c543615926715037ee4f92809ef51c0201a6b595c6034e4d4c3c768ec47bb5e694 +DIST setuptools-69.0.1.tar.gz 2219238 BLAKE2B 2d7a3b1442be77bc310276e95afe8a53dcadfc2e152a93ffb457d01567f148d6b316d2516a0e17ca084687ad5076e6bbdec87d256f757e9220fbf468e31f3a67 SHA512 98f7f65869db725e23fcbe921ba7e0370fc1e80a2952e58cb3cfedc097ed4d814e7cadc558e8c96fb41f3677cb3705bcf835621421f8b0c83ffde5e291508f6b +DIST setuptools-69.0.2.tar.gz 2219248 BLAKE2B 8873ce1eb0a04a8f561eaa9ea8332eb37ca8646e9ed2bb2f4723df0351b01d60ab94172ea34963b0084839b713b9a47e09ee00f82ec46297c7646565e4189ee4 SHA512 1a2955c8ff5955cb028f60ca538472c3a24dbda27984ef51ab59f6969e100b183456af82bc978a02f771b952908985eb85312065849f1afc64530d6461c7c6f6 diff --git a/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-69.0.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-69.0.0.ebuild new file mode 100644 index 00000000000..0519452daec --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-python/setuptools/setuptools-69.0.0.ebuild @@ -0,0 +1,126 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +# please bump dev-python/ensurepip-setuptools along with this package! + +DISTUTILS_USE_PEP517=standalone +PYTHON_TESTED=( python3_{10..12} pypy3 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) +PYTHON_REQ_USE="xml(+)" + +inherit distutils-r1 pypi + +DESCRIPTION="Collection of extensions to Distutils" +HOMEPAGE=" + https://github.com/pypa/setuptools/ + https://pypi.org/project/setuptools/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}] + >=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}] + >=dev-python/nspektr-0.3.0[${PYTHON_USEDEP}] + >=dev-python/ordered-set-4.0.2-r1[${PYTHON_USEDEP}] + >=dev-python/packaging-21.3-r2[${PYTHON_USEDEP}] + >=dev-python/platformdirs-2.6.2-r1[${PYTHON_USEDEP}] + >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}] + >=dev-python/wheel-0.37.1-r1[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} + test? ( + $(python_gen_cond_dep ' + dev-python/build[${PYTHON_USEDEP}] + >=dev-python/ini2toml-0.9[${PYTHON_USEDEP}] + >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] + >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-path-3.2.0[${PYTHON_USEDEP}] + dev-python/pip[${PYTHON_USEDEP}] + dev-python/pip-run[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + dev-python/pytest-fixture-config[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + dev-python/pytest-virtualenv[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] + >=dev-python/virtualenv-20[${PYTHON_USEDEP}] + ' "${PYTHON_TESTED[@]}") + ) +" +# setuptools-scm is here because installing plugins apparently breaks stuff at +# runtime, so let's pull it early. See bug #663324. +PDEPEND=" + >=dev-python/certifi-2016.9.26[${PYTHON_USEDEP}] + dev-python/setuptools-scm[${PYTHON_USEDEP}] +" + +src_prepare() { + local PATCHES=( + # TODO: remove this when we're 100% PEP517 mode + "${FILESDIR}"/setuptools-62.4.0-py-compile.patch + ) + + distutils-r1_src_prepare + + # remove bundled dependencies + rm -r */_vendor || die + + # remove the ugly */extern hack that breaks on unvendored deps + rm -r */extern || die + find -name '*.py' -exec sed \ + -e 's:from \w*[.]\+extern ::' -e 's:\w*[.]\+extern[.]::' \ + -i {} + || die +} + +python_test() { + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + return + fi + + local EPYTEST_DESELECT=( + # network + # TODO: see if PRE_BUILT_SETUPTOOLS_* helps + setuptools/tests/config/test_apply_pyprojecttoml.py::test_apply_pyproject_equivalent_to_setupcfg + setuptools/tests/integration/test_pip_install_sdist.py::test_install_sdist + setuptools/tests/test_build_meta.py::test_legacy_editable_install + setuptools/tests/test_distutils_adoption.py + setuptools/tests/test_editable_install.py + setuptools/tests/test_setuptools.py::test_its_own_wheel_does_not_contain_tests + setuptools/tests/test_virtualenv.py::test_clean_env_install + setuptools/tests/test_virtualenv.py::test_no_missing_dependencies + setuptools/tests/test_virtualenv.py::test_test_command_install_requirements + # TODO + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors + setuptools/tests/test_extern.py::test_distribution_picklable + # expects bundled deps in virtualenv + setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist + setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel + setuptools/tests/test_editable_install.py::test_editable_with_pyproject + # fails if python-xlib is installed + setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts + # fails with importlib-metadata-6.6.0 + setuptools/tests/test_egg_info.py::TestWriteEntries::test_invalid_entry_point + # TODO, probably some random package + setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass + ) + + if has_version ">> Unpacking ${LINUX_SOURCES} (${paths[*]}) to ${PWD}" - gtar --wildcards -xpf "${DISTDIR}"/${LINUX_SOURCES} \ - "${paths[@]/#/linux-${LINUX_VER}/}" || die - - if [[ -n ${LINUX_PATCH} ]] ; then - eshopts_push -o noglob - ebegin "Filtering partial source patch" - filterdiff -p1 ${paths[@]/#/-i } -z "${DISTDIR}"/${LINUX_PATCH} \ - > ${P}.patch - eend $? || die "filterdiff failed" - eshopts_pop - fi - - local a - for a in ${A}; do - [[ ${a} == ${LINUX_SOURCES} ]] && continue - [[ ${a} == ${LINUX_PATCH} ]] && continue - unpack ${a} - done -} - -src_prepare() { - default - - if [[ -n ${LINUX_PATCH} ]] ; then - pushd "${S_K}" >/dev/null || die - eapply "${WORKDIR}"/${P}.patch - popd || die - fi - - # dev-python/docutils installs rst2man.py, not rst2man - sed -i -e 's/rst2man/rst2man.py/g' Documentation/Makefile || die -} - -bpftool_make() { - local arch=$(tc-arch-kernel) - tc-export AR CC LD - - emake V=1 VF=1 \ - HOSTCC="$(tc-getBUILD_CC)" HOSTLD="$(tc-getBUILD_LD)" \ - EXTRA_CFLAGS="${CFLAGS}" ARCH="${arch}" BPFTOOL_VERSION="${MY_PV}" \ - prefix="${EPREFIX}"/usr \ - bash_compdir="$(get_bashcompdir)" \ - feature-libcap="$(usex caps 1 0)" \ - "$@" -} - -src_compile() { - bpftool_make - bpftool_make -C Documentation -} - -src_install() { - bpftool_make DESTDIR="${D}" install - bpftool_make mandir="${ED}"/usr/share/man -C Documentation install -} - -pkg_postinst() { - optfeature "clang-bpf-co-re support" sys-devel/clang[llvm_targets_BPF] -} diff --git a/sdk_container/src/third_party/portage-stable/dev-util/bpftool/bpftool-6.5.7.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/bpftool/bpftool-6.5.7.ebuild index 8d18340895f..01823047c46 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/bpftool/bpftool-6.5.7.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/bpftool/bpftool-6.5.7.ebuild @@ -25,7 +25,7 @@ S="${S_K}/tools/bpf/bpftool" LICENSE="GPL-2" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +KEYWORDS="amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" IUSE="caps" RDEPEND=" diff --git a/sdk_container/src/third_party/portage-stable/dev-util/cmake/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/cmake/Manifest index 3b00848061c..5ddbe400f51 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/cmake/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-util/cmake/Manifest @@ -12,3 +12,6 @@ DIST cmake-3.27.6.tar.gz 10982239 BLAKE2B 1aa876c0c4601261de30fa7829726f9423f359 DIST cmake-3.27.7-SHA-256.txt 1646 BLAKE2B 452413e7d2fe4eb8db96227e6b262bb540c8b58dbf9b34d07ecbc5ade69e76035940c82b643830086e09f113ba08271f271042a8e18b40478959f8f6010b081a SHA512 5f093ed51b10f530318c8b8205ff35f91443a71064008115eecce2f7e8393a3cb3b7dd1c35e5b7b58981c49b19ee708966321085a3237ec313a0865d26948e32 DIST cmake-3.27.7-SHA-256.txt.asc 833 BLAKE2B 687dc73a61abbda26be24dfce98f617e032c3f5494c7e5bd12aa83e3b91f2cf87cd1b08e7cdc5465eef29d005dcc317c3550cf6d447a199e94bf756374b57262 SHA512 cf5a657d739f66daa515b1c49914aabe264bedc24a6e91a18c7959623fac42390b75dc74063587c84b4a365451d5176766d76868279a4db1826eca6b69a44965 DIST cmake-3.27.7.tar.gz 10982558 BLAKE2B a20fac503ba54b4b7e85896056a614b67aa346ad2636e7ab1bf09a2660b92a52754485527f36101e59d47713e7445d27797577c1fa6a8ebe59acb4675227c6da SHA512 2e9b83dee8f8c012be4219ab74ebaa8b8438ea55d5204237a1c9feba94c732afe7baceddb9c681672903112b1e40f7b1a86b284cfceed15f46ce8f90143dbb86 +DIST cmake-3.27.8-SHA-256.txt 1646 BLAKE2B e78bf23e703d9b89f3daa74d39794cadf5188c3b92f5d43a6b97fdbbeae27d86186cae16675560108391ee078072beddc855f7d92e7159a60ce3ad6c562f9907 SHA512 5c1b60500ce0915418c07f4b3770304d0b7d905bbefbd83bc9f21edea81b5c60d2b74a003e33aec851c2c691e5e57447d0ab2be51abb820180e45b43a90d36b8 +DIST cmake-3.27.8-SHA-256.txt.asc 833 BLAKE2B e516fccd908987d70f02da85c79e6e57811c560a6fba31625829b5c316969a8ef0516e74a2055b46297888072fa5b6dd58af637e59579f41cb276d45664c7863 SHA512 ac37186a282151a5edfea2c0f05597f021ffad2de8b9608093930a8d4d10f9afd9ff71a8ee25198902d8d3831ce95a264fb48bc23fb31fa65985ec529988e866 +DIST cmake-3.27.8.tar.gz 10983480 BLAKE2B 8c746d58fe07978bf0ccc92b31731bda46d13965bc3642846b41b7f2ab2d87e88122aa976f9b57a82d04ead4937d5c150b7ec3e9ae601985bfb5382509ddbe84 SHA512 ca7782caee11d487a21abcd1c00fce03f3172c718c70605568d277d5a8cad95a18f2bf32a52637935afb0db1102f0da92d5a412a7166e3f19be2767d6f316f3d diff --git a/sdk_container/src/third_party/portage-stable/dev-util/cmake/cmake-3.27.8.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/cmake/cmake-3.27.8.ebuild new file mode 100644 index 00000000000..cc2a3ce1d1a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/cmake/cmake-3.27.8.ebuild @@ -0,0 +1,296 @@ +# Copyright 1999-2023 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-3) +CMAKE_DOCS_VERSION=3.27.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 elisp-common flag-o-matic multiprocessing \ + toolchain-funcs virtualx 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 ~ia64 ~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 emacs 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 ) + emacs? ( >=app-editors/emacs-23.1:* ) + 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 + "${FILESDIR}"/${PN}-3.27.0_rc1-0006-Filter-out-distcc-warnings-to-avoid-confusing-CMake.patch + + # Upstream fixes (can usually be removed with a version bump) + # pkgconf + # fixes https://github.com/pkgconf/pkgconf/issues/317 + "${FILESDIR}"/${PN}-3.27.4-0001-FindPkgConfig-ignore-whitespace-separators-in-versio.patch +) + +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 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" + + 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() { + # Fix linking on Solaris + [[ ${CHOST} == *-solaris* ]] && append-ldflags -lsocket -lnsl + + # ODR warnings, bug #858335 + # https://gitlab.kitware.com/cmake/cmake/-/issues/20740 + filter-lto + + 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_compile() { + cmake_src_compile + use emacs && elisp-compile Auxiliary/cmake-mode.el +} + +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 + + 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)" \ + ) + + virtx 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 + + if use emacs; then + elisp-install ${PN} Auxiliary/cmake-mode.el Auxiliary/cmake-mode.elc + elisp-site-file-install "${FILESDIR}/${SITEFILE}" + 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() { + use emacs && elisp-site-regen + + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} + +pkg_postrm() { + use emacs && elisp-site-regen + + if use gui; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} diff --git a/sdk_container/src/third_party/portage-stable/dev-util/gperf/gperf-3.1-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/gperf/gperf-3.1-r1.ebuild index 2d775e7d976..c7408f10045 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/gperf/gperf-3.1-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/gperf/gperf-3.1-r1.ebuild @@ -24,3 +24,7 @@ src_prepare() { default } + +src_configure() { + econf --cache-file="${S}"/config.cache +} diff --git a/sdk_container/src/third_party/portage-stable/dev-util/meson/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/meson/Manifest index 42c59d0a950..56b3c11d6c2 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/meson/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-util/meson/Manifest @@ -1,5 +1,10 @@ DIST meson-1.1.1.tar.gz 2125503 BLAKE2B 295b46d19c8a1d64d326a6c826e2abe11d9768902ed2f8816df18677e7f3f58decc0c660925821825ecd9a4955a65bda8b2aa66a7bb1961810d8f78f92a3fd8a SHA512 c6259d73566d2532b87e8a23951363103f7be2aacdf120e50946273a2fed6b1602104a3ffbfda159138ac8f780d2c3e67a6fe2c8c228b73c1266775491797adb +DIST meson-1.1.1.tar.gz.asc 833 BLAKE2B 165f3a0e8093995e82efcdea78b8cf0d2479505aeec145cf0c4bf3448dd74f0b5d1631e574e7d945d5b5976e11c065043ab0a6efe5646484a5bcd6386050a073 SHA512 004ec7e530ad21b012e461c8d50322295e4ec96a1a3197dbcbeb24b8bd6465a34008541e6fc547e451a50dce53f7ce170ec1bfd8c465ded56a5924e880aa0539 DIST meson-1.2.1.tar.gz 2182126 BLAKE2B b79fa78618cbebfb26ea40e698c495e63d722ba3204d4fed92d087e4a588b49666b476c55916f1435b7ca62f24843c683f1da09751754e928c838c1bf138ce58 SHA512 6221a14a6046aaba2c6eb601a9a5b928308bbd9da813ccec16b8f7578296b27d741e30e9343723770c3c7825c86b53193b41b9672dd17468d06d3b8d743bf52e +DIST meson-1.2.1.tar.gz.asc 833 BLAKE2B e4c1ee16f65631815ce5c1be49df77b7eab91e9f256ffcbf3555d257cf468bbcca49ee79ce6ddb701f35b9be0ce6c315809094b87ccfeff8f4de2d1995dbf6ff SHA512 c41b4a6686016cddc407497b003590939760c4f19d1f4481c315024f76f1ecd055dd6f8c7ba3647549c7ff192ab10097b9d0ad64e449ab83f623ea62d0ae4703 DIST meson-1.2.2.tar.gz 2190455 BLAKE2B b355c8e5ab7508fca51dbe5c95eea68f91b995a670ad20eb9b7e93d3c97ad5363afe3fbd39cd554d1a6953a07166851257d16706acc9db6d5265e6452e40a857 SHA512 8dde3235f31862953e2f4db2527e441dfa9413b5f7545c85949ebc0f3b58819307ca124bf04d481d6f1425d6a4c93051239a659554322af893c97b651379fa86 +DIST meson-1.2.2.tar.gz.asc 833 BLAKE2B 21c12a94ea5803b8a608d522988f9da63826bff9ce4a74c8c2cf9721d87504b930135532697e9a18710f732446dde2dc70f1c972f825542d043ae20bb76ed9f5 SHA512 9d4117a09f6852bcad7c91c0084bf6f37c05295b134d297a77b8ca5958edb93f030d05e216206c42cf2739e5a6ccdf680fb612056f3a21da9ec3ee80922236df DIST meson-1.2.3.tar.gz 2184484 BLAKE2B 7d76c54bddba249ab97ebd5dd0afc448177ff9fa70812a8ca0cc9fe308c9b145b3fbc3ee068acae0fdc73edff42134b7a0b618cd80a05347a424aca7bc8bbef8 SHA512 cdcadc731effc1ffb2de98b795ba37955f934ed9b54b9f7f3ac5fe96ab33268d4de4fce734a4c2ef7d2ecc5051616df127e1f8665e197ff954310bf1483b81fc -DIST meson-1.3.0rc1.tar.gz 2139141 BLAKE2B b45bb81e630a8d25421c266953116837580aad0c2d577e575922aef1f2611f3f6b78e5ab346846991251f2409683f74b07f369f49608bf4f12a043cf0c3d0f81 SHA512 196b2e37124328f74bde7aae9d41774bb0b036a8be6f7fee5496eebc83a278222d0ad17efab8baaae421aeeaadda89efeff29e55e88aa4448d3690fc938ab8d8 +DIST meson-1.2.3.tar.gz.asc 833 BLAKE2B 1416c49302aab80b5f647cc1d6cd18c36f6199e79c7d13ea284143b2423267b5823850218578626937c14589ebcdf19069b310394c63bc762ab8f59d7ebe3780 SHA512 852c031ecfe032cb48d284bb270597d114294b7d1be5dd0df6ec2f78a62e1a5ba82711bc14ae410e47ced54f99a639055a1628b0acf7aa07a3a80034fce5ebc9 +DIST meson-1.3.0.tar.gz 2222383 BLAKE2B cb9ac8e00fe924df67166938687584a9de35e784e1e52bff281649d787695d37e3044ea3d6d5869181fe1e9676b5136548293dbd5cdbd091a6de0c449b8932f5 SHA512 fbcbdd9551ad12b7be84411b96357e01c7c0c38a8e9933093d2e71ed7e12bd4278245798684d389c332eb75dd50c99310affc9acb01cf8bedd45265335083a32 +DIST meson-1.3.0.tar.gz.asc 833 BLAKE2B d83b819e75e732d694ac98412717af39a8115defc7371f1983e4619cf990b5cdfd7ab7c93911f2a8b6c7055c7252ebeba04d15f508f4278b506e326fa1801a25 SHA512 8c72bfe5f3bdec9c9f787dd5a7186599bb44079a89d0a87a535a6e890adb7718cbf570b2ac74583b72b92aa05160823a8571ca530384787c428e49d6fbe095ba diff --git a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.1.1.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.1.1.ebuild index af3261000a6..affad54f237 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.1.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.1.1.ebuild @@ -10,11 +10,19 @@ if [[ ${PV} = *9999* ]]; then EGIT_REPO_URI="https://github.com/mesonbuild/meson" inherit git-r3 else - inherit pypi + inherit verify-sig + MY_PV=${PV/_/} MY_P=${P/_/} S=${WORKDIR}/${MY_P} + SRC_URI=" + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz + verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc ) + " + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-jpakkane )" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg + if [[ ${PV} != *_rc* ]] ; then KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi diff --git a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.1-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.1-r1.ebuild index bf7bd116044..016c524354a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.1-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.1-r1.ebuild @@ -10,11 +10,19 @@ if [[ ${PV} = *9999* ]]; then EGIT_REPO_URI="https://github.com/mesonbuild/meson" inherit git-r3 else - inherit pypi + inherit verify-sig + MY_PV=${PV/_/} MY_P=${P/_/} S=${WORKDIR}/${MY_P} + SRC_URI=" + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz + verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc ) + " + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-jpakkane )" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg + if [[ ${PV} != *_rc* ]] ; then KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi diff --git a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.1-r2.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.1-r2.ebuild index 48e35139458..280175c18c6 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.1-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.1-r2.ebuild @@ -10,11 +10,19 @@ if [[ ${PV} = *9999* ]]; then EGIT_REPO_URI="https://github.com/mesonbuild/meson" inherit git-r3 else - inherit pypi + inherit verify-sig + MY_PV=${PV/_/} MY_P=${P/_/} S=${WORKDIR}/${MY_P} + SRC_URI=" + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz + verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc ) + " + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-jpakkane )" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg + if [[ ${PV} != *_rc* ]] ; then KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi diff --git a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.2-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.2-r1.ebuild index 300aa26142b..191b8ea6ead 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.2-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.2-r1.ebuild @@ -10,13 +10,21 @@ if [[ ${PV} = *9999* ]]; then EGIT_REPO_URI="https://github.com/mesonbuild/meson" inherit git-r3 else - inherit pypi + inherit verify-sig + MY_PV=${PV/_/} MY_P=${P/_/} S=${WORKDIR}/${MY_P} + SRC_URI=" + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz + verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc ) + " + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-jpakkane )" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg + if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi fi diff --git a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.2.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.2.ebuild index b2dcaf1c2b6..429bfd5ba7d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.2.ebuild @@ -10,11 +10,19 @@ if [[ ${PV} = *9999* ]]; then EGIT_REPO_URI="https://github.com/mesonbuild/meson" inherit git-r3 else - inherit pypi + inherit verify-sig + MY_PV=${PV/_/} MY_P=${P/_/} S=${WORKDIR}/${MY_P} + SRC_URI=" + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz + verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc ) + " + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-jpakkane )" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg + if [[ ${PV} != *_rc* ]] ; then KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi diff --git a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.3.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.3.ebuild index b2dcaf1c2b6..71e1bdb7dc0 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.3.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.2.3.ebuild @@ -10,13 +10,21 @@ if [[ ${PV} = *9999* ]]; then EGIT_REPO_URI="https://github.com/mesonbuild/meson" inherit git-r3 else - inherit pypi + inherit verify-sig + MY_PV=${PV/_/} MY_P=${P/_/} S=${WORKDIR}/${MY_P} + SRC_URI=" + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz + verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc ) + " + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-jpakkane )" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg + if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi fi diff --git a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.3.0_rc1.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.3.0.ebuild similarity index 89% rename from sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.3.0_rc1.ebuild rename to sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.3.0.ebuild index b2dcaf1c2b6..429bfd5ba7d 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.3.0_rc1.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-1.3.0.ebuild @@ -10,11 +10,19 @@ if [[ ${PV} = *9999* ]]; then EGIT_REPO_URI="https://github.com/mesonbuild/meson" inherit git-r3 else - inherit pypi + inherit verify-sig + MY_PV=${PV/_/} MY_P=${P/_/} S=${WORKDIR}/${MY_P} + SRC_URI=" + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz + verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc ) + " + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-jpakkane )" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg + if [[ ${PV} != *_rc* ]] ; then KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi diff --git a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-9999.ebuild index fefd68d177e..58946549b0a 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/meson/meson-9999.ebuild @@ -10,11 +10,19 @@ if [[ ${PV} = *9999* ]]; then EGIT_REPO_URI="https://github.com/mesonbuild/meson" inherit git-r3 else - inherit pypi + inherit verify-sig + MY_PV=${PV/_/} MY_P=${P/_/} S=${WORKDIR}/${MY_P} + SRC_URI=" + https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz + verify-sig? ( https://github.com/mesonbuild/meson/releases/download/${MY_PV}/${MY_P}.tar.gz.asc ) + " + BDEPEND="verify-sig? ( sec-keys/openpgp-keys-jpakkane )" + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jpakkane.gpg + if [[ ${PV} != *_rc* ]] ; then KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" fi diff --git a/sdk_container/src/third_party/portage-stable/dev-util/meson/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-util/meson/metadata.xml index fcee1391ddd..f4b485f0bec 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/meson/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-util/meson/metadata.xml @@ -4,6 +4,10 @@ base-system@gentoo.org + + eschwartz93@gmail.com + Eli Schwartz + mesonbuild/meson meson diff --git a/sdk_container/src/third_party/portage-stable/dev-util/patchelf/files/patchelf-0.18.0-alpha.patch b/sdk_container/src/third_party/portage-stable/dev-util/patchelf/files/patchelf-0.18.0-alpha.patch new file mode 100644 index 00000000000..c546a4dc2e9 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/patchelf/files/patchelf-0.18.0-alpha.patch @@ -0,0 +1,29 @@ +https://bugs.gentoo.org/909738 +https://github.com/NixOS/patchelf/pull/529 +Note this has removed the unit test changes because it involves adding a binary +file which is not supported in portage for now, see +https://bugs.gentoo.org/835964 + +commit dbc9aeaadfd982b2d8a04eb74cbcecb83208844d +Author: matoro +Date: Sat Nov 4 20:01:22 2023 -0400 + + Fix page size on Alpha + + All tests pass. + + Also explicitly specifies -no-pie for executables which should have it + disabled, to be compatible with gccs built with --enable-default-pie. + +diff --git a/src/patchelf.cc b/src/patchelf.cc +index b42111d..b4d4a7d 100644 +--- a/src/patchelf.cc ++++ b/src/patchelf.cc +@@ -367,6 +367,7 @@ unsigned int ElfFile::getPageSize() const noexcept + // requirements. There is no authoritative list of these values. The + // current list is extracted from GNU gold's source code (abi_pagesize). + switch (rdi(hdr()->e_machine)) { ++ case EM_ALPHA: + case EM_IA_64: + case EM_MIPS: + case EM_PPC: diff --git a/sdk_container/src/third_party/portage-stable/dev-util/patchelf/patchelf-0.18.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/patchelf/patchelf-0.18.0.ebuild index 19d9351a66a..37dbfc7cc26 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/patchelf/patchelf-0.18.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/patchelf/patchelf-0.18.0.ebuild @@ -9,11 +9,12 @@ DESCRIPTION="Small utility to modify the dynamic linker and RPATH of ELF executa HOMEPAGE="https://github.com/NixOS/patchelf" SRC_URI="https://github.com/NixOS/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" SLOT="0" -KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 x86 ~amd64-linux ~riscv-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 x86 ~amd64-linux ~riscv-linux ~x86-linux" LICENSE="GPL-3" PATCHES=( "${FILESDIR}"/${PN}-glibc-dt-mips-xhash.patch + "${FILESDIR}"/${PN}-0.18.0-alpha.patch ) src_prepare() { diff --git a/sdk_container/src/third_party/portage-stable/dev-util/pkgconf/Manifest b/sdk_container/src/third_party/portage-stable/dev-util/pkgconf/Manifest index e730edfe7f2..17e85b200e2 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/pkgconf/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-util/pkgconf/Manifest @@ -2,3 +2,4 @@ DIST pkgconf-1.8.1.tar.xz 302372 BLAKE2B 591961f0b1fd185834fd8e2a672199cffc03513 DIST pkgconf-2.0.1.tar.xz 310576 BLAKE2B 9cb4a1a2ba9a961f184e8d600e15866b6ca971c84b1f9ce83a9ce528b16ec1f6c425ca0deebe5aa11f54d4daf64afbd59e96289a2e17a4bf62f8a82d48d59248 SHA512 1f6e6e421e6e6228aad5cbd834016c8657a59e3bbb5929de4b62377a79cb4e4a52e339f305378b80e6309701bbc0490179e0ead7bdee9da6d7c78565d7b80bc8 DIST pkgconf-2.0.2.tar.xz 310604 BLAKE2B bc13a987d2ed4076af126dfd81c77c10004d0436fcb94c9e7ba18d37a7209ac432f4eb6909e65b22bdff0a4392ef1e764840efa7605adab0db1efa687b131796 SHA512 ca0570cff61534508b091408edf0021773c5f7f4c57ec5427474242f5f84a37e8fdc220cc02b9b362e71b6f8735f0be2c2c246e2212c65a833e44182e2e12e32 DIST pkgconf-2.0.3.tar.xz 310796 BLAKE2B a0a526d59dce4eaafb5a43784676d7717ea8718ea207b3c47e78ef5388804547633ca76cf5b0942d8409c51ff293b8760ee2f9ebfc3ee6c4e4d41861e93db25a SHA512 cdbacd2894f9e5767dd7407ac4d4301a769ee0c6122a1219ce2c89d1a2019056d150cc42b98fda7fb0bd3d167fda2b897a1a92619f64ec5bb02ac9dbc31e445e +DIST pkgconf-2.1.0.tar.xz 311576 BLAKE2B 43ac91f15106764f0b03ac4e1c3ff59aaba0436a221a295be93dd1a78b74e0185e60be8d24d040cc4ce0b0fb4446a6a8f493e7cc69bafafe5cefa9beab9b2bd5 SHA512 239dd75814d23f98a64c7df7ab12bc87a0ba52227ef0102086876e39712a2a5d2fdd1e27314070f66f9b38ef5bc0a31f0b90522f34bf8351e7bfb12c75313641 diff --git a/sdk_container/src/third_party/portage-stable/dev-util/pkgconf/pkgconf-2.1.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/pkgconf/pkgconf-2.1.0.ebuild new file mode 100644 index 00000000000..1a3b9b6870e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-util/pkgconf/pkgconf-2.1.0.ebuild @@ -0,0 +1,69 @@ +# Copyright 2012-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit multilib multilib-minimal + +if [[ ${PV} == 9999 ]] ; then + inherit autotools git-r3 + EGIT_REPO_URI="https://gitea.treehouse.systems/ariadne/pkgconf.git" +else + SRC_URI="https://distfiles.ariadne.space/${PN}/${P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi + +DESCRIPTION="pkg-config compatible replacement with no dependencies other than C99" +HOMEPAGE="https://gitea.treehouse.systems/ariadne/pkgconf" + +LICENSE="ISC" +SLOT="0/4" +IUSE="test" + +RESTRICT="!test? ( test )" + +BDEPEND=" + test? ( + dev-libs/atf + dev-util/kyua + ) +" +RDEPEND="!dev-util/pkgconfig" + +src_prepare() { + default + + [[ ${PV} == 9999 ]] && eautoreconf + + MULTILIB_CHOST_TOOLS=( + /usr/bin/pkgconf$(get_exeext) + /usr/bin/pkg-config$(get_exeext) + ) +} + +multilib_src_configure() { + local myeconfargs=( + --with-system-includedir="${EPREFIX}/usr/include" + --with-system-libdir="${EPREFIX}/$(get_libdir):${EPREFIX}/usr/$(get_libdir)" + ) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_test() { + unset PKG_CONFIG_LIBDIR PKG_CONFIG_PATH + default +} + +multilib_src_install() { + default + + dosym pkgconf$(get_exeext) /usr/bin/pkg-config$(get_exeext) + dosym pkgconf.1 /usr/share/man/man1/pkg-config.1 +} + +multilib_src_install_all() { + einstalldocs + + find "${ED}" -type f -name '*.la' -delete || die +} diff --git a/sdk_container/src/third_party/portage-stable/dev-util/pkgconf/pkgconf-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-util/pkgconf/pkgconf-9999.ebuild index 742423bfd5a..1a3b9b6870e 100644 --- a/sdk_container/src/third_party/portage-stable/dev-util/pkgconf/pkgconf-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-util/pkgconf/pkgconf-9999.ebuild @@ -36,7 +36,7 @@ src_prepare() { [[ ${PV} == 9999 ]] && eautoreconf MULTILIB_CHOST_TOOLS=( - /usr/bin/pkgconf + /usr/bin/pkgconf$(get_exeext) /usr/bin/pkg-config$(get_exeext) ) } diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/git/Manifest b/sdk_container/src/third_party/portage-stable/dev-vcs/git/Manifest index 14824d7d3da..29844e94a89 100644 --- a/sdk_container/src/third_party/portage-stable/dev-vcs/git/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-vcs/git/Manifest @@ -3,13 +3,16 @@ DIST git-2.40.1.tar.xz 7185260 BLAKE2B 50957227a572db54b931976d4c22edeaf0d5678d0 DIST git-2.41.0.tar.xz 7273624 BLAKE2B 9119e1d1ff0ff332559a6609707846c2af7c61bea6ea728e834e4bd7f1ff6dd636a081c227b32a88fc5de1ea8987951cc56d0e94c90bbaa211ff415c5020d070 SHA512 a215bc6d89afbddd56adac901c24ea2b7f98a37bf6a6a2756893947012ffaa850e76247a3445a5ab13ab5a462f39986fec33eed086148aba5eb554dc1799fee0 DIST git-2.42.0.tar.xz 7346760 BLAKE2B efe8abd42955a7aee32a12067466d1d8dfc3946f40750254ad431bab7debe3398a9fd4833817a93f6496229184e7890034581300d8c94a98f0c0a209f3021bf4 SHA512 afe5bca3c084d4ddd66f20afa820ba10f61007f66846108929e0d4ee7b7eaa896fcf00917dead16881d840f674dec6dd0e353a05e62a31016694af3d7d22a51d DIST git-2.42.1.tar.xz 7351412 BLAKE2B 913427edcf02bc6ee4b07ba9ceb2f7ebc1482512016d24f838439150809ca2f8b496ec705f7894c5cc1b66a10e3d95bbff5b004e20b0637e29a805f07578cd39 SHA512 5946699108d4181e14fc3c61e4a4ebadcf8a876248c3f570ca22e6d95d8fea4eeb424d6e0c897d180df5959b8b2e3b0dd4e005d4c38bed2d35a2ed8036e6dc95 +DIST git-2.43.0.tar.xz 7382996 BLAKE2B 5da19211df56e306eb95cef65b2a987134d2f0853dc1db30e1cc99d0357b3f5ab7f1e434e73948d7b6ad6b7bfc44f75349479f46050ee63a6516c72b774b4eba SHA512 d0c1694ae23ff7d523e617b98d7c9a9753a2ee58f92c21b67a192d1c57398a62ff9c1a34558ae31af8dc8d95122c219f39f654e99a3b4e7cfc3dd07be9e13203 DIST git-htmldocs-2.39.3.tar.xz 1506828 BLAKE2B 732e86ee004a44230d8f10eac16a14fbfb348d4278001011a0d22ba91240fbe65cad341b0547b649db3ce7fc67fc6fb544c896e7ba4bd7f1fa3c9b42371febf9 SHA512 7616c9c6600759f06973d36d5233b3909da72f39318410f5522b890d282a74e7585433c7195fed4792d5b7955292a466abcc2185ffdc23d0e8928ad58d7db1bf DIST git-htmldocs-2.40.1.tar.xz 1517900 BLAKE2B 864edd5b2389362dcf5d0c9f08cbf3bac6303cf6505b2d5446e73aeb591ac9212948b6f68434671e3bfba6f64d6aff02d315848d08647d22177292775411e5b3 SHA512 770c9765bab1f0773615d67f4eb817c42e1a946da205381ac0c208c4b2d4185c351aebbd7294afe66ef794b65cc9123b255a585a3df2990b5dfe779aaacb0800 DIST git-htmldocs-2.41.0.tar.xz 1525692 BLAKE2B 4ea74130e21fed3ebbe09b849eddc48654fa7563299d8c2173856741d3c490a1672ac6b2005f716d6ae2d7759f92caafc56ccbf2408ba8ec87266b9c10530d73 SHA512 8a28f330f21e1da901ef8575509b56cede1a8f1d03e49fca802e561095c137c9ef23f3d6bd33d0e8a537bc1f93131ce7aafc92d4a9b0a80ade67249f22ff69d5 DIST git-htmldocs-2.42.0.tar.xz 1536088 BLAKE2B e40235fa9a75ca29179600a63d2573d8f458d75f1d475c1b689237280e7b8a5a67d020a6c125864695bdbb1c0f9c2930dc995dc9b27e59849103fb83524bf7d0 SHA512 d7b578b3bcde2f8f4aecd3c56ca314bbd862638fe3e629681f0f8535edc0302cafe882126b68c8aa6d651ac5e58b4ed2531268ef450ad393c61baf40a063cedf DIST git-htmldocs-2.42.1.tar.xz 1537056 BLAKE2B e46185f002271b89f7003f2eb0621de1f9da7f0aaa206be29a878a692fcb59c7c4f095f4bb5b4bc2082a2345117c031ddf9d3250de73760cf67fe6484d369136 SHA512 041ce0866d4608ad00806cdf0a5237303374986d332d137010df78142567d951c2f91c2e603dbf5043ebec2ea2a664f58a56d6645f465d855f5f878ac69ff64c +DIST git-htmldocs-2.43.0.tar.xz 1543348 BLAKE2B 456655da42ca5cf0e1422e636a6dd67f6068ae768f8a619e6f1aadbf2adee728aea7f3078bee286f31460c5f2bd5a77882d8bb8cb2f01d3641f56a4106105846 SHA512 0d3bf3522dfdae564fa11255f02a4e02c762edc2c637d439063659800b2f1535e077069e2012e2cdb8d1e985e6c8a6011ee336051801e646624216d845023218 DIST git-manpages-2.39.3.tar.xz 557428 BLAKE2B 4eb85035f7056a12c3f1276d26f99b3337b97721f8f4b0b3c74d2a484171bfdf74f566a03e175ba32b389c940ed7be66ce2933442ec77089d5db3aaeb2ed2557 SHA512 06414741667b990ff3a28f7cb29b502df3d4cc757d525438994af005c71d429ca969563a74d1d2b44185e5c40107ac8838b390835a8a947e542ce3636b43f98b DIST git-manpages-2.40.1.tar.xz 562772 BLAKE2B 091c907195b37ed4152698515528d7da27f8dbf2516915ae66ba6f81a64bbd9f2042544889fe655ea7447bd6f32adaf8daec9c02743587a84b090554ad58796b SHA512 4e75f5ae3786658d284ce8eae3133c01115e357cc0bd2c4c5bf4261196411da632f51c87ff6e4c1f4bc7adf7b7b4a33c4debe52bcd9b5d735aa70dd9614ad5bd DIST git-manpages-2.41.0.tar.xz 565060 BLAKE2B 082f2272314981b21606aef22bf18f0fe1d8a29fce0ce29e451cbad986e8f9c398906632b694de1b328accda61e85f25fd8875ee2e104cb9a7da8873d48e1495 SHA512 118afe9af79f2747c1f762b51fa2cdce7b46396ab4321f57826a351575acf30d9a486e2713e558cab6f6b353724cef3f0f1eab587b181f547324e96e3fee0b91 DIST git-manpages-2.42.0.tar.xz 567824 BLAKE2B 9e0d2519fd1c4d99e725f2316026639b3d99a02c4f58f8364b0d84b2c44a6cab9b9c8e1f5c56d031b78053de09be779a75982f7bf556c5403ebdecee024f9fad SHA512 02a03fd0c34058a986b586dab777567a24fccb99338d163fdc284898f4424bd109c3fed37cc4e510af6bdfefac82ec0c2753779c360952b1a34642b01f90d002 DIST git-manpages-2.42.1.tar.xz 567916 BLAKE2B b5b593e7efe783ba7e9e9fd82fddfb77396efae2abb72c513005a74bd3255c9662485dc71f20fe02d9c4308f45e130d7378c414abe8d193067b52e307823814f SHA512 708cf8fa512a3dfe91b86dfaa155f5d228b4f4948f851a52e83cd4523e5a399b3443c042c047f30d2db7d1d3fe5fc24f1c765b7adb28a69620be7a43c2ef0f6a +DIST git-manpages-2.43.0.tar.xz 570356 BLAKE2B 87d405f59ac600742546dfa97f9a723264b865301e1538a60bb8f985489a288982b682d0e5f784bd17f43287ad1f418b187de0b7b137d043520ea32481a44ae0 SHA512 a90e7fad0505843b4fa2e6a862f4acf4f777b0fdd86097c51bcba0c18daf81f4facf9ae3fee7cfae8c439a54dc3dbc476372b8926a738b9449550ee1f94a3c4a diff --git a/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.43.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.43.0.ebuild new file mode 100644 index 00000000000..4929730cbd3 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-vcs/git/git-2.43.0.ebuild @@ -0,0 +1,644 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +GENTOO_DEPEND_ON_PERL=no + +# bug #329479: git-remote-testgit is not multiple-version aware +PYTHON_COMPAT=( python3_{10..12} ) + +inherit toolchain-funcs perl-module bash-completion-r1 optfeature plocale python-single-r1 systemd + +PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN" + +if [[ ${PV} == *9999 ]]; then + EGIT_REPO_URI="https://git.kernel.org/pub/scm/git/git.git" + + inherit git-r3 + # Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches. + # See https://git-scm.com/docs/gitworkflows#_graduation + # In order of stability: + # 9999-r0: maint + # 9999-r1: master + # 9999-r2: next + # 9999-r3: seen + case ${PVR} in + 9999) EGIT_BRANCH=maint ;; + 9999-r1) EGIT_BRANCH=master ;; + 9999-r2) EGIT_BRANCH=next;; + 9999-r3) EGIT_BRANCH=seen ;; + esac +fi + +MY_PV="${PV/_rc/.rc}" +MY_P="${PN}-${MY_PV}" + +DOC_VER="${MY_PV}" + +DESCRIPTION="Stupid content tracker: distributed VCS designed for speed and efficiency" +HOMEPAGE="https://www.git-scm.com/" + +if [[ ${PV} != *9999 ]]; then + SRC_URI_SUFFIX="xz" + SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git" + + [[ ${PV/rc} != ${PV} ]] && SRC_URI_KORG+='/testing' + + SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}" + SRC_URI+=" ${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}" + SRC_URI+=" doc? ( ${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} )" + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + fi +fi + +S="${WORKDIR}"/${MY_P} + +LICENSE="GPL-2" +SLOT="0" +IUSE="+blksha1 +curl cgi doc keyring +gpg highlight +iconv mediawiki +nls +pcre perforce +perl +safe-directory selinux subversion tk +webdav xinetd cvs test" + +# Common to both DEPEND and RDEPEND +DEPEND=" + dev-libs/openssl:= + sys-libs/zlib + curl? ( + net-misc/curl + webdav? ( dev-libs/expat ) + ) + keyring? ( + app-crypt/libsecret + dev-libs/glib:2 + ) + iconv? ( virtual/libiconv ) + pcre? ( dev-libs/libpcre2:= ) + perl? ( dev-lang/perl:=[-build(-)] ) + tk? ( dev-lang/tk:= ) +" +RDEPEND=" + ${DEPEND} + gpg? ( app-crypt/gnupg ) + perl? ( + dev-perl/Error + dev-perl/MailTools + dev-perl/Authen-SASL + >=virtual/perl-libnet-3.110.0-r4[ssl] + cgi? ( + dev-perl/CGI + highlight? ( app-text/highlight ) + ) + cvs? ( + >=dev-vcs/cvsps-2.1:0 + dev-perl/DBI + dev-perl/DBD-SQLite + ) + mediawiki? ( + dev-perl/DateTime-Format-ISO8601 + dev-perl/HTML-Tree + dev-perl/MediaWiki-API + ) + subversion? ( + dev-vcs/subversion[-dso(-),perl] + dev-perl/libwww-perl + dev-perl/TermReadKey + ) + ) + perforce? ( ${PYTHON_DEPS} ) + selinux? ( sec-policy/selinux-git ) +" + +# This is how info docs are created with Git: +# .txt/asciidoc --(asciidoc)---------> .xml/docbook +# .xml/docbook --(docbook2texi.pl)--> .texi +# .texi --(makeinfo)---------> .info +BDEPEND=" + doc? ( + app-text/asciidoc + app-text/docbook2X + app-text/xmlto + sys-apps/texinfo + ) + keyring? ( virtual/pkgconfig ) + nls? ( sys-devel/gettext ) + test? ( app-crypt/gnupg ) +" + +# Live ebuild builds man pages and HTML docs, additionally +if [[ ${PV} == *9999 ]]; then + BDEPEND+=" app-text/asciidoc" +fi + +SITEFILE="50${PN}-gentoo.el" + +REQUIRED_USE=" + cgi? ( perl ) + cvs? ( perl ) + mediawiki? ( perl ) + perforce? ( ${PYTHON_REQUIRED_USE} ) + subversion? ( perl ) + webdav? ( curl ) +" + +RESTRICT="!test? ( test )" + +PATCHES=( + # Avoid automagic CVS, bug #350330 + "${FILESDIR}"/git-2.37.0_rc1-optional-cvs.patch + + # Make submodule output quiet + "${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch +) + +pkg_setup() { + if use subversion && has_version "dev-vcs/subversion[dso]" ; then + ewarn "Per Gentoo bugs #223747, #238586, when subversion is built" + ewarn "with USE=dso, there may be weird crashes in git-svn. You" + ewarn "have been warned!" + fi + + if use perforce ; then + python-single-r1_pkg_setup + fi +} + +# This is needed because for some obscure reasons future calls to make don't +# pick up these exports if we export them in src_unpack() +exportmakeopts() { + local extlibs myopts + + myopts=( + ASCIIDOC_NO_ROFF=YesPlease + + $(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease) + + $(usev elibc_musl NO_REGEX=NeedsStartEnd) + $(usev !cvs NO_CVS=YesPlease) + $(usev !iconv NO_ICONV=YesPlease) + $(usev !nls NO_GETTEXT=YesPlease) + $(usev !perforce NO_PYTHON=YesPlease) + $(usev !subversion NO_SVN_TESTS=YesPlease) + $(usev !tk NO_TCLTK=YesPlease) + ) + + if use blksha1 ; then + myopts+=( BLK_SHA1=YesPlease ) + fi + + if use curl ; then + use webdav || myopts+=( NO_EXPAT=YesPlease ) + else + myopts+=( NO_CURL=YesPlease ) + fi + + # Broken assumptions because of static build system + myopts+=( + NO_FINK=YesPlease + NO_DARWIN_PORTS=YesPlease + INSTALL=install + TAR=tar + SHELL_PATH="${EPREFIX}/bin/sh" + SANE_TOOL_PATH= + OLD_ICONV= + NO_EXTERNAL_GREP= + ) + + # Can't define this to null, since the entire makefile depends on it + sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die + + if use pcre; then + myopts+=( USE_LIBPCRE2=YesPlease ) + extlibs+=( -lpcre2-8 ) + fi + + if [[ ${CHOST} == *-solaris* ]]; then + myopts+=( + NEEDS_LIBICONV=YesPlease + HAVE_CLOCK_MONOTONIC=1 + ) + + if grep -Fq getdelim "${ESYSROOT}"/usr/include/stdio.h ; then + myopts+=( HAVE_GETDELIM=1 ) + fi + fi + + myopts+=( ASCIIDOC8=YesPlease ) + + export MY_MAKEOPTS="${myopts[@]}" + export EXTLIBS="${extlibs[@]}" +} + +src_unpack() { + if [[ ${PV} != *9999 ]] ; then + unpack ${MY_P}.tar.${SRC_URI_SUFFIX} + + cd "${S}" || die + unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX} + + if use doc ; then + pushd "${S}"/Documentation &>/dev/null || die + unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX} + popd &>/dev/null || die + fi + else + git-r3_src_unpack + #cp "${FILESDIR}"/GIT-VERSION-GEN . || die + fi + +} + +src_prepare() { + if ! use safe-directory ; then + # This patch neuters the "safe directory" detection. + # bugs #838271, #838223 + PATCHES+=( + "${FILESDIR}"/git-2.37.2-unsafe-directory.patch + ) + fi + + default + + if use prefix ; then + # bug #757309 + eapply "${FILESDIR}"/git-2.37.2-darwin-prefix-gettext.patch + fi + + sed -i \ + -e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \ + -e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \ + -e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \ + -e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \ + -e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + -e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \ + Makefile || die + + # Fix docbook2texi command + sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \ + Documentation/Makefile || die +} + +git_emake() { + # bug #320647: PYTHON_PATH + local PYTHON_PATH="" + use perforce && PYTHON_PATH="${PYTHON}" + + local mymakeargs=( + ${MY_MAKEOPTS} + + prefix="${EPREFIX}"/usr + htmldir="${EPREFIX}"/usr/share/doc/${PF}/html + perllibdir="$(use perl && perl_get_raw_vendorlib)" + sysconfdir="${EPREFIX}"/etc + + CC="$(tc-getCC)" + CFLAGS="${CFLAGS}" + PKG_CONFIG="$(tc-getPKG_CONFIG)" + + # TODO: --verbose? + GIT_TEST_OPTS="--no-color" + + OPTAR="$(tc-getAR)" + OPTCC="$(tc-getCC)" + OPTCFLAGS="${CFLAGS}" + OPTLDFLAGS="${LDFLAGS}" + + PERL_PATH="${EPREFIX}/usr/bin/perl" + PERL_MM_OPT="" + + PYTHON_PATH="${PYTHON_PATH}" + + V=1 + "$@" + ) + + emake "${mymakeargs[@]}" +} + +src_configure() { + exportmakeopts +} + +src_compile() { + git_emake + + if use perl && use cgi ; then + git_emake gitweb + fi + + if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then + git_emake -C contrib/credential/osxkeychain + fi + + pushd Documentation &>/dev/null || die + if [[ ${PV} == *9999 ]] ; then + git_emake man + if use doc ; then + git_emake info html + fi + else + if use doc ; then + git_emake info + fi + fi + popd &>/dev/null || die + + if use keyring ; then + git_emake -C contrib/credential/libsecret + fi + + pushd contrib/subtree &>/dev/null || die + git_emake git-subtree + # git-subtree.1 requires the full USE=doc dependency stack + use doc && git_emake git-subtree.html git-subtree.1 + popd &>/dev/null || die + + git_emake -C contrib/diff-highlight + + if use mediawiki ; then + git_emake -C contrib/mw-to-git + fi +} + +src_test() { + local disabled=( + # We make safe-directory optional + t0033-safe-directory.sh + ) + + local tests_cvs=( + t9200-git-cvsexportcommit.sh + t9400-git-cvsserver-server.sh + t9401-git-cvsserver-crlf.sh + t9402-git-cvsserver-refs.sh + t9600-cvsimport.sh + t9601-cvsimport-vendor-branch.sh + t9602-cvsimport-branches-tags.sh + t9603-cvsimport-patchsets.sh + t9604-cvsimport-timestamps.sh + ) + + local tests_perl=( + t3701-add-interactive.sh + t5502-quickfetch.sh + t5512-ls-remote.sh + t5520-pull.sh + t7106-reset-unborn-branch.sh + t7501-commit.sh + ) + # Bug #225601 - t0004 is not suitable for root perm + # Bug #219839 - t1004 is not suitable for root perm + # t0001-init.sh - check for init notices EPERM* fails + local tests_nonroot=( + t0001-init.sh + t0004-unwritable.sh + t0070-fundamental.sh + t1004-read-tree-m-u-wf.sh + t3700-add.sh + t7300-clean.sh + ) + # t9100 still fails with symlinks in SVN 1.7 + local test_svn=( t9100-git-svn-basic.sh ) + + # Unzip is used only for the testcase code, not by any normal parts of Git. + if ! has_version app-arch/unzip ; then + einfo "Disabling tar-tree tests" + disabled+=( t5000-tar-tree.sh ) + fi + + local cvs=0 + use cvs && let cvs=${cvs}+1 + if [[ ${EUID} -eq 0 ]] ; then + if [[ ${cvs} -eq 1 ]] ; then + ewarn "Skipping CVS tests because CVS does not work as root!" + ewarn "You should retest with FEATURES=userpriv!" + disabled+=( ${tests_cvs[@]} ) + fi + einfo "Skipping other tests that require being non-root" + disabled+=( ${tests_nonroot[@]} ) + else + if [[ ${cvs} -gt 0 ]] && has_version dev-vcs/cvs ; then + let cvs=${cvs}+1 + fi + + if [[ ${cvs} -gt 1 ]] && has_version "dev-vcs/cvs[server]" ; then + let cvs=${cvs}+1 + fi + + if [[ ${cvs} -lt 3 ]] ; then + einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])" + disabled+=( ${tests_cvs[@]} ) + fi + fi + + if ! use perl ; then + einfo "Disabling tests that need Perl" + disabled+=( ${tests_perl[@]} ) + fi + + einfo "Disabling tests that fail with SVN 1.7" + disabled+=( ${test_svn[@]} ) + + # Reset all previously disabled tests + pushd t &>/dev/null || die + local i + for i in *.sh.DISABLED ; do + [[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}" + done + einfo "Disabled tests:" + for i in ${disabled[@]} ; do + if [[ -f "${i}" ]] ; then + mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}" + fi + done + + # Avoid the test system removing the results because we want them ourselves + sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' -i Makefile || die + + # Clean old results first, must always run + nonfatal git_emake clean + popd &>/dev/null || die + + # Now run the tests, keep going if we hit an error, and don't terminate on + # failure + local rc + einfo "Start test run" + #MAKEOPTS=-j1 + nonfatal git_emake --keep-going test + rc=$? + + # Display nice results, now print the results + pushd t &>/dev/null || die + nonfatal git_emake aggregate-results + + # And bail if there was a problem + [[ ${rc} -eq 0 ]] || die "Tests failed. Please file a bug!" +} + +src_install() { + git_emake DESTDIR="${D}" install + + if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then + dobin contrib/credential/osxkeychain/git-credential-osxkeychain + fi + + # Depending on the tarball and manual rebuild of the documentation, the + # manpages may exist in either OR both of these directories. + find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157] + find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157] + dodoc README* Documentation/{SubmittingPatches,CodingGuidelines} + use doc && dodir /usr/share/doc/${PF}/html + local d + for d in / /howto/ /technical/ ; do + docinto ${d} + dodoc Documentation${d}*.txt + if use doc ; then + docinto ${d}/html + dodoc Documentation${d}*.html + fi + done + docinto / + # Upstream does not ship this pre-built :-( + use doc && doinfo Documentation/{git,gitman}.info + + newbashcomp contrib/completion/git-completion.bash ${PN} + bashcomp_alias git gitk + # Not really a bash-completion file (bug #477920) + # but still needed uncompressed (bug #507480) + insinto /usr/share/${PN} + doins contrib/completion/git-prompt.sh + + #dobin contrib/fast-import/git-p4 # Moved upstream + #dodoc contrib/fast-import/git-p4.txt # Moved upstream + newbin contrib/fast-import/import-tars.perl import-tars + exeinto /usr/libexec/git-core/ + newexe contrib/git-resurrect.sh git-resurrect + + # git-subtree + pushd contrib/subtree &>/dev/null || die + git_emake DESTDIR="${D}" install + if use doc ; then + # Do not move git subtree install-man outside USE=doc! + git_emake DESTDIR="${D}" install-man install-html + fi + newdoc README README.git-subtree + dodoc git-subtree.txt + popd &>/dev/null || die + + if use mediawiki ; then + git_emake -C contrib/mw-to-git DESTDIR="${D}" install + fi + + # diff-highlight + dobin contrib/diff-highlight/diff-highlight + newdoc contrib/diff-highlight/README README.diff-highlight + + # git-jump + exeinto /usr/libexec/git-core/ + doexe contrib/git-jump/git-jump + newdoc contrib/git-jump/README git-jump.txt + + # git-contacts + exeinto /usr/libexec/git-core/ + doexe contrib/contacts/git-contacts + dodoc contrib/contacts/git-contacts.txt + + if use keyring ; then + pushd contrib/credential/libsecret &>/dev/null || die + dobin git-credential-libsecret + popd &>/dev/null || die + fi + + dodir /usr/share/${PN}/contrib + # The following are excluded: + # completion - installed above + # diff-highlight - done above + # emacs - removed upstream + # examples - these are stuff that is not used in Git anymore actually + # git-jump - done above + # gitview - installed above + # p4import - excluded because fast-import has a better one + # patches - stuff the Git guys made to go upstream to other places + # persistent-https - TODO + # mw-to-git - TODO + # subtree - build seperately + # svnimport - use git-svn + # thunderbird-patch-inline - fixes thunderbird + local contrib_objects=( + buildsystems + fast-import + hg-to-git + hooks + remotes2config.sh + rerere-train.sh + stats + workdir + ) + local i + for i in "${contrib_objects[@]}" ; do + cp -rf "${S}"/contrib/${i} "${ED}"/usr/share/${PN}/contrib || die "Failed contrib ${i}" + done + + if use perl && use cgi ; then + # We used to install in /usr/share/${PN}/gitweb + # but upstream installs in /usr/share/gitweb + # so we will install a symlink and use their location for compat with other + # distros + dosym ../gitweb /usr/share/${PN}/gitweb + + # INSTALL discusses configuration issues, not just installation + docinto / + newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb + newdoc "${S}"/gitweb/README README.gitweb + + for d in "${ED}"/usr/lib{,64}/perl5/ ; do + if [[ -d "${d}" ]] ; then + find "${d}" -name .packlist -delete || die + fi + done + else + rm -rf "${ED}"/usr/share/gitweb + fi + + if ! use subversion ; then + rm -f "${ED}"/usr/libexec/git-core/git-svn \ + "${ED}"/usr/share/man/man1/git-svn.1* + fi + + if use xinetd ; then + insinto /etc/xinetd.d + newins "${FILESDIR}"/git-daemon.xinetd git-daemon + fi + + if ! use prefix ; then + newinitd "${FILESDIR}"/git-daemon-r2.initd git-daemon + newconfd "${FILESDIR}"/git-daemon.confd git-daemon + systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service" + systemd_dounit "${FILESDIR}/git-daemon.socket" + fi + + perl_delete_localpod + + # Remove disabled linguas + # we could remove sources in src_prepare, but install does not + # handle missing locale dir well + rm_loc() { + if [[ -e "${ED}/usr/share/locale/${1}" ]] ; then + rm -r "${ED}/usr/share/locale/${1}" || die + fi + } + plocale_for_each_disabled_locale rm_loc +} + +pkg_postinst() { + if [[ -z ${REPLACING_VERSIONS} ]] ; then + elog "Please read /usr/share/bash-completion/completions/git for Git bash command" + elog "completion." + elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt" + elog "Note that the prompt bash code is now in that separate script" + fi + + optfeature_header "Some scripts require additional dependencies:" + optfeature git-quiltimport dev-util/quilt + optfeature git-instaweb www-servers/lighttpd www-servers/apache www-servers/nginx +} diff --git a/sdk_container/src/third_party/portage-stable/eclass/acct-user.eclass b/sdk_container/src/third_party/portage-stable/eclass/acct-user.eclass index f658aa0eabc..66a4d666788 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/acct-user.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/acct-user.eclass @@ -431,6 +431,22 @@ acct-user_pkg_postinst() { opts+=( --prefix "${ROOT}" ) fi + local g old_groups del_groups="" + old_groups=$(egetgroups "${ACCT_USER_NAME}") + for g in ${old_groups//,/ }; do + has "${g}" "${groups[@]}" || del_groups+="${del_groups:+, }${g}" + done + if [[ -n ${del_groups} ]]; then + local override_name=${ACCT_USER_NAME^^} + override_name=${override_name//-/_} + ewarn "Removing user ${ACCT_USER_NAME} from group(s): ${del_groups}" + ewarn "To retain the user's group membership in the local system" + ewarn "config, override with ACCT_USER_${override_name}_GROUPS or" + ewarn "ACCT_USER_${override_name}_GROUPS_ADD in make.conf." + ewarn "Documentation reference:" + ewarn "https://wiki.gentoo.org/wiki/Practical_guide_to_the_GLEP_81_migration#Override_user_groups" + fi + elog "Updating user ${ACCT_USER_NAME}" # usermod outputs a warning if unlocking the account would result in an # empty password. Hide stderr in a text file and display it if usermod fails. diff --git a/sdk_container/src/third_party/portage-stable/eclass/distutils-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/distutils-r1.eclass index 1cc91110dcc..0a7b18e4a1a 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/distutils-r1.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/distutils-r1.eclass @@ -608,18 +608,28 @@ distutils_enable_tests() { esac [[ ${#} -eq 1 ]] || die "${FUNCNAME} takes exactly one argument: test-runner" - local test_pkg + + local test_deps=${RDEPEND} + local test_pkgs case ${1} in nose) - test_pkg=">=dev-python/nose-1.3.7_p20221026" + test_pkgs='>=dev-python/nose-1.3.7_p20221026[${PYTHON_USEDEP}]' ;; pytest) - test_pkg=">=dev-python/pytest-7.3.1" + test_pkgs='>=dev-python/pytest-7.3.1[${PYTHON_USEDEP}]' + if [[ ${EPYTEST_XDIST} ]]; then + test_pkgs+=' dev-python/pytest-xdist[${PYTHON_USEDEP}]' + fi ;; setup.py) ;; unittest) - # dep handled below + # unittest-or-fail is needed in py<3.12 + test_deps+=" + $(python_gen_cond_dep ' + dev-python/unittest-or-fail[${PYTHON_USEDEP}] + ' 3.10 3.11) + " ;; *) die "${FUNCNAME}: unsupported argument: ${1}" @@ -628,22 +638,14 @@ distutils_enable_tests() { _DISTUTILS_TEST_RUNNER=${1} python_test() { distutils-r1_python_test; } - local test_deps=${RDEPEND} - if [[ -n ${test_pkg} ]]; then + if [[ -n ${test_pkgs} ]]; then if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then - test_deps+=" ${test_pkg}[${PYTHON_USEDEP}]" + test_deps+=" ${test_pkgs//'${PYTHON_USEDEP}'/${PYTHON_USEDEP}}" else test_deps+=" $(python_gen_cond_dep " - ${test_pkg}[\${PYTHON_USEDEP}] + ${test_pkgs} ")" fi - elif [[ ${1} == unittest ]]; then - # unittest-or-fail is needed in py<3.12 - test_deps+=" - $(python_gen_cond_dep ' - dev-python/unittest-or-fail[${PYTHON_USEDEP}] - ' 3.{9..11}) - " fi if [[ -n ${test_deps} ]]; then IUSE+=" test" @@ -1811,6 +1813,9 @@ distutils-r1_run_phase() { local -x CYTHON_FORCE_REGEN=1 fi + # silence warnings when pydevd is loaded on Python 3.11+ + local -x PYDEVD_DISABLE_FILE_VALIDATION=1 + # Rust extensions are incompatible with C/C++ LTO compiler # see e.g. https://bugs.gentoo.org/910220 if has cargo ${INHERITED}; then diff --git a/sdk_container/src/third_party/portage-stable/eclass/flag-o-matic.eclass b/sdk_container/src/third_party/portage-stable/eclass/flag-o-matic.eclass index 58a14178f38..d377568327e 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/flag-o-matic.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/flag-o-matic.eclass @@ -89,7 +89,7 @@ _setup-allowed-flags() { '-fdiagnostics*' '-fplugin*' '-W*' -w - # CPPFLAGS and LDFLAGS + # CPPFLAGS and LDFLAGS (TODO: Allow -Wa,*?) '-[DUILR]*' '-Wl,*' # Linker choice flag @@ -114,8 +114,15 @@ _setup-allowed-flags() { -mno-faster-structs -mfaster-structs -m32 -m64 -mx32 '-mabi=*' -mlittle-endian -mbig-endian -EL -EB -fPIC -mlive-g0 '-mcmodel=*' -mstack-bias -mno-stack-bias -msecure-plt '-m*-toc' '-mfloat-abi=*' - -mfix-r4000 -mno-fix-r4000 -mfix-r4400 -mno-fix-r4400 - -mfix-rm7000 -mno-fix-rm7000 -mfix-r10000 -mno-fix-r10000 + + # MIPS errata + -mfix-24k -mno-fix-24k -mfix-r4000 -mno-fix-r4000 + -mfix-r4400 -mno-fix-r4400 -mfix-r5900 -mno-fix-r5900 + -mfix-rm7000 -mno-fix-rm7000 -mfix-r9500 -mno-fix-r9500 + -mfix-r10000 -mno-fix-r10000 -mfix-vr4120 -mno-fix-vr4120 + -mfix-vr4130 -mfix-sb1 -mno-fix-sb1 + '-Wa,-mfix-loongson2f-nop' + '-mr10k-cache-barrier=*' -mthumb -marm # needed for arm64 (and in particular SCS) diff --git a/sdk_container/src/third_party/portage-stable/eclass/git-r3.eclass b/sdk_container/src/third_party/portage-stable/eclass/git-r3.eclass index 83c5ab590c3..a0884536429 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/git-r3.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/git-r3.eclass @@ -120,6 +120,14 @@ fi # usage. : "${EGIT_LFS_CLONE_TYPE:=shallow}" +# @ECLASS_VARIABLE: EVCS_STORE_DIRS +# @OUTPUT_VARIABLE +# @DESCRIPTION: +# Record of names of all the repositories directories being cloned in the git3_src. +# This is useful in the case of ebuild that fetch multiple repos and +# it would be used by eclean to clean them up. +EVCS_STORE_DIRS=() + # @ECLASS_VARIABLE: EGIT3_STORE_DIR # @USER_VARIABLE # @DEFAULT_UNSET @@ -360,6 +368,8 @@ _git-r3_set_gitdir() { GIT_DIR=${EGIT3_STORE_DIR}/${repo_name} + EVCS_STORE_DIRS+=( "${GIT_DIR}" ) + if [[ ! -d ${EGIT3_STORE_DIR} && ! ${EVCS_OFFLINE} ]]; then ( addwrite / diff --git a/sdk_container/src/third_party/portage-stable/eclass/java-utils-2.eclass b/sdk_container/src/third_party/portage-stable/eclass/java-utils-2.eclass index fd1f708b86b..129402b256d 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/java-utils-2.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/java-utils-2.eclass @@ -2451,6 +2451,9 @@ java-pkg_do_write_() { echo "SLOT=\"${SLOT}\"" echo "CATEGORY=\"${CATEGORY}\"" echo "PVR=\"${PVR}\"" + # Record LIBDIR so that gjl can set java.library.path + # accordingly. Bug #917326. + echo "LIBDIR=\"$(get_libdir)\"" [[ -n "${JAVA_PKG_CLASSPATH}" ]] && echo "CLASSPATH=\"${JAVA_PKG_CLASSPATH}\"" [[ -n "${JAVA_PKG_LIBRARY}" ]] && echo "LIBRARY_PATH=\"${JAVA_PKG_LIBRARY}\"" diff --git a/sdk_container/src/third_party/portage-stable/eclass/linux-mod-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/linux-mod-r1.eclass new file mode 100644 index 00000000000..858fb062807 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/eclass/linux-mod-r1.eclass @@ -0,0 +1,1252 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# @ECLASS: linux-mod-r1.eclass +# @MAINTAINER: +# Ionen Wolkens +# Gentoo Kernel project +# @AUTHOR: +# Ionen Wolkens +# @SUPPORTED_EAPIS: 8 +# @PROVIDES: linux-info +# @BLURB: Functions for installing out-of-tree Linux kernel modules +# @DESCRIPTION: +# See the linux-mod-r1_src_compile function documentation for in-depth +# usage, and see the example further down for a quick overview. +# +# @SUBSECTION linux-mod -> linux-mod-r1 migration notes +# 0. Define a src_compile if missing, local variables below go there. +# 1. MODULE_NAMES="name(libdir:srcdir:objdir)" +# BUILD_TARGETS="target" +# -> local modlist=( name=libdir:srcdir:objdir:target(s) ) +# - try without :target first, it is now almost always unnecessary +# - srcdir defaults to the current directory, and note that paths +# can be relative to that (should typically *not* pass ${S}) +# 2. BUILD_PARAMS and/or BUILD_FIXES +# -> local modargs=( VAR="${KV_OUT_DIR}" ... ) +# - CC/LD and similar are unneeded, always passed (V=1 too) +# - eval (aka eval "${BUILD_PARAMS}") is /not/ used for this anymore +# 3. s/linux-mod_/linux-mod-r1/g +# 4. _preinst+_postrm can be dropped, keep linux-mod-r1_pkg_postinst +# 5. linux-mod-r1_src_install now runs einstalldocs, adjust as needed +# 6. if *not* using linux-mod-r1_src_compile/install, then refer to +# the eclass' 2nd example and ensure using modules_post_process +# 7. If any, clang<->gcc switching custom workarounds can be dropped +# 8. See MODULES_KERNEL_MAX/_MIN if had or need kernel version checks. +# +# Not an exhaustive list, verify that no installed files are missing +# after. Look for "command not found" errors in the build log too. +# +# Revision bumps are not strictly needed to migrate unless want to +# keep the old as fallback for regressions, kernel upgrades or the +# new IUSE=+strip will typically cause rebuilds either way. +# +# @EXAMPLE: +# +# If source directory S had a layout such as: +# - Makefile (builds a gentoo.ko in current directory) +# - gamepad/Makefile (want to install to kernel/drivers/hid) +# - gamepad/obj/ (the built gamepad.ko ends up here) +# +# ...and the Makefile uses the NIH_SOURCE variable to find where the +# kernel build directory is (aka KV_OUT_DIR, see linux-info.eclass) +# +# then: +# +# @CODE +# CONFIG_CHECK="INPUT_FF_MEMLESS" # gamepad needs it to rumble +# MODULES_KERNEL_MIN=5.4 # needs features introduced in 5.4 +# +# src_compile() { +# local modlist=( +# gentoo +# gamepad=kernel/drivers/hid:gamepad:gamepad/obj +# ) +# local modargs=( NIH_SOURCE="${KV_OUT_DIR}" ) +# +# linux-mod-r1_src_compile +# } +# @CODE +# +# Alternatively, if using the package's build system directly is +# more convenient, a typical example could be: +# +# @CODE +# src_compile() { +# MODULES_MAKEARGS+=( +# NIH_KDIR="${KV_OUT_DIR}" +# NIH_KSRC="${KV_DIR}" +# ) +# +# emake "${MODULES_MAKEARGS[@]}" +# } +# +# src_install() { +# emake "${MODULES_MAKEARGS[@]}" DESTDIR="${ED}" install +# modules_post_process # strip->sign->compress +# +# einstalldocs +# } +# @CODE +# +# Some extra make variables may be of interest: +# - INSTALL_MOD_PATH: sometime used as DESTDIR +# - INSTALL_MOD_DIR: equivalent to linux_moduleinto +# +# MODULES_MAKEARGS is set by the eclass to handle toolchain and, +# when installing, also attempts to disable automatic stripping, +# compression, signing, and depmod to let the eclass handle it. +# +# linux_domodule can alternatively be used to install a single module. +# +# (remember to ensure that linux-mod-r1_pkg_postinst is ran for depmod) + +case ${EAPI} in + 8) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; +esac + +if [[ ! ${_LINUX_MOD_R1_ECLASS} ]]; then +_LINUX_MOD_R1_ECLASS=1 + +inherit edo linux-info multiprocessing toolchain-funcs + +IUSE="dist-kernel modules-sign +strip ${MODULES_OPTIONAL_IUSE}" + +RDEPEND=" + sys-apps/kmod[tools] + dist-kernel? ( virtual/dist-kernel:= ) +" +DEPEND=" + virtual/linux-sources +" +BDEPEND=" + sys-apps/kmod[tools] + modules-sign? ( + dev-libs/openssl + virtual/pkgconfig + ) +" +IDEPEND=" + sys-apps/kmod[tools] +" + +if [[ -n ${MODULES_OPTIONAL_IUSE} ]]; then + : "${MODULES_OPTIONAL_IUSE#+}? ( | )" + RDEPEND=${_/|/${RDEPEND}} DEPEND=${_/|/${DEPEND}} \ + BDEPEND=${_/|/${BDEPEND}} IDEPEND=${_/|/${IDEPEND}} +fi + +# @ECLASS_VARIABLE: KERNEL_CHOST +# @USER_VARIABLE +# @DEFAULT_UNSET +# @DESCRIPTION: +# Can be set to the CHOST value to use when selecting the toolchain +# for building kernel modules. This is similar to setting the kernel +# build system's CROSS_COMPILE variable minus the trailing dash. +# +# If this does not auto-select the desired toolchain, finer control +# can be achieved by setting the not directly documented (but valid) +# variables: +# +# KERNEL_{CC,CXX,LD,AR,NM,OBJCOPY,OBJDUMP,READELF,STRIP} +# +# If in doubt, do not set any of this. +# +# Default if unset: auto-detection, typically same as the current CHOST + +# @ECLASS_VARIABLE: MODULES_EXTRA_EMAKE +# @USER_VARIABLE +# @DEFAULT_UNSET +# @DESCRIPTION: +# Extra arguments to pass to emake when building modules. +# Can contain arguments with quoted spaces, e.g. +# @CODE +# ..._EMAKE="KCFLAGS='-fzomg-optimize -fsuper-strict-aliasing' ..." +# @CODE + +# @ECLASS_VARIABLE: MODULES_I_WANT_FULL_CONTROL +# @USER_VARIABLE +# @DEFAULT_UNSET +# @DESCRIPTION: +# When set to a non-empty value, disables passing most of the eclass' +# toolchain defaults to emake when building modules. Basic eclass +# requirements, ebuilds' modargs, and users' MODULES_EXTRA_EMAKE are +# still used. +# +# Primarily intended for expert users with modified kernel Makefiles +# that want the Makefile's values to be used by default. +# +# May want to look at KERNEL_CHOST before considering this. + +# @ECLASS_VARIABLE: MODULES_SIGN_HASH +# @USER_VARIABLE +# @DEFAULT_UNSET +# @DESCRIPTION: +# Used with USE=modules-sign. Can be set to hash algorithm to use +# during signature generation. +# +# Rather than set this, it is recommended to select using the kernel's +# configuration to ensure proper support (e.g. CONFIG_MODULE_SIG_SHA256), +# and then it will be auto-detected here. +# +# Valid values: sha512,sha384,sha256,sha224,sha1 +# +# Default if unset: kernel CONFIG_MODULE_SIG_HASH's value + +# @ECLASS_VARIABLE: MODULES_SIGN_KEY +# @USER_VARIABLE +# @DEFAULT_UNSET +# @DESCRIPTION: +# Used with USE=modules-sign. Can be set to the path of the private +# key in PEM format to use, or a PKCS#11 URI. +# +# If path is relative (e.g. "certs/name.pem"), it is assumed to be +# relative to the kernel build directory being used. +# +# If the key requires a passphrase or PIN, the used kernel sign-file +# utility recognizes the KBUILD_SIGN_PIN environment variable. Be +# warned that the package manager may store this value in binary +# packages, database files, temporary files, and possibly logs. This +# eclass unsets the variable after use to mitigate the issue (notably +# for shared binary packages), but use this with care. +# +# Default if unset: kernel CONFIG_MODULE_SIG_KEY's value which itself +# defaults to certs/signing_key.pem + +# @ECLASS_VARIABLE: MODULES_SIGN_CERT +# @USER_VARIABLE +# @DESCRIPTION: +# Used with USE=modules-sign. Can be set to the path of the X.509 +# public key certificate to use. +# +# If path is relative (e.g. "certs/name.x509"), it is assumed to be +# relative to the kernel build directory being used. +: "${MODULES_SIGN_CERT:=certs/signing_key.x509}" + +# @ECLASS_VARIABLE: MODULES_KERNEL_MAX +# @DEFAULT_UNSET +# @DESCRIPTION: +# If set to a kernel version (format: 1, 1.2, or 1.2.3), will print a +# warning if the used version is greater than (ver_test -gt) to this +# value using the same amount of version components (i.e. MAX=1.2 +# allows 1.2.3, but MAX=1.2.2 does not). +# +# This should *only* be used for modules that are known to break +# frequently on kernel upgrades. If setting this to a non-LTS kernel, +# then should also take care to test and update this value regularly +# with new major kernel releases not to let the warning become stale +# and ignored by users. +# +# Not fatal to allow users to try or self-patch easily, but the (large) +# warning is difficult to miss. If need a fatal check for more serious +# issues (e.g. runtime filesystem corruption), please do it manually. +# +# This is intended to reduce the amount of bug reports for recurring +# expected issues that can be easily mitigated by using LTS kernels +# and waiting for new releases. +# +# If used, must be set before linux-mod-r1_pkg_setup is called. + +# @ECLASS_VARIABLE: MODULES_KERNEL_MIN +# @DEFAULT_UNSET +# @DESCRIPTION: +# If set to a kernel version (format: 1, 1.2, or 1.2.3), will abort if +# the used version is less than (ver_test -lt) this value. +# +# Should only be used if known broken, or if upstream recommends a sane +# minimum. Not particularly necessary for kernels that are no longer +# in the tree. +# +# If used, must be set before linux-mod-r1_pkg_setup is called. + +# @ECLASS_VARIABLE: MODULES_OPTIONAL_IUSE +# @PRE_INHERIT +# @DEFAULT_UNSET +# @DESCRIPTION: +# May contain a single flag to be added to IUSE optionally prefixed +# with a + sign to enable it by default. Doing so makes *all* of +# linux-mod-r1's functions and dependencies a no-op unless the flag +# is enabled. This includes phases, e.g. linux-mod-r1_pkg_setup will +# not process CONFIG_CHECK unless the flag is set. +# +# The typical recommended value is "+modules" (global IUSE). +# +# Note that modules being optional can be useful even if user space +# tools require them (e.g. installing in a chroot or prefix when the +# modules are loaded on the host, saves setting up linux sources). +# However, if tools are non-trivial to build, it may be preferable +# to split into two packages than use this variable due to requiring +# rebuilds every kernel upgrades. + +# @ECLASS_VARIABLE: MODULES_MAKEARGS +# @OUTPUT_VARIABLE +# @DESCRIPTION: +# Will be set after linux-mod-r1_pkg_setup has been called. Contains +# arguments that should be passed to emake when building or installing +# modules. +# +# Modifying this variable is acceptable (e.g. to append kernel source +# arguments) but, if using linux-mod-r1_src_compile, setting modargs +# is the intended method seen as cleaner and less error-prone. + +# @FUNCTION: linux-mod-r1_pkg_setup +# @DESCRIPTION: +# Required before using other functions from this eclass, and will: +# 1. run linux-info_pkg_setup (see linux-info.eclass) +# -> implies processing CONFIG_CHECK, and providing KV_ variables +# (MODULES and TRIM_UNUSED_KSYMS are always checked) +# 2. prepare toolchain to match the kernel +# -> sets KERNEL_{CHOST,CC,CXX,LD,AR,NM,OBJCOPY,OBJDUMP,READELF,STRIP} +# -> also sets MODULES_MAKEARGS array with, e.g. CC="${KERNEL_CC}" +# (normally these should not be used directly, for custom builds) +# 3. perform various sanity checks to fail early on issues +linux-mod-r1_pkg_setup() { + debug-print-function ${FUNCNAME[0]} "${@}" + [[ ${MERGE_TYPE} != binary ]] || return 0 + _MODULES_GLOBAL[ran:pkg_setup]=1 + _modules_check_function ${#} 0 0 || return 0 + _modules_check_migration + + _modules_prepare_kernel + _modules_prepare_sign + _modules_prepare_toolchain + + _modules_set_makeargs + + _modules_sanity_gccplugins +} + +# @FUNCTION: linux-mod-r1_src_compile +# @DESCRIPTION: +# Builds modules, see the eclass' example for a quick overview. +# Uses the variables modlist and modargs as described below: +# +# * local modlist=( ... ) - list of modules to build, set as: +# +# module-name=install-dir:source-dir:build-dir:make-target +# +# > module-name: Resulting name, aka .ko (required). +# +# > install-dir: Kernel modules sub-directory to install the module +# to (/lib/modules/version//name.ko). Will be used when +# run linux-mod-r1_src_install. May want to consider the values of +# INSTALL_MOD_DIR(Makefile) or DEST_MODULE_LOCATION(dkms.conf) if it +# exists, but it can be anything. +# -> Default: extra +# +# Warning: Changing this location may leave stale modules until a +# kernel upgrade as the package manager does not typically delete +# old modules and only does overwrite on rebuilds. +# +# > source-dir: Directory containing the Makefile to build the module. +# Path can be relative to the current directory or absolute. +# -> Default: current directory +# +# > build-dir: Directory that will hold the built module-name.ko. +# -> Default: same as source-dir's value +# +# > make-target: Almost always unneeded but, if defaults are not right, +# then can specify the Makefile's target(s) to build the module/extras. +# Multiple targets can be used with spaces, e.g. :"first second". +# -> Default: specially tries modules, module, .ko, default, +# all, empty target, and runs the first found usable +# +# Missing elements results in defaults being used, e.g. this is valid: +# modlist=( name1 name2=:source name3=install::build ) +# +# * local modargs=( ... ) - extra arguments to pass to emake +# +# Makefile should notably be inspected for which variable it uses +# to find the kernel's build directory then, e.g. KDIR="${KV_OUT_DIR}" +# as appropriate. Note that typically want to pass KV_OUT_DIR(build) +# rather than KV_DIR(sources) if not both. This allows users to do +# out-of-source kernel builds and still build modules. +# +# Passing common toolchain variables such as CC or LD is not needed +# here as they are passed by default. +# +# --- +# +# Allowed to be called multiple times with a different modlist if need +# different make arguments per modules or intermediate steps -- albeit, +# if atypical, may want to build manually (see eclass' example). +linux-mod-r1_src_compile() { + debug-print-function ${FUNCNAME[0]} "${@}" + _modules_check_function ${#} 0 0 || return 0 + + [[ ${modlist@a} == *a* && ${#modlist[@]} -gt 0 ]] || + die "${FUNCNAME[0]} was called without a 'modlist' array" + + # run this again to verify built files access with src_compile's user + _modules_sanity_kernelbuilt + + local -a emakeargs=( "${MODULES_MAKEARGS[@]}" ) + [[ ${modargs@a} == *a* ]] && emakeargs+=( "${modargs[@]}" ) + + local -A built=() + local build mod name target + for mod in "${modlist[@]}"; do + # note modlist was not made an associative array ([name]=) to preserve + # ordering, but is still using = to improve readability + name=${mod%%=*} + [[ -n ${name} && ${name} != *:* ]] || die "invalid mod entry '${mod}'" + + # 0:install-dir 1:source-dir 2:build-dir 3:make-target(s) + mod=${mod#"${name}"} + IFS=: read -ra mod <<<"${mod#=}" + [[ ${#mod[@]} -le 4 ]] || die "too many ':' in ${name}'s modlist" + + [[ ${mod[1]:=${PWD}} != /* ]] && mod[1]=${PWD}/${mod[1]} + [[ ${mod[2]:=${mod[1]}} != /* ]] && mod[2]=${PWD}/${mod[2]} + _MODULES_INSTALL[${mod[2]}/${name}.ko]=${mod[0]:-extra} + + pushd "${mod[1]}" >/dev/null || die + + if [[ -z ${mod[3]} ]]; then + # guess between commonly used targets if none given, fallback to + # an empty target without trying to see the error output + for target in module{s,} "${name}".ko default all; do + nonfatal emake "${emakeargs[@]}" -q "${target}" &>/dev/null + if [[ ${?} -eq 1 ]]; then + mod[3]=${target} + break + fi + done + fi + + # sometime modules are all from same source dir and built all at once, + # make will not rebuild either way but can skip the unnecessary noise + build= + for target in ${mod[3]:-&}; do + if ! has "${target}" ${built[${mod[1]}]}; then + build=1 + built[${mod[1]}]+=" ${target} " + fi + done + + if [[ ${build} ]]; then + einfo "Building ${name} module in ${mod[1]} ..." + + # allow word splitting for rare cases of multiple targets + emake "${emakeargs[@]}" ${mod[3]} + else + einfo "Building ${name} module in ${mod[1]} ... already done." + fi + + popd >/dev/null || die + done +} + +# @FUNCTION: linux-mod-r1_src_install +# @DESCRIPTION: +# Installs modules built by linux-mod-r1_src_compile using +# linux_domodule, then runs modules_post_process and einstalldocs. +linux-mod-r1_src_install() { + debug-print-function ${FUNCNAME[0]} "${@}" + _modules_check_function ${#} 0 0 || return 0 + + (( ${#_MODULES_INSTALL[@]} )) || + die "${FUNCNAME[0]} was called without running linux-mod-r1_src_compile" + + ( + for mod in "${!_MODULES_INSTALL[@]}"; do + linux_moduleinto "${_MODULES_INSTALL[${mod}]}" + linux_domodule "${mod}" + done + ) + + modules_post_process + + einstalldocs +} + +# @FUNCTION: linux-mod-r1_pkg_postinst +# @DESCRIPTION: +# Updates module dependencies using depmod. +linux-mod-r1_pkg_postinst() { + debug-print-function ${FUNCNAME[0]} "${@}" + _modules_check_function ${#} 0 0 || return 0 + + _modules_update_depmod + + # post_process ensures modules were installed and that the eclass' USE + # are likely not no-ops (unfortunately postinst itself may be missed) + [[ -v _MODULES_GLOBAL[ran:post_process] ]] || + eqawarn "QA Notice: neither linux-mod-r1_src_install nor modules_post_process were used" +} + +# @FUNCTION: linux_domodule +# @USAGE: ... +# @DESCRIPTION: +# Installs Linux modules (.ko files). +# +# See also linux_moduleinto. +linux_domodule() { + debug-print-function ${FUNCNAME[0]} "${@}" + _modules_check_function ${#} 1 '' "..." || return 0 + ( + # linux-mod-r0 formerly supported INSTALL_MOD_PATH (bug #642240), but + # this been judged messy to integrate consistently as not everything + # uses this function and build systems sometime mix it with DESTDIR + # (try ROOT if need to install somewhere else instead) + insinto "/lib/modules/${KV_FULL}/${_MODULES_GLOBAL[moduleinto]:-extra}" + doins "${@}" + ) +} + +# @FUNCTION: linux_moduleinto +# @USAGE: +# @DESCRIPTION: +# Directory to install modules into when calling linux_domodule. +# Relative to kernel modules path as in: +# ${ED}/lib/modules/${KV_FULL}/ +# +# Can contain subdirectories, e.g. kernel/fs. +# +# If not called, defaults to "extra". On the kernel build system, +# this is like setting INSTALL_MOD_DIR which has the same default +# for external modules. +linux_moduleinto() { + debug-print-function ${FUNCNAME[0]} "${@}" + _modules_check_function ${#} 1 1 "" || return 0 + _MODULES_GLOBAL[moduleinto]=${1} +} + +# @FUNCTION: modules_post_process +# @USAGE: [] +# @DESCRIPTION: +# Strip, sign, verify, and compress all .ko modules found under +# . Should typically *not* be called directly as it will +# be run by linux-mod-r1_src_install. This is intended for use +# when modules were installed some other way. +# +# should exist under ${ED}. +# Defaults to /lib/modules/${KV_FULL}. +# +# Filenames may change due to compression, so any operations on +# these should be performed prior. +# +# Warning: This will abort if no modules are found, which can happen +# if modules were unexpectedly pre-compressed possibly due to using +# make install without passing MODULES_MAKEARGS to disable it. +modules_post_process() { + debug-print-function ${FUNCNAME[0]} "${@}" + _modules_check_function ${#} 0 1 '[]' || return 0 + [[ ${EBUILD_PHASE} == install ]] || + die "${FUNCNAME[0]} can only be called in the src_install phase" + + local path=${ED}${1-/lib/modules/${KV_FULL}} + local -a mods + [[ -d ${path} ]] && mapfile -td '' mods < <( + find "${path}" -type f -name '*.ko' -print0 || die + ) + (( ${#mods[@]} )) || + die "${FUNCNAME[0]} was called with no installed modules under ${path}" + + # TODO?: find way for sane use with dracut (its 90kernel-modules-extra + # parses depmod.d files directly and assumes should include its modules + # which can lead to unnecessarily increased size or stale modules) +# _modules_process_depmod.d "${mods[@]#"${path}/"}" + + _modules_process_strip "${mods[@]}" + _modules_process_sign "${mods[@]}" + _modules_sanity_modversion "${mods[@]}" # after strip/sign in case broke it + _modules_process_compress "${mods[@]}" + + _MODULES_GLOBAL[ran:post_process]=1 +} + +# @ECLASS_VARIABLE: _MODULES_GLOBAL +# @INTERNAL +# @DESCRIPTION: +# General use associative array to avoid defining separate globals. +declare -gA _MODULES_GLOBAL=() + +# @ECLASS_VARIABLE: _MODULES_INSTALL +# @INTERNAL +# @DESCRIPTION: +# List of modules from linux-mod-r1_src_compile to be installed. +declare -gA _MODULES_INSTALL=() + +# @FUNCTION: _modules_check_function +# @USAGE: [ []] +# @RETURN: 0 or 1 if caller should do nothing +# @INTERNAL +# @DESCRIPTION: +# Checks for MODULES_OPTIONAL_IUSE, and aborts if amount of arguments +# does not add up or if it was called before linux-mod-r1_pkg_setup. +_modules_check_function() { + [[ -z ${MODULES_OPTIONAL_IUSE} ]] || + use "${MODULES_OPTIONAL_IUSE#+}" || return 1 + + [[ ${#} == 0 || ${1} -ge ${2} && ( ! ${3} || ${1} -le ${3} ) ]] || + die "Usage: ${FUNCNAME[1]} ${4-(no arguments)}" + + [[ -v _MODULES_GLOBAL[ran:pkg_setup] ]] || + die "${FUNCNAME[1]} was called without running linux-mod-r1_pkg_setup" +} + +# @FUNCTION: _modules_check_migration +# @INTERNAL +# @DESCRIPTION: +# Aborts if see obsolete variables from the linux-mod-r0 eclass being +# used, likely due to an incomplete migration. This function should +# eventually be removed after linux-mod-r0 is @DEAD not to fail for +# nothing if users happen to have these in their environment given the +# naming for some is a bit generic. +_modules_check_migration() { + _modules_check_var() { + [[ -z ${!1} ]] || + die "${1} is obsolete, see ${2} in linux-mod-r1 eclass docs" + } + # the 'I' on this one is notably sneaky and could silently be ignored + _modules_check_var MODULES_OPTIONAL_USE MODULES_OPTIONAL_IUSE + _modules_check_var MODULES_OPTIONAL_USE_IUSE_DEFAULT MODULES_OPTIONAL_IUSE + _modules_check_var BUILD_PARAMS modargs + _modules_check_var BUILD_TARGETS modlist + _modules_check_var MODULE_NAMES modlist + [[ -z ${!MODULESD_*} ]] || + die "MODULESD_* variables are no longer supported, replace by handcrafted .conf files if needed" + + # Ignored variables: + # - BUILD_FIXES: seen in some ebuilds but was undocumented and linux-info + # still sets it preventing from blocking it entirely + # - ECONF_PARAMS: documented but was a no-op in linux-mod too +} + +# @FUNCTION: _modules_prepare_kernel +# @INTERNAL +# @DESCRIPTION: +# Handles linux-info bits to provide usable sources, KV_ variables, +# and CONFIG_CHECK use. +_modules_prepare_kernel() { + get_version + + # linux-info allows skipping checks if SKIP_KERNEL_CHECK is set and + # then require_configured_kernel will not abort, but no sources means + # 100% failure for building modules and so just abort now (the proper + # way to allow skipping sources here is MODULES_OPTIONAL_IUSE) + [[ -n ${KV_FULL} ]] || + die "kernel sources are required to build kernel modules" + + require_configured_kernel + + _modules_sanity_kernelbuilt + _modules_sanity_kernelversion + + # note: modules-specific check_modules_supported could probably be + # removed from linux-info in the future as this is a sufficient check + local CONFIG_CHECK="${CONFIG_CHECK} MODULES" + + # kernel will not typically know about symbols we use (bug #591832), + # but stay non-fatal if kernel has an exception list set (bug #759238) + # note: possible to bypass either way with CHECKCONFIG_DONOTHING=1 + if [[ $(linux_chkconfig_string UNUSED_KSYMS_WHITELIST) == \"+(?)\" ]]; then + CONFIG_CHECK+=" ~!TRIM_UNUSED_KSYMS" + else + CONFIG_CHECK+=" !TRIM_UNUSED_KSYMS" + fi + + linux-info_pkg_setup +} + +# @FUNCTION: _modules_prepare_sign +# @INTERNAL +# @DESCRIPTION: +# Determines arguments to pass to sign-file (hash/keys), and performs +# basic sanity checks to abort early if signing does not look possible. +_modules_prepare_sign() { + use modules-sign || return 0 + + _modules_sign_die() { + eerror "USE=modules-sign requires additional configuration, please see the" + eerror "kernel[1] documentation and the linux-mod-r1 eclass[2] user variables." + eerror "[1] https://www.kernel.org/doc/html/v${KV_MAJOR}.${KV_MINOR}/admin-guide/module-signing.html" + eerror "[2] https://devmanual.gentoo.org/eclass-reference/linux-mod-r1.eclass/index.html" + die "USE=modules-sign is set but ${*}" + } + + linux_chkconfig_present MODULE_SIG || + _modules_sign_die "CONFIG_MODULE_SIG is not set in the kernel" + + if [[ -z ${MODULES_SIGN_HASH} ]]; then + : "$(linux_chkconfig_string MODULE_SIG_HASH)" + MODULES_SIGN_HASH=${_//\"} + [[ -n ${MODULES_SIGN_HASH} ]] || + _modules_sign_die "CONFIG_MODULE_SIG_HASH is not set in the kernel" + fi + + if [[ -z ${MODULES_SIGN_KEY} ]]; then + : "$(linux_chkconfig_string MODULE_SIG_KEY)" + MODULES_SIGN_KEY=${_//\"} + [[ -n ${MODULES_SIGN_KEY} ]] || + _modules_sign_die "CONFIG_MODULE_SIG_KEY is not set in the kernel" + fi + + [[ ${MODULES_SIGN_KEY} != @(/|pkcs11:)* ]] && + MODULES_SIGN_KEY=${KV_OUT_DIR}/${MODULES_SIGN_KEY} + [[ ${MODULES_SIGN_CERT} != /* ]] && + MODULES_SIGN_CERT=${KV_OUT_DIR}/${MODULES_SIGN_CERT} + + # assumes users know what they are doing if using a pkcs11 URI + [[ ${MODULES_SIGN_KEY} == pkcs11:* || -f ${MODULES_SIGN_KEY} ]] || + _modules_sign_die "the private key '${MODULES_SIGN_KEY}' was not found" + [[ -f ${MODULES_SIGN_CERT} ]] || + _modules_sign_die "the public key certificate '${MODULES_SIGN_CERT}' was not found" +} + +# @FUNCTION: _modules_prepare_toolchain +# @INTERNAL +# @DESCRIPTION: +# Sets KERNEL_{CC,CXX,LD,AR,NM,OBJCOPY,OBJDUMP,READELF,STRIP} based on +# the kernel configuration and KERNEL_CHOST (also set if missing) that +# *should* be usable to build modules. +# +# Tries to match compiler type (gcc or clang), and major version. Will +# inform if matching was not possible likely due to the compiler being +# uninstalled. Users can set KERNEL_ variables themselves to override. +# +# These variables are normally manipulated by the kernel's LLVM=1 with +# the exception of CXX that is included anyway given *some* out-of-tree +# modules use it, e.g. nvidia-drivers[kernel-open]. +_modules_prepare_toolchain() { + # note that the kernel adds -m32/-m64/-m elf_x86_64/etc... for, e.g. + # toolchains defaulting to x32, but may need automagic here if need + # a different toolchain such as sys-devel/kgcc64 + [[ -z ${KERNEL_CHOST} ]] && linux_chkconfig_present 64BIT && + case ${CHOST} in + # matching kernel-build.eclass, see for details + hppa2.0-*) KERNEL_CHOST=${CHOST/2.0/64};; + esac + + # recognizing KERNEL_CHOST given CROSS_COMPILE seems too generic here, + # but should rarely be necessary unless different userland and kernel + : "${KERNEL_CHOST:=${CHOST}}" + + einfo "Preparing ${KERNEL_CHOST} toolchain for kernel modules (override with KERNEL_CHOST) ..." + + _modules_tc_best() { + [[ -z ${!1} ]] && read -r ${1} < <(type -P -- "${@:2}") + } + + local gccv clangv tool + if linux_chkconfig_present CC_IS_GCC; then + gccv=$(linux_chkconfig_string GCC_VERSION) + gccv=${gccv::2} # major version, will break on gcc-100... + # chost-gcc-ver > chost-gcc > gcc-ver > gcc + _modules_tc_best KERNEL_CC {"${KERNEL_CHOST}-",}gcc{"-${gccv}",} + _modules_tc_best KERNEL_CXX {"${KERNEL_CHOST}-",}g++{"-${gccv}",} + # unknown what was used exactly here, but prefer non-llvm with gcc + for tool in AR NM OBJCOPY OBJDUMP READELF STRIP; do + _modules_tc_best KERNEL_${tool} \ + {"${KERNEL_CHOST}-",}{gcc-,}${tool,,} + done + elif linux_chkconfig_present CC_IS_CLANG; then + clangv=$(linux_chkconfig_string CLANG_VERSION) + clangv=${clangv::2} + # like gcc, but try directories to get same version on all tools + # (not using get_llvm_prefix to avoid conflicts with ebuilds using + # llvm slots for non-modules reasons, e.g. sets llvm_check_deps) + _modules_tc_best KERNEL_CC \ + {"${BROOT}/usr/lib/llvm/${clangv}/bin/",}{"${KERNEL_CHOST}-",}clang{"-${clangv}",} + _modules_tc_best KERNEL_CXX \ + {"${BROOT}/usr/lib/llvm/${clangv}/bin/",}{"${KERNEL_CHOST}-",}clang++{"-${clangv}",} + for tool in AR NM OBJCOPY OBJDUMP READELF STRIP; do + _modules_tc_best KERNEL_${tool} \ + {"${BROOT}/usr/lib/llvm/${clangv}/bin/",}{"${KERNEL_CHOST}-",}{llvm-,}${tool,,} + done + fi + + if linux_chkconfig_present LD_IS_BFD; then + _modules_tc_best KERNEL_LD {"${KERNEL_CHOST}-",}ld.bfd + elif linux_chkconfig_present LD_IS_LLD; then + # also match with clang if it was used + _modules_tc_best KERNEL_LD \ + {${clangv+"${BROOT}/usr/lib/llvm/${clangv}/bin/"},}{"${KERNEL_CHOST}-",}ld.lld + fi + + # if any variables are still empty, fallback to normal defaults + local CHOST=${KERNEL_CHOST} + : "${KERNEL_CC:=$(tc-getCC)}" + : "${KERNEL_CXX:=$(tc-getCXX)}" + : "${KERNEL_LD:=$(tc-getLD)}" + : "${KERNEL_AR:=$(tc-getAR)}" + : "${KERNEL_NM:=$(tc-getNM)}" + : "${KERNEL_OBJCOPY:=$(tc-getOBJCOPY)}" + : "${KERNEL_OBJDUMP:=$(tc-getOBJDUMP)}" + : "${KERNEL_READELF:=$(tc-getREADELF)}" + : "${KERNEL_STRIP:=$(tc-getSTRIP)}" + + # for toolchain-funcs, uses CPP > CC but set both not to make assumptions + local CC=${KERNEL_CC} CPP="${KERNEL_CC} -E" LD=${KERNEL_LD} + + # show results, skip line wrap to avoid standing out too much + einfo "Toolchain picked for kernel modules (override with KERNEL_CC, _LD, ...):"\ + "'${KERNEL_CC}' '${KERNEL_CXX}' '${KERNEL_LD}' '${KERNEL_AR}'"\ + "'${KERNEL_NM}' '${KERNEL_OBJCOPY}' '${KERNEL_OBJDUMP}'"\ + "'${KERNEL_READELF}' '${KERNEL_STRIP}'" + + # hack: kernel adds --thinlto-cache-dir to KBUILD_LDFLAGS with ThinLTO + # resulting in sandbox violations and we cannot safely override that + # variable, using *both* {LDFLAGS_MODULE,ldflags-y}=--thinlto-cache-dir= + # can work but raises concerns about breaking packages that may use these + if linux_chkconfig_present LTO_CLANG_THIN && tc-ld-is-lld; then + KERNEL_LD=${T}/linux-mod-r1_ld.lld + printf '#!/usr/bin/env sh\nexec %s "${@}" --thinlto-cache-dir=\n' \ + "${LD}" > "${KERNEL_LD}" || die + chmod +x -- "${KERNEL_LD}" || die + fi + + # warn if final picked CC type or major version is mismatching, arguably + # should be fatal but not forcing given it is not *always* an issue + local warn + if [[ -v gccv ]]; then + if ! tc-is-gcc; then + warn="gcc-${gccv} but\n '${KERNEL_CC}' is not gcc" + elif [[ $(gcc-major-version) -ne "${gccv}" ]]; then + warn="gcc-${gccv} but\n '${KERNEL_CC}' is gcc-$(gcc-major-version)" + fi + elif [[ -v clangv ]]; then + if ! tc-is-clang; then + warn="clang-${clangv} but\n '${KERNEL_CC}' is not clang" + elif [[ $(clang-major-version) -ne "${clangv}" ]]; then + warn="clang-${clangv} but\n '${KERNEL_CC}' is clang-$(clang-major-version)" + fi + fi + + if [[ -v warn ]]; then + ewarn + ewarn "Warning: kernel ${KV_FULL} is built with ${warn}" + ewarn "This *could* result in build issues or other incompatibilities." + ewarn "It is recommended to either \`make clean\` and rebuild the kernel" + ewarn "with the current toolchain (for distribution kernels, re-installing" + ewarn "will do the same), or set the KERNEL_CC variable to point to the" + ewarn "same compiler. Note that when it is available, auto-selection is" + ewarn "attempted making the latter rarely needed." + ewarn + fi +} + +# @FUNCTION: _modules_process_compress +# @USAGE: ... +# @INTERNAL +# @DESCRIPTION: +# If enabled in the kernel configuration, this compresses the given +# modules using the same format. +_modules_process_compress() { + local -a compress + if linux_chkconfig_present MODULE_COMPRESS_XZ; then + compress=(xz -qT"$(makeopts_jobs)" --memlimit-compress=50%) + elif linux_chkconfig_present MODULE_COMPRESS_GZIP; then + if type -P pigz &>/dev/null; then + compress=(pigz -p"$(makeopts_jobs)") + else + compress=(gzip) + fi + elif linux_chkconfig_present MODULE_COMPRESS_ZSTD; then + compress=(zstd -qT"$(makeopts_jobs)" --rm) + fi + + if [[ -v compress ]]; then + # could fail, assumes have commands that were needed for the kernel + einfo "Compressing modules (matching the kernel configuration) ..." + edob "${compress[@]}" -- "${@}" + fi +} + +# @FUNCTION: _modules_process_depmod.d +# @USAGE: ... +# @INTERNAL +# @DESCRIPTION: +# Generate a depmod.d file to ensure priority if duplicate modules +# exist, such as stale modules in different directories, or to +# override the kernel's own modules. +_modules_process_depmod.d() { + ( + [[ ${SLOT%/*} == 0 ]] && slot= || slot=-${SLOT%/*} + insinto /lib/depmod.d + newins - ${PN}${slot}.conf < <( + echo "# Automatically generated by linux-mod-r1.eclass for ${CATEGORY}/${PN}" + for mod; do + [[ ${mod} =~ ^(.+)/(.+).ko$ ]] && + echo "override ${BASH_REMATCH[2]} ${KV_FULL} ${BASH_REMATCH[1]}" + done + ) + ) +} + +# @FUNCTION: _modules_process_sign +# @USAGE: ... +# @INTERNAL +# @DESCRIPTION: +# Cryptographically signs the given modules when USE=modules-sign is +# enabled. +_modules_process_sign() { + use modules-sign || return 0 + + # scripts/sign-file used to be a perl script but is now written in C, + # and it could either be missing or broken given it links with openssl + # (no subslot rebuilds on kernel sources), trivial to compile regardless + local sign= + if [[ -f ${KV_DIR}/scripts/sign-file.c ]]; then + sign=${T}/linux-mod-r1_sign-file + ( + # unfortunately using the kernel's Makefile is inconvenient (no + # simple build target for this), may need revisiting on changes + einfo "Compiling sign-file ..." + tc-export_build_env + nonfatal edob $(tc-getBUILD_CC) ${BUILD_CFLAGS} ${BUILD_CPPFLAGS} \ + $($(tc-getBUILD_PKG_CONFIG) --cflags libcrypto) \ + ${BUILD_LDFLAGS} -o "${sign}" "${KV_DIR}"/scripts/sign-file.c \ + $($(tc-getBUILD_PKG_CONFIG) --libs libcrypto || echo -lcrypto) + ) || { + einfo "Trying fallback ..." + sign= + } + fi + + if [[ -z ${sign} ]]; then + if [[ -x ${KV_OUT_DIR}/scripts/sign-file ]]; then + sign=${KV_OUT_DIR}/scripts/sign-file # try if built + elif [[ -x ${KV_DIR}/scripts/sign-file ]]; then + sign=${KV_DIR}/scripts/sign-file # old kernel (... +# @INTERNAL +# @DESCRIPTION: +# Strips the given modules of unneeded symbols when USE=strip is +# enabled, and informs the package manager not to regardless. +_modules_process_strip() { + # letting the package manager handle this complicates scenarios + # where we want to either compress the pre-stripped module, or + # sign the module without its signature becoming invalid on merge + dostrip -x "${@#"${ED}"}" + + if use strip; then + einfo "Stripping modules ..." + edob "${KERNEL_STRIP}" --strip-unneeded -- "${@}" + fi +} + +# @FUNCTION: _modules_sanity_gccplugins +# @INTERNAL +# @DESCRIPTION: +# Performs a basic build test to detect GCC plugins mismatch issues +# and, if so, aborts with explanation given it often confuses users. +# +# Using mismatching gcc can sometime work to build modules, but if +# GCC plugins are enabled it will almost always be an error. +# +# Note: may need occasional review to ensure the test still works by: +# enabling a GCC plugin in the kernel, building with older GCC, +# then building a module by setting KERNEL_CC=gcc-. +_modules_sanity_gccplugins() { + linux_chkconfig_present GCC_PLUGINS || return 0 + + local tmp=${T}/linux-mod-r1_gccplugins + mkdir -p -- "${tmp}" || die + + echo "obj-m += test.o" > "${tmp}"/Kbuild || die + :> "${tmp}"/test.c || die + + # always fails, but interested in the stderr messages + local output=$( + cd -- "${KV_OUT_DIR}" && # fwiw skip non-POSIX -C in eclasses + LC_ALL=C nonfatal emake "${MODULES_MAKEARGS[@]}" M="${tmp}" \ + 2>&1 >/dev/null + ) + + if [[ ${output} == *"error: incompatible gcc/plugin version"* ]]; then + eerror "GCC_PLUGINS is enabled in the kernel and plugin version mismatch issues" + eerror "have been detected. Please \`make clean\` and rebuild the kernel using" + eerror "the current version of GCC (or re-install for distribution kernels)." + die "kernel ${KV_FULL} needs to be rebuilt" + fi +} + +# @FUNCTION: _modules_sanity_kernelbuilt +# @INTERNAL +# @DESCRIPTION: +# Checks if the kernel seems fully built by having a Module.symvers +# that is also readable, abort otherwise. +# +# About readability, occasionally users build their kernel as root with +# umask 0077 and then the package manager's user cannot read built files +# leaving them confused. +# +# Given user and access can very between phases (notably src_compile), +# it makes sense to run this check more than once. +# +# Note: +# This is an alternate version of linux-info's check_kernel_built +# which probably will not need to exist there if linux-mod-r0 is +# gone, error it gives is also modules-specific and fits better here. +# +# The old check_kernel_built checks version.h and suggests running +# modules_prepare if missing, but that does not create Module.symvers. +# Nowadays the kernel makes unresolved symbols fatal by default +# meaning that all modules will fail unless KBUILD_MODPOST_WARN=1 +# which seem questionable to support. So rather than version.h, this +# checks and require Module.symvers, and suggests a full build if +# missing (if really must, users can bypass by touching the file). +# nvidia-drivers (for one) further checks this file directly to do +# configure tests that will break badly without. +_modules_sanity_kernelbuilt() { + local symvers=${KV_OUT_DIR}/Module.symvers + + if [[ ! -f ${symvers} ]]; then + eerror "'${symvers}' was not found implying that the" + eerror "linux-${KV_FULL} tree at that location has not been built." + eerror + eerror "Please verify that this is the intended kernel version, then perform" + eerror "a full build[1] (i.e. make && make modules_install && make install)." + eerror + eerror "Alternatively, consider a distribution kernel[2] that does not need" + eerror "these manual steps (e.g. sys-kernel/gentoo-kernel or gentoo-kernel-bin)." + eerror + eerror "[1] https://wiki.gentoo.org/wiki/Kernel/Configuration#Build" + eerror "[2] https://wiki.gentoo.org/wiki/Project:Distribution_Kernel" + die "built kernel sources are required to build kernel modules" + fi + + if [[ ! -r ${symvers} ]]; then + eerror "'${symvers}' exists but cannot be read by the" + eerror "user id(${EUID}) of the package manager, likely implying no world" + eerror "read access permissions:" + eerror + eerror " $(ls -l -- "${symvers}")" + eerror + eerror "Causes may vary, but a common one is building the kernel with a umask" + eerror "value of '0077' rather than the more typical '0022' (run the \`umask\`" + eerror "command to confirm, as root if was building the kernel using it)." + eerror + eerror "Many other files are likely affected and will lead to build failures." + eerror "It is recommended to clean the sources and rebuild with \`umask 0022\`" + eerror "rather than attempt to fix the permissions manually." + die "no read access permission to the generated kernel files" + fi +} + +# @FUNCTION: _modules_sanity_kernelversion +# @INTERNAL +# @DESCRIPTION: +# Prints a warning if the kernel version is greater than to +# MODULES_KERNEL_MAX (while only considering same amount of version +# components), or aborts if it is less than MODULES_KERNEL_MIN +_modules_sanity_kernelversion() { + local kv=${KV_MAJOR}.${KV_MINOR}.${KV_PATCH} + + if [[ -n ${MODULES_KERNEL_MIN} ]] && + ver_test "${kv}" -lt "${MODULES_KERNEL_MIN}" + then + eerror "${P} requires a kernel version of at least >=${MODULES_KERNEL_MIN}," + eerror "but the current kernel is ${KV_FULL}. Please update." + die "kernel ${KV_FULL} is too old" + fi + + if [[ -n ${MODULES_KERNEL_MAX} ]]; then + : "${MODULES_KERNEL_MAX//[^.]/}" + local -i count=${#_} + + if ver_test "$(ver_cut 1-$((count+1)) "${kv}")" \ + -gt "${MODULES_KERNEL_MAX}" + then + # add .x to 1 missing component to make, e.g. <=1.2.x more natural, + # not <1.3 given users sometimes see it as 1.3 support at a glance + local max=${MODULES_KERNEL_MAX} + [[ ${count} -lt 2 ]] && max+=.x + + ewarn + ewarn " *** WARNING *** " + ewarn + ewarn "${PN} is known to break easily with new kernel versions and," + ewarn "with the current kernel (${KV_FULL}), it was either hardly" + ewarn "tested or is known broken. It is recommended to use one of:" + ewarn + # fwiw we do not know what is *actually* used or wanted even with + # the USE, so stay a bit vague and always mention both dist+sources + if use dist-kernel; then + ewarn " <=virtual/dist-kernel-${max} or" + else + ewarn " <=sys-kernel/gentoo-kernel-${max} or" + fi + ewarn " <=sys-kernel/gentoo-sources-${max}" + ewarn + ewarn "or equivalent rather than file downstream bug reports if run into" + ewarn "issues, then wait for upstream fixes and a new release. Ideally," + ewarn "with out-of-tree modules, use an LTS (Long Term Support) kernel" + ewarn "branch[1]. If in doubt, Gentoo's stable kernels are always LTS" + ewarn "and can be easily used even on ~testing systems." + ewarn + ewarn "[1] https://www.kernel.org/category/releases.html" + ewarn + fi + fi +} + +# @FUNCTION: _modules_sanity_modversion +# @USAGE: ... +# @INTERNAL +# @DESCRIPTION: +# Checks if the passed module(s) do not seem obviously broken and the +# builtin versions match ${KV_FULL}, otherwise die with an explanation. +# +# If receive a bug with a version error, an easy way to reproduce is to +# set KERNEL_DIR with the sources of a different kernel version than +# both the ones pointed by /usr/src/linux and `uname -r`. Refer to +# linux-mod-r1_src_compile's modargs in the eclass docs for fixing. +_modules_sanity_modversion() { + local mod ver + for mod; do + # modinfo can read different-arch modules, being fatal *should* be safe + # and serve as a basic sanity check to ensure the module is valid + read -rd ' ' ver < <( + LC_ALL=C modinfo -F vermagic -- "${mod}" || + die "modinfo failed to read module '${mod}' (broken module?)" + ) + [[ -n ${ver} ]] || + die "modinfo found no kernel version in '${mod}' (broken module?)" + + if [[ ${ver} != "${KV_FULL}" ]]; then + eerror "A module seem to have been built for kernel version '${ver}'" + eerror "while it was meant for '${KV_FULL}'. This may indicate an" + eerror "ebuild issue (e.g. used runtime \`uname -r\` kernel rather than" + eerror "the chosen sources). Please report this to the ebuild's maintainer." + die "module and source version mismatch in '${mod}'" + fi + done +} + +# @FUNCTION: _modules_set_makeargs +# @INTERNAL +# @DESCRIPTION: +# Sets the MODULES_MAKEARGS global array. +_modules_set_makeargs() { + MODULES_MAKEARGS=( + ARCH="$(tc-arch-kernel)" + + V=1 + # normally redundant with V, but some custom Makefiles override it + KBUILD_VERBOSE=1 + + # unrealistic when building modules that often have slow releases, + # but note that the kernel will still pass some -Werror=bad-thing + CONFIG_WERROR= + + # these are only needed if using these arguments for installing, lets + # eclass handle strip, sign, compress, and depmod (CONFIG_ should + # have no impact on building, only used by Makefile.modinst) + CONFIG_MODULE_{SIG_ALL,COMPRESS_{GZIP,XZ,ZSTD}}= + DEPMOD=true #916587 + STRIP=true + ) + + if [[ ! ${MODULES_I_WANT_FULL_CONTROL} ]]; then + # many of these are unlikely to be useful here, but still trying to be + # complete given never know what out-of-tree modules may use + MODULES_MAKEARGS+=( + # wrt bug #550428, given most toolchain variables are being passed to + # make, setting CROSS in the environment would change very little + # (instead set KERNEL_CHOST which will affect other variables, + # or MODULES_I_WANT_FULL_CONTROL if do not want any of this) + CROSS_COMPILE="${KERNEL_CHOST}-" + + HOSTCC="$(tc-getBUILD_CC)" + HOSTCXX="$(tc-getBUILD_CXX)" + + # fwiw this function is not meant to pollute the environment + HOSTCFLAGS="$(tc-export_build_env; echo "${BUILD_CFLAGS}")" + HOSTCXXFLAGS="$(tc-export_build_env; echo "${BUILD_CXXFLAGS}")" + HOSTLDFLAGS="$(tc-export_build_env; echo "${BUILD_LDFLAGS}")" + + HOSTPKG_CONFIG="$(tc-getBUILD_PKG_CONFIG)" + + CC="${KERNEL_CC}" + CXX="${KERNEL_CXX}" + LD="${KERNEL_LD}" + AR="${KERNEL_AR}" + NM="${KERNEL_NM}" + OBJCOPY="${KERNEL_OBJCOPY}" + OBJDUMP="${KERNEL_OBJDUMP}" + READELF="${KERNEL_READELF}" + ) + fi + + # eval is to handle quoted spaces, die is for syntax errors + eval "MODULES_MAKEARGS+=( ${MODULES_EXTRA_EMAKE} )" || die +} + +# @FUNCTION: _modules_update_depmod +# @INTERNAL +# @DESCRIPTION: +# If possible, update module dependencies using depmod and System.map, +# otherwise prompt user to handle it. System.map may notably no longer +# be available on binary merges. +_modules_update_depmod() { + # prefer /lib/modules' path given it is what depmod operates on, + # and is mostly foolproof when it comes to ROOT (relative symlink) + local map=${EROOT}/lib/modules/${KV_FULL}/build/System.map + + if [[ ! -f ${map} ]]; then + # KV_OUT_DIR may still be right even on a different system, but state + # of (E)ROOT is unknown, e.g. could be from KERNEL_DIR=${OLDROOT}/... + map=${KV_OUT_DIR}/System.map + + # last resort, typical but may not be mounted/readable/installed + [[ ! -f ${map} ]] && + map=${EROOT}/boot/System.map-${KV_FULL} + fi + + einfo "Updating module dependencies for kernel ${KV_FULL} ..." + if [[ -f ${map} ]]; then + local depmodargs=( -ae -F "${map}" "${KV_FULL}" ) + + # for nicer postinst display, keep command shorter if EROOT is unset + [[ ${EROOT} ]] && + depmodargs+=( + -b "${EROOT}" + + # EROOT from -b is not used when looking for configuration + # directories, so pass the whole list from kmod's tools/depmod.c + --config="${EROOT}"/{etc,run,usr/local/lib,lib}/depmod.d + ) + + nonfatal edob depmod "${depmodargs[@]}" && return 0 + else + eerror + eerror "System.map for kernel ${KV_FULL} was not found, may be due to the" + eerror "built kernel sources no longer being available and lacking the fallback:" + eerror + eerror "${EROOT}/boot/System.map-${KV_FULL}" + fi + eerror + eerror "Some modules may not load without updating manually using depmod." +} + +fi + +EXPORT_FUNCTIONS pkg_setup src_compile src_install pkg_postinst diff --git a/sdk_container/src/third_party/portage-stable/eclass/multibuild.eclass b/sdk_container/src/third_party/portage-stable/eclass/multibuild.eclass index d8a5862731b..f15d3327c7d 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/multibuild.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/multibuild.eclass @@ -129,8 +129,8 @@ multibuild_foreach_variant() { _multibuild_run "${@}" \ > >(exec tee -a "${T}/build-${MULTIBUILD_ID}.log") 2>&1 lret=${?} + [[ ${ret} -eq 0 && ${lret} -ne 0 ]] && ret=${lret} done - [[ ${ret} -eq 0 && ${lret} -ne 0 ]] && ret=${lret} return ${ret} } diff --git a/sdk_container/src/third_party/portage-stable/eclass/python-utils-r1.eclass b/sdk_container/src/third_party/portage-stable/eclass/python-utils-r1.eclass index 4a538f9942f..394f64a5d13 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/python-utils-r1.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/python-utils-r1.eclass @@ -1307,6 +1307,21 @@ _python_check_occluded_packages() { # parameter, when calling epytest. The listed files will be entirely # skipped from test collection. +# @ECLASS_VARIABLE: EPYTEST_XDIST +# @DEFAULT_UNSET +# @DESCRIPTION: +# If set to a non-empty value, enables running tests in parallel +# via pytest-xdist plugin. If this variable is set prior to calling +# distutils_enable_tests in distutils-r1, a test dependency +# on dev-python/pytest-xdist is added automatically. + +# @ECLASS_VARIABLE: EPYTEST_JOBS +# @USER_VARIABLE +# @DEFAULT_UNSET +# @DESCRIPTION: +# Specifies the number of jobs for parallel (pytest-xdist) test runs. +# When unset, defaults to -j from MAKEOPTS, or the current nproc. + # @FUNCTION: epytest # @USAGE: [...] # @DESCRIPTION: @@ -1347,30 +1362,55 @@ epytest() { # count is more precise when we're dealing with a large number # of tests -o console_output_style=count - # disable the undesirable-dependency plugins by default to - # trigger missing argument strips. strip options that require - # them from config files. enable them explicitly via "-p ..." - # if you *really* need them. - -p no:cov - -p no:flake8 - -p no:flakes - -p no:pylint - # sterilize pytest-markdown as it runs code snippets from all - # *.md files found without any warning - -p no:markdown - # pytest-sugar undoes everything that's good about pytest output - # and makes it hard to read logs - -p no:sugar - # pytest-xvfb automatically spawns Xvfb for every test suite, - # effectively forcing it even when we'd prefer the tests - # not to have DISPLAY at all, causing crashes sometimes - # and causing us to miss missing virtualx usage - -p no:xvfb - # intrusive packages that break random test suites - -p no:pytest-describe - -p no:plus - -p no:tavern ) + + if [[ ! ${PYTEST_DISABLE_PLUGIN_AUTOLOAD} ]]; then + args+=( + # disable the undesirable-dependency plugins by default to + # trigger missing argument strips. strip options that require + # them from config files. enable them explicitly via "-p ..." + # if you *really* need them. + -p no:cov + -p no:flake8 + -p no:flakes + -p no:pylint + # sterilize pytest-markdown as it runs code snippets from all + # *.md files found without any warning + -p no:markdown + # pytest-sugar undoes everything that's good about pytest output + # and makes it hard to read logs + -p no:sugar + # pytest-xvfb automatically spawns Xvfb for every test suite, + # effectively forcing it even when we'd prefer the tests + # not to have DISPLAY at all, causing crashes sometimes + # and causing us to miss missing virtualx usage + -p no:xvfb + # intrusive packages that break random test suites + -p no:pytest-describe + -p no:plus + -p no:tavern + ) + fi + + if [[ ${EPYTEST_XDIST} ]]; then + local jobs=${EPYTEST_JOBS:-$(makeopts_jobs)} + if [[ ${jobs} -gt 1 ]]; then + if [[ ${PYTEST_PLUGINS} != *xdist.plugin* ]]; then + args+=( + # explicitly enable the plugin, in case the ebuild was + # using PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + -p xdist + ) + fi + args+=( + -n "${jobs}" + # worksteal ensures that workers don't end up idle when heavy + # jobs are unevenly distributed + --dist=worksteal + ) + fi + fi + local x for x in "${EPYTEST_DESELECT[@]}"; do args+=( --deselect "${x}" ) diff --git a/sdk_container/src/third_party/portage-stable/eclass/toolchain-autoconf.eclass b/sdk_container/src/third_party/portage-stable/eclass/toolchain-autoconf.eclass index ed8d5ff1412..137f0efac15 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/toolchain-autoconf.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/toolchain-autoconf.eclass @@ -30,7 +30,14 @@ _TOOLCHAIN_AUTOCONF_ECLASS=1 # @ECLASS_VARIABLE: TC_AUTOCONF_INFOPATH # @DESCRIPTION: # Where to install info files if not slotting. -TC_AUTOCONF_INFOPATH="${EPREFIX}/usr/share/autoconf-${PV}/info" +TC_AUTOCONF_INFOPATH="${EPREFIX}/usr/share/${P}/info" + +# @ECLASS_VARIABLE: TC_AUTOCONF_ENVPREFIX +# @DESCRIPTION: +# Prefix number for env.d files produced by this eclass. Defaults to +# 06. Note that the generated env.d filename format is +# "${TC_AUTOCONF_ENVPREFIX}${PN}$((99999-(major*1000+minor)))" +: "${TC_AUTOCONF_ENVPREFIX:=06}" toolchain-autoconf_src_prepare() { find -name Makefile.in -exec sed -i '/^pkgdatadir/s:$:-@VERSION@:' {} + || die @@ -40,15 +47,18 @@ toolchain-autoconf_src_prepare() { toolchain-autoconf_src_configure() { # Disable Emacs in the build system since it is in a separate package. export EMACS=no + + MY_P="${P#autoconf-}" + local myconf=( - --program-suffix="-${PV}" + --program-suffix="-${MY_P}" ) if [[ -z "${TC_AUTOCONF_BREAK_INFOS}" && "${SLOT}" != 0 ]]; then myconf+=( --infodir="${TC_AUTOCONF_INFOPATH}" ) fi - econf "${myconf[@]}" || die + econf "${myconf[@]}" "${@}" || die # econf updates config.{sub,guess} which forces the manpages # to be regenerated which we dont want to do #146621 touch man/*.1 @@ -95,7 +105,7 @@ toolchain-autoconf_src_install() { local major="$(ver_cut 1)" local minor="$(ver_cut 2)" local idx="$((99999-(major*1000+minor)))" - newenvd - "06autoconf${idx}" <<-EOF + newenvd - "${TC_AUTOCONF_ENVPREFIX}${PN}${idx}" <<-EOF INFOPATH="${TC_AUTOCONF_INFOPATH}" EOF diff --git a/sdk_container/src/third_party/portage-stable/eclass/toolchain-funcs.eclass b/sdk_container/src/third_party/portage-stable/eclass/toolchain-funcs.eclass index 8fef764ad59..5da93063866 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/toolchain-funcs.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/toolchain-funcs.eclass @@ -1216,4 +1216,18 @@ tc-get-c-rtlib() { return 0 } +# @FUNCTION: tc-get-ptr-size +# @RETURN: Size of a pointer in bytes for CHOST (e.g. 4 or 8). +tc-get-ptr-size() { + $(tc-getCPP) -P - <<< __SIZEOF_POINTER__ || + die "Could not determine CHOST pointer size" +} + +# @FUNCTION: tc-get-build-ptr-size +# @RETURN: Size of a pointer in bytes for CBUILD (e.g. 4 or 8). +tc-get-build-ptr-size() { + $(tc-getBUILD_CPP) -P - <<< __SIZEOF_POINTER__ || + die "Could not determine CBUILD pointer size" +} + fi diff --git a/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass b/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass index bf5e5127036..60769c93877 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/toolchain.eclass @@ -1378,7 +1378,10 @@ toolchain_src_configure() { --disable-systemtap --enable-host-shared --enable-languages=jit - --without-isl + # Might be used for the just-built GCC. Easier to just + # respect USE=graphite here in case the user passes some + # graphite flags rather than try strip them out. + $(use_with graphite isl) --without-zstd --with-system-zlib ) @@ -1542,6 +1545,9 @@ gcc_do_filter_flags() { -fharden-control-flow-redundancy -fno-harden-control-flow-redundancy \ -fhardcfr-skip-leaf -fhardcfr-check-exceptions \ -fhardcfr-check-returning-calls '-fhardcfr-check-noreturn-calls=*' + + # New in GCC 14. + filter-flags -Walloc-size else # Makes things painfully slow and no real benefit for the compiler. append-flags $(test-flags-CC -fno-harden-control-flow-redundancy) diff --git a/sdk_container/src/third_party/portage-stable/licenses/Dell-EULA b/sdk_container/src/third_party/portage-stable/licenses/Dell-EULA new file mode 100644 index 00000000000..4874704d42c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/licenses/Dell-EULA @@ -0,0 +1,442 @@ +End User License Agreement + +This End User License Agreement (“EULA”) is between the individual +consumer or business entity that will use the Software (“You”) +and the applicable entity identified in the “Licensor Table” +located at www.dell.com/swlicensortable (“Licensor”). + +This EULA governs Your use of: (a) the object code version of Dell +branded software that is preinstalled on Dell hardware or otherwise +provided to You pursuant to a purchase contract, quote, order form, +invoice or online procurement process (each, an “Order”); (b) +associated software license keys, if any (“License Keys”); (c) +updates to such software (“Updates”); (d) the documentation for +such software; and (e) all copies of the foregoing (collectively, +“Software”). If You accept this EULA, or if You install or use +the Software, then You agree to this EULA unless You already have a +signed agreement with Dell Marketing L.P. or one of its affiliates +(“Dell”) that includes licensing terms that govern Your use +of the Software (“Pre-Existing Agreement”). If You accept this +EULA or install or use the Software on behalf of a business entity, +then You represent that You have authority to take those actions, +and this EULA will be binding on that business entity unless the +entity already has a Pre-Existing Agreement. If You do not agree to +this EULA, do not install or use the Software. + +If You are a business entity and You purchase Software from a +third party (“Reseller”) who sublicenses the Software to You +under the terms of an agreement between You and such Reseller +(a “Sublicense Agreement”), then the terms of Your Sublicense +Agreement with the Reseller shall govern Your use of the Software +and not this EULA. Resellers may only grant rights, and must pass +through conditions, consistent with this EULA. Thus, even though Your +Sublicense Agreement is between you and the Reseller, by installing or +using the Software, You acknowledge and agree that: (a) any license +rights in the Sublicense Agreement that are greater than the license +rights in this EULA shall not apply; (b) any license conditions in +this EULA that are not contained in the Sublicense Agreement apply +to You; (c) the limitations of liability set forth in this EULA will +apply in favor of Licensor, its affiliates and suppliers despite the +existence of a Sublicense Agreement; and (d) Licensor is a third-party +beneficiary of the Sublicense Agreement and is entitled to exercise +and enforce all of the Reseller’s rights and benefits under that +Sublicense Agreement. + +If You purchase Software as an individual consumer, nothing in this +EULA affects your statutory rights if the laws of your state or +country do not permit it to do so. + +1. License Grant. + +1.1. Right to Use. Subject to and in consideration of your full +compliance with the terms and conditions of this EULA, Licensor +grants to You a personal, non-exclusive license to use the Software +during the period stated in the applicable Order (if no period +is specified, You may use the Software perpetually). If You are +an individual consumer, this license grant allows You to use the +Software in connection with Your own personal use. If You are a +business entity, this license grant allows You to use the Software in +connection with the internal business operations of Your entity. In +addition, You may make a reasonable number of copies of the Software +solely as needed for backup or archival purposes. Additional license +terms for certain Software may be included in the Offering Specific +Terms Table located at www.dell.com/offeringspecificterms (“OST +Table”), and additional terms for Software that is licensed to +You for a limited time (“Subscription Software”) are located at +www.delltechnologies.com/subscription_terms (“Subscription Terms”). + +1.2. Third Party Use. If You are a business entity, You may allow Your +contractors (each, a “Permitted Third Party”) to use the Software +solely for the purpose of providing services to You, provided that +such use is in compliance with this EULA. You are liable for any +breach of this EULA by any Permitted Third Party. + +1.3. Rights Reserved. The Software is licensed and not sold. Except +for the license expressly granted in this EULA, Licensor, on behalf +of itself and its affiliates and suppliers, retains all rights in +and to the Software and in all related materials (“Works”). The +rights in these Works are valid and protected in all forms, media and +technologies existing now or hereafter developed. Any use of Works +other than as expressly set forth herein is strictly prohibited. + +1.4. Ownership. Licensor, on behalf of itself and its affiliates, +retains ownership of the Works and all related intellectual property +rights. If Software is provided to You on removable media (e.g., +CD, DVD or USB drive), You may own the media on which the Software +is recorded. + +2. License Conditions. + +2.1. You and Your Permitted Third Parties must do the following: + +A. Run the Software only on the hardware for which it was intended +to operate, when applicable; B. Use License Keys (if applicable) only +from Licensor or an authorized Dell License Key provider; C. Treat the +Software as Dell confidential information; D. Use the Software only on +as many computers or devices that You purchased, in such configurations +permitted by Dell or Licensor, and/or in accordance with the applicable +unit of measure, each as may be specified on Your Order. For Software +licensed via a unit of measure, the terms and descriptions of each +unit of measure are located at www.delltechnologies.com/UOM_terms +(“UOM Terms”); E. Abide and be responsible for compliance with +the export control and economic sanctions laws of the United States, +the European Union, and other applicable jurisdictions (collectively, +“Applicable Trade Laws”). Software may not be used, sold, leased, +exported, imported, re-exported, or transferred except in compliance +with the Applicable Trade Laws. You represent and warrant that You +or Your Permitted Third Parties are not the subject or target of, +or located in a country or territory that is the subject or target +of economic sanctions under the Applicable Trade Laws. For further +information about geographical restrictions and compliance with +Applicable Trade Laws, visit www.dell.com/tradecompliance; and +F. Comply with all Third Party Terms (as defined in Section 5 below). + +2.2. Except as otherwise permitted by this EULA or by mandatory law +(meaning a law that the parties cannot change by contract), You +must not, and must not allow Your Permitted Third Parties, to do +the following: + +A. Modify or remove any proprietary notices or markings on or in the +Software; B. Transfer License Keys to any other person or entity; +C. Download Updates from Licensor or an authorized provider unless +You have a valid support agreement; D. Install Updates on Enterprise +Products (e.g., server, networking, storage, integrated solutions, +and data protection appliances) that have gone end of service life +unless Licensor otherwise agrees in writing; E. Install and operate +counterfeit versions of Software (i.e. software provided by anyone +other than Dell or an authorized representative of Dell) on Dell +hardware; F. Violate or circumvent any technological use restrictions +in the Software; G. Sell, loan, rent, lease, sublicense, distribute +or encumber (e.g., by lien, security interest, etc.) the Software; +H. Use any trademarks or service marks of Licensor, its affiliates +or suppliers; I. Provide access to the Software or allow use by any +third party, other than Permitted Third Parties, without Licensor's +prior written consent; J. Copy, republish, upload, post or transmit +the Software in any way; K. Modify or create derivative works based +upon the Software, or decompile, disassemble, reverse engineer, +or otherwise attempt to derive source code from the Software, in +whole or in part; L. Attack or attempt to undermine the security, +integrity, authentication or intended operation of the Software; +M. Use the Software on a service bureau, rental or managed services +basis; N. Create or permit others to create Internet "links" to the +Software or "frame" or "mirror" the Software on any other server, +wireless or Internet-based device; O. Use the Software to create a +competitive offering; P. Use the Software to create other software, +products or technologies unless the Software contains Development +Tools as described in Section 7; Q. Share or publish the results +of any benchmarking of the Software without Dell’s prior written +consent; R. Use the Software for high risk activities, including +without limitation online control systems, or use in hazardous +environments requiring fail-safe performance, such as in the operation +of nuclear facilities, aircraft navigation or communications systems, +air traffic control, life support, weapons systems or in any other +device or system in which function or malfunction of the Software +could result in death, personal injury or physical or environmental +damage; S. Use the Software for activities related to weapons of mass +destruction, including but not limited to, activities related to the +design, development, production or use of nuclear materials, nuclear +facilities, nuclear weapons, missiles or support of missile projects, +or chemical or biological weapons; and T. Assign this EULA, or any +right or obligation under this EULA, or delegate any performance, +without Dell’s prior written consent, unless You are transferring the +Software in accordance with the Transferability Section 3 below. Even +if Dell consents to an assignment, You remain responsible for all +obligations under this EULA that You incurred prior to the effective +date of the assignment. + +3. Transferability. If You are an individual consumer, You may transfer +the Software on a permanent basis as part of the sale or transfer +of the hardware system on which the Software is loaded, provided +that You retain no copies of any version of the Software. If You +are a business entity, You may not transfer the Software to another +person or entity without the express written permission of Dell, +unless allowed by applicable law stating that transfer may not be +restricted (note that a transfer fee may be charged by Dell). + +4. Compliance Verification. If You are a business entity, You must: (a) +maintain and use systems and procedures that allow You to accurately +track Your use of the Software; (b) certify to Dell in writing, at +Dell’s request, that Your use of Software fully complies with this +EULA, indicating the number of Software licenses deployed at that time; +and (c) cooperate fully and timely with Dell and its auditors if Dell +notifies You that it will conduct an audit to confirm Your compliance +with this EULA. Any such audit will be conducted during normal business +hours. If Dell determines that You have over-deployed Software, You +agree to immediately purchase licenses at the then-current list price +to bring Your use into compliance. If You over-deployed Software +by 5% or more, then You agree to pay the total cost of the audit, +in addition to any other liabilities You may have. + +5. Third Party Software. “Third Party Software” is software, +including open source software, that is contained in or provided with +the Software and is licensed by a third party under its own terms of +use (“Third Party Terms”). Third Party Software is governed solely +by the applicable Third Party Terms and not by this EULA. Third Party +Terms may be provided with the Third Party Software or may be included +in the OST Table. For certain open source software, the applicable +Third Party Terms may entitle You to obtain the corresponding source +files. You may find corresponding source files for such open source +software at //opensource.dell.com/ or in the “About” or “Read +Me” file of Software, or other locations that Licensor may specify. + +6. Free Software. “Free Software” means Software that is provided +to You without additional charge (e.g., scripts that enable customer +installation; code that enables You to monitor Your use of Dell +products; etc.). You may only use Free Software on or with equipment +or in the operating environments for which Dell has designed that +Free Software to operate. Licensor may terminate any license to Free +Software at any time in its sole discretion. You may not transfer +Free Software to anyone else. + +7. Development Tools. If the Software includes development tools, +such as scripting tools, APIs or sample scripts (collectively +“Development Tools”), and unless there is a separate agreement +between You and Dell or Licensor for the Development Tools, You may use +such Development Tools to create new scripts and code for the purpose +of customizing Your use of the Software (within the parameters set +forth in this EULA and in the Development Tools themselves) and for +no other purpose. + +8. Evaluation Software. This EULA does not license use of Software +for evaluation purposes (“Evaluation Software”) except to the +extent these terms may be invoked by the separate license terms and +conditions accompanying that Evaluation Software. + +9. Support Services Not Included. If You purchase maintenance and +support for Software, such services are identified in Your Order and +will be provided under a separate services agreement. + +10. Termination. For Subscription Software, this EULA automatically +terminates at the end of Your subscription period unless You renew +Your rights. Licensor may terminate this EULA if You or a Permitted +Third Party commits a material breach of this EULA and fails to cure +such breach within thirty (30) days following Your receipt of notice +of the breach from Dell. This right to terminate applies accordingly if +Dell or the Reseller from whom You made Your purchase does not receive +timely payment for the licenses to the Software or for the hardware +on which the Software is loaded, if any. When this EULA terminates, +all licenses granted automatically terminate and You must immediately +cease use of the Software and return or destroy all copies of the +Software. Except as otherwise agreed by Dell, You will not get a +refund from Dell if this EULA is terminated. Rights and obligations +under Sections of this EULA that, by their nature should survive, +will survive termination, as well as obligations for payment. + +11. Warranty Disclaimer. Under this EULA, Licensor provides neither +any warranties for the Software nor does it provide support for the +Software. Your rights under any warranties and any support entitlements +for Software acquired for a fee are solely between You and the Reseller +or Dell entity from whom You procured the Software and related support, +and are defined under the commercial terms agreed between You and such +selling entity. Accordingly, except as otherwise offered by Dell, +the Software is provided by Licensor under this EULA “As Is” +without any warranties or conditions. To the maximum extent permitted +by applicable law, Licensor, on behalf of itself and its affiliates +and suppliers: (a) makes no express warranties or conditions related +to the Software; (b) disclaims all implied warranties and conditions +related to the Software, including merchantability, fitness for a +particular purpose, title, and non-infringement; and (c) disclaims any +warranty or condition arising by statute, operation of law, course of +dealing or performance, or usage of trade. Licensor does not warrant +uninterrupted or error-free operation of the Software. This Section +does not affect or modify any of the statutory warranty rights that +are available to consumers. + +12. Limitation of Liability. + +12.1. Limitations on Damages. The limitations, exclusions and +disclaimers set forth in a Pre-Existing Agreement or Dell Terms of +Sale that applies your Order (in each case, the “Order Terms”) +shall apply to all disputes, claims or controversies (whether in +contract, tort or otherwise) between You and Licensor or Dell related +to or arising out of: (a) this EULA; (b) the breach, termination or +validity of this EULA; or (c) any Orders (each, a “Dispute”). In +the absence of applicable Order Terms, the terms set forth in this +Section shall apply to all Disputes. + +The terms of this Section are agreed allocations of risk constituting +part of the consideration for Licensor’s licensing of Software to You +and will apply even if there is a failure of the essential purpose of +any limited remedy, and regardless of whether a party has been advised +of the possibility of the liabilities. If applicable law prohibits +any portion of the limits on liability stated below, the parties agree +that such limitation will be automatically modified, but only to the +extent required to make the limitation compliant with applicable law. + +A. Limitation on Direct Damages. Except for Your obligation to pay +for the Software, or for Your violation of the License Grant and +License Conditions set forth herein or of Licensor’s or Dell’s +intellectual property rights, the total liability of You and Licensor +(including Licensor’s affiliates and suppliers) arising out of any +Dispute is limited to the amount You paid for the Software that is the +subject of the Dispute, but excluding amounts received as reimbursement +of expenses or payment of taxes. Notwithstanding anything otherwise +set forth above, Licensor and its affiliates have no liability for +any direct damages resulting from Your use or attempted use of Third +Party Software, Free Software or Development Tools. + +B. Disclaimer of Certain Other Damages. Except for Your obligation to +pay for the Software, or for Your violation of the License Grant and +License Conditions set forth herein or of Licensor’s or Dell’s +intellectual property rights, neither You nor Licensor (including +Licensor’s affiliates and suppliers) shall have any liability +under this EULA for special, consequential, exemplary, punitive, +incidental or indirect damages, or for lost profits, loss of revenue, +loss or corruption of data, loss of use or procurement of substitute +products or services. + +12.2. Regular Backups. You are solely responsible for Your data. You +must back up Your data before Licensor or a third party performs +any remedial, upgrade or other work on Your production systems. You +acknowledge that it is a best practice to have more than one back up +copy of Your data. If applicable law prohibits exclusion of liability +for lost data, then Licensor will only be liable for the cost of +the typical effort to recover the lost data from Your last available +back up. + +12.3. Limitation Period. Except as stated in this Section, all claims +must be made within the period specified by applicable law. If the law +allows the parties to specify a shorter period for bringing claims, +or the law does not provide a time at all, then claims must be made +within 18 months after the cause of action accrues. + +13. Additional Terms. + +13.1. Notices. The parties will provide all notices under this EULA +in writing. Unless provided otherwise in an Order, You must provide +notices to the local Dell entity in Your Order, or, if Your Order is +not with a Dell entity, by e-mail to Dell_Legal_Notices@dell.com. + +13.2. Waiver and Severability. Failure to enforce a provision of this +EULA will not constitute a waiver of that or any other provision of +this EULA. If a court of competent jurisdiction determines that any +part of this EULA or document that incorporates this EULA by reference +is unenforceable, that ruling will not affect the validity of all +remaining parts. + +13.3. Modifications. This EULA may only be modified in writing +signed by both parties; provided, however, that Licensor may, in +its sole discretion, update the Licensor Table, the OST Table, the +UOM Terms and the Subscription Terms at any time. Any changes that +Licensor makes to the Licensor Table, the OST Table, the UOM Terms +or the Subscription Terms will only apply to Orders that occur after +Licensor posts those changes online. + +13.4. Governing Law and Jurisdiction. If You obtained the Software +directly from Dell, then the governing law and jurisdiction provisions +set forth in Your Order Terms shall apply to this EULA. Otherwise +the following shall apply: + +A. Subject to Section 13.4 D and 13.5, if You are domiciled in the +United States or Canada: (1) this EULA and any Dispute is governed +by the laws of the State of Texas (excluding the conflicts of law +rules) and the federal laws of the United States; and (2) to the +extent permitted by law, the state and federal courts located in +Texas will have exclusive jurisdiction for any Dispute. Both parties +agree to submit to the personal jurisdiction of the state and federal +courts located within Travis or Williamson County, Texas, and agree +to waive any and all objections to the exercise of jurisdiction over +the parties by those courts and to venue in those courts. + +B. Subject to Section 13.4 D, if You are domiciled outside of the +United States or Canada: (1) this EULA and any Dispute is governed +by the substantive laws in force in the country in which the +Licensor is located (as indicated in the Licensor Table located at +www.dell.com/swlicensortable), without regard to its conflict of law +rules; and (2) the exclusive place of jurisdiction for any Dispute +shall be in such country. + +C. In any event, neither the U.N. Convention on Contracts for the +International Sale of Goods, nor the Uniform Computer Information +Transaction Act shall apply to this EULA or any Dispute. + +D. If You are an individual consumer, this Section 13.4 does not +deprive You of the protection afforded to You by the provisions of +mandatory consumer protections laws that are applicable to You, nor +does it prevent you from seeking remedies or enforcing your rights +as a consumer under such laws. + +13.5. Dispute Resolution and Binding Individual (non-class) +Arbitration. This Section only applies if You are an individual +consumer that resides in (or obtained the Software in) the United +States or Canada. All Disputes shall be resolved exclusively and +finally by binding individual arbitration. This means You and Licensor +waive any right to litigate disputes in a court or before a jury +and neither You nor Licensor shall be entitled to join, consolidate, +or include any claims belonging to or alleged or arising from, by or +on behalf of any third party to an arbitration brought hereunder, or +to arbitrate any claim as a class action, class representative, class +member, or in a private attorney general capacity. If You reside in (or +obtained the Software in) the United States, the arbitration will be +administered by the American Arbitration Association (AAA), or JAMS. If +You reside in (or obtained the Software in) Canada, arbitration will +be at ADR Chambers pursuant to the general ADR Chambers Rules for +Arbitration located at www.adrchambers.com. The arbitration shall be +conducted in the English language. The arbitration panel shall have +exclusive authority to resolve any arbitrability issues including +any dispute over this EULA or this arbitration provision’s scope, +application, meaning and enforceability. The arbitration panel shall +be empowered to grant whatever relief would be available in court, +including without limitation preliminary relief, injunctive relief and +specific performance. Any award of the arbitration panel shall be final +and binding immediately when rendered, and judgment on the award may be +entered in any court of competent jurisdiction. If any portion of this +arbitration agreement is found unenforceable, the unenforceable portion +shall be severed and the remaining arbitration terms shall be enforced +(but in no event will there be a class arbitration). Consumer claimants +(individuals whose transaction is intended for personal, family or +household use) may elect to pursue their claims in small-claims court +rather than arbitration. Licensor will be responsible for paying any +individual consumer's arbitration/arbitrator fees. Notwithstanding +the foregoing, Licensor may apply to any relevant government agency +or any court of competent jurisdiction to preserve its rights under +this EULA and to obtain any injunctive or preliminary relief, or +any award of specific performance, to which it may be entitled, +either against You or against a non-party; provided, however, that +no such administrative or judicial authority shall have the right or +power to render a judgment or award (or to enjoin the rendering of an +arbitral award) for damages that may be due to or from either party +under this EULA, which right and power shall be reserved exclusively +to an arbitration panel proceeding in accordance herewith. + +13.6. Third Party Rights. Other than as expressly set out in this EULA, +this EULA does not create any rights for any person who is not a party +to it, and no person who is not a party to this EULA may enforce any +of its terms or rely on any exclusion or limitation contained in it. + +13.7 Entire Agreement. You acknowledge that You have read this EULA, +that You understand it, that You agree to be bound by its terms, +and that this EULA, along with the Order Terms into which this EULA +may be incorporated (as applicable), is the complete and exclusive +statement of the agreement between You and Licensor regarding Your use +of the Software. All content referenced in this EULA by hyperlink is +incorporated into this EULA in its entirety and is available to You +in hardcopy form upon Your request. The pre-printed terms of Your +purchase order or any other document that is not issued or signed by +Licensor or Dell do not apply to Software. You represent that You did +not rely on any representations or statements that do not appear in +this EULA when accepting this EULA. + + + +(Dell EULA rev 25OCT2023) diff --git a/sdk_container/src/third_party/portage-stable/licenses/LA_OPT_BASE_LICENSE b/sdk_container/src/third_party/portage-stable/licenses/LA_OPT_BASE_LICENSE index 5ead1a1a13a..0e666c028e8 100644 --- a/sdk_container/src/third_party/portage-stable/licenses/LA_OPT_BASE_LICENSE +++ b/sdk_container/src/third_party/portage-stable/licenses/LA_OPT_BASE_LICENSE @@ -1,609 +1,684 @@ -LA_OPT_BASE_LICENSE v12 March 2016 - -IMPORTANT. Read the following NXP Semiconductor Software License Agreement -("Agreement") completely. By selecting the "I Accept" button at the end of -this page, you indicate that you accept the terms of the Agreement and you -acknowledge that you have the authority, for yourself or on behalf of your -company, to bind your company to these terms. You may then download or install -the file. - -NXP SEMICONDUCTOR SOFTWARE LICENSE AGREEMENT - -This is a legal agreement between you, as an authorized representative of your -employer, or if you have no employer, as an individual (together "you"), and -Freescale Semiconductor, Inc., a wholly-owned subsidiary of NXP Semiconductors -N.V. ("NXP"). It concerns your rights to use the software identified in the -Software Content Register and provided to you in binary or source code form -and any accompanying written materials (the "Licensed Software"). The Licensed -Software may include any updates or error corrections or documentation relating -to the Licensed Software provided to you by NXP under this License. In -consideration for NXP allowing you to access the Licensed Software, you are -agreeing to be bound by the terms of this Agreement. If you do not agree to all -of the terms of this Agreement, do not download or install the Licensed -Software. If you change your mind later, stop using the Licensed Software and -delete all copies of the Licensed Software in your possession or control. Any -copies of the Licensed Software that you have already distributed, where -permitted, and do not destroy will continue to be governed by this Agreement. -Your prior use will also continue to be governed by this Agreement. - +LA_OPT_NXP_Software_License v39 August 2022 +IMPORTANT. Read the following NXP Software License Agreement ("Agreement") +completely. By selecting the "I Accept" button at the end of this page, or by +downloading, installing, or using the Licensed Software, you indicate that you +accept the terms of the Agreement, and you acknowledge that you have the +authority, for yourself or on behalf of your company, to bind your company to +these terms. You may then download or install the file. In the event of a +conflict between the terms of this Agreement and any license terms and +conditions for NXP's proprietary software embedded anywhere in the Licensed +Software file, the terms of this Agreement shall control. If a separate +license agreement for the Licensed Software has been signed by you and NXP, +then that agreement shall govern your use of the Licensed Software and shall +supersede this Agreement. + +NXP SOFTWARE LICENSE AGREEMENT +This is a legal agreement between your employer, of which you are an authorized +representative, or, if you have no employer, you as an individual ("you" or +"Licensee"), and NXP B.V. ("NXP"). It concerns your rights to use the software +provided to you in binary or source code form and any accompanying written +materials (the "Licensed Software"). The Licensed Software may include any +updates or error corrections or documentation relating to the Licensed Software +provided to you by NXP under this Agreement. In consideration for NXP allowing +you to access the Licensed Software, you are agreeing to be bound by the terms +of this Agreement. If you do not agree to all of the terms of this Agreement, +do not download or install the Licensed Software. If you change your mind +later, stop using the Licensed Software and delete all copies of the Licensed +Software in your possession or control. Any copies of the Licensed Software +that you have already distributed, where permitted, and do not destroy will +continue to be governed by this Agreement. Your prior use will also continue to +be governed by this Agreement. 1. DEFINITIONS - -1.1. "Affiliates" means, any corporation, or entity directly or -indirectly controlled by, controlling, or under common control with NXP -Semiconductors N.V. - -1.2. "Essential Patent" means a patent to the limited extent that -infringement of such patent cannot be avoided in remaining compliant with the -technology standards implicated by the usage of any of the Licensed Software, -including optional implementation of the standards, on technical but not -commercial grounds, taking into account normal technical practice and the state -of the art generally available at the time of standardization. - -1.3. "Intellectual Property Rights" means any and all rights under -statute, common law or equity in and under copyrights, trade secrets, and -patents (including utility models), and analogous rights throughout the world, -including any applications for and the right to apply for, any of the -foregoing. - -1.4. "Software Content Register" means the documentation -accompanying the Licensed Software which identifies the contents of the -Licensed Software, including but not limited to identification of any Third -Party Software. - -1.5. "Third Party Software" means, any software included in the -Licensed Software that is not NXP Proprietary software, and is not open source -software, and to which different license terms may apply. - +1.1. "Affiliate" means, with respect to a party, any corporation or +other legal entity that now or hereafter Controls, is Controlled by or is under +common Control with such party; where "Control" means the direct or indirect +ownership of greater than fifty percent (50%) of the shares or similar +interests entitled to vote for the election of directors or other persons +performing similar functions. An entity is considered an Affiliate only so long +as such Control exists. +1.2 "Authorized System" means either (i) Licensee's hardware product which +incorporates an NXP Product or (ii) Licensee's software program which is used +exclusively in connection with an NXP Product and with which the Licensed +Software will be integrated. +1.3. "Derivative Work" means a work based upon one or more pre-existing +works. A work consisting of editorial revisions, annotations, elaborations, or +other modifications which, as a whole, represent an original work of +authorship, is a Derivative Work. +1.4 "Intellectual Property Rights" means any and all rights under statute, +common law or equity in and under copyrights, trade secrets, and patents +(including utility models), and analogous rights throughout the world, +including any applications for and the right to apply for, any of the foregoing. +1.5 "NXP Product" means a hardware product (e.g. a microprocessor, +microcontroller, sensor or digital signal processor) and/or services (e.g. +cloud platform services) supplied directly or indirectly from NXP or an NXP +Affiliate, unless there is a product specified in the Software Content +Register, in which case this definition is limited to such product. +1.6 "Software Content Register" means the documentation which may +accompany the Licensed Software which identifies the contents of the Licensed +Software, including but not limited to identification of any Third Party +Software, if any, and may also contain other related information as whether the +license in 2.3 is applicable. +1.7 "Third Party Software" means, any software included in the Licensed +Software that is not NXP proprietary software, and is not open source software, +and to which different license terms may apply. 2. LICENSE GRANT. - -2.1. Separate license grants to Third Party Software, or other -terms applicable to the Licensed Software if different from those granted in -this Section 2, are contained in Appendix A. The Licensed Software is +2.1. If you are not expressly granted the distribution license in +Section 2.3 in the Software Content Register, then you are only granted the +rights in Section 2.2 and not in 2.3. If you are expressly granted the +distribution license in Section 2.3 in the Software Content Register, then you +are granted the rights in both Section 2.2 and 2.3. +2.2. Standard License. Subject to the terms and conditions of this +Agreement, NXP grants you a worldwide, personal, non-transferable, +non-exclusive, non-sublicensable license, solely for the development of an +Authorized System: +(a) to use and reproduce the Licensed Software (and its Derivative Works +prepared under the license in Section 2.2(b)) solely in combination with a NXP +Product; and +(b) for Licensed Software provided to you in source code form (human +readable), to prepare Derivative Works of the Licensed Software solely for use +in combination with a NXP Product. +You may not distribute or sublicense the Licensed Software to others under the +license granted in this Section 2.2. +You may demonstrate the Licensed Software to your direct customers as part of +an Authorized System so long as such demonstration is directly controlled by +you and without prior approval by NXP; however, to all other third parties only +if NXP has provided its advance, written approval (e.g. email approval) of your +demonstrating the Licensed Software to specified third parties or at specified +event(s). You may not leave the Licensed Software with a direct customer or +any other third party at any time. +2.3. Additional Distribution License. If expressly authorized in the +Software Content Register, subject to the terms and conditions of this +Agreement, NXP grants you a worldwide, personal, non-transferable, +non-exclusive, non-sublicensable license solely in connection with your +manufacturing and distribution of an Authorized System: +(a) to manufacture (or have manufactured), distribute, and market the +Licensed Software (and its Derivative Works prepared under the license in +2.2(b)) in object code (machine readable format) only as part of, or embedded +within, Authorized Systems and not on a standalone basis solely for use in +combination with a NXP Product. Notwithstanding the foregoing, those files +marked as .h files ("Header files") may be distributed in source or object code +form, but only as part of, or embedded within Authorized Systems; and +(b) to copy and distribute as needed, solely in connection with an +Authorized System and for use in combination with a NXP Product, +non-confidential NXP information provided as part of the Licensed Software for +the purpose of maintaining and supporting Authorized Systems with which the +Licensed Software is integrated. +2.4 Separate license grants to Third Party Software, or other terms +applicable to the Licensed Software if different from those granted in this +Section 2, are contained in Appendix A. The Licensed Software may be accompanied by a Software Content Register which will identify that portion of the Licensed Software, if any, that is subject to the different terms in Appendix A. - -2.2. Exclusively in connection with your development and -distribution of product containing a programmable processing unit (e.g. a -microprocessor, microcontroller, sensor or digital signal processor) supplied -directly or indirectly from NXP ("Authorized System") NXP grants you a -world-wide, personal, non-transferable, non-exclusive, non-sublicensable, -license, under NXP's Intellectual Property Rights: - -(a) to use and reproduce the Licensed Software only as part of, or -integrated within, Authorized Systems and not on a standalone basis; - -(b) to directly or indirectly manufacture, demonstrate, copy, distribute, -market and sell the Licensed Software in object code (machine readable) only as -part of, or embedded within, Authorized Systems in object code form and not on -a standalone basis. Notwithstanding the foregoing, those files marked as .h -files ("Header files") may be distributed in source or object code form, but -only as part of, or embedded within Authorized Systems. - -(c) to copy, use and distribute as needed, solely in connection with an -Authorized System, proprietary NXP information associated with the Licensed -Software for the purpose of developing, maintaining and supporting Authorized -Systems with which the Licensed Software is integrated or associated. - -2.3. For NXP Licensed Software provided to you in source code form -(human readable), NXP further grants to you a worldwide, personal, -non-transferable, non-exclusive, non-sublicensable, license, under NXP's -Intellectual Property Rights: - -(a) to prepare derivative works of the Licensed Software, only as part of, -or integrated within, Authorized Systems and not on a standalone basis; - -(b) to use, demonstrate, copy, distribute, market and sell the derivative -works of the Licensed Software in object code (machine readable) only as part -of, or integrated within, Authorized Systems and not on a standalone basis. -Notwithstanding the foregoing, those files marked as .h files ("Header files") -may be distributed in source or object code form, but only as part of, or -embedded within Authorized Systems. - -2.4. You may use subcontractors on your premises to exercise your -rights under Section 2.2 and 2.3 so long as you have an agreement in place with -the subcontractor containing confidentiality restrictions no less stringent -than those contained in this Agreement. You will remain liable for your +2.5. You may use subcontractors to exercise your rights under Section +2.2 and Section 2.3, if any, so long as you have an agreement in place with the +subcontractor containing confidentiality restrictions no less stringent than +those contained in this Agreement. You will remain liable for your subcontractors' adherence to the terms of this Agreement and for any and all acts and omissions of such subcontractors with respect to this Agreement and the Licensed Software. - 3. LICENSE LIMITATIONS AND RESTRICTIONS. - -3.1. The licenses granted above in Section 2.3 only extend to NXP -intellectual property rights that would be infringed by the Licensed Software -prior to your preparation of any derivative work. - -3.2. The Licensed Software is licensed to you, not sold. Title to +3.1. The licenses granted above in Section 2 only extend to NXP +Intellectual Property Rights that would be infringed by the unmodified Licensed +Software prior to your preparation of any Derivative Work. +3.2. The Licensed Software is licensed to you, not sold. Title to Licensed Software delivered hereunder remains vested in NXP or NXP's licensor -and cannot be assigned or transferred. You are expressly forbidden from -selling or otherwise distributing the Licensed Software, or any portion -thereof, except as expressly permitted herein. This Agreement does not grant -to you any implied rights under any NXP or third party intellectual property. - -3.3. You may not translate, reverse engineer, decompile, or -disassemble the Licensed Software except to the extent applicable law -specifically prohibits such restriction. You must prohibit your sub-licensees -from translating, reverse engineering, decompiling, or disassembling the -Licensed Software except to the extent applicable law specifically prohibits -such restriction. - -3.4. You must reproduce any and all of NXP's (or its third party +and cannot be assigned or transferred. You are expressly forbidden from selling +or otherwise distributing the Licensed Software, or any portion thereof, except +as expressly permitted herein. This Agreement does not grant to you any implied +rights under any NXP or third party Intellectual Property Rights. +3.3. You may not translate, reverse engineer, decompile, or disassemble +the Licensed Software except to the extent applicable law specifically +prohibits such restriction. You must prohibit your subcontractors or customers +(if distribution is permitted) from translating, reverse engineering, +decompiling, or disassembling the Licensed Software except to the extent +applicable law specifically prohibits such restriction. +3.4. You must reproduce any and all of NXP's (or its third-party licensor's) copyright notices and other proprietary legends on copies of Licensed Software. - -3.5. If you distribute the Licensed Software to the United States -Government, then the Licensed Software is "restricted computer software" and -is subject to FAR 52.227-19 (c)(1) and (c)(2). - -3.6. You grant to NXP a non-exclusive, non-transferable, -irrevocable, perpetual, worldwide, royalty-free, sub-licensable license under -your Intellectual Property Rights to use without restriction and for any -purpose any suggestion, comment or other feedback related to the Licensed -Software (including, but not limited to, error corrections and bug fixes). - -3.7. You will not take or fail to take any action that could -subject the Licensed Software to an Excluded License. An Excluded License means -any license that requires, as a condition of use, modification or distribution -of software subject to the Excluded License, that such software or other -software combined and/or distributed with the software be (i) disclosed or -distributed in source code form; (ii) licensed for the purpose of making -derivative works; or (iii) redistributable at no charge. - -3.8. You may not publish or distribute information, results or data -associated with the use of the Licensed Software to anyone other than NXP; -however, you must advise NXP of any results obtained including any problems or -suggested improvements thereof. NXP retains the right to use such results and -related information in any manner it deems appropriate. - +3.5. If you distribute the Licensed Software to the United States +Government, then the Licensed Software is "restricted computer software" and is +subject to FAR 52.227-19. +3.6. You grant to NXP a non-exclusive, non-transferable, irrevocable, +perpetual, worldwide, royalty-free, sub-licensable license under your +Intellectual Property Rights to use without restriction and for any purpose any +suggestion, comment or other feedback related to the Licensed Software +(including, but not limited to, error corrections and bug fixes). +3.7. You will not take or fail to take any action that could subject +the Licensed Software to an Excluded License. An Excluded License means any +license that requires, as a condition of use, modification or distribution of +software subject to the Excluded License, that such software or other software +combined and/or distributed with the software be (i) disclosed or distributed +in source code form; (ii) licensed for the purpose of making Derivative Works; +or (iii) redistributable at no charge. +3.8. You may not publish or distribute reports associated with the use +of the Licensed Software to anyone other than NXP. You may advise NXP of any +results obtained from your use of the Licensed Software, including any problems +or suggested improvements thereof, and NXP retains the right to use such +results and related information in any manner it deems appropriate. 4. OPEN SOURCE. Open source software included in the Licensed -Software is not licensed under the terms of this Agreement, but is instead +Software is not licensed under the terms of this Agreement but is instead licensed under the terms of the applicable open source license(s), such as the -BSD License, Apache License or the GNU Lesser General Public License. Your use +BSD License, Apache License or the GNU Lesser General Public License. Your use of the open source software is subject to the terms of each applicable license. You must agree to the terms of each applicable license, or you cannot use the open source software. - -5. INTELLECTUAL PROPERTY RIGHTS. Subject to NXP's ownership interest -in the underlying Licensed Software, all intellectual property rights -associated with, and title to, your Authorized System will be retained by or -will vest in you. Your modifications to the Licensed Software, and all -intellectual property rights associated with, and title thereto, will be the -property of NXP. Upon request, you must provide NXP the source code of any -derivative of the Licensed Software. You agree to assign all, and hereby do -assign all rights, title, and interest to any such modifications to the -Licensed Software to NXP and agree to provide all assistance reasonably -requested by NXP to establish, preserve or enforce such right. Further, you -agree to waive all moral rights relating to your modifications to the Licensed -Software, including, without limitation, all rights of identification of -authorship and all rights of approval, restriction, or limitation on use or -subsequent modification. Notwithstanding the foregoing, you will have the -license rights granted in Section 2 hereto to any such modifications made by -you or your licensees. - -6. PATENT COVENANT NOT TO SUE. As partial, material consideration for the -rights granted to you under this Agreement, you covenant not to sue or -otherwise assert your patents against NXP, a NXP Affiliate or subsidiary, or -a NXP licensee of the Licensed Software for infringement of your Intellectual -Property Rights by the manufacture, use, sale, offer for sale, importation or -other disposition or promotion of the Licensed Software and/or any -redistributed portions of the Licensed Software. - -7. ESSENTIAL PATENTS. You are solely responsible for obtaining licenses -for any relevant Essential Patents for your use in connection with technology -that you incorporate into your product (whether as part of the Licensed -Software or not). - -8. TERM AND TERMINATION. This Agreement will remain in effect unless -terminated as provided in this Section 8. - -8.1. You may terminate this Agreement immediately upon written -notice to NXP at the address provided below. - -8.2. Either party may terminate this Agreement if the other party -is in default of any of the terms and conditions of this Agreement, and -termination is effective if the defaulting party fails to correct such default -within 30 days after written notice thereof by the non-defaulting party to the -defaulting party at the address below. - -8.3. Notwithstanding the foregoing, NXP may terminate this -Agreement immediately upon written notice if you: breach any of your -confidentiality obligations or the license restrictions under this Agreement; -become bankrupt, insolvent, or file a petition for bankruptcy or insolvency, -make an assignment for the benefit of its creditors; enter proceedings for -winding up or dissolution ;are dissolved; or are nationalized or become subject -to the expropriation of all or substantially all of its business or assets. - -8.4. Upon termination of this Agreement, all licenses granted under -Section 2 will expire, except that any licenses extended to end-users pursuant -to Sections 2.2(b), 2.2(c), and 2.3(b), which have been granted prior to such -termination will survive. - -8.5. After termination of this Agreement by either party and upon -NXP's written request, you will, at your discretion, return to the NXP any -confidential information including all copies thereof or furnish to NXP at -the address below, a statement certifying, with respect to the Licensed -Software delivered hereunder that the original and all copies, except for -archival copies to be used solely for dispute resolution purposes, in whole or -in part, in any form, of the Licensed Software have been destroyed. - -8.6. Notwithstanding the termination of this Agreement for any -reason, the terms of Sections 1, 3, 5 through 25 will survive. - -9. SUPPORT. NXP is not obligated to provide any support, -upgrades or new releases of the Licensed Software under this Agreement. If you -wish, you may contact NXP and report problems and provide suggestions regarding -the Licensed Software. NXP has no obligation to respond to such a problem -report or suggestion. NXP may make changes to the Licensed Software at any -time, without any obligation to notify or provide updated versions of the -Licensed Software to you. - -10. NO WARRANTY. To the maximum extent permitted by law, -NXP expressly disclaims any warranty for the Licensed Software. The Licensed -Software is provided "AS IS", without warranty of any kind, either express or -implied, including without limitation the implied warranties of -merchantability, fitness for a particular purpose, or non-infringement. You -assume the entire risk arising out of the use or performance of the licensed -software, or any systems you design using the licensed software (if any). - -11. INDEMNITY. You agree to fully defend and indemnify NXP from -all claims, liabilities, and costs (including reasonable attorney's fees) -related to (1) your use (including your contractors or distributee's use, if +5. INTELLECTUAL PROPERTY RIGHTS. +Upon request, you must provide NXP the source code of any derivative of the +Licensed Software. +Unless prohibited by law, the following paragraph shall apply. Your +modifications to the Licensed Software, and all intellectual property rights +associated with, and title thereto, will be the property of NXP. You agree to +assign all, and hereby do assign all rights, title, and interest to any such +modifications to the Licensed Software to NXP and agree to provide all +assistance reasonably requested by NXP to establish, preserve or enforce such +right. Further, you agree to waive all moral rights relating to your +modifications to the Licensed Software, including, without limitation, all +rights of identification of authorship and all rights of approval, restriction, +or limitation on use or subsequent modification. Notwithstanding the +foregoing, you will have the license rights granted in Section 2 hereto to any +such modifications made by you or your licensees. +Otherwise, you agree to grant an irrevocable, worldwide, and perpetual license +to NXP to make, have made, use, sell, offer to sell, import, commercialize, +sublicense and reproduce your modifications or derivative works to the Licensed +Software without any payment to Licensee. You agree to provide all assistance +reasonably requested by NXP to establish, preserve or enforce such right. +6. ESSENTIAL PATENTS. NXP has no obligation to identify or obtain any +license to any Intellectual Property Right of a third-party that may be +necessary for use in connection with technology that is incorporated into the +Authorized System (whether or not as part of the Licensed Software). +7. TERM AND TERMINATION. This Agreement will remain in effect unless +terminated as provided in this Section. +7.1. You may terminate this Agreement immediately upon written notice +to NXP at the address provided below. +7.2. Either party may terminate this Agreement if the other party is in +default of any of the terms and conditions of this Agreement, and termination +is effective if the defaulting party fails to correct such default within 30 +days after written notice thereof by the non-defaulting party to the defaulting +party at the address below. +7.3. Notwithstanding the foregoing, NXP may terminate this Agreement +immediately upon written notice if you: breach any of your confidentiality +obligations or the license restrictions under this Agreement; become bankrupt, +insolvent, or file a petition for bankruptcy or insolvency; make an assignment +for the benefit of its creditors; enter proceedings for winding up or +dissolution; are dissolved; or are nationalized or become subject to the +expropriation of all or substantially all of your business or assets. +7.4. Upon termination of this Agreement, all licenses granted under +Section 2 will expire. +7.5. After termination of this Agreement by either party you will +destroy all parts of Licensed Software and its Derivative Works (if any) and +will provide to NXP a statement certifying the same. +7.6. Notwithstanding the termination of this Agreement for any reason, +the terms of Sections 1 and 3 through 24 will survive. +8. SUPPORT. NXP is not obligated to provide any support, upgrades or +new releases of the Licensed Software under this Agreement. If you wish, you +may contact NXP and report problems and provide suggestions regarding the +Licensed Software. NXP has no obligation to respond to such a problem report or +suggestion. NXP may make changes to the Licensed Software at any time, without +any obligation to notify or provide updated versions of the Licensed Software +to you. +9. NO WARRANTY. To the maximum extent permitted by law, NXP expressly +disclaims any warranty for the Licensed Software. The Licensed Software is +provided "AS IS", without warranty of any kind, either express or implied, +including without limitation the implied warranties of merchantability, fitness +for a particular purpose, or non-infringement. You assume the entire risk +arising out of the use or performance of the licensed software, or any systems +you design using the licensed software (if any). +10. INDEMNITY. You agree to fully defend and indemnify NXP from all +claims, liabilities, and costs (including reasonable attorney's fees) related +to (1) your use (including your subcontractor's or distributee's use, if permitted) of the Licensed Software or (2) your violation of the terms and conditions of this Agreement. - -12. LIMITATION OF LIABILITY. EXCLUDING LIABILITY FOR A BREACH -OF SECTION 2 (LICENSE GRANTS), SECTION 3 (LICENSE LIMITATIONS AND -RESTRICTIONS), SECTION 17 (CONFIDENTIAL INFORMATION), OR CLAIMS UNDER SECTION -11(INDEMNITY), IN NO EVENT WILL EITHER PARTY BE LIABLE, WHETHER IN CONTRACT, -TORT, OR OTHERWISE, FOR ANY INCIDENTAL, SPECIAL, INDIRECT, CONSEQUENTIAL OR -PUNITIVE DAMAGES, INCLUDING, BUT NOT LIMITED TO, DAMAGES FOR ANY LOSS OF USE, -LOSS OF TIME, INCONVENIENCE, COMMERCIAL LOSS, OR LOST PROFITS, SAVINGS, OR -REVENUES, TO THE FULL EXTENT SUCH MAY BE DISCLAIMED BY LAW. NXP'S TOTAL -LIABILITY FOR ALL COSTS, DAMAGES, CLAIMS, OR LOSSES WHATSOEVER ARISING OUT OF -OR IN CONNECTION WITH THIS AGREEMENT OR PRODUCT(S) SUPPLIED UNDER THIS -AGREEMENT IS LIMITED TO THE AGGREGATE AMOUNT PAID BY YOU TO NXP IN CONNECTION -WITH THE LICENSED SOFTWARE TO WHICH LOSSES OR DAMAGES ARE CLAIMED. - - -13. EXPORT COMPLIANCE. Each party shall comply with all -applicable export and import control laws and regulations including but not -limited to the US Export Administration Regulations (including prohibited -party lists issued by other federal governments), Catch-all regulations and -all national and international embargoes. Each party further agrees that it -will not knowingly transfer, divert, export or re-export, directly or -indirectly, any product, software, including software source code, or -technology restricted by such regulations or by other applicable national +11. LIMITATION OF LIABILITY. EXCLUDING LIABILITY FOR A BREACH OF +SECTION 2 (LICENSE GRANTS), SECTION 3 (LICENSE LIMITATIONS AND RESTRICTIONS), +SECTION 16 (CONFIDENTIAL INFORMATION), OR CLAIMS UNDER SECTION 10 (INDEMNITY), +IN NO EVENT WILL EITHER PARTY BE LIABLE, WHETHER IN CONTRACT, TORT, OR +OTHERWISE, FOR ANY INCIDENTAL, SPECIAL, INDIRECT, CONSEQUENTIAL OR PUNITIVE +DAMAGES, INCLUDING, BUT NOT LIMITED TO, DAMAGES FOR ANY LOSS OF USE, LOSS OF +TIME, INCONVENIENCE, COMMERCIAL LOSS, OR LOST PROFITS, SAVINGS, OR REVENUES, TO +THE FULL EXTENT SUCH MAY BE DISCLAIMED BY LAW. NXP'S TOTAL LIABILITY FOR ALL +COSTS, DAMAGES, CLAIMS, OR LOSSES WHATSOEVER ARISING OUT OF OR IN CONNECTION +WITH THIS AGREEMENT OR PRODUCT(S) SUPPLIED UNDER THIS AGREEMENT IS LIMITED TO +THE AGGREGATE AMOUNT PAID BY YOU TO NXP IN CONNECTION WITH THE LICENSED +SOFTWARE PROVIDED UNDER THIS AGREEMENT TO WHICH LOSSES OR DAMAGES ARE CLAIMED. +12. EXPORT COMPLIANCE. Each party shall comply with all applicable +export and import control laws and regulations including but not limited to the +US Export Administration Regulation (including restrictions on certain military +end uses and military end users as specified in Section 15 C.F.R. § 744.21 and +prohibited party lists issued by other federal governments), Catch-all +regulations and all national and international embargoes. Each party further +agrees that it will not knowingly transfer, divert, export or re-export, +directly or indirectly, any product, software, including software source code, +or technology restricted by such regulations or by other applicable national regulations, received from the other party under this Agreement, or any direct -product of such software or technical data to any person, firm, entity, -country or destination to which such transfer, diversion, export or re-export -is restricted or prohibited, without obtaining prior written authorization -from the applicable competent government authorities to the extent required -by those laws. - -14. GOVERNMENT CONTRACT COMPLIANCE. - -14.1. If you sell Authorized Systems directly to any government or -public entity, including U.S., state, local, foreign or international -governments or public entities, or indirectly via a prime contractor or -subcontractor of such governments or entities, NXP makes no representations, -certifications, or warranties whatsoever about compliance with government or -public entity acquisition statutes or regulations, including, without -limitation, statutes or regulations that may relate to pricing, quality, -origin or content. - -14.2. The Licensed Software has been developed at private expense and -is a "Commercial Item" as defined in 48 C.F.R. §2.101, consisting of +product of such software or technical data to any person, firm, entity, country +or destination to which such transfer, diversion, export or re-export is +restricted or prohibited, without obtaining prior written authorization from +the applicable competent government authorities to the extent required by those +laws. +13. GOVERNMENT CONTRACT COMPLIANCE +13.1. If you sell Authorized Systems directly to any government or public +entity, including U.S., state, local, foreign or international governments or +public entities, or indirectly via a prime contractor or subcontractor of such +governments or entities, NXP makes no representations, certifications, or +warranties whatsoever about compliance with government or public entity +acquisition statutes or regulations, including, without limitation, statutes or +regulations that may relate to pricing, quality, origin or content. +13.2. The Licensed Software has been developed at private expense and is a +"Commercial Item" as defined in 48 C.F.R. Section 2.101, consisting of "Commercial Computer Software", and/or "Commercial Computer Software -Documentation," as such terms are used in 48 C.F.R. §12.212 (or 48 C.F.R. -§227.7202, as applicable) and may only be licensed to or shared with U.S. -Government end users in object code form as part of, or embedded within, -Authorized Systems. Any agreement pursuant to which you share the Licensed -Software will include a provision that reiterates the limitations of this -document and requires all sub-agreements to similarly contain such limitations. - -15. SAFETY CRITICAL APPLICATIONS - -15.1. In some cases, NXP may promote certain Licensed Software for use -in safety-related applications. NXP's goal is to educate licensees so that they -can design their own end-product solutions to meet applicable functional safety -standards and requirements. You make the ultimate design decisions regarding -your products and are solely responsible for compliance with all legal, -regulatory, safety, and security related requirements concerning your products, -regardless of any information or support that may be provided by NXP. -Accordingly, you will indemnify and hold NXP harmless from any claims, -liabilities, damages and associated costs and expenses (including attorneys' -fees) that NXP may incur related to your incorporation of any product in a -safety-critical application or system. - -15.2. Only Licensed Software that NXP has specifically designated as -"Automotive Qualified" is intended for use in automotive, military, or -aerospace applications or environments. If you use Licensed Software that has -not been designated as "Automotive Qualified" in an automotive, military, or -aerospace application or environment, you do so at your own risk. - -15.3. Licensed Software is not intended or authorized for any use in -anti-personnel landmines. - -16. CHOICE OF LAW; VENUE. This Agreement will be governed by, -construed, and enforced in accordance with the laws of the State of Texas, USA, -without regard to conflicts of laws principles, will apply to all matters -relating to this Agreement or the Licensed Software, and you agree that any -litigation will be subject to the exclusive jurisdiction of the state or -federal courts Texas, USA. The United Nations Convention on Contracts for -the International Sale of Goods will not apply to this document. - -17. CONFIDENTIAL INFORMATION. Subject to the license grants and +Documentation," as such terms are used in 48 C.F.R. Section 12.212 (or 48 +C.F.R. Section 227.7202, as applicable) and may only be licensed to or shared +with U.S. Government end users in object code form as part of, or embedded +within, Authorized Systems. Any agreement pursuant to which you share the +Licensed Software will include a provision that reiterates the limitations of +this document and requires all sub-agreements to similarly contain such +limitations. +14. CRITICAL APPLICATIONS. In some cases, NXP may promote certain +software for use in the development of, or for incorporation into, products or +services (a) used in applications requiring fail-safe performance or (b) in +which failure could lead to death, personal injury, or severe physical or +environmental damage (these products and services are referred to as "Critical +Applications"). NXP's goal is to educate customers so that they can design +their own end-product solutions to meet applicable functional safety standards +and requirements. Licensee makes the ultimate design decisions regarding its +products and is solely responsible for compliance with all legal, regulatory, +safety, and security related requirements concerning its products, regardless +of any information or support that may be provided by NXP. As such, Licensee +assumes all risk related to use of the Licensed Software in Critical +Applications and NXP SHALL NOT BE LIABLE FOR ANY SUCH USE IN CRITICAL +APPLICATIONS BY LICENSEE. Accordingly, Licensee will indemnify and hold NXP +harmless from any claims, liabilities, damages and associated costs and +expenses (including attorneys' fees) that NXP may incur related to Licensee’s +incorporation of the Licensed Software in a Critical Application. +15. CHOICE OF LAW; VENUE. This Agreement will be governed by, +construed, and enforced in accordance with the laws of The Netherlands, without +regard to conflicts of laws principles, will apply to all matters relating to +this Agreement or the Licensed Software, and you agree that any litigation will +be subject to the exclusive jurisdiction of the courts of Amsterdam, The +Netherlands. The United Nations Convention on Contracts for the International +Sale of Goods will not apply to this document. +16. CONFIDENTIAL INFORMATION. Subject to the license grants and restrictions contained herein, you must treat the Licensed Software as confidential information and you agree to retain the Licensed Software in -confidence perpetually, with respect to Licensed Software in source code form -(human readable), or for a period of five (5) years from the date of -termination of this Agreement, with respect to all other parts of the Licensed -Software. During this period, you may not disclose any part of the Licensed -Software to anyone other than employees who have a need to know of the Licensed -Software and who have executed written agreements obligating them to protect -such Licensed Software to at least the same degree of care as in this -Agreement. You agree to use the same degree of care, but no less than a -reasonable degree of care, with the Licensed Software as you do with your own -confidential information. You may disclose Licensed Software to the extent -required by a court or under operation of law or order provided that you notify -NXP of such requirement prior to disclosure, which you only disclose -information required, and that you allow NXP the opportunity to object to such -court or other legal body requiring such disclosure. - -18. TRADEMARKS. You are not authorized to use any NXP -trademarks, brand names, or logos. - -19. ENTIRE AGREEMENT. This Agreement constitutes the entire -agreement between you and NXP regarding the subject matter of this Agreement, -and supersedes all prior communications, negotiations, understandings, -agreements or representations, either written or oral, if any. This Agreement -may only be amended in written form, signed by you and NXP. - -20. SEVERABILITY. If any provision of this Agreement is held for -any reason to be invalid or unenforceable, then the remaining provisions of -this Agreement will be unimpaired and, unless a modification or replacement of -the invalid or unenforceable provision is further held to deprive you or NXP of -a material benefit, in which case the Agreement will immediately terminate, the +confidence perpetually. You may not disclose any part of the Licensed Software +to anyone other than distributees in accordance with Section 2.3 and employees, +or subcontractors in accordance with Section 2.5, who have a need to know of +the Licensed Software and who have executed written agreements obligating them +to protect such Licensed Software to at least the same degree of +confidentiality as in this Agreement. You agree to use the same degree of care, +but no less than a reasonable degree of care, with the Licensed Software as you +do with your own confidential information. You may disclose Licensed Software +to the extent required by a court or under operation of law or order provided +that you notify NXP of such requirement prior to disclosure, which you only +disclose the minimum of the required information, and that you allow NXP the +opportunity to object to such court or other legal body requiring such +disclosure. +17. TRADEMARKS. You are not authorized to use any NXP trademarks, brand +names, or logos. +18. ENTIRE AGREEMENT. This Agreement constitutes the entire agreement +between you and NXP regarding the subject matter of this Agreement, and +supersedes all prior communications, negotiations, understandings, agreements +or representations, either written or oral, if any. This Agreement may only be +amended in written form, signed by you and NXP. +19. SEVERABILITY. If any provision of this Agreement is held for any +reason to be invalid or unenforceable, then the remaining provisions of this +Agreement will be unimpaired and, unless a modification or replacement of the +invalid or unenforceable provision is further held to deprive you or NXP of a +material benefit, in which case the Agreement will immediately terminate, the invalid or unenforceable provision will be replaced with a provision that is valid and enforceable and that comes closest to the intention underlying the invalid or unenforceable provision. - -21. NO WAIVER. The waiver by NXP of any breach of any provision -of this Agreement will not operate or be construed as a waiver of any other or -a subsequent breach of the same or a different provision. - -22. AUDIT. You will keep full, clear and accurate records with -respect to your compliance with the limited license rights granted under this -Agreement for three years following expiration or termination of this -Agreement. NXP will have the right, either itself or through an independent -certified public accountant to examine and audit, at NXP's expense, not more -than once a year, and during normal business hours, all such records that may -bear upon your compliance with the limited license rights granted above. You -must make prompt adjustment to compensate for any errors and/or omissions -disclosed by such examination or audit. - -23. NOTICES. All notices and communications under -this Agreement will be made in writing, and will be effective when received -at the following addresses: - -NXP: Freescale Semiconductor, Inc. - - 6501 William Cannon West OE62 - - Austin, Texas 78735 - - ATTN: Legal Department - You: The address provided at registration will be used. - -24. RELATIONSHIP OF THE PARTIES. The parties are independent -contractors. Nothing in this Agreement will be construed to create any -partnership, joint venture, or similar relationship. Neither party is +20. NO WAIVER. The waiver by NXP of any breach of any provision of this +Agreement will not operate or be construed as a waiver of any other or a +subsequent breach of the same or a different provision. +21. AUDIT. You will keep full, clear and accurate records with respect +to your compliance with the limited license rights granted under this Agreement +for three years following expiration or termination of this Agreement. NXP will +have the right, either itself or through an independent certified public +accountant to examine and audit, at NXP's expense, not more than once a year, +and during normal business hours, all such records that may bear upon your +compliance with the limited license rights granted above. You must make prompt +adjustment to compensate for any errors and/or omissions disclosed by such +examination or audit. +22. NOTICES. All notices and communications under this +Agreement will be made in writing, and will be effective when received at the +following addresses: + NXP: NXP B.V. + High Tech Campus 60 + 5656 AG Eindhoven + The Netherlands + ATTN: Legal Department + + You: The address provided at registration will be used. + +23. RELATIONSHIP OF THE PARTIES. The parties are independent +contractors. Nothing in this Agreement will be construed to create any +partnership, joint venture, or similar relationship. Neither party is authorized to bind the other to any obligations with third parties. - -25. SUCCESSION AND ASSIGNMENT. This Agreement will be binding -upon and inure to the benefit of the parties and their permitted successors -and assigns. You may not assign this Agreement, or any part of this Agreement, -without the prior written approval of NXP, which approval will not be -unreasonably withheld or delayed. - - - - - +24. SUCCESSION AND ASSIGNMENT. This Agreement will be binding upon and +inure to the benefit of the parties and their permitted successors and assigns. + You may not assign this Agreement, or any part of this Agreement, without the +prior written approval of NXP, which approval will not be unreasonably withheld +or delayed. NXP may assign this Agreement, or any part of this Agreement, in +its sole discretion. +25. PRIVACY. By agreeing to this Agreement and/or utilizing the Licensed +Software, Licensee consents to use of certain personal information, including +but not limited to name, email address, and location, for the purpose of +NXP’s internal analysis regarding future software offerings. NXP’s +complete Privacy Statement can be found at: +https://www.nxp.com/company/our-company/about-nxp/privacy-statement:PRIVACYPRACT +ICES. APPENDIX A - Other License Grants and Restrictions: The Licensed Software may include some or all of the following software, which -is either 1) not NXP proprietary software or 2) NXP proprietary software -subject to different terms than those in the Agreement. If the Software Content -Register that accompanies the Licensed Software identifies any of the following -Third Party Software or specific components of the NXP Proprietary Software, -the following terms apply to the extent they deviate from the terms in the +is either 1) Third Party Software or 2) NXP proprietary software subject to +different terms than those in the Agreement. If the Software Content Register +that accompanies the Licensed Software identifies any of the following Third +Party Software or specific components of the NXP proprietary software, the +following terms apply to the extent they deviate from the terms in the Agreement: -Third Party Software - -Use Restrictions - -Atheros - -Use of Atheros software is limited to evaluation and demonstration only. -Permitted distributions must be similarly limited. Further rights must be -obtained directly from Atheros. - -ATI (AMD) - -Distribution of ATI software must be a part of, or embedded within, Authorized -Systems that include a ATI graphics processor core. - -Broadcom Corporation - -Your use of Broadcom Corporation software is restricted to Authorized Systems -that incorporate a compatible integrated circuit device manufactured or sold by -Broadcom. - -Cirque Corporation - -Use of Cirque Corporation technology is limited to evaluation, demonstration, -or certification testing only. Permitted distributions must be similarly -limited. Further rights, including but not limited to ANY commercial -distribution rights, must be obtained directly from Cirque Corporation. - -Coding Technologies (Dolby Labs) - -Use of CTS software is limited to evaluation and demonstration only. Permitted -distributions must be similarly limited. Further rights must be obtained from -Dolby Laboratories. - -CSR - -Use of Cambridge Silicon Radio, Inc. ("CSR") software is limited to evaluation +Airbiquity Inc.: The Airbiquity software may only be used in object code and +Licensee may not sublicense the Airbiquity software to any third party. +Licensee’s license to use the Airbiquity software expires on June 30, 2023. + +Amazon: Use of the Amazon software constitutes your acceptance of the terms of +the Amazon Program Materials License Agreement (including the AVS Component +Schedule, if applicable), located at +https://developer.amazon.com/support/legal/pml. All Amazon software is hereby +designated "Amazon confidential". With the exception of the binary library of +the Amazon Wake Word Engine for “Alexa”, all Amazon software is also hereby +designated as “Restricted Program Materials”. Amazon is a third-party +beneficiary to this Agreement with respect to the Amazon software. + +Amazon Web Services, Inc.: AWS is an intended third-party beneficiary to this +Agreement with respect to the Greengrass software. If you have an account with +AWS that is not in good standing, you may not download, install, use or +distribute the Greengrass software. You will comply with all instructions and +requirements in any integration documents, guidelines, or other documentation +AWS provides. The license to the Greengrass software will immediately terminate +without notice if you (a) fail to comply with this Agreement or any other +agreement with AWS, (b) fail to make timely payment for any AWS service, (c) +fail to implement AWS updates, or (d) bring any action for intellectual +property infringement against AWS or any AWS customer utilizing AWS services. +Any dispute or claim relating to your use of the Greengrass software will be +resolved by binding arbitration, rather than in court, except that you may +assert claims in small claims court if your claims qualify. + +Amazon: AWS Fleetwise software must be used consistent with the terms found +here: https://github.com/aws/aws-iot-fleetwise-edge/blob/main/LICENSE. + +Amphion Semiconductor Ltd.: Distribution of Amphion software must be a part of, +or embedded within, Authorized Systems that include an Amphion Video Decoder. + +Apple MFi Software Development Kit: Use of Apple MFi Software and associated +documentation is restricted to current Apple MFi licensees in accordance with +the terms of their own valid and in-effect license from Apple. + +Aquantia Corp.: You may use Aquantia's API binaries solely to flash the API +software to an NXP Product which mates with an Aquantia device. + +Argus Cyber Security: The Argus software may only be used in object code and +only for evaluation and demonstration purposes. + +Atheros: Use of Atheros software is limited to evaluation and demonstration +only. Permitted distributions must be similarly limited. Further rights must +be obtained directly from Atheros. + +ATI (AMD): Distribution of ATI software must be a part of, or embedded within, +Authorized Systems that include a ATI graphics processor core. + +Au-Zone Technologies: eIQ Portal, Model Tool, DeepViewRT and ModelRunner are +distributed by NXP under license from Au-Zone Technologies. Your use of the +Licensed Software, examples and related documentation is subject to the +following: +(1) Use of Software is limited to Authorized System only +(2) In no event may Licensee Sublicense the Software +(3) AU-ZONE TECHNOLOGIES SHALL NOT BE LIABLE FOR USE OF LICENSED +SOFTWARE IN CRITICAL APPLICATIONS BY LICENSEE + +Broadcom Corporation: Your use of Broadcom Corporation software is restricted +to Authorized Systems that incorporate a compatible integrated circuit device +manufactured or sold by Broadcom. + +Cadence Design Systems: Use of Cadence audio codec software is limited to +distribution only of one copy per single NXP Product. The license granted +herein to the Cadence Design Systems HiFi aacPlus Audio Decoder software does +not include a license to the AAC family of technologies which you or your +customer may need to obtain. Configuration tool outputs may only be distributed +by licensees of the relevant Cadence SDK and distribution is limited to +distribution of one copy embedded in a single NXP Product. Your use of Cadence +NatureDSP Libraries whether in source code or in binary is restricted to NXP +SoC based systems or emulation enablement based on NXP SoC. + +Cirque Corporation: Use of Cirque Corporation technology is limited to +evaluation, demonstration, or certification testing only. Permitted +distributions must be similarly limited. Further rights, including but not +limited to ANY commercial distribution rights, must be obtained directly from +Cirque Corporation. + +Coding Technologies (Dolby Labs): Use of CTS software is limited to evaluation and demonstration only. Permitted distributions must be similarly limited. -Further rights must be obtained directly from CSR. - -NXP Wireless Charging Library - -License to the Software is limited to use in inductive coupling or wireless -charging applications - -Global Locate (Broadcom Corporation) - -Use of Global Locate, Inc. software is limited to evaluation and demonstration -only. Permitted distributions must be similarly limited. Further rights must -be obtained from Global Locate. - -Imagination Technologies Limited (IMG) - -If the Licensed Software includes proprietary software developed by IMG, your -rights are limited to a non-exclusive, world-wide right and non-transferrable -and non-sub-licensable license (i) to use and modify the Licensed Software and -documentation and (ii) to copy and distribute the Licensed Software only in -object code form solely for use on NXP Rayleigh products. If you are provided -with the Licensed Software in source code format, you are restricted to -accessing only those deliverables in source code format which are necessary for -you to carry out either specific customization or porting work in association -with NXP's Rayleigh products or your Authorized System. - -The confidentiality restrictions shall continue in force without limit in time -notwithstanding the termination or expiration of this Agreement. - -Micrium - -uC/OS-II and uC/OS-III is provided in source form for FREE short-term -evaluation, for educational use or for peaceful research. If you plan or -intend to use uC/OS-II or uC/OS-III in a commercial application/product then, -you need to contact Micrium to properly license uC/OS-II or uC/OS-III for its -use in your application/product. We provide ALL the source code for your -convenience and to help you experience uC/OS-II or uC/OS-III. The fact that -the source is provided does NOT mean that you can use it commercially without -paying a licensing fee. - -Microsoft - -If the Licensed Software includes software owned by Microsoft Corporation -("Microsoft"), it is subject to the terms of your license with Microsoft -(the "Microsoft Underlying Licensed Software") and as such, NXP grants no -license to you, beyond evaluation and demonstration in connection with NXP -processors, in the Microsoft Underlying Licensed Software. You must separately -obtain rights beyond evaluation and demonstration in connection with the -Microsoft Underlying Licensed Software from Microsoft. - -Microsoft does not provide support services for the components provided -to you through this Agreement. If you have any questions or require +Further rights must be obtained from Dolby Laboratories. + +CSR: Use of Cambridge Silicon Radio, Inc. ("CSR") software is limited to +evaluation and demonstration only. Permitted distributions must be similarly +limited. Further rights must be obtained directly from CSR. + +Crank: Use of Crank Software Inc. software is limited to evaluation and +demonstration only. Permitted distributions must be similarly limited. Further +rights must be obtained directly from Crank Software Inc. + +Cypress Semiconductor Corporation: WWD RTOS source code may only be used in +accordance with the Cypress IOT Community License Agreement obtained directly +from Cypress Semiconductor Corporation. + +Elektrobit Automotive GmbH (“EB”): EB software must be used consistent with +the EB License Terms and Conditions, Version 1.4 (Dec 2019) found here: +https://www.elektrobit.com/legal-notice/ . Licensee is only granted an +evaluation license for the EB software, defined as license to use the EB +software internally for own evaluation purposes, limited to three (3) months. +Production deployment of the EB software using this license is prohibited. See +additionally Section 2.1.1 EB EULA. + +Embedded Systems Academy GmbH (EmSA): Any use of Micro CANopen Plus is subject +to the acceptance of the license conditions described in the LICENSE.INFO file +distributed with all example projects and in the documentation and the +additional clause described below. +Clause 1: Micro CANopen Plus may not be used for any competitive or comparative +purpose, including the publication of any form of run time or compile time +metric, without the express permission of EmSA. + +Fenopix Technologies Private Limited: Under no circumstances may the CanvasJS +software product be used in any way that would compete with any product from +Fenopix. License to the CanvasJS software will terminate immediately without +notice if Licensee fail to comply with any provision of this Agreement. + +Fraunhofer IIS: Fraunhofer MPEG Audio Decoder (Fraunhofer copyright) - If you +are provided MPEG-H decoding functionality, you understand that NXP will +provide Fraunhofer your name and contact information. + +Future Technology Devices International Ltd.: Future Technology Devices +International software must be used consistent with the terms found here: +http://www.ftdichip.com/Drivers/FTDriverLicenceTerms.htm + +Global Locate (Broadcom Corporation): Use of Global Locate, Inc. software is +limited to evaluation and demonstration only. Permitted distributions must be +similarly limited. Further rights must be obtained from Global Locate. + +LC3plus: the LC3plus Low Complexity Communication Codec Plus (LC3plus) per ETSI +TS 103 634 V1.3.1, is subject to ETSI Intellectual Property Rights Policy, See +https://portal.etsi.org/directives/45_directives_jun_2022.pdf. For application +in an End Product, Fraunhofer communication applies, see +https://www.iis.fraunhofer.de/en/ff/amm/communication/lc3.html + +Microsoft: Except for Microsoft PlayReady software, if the Licensed Software +includes software owned by Microsoft Corporation ("Microsoft"), it is subject +to the terms of your license with Microsoft (the "Microsoft Underlying Licensed +Software") and as such, NXP grants no license to you, beyond evaluation and +demonstration in connection with NXP processors, in the Microsoft Underlying +Licensed Software. You must separately obtain rights beyond evaluation and +demonstration in connection with the Microsoft Underlying Licensed Software +from Microsoft. Microsoft does not provide support services for the components +provided to you through this Agreement. If you have any questions or require technical assistance, please contact NXP. Microsoft Corporation is a third -party beneficiary to this Agreement with the right to enforce the terms of -this Agreement. TO THE MAXIMUM EXTENT PERMITTED BY LAW, MICROSOFT AND ITS +party beneficiary to this Agreement with the right to enforce the terms of this +Agreement. TO THE MAXIMUM EXTENT PERMITTED BY LAW, MICROSOFT AND ITS AFFILIATES DISCLAIM ANY WARRANTIES FOR THE MICROSOFT UNDERLYING LICENSED SOFTWARE. TO THE MAXIMUM EXTENT PERMITTED BY LAW, NEITHER MICROSOFT NOR ITS AFFILIATES WILL BE LIABLE, WHETHER IN CONTRACT, TORT, OR OTHERWISE, FOR ANY DIRECT, INCIDENTAL, SPECIAL, INDIRECT, CONSEQUENTIAL OR PUNITIVE DAMAGES, INCLUDING, BUT NOT LIMITED TO, DAMAGES FOR ANY LOSS OF USE, LOSS OF TIME, -INCONVENIENCE, COMMERCIAL LOSS, OR LOST PROFITS, SAVINGS, OR REVENUES, -ARISING FROM THE FROM THE USE OF THE MICROSOFT UNDERLYING LICENSED SOFTWARE. - -MindTree - -Notwithstanding the terms contained in Section 2.3 (a), if the Licensed -Software includes proprietary software of MindTree in source code format, -Licensee may make modifications and create derivative works only to the +INCONVENIENCE, COMMERCIAL LOSS, OR LOST PROFITS, SAVINGS, OR REVENUES, ARISING +FROM THE FROM THE USE OF THE MICROSOFT UNDERLYING LICENSED SOFTWARE. With +respect to the Microsoft PlayReady software, you will have the license rights +granted in Section 2, provided that you may not use the Microsoft PlayReady +software unless you have entered into a Microsoft PlayReady Master Agreement +and license directly with Microsoft. + +MindTree: Notwithstanding the terms contained in Section 2.3 (a), if the +Licensed Software includes proprietary software of MindTree in source code +format, Licensee may make modifications and create derivative works only to the extent necessary for debugging of the Licensed Software. -MPEG LA - -Use of MPEG LA audio or video codec technology is limited to evaluation -and demonstration only. Permitted distributions must be similarly limited. -Further rights must be obtained directly from MPEG LA. - -MQX RTOS Code - -MQX RTOS source code may not be re-distributed by any FSL Licensee under any -circumstance, even by a signed written amendment to this Agreement. - -Opus - -Use of Opus software must be consistent with the terms of the Opus license -which can be found at: {http://www.opus-codec.org/license/} - -Real Networks - its GStreamer Optimized Real Format Client Code implementation -or OpenMax Optimized Real Format Client Code - -Use of the GStreamer Optimized Real Format Client Code, or OpenMax Optimized -Real Format Client code is restricted to applications in the automotive market. -Licensee must be a final manufacturer in good standing with a current license -with Real Networks for the commercial use and distribution of products -containing the GStreamer Optimized Real Format Client Code implementation or -OpenMax Optimized Real Format Client Code - -SanDisk Corporation - -If the Licensed Software includes software developed by SanDisk Corporation -("SanDisk"), you must separately obtain the rights to reproduce and distribute -this software in source code form from SanDisk. Please follow these easy steps -to obtain the license and software: - -1. Contact your local SanDisk sales representative to obtain the SanDisk +MM SOLUTIONS AD: Use of MM SOLUTIONS AEC (Auto Exposure Control) and AWB (Auto +White Balance) software is limited to demonstration, testing, and evaluation +only. In no event may Licensee distribute or sublicense the MM SOLUTIONS +software. Further rights must be obtained directly from MM SOLUTIONS. + +MPEG LA: Use of MPEG LA audio or video codec technology is limited to +evaluation and demonstration only. Permitted distributions must be similarly +limited. Further rights must be obtained directly from MPEG LA. + +MQX RTOS Code: MQX RTOS source code may not be re-distributed by any NXP +Licensee under any circumstance, even by a signed written amendment to this +Agreement. + +NXP Voice Software: VoiceSpot, VoiceSeeker (including AEC), and Conversa may be +used for evaluation or demonstration purposes only. Any commercial distribution +rights are subject to a separate royalty agreement obtained from NXP. + +NXP Wireless Charging Library: License to the Software is limited to use in +inductive coupling or wireless charging applications + +Opus: Use of Opus software must be consistent with the terms of the Opus +license which can be found at: http://www.opus-codec.org/license/ + +Oracle JRE (Java): The Oracle JRE must be used consistent with terms found +here: http://java.com/license + +P&E Micro: P&E Software must be used consistent with the terms found here: +http://www.pemicro.com/licenses/gdbserver/license_gdb.pdf + +Pro Design Electronic: Licensee may not modify, create derivative works based +on, or copy the Pro Design software, documentation, hardware execution key or +the accompanying materials. Licensee shall not use Pro Design's or any of its +licensors names, logos or trademarks to market the Authorized System. Only NXP +customers and distributors are permitted to further redistribute the Pro Design +software and only as part of an Authorized System which contains the Pro Design +software. + +Qualcomm Atheros, Inc.: Notwithstanding anything in this Agreement, Qualcomm +Atheros, Inc. Wi-Fi software must be used strictly in accordance with the +Qualcomm Atheros, Inc. Technology License Agreement that accompanies such +software. Any other use is expressly prohibited. + +Real Networks - GStreamer Optimized Real Format Client Code implementation or +OpenMax Optimized Real Format Client Code: Use of the GStreamer Optimized Real +Format Client Code, or OpenMax Optimized Real Format Client code is restricted +to applications in the automotive market. Licensee must be a final +manufacturer in good standing with a current license with Real Networks for the +commercial use and distribution of products containing the GStreamer Optimized +Real Format Client Code implementation or OpenMax Optimized Real Format Client +Code + +RivieraWaves SAS (a member of the CEVA, Inc. family of companies): You may not +use the RivieraWaves intellectual property licensed under this Agreement if you +develop, market, and/or license products similar to such RivieraWaves +intellectual property. Such use constitutes a breach of this Agreement. Any +such use rights must be obtained directly from RivieraWaves. + +SanDisk Corporation: If the Licensed Software includes software developed by +SanDisk Corporation ("SanDisk"), you must separately obtain the rights to +reproduce and distribute this software in source code form from SanDisk. +Please follow these easy steps to obtain the license and software: +(1) Contact your local SanDisk sales representative to obtain the SanDisk License Agreement. - -2. Sign the license agreement. Fax the signed agreement to SanDisk USA +(2) Sign the license agreement. Fax the signed agreement to SanDisk USA marketing department at 408-542-0403. The license will be valid when fully executed by SanDisk. - -3. If you have specific questions, please send an email to -sales@sandisk.com - +(3) If you have specific questions, please send an email to sales@sandisk.com You may only use the SanDisk Corporation Licensed Software on products compatible with a SanDisk Secure Digital Card. You may not use the SanDisk Corporation Licensed Software on any memory device product. SanDisk retains all rights to any modifications or derivative works to the SanDisk Corporation Licensed Software that you may create. -Texas Instruments - -Your use of Texas Instruments Inc. WiLink8 Licensed Software is restricted to -NXP SoC based systems that include a compatible connectivity device -manufactured by TI. - -Vivante - -Distribution of Vivante software must be a part of, or embedded within, -Authorized Systems that include a Vivante Graphics Processing Unit. - - -Synopsys/Target Compiler Technologies - - -Your use of the Synopsys/Target Compiler Technologies Licensed Software -and related documentation is subject to the following: - -- Duration of the license for the Licensed Software is limited to -12 months, unless otherwise specified in the license file. - -- The Licensed Software is usable by one user at a time on a single - designated computer, unless otherwise agreed by Synopsys. - -- Licensed Software and documentation are to be used only on a -designated computer at the designated physical address provided by you on the -APEX license form. +SEGGER Microcontroller - emWin Software: Your use of SEGGER emWin software and +components is restricted for development of NXP ARM7, ARM9, Cortex-M0, +Cortex-M3, Cortex-M4, Cortex-M33, Cortex-M7, and Cortex-A7 based products only. + +SEGGER Microcontroller - J-Link/J-Trace Software: Segger software must be used +consistent with the terms found here: http://www.segger.com/jlink-software.html + +Synopsys/BLE Software: Your use of the Synopsys/BLE Software and related +documentation is subject to the following: +(1) Synopsys is third-party beneficiaries of, and thus may enforce against you, +the license restrictions and confidentiality obligations in this agreement with +respect to their intellectual property and proprietary information. +(2) Your distribution of the Licensed Software shall subject any recipient to a +written agreement at least as protective of the Licensed Software as provided +in this Agreement. + +Synopsys/Target Compiler Technologies: Your use of the Synopsys/Target Compiler +Technologies Licensed Software and related documentation is subject to the +following: +(1) Duration of the license for the Licensed Software is limited to 12 months, +unless otherwise specified in the license file. +(2) The Licensed Software is usable by one user at a time on a single +designated computer, unless otherwise agreed by Synopsys. +(3) Licensed Software and documentation are to be used only on a designated +computer at the designated physical address provided by you on the APEX license +form. +(4) The Licensed Software is not sub-licensable. + +T2 Labs / T2 Software: As a condition to the grant of any license under this +Agreement, you represent and warrant that you will comply with all licenses, +agreements, rules and bylaws of the Bluetooth SIG (Special Interest Group ) +applicable to the licensed software and documentation and its use which may +affect when and if you may take certain actions under licenses granted +hereunder. + +The license grant under this Agreement is conditional to you being (i) a +Bluetooth SIG Associate member until such time as the specifications for the +software are made public to Bluetooth SIG members of any level and (ii) +thereafter a Bluetooth SIG member of any level. + +Notwithstanding the terms contained in Section 2.3 (a), if the licensed +software includes proprietary software in source code format, you may make +modifications and create derivative works only to the extent necessary for +improving the performance of the source code with the NXP products or your +products and for creating enhancements of such products. You may not further +sublicense or otherwise distribute the source code, or any modifications or +derivatives thereof as stand-alone products. You will be responsible for +qualifying any modifications or derivatives with the Bluetooth SIG and any +other qualifying bodies. +TARA Systems: Use of TARA Systems GUI technology Embedded Wizard is limited to +evaluation and demonstration only. Permitted distributions must be similarly +limited. Further rights must be obtained directly from TARA Systems. + +Texas Instruments: Your use of Texas Instruments Inc. WiLink8 Licensed Software +is restricted to NXP SoC based systems that include a compatible connectivity +device manufactured by TI. + +TES Electronic Solutions Germany (TES): TES 3D Surround View software and +associated data and documentation may only be used for evaluation purposes and +for demonstration to third parties in integrated form on a board package +containing an NXP S32V234 device. Licensee may not distribute or sublicense the +TES software. Your license to the TES software may be terminated at any time +upon notice. + +Vivante: Distribution of Vivante software must be a part of, or embedded +within, Authorized Systems that include a Vivante Graphics Processing Unit. diff --git a/sdk_container/src/third_party/portage-stable/net-dns/c-ares/Manifest b/sdk_container/src/third_party/portage-stable/net-dns/c-ares/Manifest index 9075a9c8964..790088c7b05 100644 --- a/sdk_container/src/third_party/portage-stable/net-dns/c-ares/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-dns/c-ares/Manifest @@ -1,6 +1,6 @@ DIST c-ares-1.19.1.tar.gz 1579100 BLAKE2B 4b6c9593edb1a91ab76d54ddacb1cd5d67006d5e628ea1f3289f54e9360be32abeb5d8fc7d23e193feab3e7928e8efde82757eb12fe217dc92ed0d9132bedf5d SHA512 466a94efda626e815a6ef7a890637056339f883d549ea6055e289fd8cd2391130e5682c905c0fb3bd7e955af7f6deb793562c170eb0ee066a4a62085a82ba470 DIST c-ares-1.19.1.tar.gz.asc 488 BLAKE2B 9c47d7b3e67d9a2bd1e332912d21d20ca591fc34f81707c18a4615ea14ba2da00146d1998250a5f4dd2a0b1c04f9bd2013d4940ac734674c0bdff6815985e19d SHA512 1b204ab1a667af1326be4b7c62c0919aacd447a2e00efea4b8ef2ec9f2b13ffb236a836ff8953b0b3359727faf3fb8cfcd71d0b06a0e533a09f9e9ea66024f4e -DIST c-ares-1.20.1.tar.gz 1599175 BLAKE2B 44d160e04dcbd78f0ad7c1f2eb3f34ff07017fd9b5c4bc12b81b123022297adccfff45f43630f8c73afdfd9424ff6ee9fb96c627405ec486c8d78bb0c7e518ca SHA512 83400fb276ebcf16dfe6f43d56ca87839d132b5a0544420eda9fa148eb85468b3f215593fcefc2a7a3a8ed8b0d4ef093ed99616a4e466b01f6913934240539e4 -DIST c-ares-1.20.1.tar.gz.asc 488 BLAKE2B 5a6a9e60dd3fb675cafbbf60c7b6c75b385786d1171afa9b1effcdf0187dbd044c93f6a0e87f685b5fdf2992892fdd760e2dc3246c196d011c157fc88bbb5ab4 SHA512 f0622f6df863c599028f20462fb6f5604f30243f51f382c8430abe2afbf3583cb6ffe527f0a38e646700d753d90fa9a2a4d197a7540b2fc9bed1d779fe3b43df DIST c-ares-1.21.0.tar.gz 1623742 BLAKE2B 708933603dfc6c0286e798b3244eb9d8bce500acb915a255b82e00133509e5c2ceaad6b9b4cd081fcd9193b64fdb72e4e7ff6deeca8eb1744124ab9239cacac0 SHA512 c526b0a28d8ea1c6a53215dfd52e8250c968513a667c5414459d97d46288da7e7a2193d757fc78225e56c6684b3d30e756dd3e5a31917e996c871773a34892ea DIST c-ares-1.21.0.tar.gz.asc 488 BLAKE2B b1985393dfc147abe729b5622c4c92585072173a169947caf1a9521d341dac2119e34691b96e31716df66a251dbba3a5284cddd4c47af0d0bd91e20576d5671e SHA512 0e75e51ebf97ec4ed0880811ddb60f741ea190c2e63011aad9a4233fe4e2481d0c660d401a5cf596fe257930365a366082c2b5faa34bb7b346d147cfc51392ff +DIST c-ares-1.22.1.tar.gz 1665059 BLAKE2B 720d0efdbcb591cf9a8b99a60f24c9c720eee4283608d12af45890f3a534e334487c9ce9eeaaed992c78ce5ff683e57ec08f5a3ba84efa818e1e39fc1ad91ed6 SHA512 9b9aa3ff48a76e7d1464f5fc644e736d09898b2245c81292c510d1a3b967dca13e4711bab564947ec99c118094c385d12a92ddd767a84153fdd21df03da75349 +DIST c-ares-1.22.1.tar.gz.asc 488 BLAKE2B a3723365cd733ca4551b039038baeb94b4e53dda3dac1c479606c07fbc09b8ea0ebbd83b26ede8e0a1782ac06dfb62b53472e0024239175d763fb1f3e6834b50 SHA512 37ad0a9c72e7a98bf83e4be107040c3223880a784e01a917dbe72861e2f4ca692100d2b8543be3c960d21fc8d3d57a7075f99ba6de61366a93783cea07cc9f76 diff --git a/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.21.0.ebuild b/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.21.0.ebuild index 3f0ca563d3b..06044911cd7 100644 --- a/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.21.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.21.0.ebuild @@ -17,7 +17,7 @@ SRC_URI=" LICENSE="MIT ISC" # Subslot = SONAME of libcares.so.2 SLOT="0/2" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="static-libs test" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.20.1.ebuild b/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.22.1.ebuild similarity index 77% rename from sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.20.1.ebuild rename to sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.22.1.ebuild index 3f0ca563d3b..8fbe8498c19 100644 --- a/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.20.1.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-dns/c-ares/c-ares-1.22.1.ebuild @@ -43,7 +43,23 @@ QA_CONFIG_IMPL_DECL_SKIP=( ) multilib_src_configure() { + # These configure tests take a long time to run. The args one runs in O(n^4). + export ac_cv_func_getnameinfo='yes' + export ac_cv_func_recvfrom='yes' + export ac_cv_func_recv='yes' + export ac_cv_func_send='yes' + export curl_cv_func_getnameinfo_args='const struct sockaddr *,socklen_t,size_t,int' + export curl_cv_func_recv_args='int,void *,size_t,int,int' + export curl_cv_func_recvfrom_args='int,void *,size_t,int,struct sockaddr *,socklen_t *,int' + export curl_cv_func_send_args='int,const void *,size_t,int,int' + export curl_cv_getnameinfo='yes' + export curl_cv_recv='yes' + export curl_cv_recvfrom='yes' + export curl_cv_send='yes' + local myeconfargs=( + --cache-file="${BUILD_DIR}"/config.cache + --enable-nonblocking --enable-symbol-hiding $(use_enable static-libs static) diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/ipset/ipset-7.19-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-firewall/ipset/ipset-7.19-r1.ebuild new file mode 100644 index 00000000000..15cdfadce81 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-firewall/ipset/ipset-7.19-r1.ebuild @@ -0,0 +1,114 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MODULES_OPTIONAL_IUSE=modules +inherit autotools bash-completion-r1 linux-mod-r1 systemd + +DESCRIPTION="IPset tool for iptables, successor to ippool" +HOMEPAGE="https://ipset.netfilter.org/ https://git.netfilter.org/ipset/" +SRC_URI="https://ipset.netfilter.org/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" + +RDEPEND=" + net-firewall/iptables + net-libs/libmnl:= +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +DOCS=( ChangeLog INSTALL README UPGRADE ) + +# configurable from outside, e.g. /etc/portage/make.conf +IP_NF_SET_MAX=${IP_NF_SET_MAX:-256} + +src_prepare() { + default + eautoreconf +} + +pkg_setup() { + get_version + CONFIG_CHECK="NETFILTER" + ERROR_NETFILTER="ipset requires NETFILTER support in your kernel." + CONFIG_CHECK+=" NETFILTER_NETLINK" + ERROR_NETFILTER_NETLINK="ipset requires NETFILTER_NETLINK support in your kernel." + # It does still build without NET_NS, but it may be needed in future. + #CONFIG_CHECK="${CONFIG_CHECK} NET_NS" + #ERROR_NET_NS="ipset requires NET_NS (network namespace) support in your kernel." + CONFIG_CHECK+=" !PAX_CONSTIFY_PLUGIN" + ERROR_PAX_CONSTIFY_PLUGIN="ipset contains constified variables (#614896)" + + build_modules=0 + if use modules; then + if linux_config_src_exists && linux_chkconfig_builtin "MODULES" ; then + if linux_chkconfig_present "IP_NF_SET" || \ + linux_chkconfig_present "IP_SET"; then #274577 + eerror "There is IP{,_NF}_SET or NETFILTER_XT_SET support in your kernel." + eerror "Please either build ipset with modules USE flag disabled" + eerror "or rebuild kernel without IP_SET support and make sure" + eerror "there is NO kernel ip_set* modules in /lib/modules//... ." + die "USE=modules and in-kernel ipset support detected." + else + einfo "Modular kernel detected. Gonna build kernel modules..." + build_modules=1 + fi + else + eerror "Nonmodular kernel detected, but USE=modules. Either build" + eerror "modular kernel (without IP_SET) or disable USE=modules" + die "Nonmodular kernel detected, will not build kernel modules" + fi + fi + + [[ ${build_modules} -eq 1 ]] && linux-mod-r1_pkg_setup +} + +src_configure() { + export bashcompdir="$(get_bashcompdir)" + + econf \ + --enable-bashcompl \ + $(use_with modules kmod) \ + --with-maxsets=${IP_NF_SET_MAX} \ + --with-ksource="${KV_DIR}" \ + --with-kbuild="${KV_OUT_DIR}" +} + +src_compile() { + einfo "Building userspace" + + local modlist=( xt_set=kernel/net/netfilter/ipset/:"${S}":kernel/net/netfilter/: + em_ipset=kernel/net/sched:"${S}":kernel/net/sched/:modules ) + + for i in ip_set{,_bitmap_{ip{,mac},port},_hash_{ip{,mac,mark,port{,ip,net}},mac,net{,port{,net},iface,net}},_list_set}; do + modlist+=( ${i}=kernel/net/netfilter/ipset/:"${S}":kernel/net/netfilter/ipset ) + done + + emake + + if [[ ${build_modules} -eq 1 ]]; then + einfo "Building kernel modules" + linux-mod-r1_src_compile + fi +} + +src_install() { + einfo "Installing userspace" + default + + find "${ED}" -name '*.la' -delete || die + + newinitd "${FILESDIR}"/ipset.initd-r5 ${PN} + newconfd "${FILESDIR}"/ipset.confd-r1 ${PN} + systemd_newunit "${FILESDIR}"/ipset.systemd-r1 ${PN}.service + keepdir /var/lib/ipset + + if [[ ${build_modules} -eq 1 ]]; then + einfo "Installing kernel modules" + linux-mod-r1_src_install + fi +} diff --git a/sdk_container/src/third_party/portage-stable/net-firewall/ipset/metadata.xml b/sdk_container/src/third_party/portage-stable/net-firewall/ipset/metadata.xml index 64616aa9d16..2538887d06a 100644 --- a/sdk_container/src/third_party/portage-stable/net-firewall/ipset/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/net-firewall/ipset/metadata.xml @@ -9,4 +9,8 @@ robbat2@gentoo.org Robin H. Johnson + + mpagano@gentoo.org + Mike Pagano + diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libmicrohttpd/libmicrohttpd-0.9.77.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/libmicrohttpd/libmicrohttpd-0.9.77.ebuild index fd1fbe4258f..d0eed498d5a 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/libmicrohttpd/libmicrohttpd-0.9.77.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-libs/libmicrohttpd/libmicrohttpd-0.9.77.ebuild @@ -14,7 +14,7 @@ S="${WORKDIR}"/${MY_P} LICENSE="|| ( LGPL-2.1+ !ssl? ( GPL-2+-with-eCos-exception-2 ) )" SLOT="0/12" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" IUSE="+epoll +eventfd ssl static-libs test +thread-names" REQUIRED_USE="epoll? ( kernel_linux )" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/Manifest b/sdk_container/src/third_party/portage-stable/net-libs/libpcap/Manifest index 8c00e3d8d21..4f89b6eceec 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-libs/libpcap/Manifest @@ -1,4 +1,2 @@ -DIST libpcap-1.10.3.tar.gz 951869 BLAKE2B 3614042f7d8cd5a25221f52d2ed09f9f44643cdc0901ff21041ddb7ba85193c667036f7d989c8b59e6e205d630e062da46533110914dd287013a9ff80b31e97f SHA512 57bc07cbc8c326e203ce10ce1eb9f55760fc33320718d8643c65a68949334291877dffcf19af5f61eb9b4eda2d8ffe7bacee38363d2d6536cc85ae81c851684d -DIST libpcap-1.10.3.tar.gz.sig 442 BLAKE2B 30f0053bc05564fd06aeac751d85eb4838c55c783a0eed450f4de238391c87b8915378f4dc679a14276c9e5e17e9bc74b861241a0a0e86bb22dc2680552f43db SHA512 dc5ae51a96f9dfc570009a5c711a1e4eca012e99d6eb7af3b35c5636199b3273e92a657fdf85688650c093cc9b6c435ba1e9b84100469b2604b8d3125613b4ab DIST libpcap-1.10.4.tar.gz 952153 BLAKE2B 05a7eafc1e1817f7844008db89d8fb10cd2525c22f7ee6c9e3d582b14229412f38ccced5e9d80a96dd459ef9eab12eccb5c1dd4978ddc9f66267469212005e4c SHA512 1f6d6ddd07dae7c557054cb246437ecdaf39d579592a5a6bdf1144eea6cb5a779ac4ca647cfed11ec1b0bb18efc63b845444e497070bacefaaed19a5787ae5e1 DIST libpcap-1.10.4.tar.gz.sig 442 BLAKE2B d0eb5da9a57003848b24d458e50a201d0bb8876a12e63f6627bf9dc1a784e780610cd0c858243cc75a63999b40bc64507b078777ae844ede7c07eef9f4f9e0d5 SHA512 34aa401c2e162d708c61b78b445af2fe4ddc0e57de9124b5cc3a05679ffbc3834088160f83892d827e25c65b33313fe71aa73c2de09935d387252ab315ca5ee1 diff --git a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-1.10.3.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-1.10.3.ebuild deleted file mode 100644 index 5d183cff7e9..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-libs/libpcap/libpcap-1.10.3.ebuild +++ /dev/null @@ -1,91 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools multilib-minimal - -DESCRIPTION="A system-independent library for user-level network packet capture" -HOMEPAGE="https://www.tcpdump.org/ https://github.com/the-tcpdump-group/libpcap" - -if [[ ${PV} == *9999* ]] ; then - EGIT_REPO_URI="https://github.com/the-tcpdump-group/libpcap" - inherit git-r3 -else - VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/tcpdump.asc - inherit verify-sig - - SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz" - SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig )" - - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" -fi - -LICENSE="BSD" -SLOT="0" -IUSE="bluetooth dbus netlink rdma remote static-libs test usb yydebug" -RESTRICT="!test? ( test )" - -RDEPEND=" - bluetooth? ( net-wireless/bluez:=[${MULTILIB_USEDEP}] ) - dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] ) - netlink? ( dev-libs/libnl:3[${MULTILIB_USEDEP}] ) - remote? ( virtual/libcrypt:=[${MULTILIB_USEDEP}] ) - rdma? ( sys-cluster/rdma-core ) - usb? ( virtual/libusb:1[${MULTILIB_USEDEP}] ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - app-alternatives/yacc - sys-devel/flex - dbus? ( virtual/pkgconfig ) -" - -if [[ ${PV} != *9999* ]] ; then - BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-tcpdump )" -fi - -src_prepare() { - default - - if ! [[ -f VERSION ]]; then - echo ${PV} > VERSION || die - fi - - eautoreconf -} - -multilib_src_configure() { - # bug #884275 - export LEX=flex - - ECONF_SOURCE="${S}" econf \ - $(use_enable bluetooth) \ - $(use_enable dbus) \ - $(use_enable rdma) \ - $(use_enable remote) \ - $(use_enable usb) \ - $(use_enable yydebug) \ - $(use_with netlink libnl) \ - --enable-ipv6 -} - -multilib_src_compile() { - emake all shared - use test && emake testprogs -} - -multilib_src_test() { - testprogs/findalldevstest || die -} - -multilib_src_install_all() { - dodoc CREDITS CHANGES VERSION TODO README.* doc/README.* - - # remove static libraries (--disable-static does not work) - if ! use static-libs; then - find "${ED}" -name '*.a' -exec rm {} + || die - fi - - find "${ED}" -name '*.la' -delete || die -} diff --git a/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/Manifest b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/Manifest index e31d99999eb..7534ef907a7 100644 --- a/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/Manifest @@ -3,3 +3,4 @@ DIST nghttp2-1.51.0-pthread.patch 24623 BLAKE2B 55c63b4851788e4e18df1f7881fc370b DIST nghttp2-1.51.0.tar.xz 4115988 BLAKE2B ca3c5fb439b60f67ce5447c957397c16c7659432d3a3b25076b88142318675eb2af9f039a86ce88df8af3bd0167d98f14cdeb8dad2d01eda1378015acefa354e SHA512 0212680e57a15f9afca3b5226429edebd2fe8a52117480007d4472cd0c1bd3aa4d9f21269c637a11efd0f2146a3ee16c3c07ab35d9fb3d4566235d3a14268eeb DIST nghttp2-1.52.0.tar.xz 1491732 BLAKE2B a77ff3e1f901768daf7e681cad06bf3b9ea44876dba76e06c2aaec8637196f27ee7213e3ef52da53b995f68a2a617f64947b4392f57140310bdc5a1d994ad1b2 SHA512 3af1ce13270f7afc8652bd3de71200d9632204617fe04d2be7156d60eeb1a5cc415573677791a399ae03577e8e3256939b1b05d27dbd98dee504d09ec5325d56 DIST nghttp2-1.57.0.tar.xz 1543568 BLAKE2B 6fad0f922477f896db14319433569b99cf599217335b5af189cc7b460f78996a801845927040d4f529151bbcc572b2cf4d8d28eae2647fad1fd35f796fd4afb8 SHA512 d914eb48afd1ea182c1b2a454bf5e7963a7e28165f1d6d29bb83dd61a1b611c8c469e72a7a22daf23b8037f6e5ae9d4e791150b7d135746c1a5ec71ceb777f92 +DIST nghttp2-1.58.0.tar.xz 1546332 BLAKE2B db51bf6a0307f1465f4fcda7555b3a720800ee09aa8d26533fb6726f9b56a137435f5ea745f8fa5f927c8638e2a8fd371b04825e23c6a802070cebcfb654d256 SHA512 97b70727c633be1168df6a5b48617dde113b1d1e34176ec8bf22f4449041af2f73b2ada438d14336c9712271ec6bfc7525f000c8ca6a7a9f8d06db01b876dd1c diff --git a/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.58.0.ebuild b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.58.0.ebuild new file mode 100644 index 00000000000..c028ca91bbb --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-libs/nghttp2/nghttp2-1.58.0.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake-multilib + +DESCRIPTION="HTTP/2 C Library" +HOMEPAGE="https://nghttp2.org/" +SRC_URI="https://github.com/nghttp2/nghttp2/releases/download/v${PV}/${P}.tar.xz" + +LICENSE="MIT" +SLOT="0/1.14" # 1. +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="debug hpack-tools jemalloc static-libs systemd test utils xml" + +RESTRICT="!test? ( test )" + +SSL_DEPEND=" + >=dev-libs/openssl-1.0.2:0=[-bindist(-),${MULTILIB_USEDEP}] +" +RDEPEND=" + hpack-tools? ( >=dev-libs/jansson-2.5:= ) + jemalloc? ( dev-libs/jemalloc:=[${MULTILIB_USEDEP}] ) + utils? ( + ${SSL_DEPEND} + >=dev-libs/libev-4.15[${MULTILIB_USEDEP}] + >=sys-libs/zlib-1.2.3[${MULTILIB_USEDEP}] + net-dns/c-ares:=[${MULTILIB_USEDEP}] + ) + systemd? ( >=sys-apps/systemd-209 ) + xml? ( >=dev-libs/libxml2-2.7.7:2[${MULTILIB_USEDEP}] )" +DEPEND="${RDEPEND} + test? ( >=dev-util/cunit-2.1[${MULTILIB_USEDEP}] )" +BDEPEND="virtual/pkgconfig" + +multilib_src_configure() { + local mycmakeargs=( + -DENABLE_EXAMPLES=OFF + -DENABLE_FAILMALLOC=OFF + -DENABLE_WERROR=OFF + -DENABLE_THREADS=ON + -DENABLE_DEBUG=$(usex debug) + -DENABLE_HPACK_TOOLS=$(multilib_native_usex hpack-tools) + $(cmake_use_find_package hpack-tools Jansson) + -DWITH_JEMALLOC=$(multilib_native_usex jemalloc) + -DENABLE_STATIC_LIB=$(usex static-libs) + $(cmake_use_find_package systemd Systemd) + $(cmake_use_find_package test CUnit) + -DENABLE_APP=$(multilib_native_usex utils) + -DWITH_LIBXML2=$(multilib_native_usex xml) + ) + cmake_src_configure +} + +multilib_src_test() { + eninja check +} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/bridge-utils/bridge-utils-1.7.1-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/bridge-utils/bridge-utils-1.7.1-r1.ebuild index d668c78e802..268d8c30760 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/bridge-utils/bridge-utils-1.7.1-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/bridge-utils/bridge-utils-1.7.1-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -6,10 +6,10 @@ EAPI=7 inherit autotools linux-info toolchain-funcs DESCRIPTION="Tools for configuring the Linux kernel 802.1d Ethernet Bridge" -HOMEPAGE="http://bridge.sourceforge.net/" +HOMEPAGE="https://bridge.sourceforge.net/" SRC_URI="https://www.kernel.org/pub/linux/utils/net/${PN}/${P}.tar.xz" -LICENSE="GPL-2" +LICENSE="GPL-2+" SLOT="0" KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86" IUSE="selinux" diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest b/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest index ad05e9e07a1..0f6e4d3f856 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/Manifest @@ -1,5 +1,3 @@ -DIST curl-8.2.1.tar.xz 2631932 BLAKE2B 77c0b067935397afb3961378f2fe349fa988c6379c1ab7437c5d5f967710b2e9ba7aec91df8fe58a8b26c00c0164d4db9bd095ca27d1bf52b768c8d83cc0ecaf SHA512 3f78c9330c52d32b166f17829fc2be13418ef925e88f75aacad7f369e7afe00dc4a56566418730dbb845b2b284d721b08f639df322e2e1ef2dfab165c4189094 -DIST curl-8.2.1.tar.xz.asc 488 BLAKE2B 569a7c8d338f7175b5035fa281861b57cce7f5327ec6437d79e215e5a806619c9432d7960687e5463787f681cc408371c1eb1f0db7fb8678b8ef34ec50ef69d0 SHA512 31ee66a09e7bd14de949ae991c23a0b905d38407b73ae39bae6d01854d8708355c14bc4d0eab3ff931b85986d0236dd34e934eef6061f4b70739137fd0525084 DIST curl-8.3.0.tar.xz 2641764 BLAKE2B 6875b20e27ed86f9b6ab256210d85e9fb3b39645e8be710b2e6fe29fba40220f870e06bc21e8a92244670fed0a08c7716e4806a267ede49c4ed6d66e03f5fcd4 SHA512 6404b4c74fe1185cb482631ca3a143996cb7298d0d8a76bfafd7696e7729c00559999a069bdba782dee3f3eb273fb678a4438cb27d3deca54022878cdff83a51 DIST curl-8.3.0.tar.xz.asc 488 BLAKE2B ef5a749e579710d45db9f73da0cbcb58d77a9dfe73be622536496997fa792fe5cbd0331a31f01e21cbdb36c6384dca44baa647c9f3d20effabb5bfc275b1b491 SHA512 b7d45722640ac50181b20a6d663168ec6eec6691c5604ddfe9c7177f07da598cb2de688c631043dc428c311774d781ccd16bd1e2fb4f038be651e3bee383aec4 DIST curl-8.4.0.tar.xz 2658376 BLAKE2B ea5ebecc3c1aeac3ae8fd0cf7d8ff3298149b9c4c556fb85ed8d9310e3613228eb6fca133b0dfb9268988f93d694779fab8d53510cfa5710c1320bb6638f05eb SHA512 7027dbf3b759b39d6ec9c4da58fadd254e84bb93bff599541b3bc3135bad4c2955c6237d7ddd60973f9f1a6948bc32d7e312985fb50658bc958b9f22fee74f2b diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.2.1.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.2.1.ebuild deleted file mode 100644 index 8208a9fdf63..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.2.1.ebuild +++ /dev/null @@ -1,361 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/danielstenberg.asc -inherit autotools multilib-minimal multiprocessing prefix toolchain-funcs verify-sig - -DESCRIPTION="A Client that groks URLs" -HOMEPAGE="https://curl.se/" - -if [[ ${PV} == 9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/curl/curl.git" -else - SRC_URI=" - https://curl.se/download/${P}.tar.xz - verify-sig? ( https://curl.se/download/${P}.tar.xz.asc ) - " - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi - -LICENSE="BSD curl ISC test? ( BSD-4 )" -SLOT="0" -IUSE="+adns alt-svc brotli +ftp gnutls gopher hsts +http2 idn +imap kerberos ldap mbedtls nss +openssl +pop3 +progress-meter rtmp rustls samba +smtp ssh ssl sslv3 static-libs test telnet +tftp websockets zstd" -# These select the default SSL implementation -IUSE+=" curl_ssl_gnutls curl_ssl_mbedtls curl_ssl_nss +curl_ssl_openssl curl_ssl_rustls" -IUSE+=" nghttp3" -RESTRICT="!test? ( test )" - -# Only one default ssl provider can be enabled -# The default ssl provider needs its USE satisfied -# nghttp3 = https://bugs.gentoo.org/912029 -REQUIRED_USE=" - ssl? ( - ^^ ( - curl_ssl_gnutls - curl_ssl_mbedtls - curl_ssl_nss - curl_ssl_openssl - curl_ssl_rustls - ) - ) - curl_ssl_gnutls? ( gnutls ) - curl_ssl_mbedtls? ( mbedtls ) - curl_ssl_nss? ( nss ) - curl_ssl_openssl? ( openssl ) - curl_ssl_rustls? ( rustls ) - nghttp3? ( !openssl ) -" - -RDEPEND=" - sys-libs/zlib[${MULTILIB_USEDEP}] - adns? ( net-dns/c-ares:=[${MULTILIB_USEDEP}] ) - brotli? ( app-arch/brotli:=[${MULTILIB_USEDEP}] ) - http2? ( >=net-libs/nghttp2-1.12.0:=[${MULTILIB_USEDEP}] ) - idn? ( net-dns/libidn2:=[static-libs?,${MULTILIB_USEDEP}] ) - kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] ) - ldap? ( net-nds/openldap:=[static-libs?,${MULTILIB_USEDEP}] ) - nghttp3? ( - >=net-libs/nghttp3-0.13.0[${MULTILIB_USEDEP}] - >=net-libs/ngtcp2-0.17.0[gnutls,ssl,-openssl,${MULTILIB_USEDEP}] - ) - rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] ) - ssh? ( net-libs/libssh2[${MULTILIB_USEDEP}] ) - ssl? ( - gnutls? ( - app-misc/ca-certificates - net-libs/gnutls:=[static-libs?,${MULTILIB_USEDEP}] - dev-libs/nettle:=[${MULTILIB_USEDEP}] - ) - mbedtls? ( - app-misc/ca-certificates - net-libs/mbedtls:=[${MULTILIB_USEDEP}] - ) - nss? ( - app-misc/ca-certificates - dev-libs/nss[${MULTILIB_USEDEP}] - dev-libs/nss-pem - ) - openssl? ( - dev-libs/openssl:=[sslv3(-)=,static-libs?,${MULTILIB_USEDEP}] - ) - rustls? ( - net-libs/rustls-ffi:=[${MULTILIB_USEDEP}] - ) - ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" - -DEPEND="${RDEPEND}" -BDEPEND=" - dev-lang/perl - virtual/pkgconfig - test? ( - sys-apps/diffutils - http2? ( >=net-libs/nghttp2-1.15.0:=[utils,${MULTILIB_USEDEP}] ) - nghttp3? ( net-libs/nghttp2:=[utils,${MULTILIB_USEDEP}] ) - ) - verify-sig? ( sec-keys/openpgp-keys-danielstenberg ) -" - -DOCS=( CHANGES README docs/{FEATURES.md,INTERNALS.md,FAQ,BUGS.md,CONTRIBUTE.md} ) - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/curl/curlbuild.h -) - -MULTILIB_CHOST_TOOLS=( - /usr/bin/curl-config -) - -QA_CONFIG_IMPL_DECL_SKIP=( - __builtin_available - closesocket - CloseSocket - getpass_r - ioctlsocket - IoctlSocket - mach_absolute_time - setmode -) - -PATCHES=( - "${FILESDIR}"/${PN}-prefix.patch - "${FILESDIR}"/${PN}-respect-cflags-3.patch -) - -src_prepare() { - default - - eprefixify curl-config.in - eautoreconf -} - -multilib_src_configure() { - # We make use of the fact that later flags override earlier ones - # So start with all ssl providers off until proven otherwise - # TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/) - local myconf=() - - myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt ) - if use ssl; then - myconf+=( --without-gnutls --without-mbedtls --without-nss --without-rustls ) - - if use gnutls; then - multilib_is_native_abi && einfo "SSL provided by gnutls" - myconf+=( --with-gnutls ) - fi - if use mbedtls; then - multilib_is_native_abi && einfo "SSL provided by mbedtls" - myconf+=( --with-mbedtls ) - fi - if use nss; then - multilib_is_native_abi && einfo "SSL provided by nss" - myconf+=( --with-nss --with-nss-deprecated ) - fi - if use openssl; then - multilib_is_native_abi && einfo "SSL provided by openssl" - myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs ) - fi - if use rustls; then - multilib_is_native_abi && einfo "SSL provided by rustls" - myconf+=( --with-rustls ) - fi - if use curl_ssl_gnutls; then - multilib_is_native_abi && einfo "Default SSL provided by gnutls" - myconf+=( --with-default-ssl-backend=gnutls ) - elif use curl_ssl_mbedtls; then - multilib_is_native_abi && einfo "Default SSL provided by mbedtls" - myconf+=( --with-default-ssl-backend=mbedtls ) - elif use curl_ssl_nss; then - multilib_is_native_abi && einfo "Default SSL provided by nss" - myconf+=( --with-default-ssl-backend=nss ) - elif use curl_ssl_openssl; then - multilib_is_native_abi && einfo "Default SSL provided by openssl" - myconf+=( --with-default-ssl-backend=openssl ) - elif use curl_ssl_rustls; then - multilib_is_native_abi && einfo "Default SSL provided by rustls" - myconf+=( --with-default-ssl-backend=rustls ) - else - eerror "We can't be here because of REQUIRED_USE." - die "Please file a bug, hit impossible condition w/ USE=ssl handling." - fi - - else - myconf+=( --without-ssl ) - einfo "SSL disabled" - fi - - # These configuration options are organized alphabetically - # within each category. This should make it easier if we - # ever decide to make any of them contingent on USE flags: - # 1) protocols first. To see them all do - # 'grep SUPPORT_PROTOCOLS configure.ac' - # 2) --enable/disable options second. - # 'grep -- --enable configure | grep Check | awk '{ print $4 }' | sort - # 3) --with/without options third. - # grep -- --with configure | grep Check | awk '{ print $4 }' | sort - - myconf+=( - $(use_enable alt-svc) - --enable-crypto-auth - --enable-dict - --disable-ech - --enable-file - $(use_enable ftp) - $(use_enable gopher) - $(use_enable hsts) - --enable-http - $(use_enable imap) - $(use_enable ldap) - $(use_enable ldap ldaps) - --enable-ntlm - --disable-ntlm-wb - $(use_enable pop3) - --enable-rt - --enable-rtsp - $(use_enable samba smb) - $(use_with ssh libssh2) - $(use_enable smtp) - $(use_enable telnet) - $(use_enable tftp) - --enable-tls-srp - $(use_enable adns ares) - --enable-cookies - --enable-dateparse - --enable-dnsshuffle - --enable-doh - --enable-symbol-hiding - --enable-http-auth - --enable-ipv6 - --enable-largefile - --enable-manual - --enable-mime - --enable-netrc - $(use_enable progress-meter) - --enable-proxy - --enable-socketpair - --disable-sspi - $(use_enable static-libs static) - --enable-pthreads - --enable-threaded-resolver - --disable-versioned-symbols - --without-amissl - --without-bearssl - $(use_with brotli) - --with-fish-functions-dir="${EPREFIX}"/usr/share/fish/vendor_completions.d - $(use_with http2 nghttp2) - --without-hyper - $(use_with idn libidn2) - $(use_with kerberos gssapi "${EPREFIX}"/usr) - --without-libgsasl - --without-libpsl - --without-msh3 - $(use_with nghttp3) - $(use_with nghttp3 ngtcp2) - --without-quiche - $(use_with rtmp librtmp) - --without-schannel - --without-secure-transport - --without-test-caddy - --without-test-httpd - --without-test-nghttpx - $(use_enable websockets) - --without-winidn - --without-wolfssl - --with-zlib - $(use_with zstd) - --with-zsh-functions-dir="${EPREFIX}"/usr/share/zsh/site-functions - ) - - if use test && multilib_is_native_abi && ( use http2 || use nghttp3 ); then - myconf+=( - --with-test-nghttpx="${BROOT}/usr/bin/nghttpx" - ) - fi - - if [[ ${CHOST} == *mingw* ]] ; then - myconf+=( - --disable-pthreads - ) - fi - - ECONF_SOURCE="${S}" econf "${myconf[@]}" - - if ! multilib_is_native_abi; then - # Avoid building the client (we just want libcurl for multilib) - sed -i -e '/SUBDIRS/s:src::' Makefile || die - sed -i -e '/SUBDIRS/s:scripts::' Makefile || die - fi - - # Fix up the pkg-config file to be more robust. - # https://github.com/curl/curl/issues/864 - local priv=() libs=() - # We always enable zlib. - libs+=( "-lz" ) - priv+=( "zlib" ) - if use http2; then - libs+=( "-lnghttp2" ) - priv+=( "libnghttp2" ) - fi - if use nghttp3; then - libs+=( "-lnghttp3" "-lngtcp2" ) - priv+=( "libnghttp3" "libngtcp2" ) - fi - if use ssl && use curl_ssl_openssl; then - libs+=( "-lssl" "-lcrypto" ) - priv+=( "openssl" ) - fi - grep -q Requires.private libcurl.pc && die "need to update ebuild" - libs=$(printf '|%s' "${libs[@]}") - sed -i -r \ - -e "/^Libs.private/s:(${libs#|})( |$)::g" \ - libcurl.pc || die - echo "Requires.private: ${priv[*]}" >> libcurl.pc || die -} - -multilib_src_compile() { - default - - if multilib_is_native_abi; then - # Shell completions - ! tc-is-cross-compiler && emake -C scripts - fi -} - -# There is also a pytest harness that tests for bugs in some very specific -# situations; we can rely on upstream for this rather than adding additional test deps. -multilib_src_test() { - # See https://github.com/curl/curl/blob/master/tests/runtests.pl#L5721 - # -n: no valgrind (unreliable in sandbox and doesn't work correctly on all arches) - # -v: verbose - # -a: keep going on failure (so we see everything which breaks, not just 1st test) - # -k: keep test files after completion - # -am: automake style TAP output - # -p: print logs if test fails - # Note: if needed, we can skip specific tests. See e.g. Fedora's packaging - # or just read https://github.com/curl/curl/tree/master/tests#run. - # Note: we don't run the testsuite for cross-compilation. - # Upstream recommend 7*nproc as a starting point for parallel tests, but - # this ends up breaking when nproc is huge (like -j80). - # The network sandbox causes tests 241 and 1083 to fail; these are typically skipped - # as most gentoo users don't have an 'ip6-localhost' - multilib_is_native_abi && emake test TFLAGS="-n -v -a -k -am -p -j$((2*$(makeopts_jobs))) !241 !1083" -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - if multilib_is_native_abi; then - # Shell completions - ! tc-is-cross-compiler && emake -C scripts DESTDIR="${D}" install - fi -} - -multilib_src_install_all() { - einstalldocs - find "${ED}" -type f -name '*.la' -delete || die - rm -rf "${ED}"/etc/ || die -} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.3.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.3.0-r1.ebuild deleted file mode 100644 index 53e6f794593..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.3.0-r1.ebuild +++ /dev/null @@ -1,361 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/danielstenberg.asc -inherit autotools multilib-minimal multiprocessing prefix toolchain-funcs verify-sig - -DESCRIPTION="A Client that groks URLs" -HOMEPAGE="https://curl.se/" - -if [[ ${PV} == 9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/curl/curl.git" -else - SRC_URI=" - https://curl.se/download/${P}.tar.xz - verify-sig? ( https://curl.se/download/${P}.tar.xz.asc ) - " - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi - -LICENSE="BSD curl ISC test? ( BSD-4 )" -SLOT="0" -IUSE="+adns alt-svc brotli +ftp gnutls gopher hsts +http2 idn +imap kerberos ldap mbedtls +openssl +pop3 +progress-meter rtmp rustls samba +smtp ssh ssl sslv3 static-libs test telnet +tftp websockets zstd" -# These select the default SSL implementation -IUSE+=" curl_ssl_gnutls curl_ssl_mbedtls +curl_ssl_openssl curl_ssl_rustls" -IUSE+=" nghttp3" -RESTRICT="!test? ( test )" - -# Only one default ssl provider can be enabled -# The default ssl provider needs its USE satisfied -# nghttp3 = https://bugs.gentoo.org/912029 -REQUIRED_USE=" - ssl? ( - ^^ ( - curl_ssl_gnutls - curl_ssl_mbedtls - curl_ssl_openssl - curl_ssl_rustls - ) - ) - curl_ssl_gnutls? ( gnutls ) - curl_ssl_mbedtls? ( mbedtls ) - curl_ssl_openssl? ( openssl ) - curl_ssl_rustls? ( rustls ) - nghttp3? ( !openssl ) -" - -# cURL's docs and CI/CD are great resources for confirming supported versions -# particulary for fast-moving targets like HTTP/2 and TCP/2 e.g.: -# - https://github.com/curl/curl/blob/master/docs/HTTP3.md -# - https://github.com/curl/curl/blob/master/.github/workflows/quiche-linux.yml -# However 'supported' vs 'works' are two entirely different things; be sane but -# don't be afraid to require a later version. - -RDEPEND=" - sys-libs/zlib[${MULTILIB_USEDEP}] - adns? ( net-dns/c-ares:=[${MULTILIB_USEDEP}] ) - brotli? ( app-arch/brotli:=[${MULTILIB_USEDEP}] ) - http2? ( >=net-libs/nghttp2-1.12.0:=[${MULTILIB_USEDEP}] ) - idn? ( net-dns/libidn2:=[static-libs?,${MULTILIB_USEDEP}] ) - kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] ) - ldap? ( net-nds/openldap:=[static-libs?,${MULTILIB_USEDEP}] ) - nghttp3? ( - >=net-libs/nghttp3-0.15.0[${MULTILIB_USEDEP}] - >=net-libs/ngtcp2-0.19.1[gnutls,ssl,-openssl,${MULTILIB_USEDEP}] - ) - rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] ) - ssh? ( net-libs/libssh2[${MULTILIB_USEDEP}] ) - ssl? ( - gnutls? ( - app-misc/ca-certificates - net-libs/gnutls:=[static-libs?,${MULTILIB_USEDEP}] - dev-libs/nettle:=[${MULTILIB_USEDEP}] - ) - mbedtls? ( - app-misc/ca-certificates - net-libs/mbedtls:=[${MULTILIB_USEDEP}] - ) - openssl? ( - dev-libs/openssl:=[sslv3(-)=,static-libs?,${MULTILIB_USEDEP}] - ) - rustls? ( - net-libs/rustls-ffi:=[${MULTILIB_USEDEP}] - ) - ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" - -DEPEND="${RDEPEND}" - -BDEPEND=" - dev-lang/perl - virtual/pkgconfig - test? ( - sys-apps/diffutils - http2? ( >=net-libs/nghttp2-1.15.0:=[utils,${MULTILIB_USEDEP}] ) - nghttp3? ( net-libs/nghttp2:=[utils,${MULTILIB_USEDEP}] ) - ) - verify-sig? ( sec-keys/openpgp-keys-danielstenberg ) -" - -DOCS=( CHANGES README docs/{FEATURES.md,INTERNALS.md,FAQ,BUGS.md,CONTRIBUTE.md} ) - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/curl/curlbuild.h -) - -MULTILIB_CHOST_TOOLS=( - /usr/bin/curl-config -) - -QA_CONFIG_IMPL_DECL_SKIP=( - __builtin_available - closesocket - CloseSocket - getpass_r - ioctlsocket - IoctlSocket - mach_absolute_time - setmode -) - -PATCHES=( - "${FILESDIR}"/${PN}-prefix.patch - "${FILESDIR}"/${PN}-respect-cflags-3.patch - "${FILESDIR}"/${P}-tests-arm-musl.patch -) - -src_prepare() { - default - - eprefixify curl-config.in - eautoreconf -} - -multilib_src_configure() { - # We make use of the fact that later flags override earlier ones - # So start with all ssl providers off until proven otherwise - # TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/) - local myconf=() - - myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt ) - if use ssl; then - myconf+=( --without-gnutls --without-mbedtls --without-rustls ) - - if use gnutls; then - multilib_is_native_abi && einfo "SSL provided by gnutls" - myconf+=( --with-gnutls ) - fi - if use mbedtls; then - multilib_is_native_abi && einfo "SSL provided by mbedtls" - myconf+=( --with-mbedtls ) - fi - if use openssl; then - multilib_is_native_abi && einfo "SSL provided by openssl" - myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs ) - fi - if use rustls; then - multilib_is_native_abi && einfo "SSL provided by rustls" - myconf+=( --with-rustls ) - fi - if use curl_ssl_gnutls; then - multilib_is_native_abi && einfo "Default SSL provided by gnutls" - myconf+=( --with-default-ssl-backend=gnutls ) - elif use curl_ssl_mbedtls; then - multilib_is_native_abi && einfo "Default SSL provided by mbedtls" - myconf+=( --with-default-ssl-backend=mbedtls ) - elif use curl_ssl_openssl; then - multilib_is_native_abi && einfo "Default SSL provided by openssl" - myconf+=( --with-default-ssl-backend=openssl ) - elif use curl_ssl_rustls; then - multilib_is_native_abi && einfo "Default SSL provided by rustls" - myconf+=( --with-default-ssl-backend=rustls ) - else - eerror "We can't be here because of REQUIRED_USE." - die "Please file a bug, hit impossible condition w/ USE=ssl handling." - fi - - else - myconf+=( --without-ssl ) - einfo "SSL disabled" - fi - - # These configuration options are organized alphabetically - # within each category. This should make it easier if we - # ever decide to make any of them contingent on USE flags: - # 1) protocols first. To see them all do - # 'grep SUPPORT_PROTOCOLS configure.ac' - # 2) --enable/disable options second. - # 'grep -- --enable configure | grep Check | awk '{ print $4 }' | sort - # 3) --with/without options third. - # grep -- --with configure | grep Check | awk '{ print $4 }' | sort - - myconf+=( - $(use_enable alt-svc) - --enable-basic-auth - --enable-bearer-auth - --enable-digest-auth - --enable-kerberos-auth - --enable-negotiate-auth - --enable-aws - --enable-dict - --disable-ech - --enable-file - $(use_enable ftp) - $(use_enable gopher) - $(use_enable hsts) - --enable-http - $(use_enable imap) - $(use_enable ldap) - $(use_enable ldap ldaps) - --enable-ntlm - --disable-ntlm-wb - $(use_enable pop3) - --enable-rt - --enable-rtsp - $(use_enable samba smb) - $(use_with ssh libssh2) - $(use_enable smtp) - $(use_enable telnet) - $(use_enable tftp) - --enable-tls-srp - $(use_enable adns ares) - --enable-cookies - --enable-dateparse - --enable-dnsshuffle - --enable-doh - --enable-symbol-hiding - --enable-http-auth - --enable-ipv6 - --enable-largefile - --enable-manual - --enable-mime - --enable-netrc - $(use_enable progress-meter) - --enable-proxy - --enable-socketpair - --disable-sspi - $(use_enable static-libs static) - --enable-pthreads - --enable-threaded-resolver - --disable-versioned-symbols - --without-amissl - --without-bearssl - $(use_with brotli) - --with-fish-functions-dir="${EPREFIX}"/usr/share/fish/vendor_completions.d - $(use_with http2 nghttp2) - --without-hyper - $(use_with idn libidn2) - $(use_with kerberos gssapi "${EPREFIX}"/usr) - --without-libgsasl - --without-libpsl - --without-msh3 - $(use_with nghttp3) - $(use_with nghttp3 ngtcp2) - --without-quiche - $(use_with rtmp librtmp) - --without-schannel - --without-secure-transport - --without-test-caddy - --without-test-httpd - --without-test-nghttpx - $(use_enable websockets) - --without-winidn - --without-wolfssl - --with-zlib - $(use_with zstd) - --with-zsh-functions-dir="${EPREFIX}"/usr/share/zsh/site-functions - ) - - if use test && multilib_is_native_abi && ( use http2 || use nghttp3 ); then - myconf+=( - --with-test-nghttpx="${BROOT}/usr/bin/nghttpx" - ) - fi - - if [[ ${CHOST} == *mingw* ]] ; then - myconf+=( - --disable-pthreads - ) - fi - - ECONF_SOURCE="${S}" econf "${myconf[@]}" - - if ! multilib_is_native_abi; then - # Avoid building the client (we just want libcurl for multilib) - sed -i -e '/SUBDIRS/s:src::' Makefile || die - sed -i -e '/SUBDIRS/s:scripts::' Makefile || die - fi - - # Fix up the pkg-config file to be more robust. - # https://github.com/curl/curl/issues/864 - local priv=() libs=() - # We always enable zlib. - libs+=( "-lz" ) - priv+=( "zlib" ) - if use http2; then - libs+=( "-lnghttp2" ) - priv+=( "libnghttp2" ) - fi - if use nghttp3; then - libs+=( "-lnghttp3" "-lngtcp2" ) - priv+=( "libnghttp3" "libngtcp2" ) - fi - if use ssl && use curl_ssl_openssl; then - libs+=( "-lssl" "-lcrypto" ) - priv+=( "openssl" ) - fi - grep -q Requires.private libcurl.pc && die "need to update ebuild" - libs=$(printf '|%s' "${libs[@]}") - sed -i -r \ - -e "/^Libs.private/s:(${libs#|})( |$)::g" \ - libcurl.pc || die - echo "Requires.private: ${priv[*]}" >> libcurl.pc || die -} - -multilib_src_compile() { - default - - if multilib_is_native_abi; then - # Shell completions - ! tc-is-cross-compiler && emake -C scripts - fi -} - -# There is also a pytest harness that tests for bugs in some very specific -# situations; we can rely on upstream for this rather than adding additional test deps. -multilib_src_test() { - # See https://github.com/curl/curl/blob/master/tests/runtests.pl#L5721 - # -n: no valgrind (unreliable in sandbox and doesn't work correctly on all arches) - # -v: verbose - # -a: keep going on failure (so we see everything which breaks, not just 1st test) - # -k: keep test files after completion - # -am: automake style TAP output - # -p: print logs if test fails - # Note: if needed, we can skip specific tests. See e.g. Fedora's packaging - # or just read https://github.com/curl/curl/tree/master/tests#run. - # Note: we don't run the testsuite for cross-compilation. - # Upstream recommend 7*nproc as a starting point for parallel tests, but - # this ends up breaking when nproc is huge (like -j80). - # The network sandbox causes tests 241 and 1083 to fail; these are typically skipped - # as most gentoo users don't have an 'ip6-localhost' - multilib_is_native_abi && emake test TFLAGS="-n -v -a -k -am -p -j$((2*$(makeopts_jobs))) !241 !1083" -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - if multilib_is_native_abi; then - # Shell completions - ! tc-is-cross-compiler && emake -C scripts DESTDIR="${D}" install - fi -} - -multilib_src_install_all() { - einstalldocs - find "${ED}" -type f -name '*.la' -delete || die - rm -rf "${ED}"/etc/ || die -} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.3.0.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.3.0.ebuild deleted file mode 100644 index 77aef67db1c..00000000000 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/curl-8.3.0.ebuild +++ /dev/null @@ -1,360 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/danielstenberg.asc -inherit autotools multilib-minimal multiprocessing prefix toolchain-funcs verify-sig - -DESCRIPTION="A Client that groks URLs" -HOMEPAGE="https://curl.se/" - -if [[ ${PV} == 9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/curl/curl.git" -else - SRC_URI=" - https://curl.se/download/${P}.tar.xz - verify-sig? ( https://curl.se/download/${P}.tar.xz.asc ) - " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -fi - -LICENSE="BSD curl ISC test? ( BSD-4 )" -SLOT="0" -IUSE="+adns alt-svc brotli +ftp gnutls gopher hsts +http2 idn +imap kerberos ldap mbedtls +openssl +pop3 +progress-meter rtmp rustls samba +smtp ssh ssl sslv3 static-libs test telnet +tftp websockets zstd" -# These select the default SSL implementation -IUSE+=" curl_ssl_gnutls curl_ssl_mbedtls +curl_ssl_openssl curl_ssl_rustls" -IUSE+=" nghttp3" -RESTRICT="!test? ( test )" - -# Only one default ssl provider can be enabled -# The default ssl provider needs its USE satisfied -# nghttp3 = https://bugs.gentoo.org/912029 -REQUIRED_USE=" - ssl? ( - ^^ ( - curl_ssl_gnutls - curl_ssl_mbedtls - curl_ssl_openssl - curl_ssl_rustls - ) - ) - curl_ssl_gnutls? ( gnutls ) - curl_ssl_mbedtls? ( mbedtls ) - curl_ssl_openssl? ( openssl ) - curl_ssl_rustls? ( rustls ) - nghttp3? ( !openssl ) -" - -# cURL's docs and CI/CD are great resources for confirming supported versions -# particulary for fast-moving targets like HTTP/2 and TCP/2 e.g.: -# - https://github.com/curl/curl/blob/master/docs/HTTP3.md -# - https://github.com/curl/curl/blob/master/.github/workflows/quiche-linux.yml -# However 'supported' vs 'works' are two entirely different things; be sane but -# don't be afraid to require a later version. - -RDEPEND=" - sys-libs/zlib[${MULTILIB_USEDEP}] - adns? ( net-dns/c-ares:=[${MULTILIB_USEDEP}] ) - brotli? ( app-arch/brotli:=[${MULTILIB_USEDEP}] ) - http2? ( >=net-libs/nghttp2-1.12.0:=[${MULTILIB_USEDEP}] ) - idn? ( net-dns/libidn2:=[static-libs?,${MULTILIB_USEDEP}] ) - kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] ) - ldap? ( net-nds/openldap:=[static-libs?,${MULTILIB_USEDEP}] ) - nghttp3? ( - >=net-libs/nghttp3-0.15.0[${MULTILIB_USEDEP}] - >=net-libs/ngtcp2-0.19.1[gnutls,ssl,-openssl,${MULTILIB_USEDEP}] - ) - rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] ) - ssh? ( net-libs/libssh2[${MULTILIB_USEDEP}] ) - ssl? ( - gnutls? ( - app-misc/ca-certificates - net-libs/gnutls:=[static-libs?,${MULTILIB_USEDEP}] - dev-libs/nettle:=[${MULTILIB_USEDEP}] - ) - mbedtls? ( - app-misc/ca-certificates - net-libs/mbedtls:=[${MULTILIB_USEDEP}] - ) - openssl? ( - dev-libs/openssl:=[sslv3(-)=,static-libs?,${MULTILIB_USEDEP}] - ) - rustls? ( - net-libs/rustls-ffi:=[${MULTILIB_USEDEP}] - ) - ) - zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] ) -" - -DEPEND="${RDEPEND}" - -BDEPEND=" - dev-lang/perl - virtual/pkgconfig - test? ( - sys-apps/diffutils - http2? ( >=net-libs/nghttp2-1.15.0:=[utils,${MULTILIB_USEDEP}] ) - nghttp3? ( net-libs/nghttp2:=[utils,${MULTILIB_USEDEP}] ) - ) - verify-sig? ( sec-keys/openpgp-keys-danielstenberg ) -" - -DOCS=( CHANGES README docs/{FEATURES.md,INTERNALS.md,FAQ,BUGS.md,CONTRIBUTE.md} ) - -MULTILIB_WRAPPED_HEADERS=( - /usr/include/curl/curlbuild.h -) - -MULTILIB_CHOST_TOOLS=( - /usr/bin/curl-config -) - -QA_CONFIG_IMPL_DECL_SKIP=( - __builtin_available - closesocket - CloseSocket - getpass_r - ioctlsocket - IoctlSocket - mach_absolute_time - setmode -) - -PATCHES=( - "${FILESDIR}"/${PN}-prefix.patch - "${FILESDIR}"/${PN}-respect-cflags-3.patch -) - -src_prepare() { - default - - eprefixify curl-config.in - eautoreconf -} - -multilib_src_configure() { - # We make use of the fact that later flags override earlier ones - # So start with all ssl providers off until proven otherwise - # TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/) - local myconf=() - - myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt ) - if use ssl; then - myconf+=( --without-gnutls --without-mbedtls --without-rustls ) - - if use gnutls; then - multilib_is_native_abi && einfo "SSL provided by gnutls" - myconf+=( --with-gnutls ) - fi - if use mbedtls; then - multilib_is_native_abi && einfo "SSL provided by mbedtls" - myconf+=( --with-mbedtls ) - fi - if use openssl; then - multilib_is_native_abi && einfo "SSL provided by openssl" - myconf+=( --with-ssl --with-ca-path="${EPREFIX}"/etc/ssl/certs ) - fi - if use rustls; then - multilib_is_native_abi && einfo "SSL provided by rustls" - myconf+=( --with-rustls ) - fi - if use curl_ssl_gnutls; then - multilib_is_native_abi && einfo "Default SSL provided by gnutls" - myconf+=( --with-default-ssl-backend=gnutls ) - elif use curl_ssl_mbedtls; then - multilib_is_native_abi && einfo "Default SSL provided by mbedtls" - myconf+=( --with-default-ssl-backend=mbedtls ) - elif use curl_ssl_openssl; then - multilib_is_native_abi && einfo "Default SSL provided by openssl" - myconf+=( --with-default-ssl-backend=openssl ) - elif use curl_ssl_rustls; then - multilib_is_native_abi && einfo "Default SSL provided by rustls" - myconf+=( --with-default-ssl-backend=rustls ) - else - eerror "We can't be here because of REQUIRED_USE." - die "Please file a bug, hit impossible condition w/ USE=ssl handling." - fi - - else - myconf+=( --without-ssl ) - einfo "SSL disabled" - fi - - # These configuration options are organized alphabetically - # within each category. This should make it easier if we - # ever decide to make any of them contingent on USE flags: - # 1) protocols first. To see them all do - # 'grep SUPPORT_PROTOCOLS configure.ac' - # 2) --enable/disable options second. - # 'grep -- --enable configure | grep Check | awk '{ print $4 }' | sort - # 3) --with/without options third. - # grep -- --with configure | grep Check | awk '{ print $4 }' | sort - - myconf+=( - $(use_enable alt-svc) - --enable-basic-auth - --enable-bearer-auth - --enable-digest-auth - --enable-kerberos-auth - --enable-negotiate-auth - --enable-aws - --enable-dict - --disable-ech - --enable-file - $(use_enable ftp) - $(use_enable gopher) - $(use_enable hsts) - --enable-http - $(use_enable imap) - $(use_enable ldap) - $(use_enable ldap ldaps) - --enable-ntlm - --disable-ntlm-wb - $(use_enable pop3) - --enable-rt - --enable-rtsp - $(use_enable samba smb) - $(use_with ssh libssh2) - $(use_enable smtp) - $(use_enable telnet) - $(use_enable tftp) - --enable-tls-srp - $(use_enable adns ares) - --enable-cookies - --enable-dateparse - --enable-dnsshuffle - --enable-doh - --enable-symbol-hiding - --enable-http-auth - --enable-ipv6 - --enable-largefile - --enable-manual - --enable-mime - --enable-netrc - $(use_enable progress-meter) - --enable-proxy - --enable-socketpair - --disable-sspi - $(use_enable static-libs static) - --enable-pthreads - --enable-threaded-resolver - --disable-versioned-symbols - --without-amissl - --without-bearssl - $(use_with brotli) - --with-fish-functions-dir="${EPREFIX}"/usr/share/fish/vendor_completions.d - $(use_with http2 nghttp2) - --without-hyper - $(use_with idn libidn2) - $(use_with kerberos gssapi "${EPREFIX}"/usr) - --without-libgsasl - --without-libpsl - --without-msh3 - $(use_with nghttp3) - $(use_with nghttp3 ngtcp2) - --without-quiche - $(use_with rtmp librtmp) - --without-schannel - --without-secure-transport - --without-test-caddy - --without-test-httpd - --without-test-nghttpx - $(use_enable websockets) - --without-winidn - --without-wolfssl - --with-zlib - $(use_with zstd) - --with-zsh-functions-dir="${EPREFIX}"/usr/share/zsh/site-functions - ) - - if use test && multilib_is_native_abi && ( use http2 || use nghttp3 ); then - myconf+=( - --with-test-nghttpx="${BROOT}/usr/bin/nghttpx" - ) - fi - - if [[ ${CHOST} == *mingw* ]] ; then - myconf+=( - --disable-pthreads - ) - fi - - ECONF_SOURCE="${S}" econf "${myconf[@]}" - - if ! multilib_is_native_abi; then - # Avoid building the client (we just want libcurl for multilib) - sed -i -e '/SUBDIRS/s:src::' Makefile || die - sed -i -e '/SUBDIRS/s:scripts::' Makefile || die - fi - - # Fix up the pkg-config file to be more robust. - # https://github.com/curl/curl/issues/864 - local priv=() libs=() - # We always enable zlib. - libs+=( "-lz" ) - priv+=( "zlib" ) - if use http2; then - libs+=( "-lnghttp2" ) - priv+=( "libnghttp2" ) - fi - if use nghttp3; then - libs+=( "-lnghttp3" "-lngtcp2" ) - priv+=( "libnghttp3" "libngtcp2" ) - fi - if use ssl && use curl_ssl_openssl; then - libs+=( "-lssl" "-lcrypto" ) - priv+=( "openssl" ) - fi - grep -q Requires.private libcurl.pc && die "need to update ebuild" - libs=$(printf '|%s' "${libs[@]}") - sed -i -r \ - -e "/^Libs.private/s:(${libs#|})( |$)::g" \ - libcurl.pc || die - echo "Requires.private: ${priv[*]}" >> libcurl.pc || die -} - -multilib_src_compile() { - default - - if multilib_is_native_abi; then - # Shell completions - ! tc-is-cross-compiler && emake -C scripts - fi -} - -# There is also a pytest harness that tests for bugs in some very specific -# situations; we can rely on upstream for this rather than adding additional test deps. -multilib_src_test() { - # See https://github.com/curl/curl/blob/master/tests/runtests.pl#L5721 - # -n: no valgrind (unreliable in sandbox and doesn't work correctly on all arches) - # -v: verbose - # -a: keep going on failure (so we see everything which breaks, not just 1st test) - # -k: keep test files after completion - # -am: automake style TAP output - # -p: print logs if test fails - # Note: if needed, we can skip specific tests. See e.g. Fedora's packaging - # or just read https://github.com/curl/curl/tree/master/tests#run. - # Note: we don't run the testsuite for cross-compilation. - # Upstream recommend 7*nproc as a starting point for parallel tests, but - # this ends up breaking when nproc is huge (like -j80). - # The network sandbox causes tests 241 and 1083 to fail; these are typically skipped - # as most gentoo users don't have an 'ip6-localhost' - multilib_is_native_abi && emake test TFLAGS="-n -v -a -k -am -p -j$((2*$(makeopts_jobs))) !241 !1083" -} - -multilib_src_install() { - emake DESTDIR="${D}" install - - if multilib_is_native_abi; then - # Shell completions - ! tc-is-cross-compiler && emake -C scripts DESTDIR="${D}" install - fi -} - -multilib_src_install_all() { - einstalldocs - find "${ED}" -type f -name '*.la' -delete || die - rm -rf "${ED}"/etc/ || die -} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/curl/metadata.xml b/sdk_container/src/third_party/portage-stable/net-misc/curl/metadata.xml index a182168944d..7f3ef922ed9 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/curl/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/net-misc/curl/metadata.xml @@ -19,7 +19,6 @@ Enable Internet Message Access Protocol support Enable mbedtls ssl backend Enable HTTP/3.0 support using net-libs/nghttp3 and net-libs/ngtcp2 - Enable nss ssl backend Enable openssl ssl backend Enable Post Office Protocol 3 support Enable the progress meter diff --git a/sdk_container/src/third_party/portage-stable/net-misc/ntp/ntp-4.2.8_p17.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/ntp/ntp-4.2.8_p17.ebuild index 2a5ebf974b8..51599bc5e17 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/ntp/ntp-4.2.8_p17.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-misc/ntp/ntp-4.2.8_p17.ebuild @@ -75,6 +75,8 @@ src_configure() { export PATH_RUBY=/bin/false local myeconfargs=( + --cache-file="${S}"/config.cache + --with-lineeditlibs=readline,edit,editline --with-yielding-select --disable-local-libevent diff --git a/sdk_container/src/third_party/portage-stable/net-misc/socat/Manifest b/sdk_container/src/third_party/portage-stable/net-misc/socat/Manifest index ae6c8cfa71c..ea585d6d46d 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/socat/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-misc/socat/Manifest @@ -1,2 +1,3 @@ DIST socat-1.7.4.3.tar.gz 655520 BLAKE2B d91de7ef55332001e6439f64130555b9558338fb9b6c15c91ab5efc8f86a2e7e0f5fe0b292754731a198d83be5f511c3388c65c7c7f559c55691f42703f1849b SHA512 81cb34c245052b6a0ae38a711591358460b6070957af4a9eeb11a3cadb4aff184eeaedabbc7ecdc7fdf21a6126c06f90f19b24a87ce74b30bfd60a3879181046 DIST socat-1.7.4.4.tar.bz2 522127 BLAKE2B 221b1c7c1ef0ac9c2402a6917ce7740a7ed857ceae4f4c346ed3c69c261fd0f9ca667e21cab5f97427d3947b06fdb0ac6d090852465878db968a24b8ece587ad SHA512 3eedfbf599ecf1d6fd391d03d710044bc5e18a762395bc4cb151b96fe673d405a6630da3070ecddd5ac558126b56aa65feaa74d528eeb755a04aa0ec61690651 +DIST socat-1.8.0.0.tar.bz2 564066 BLAKE2B b0b3e8c46f746b1aaff7390bbf9521cca8c421f3c20cd7a7f7d8ffd3d7b5e5e881e2477642f7d29247ee5a9d9edf6c8370a43c5f2757e456966b17e3ba08a58a SHA512 dd15c31204f2843ab473a30aa841e960e7c00ac7487e2265d69f9e8ea0afde3841d57cfcb99084f03935d7223da65cee27166837f2f9b3a20c834bc161af802b diff --git a/sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.0.0.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.0.0.ebuild new file mode 100644 index 00000000000..ca3d608643a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-misc/socat/socat-1.8.0.0.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit edo flag-o-matic toolchain-funcs + +MY_P=${P/_beta/-b} +DESCRIPTION="Multipurpose relay (SOcket CAT)" +HOMEPAGE="http://www.dest-unreach.org/socat/ https://repo.or.cz/socat.git" +SRC_URI="http://www.dest-unreach.org/socat/download/${MY_P}.tar.bz2" +S="${WORKDIR}/${MY_P}" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" +IUSE="ipv6 readline ssl tcpd" + +DEPEND=" + ssl? ( >=dev-libs/openssl-3:= ) + readline? ( sys-libs/readline:= ) + tcpd? ( sys-apps/tcp-wrappers ) +" +RDEPEND="${DEPEND}" + +# Tests are a large bash script +# Hard to disable individual tests needing network or privileges +# in 1.7.4.2: FAILED: 59 329 +#RESTRICT="test" + +DOCS=( BUGREPORTS CHANGES DEVELOPMENT EXAMPLES FAQ FILES PORTING README SECURITY ) + +src_configure() { + # bug #293324 + filter-flags '-Wno-error*' + + tc-export AR + + local myeconfargs=( + $(use_enable ssl openssl) + $(use_enable readline) + $(use_enable ipv6 ip6) + $(use_enable tcpd libwrap) + ) + + econf "${myeconfargs[@]}" +} + +src_test() { + edo ./test.sh -v --expect-fail 217,311,313,410,478,528 +} + +src_install() { + default + + docinto html + dodoc doc/*.html doc/*.css +} diff --git a/sdk_container/src/third_party/portage-stable/net-misc/whois/Manifest b/sdk_container/src/third_party/portage-stable/net-misc/whois/Manifest index 783e3f0ed86..f11964d2eb0 100644 --- a/sdk_container/src/third_party/portage-stable/net-misc/whois/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-misc/whois/Manifest @@ -1,3 +1,4 @@ DIST whois-5.5.19.tar.gz 109582 BLAKE2B 6812c8f19c60a20802adbda95d9e80e1ee39cb5fea6723e689d064cda6ac167408dfccc2f30bfd93a7d53bda9c355e292d3b4ee694812b3ffccc54c120aeedcd SHA512 f008f60a629f40eb5817c124ff586f2b4a359afa501a72633326341a28f47c5ff56ddeed48d327bf41035bc6bdc639959b92523ec22ff41d5bd58241b4c50487 +DIST whois-5.5.20.tar.gz 109648 BLAKE2B 17b6a795ac517a81cde44530df3e835cccc020a1750ab28d50551a7bd08d132aa10768ff146b0a7943a8348cc7f3f3f7096262caf1d91fbb2d3610ae9f6473e8 SHA512 1d602ec817411a36b3d175e34f166c06186639f4eeea145751decc45372953df40fc76b57c7589d93c49ab0be1276459dffc6424a4344ddbca23f35a9f492fc7 DIST whois_5.5.17.tar.xz 90608 BLAKE2B 82793097e421d88130d089fc64bb0bceac0c9170b39388262b45d2bf62fc2f8b7c4e393fc5351bba6be303ced00a00af1972bf73c1c8c7c86c812b19a0a6fb5a SHA512 0ed33edc2005eb51a88bda505cc3f6ebe3966095d6f12c03cfe62c12e7e575e1d008632d12de6f27b4c09b91ce5a45705d57acce88409e573bbd7b5132df7fc6 DIST whois_5.5.18.tar.xz 90216 BLAKE2B 2098b15d36ee0f99e710fdeb10ce1650eba84da1ce770df46182439a6de07995b79746767968522200f5261490e5ffd262673705b12e1004e1ca0dd1af0b9e15 SHA512 28482a6b84d97e2ff69e7a2d01865d227d76aff41a42511a6ebd4ac636b9054643d1df800e6575fb846712e1473f7a31a211dbc08fbdfaaead443d22138266c7 diff --git a/sdk_container/src/third_party/portage-stable/net-misc/whois/whois-5.5.20.ebuild b/sdk_container/src/third_party/portage-stable/net-misc/whois/whois-5.5.20.ebuild new file mode 100644 index 00000000000..1d4f43bab41 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-misc/whois/whois-5.5.20.ebuild @@ -0,0 +1,81 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit bash-completion-r1 toolchain-funcs + +MY_P=${P/-/_} +DESCRIPTION="Improved Whois Client" +HOMEPAGE="https://github.com/rfc1036/whois" + +if [[ ${PV} == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/rfc1036/whois.git" +else + #SRC_URI="mirror://debian/pool/main/w/whois/${MY_P}.tar.xz" + SRC_URI="https://github.com/rfc1036/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + #S="${WORKDIR}"/${PN} + + KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="iconv idn nls xcrypt" + +RDEPEND=" + iconv? ( virtual/libiconv ) + idn? ( net-dns/libidn2:= ) + nls? ( virtual/libintl ) + xcrypt? ( >=sys-libs/libxcrypt-4.1:= ) + !xcrypt? ( virtual/libcrypt:= ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-arch/xz-utils + >=dev-lang/perl-5 + virtual/pkgconfig + nls? ( sys-devel/gettext )" + +PATCHES=( + "${FILESDIR}"/${PN}-4.7.2-config-file.patch + "${FILESDIR}"/${PN}-5.3.0-libidn_automagic.patch + "${FILESDIR}"/${PN}-5.5.6-libxcrypt_automagic.patch +) + +src_prepare() { + default + + if use nls ; then + sed -i -e 's:#\(.*pos\):\1:' Makefile || die + else + sed -i -e '/ENABLE_NLS/s:define:undef:' config.h || die + + # don't generate po files when nls is disabled (bug #419889) + sed -i -e '/^all:/s/ pos//' \ + -e '/^install:/s/ install-pos//' Makefile || die + fi +} + +src_configure() { :; } # expected no-op + +src_compile() { + unset HAVE_ICONV HAVE_LIBIDN + + use iconv && export HAVE_ICONV=1 + use idn && export HAVE_LIBIDN=1 + use xcrypt && export HAVE_XCRYPT=1 + + tc-export CC + + emake CFLAGS="${CFLAGS} ${CPPFLAGS}" +} + +src_install() { + emake DESTDIR="${D}" prefix="${EPREFIX}/usr" BASHCOMPDIR="$(get_bashcompdir)" install + + insinto /etc + doins whois.conf + dodoc README debian/changelog +} diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use b/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use new file mode 100644 index 00000000000..7af4eac809b --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use @@ -0,0 +1,6 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# matoro (2023-11-14) +# dev-db/mysql not keyworded here +dev-perl/DBD-mysql -mysql mariadb diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use.mask index f94d09ca248..21251f7f4e9 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/package.use.mask @@ -1,6 +1,18 @@ # Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# matoro (2023-11-24) +# dev-util/glslang not keyworded here. +media-video/ffmpeg glslang + +# matoro (2023-11-24) +# media-libs/shaderc not keyworded here. +>=media-video/ffmpeg-5 shaderc + +# matoro (2023-11-14) +# dev-db/mysql not keyworded here. +dev-perl/DBD-mysql mysql + # matoro (2023-11-01) # Qt 6 not keyworded here. app-doc/doxygen gui diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/use.mask index e9140a5485f..ba7b58e2000 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/alpha/use.mask @@ -4,6 +4,10 @@ # Unmask the flag which corresponds to ARCH. -alpha +# matoro (2023-11-14) +# Qt is not keyworded here +qt5 + # matoro (2023-06-17) # media-libs/libheif is not keyworded here heif diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/no-multilib/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/no-multilib/package.use.force index 17acf1185e8..2897c534ec4 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/no-multilib/package.use.force +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/no-multilib/package.use.force @@ -1,6 +1,11 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Michał Górny (2023-10-06) +# Undo multilib forcing. +dev-libs/libatomic_ops -abi_x86_32 +dev-libs/boehm-gc -abi_x86_32 + # Michał Górny (2017-04-08) # Undo multilib forcing. sys-apps/sandbox -abi_x86_32 diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use index c057afab7c9..31d17baca41 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # James Le Cuirot (2022-06-25) diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.force index da0808237ad..5c9f06cdb0c 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.force +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.force @@ -1,6 +1,12 @@ # Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Michał Górny (2023-10-06) +# Require ABIs matching MULTILIB_ABIS in gcc dependencies -- otherwise +# sys-devel/gcc[multilib] (which is forced) will fail late in build. +dev-libs/libatomic_ops abi_x86_32 +dev-libs/boehm-gc abi_x86_32 + # Michał Górny (2017-12-30) # We have ready-to-use configs here. sys-kernel/gentoo-kernel -savedconfig diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask index 4c3863dc471..c13a6ff43aa 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.mask @@ -17,6 +17,29 @@ #--- END OF EXAMPLES --- +# Leonardo Hernández Hernández (2023-11-25) +# media-libs/libdisplay-info (drm) and dev-libs/libliftoff (liftoff) +# are only available for amd64 and riscv +>=gui-libs/wlroots-0.17.0 -drm -liftoff + +# Jimi Huotari (2023-11-22) +# Unmask on amd64. +media-video/obs-studio -qsv -websocket + +# Andrew Ammerlaan (2023-11-20) +# Qt6 is still experimental in freecad, currently the configure phase +# gets itself stuck by importing both qt5 and qt6 cmake files. +# Since there is no python3.12 support for shiboken2/pyside2, we have +# to mask that flag as well. +# +# We have to mask this here as well as in base/package.use.mask +# because qt6 is globally unmasked on amd64 +media-gfx/freecad qt6 python_single_target_python3_12 + +# Florian Schmaus (2023-11-10) +# Only available for amd64. +sys-apps/irqbalance -thermal + # Ionen Wolkens (2023-10-09) # media-libs/shaderc is keyworded here. media-libs/libplacebo -shaderc @@ -361,8 +384,8 @@ sys-boot/grub:2 -grub_platforms_xen-32 # Mike Gilbert (2015-09-05) # sd-boot is not supported on all archs. -sys-apps/systemd -boot -gnuefi -sys-apps/systemd-utils -boot +sys-apps/systemd -boot -gnuefi -ukify +sys-apps/systemd-utils -boot -ukify # Ben de Groot (2015-03-15) # media-libs/libbdplus is keyworded on amd64, so unmask the useflag @@ -476,6 +499,7 @@ media-libs/smpeg cpu_flags_x86_mmx # x86_64 opts are enabled with USE sse. so masking the rest media-sound/mpg123 cpu_flags_x86_mmx cpu_flags_x86_3dnow cpu_flags_x86_3dnowext +media-libs/libmpg123 cpu_flags_x86_mmx cpu_flags_x86_3dnow cpu_flags_x86_3dnowext # Alexis Ballier (2008-08-08) # x86 asm only, it won't be built on amd64 if mmx useflag is enabled but that diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.stable.mask index 2fd9ec85b7b..d31e230b758 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/package.use.stable.mask @@ -83,10 +83,6 @@ dev-util/diffoscope haskell dev-java/openjdk:8 javafx dev-java/openjdk:11 javafx -# Andreas Sturmlechner (2020-10-05) -# REQUIRED_USE="base? ( firebird )", dev-db/firebird is not stable -app-office/libreoffice base - # Thomas Deutschmann (2020-09-07) # sys-cluster/slurm has no stable keywords # dev-util/nvidia-cuda-toolkit has no stable keywords diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/use.mask index 3e17c184e94..048f26b5883 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/use.mask @@ -4,6 +4,10 @@ # Unmask the flag which corresponds to ARCH. -amd64 +# Paul Zander (2023-11-17) +# ROCm/HIP works here +-hip + # Andrew Ammerlaan (2023-07-11) # Unmask secureboot flag on arches where sbsigntools is keyworded -secureboot diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/use.stable.mask index dc93eb4e00b..5f97cbc0e63 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/use.stable.mask @@ -4,6 +4,10 @@ # This file requires eapi 5 or later. New entries go on top. # Please use the same syntax as in use.mask +# Paul Zander (2023-11-17) +# ROCm/HIP is not suitable for stabilization. +hip + # Jimi Huotari (2023-03-03) # Mask until stable. pyside6 diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.mask index 39e48f0b998..032af556953 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.mask @@ -63,7 +63,7 @@ app-doc/zeal app-editors/ghostwriter app-editors/retext app-misc/anki -app-office/kalendar:5 +app-office/merkuro app-office/kmymoney:5 app-office/skrooge:5 app-office/texmaker diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.use.force index 388c2861e5f..c414ca9911c 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.use.force +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/amd64/x32/package.use.force @@ -1,6 +1,12 @@ # Copyright 1999-2017 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 +# Michał Górny (2023-10-06) +# Require ABIs matching MULTILIB_ABIS in gcc dependencies -- otherwise +# sys-devel/gcc[multilib] (which is forced) will fail late in build. +dev-libs/libatomic_ops abi_x86_64 +dev-libs/boehm-gc abi_x86_64 + # Michał Górny (2017-04-08) # Require sandbox to be multilib-capable to avoid failures when building # multilib packages, #611292. diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.mask index 5bcf1864786..fb2cb8588f4 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.mask @@ -13,7 +13,7 @@ app-doc/zeal app-editors/ghostwriter app-editors/retext app-misc/anki -app-office/kalendar:5 +app-office/merkuro app-office/kmymoney:5 app-office/skrooge:5 app-office/texmaker diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.mask index 3f0feffc13c..9905e926f2d 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm/package.use.mask @@ -1,6 +1,14 @@ # Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Leonardo Hernández Hernández (2023-11-15) +# media-libs/shaderc in not keyworded +media-video/ffmpeg shaderc + +# Andreas Sturmlechner (2023-11-13) +# kde-plasma/print-manager is not keyworded +kde-plasma/plasma-meta cups + # Jon Janzen (2023-09-11) # librttopo has not been tested on this arch dev-db/spatialite rttopo @@ -125,8 +133,8 @@ net-im/prosody selinux # Sam James (2020-01-17) # gnuefi + systemd-boot works on arm # bug #729720 -sys-apps/systemd -boot -gnuefi -sys-apps/systemd-utils -boot +sys-apps/systemd -boot -gnuefi -ukify +sys-apps/systemd-utils -boot -ukify # Joonas Niilola (2021-01-15) # Dependency not keyworded on this arch. diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.mask index c61069180b2..f51d37f5e9b 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/arm64/package.use.mask @@ -1,6 +1,10 @@ # Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Leonardo Hernández Hernández (2023-11-15) +# media-libs/shaderc in not keyworded +media-video/ffmpeg shaderc + # Jimi Huotari (2023-10-21) # Unmask on specific arches where it's available. media-video/obs-studio -mpegts @@ -152,8 +156,8 @@ media-sound/bluez-alsa man # Sam James (2020-01-17) # gnuefi + systemd-boot works on arm64 # bug #729720 -sys-apps/systemd -boot -gnuefi -sys-apps/systemd-utils -boot +sys-apps/systemd -boot -gnuefi -ukify +sys-apps/systemd-utils -boot -ukify # Joonas Niilola (2021-01-15) # Dependency not keyworded on this arch. diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask index 004d9af566b..34ad56ff8ed 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/base/package.use.mask @@ -1,6 +1,19 @@ # Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Leonardo Hernández Hernández (2023-11-25) +# media-libs/libdisplay-info (drm) and dev-libs/libliftoff (liftoff) +# are only available for amd64 and riscv +>=gui-libs/wlroots-0.17.0 drm liftoff + +# Jimi Huotari (2023-11-22) +# media-libs/oneVPL is only keyworded for amd64 at this time. +media-video/obs-studio qsv + +# Jimi Huotari (2023-11-22) +# dev-libs/qr-code-generator is only keyworded for amd64 at this time. +media-video/obs-studio websocket + # Jimi Huotari (2023-10-21) # net-libs/librist is only keyworded for arm64 at this time. media-video/obs-studio mpegts @@ -347,9 +360,9 @@ net-misc/moonlight mmal >=dev-db/mariadb-10.1.0 mroonga galera # Mike Gilbert (2015-09-05) -# sd-boot is not supported on all archs. -sys-apps/systemd boot gnuefi -sys-apps/systemd-utils boot +# sd-boot and ukify are not supported on all archs. +sys-apps/systemd boot gnuefi ukify +sys-apps/systemd-utils boot ukify # Ben de Groot (2015-03-15) # Mask bdplus support and unmask on arches where libbdplus is keyworded. diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/base/use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/base/use.mask index fea25523e4a..216f30b7336 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/base/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/base/use.mask @@ -37,6 +37,9 @@ oci8 cuda nvenc +# ROCm/HIP only works on amd64 +hip + # masking here, and unmasking in arch/x86/use.mask vidix diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.mask index b5338568bc8..bfaec4b9a8f 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.mask @@ -6,14 +6,6 @@ # See https://github.com/systemd/systemd/issues/29775 and bug #916469. >=sys-apps/systemd-254 -# Sam James (2023-08-28) -# libuv >=1.45.0 starts to use iouring (but via its own implementation, not sys-libs/liburing) -# which means CMake then starts using iouring. There are some kernel bugs which -# got shaken out on hppa: linux 6.4.x is okay, but 6.1.x at least need backports. -# -# See https://lore.kernel.org/linux-parisc/87jztggow5.fsf@gentoo.org/T/. ->=dev-libs/libuv-1.45.0 - # Sam James (2023-07-03) # Broken memory handling # https://lore.kernel.org/linux-parisc/612eaa53-6904-6e16-67fc-394f4faa0e16@bell.net/ diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.use.mask index a8d904f1449..88418863613 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/hppa/package.use.mask @@ -4,6 +4,10 @@ # NOTE: When masking a USE flag due to missing keywords, please file a keyword # request bug for the hppa arch. +# Leonardo Hernández Hernández (2023-11-15) +# Vulkan is not available here +media-video/ffmpeg glslang shaderc vulkan + # Violet Purcell (2023-10-12) # dev-util/samurai is not keyworded here. app-alternatives/ninja samurai diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/ia64/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/ia64/package.use.mask index 1222d189169..63a5ea1174d 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/ia64/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/ia64/package.use.mask @@ -1,6 +1,10 @@ # Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Leonardo Hernández Hernández (2023-11-15) +# Vulkan is not available here +media-video/ffmpeg glslang shaderc vulkan + # Violet Purcell (2023-10-12) # dev-util/samurai is not keyworded here. app-alternatives/ninja samurai diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.mask index 564bceac2e3..b62bfcca47c 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/loong/package.use.mask @@ -97,8 +97,8 @@ app-accessibility/at-spi2-core dbus-broker # Mike Gilbert (2023-05-27) # Newer sd-boot does not use gnuefi. ->=sys-apps/systemd-254 -boot ->=sys-apps/systemd-utils-254 -boot +>=sys-apps/systemd-254 -boot -ukify +>=sys-apps/systemd-utils-254 -boot -ukify # WANG Xuerui (2023-04-16) # dev-python/pyopengl fails tests diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/mips64/multilib/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/mips64/multilib/package.use.force new file mode 100644 index 00000000000..b400461470d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/mips64/multilib/package.use.force @@ -0,0 +1,8 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Michał Górny (2023-10-06) +# Require ABIs matching MULTILIB_ABIS in gcc dependencies -- otherwise +# sys-devel/gcc[multilib] (which is forced) will fail late in build. +dev-libs/libatomic_ops abi_mips_n32 abi_mips_n64 abi_mips_o32 +dev-libs/boehm-gc abi_mips_n32 abi_mips_n64 abi_mips_o32 diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/mipsel/mips64el/multilib/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/mipsel/mips64el/multilib/package.use.force new file mode 100644 index 00000000000..b400461470d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/mipsel/mips64el/multilib/package.use.force @@ -0,0 +1,8 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Michał Górny (2023-10-06) +# Require ABIs matching MULTILIB_ABIS in gcc dependencies -- otherwise +# sys-devel/gcc[multilib] (which is forced) will fail late in build. +dev-libs/libatomic_ops abi_mips_n32 abi_mips_n64 abi_mips_o32 +dev-libs/boehm-gc abi_mips_n32 abi_mips_n64 abi_mips_o32 diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.mask index d666e9ab084..2f9c4649169 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.mask @@ -1,6 +1,16 @@ # Copyright 2006-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# matoro (2023-11-17) +# Broken on BE and no way to test on LE, mask for now +# https://bugs.chromium.org/p/aomedia/issues/detail?id=3487 +media-libs/libaom + +# matoro (2023-11-17) +# Broken on BE and no way to test on LE, mask for now +# https://gitlab.gnome.org/GNOME/gtk/-/issues/5904 +gui-libs/gtk:4 + # Mask pam_ldap and nss_ldap - openldap dep missing. sys-auth/pam_ldap sys-auth/nss_ldap diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.use.mask index ae712524592..7a64707118b 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/package.use.mask @@ -1,6 +1,32 @@ # Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# matoro (2023-11-24) +# media-libs/shaderc not keyworded here. +>=media-video/ffmpeg-5 shaderc + +# matoro (2023-11-22) +# Qt 5 is not keyworded here +app-admin/setools X + +# matoro (2023-11-22) +# Qt 5 is not keyworded here +net-p2p/bitcoin-core gui + +# matoro (2023-11-20) +# media-libs/libaom casualties +# https://bugs.chromium.org/p/aomedia/issues/detail?id=3487 +media-video/ffmpeg libaom +media-libs/libavif aom + +# matoro (2023-11-19) +# Pulls in LXDE which is not keyworded here +x11-misc/xscreensaver new-login + +# matoro (2023-11-16) +# gui-libs/gtk:4 casualties +app-i18n/ibus gtk4 + # Violet Purcell (2023-10-12) # dev-util/samurai is not keyworded here. app-alternatives/ninja samurai diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/use.mask index 4baef4e44e6..6cc9b4f632b 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/mips/use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/mips/use.mask @@ -4,6 +4,14 @@ # Unmask the flag which corresponds to ARCH. -mips +# matoro (2023-11-22) +# KDE not keyworded here +kde + +# matoro (2023-11-22) +# dev-db/redis fails test suite on BE at least +redis + # matoro (2023-03-07) # GPU-related USE flags. While hardware with PCIe host # capabilities exists, mask these by default to reduce burden @@ -236,6 +244,7 @@ smi # Matt Turner (2010-12-13) # We don't have sys-devel/llvm llvm +llvm-libunwind # Matt Turner (2011-06-14) # pdfannotextractor needs java diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/package.use.mask index ec682d79698..900d62fcd7f 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/package.use.mask @@ -1,6 +1,15 @@ # Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# matoro (2023-11-22) +# Broken on (2023-11-19) +# VSX asm causes passing test suite on LE to fail +media-libs/libaom cpu_flags_ppc_vsx + # Patrick McLean (2023-10-03) # sys-apps/s6-linux-init has not been tested on this arch sys-apps/openrc s6 diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.mask index ddeda73b983..7d3478fc343 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/powerpc/ppc64/package.mask @@ -5,10 +5,6 @@ # Requires media-libs/libva since 29.0.0. >=media-video/obs-studio-29.0.0 -# Sam James (2022-10-08) -# sys-boot/gnu-efi isn't keyworded here right now -sys-kernel/installkernel-systemd-boot - # Michał Górny (2022-08-25) # Only ppc64le binpkg is provided. dev-python/pypy-exe-bin diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/ppc/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/ppc/package.use.mask index ba27d13b1c6..cf76bfb56d5 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/ppc/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/ppc/package.use.mask @@ -1,6 +1,10 @@ # Copyright 2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Leonardo Hernández Hernández (2023-11-15) +# media-libs/shaderc in not keyworded +media-video/ffmpeg shaderc + # Rich Freeman (2023-09-13) # Tests require shellcheck which is not currently available sys-process/systemd-cron test diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.use.mask index 152a754167f..861cbc631d8 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/riscv/package.use.mask @@ -1,6 +1,11 @@ # Copyright 2019-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Leonardo Hernández Hernández (2023-11-22) +# media-libs/libdisplay-info (drm) and dev-libs/libliftoff (liftoff) +# are only available for amd64 and riscv +>=gui-libs/wlroots-0.17.0 -drm -liftoff + # Violet Purcell (2023-10-12) # dev-util/samurai is not keyworded here. app-alternatives/ninja samurai @@ -39,8 +44,8 @@ media-video/mpv lua_single_target_luajit -lua_single_target_lua5-1 # Mike Gilbert (2023-05-27) # sd-boot should work here. -sys-apps/systemd -boot -gnuefi -sys-apps/systemd-utils -boot +sys-apps/systemd -boot -gnuefi -ukify +sys-apps/systemd-utils -boot -ukify # Sam James (2023-05-10) # sys-cluster/ceph not keyworded here diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/32ul/package.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/32ul/package.mask index 892a0cbceae..9911da89281 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/32ul/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/32ul/package.mask @@ -1,6 +1,10 @@ -# Copyright 2022 Gentoo Authors +# Copyright 2022-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Sam James (2023-11-13) +# mold supports sparc64, but not sparc32. +sys-devel/mold + # matoro (2022-08-05) # Test failures on 32-bit, passes on 64-bit. Bug #638888 app-antivirus/clamav diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.mask index 536863d8488..d32c114e0c5 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/sparc/package.use.mask @@ -1,6 +1,10 @@ # Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Leonardo Hernández Hernández (2023-11-15) +# Vulkan is not available here +media-video/ffmpeg glslang shaderc vulkan + # Michał Górny (2023-10-22) # This is not ISDN CAPI, so unmask it. media-video/rav1e -capi diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.mask index e15ff225dc3..79eec835b81 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.mask @@ -13,7 +13,7 @@ app-doc/zeal app-editors/ghostwriter app-editors/retext app-misc/anki -app-office/kalendar:5 +app-office/merkuro app-office/kmymoney:5 app-office/skrooge:5 app-office/texmaker diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.mask index a9ab94eff7d..39c9627bdcd 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.mask @@ -385,8 +385,8 @@ app-emulation/libvirt xen # Mike Gilbert (2015-09-05) # sys-boot/gnu-efi is not supported on all archs. -sys-apps/systemd -boot -gnuefi -sys-apps/systemd-utils -boot +sys-apps/systemd -boot -gnuefi -ukify +sys-apps/systemd-utils -boot -ukify # Ben de Groot (2015-03-15) # media-libs/libbdplus is keyworded on x86, so unmask the useflag diff --git a/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.stable.mask index d62cb13fd20..af8837106c5 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/arch/x86/package.use.stable.mask @@ -84,10 +84,6 @@ dev-util/diffoscope haskell # large amount of fabric. bug #763954 sys-block/open-iscsi infiniband -# Andreas Sturmlechner (2020-10-05) -# REQUIRED_USE="base? ( firebird )", dev-db/firebird is not stable -app-office/libreoffice base - # Thomas Deutschmann (2020-08-05) # sys-cluster/slurm has no stable keywords app-metrics/collectd collectd_plugins_slurm diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.force b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.force index 19ab2087605..900a336bfd2 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.force +++ b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.force @@ -1,6 +1,13 @@ # Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Michael Orlitzky (2023-11-22) +# USE=-gui is broken in this and the subsequent version (bug +# 916718). Package is a PITA: the maintainer is combative, and the +# issue tracker is a French-language forum that never sends me +# confirmation emails when I try to sign up. +=sci-mathematics/giac-1.9.0.67 gui + # Matt Turner (2023-09-18) # Disabling gstreamer seems to be untested upstream and is often broken. # The gstreamer dependencies are trivial in compile time and disk usage diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.mask index a67c3921d90..1c2c168346d 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/base/package.use.mask @@ -6,6 +6,21 @@ # This file is only for generic masks. For arch-specific masks (i.e. # mask everywhere, unmask on arch/*) use arch/base. +# John Helmert III (2023-11-25) +# app-text/gocr has been masked for removal, bug #824290 +media-gfx/xsane ocr + +# Andrew Ammerlaan (2023-11-20) +# Qt6 is still experimental in freecad, currently the configure phase +# gets itself stuck by importing both qt5 and qt6 cmake files. +# Since there is no python3.12 support for shiboken2/pyside2, we have +# to mask that flag as well. +media-gfx/freecad qt6 python_single_target_python3_12 + +# Florian Schmaus (2023-11-10) +# Only available for amd64. +sys-apps/irqbalance thermal + # Marek Szuba (2023-10-26) # media-gfx/gmic has been masked for removal, see Bug #916289. media-gfx/darktable gmic @@ -42,9 +57,8 @@ media-video/chaplin transcode # Ionen Wolkens (2023-10-10) # Broken with Qt6.6 and, given USE has no revdeps, simpler to just # mask for now to save desktop profile users (default bluetooth) -# from failures. Limited to -r1 to spare stable users from rebuilds -# (-r0 instead requires <6.6). -=dev-python/PyQt6-6.5.2-r1 bluetooth +# from failures. Update: could be cleaned up now but waiting for +# 6.6.0 stable to avoid unnecessary rebuilds. ~dev-python/PyQt6-6.5.3 bluetooth # Jaco Kroon (2023-09-19) diff --git a/sdk_container/src/third_party/portage-stable/profiles/base/use.stable.mask b/sdk_container/src/third_party/portage-stable/profiles/base/use.stable.mask index 1afeb5e4611..f17e9ca9044 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/base/use.stable.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/base/use.stable.mask @@ -4,6 +4,10 @@ # This file requires eapi 5 or later. New entries go on top. # Please use the same syntax as in use.mask +# Michał Górny (2023-11-10) +# Not stable yet. +postgres_targets_postgres16 + # Sam James (2023-05-29) # Currently in testing and not ready to go stable yet. ruby_targets_ruby32 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/make.defaults new file mode 100644 index 00000000000..05f8f6a3654 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/make.defaults @@ -0,0 +1,4 @@ +# Copyright 2023 Gentoo Authors. +# Distributed under the terms of the GNU General Public License v2 + +LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/make.defaults index 96ce023a7e8..45e426b34fd 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/musl/make.defaults @@ -1,7 +1,7 @@ # Copyright 1999-2018 Gentoo Foundation. # Distributed under the terms of the GNU General Public License v2 -CHOST="x86_64-gentoo-linux-musl" +CHOST="x86_64-pc-linux-musl" # Anthony G. Basile (2014-07-01) # Multilib-related setup, bug #515130 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/no-multilib/selinux/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/no-multilib/selinux/parent deleted file mode 100644 index 2190e9797ea..00000000000 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/no-multilib/selinux/parent +++ /dev/null @@ -1,2 +0,0 @@ -.. -../../../../../../features/selinux diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/musl/make.defaults index 96ce023a7e8..45e426b34fd 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/musl/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/split-usr/musl/make.defaults @@ -1,7 +1,7 @@ # Copyright 1999-2018 Gentoo Foundation. # Distributed under the terms of the GNU General Public License v2 -CHOST="x86_64-gentoo-linux-musl" +CHOST="x86_64-pc-linux-musl" # Anthony G. Basile (2014-07-01) # Multilib-related setup, bug #515130 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/musl/make.defaults index 70146a12835..7b575c36c86 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/musl/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/musl/make.defaults @@ -4,7 +4,7 @@ ARCH="arm64" ACCEPT_KEYWORDS="${ARCH}" -CHOST="aarch64-gentoo-linux-musl" +CHOST="aarch64-unknown-linux-musl" CFLAGS="-O2" CXXFLAGS="${CFLAGS}" FFLAGS="${CFLAGS}" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/split-usr/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/split-usr/musl/make.defaults index 70146a12835..7b575c36c86 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/split-usr/musl/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/arm64/23.0/split-usr/musl/make.defaults @@ -4,7 +4,7 @@ ARCH="arm64" ACCEPT_KEYWORDS="${ARCH}" -CHOST="aarch64-gentoo-linux-musl" +CHOST="aarch64-unknown-linux-musl" CFLAGS="-O2" CXXFLAGS="${CFLAGS}" FFLAGS="${CFLAGS}" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/mipsel/n64/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/mipsel/n64/musl/make.defaults index cb0c7807a72..2e59fcee231 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/mipsel/n64/musl/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/mipsel/n64/musl/make.defaults @@ -1,7 +1,7 @@ # Copyright 2022-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -CHOST="mips64el-gentoo-linux-musl" +CHOST="mips64el-unknown-linux-musl" CHOST_n64="${CHOST}" LIBDIR_n64="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/mipsel/o32/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/mipsel/o32/musl/make.defaults index d19638d7359..a27d20f7e94 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/mipsel/o32/musl/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/mipsel/o32/musl/make.defaults @@ -1,7 +1,7 @@ # Copyright 2022-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -CHOST="mipsel-gentoo-linux-musl" +CHOST="mipsel-unknown-linux-musl" CHOST_o32="${CHOST}" LIBDIR_o32="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/n64/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/n64/musl/make.defaults index 594d429605e..7d44ab8f14c 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/n64/musl/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/n64/musl/make.defaults @@ -1,6 +1,6 @@ # Copyright 2022-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -CHOST="mips64-gentoo-linux-musl" +CHOST="mips64-unknown-linux-musl" CHOST_n64="${CHOST}" LIBDIR_n64="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/o32/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/o32/musl/make.defaults index 98209034fdb..dd6d00ffcba 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/o32/musl/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/o32/musl/make.defaults @@ -1,6 +1,6 @@ # Copyright 2022-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -CHOST="mips-gentoo-linux-musl" +CHOST="mips-unknown-linux-musl" CHOST_o32="${CHOST}" LIBDIR_o32="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/mipsel/n64/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/mipsel/n64/make.defaults index 26dbb0e4c1d..a03fe908726 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/mipsel/n64/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/mipsel/n64/make.defaults @@ -1,6 +1,6 @@ # Copyright 2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -CHOST="mips64el-gentoo-linux-musl" +CHOST="mips64el-unknown-linux-musl" CHOST_n64="${CHOST}" LIBDIR_n64="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/mipsel/o32/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/mipsel/o32/make.defaults index d0dec15ac7b..a4711034184 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/mipsel/o32/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/mipsel/o32/make.defaults @@ -1,6 +1,6 @@ # Copyright 2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -CHOST="mipsel-gentoo-linux-musl" +CHOST="mipsel-unknown-linux-musl" CHOST_o32="${CHOST}" LIBDIR_o32="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/n64/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/n64/make.defaults index 90dd8867535..3aa37470dc5 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/n64/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/n64/make.defaults @@ -1,6 +1,6 @@ # Copyright 2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -CHOST="mips64-gentoo-linux-musl" +CHOST="mips64-unknown-linux-musl" CHOST_n64="${CHOST}" LIBDIR_n64="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/o32/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/o32/make.defaults index 4027a830450..60751683766 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/o32/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/mips/23.0/split-usr/musl/o32/make.defaults @@ -1,6 +1,6 @@ # Copyright 2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -CHOST="mips-gentoo-linux-musl" +CHOST="mips-unknown-linux-musl" CHOST_o32="${CHOST}" LIBDIR_o32="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/no-multilib/selinux/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/eapi similarity index 100% rename from sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/no-multilib/selinux/eapi rename to sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/eapi diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/no-multilib/selinux/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/gnome/eapi similarity index 100% rename from sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/no-multilib/selinux/systemd/eapi rename to sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/gnome/eapi diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/gnome/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/gnome/parent new file mode 100644 index 00000000000..6589a0e0147 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/gnome/parent @@ -0,0 +1,2 @@ +.. +../../../../../../targets/desktop/gnome diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/gnome/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/gnome/systemd/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/gnome/systemd/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/gnome/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/gnome/systemd/parent new file mode 100644 index 00000000000..f5c1ae438de --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/gnome/systemd/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../targets/desktop/gnome/systemd diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/parent new file mode 100644 index 00000000000..ad6c5e126fb --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/desktop/parent @@ -0,0 +1,2 @@ +.. +../../../../../targets/desktop diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/make.defaults new file mode 100644 index 00000000000..05f8f6a3654 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/make.defaults @@ -0,0 +1,4 @@ +# Copyright 2023 Gentoo Authors. +# Distributed under the terms of the GNU General Public License v2 + +LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/hardened/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/hardened/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/hardened/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/hardened/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/hardened/parent new file mode 100644 index 00000000000..c97306cfa04 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/hardened/parent @@ -0,0 +1,2 @@ +.. +../../../../../../features/hardened diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/make.defaults new file mode 100644 index 00000000000..3f0abac0df0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/make.defaults @@ -0,0 +1,10 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +CHOST="powerpc-unknown-linux-musl" + +# Anthony G. Basile (2014-07-01) +# Multilib-related setup, bug #515130 +MULTILIB_ABIS="ppc" +CHOST_ppc="${CHOST}" +LIBDIR_ppc="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/package.use.mask new file mode 100644 index 00000000000..80fbaf3654a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/package.use.mask @@ -0,0 +1,7 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Sam James (2023-01-29) +# Fails to build on combination of ppc* + musl because of mcontext. +# libsanitizer needs adapting, bug #892079. +sys-devel/gcc sanitize diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/parent new file mode 100644 index 00000000000..9ef7663a23b --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/musl/parent @@ -0,0 +1,3 @@ +.. +../../../../../features/musl +../../../../../features/wd40 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/parent new file mode 100644 index 00000000000..50be433109e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/parent @@ -0,0 +1,2 @@ +.. +../../../../releases/23.0 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/desktop/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/desktop/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/desktop/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/desktop/gnome/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/desktop/gnome/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/desktop/gnome/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/desktop/gnome/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/desktop/gnome/parent new file mode 100644 index 00000000000..9e06c4505a7 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/desktop/gnome/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../targets/desktop/gnome diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/desktop/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/desktop/parent new file mode 100644 index 00000000000..db8ce088c69 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/desktop/parent @@ -0,0 +1,2 @@ +.. +../../../../../../targets/desktop diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/hardened/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/hardened/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/hardened/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/hardened/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/hardened/parent new file mode 100644 index 00000000000..3e3d7782bae --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/hardened/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../features/hardened diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/make.defaults new file mode 100644 index 00000000000..3f0abac0df0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/make.defaults @@ -0,0 +1,10 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +CHOST="powerpc-unknown-linux-musl" + +# Anthony G. Basile (2014-07-01) +# Multilib-related setup, bug #515130 +MULTILIB_ABIS="ppc" +CHOST_ppc="${CHOST}" +LIBDIR_ppc="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/package.use.mask new file mode 100644 index 00000000000..80fbaf3654a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/package.use.mask @@ -0,0 +1,7 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Sam James (2023-01-29) +# Fails to build on combination of ppc* + musl because of mcontext. +# libsanitizer needs adapting, bug #892079. +sys-devel/gcc sanitize diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/parent new file mode 100644 index 00000000000..bd0ef6ecac6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/musl/parent @@ -0,0 +1,3 @@ +.. +../../../../../../features/musl +../../../../../../features/wd40 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/parent new file mode 100644 index 00000000000..598ca888c8c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/split-usr/parent @@ -0,0 +1,2 @@ +.. +../../../../../features/split-usr diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/systemd/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/systemd/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/systemd/parent new file mode 100644 index 00000000000..ced72403bde --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc/23.0/systemd/parent @@ -0,0 +1,2 @@ +.. +../../../../../targets/systemd diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/gnome/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/gnome/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/gnome/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/gnome/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/gnome/parent new file mode 100644 index 00000000000..6589a0e0147 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/gnome/parent @@ -0,0 +1,2 @@ +.. +../../../../../../targets/desktop/gnome diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/gnome/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/gnome/systemd/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/gnome/systemd/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/gnome/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/gnome/systemd/parent new file mode 100644 index 00000000000..f5c1ae438de --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/gnome/systemd/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../targets/desktop/gnome/systemd diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/parent new file mode 100644 index 00000000000..ad6c5e126fb --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/desktop/parent @@ -0,0 +1,2 @@ +.. +../../../../../targets/desktop diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/make.defaults new file mode 100644 index 00000000000..05f8f6a3654 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/make.defaults @@ -0,0 +1,4 @@ +# Copyright 2023 Gentoo Authors. +# Distributed under the terms of the GNU General Public License v2 + +LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/hardened/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/hardened/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/hardened/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/hardened/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/hardened/parent new file mode 100644 index 00000000000..c97306cfa04 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/hardened/parent @@ -0,0 +1,2 @@ +.. +../../../../../../features/hardened diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/make.defaults new file mode 100644 index 00000000000..34e0d7abf46 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/make.defaults @@ -0,0 +1,6 @@ +# Copyright 2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +CHOST="powerpc64-unknown-linux-musl" +CHOST_ppc64="${CHOST}" +LIBDIR_ppc64="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/package.use.mask new file mode 100644 index 00000000000..d3d557acaeb --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/package.use.mask @@ -0,0 +1,14 @@ +# Copyright 2020-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Sam James (2023-01-29) +# Fails to build on combination of ppc* + musl because of mcontext. +# libsanitizer needs adapting, bug #892079. +sys-devel/gcc sanitize + +# Georgy Yakovlev (2020-02-18) +# perlasm assumes elfv1 abi on big endian +# mask until merged and released +# https://github.com/openssl/openssl/commit/34ab13b7d8e3e723adb60be8142e38b7c9cd382a +# https://github.com/openssl/openssl/commit/098404128383ded87ba390dd74ecd9e2ffa6f530 +dev-libs/openssl asm diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/parent new file mode 100644 index 00000000000..58651906cb6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/musl/parent @@ -0,0 +1,2 @@ +.. +../../../../../features/musl diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/parent new file mode 100644 index 00000000000..50be433109e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/parent @@ -0,0 +1,2 @@ +.. +../../../../releases/23.0 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/desktop/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/desktop/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/desktop/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/desktop/gnome/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/desktop/gnome/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/desktop/gnome/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/desktop/gnome/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/desktop/gnome/parent new file mode 100644 index 00000000000..9e06c4505a7 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/desktop/gnome/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../targets/desktop/gnome diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/desktop/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/desktop/parent new file mode 100644 index 00000000000..db8ce088c69 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/desktop/parent @@ -0,0 +1,2 @@ +.. +../../../../../../targets/desktop diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/hardened/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/hardened/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/hardened/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/hardened/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/hardened/parent new file mode 100644 index 00000000000..3e3d7782bae --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/hardened/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../features/hardened diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/make.defaults new file mode 100644 index 00000000000..34e0d7abf46 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/make.defaults @@ -0,0 +1,6 @@ +# Copyright 2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +CHOST="powerpc64-unknown-linux-musl" +CHOST_ppc64="${CHOST}" +LIBDIR_ppc64="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/package.use.mask new file mode 100644 index 00000000000..d3d557acaeb --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/package.use.mask @@ -0,0 +1,14 @@ +# Copyright 2020-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Sam James (2023-01-29) +# Fails to build on combination of ppc* + musl because of mcontext. +# libsanitizer needs adapting, bug #892079. +sys-devel/gcc sanitize + +# Georgy Yakovlev (2020-02-18) +# perlasm assumes elfv1 abi on big endian +# mask until merged and released +# https://github.com/openssl/openssl/commit/34ab13b7d8e3e723adb60be8142e38b7c9cd382a +# https://github.com/openssl/openssl/commit/098404128383ded87ba390dd74ecd9e2ffa6f530 +dev-libs/openssl asm diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/parent new file mode 100644 index 00000000000..5bbe8700f1a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/musl/parent @@ -0,0 +1,2 @@ +.. +../../../../../../features/musl diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/parent new file mode 100644 index 00000000000..598ca888c8c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/split-usr/parent @@ -0,0 +1,2 @@ +.. +../../../../../features/split-usr diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/systemd/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/systemd/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/systemd/parent new file mode 100644 index 00000000000..ced72403bde --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64/23.0/systemd/parent @@ -0,0 +1,2 @@ +.. +../../../../../targets/systemd diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/gnome/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/gnome/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/gnome/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/gnome/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/gnome/parent new file mode 100644 index 00000000000..6589a0e0147 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/gnome/parent @@ -0,0 +1,2 @@ +.. +../../../../../../targets/desktop/gnome diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/gnome/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/gnome/systemd/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/gnome/systemd/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/no-multilib/selinux/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/gnome/systemd/parent similarity index 100% rename from sdk_container/src/third_party/portage-stable/profiles/default/linux/amd64/23.0/no-multilib/selinux/systemd/parent rename to sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/gnome/systemd/parent diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/parent new file mode 100644 index 00000000000..ad6c5e126fb --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/parent @@ -0,0 +1,2 @@ +.. +../../../../../targets/desktop diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/plasma/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/plasma/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/plasma/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/plasma/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/plasma/parent new file mode 100644 index 00000000000..ff3a7b1ec81 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/plasma/parent @@ -0,0 +1,2 @@ +.. +../../../../../../targets/desktop/plasma diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/plasma/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/plasma/systemd/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/plasma/systemd/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/plasma/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/plasma/systemd/parent new file mode 100644 index 00000000000..44f88d3e2df --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/plasma/systemd/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../targets/systemd diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/systemd/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/systemd/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/systemd/parent new file mode 100644 index 00000000000..7e061533c15 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/desktop/systemd/parent @@ -0,0 +1,2 @@ +.. +../../../../../../targets/systemd diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/hardened/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/hardened/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/hardened/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/hardened/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/hardened/parent new file mode 100644 index 00000000000..c97306cfa04 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/hardened/parent @@ -0,0 +1,2 @@ +.. +../../../../../../features/hardened diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/make.defaults new file mode 100644 index 00000000000..5d7c33d5787 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/make.defaults @@ -0,0 +1,6 @@ +# Copyright 2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +CHOST="powerpc64le-unknown-linux-musl" +CHOST_ppc64="${CHOST}" +LIBDIR_ppc64="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/package.use.mask new file mode 100644 index 00000000000..80fbaf3654a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/package.use.mask @@ -0,0 +1,7 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Sam James (2023-01-29) +# Fails to build on combination of ppc* + musl because of mcontext. +# libsanitizer needs adapting, bug #892079. +sys-devel/gcc sanitize diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/parent new file mode 100644 index 00000000000..58651906cb6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/musl/parent @@ -0,0 +1,2 @@ +.. +../../../../../features/musl diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/package.accept_keywords b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/package.accept_keywords new file mode 100644 index 00000000000..26021bb8fff --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/package.accept_keywords @@ -0,0 +1,6 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Georgy Yakovlev (2022-12-04) +# only contains critical ieee-long-double patches. +=sys-libs/glibc-2.36-r7 ~ppc64 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/package.mask b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/package.mask new file mode 100644 index 00000000000..f730c94e928 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/package.mask @@ -0,0 +1,8 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Georgy Yakovlev (2022-12-04) +# We only need versions that support ieee-long-double. + (2022-12-04) +# Hard requirement for this profile. +sys-devel/clang ieee-long-double +sys-devel/gcc ieee-long-double diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/package.use.mask new file mode 100644 index 00000000000..81341caa198 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/package.use.mask @@ -0,0 +1,7 @@ +# Copyright 2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Georgy Yakovlev (2022-12-04) +# We need it for ieee-long-double. +>=sys-devel/clang-15.0.5 -ieee-long-double +>=sys-devel/gcc-12 -ieee-long-double diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/parent new file mode 100644 index 00000000000..50be433109e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/parent @@ -0,0 +1,2 @@ +.. +../../../../releases/23.0 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/prefix/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/prefix/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/prefix/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/prefix/kernel-3.2+/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/prefix/kernel-3.2+/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/prefix/kernel-3.2+/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/prefix/kernel-3.2+/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/prefix/kernel-3.2+/parent new file mode 100644 index 00000000000..b8a505e58f6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/prefix/kernel-3.2+/parent @@ -0,0 +1,2 @@ +.. +../../../../../../features/prefix/standalone diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/prefix/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/prefix/parent new file mode 100644 index 00000000000..f3229c5b987 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/prefix/parent @@ -0,0 +1 @@ +.. diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/gnome/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/gnome/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/gnome/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/gnome/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/gnome/parent new file mode 100644 index 00000000000..9e06c4505a7 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/gnome/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../targets/desktop/gnome diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/parent new file mode 100644 index 00000000000..db8ce088c69 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/parent @@ -0,0 +1,2 @@ +.. +../../../../../../targets/desktop diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/plasma/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/plasma/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/plasma/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/plasma/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/plasma/parent new file mode 100644 index 00000000000..00b252f479c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/desktop/plasma/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../targets/desktop/plasma diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/hardened/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/hardened/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/hardened/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/hardened/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/hardened/parent new file mode 100644 index 00000000000..3e3d7782bae --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/hardened/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../features/hardened diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/make.defaults new file mode 100644 index 00000000000..5d7c33d5787 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/make.defaults @@ -0,0 +1,6 @@ +# Copyright 2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +CHOST="powerpc64le-unknown-linux-musl" +CHOST_ppc64="${CHOST}" +LIBDIR_ppc64="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/package.use.mask new file mode 100644 index 00000000000..80fbaf3654a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/package.use.mask @@ -0,0 +1,7 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Sam James (2023-01-29) +# Fails to build on combination of ppc* + musl because of mcontext. +# libsanitizer needs adapting, bug #892079. +sys-devel/gcc sanitize diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/parent new file mode 100644 index 00000000000..5bbe8700f1a --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/musl/parent @@ -0,0 +1,2 @@ +.. +../../../../../../features/musl diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/parent new file mode 100644 index 00000000000..598ca888c8c --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/parent @@ -0,0 +1,2 @@ +.. +../../../../../features/split-usr diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/prefix/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/prefix/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/prefix/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/prefix/kernel-3.2+/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/prefix/kernel-3.2+/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/prefix/kernel-3.2+/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/prefix/kernel-3.2+/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/prefix/kernel-3.2+/parent new file mode 100644 index 00000000000..b3da232ba55 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/prefix/kernel-3.2+/parent @@ -0,0 +1,2 @@ +.. +../../../../../../../features/prefix/standalone diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/prefix/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/prefix/parent new file mode 100644 index 00000000000..f3229c5b987 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/split-usr/prefix/parent @@ -0,0 +1 @@ +.. diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/systemd/eapi b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/systemd/eapi new file mode 100644 index 00000000000..7ed6ff82de6 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/systemd/eapi @@ -0,0 +1 @@ +5 diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/systemd/parent b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/systemd/parent new file mode 100644 index 00000000000..ced72403bde --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/ppc64le/23.0/systemd/parent @@ -0,0 +1,2 @@ +.. +../../../../../targets/systemd diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64/musl/make.defaults index 654f67c0881..22d800dca93 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64/musl/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64/musl/make.defaults @@ -1,8 +1,8 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -CHOST="riscv64-gentoo-linux-musl" +CHOST="riscv64-unknown-linux-musl" -CHOST_lp64="riscv64-gentoo-linux-musl" +CHOST_lp64="riscv64-unknown-linux-musl" LIBDIR_lp64="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64d/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64d/musl/make.defaults index e63b33d06f4..cf87833fd4e 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64d/musl/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/lp64d/musl/make.defaults @@ -1,8 +1,8 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -CHOST="riscv64-gentoo-linux-musl" +CHOST="riscv64-unknown-linux-musl" -CHOST_lp64d="riscv64-gentoo-linux-musl" +CHOST_lp64d="riscv64-unknown-linux-musl" LIBDIR_lp64d="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/split-usr/lp64/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/split-usr/lp64/musl/make.defaults index 654f67c0881..22d800dca93 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/split-usr/lp64/musl/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/split-usr/lp64/musl/make.defaults @@ -1,8 +1,8 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -CHOST="riscv64-gentoo-linux-musl" +CHOST="riscv64-unknown-linux-musl" -CHOST_lp64="riscv64-gentoo-linux-musl" +CHOST_lp64="riscv64-unknown-linux-musl" LIBDIR_lp64="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/split-usr/lp64d/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/split-usr/lp64d/musl/make.defaults index e63b33d06f4..cf87833fd4e 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/split-usr/lp64d/musl/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/riscv/23.0/rv64/split-usr/lp64d/musl/make.defaults @@ -1,8 +1,8 @@ # Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -CHOST="riscv64-gentoo-linux-musl" +CHOST="riscv64-unknown-linux-musl" -CHOST_lp64d="riscv64-gentoo-linux-musl" +CHOST_lp64d="riscv64-unknown-linux-musl" LIBDIR_lp64d="lib" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/make.defaults new file mode 100644 index 00000000000..05f8f6a3654 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/make.defaults @@ -0,0 +1,4 @@ +# Copyright 2023 Gentoo Authors. +# Distributed under the terms of the GNU General Public License v2 + +LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/musl/make.defaults index 80515e7c892..7dc7895c6db 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/musl/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/musl/make.defaults @@ -1,5 +1,5 @@ # Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -CHOST="i686-gentoo-linux-musl" +CHOST="i686-pc-linux-musl" CHOST_x86="${CHOST}" diff --git a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/split-usr/musl/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/split-usr/musl/make.defaults index 80515e7c892..7dc7895c6db 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/split-usr/musl/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/default/linux/x86/23.0/split-usr/musl/make.defaults @@ -1,5 +1,5 @@ # Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -CHOST="i686-gentoo-linux-musl" +CHOST="i686-pc-linux-musl" CHOST_x86="${CHOST}" diff --git a/sdk_container/src/third_party/portage-stable/profiles/desc/amdgpu_targets.desc b/sdk_container/src/third_party/portage-stable/profiles/desc/amdgpu_targets.desc index 9c5739e9d9a..d5208078194 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/desc/amdgpu_targets.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/desc/amdgpu_targets.desc @@ -15,6 +15,6 @@ gfx1011 - RDNA GPU, codename navi12, including Radeon Pro 5600M/V520 gfx1012 - RDNA GPU, codename navi14, including Radeon RX 5500XT/5500/5500M/5500XTB/5300/5300M, Radeon Pro 5500XT/5500M/5300/5300M, Radeon Pro W5500X/W5500/W5500M/W5300M gfx1030 - RDNA2 GPU, codename navi21/sienna cichlid, including Radeon RX 6950XT/6900XT/6800XT/6800, Radeon Pro W6800 gfx1031 - RDNA2 GPU, codename navi22/navy flounder, including Radeon RX 6750XT/6700XT/6800M/6700M -gfx1100 - RDNA3 GPU, codename navi31/plum bonito, including Radeon RX 7900XTX/7900XT -gfx1101 - RDNA3 GPU, codename navi32 -gfx1102 - RDNA3 GPU, codename navi33 +gfx1100 - RDNA3 GPU, codename navi31/plum bonito, including Radeon RX 7900XTX/7900XT, AMD Radeon Pro W7900/W7800 +gfx1101 - RDNA3 GPU, codename navi32, including Radeon RX 7700XT/7800XT +gfx1102 - RDNA3 GPU, codename navi33, including Radeon RX 7600/7600M/7600M XT/7700S/7600S, AMD Radeon PRO W7600/W7500 diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.mask b/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.mask index f13c23ad9e4..f55b96df8ff 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.mask @@ -1,6 +1,11 @@ # Copyright 2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# matoro (2023-11-16) +# Test failures on BE +# https://bugs.chromium.org/p/aomedia/issues/detail?id=3487 +media-libs/libaom + # matoro (2023-10-09) # Tested on LE only (#889996, #908893) dev-games/mygui diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.use.mask index bbab4da2509..0249100c84d 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/big-endian/package.use.mask @@ -1,6 +1,17 @@ # Copyright 2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# matoro (2023-11-16) +# media-libs/libaom casualties +# https://bugs.chromium.org/p/aomedia/issues/detail?id=3487 +media-video/ffmpeg libaom +www-client/firefox system-av1 +www-client/seamonkey system-av1 +media-video/vlc aom +media-libs/libheif aom +media-libs/libavif aom +mail-client/thunderbird system-av1 + # matoro (2023-04-11) # dev-libs/weston casualties (#833010) # https://gitlab.freedesktop.org/wayland/weston/-/issues/739 diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.mask b/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.mask index 7f515a86104..8466238a235 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/musl/package.mask @@ -1,6 +1,10 @@ # Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Florian Schmaus (2023-11-22) +# Requires systemd which is not supported on musl. +sys-power/sandmann-bin + # Maciej Barć (2023-09-16) # Binary package, which is compiled against glibc dev-lang/dafny-bin diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/prefix/package.mask b/sdk_container/src/third_party/portage-stable/profiles/features/prefix/package.mask index 32df49a3a6c..3a54bbdc93c 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/prefix/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/prefix/package.mask @@ -13,6 +13,6 @@ gnome-extra/gnome-user-share gnome-extra/office-runner sys-apps/gentoo-systemd-integration sys-apps/systemd-readahead -sys-kernel/installkernel-systemd-boot +sys-kernel/installkernel-systemd sys-process/systemd-cron www-misc/profile-sync-daemon diff --git a/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask b/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask index 9fbada22600..910deb96c02 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/features/wd40/package.mask @@ -85,7 +85,6 @@ dev-python/python-ironicclient dev-python/python-jose dev-python/python-neutronclient dev-python/python-openstackclient -dev-python/python-sshpubkeys dev-python/readme-renderer dev-python/referencing dev-python/requests-kerberos @@ -96,6 +95,7 @@ dev-python/selenium dev-python/service-identity dev-python/setuptools-rust dev-python/spur +dev-python/sshpubkeys dev-python/sshtunnel dev-python/tempest dev-python/trustme diff --git a/sdk_container/src/third_party/portage-stable/profiles/license_groups b/sdk_container/src/third_party/portage-stable/profiles/license_groups index fc3d97f8613..84b093b011f 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/license_groups +++ b/sdk_container/src/third_party/portage-stable/profiles/license_groups @@ -81,7 +81,7 @@ OSI-APPROVED @OSI-APPROVED-FREE @OSI-APPROVED-NONFREE # License agreements that try to take away your rights. These are more # restrictive than "all-rights-reserved" or require explicit approval. -EULA 2dboy-EULA AMD-GPU-PRO-EULA android AnyDesk-TOS Aseprite-EULA baudline bestcrypt CAPYBARA-EULA Coherent-Graphics ETQW f.lux FAH-EULA-2014 Flightradar24 Gameplay-Group-EULA geekbench genymotion GIMPS GOG-EULA google-chrome Intel-SDP Introversion JoyPixels LOKI-EULA MakeMKV-EULA Microsemi microsoft-edge Microsoft-vscode Mojang MTA-0.5 NVIDIA-CUDA NVIDIA-SDK Ookla OPERA-2018 PAPERS-PLEASE PassMark-EULA PICO-8 Primate-Plunge PUEL-11 Q3AEULA-20000111 QUAKE4 RAR sfpg SPS Steam supermicro Synology teamspeak3 teamspeak5 TeamViewer THINKTANKS TIK ubiquiti ut2003 ut2003-demo Vivaldi worklog-assistant WPS-EULA zi-labone +EULA 2dboy-EULA AMD-GPU-PRO-EULA android AnyDesk-TOS Aseprite-EULA baudline bestcrypt CAPYBARA-EULA Coherent-Graphics Dell-EULA ETQW f.lux FAH-EULA-2014 Flightradar24 Gameplay-Group-EULA geekbench genymotion GIMPS GOG-EULA google-chrome Intel-SDP Introversion JoyPixels LOKI-EULA MakeMKV-EULA Microsemi microsoft-edge Microsoft-vscode Mojang MTA-0.5 NVIDIA-CUDA NVIDIA-SDK Ookla OPERA-2018 PAPERS-PLEASE PassMark-EULA PICO-8 Primate-Plunge PUEL-11 Q3AEULA-20000111 QUAKE4 RAR sfpg SPS Steam supermicro Synology teamspeak3 teamspeak5 TeamViewer THINKTANKS TIK ubiquiti ut2003 ut2003-demo Vivaldi worklog-assistant WPS-EULA zi-labone # Deprecated license labels, used by repoman and pkgcheck #DEPRECATED (currently none) diff --git a/sdk_container/src/third_party/portage-stable/profiles/package.deprecated b/sdk_container/src/third_party/portage-stable/profiles/package.deprecated index 1983e7d43c7..2adcaa0e42a 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/package.deprecated +++ b/sdk_container/src/third_party/portage-stable/profiles/package.deprecated @@ -49,11 +49,6 @@ dev-perl/Type-Tie # which ensures a sound server is installed via PDEPEND. media-sound/pulseaudio -# Sam James (2023-05-30) -# Removed from GStreamer 1.20. -# Dropped upstream in https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/9a4651e3879270292672f08a1f6ed2bffefc5aed. -media-plugins/gst-plugins-libmms - # Michał Górny (2023-05-29) # Use the following snippet instead: # @@ -120,14 +115,6 @@ dev-python/future # preferably) or last rite it. dev-python/nose -# Michał Górny (2022-10-14) -# The toml package is unmaintained (last release in 2020) and does not -# implement TOML 1.0. The recommended alternatives include the built-in -# tomllib module, dev-python/tomli, dev-python/tomli-w -# and dev-python/tomlkit. Please consult Guide for porting tips: -# https://projects.gentoo.org/python/guide/porting.html#replacing-the-toml-package -dev-python/toml - # Matt Turner (2022-10-02) # Dummy packages, now merged into app-accessibility/at-spi2-core. # When possible, replace dependencies on these packages with a dependency on @@ -165,7 +152,6 @@ gnome-base/libglade gnome-base/libgnomecanvas media-libs/libart_lgpl x11-libs/gtksourceview:2.0 -x11-libs/libwnck:1 x11-themes/gnome-icon-theme-extras x11-themes/gnome-icon-theme-symbolic x11-themes/gtk-chtheme @@ -175,7 +161,6 @@ x11-themes/gtk-engines-candido x11-themes/gtk-engines-experience x11-themes/gtk-engines-murrine x11-themes/gtk-engines-qtpixmap -x11-themes/gtk-engines-quartz x11-themes/gtk-engines-rezlooks x11-themes/gtk-engines-ubuntulooks @@ -186,8 +171,6 @@ dev-perl/Mail-Sender # Andreas K. Hüttel (2021-06-11) # gtk2. Nuff said. See HOMEPAGE, too. dev-perl/Gtk2 -dev-perl/Gtk2-Notify -dev-perl/gnome2-wnck # Mart Raudsepp (2020-07-04) # Port to gtk+:3 using wxGTK:3.0-gtk3 SLOT diff --git a/sdk_container/src/third_party/portage-stable/profiles/package.mask b/sdk_container/src/third_party/portage-stable/profiles/package.mask index 538ed3fd903..0904349f5a3 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/package.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/package.mask @@ -33,6 +33,69 @@ #--- END OF EXAMPLES --- +# Andreas K. Hüttel (2023-11-26) +# Work in progress +~dev-lang/perl-5.38.1 +~virtual/perl-Module-CoreList-5.202.311.250 + +# John Helmert III (2023-11-25) +# Multiple vulnerabilities, unmaintained upstream and in Gentoo. +# subtitleripper included as sole reverse dependency, similarly +# unmaintained, and with no other reverse dependencies. +# Removal on 2023-12-24, bug #824290. +app-text/gocr +media-video/subtitleripper + +# Sam James (2023-11-25) +# Breaks desktop icon rendering, see bug #904468. +# Upstream bug: https://gitlab.xfce.org/xfce/xfdesktop/-/issues/242 +=xfce-base/xfdesktop-4.19.1 + +# Sam James (2023-11-22) +# Further bugs with CoW via copy_file_range (bug #917224, https://github.com/openzfs/zfs/issues/15526). +# The issue is very similar to bug #815469. +# ZFS 2.2.1 has a workaround but if you haven't already upgraded your pool to +# use the new block cloning feature, consider using (2023-11-19) +# Package has been masked for a long time, is useless for ::gentoo, and has no +# reverse dependencies. +# Removal on 2023-12-19. +dev-haskell/doctest-parallel + +# hololeap (2023-11-19) +# Bundled library for GHC, exposed as an ebuild for historical reasons. +# No reverse dependencies, no longer needed in ::gentoo tree. +# See: +# Removal on 2023-12-19. +dev-haskell/terminfo + +# Sam James (2023-11-19) +# GCC 10 and older no longer receive upstream support or fixes for +# bugs. Please switch to a newer GCC version using gcc-config. +# The lowest supported version of GCC is GCC 11. + (2023-11-18) +# Lots of applications need porting, bug #917537. +>=dev-libs/libxml2-2.12.0 + +# Arthur Zamarin (2023-11-10) +# No reverse dependencies, no tests, no upstream activity. All ebuild +# maintenance on this package was done randomly by @python project members, +# at late stage of python porting, which is hard with no tests. +# Removal on 2023-12-10. Bug #917124. +dev-python/empy + +# Michał Górny (2023-11-06) +# Unmaintained. Last commit in 2017. Distutils is deprecated. +# No revdeps. +# Removal on 2023-12-06. Bug #916968. +dev-python/pyqt-distutils + # Sam James (2023-11-05) # Mask broken versions: # - sys-fs/btrfs-progs-6.6(-r0) was respun upstream. @@ -234,20 +297,6 @@ dev-python/ypy-websocket # a while. Removal on 2023-11-13. Bug #915190. media-libs/libofa -# Mart Raudsepp (2023-10-14) -# GStreamer plugin removed upstream. MMS was deprecated in 2003 and no -# streams using MMS are known to exist. Removal on 2023-11-13. Bug #915771. -media-plugins/gst-plugins-libmms - -# Florian Schmaus (2023-10-14) -# Obsolete acct-* packages that became leaf packages. -# Removal on 2023-11-14. -acct-user/tpm -acct-group/tpm -acct-user/ultimaker -acct-group/ultimaker -acct-group/systemd-hostname - # Michał Górny (2023-10-14) # media-video/transcode is dead for many years. We already piled up # a lot of downstream patches just to keep it working, and it's broken @@ -260,105 +309,10 @@ media-video/dvd9to5 media-video/dvdrip media-video/transcode -# Andrey Grozin (2023-10-12) -# The last upstream tag in 2021 -# There is an active fork: app-text/crqt-ng and app-text/crwx-ng -# Bug https://bugs.gentoo.org/915634 -# Removal on 2023-11-11 -app-text/coolreader - -# Ionen Wolkens (2023-10-10) -# Formerly added for unbundling on games-emulation/pcsx2, which is -# no longer needed. Has no real use on its own, has no revdeps, and -# does not have real releases (snapshot-only). -# Removal on 2023-11-09. -dev-libs/libchdr - -# David Seifert (2023-10-08) -# Upstream long gone, unmaintained, EAPI 6, only Gentoo still packages -# this. Removal on 2023-11-07. Bug #905187. -app-misc/dvorakng - -# David Seifert (2023-10-08) -# Unmaintained, EAPI 6, tons of patches we have to carry, last release -# 20 years ago, all major distros have removed this. -# Removal on 2023-11-07. Bug #602382. -app-backup/flexbackup - -# David Seifert (2023-10-08) -# Unmaintained, last release over 23 years(!) ago, multiple QA issues, -# no other major distro carries this anymore. Removal on 2023-11-07. -# Bug #425872, #452982, #520968, #605450, #878621, #905945. -app-admin/qpage - -# David Seifert (2023-10-08) -# Upstream gone, kept on life support by Debian, most distros don't -# carry this anymore, Transmeta CPUs are long obsolete at this point. -# Removal on 2023-11-07. Bug #541694, #905186. -app-admin/longrun - -# David Seifert (2023-10-08) -# Unmaintained, typical broken suckless build system, no upstream -# activity, only Fedora still carries it. -# Removal on 2023-11-06. Bug #732422, #914638. -x11-misc/sselp - -# David Seifert (2023-10-08) -# Unmaintained, last release over 5 years ago, lots of QA issues, no -# other distro carries this. -# Removal on 2023-11-06. Bug #742782, #742809, #771858, #811393, -# #898314, #898322, #898324, #898326. -dev-libs/libtubo -x11-libs/librfm -x11-misc/rodent - -# Hans de Graaff (2023-10-07) -# Unresolved security issues since two years, bug #792336. Original -# upstream inactive since 2019. Substitute upstream inactive since -# 2020. No reverse dependencies. Masked for removal on 2023-11-07. -sys-fs/dmg2img - # Sam James (2023-10-06) # Breaks building scipy: https://github.com/cython/cython/issues/5748 =dev-python/cython-3.0.3 -# Volkmar W. Pogatzki (2023-10-04) -# Incompatible with newer media-video/ffmpeg, bug #914499. -# Deps appenh and loadlib not used by anything else. -# Removal on 2023-11-04. -media-video/jubler -dev-java/appenh -dev-java/loadlib - -# Michał Górny (2023-10-04) -# The project was abandoned upstream. The test suite is broken -# with python3.12. It was used only as an optional test dep -# for dev-python/Arpeggio. -# Removal on 2023-11-03. Bug #915162. -dev-python/memory-profiler - -# Michał Górny (2023-09-29) -# The project is no longer maintained upstream. We haven't handled -# the version bump from a year ago yet. No reverse dependencies. -# Removal on 2023-10-29. Bug #894592. -dev-python/django-mptt - -# Hans de Graaff (2023-09-23) -# ruby31-only package. No reverse dependencies. Archived by -# upstream. Last release in 2012. Removal on 2023-10-23. -dev-ruby/kirbybase - -# Hans de Graaff (2023-09-23) -# ruby31-only package. No reverse dependencies. Discontinued by -# upstream who recommends using dev-ruby/bunny instead. Removal on -# 2023-10-23. -dev-ruby/amqp - -# Hans de Graaff (2023-09-23) -# ruby30-only package. Upstream HOMEPAGE and SRC_URI are gone. Last -# release at least 8 years ago. Bug #909023. Removal on 2024-10-23. -app-dicts/prime-dict - # Michał Górny (2023-09-22) # =dev-python/setuptools-scm-8.0.1 broke compatibility hard but reverted # the changes in 8.0.2. @@ -472,12 +426,6 @@ net-misc/openr2 =dev-db/mariadb-10.11.2 =dev-db/mariadb-10.11.3 -# Sam James (2023-05-19) -# Breaks Portage's pid-sandbox at least with 5.10 kernels. Pending investigation. -# If you're hitting this, try: FEATURES="-pid-sandbox" emerge -v1 sys-apps/util-linux -# as a workaround. bug #906797. -~sys-apps/util-linux-2.39 - # Sam James (2023-05-10) # Lots of package breakage as usual for new versions. Masked until most/all # reverse dependencies are fixed. Tracker bug is bug #906077. @@ -562,16 +510,6 @@ x11-drivers/nvidia-drivers:0/390 # Breaks too many revdeps for now =app-text/discount-3* -# Jaco Kroon (2022-11-05) -# Some potentially breaking changes here, please check the UPGRADE.txt file. -# Most important: chan_sip no longer builds by default, if you've migrated to -# PJSIP you should be OK and most likely you should be able to safely unmask. -# For now to prevent accidental upgrades and to allow proper testing this will -# be in place for minimum six months (2023-04-22). -=net-misc/asterisk-20* -=net-misc/asterisk-opus-20* -=net-misc/asterisk-g729-20* - # John Helmert III (2022-10-16) # (2022-08-21) -# doctest-parallel does not currently work with Setup.hs (used internally by -# haskell-cabal.eclass) -# See: -dev-haskell/doctest-parallel - -# Sam James (2022-05-28) -# GCC 9 and older no longer receive upstream support or fixes for -# bugs. Please switch to a newer GCC version using gcc-config. -# The lowest supported version of GCC is GCC 10. - (2022-04-29) # Apparently the "b" in version means "beta". 3.24 is available, we # should update to that. #841437 diff --git a/sdk_container/src/third_party/portage-stable/profiles/prefix/darwin/macos/arch/ppc/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/prefix/darwin/macos/arch/ppc/package.use.mask index 05af1b36b5b..c31b5144bac 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/prefix/darwin/macos/arch/ppc/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/prefix/darwin/macos/arch/ppc/package.use.mask @@ -12,3 +12,4 @@ media-libs/imlib2 cpu_flags_x86_mmx # Elias Pipping (2007-09-01) # mpg123 does not compile with USE=mmx media-sound/mpg123 cpu_flags_x86_mmx +media-libs/libmpg123 cpu_flags_x86_mmx diff --git a/sdk_container/src/third_party/portage-stable/profiles/prefix/darwin/macos/arch/x64/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/prefix/darwin/macos/arch/x64/package.use.mask index f0e7d38c642..02a3e779385 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/prefix/darwin/macos/arch/x64/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/prefix/darwin/macos/arch/x64/package.use.mask @@ -8,6 +8,7 @@ media-libs/xvid -pic # Jeremy Olexa (2010-07-29) # Relocation issues on 32-bit OSX only, bug #329859 media-sound/mpg123 -cpu_flags_x86_mmx -cpu_flags_x86_sse +media-libs/libmpg123 -cpu_flags_x86_mmx -cpu_flags_x86_sse # Fabian Groffen (2009-02-01) # Doesn't compile on 32-bits OSX only, bug #257225 diff --git a/sdk_container/src/third_party/portage-stable/profiles/prefix/package.use.mask b/sdk_container/src/third_party/portage-stable/profiles/prefix/package.use.mask index c67f019abf6..fcace264232 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/prefix/package.use.mask +++ b/sdk_container/src/third_party/portage-stable/profiles/prefix/package.use.mask @@ -5,10 +5,6 @@ # needs unkeyworded virtual/gsasl mail-client/mutt gsasl -# Fabian Groffen (2021-03-13) -# nss-pem, bug #769578 -net-misc/curl curl_ssl_nss - # Sam James (2020-12-10) # Disable systemtap for now to be consistent # with ::prefix pre-merge. diff --git a/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/make.defaults b/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/make.defaults index c802f3fa340..67fcf7e034d 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/make.defaults +++ b/sdk_container/src/third_party/portage-stable/profiles/releases/23.0/make.defaults @@ -13,8 +13,8 @@ USE="${USE} -cli" # bug 849875 USE="${USE} -dri" -# bug 818376 -LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs" +# bug 818376 (only on specific arches) +LDFLAGS="-Wl,-O1 -Wl,--as-needed" # copied from merged-usr feature # Mike Gilbert (2022-08-31) diff --git a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/package.use b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/package.use index 97ea7b1120e..ec048da4370 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/package.use +++ b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/package.use @@ -1,6 +1,16 @@ # Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 +# Andreas Sturmlechner (2023-11-12) +# NSS: Required by kde-apps/okular[pdf] +# Boost: app-text/poppler[qt5] recommended w/ Boost (bug #795888) +app-text/poppler nss boost + +# Andreas Sturmlechner (2023-11-11) +# egl, libinput required by kde-frameworks/kwayland +# accessibility required by kde-plasma/kwin +dev-qt/qtgui:5 accessibility egl libinput + # Sam James (2023-09-22) # Most people aren't going to use CMake's GUI. USE=gui is enabled by default # on desktop profiles and CMake is unavoidable, it feels a shame to drag in @@ -22,7 +32,7 @@ media-fonts/fonts-meta emoji dev-lang/python -bluetooth # Andreas Sturmlechner (2021-12-18) -# Required by media-gfx/digikam +# Required by media-gfx/digikam, kde-apps/libkexiv2 media-gfx/exiv2 xmp # Marek Szuba (2020-12-24) @@ -50,10 +60,6 @@ dev-libs/xmlsec nss # Not required, but makes life easier with Qt; bug #457934 app-arch/unzip natspec -# Andreas Sturmlechner (2017-11-30) -# Required by kde-frameworks/kwayland -dev-qt/qtgui:5 egl libinput - # Andreas Sturmlechner (2017-08-04) # Required by flac and mp3 kde-apps/k3b taglib diff --git a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/package.use b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/package.use index 4ef2ed3e47a..aea90f890f6 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/package.use +++ b/sdk_container/src/third_party/portage-stable/profiles/targets/desktop/plasma/package.use @@ -1,29 +1,33 @@ # Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -# qtwebchannel package is fairly small, and python bindings are -# required by some popular desktop packages such as calibre, -# qutebrowser, and freecad (or indirectly through PyQt*WebEngine). -dev-python/PyQt5 webchannel -dev-python/PyQt6 webchannel -dev-python/pyside2 webchannel -dev-python/pyside6 webchannel - -# NSS: Required by kde-apps/okular[pdf] -# Boost: app-text/poppler[qt5] recommended w/ Boost (bug #795888) -app-text/poppler nss boost +# Marek Szuba (2023-11-12) +# FUSE cannot be built with multiple audio drivers, and desktop/gnome +# profiles set both USE=pulseaudio (directly) and USE=alsa (inherited +# from desktop). Default to the latter for now because PulseAudio support +# in FUSE is currently considered experimental. +app-emulation/fuse -pulseaudio # Required by sys-apps/fwupd, a dependency of kde-plasma/discover dev-libs/libjcat gpg pkcs7 # Required by www-client/falkon[python] and dev-python/pyside2[location], # in addition fix REQUIRED_USE conflict caused if "webengine" is enabled. +# qtwebchannel package is fairly small, and python bindings are +# required by some popular desktop packages such as calibre, +# qutebrowser, and freecad (or indirectly through PyQt*WebEngine). +dev-python/PyQt5 webchannel +dev-python/PyQt6 webchannel dev-python/pyside2 designer location positioning quick dev-python/pyside2 printsupport webchannel +dev-python/pyside6 webchannel # Required by sys-apps/flatpak, a dependency of kde-plasma/discover dev-util/ostree curl +# Required by net-im/neochat:5 +dev-qt/qtmultimedia:5 gstreamer + # Required by app-editors/okteta dev-qt/qtscript:5 scripttools @@ -36,9 +40,6 @@ kde-apps/ktp-common-internals otr # Enable by default, requires kde-frameworks/kwayland kde-apps/yakuake absolute-position -# Required by kde-apps/libkexiv2 -media-gfx/exiv2 xmp - # Required by kde-frameworks/kapidox media-gfx/graphviz python diff --git a/sdk_container/src/third_party/portage-stable/profiles/thirdpartymirrors b/sdk_container/src/third_party/portage-stable/profiles/thirdpartymirrors index b28145aeac1..1bcdb7cec8b 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/thirdpartymirrors +++ b/sdk_container/src/third_party/portage-stable/profiles/thirdpartymirrors @@ -18,7 +18,6 @@ nongnu https://download.savannah.nongnu.org/releases/ https://ftp.cc.uoc.gr/mir openbsd https://cdn.openbsd.org/pub/OpenBSD https://fastly.cdn.openbsd.org/pub/OpenBSD openssl https://www.openssl.org/ https://artfiles.org/openssl.org/ https://www.mirrorservice.org/sites/ftp.openssl.org/ ftp://ftp.openssl.org qmail https://qmail-mirror.jms1.net/ http://qmail.pandakc.com/ http://qmail.glasswings.com.au/ http://qmail.teraren.com/ http://qmail.mirror.cdnetworks.com/ https://qmail.mirror.choon.net/ http://qmail.cbox.biz/ http://qmail.cbox.biz/ http://qmail.mirrors.ovh.net/ftp.qmail.org/ http://qmail.rasjonell.net/ http://mirrors.ntua.gr/qmail/ http://qmail.cti.gr/ http://qmail.hypergrid.it/ http://qmail.omnis.ch/ http://qmail.cavsystems.net/ https://qmail.mivzakim.net/ http://qmail.mirror.rise.ph/ -samba https://download.samba.org/pub/samba/ sabayon http://sabayon.c3sl.ufpr.br/distfiles https://ftp.nluug.nl/pub/os/Linux/distr/sabayonlinux/distfiles https://ftp.rnl.tecnico.ulisboa.pt/pub/sabayon/distfiles https://ftp.fsn.hu/pub/linux/distributions/sabayon/distfiles http://cross-lfs.sabayonlinux.org/distfiles https://mirror.dkm.cz/sabayon/distfiles http://mirror.internode.on.net/pub/sabayon/distfiles https://na.mirror.garr.it/mirrors/sabayonlinux/distfiles http://distfiles.sabayon.org sourceforge https://downloads.sourceforge.net sourceforge.jp http://iij.dl.sourceforge.jp https://osdn.dl.sourceforge.jp https://jaist.dl.sourceforge.jp diff --git a/sdk_container/src/third_party/portage-stable/profiles/updates/3Q-2023 b/sdk_container/src/third_party/portage-stable/profiles/updates/3Q-2023 index f5392cf1039..35c455f3127 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/updates/3Q-2023 +++ b/sdk_container/src/third_party/portage-stable/profiles/updates/3Q-2023 @@ -13,7 +13,6 @@ move dev-python/uri_template dev-python/uri-template move dev-python/pykerberos dev-python/kerberos move dev-python/rapidfuzz_capi dev-python/rapidfuzz-capi move dev-python/line_profiler dev-python/line-profiler -move dev-python/memory_profiler dev-python/memory-profiler move dev-libs/paho-mqtt-c net-libs/paho-mqtt-c move dev-lisp/ecls dev-lisp/ecl move sys-devel/ct-ng sys-devel/crosstool-ng diff --git a/sdk_container/src/third_party/portage-stable/profiles/updates/4Q-2023 b/sdk_container/src/third_party/portage-stable/profiles/updates/4Q-2023 index 4d4cf071981..09b2facc286 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/updates/4Q-2023 +++ b/sdk_container/src/third_party/portage-stable/profiles/updates/4Q-2023 @@ -15,3 +15,21 @@ move dev-python/swagger_spec_validator dev-python/swagger-spec-validator move dev-python/pslab-python dev-python/pslab move dev-python/python-discid dev-python/discid move dev-python/py-amqp dev-python/amqp +move dev-python/pyre2 dev-python/fb-re2 +move dev-python/python-sshpubkeys dev-python/sshpubkeys +move sys-kernel/installkernel-systemd-boot sys-kernel/installkernel-systemd +move app-office/kalendar app-office/merkuro +move kde-misc/wacomtablet kde-plasma/wacomtablet +move kde-apps/print-manager kde-plasma/print-manager +move dev-libs/kuserfeedback kde-frameworks/kuserfeedback +move dev-python/pure_eval dev-python/pure-eval +slotmove dev-haskell/extra 2 0 +slotmove dev-haskell/hdbc-postgresql 2 0 +slotmove dev-haskell/hdbc 2 0 +slotmove dev-haskell/parallel 3 0 +slotmove dev-haskell/quickcheck 2 0 +move kde-frameworks/plasma kde-plasma/libplasma +move kde-frameworks/kactivities-stats kde-plasma/plasma-activities-stats +move kde-frameworks/kactivities kde-plasma/plasma-activities +slotmove kde-frameworks/extra-cmake-modules 5 0 +move kde-frameworks/kwayland kde-plasma/kwayland diff --git a/sdk_container/src/third_party/portage-stable/profiles/use.desc b/sdk_container/src/third_party/portage-stable/profiles/use.desc index d8f97958e90..caf7287f34a 100644 --- a/sdk_container/src/third_party/portage-stable/profiles/use.desc +++ b/sdk_container/src/third_party/portage-stable/profiles/use.desc @@ -212,6 +212,7 @@ musicbrainz - Lookup audio metadata using MusicBrainz community service (musicbr mysql - Add mySQL Database support mysqli - Add support for the improved mySQL libraries nas - Add support for network audio sound +native-extensions - Build native (e.g. C, Rust) extensions in addition to pure (e.g. Python) code (usually speedups) ncurses - Add ncurses support (console display library) neXt - Enable neXt toolkit netcdf - Enable NetCDF data format support diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base-policy/Manifest b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base-policy/Manifest index 4d610c6a88b..4effec8926c 100644 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base-policy/Manifest +++ b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base-policy/Manifest @@ -1,6 +1,2 @@ -DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f -DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6 -DIST patchbundle-selinux-base-policy-2.20231002-r1.tar.bz2 434734 BLAKE2B f2f28674ba93cd3a699cf0bc8fd06ab0500995f9518082cc76734c724b9ac82fcbcfa536f383a22b2fe72a9f781f202a78e630b7eb314880a98410badb32edd2 SHA512 30963590525842b7aaafc4bda99ae5297dc9706031431e69766dc90507357e4852ab0647893bfa27e6c6d82dd12f9af9a3fb5b790e2bd9b8311b8d91dafd083d DIST patchbundle-selinux-base-policy-2.20231002-r2.tar.bz2 436443 BLAKE2B f481e661b4afadd15f786a5d69d975d79e5d9a378c7bca279282d59215a02897a9587cbd56f7a2d95fd8152f931c0a8d469927033910e8fe214ee4494f4e6e49 SHA512 8545592130d7d10f7d6411a356e79f9cb2689138a7eb69a5f7bcd630203019c61336f1e3bdbc95dea31efceb41c9bce2e7ff42ced6a51a9b7482e991864fec05 -DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6 DIST refpolicy-2.20231002.tar.bz2 600458 BLAKE2B 254d6d3d6b95f21e1f8e1df5822520ccaeade427053fb172079427cf70bd33f8ced87a9e09e1d36ec5f7b33f0bac8d730020d91996c6d25eafdcec66ebe35bb3 SHA512 029cd2225ce57d96f681720f24828e962320af41832ad2dc95d4d41d00dbde20bb08d91fa8b964b592812a9fedd908c261734b77ad72cccfde2de541b9c2c74d diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base-policy/selinux-base-policy-2.20221101-r3.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base-policy/selinux-base-policy-2.20221101-r3.ebuild deleted file mode 100644 index 53278241d09..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base-policy/selinux-base-policy-2.20221101-r3.ebuild +++ /dev/null @@ -1,141 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -if [[ ${PV} == 9999* ]]; then - EGIT_REPO_URI="${SELINUX_GIT_REPO:-https://anongit.gentoo.org/git/proj/hardened-refpolicy.git}" - EGIT_BRANCH="${SELINUX_GIT_BRANCH:-master}" - EGIT_CHECKOUT_DIR="${WORKDIR}/refpolicy" - - inherit git-r3 -else - SRC_URI="https://github.com/SELinuxProject/refpolicy/releases/download/RELEASE_${PV/./_}/refpolicy-${PV}.tar.bz2 - https://dev.gentoo.org/~perfinion/patches/${PN}/patchbundle-${PN}-${PVR}.tar.bz2" - KEYWORDS="amd64 arm arm64 ~mips x86" -fi - -HOMEPAGE="https://wiki.gentoo.org/wiki/Project:SELinux" -DESCRIPTION="SELinux policy for core modules" - -IUSE="systemd +unconfined" - -PDEPEND="unconfined? ( sec-policy/selinux-unconfined )" -DEPEND="=sec-policy/selinux-base-${PVR}[systemd?]" -RDEPEND="${DEPEND}" -BDEPEND=" - sys-apps/checkpolicy - sys-devel/m4" - -MODS="application authlogin bootloader clock consoletype cron dmesg fstools getty hostname init iptables libraries locallogin logging lvm miscfiles modutils mount mta netutils nscd portage raid rsync selinuxutil setrans ssh staff storage su sysadm sysnetwork systemd tmpfiles udev userdomain usermanage unprivuser xdg" -DEL_MODS="hotplug" -LICENSE="GPL-2" -SLOT="0" -S="${WORKDIR}/" - -# Code entirely copied from selinux-eclass (cannot inherit due to dependency on -# itself), when reworked reinclude it. Only postinstall (where -b base.pp is -# added) needs to remain then. - -pkg_pretend() { - for i in ${POLICY_TYPES}; do - if [[ "${i}" == "targeted" ]] && ! use unconfined; then - die "If you use POLICY_TYPES=targeted, then USE=unconfined is mandatory." - fi - done -} - -src_prepare() { - local modfiles - - if [[ ${PV} != 9999* ]]; then - einfo "Applying SELinux policy updates ... " - eapply -p0 "${WORKDIR}/0001-full-patch-against-stable-release.patch" - fi - - eapply_user - - # Collect only those files needed for this particular module - for i in ${MODS}; do - modfiles="$(find "${S}"/refpolicy/policy/modules -iname $i.te) $modfiles" - modfiles="$(find "${S}"/refpolicy/policy/modules -iname $i.fc) $modfiles" - done - - for i in ${DEL_MODS}; do - [[ "${MODS}" != *${i}* ]] || die "Duplicate module in MODS and DEL_MODS: ${i}" - done - - for i in ${POLICY_TYPES}; do - mkdir "${S}"/${i} || die "Failed to create directory ${S}/${i}" - cp "${S}"/refpolicy/doc/Makefile.example "${S}"/${i}/Makefile \ - || die "Failed to copy Makefile.example to ${S}/${i}/Makefile" - - cp ${modfiles} "${S}"/${i} \ - || die "Failed to copy the module files to ${S}/${i}" - done -} - -src_compile() { - for i in ${POLICY_TYPES}; do - emake NAME=$i SHAREDIR="${SYSROOT%/}/usr/share/selinux" -C "${S}"/${i} - done -} - -src_install() { - local BASEDIR="/usr/share/selinux" - - for i in ${POLICY_TYPES}; do - for j in ${MODS}; do - einfo "Installing ${i} ${j} policy package" - insinto ${BASEDIR}/${i} - doins "${S}"/${i}/${j}.pp - done - done -} - -pkg_postinst() { - # Set root path and don't load policy into the kernel when cross compiling - local root_opts="" - if [[ "${ROOT}" != "" ]]; then - root_opts="-p ${ROOT} -n" - fi - - # Override the command from the eclass, we need to load in base as well here - local COMMAND="-i base.pp" - if has_version "> "${S}/refpolicy/build.conf" || die - - # Prepare initial configuration - cd "${S}/refpolicy" || die - emake conf - - # Setup the policies based on the types delivered by the end user. - # These types can be "targeted", "strict", "mcs" and "mls". - for i in ${POLICY_TYPES}; do - cp -a "${S}/refpolicy" "${S}/${i}" || die - cd "${S}/${i}" || die - - sed -i -e "/= module/d" "${S}/${i}/policy/modules.conf" || die - - sed -i -e '/^QUIET/s/n/y/' -e "/^NAME/s/refpolicy/$i/" \ - "${S}/${i}/build.conf" || die "build.conf setup failed." - - if [[ "${i}" == "mls" ]] || [[ "${i}" == "mcs" ]]; - then - # MCS/MLS require additional settings - sed -i -e "/^TYPE/s/standard/${i}/" "${S}/${i}/build.conf" \ - || die "failed to set type to mls" - fi - - if [ "${i}" == "targeted" ]; then - sed -i -e '/root/d' -e 's/user_u/unconfined_u/' \ - "${S}/${i}/config/appconfig-standard/seusers" \ - || die "targeted seusers setup failed." - fi - - if [ "${i}" != "targeted" ] && [ "${i}" != "strict" ] && use unconfined; then - sed -i -e '/root/d' -e 's/user_u/unconfined_u/' \ - "${S}/${i}/config/appconfig-${i}/seusers" \ - || die "policy seusers setup failed." - fi - done -} - -src_compile() { - [ -z "${POLICY_TYPES}" ] && local POLICY_TYPES="targeted strict mls mcs" - - for i in ${POLICY_TYPES}; do - cd "${S}/${i}" || die - emake base - if use doc; then - emake html - fi - done -} - -src_install() { - [ -z "${POLICY_TYPES}" ] && local POLICY_TYPES="targeted strict mls mcs" - - for i in ${POLICY_TYPES}; do - cd "${S}/${i}" || die - - emake DESTDIR="${D}" install - emake DESTDIR="${D}" install-headers - - echo "run_init_t" > "${D}/etc/selinux/${i}/contexts/run_init_type" || die - - echo "textrel_shlib_t" >> "${D}/etc/selinux/${i}/contexts/customizable_types" || die - - # libsemanage won't make this on its own - keepdir "/etc/selinux/${i}/policy" - - if use doc; then - docinto ${i}/html - dodoc -r doc/html/*; - fi - - insinto /usr/share/selinux/devel; - doins doc/policy.xml; - - done - - docinto / - dodoc doc/Makefile.example doc/example.{te,fc,if} - - doman man/man8/*.8; - - insinto /etc/selinux - doins "${FILESDIR}/config" - - insinto /usr/share/portage/config/sets - doins "${FILESDIR}/selinux.conf" -} diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base/selinux-base-2.20221101-r4.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base/selinux-base-2.20221101-r4.ebuild deleted file mode 100644 index d38a576e7f7..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base/selinux-base-2.20221101-r4.ebuild +++ /dev/null @@ -1,158 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -PYTHON_COMPAT=( python3_{9..11} ) -PYTHON_REQ_USE="xml(+)" -inherit python-any-r1 - -if [[ ${PV} == 9999* ]]; then - EGIT_REPO_URI="${SELINUX_GIT_REPO:-https://anongit.gentoo.org/git/proj/hardened-refpolicy.git}" - EGIT_BRANCH="${SELINUX_GIT_BRANCH:-master}" - EGIT_CHECKOUT_DIR="${WORKDIR}/refpolicy" - - inherit git-r3 -else - SRC_URI="https://github.com/SELinuxProject/refpolicy/releases/download/RELEASE_${PV/./_}/refpolicy-${PV}.tar.bz2 - https://dev.gentoo.org/~perfinion/patches/selinux-base-policy/patchbundle-selinux-base-policy-${PVR}.tar.bz2" - - KEYWORDS="amd64 arm arm64 ~mips x86" -fi - -IUSE="doc +unknown-perms systemd +ubac +unconfined" - -DESCRIPTION="Gentoo base policy for SELinux" -HOMEPAGE="https://wiki.gentoo.org/wiki/Project:SELinux" -LICENSE="GPL-2" -SLOT="0" - -RDEPEND=">=sys-apps/policycoreutils-2.8" -DEPEND="${RDEPEND}" -BDEPEND=" - ${PYTHON_DEPS} - >=sys-apps/checkpolicy-2.8 - sys-devel/m4" - -S=${WORKDIR}/ - -src_prepare() { - if [[ ${PV} != 9999* ]]; then - einfo "Applying SELinux policy updates ... " - eapply -p0 "${WORKDIR}/0001-full-patch-against-stable-release.patch" - fi - - eapply_user - - cd "${S}/refpolicy" || die - emake bare -} - -src_configure() { - [ -z "${POLICY_TYPES}" ] && local POLICY_TYPES="targeted strict mls mcs" - - # Update the SELinux refpolicy capabilities based on the users' USE flags. - if use unknown-perms; then - sed -i -e '/^UNK_PERMS/s/deny/allow/' "${S}/refpolicy/build.conf" \ - || die "Failed to allow Unknown Permissions Handling" - sed -i -e '/^UNK_PERMS/s/deny/allow/' "${S}/refpolicy/Makefile" \ - || die "Failed to allow Unknown Permissions Handling" - fi - - if ! use ubac; then - sed -i -e '/^UBAC/s/y/n/' "${S}/refpolicy/build.conf" \ - || die "Failed to disable User Based Access Control" - fi - - if use systemd; then - sed -i -e '/^SYSTEMD/s/n/y/' "${S}/refpolicy/build.conf" \ - || die "Failed to enable SystemD" - fi - - echo "DISTRO = gentoo" >> "${S}/refpolicy/build.conf" || die - - # Prepare initial configuration - cd "${S}/refpolicy" || die - emake conf - - # Setup the policies based on the types delivered by the end user. - # These types can be "targeted", "strict", "mcs" and "mls". - for i in ${POLICY_TYPES}; do - cp -a "${S}/refpolicy" "${S}/${i}" || die - cd "${S}/${i}" || die - - sed -i -e "/= module/d" "${S}/${i}/policy/modules.conf" || die - - sed -i -e '/^QUIET/s/n/y/' -e "/^NAME/s/refpolicy/$i/" \ - "${S}/${i}/build.conf" || die "build.conf setup failed." - - if [[ "${i}" == "mls" ]] || [[ "${i}" == "mcs" ]]; - then - # MCS/MLS require additional settings - sed -i -e "/^TYPE/s/standard/${i}/" "${S}/${i}/build.conf" \ - || die "failed to set type to mls" - fi - - if [ "${i}" == "targeted" ]; then - sed -i -e '/root/d' -e 's/user_u/unconfined_u/' \ - "${S}/${i}/config/appconfig-standard/seusers" \ - || die "targeted seusers setup failed." - fi - - if [ "${i}" != "targeted" ] && [ "${i}" != "strict" ] && use unconfined; then - sed -i -e '/root/d' -e 's/user_u/unconfined_u/' \ - "${S}/${i}/config/appconfig-${i}/seusers" \ - || die "policy seusers setup failed." - fi - done -} - -src_compile() { - [ -z "${POLICY_TYPES}" ] && local POLICY_TYPES="targeted strict mls mcs" - - for i in ${POLICY_TYPES}; do - cd "${S}/${i}" || die - emake base - if use doc; then - emake html - fi - done -} - -src_install() { - [ -z "${POLICY_TYPES}" ] && local POLICY_TYPES="targeted strict mls mcs" - - for i in ${POLICY_TYPES}; do - cd "${S}/${i}" || die - - emake DESTDIR="${D}" install - emake DESTDIR="${D}" install-headers - - echo "run_init_t" > "${D}/etc/selinux/${i}/contexts/run_init_type" || die - - echo "textrel_shlib_t" >> "${D}/etc/selinux/${i}/contexts/customizable_types" || die - - # libsemanage won't make this on its own - keepdir "/etc/selinux/${i}/policy" - - if use doc; then - docinto ${i}/html - dodoc -r doc/html/*; - fi - - insinto /usr/share/selinux/devel; - doins doc/policy.xml; - - done - - docinto / - dodoc doc/Makefile.example doc/example.{te,fc,if} - - doman man/man8/*.8; - - insinto /etc/selinux - doins "${FILESDIR}/config" - - insinto /usr/share/portage/config/sets - doins "${FILESDIR}/selinux.conf" -} diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base/selinux-base-2.20231002-r1.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base/selinux-base-2.20231002-r1.ebuild deleted file mode 100644 index 11859691550..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base/selinux-base-2.20231002-r1.ebuild +++ /dev/null @@ -1,158 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -PYTHON_COMPAT=( python3_{9..11} ) -PYTHON_REQ_USE="xml(+)" -inherit python-any-r1 - -if [[ ${PV} == 9999* ]]; then - EGIT_REPO_URI="${SELINUX_GIT_REPO:-https://anongit.gentoo.org/git/proj/hardened-refpolicy.git}" - EGIT_BRANCH="${SELINUX_GIT_BRANCH:-master}" - EGIT_CHECKOUT_DIR="${WORKDIR}/refpolicy" - - inherit git-r3 -else - SRC_URI="https://github.com/SELinuxProject/refpolicy/releases/download/RELEASE_${PV/./_}/refpolicy-${PV}.tar.bz2 - https://dev.gentoo.org/~perfinion/patches/selinux-base-policy/patchbundle-selinux-base-policy-${PVR}.tar.bz2" - - KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" -fi - -IUSE="doc +unknown-perms systemd +ubac +unconfined" - -DESCRIPTION="Gentoo base policy for SELinux" -HOMEPAGE="https://wiki.gentoo.org/wiki/Project:SELinux" -LICENSE="GPL-2" -SLOT="0" - -RDEPEND=">=sys-apps/policycoreutils-2.8" -DEPEND="${RDEPEND}" -BDEPEND=" - ${PYTHON_DEPS} - >=sys-apps/checkpolicy-2.8 - sys-devel/m4" - -S=${WORKDIR}/ - -src_prepare() { - if [[ ${PV} != 9999* ]]; then - einfo "Applying SELinux policy updates ... " - eapply -p0 "${WORKDIR}/0001-full-patch-against-stable-release.patch" - fi - - eapply_user - - cd "${S}/refpolicy" || die - emake bare -} - -src_configure() { - [ -z "${POLICY_TYPES}" ] && local POLICY_TYPES="targeted strict mls mcs" - - # Update the SELinux refpolicy capabilities based on the users' USE flags. - if use unknown-perms; then - sed -i -e '/^UNK_PERMS/s/deny/allow/' "${S}/refpolicy/build.conf" \ - || die "Failed to allow Unknown Permissions Handling" - sed -i -e '/^UNK_PERMS/s/deny/allow/' "${S}/refpolicy/Makefile" \ - || die "Failed to allow Unknown Permissions Handling" - fi - - if ! use ubac; then - sed -i -e '/^UBAC/s/y/n/' "${S}/refpolicy/build.conf" \ - || die "Failed to disable User Based Access Control" - fi - - if use systemd; then - sed -i -e '/^SYSTEMD/s/n/y/' "${S}/refpolicy/build.conf" \ - || die "Failed to enable SystemD" - fi - - echo "DISTRO = gentoo" >> "${S}/refpolicy/build.conf" || die - - # Prepare initial configuration - cd "${S}/refpolicy" || die - emake conf - - # Setup the policies based on the types delivered by the end user. - # These types can be "targeted", "strict", "mcs" and "mls". - for i in ${POLICY_TYPES}; do - cp -a "${S}/refpolicy" "${S}/${i}" || die - cd "${S}/${i}" || die - - sed -i -e "/= module/d" "${S}/${i}/policy/modules.conf" || die - - sed -i -e '/^QUIET/s/n/y/' -e "/^NAME/s/refpolicy/$i/" \ - "${S}/${i}/build.conf" || die "build.conf setup failed." - - if [[ "${i}" == "mls" ]] || [[ "${i}" == "mcs" ]]; - then - # MCS/MLS require additional settings - sed -i -e "/^TYPE/s/standard/${i}/" "${S}/${i}/build.conf" \ - || die "failed to set type to mls" - fi - - if [ "${i}" == "targeted" ]; then - sed -i -e '/root/d' -e 's/user_u/unconfined_u/' \ - "${S}/${i}/config/appconfig-standard/seusers" \ - || die "targeted seusers setup failed." - fi - - if [ "${i}" != "targeted" ] && [ "${i}" != "strict" ] && use unconfined; then - sed -i -e '/root/d' -e 's/user_u/unconfined_u/' \ - "${S}/${i}/config/appconfig-${i}/seusers" \ - || die "policy seusers setup failed." - fi - done -} - -src_compile() { - [ -z "${POLICY_TYPES}" ] && local POLICY_TYPES="targeted strict mls mcs" - - for i in ${POLICY_TYPES}; do - cd "${S}/${i}" || die - emake base - if use doc; then - emake html - fi - done -} - -src_install() { - [ -z "${POLICY_TYPES}" ] && local POLICY_TYPES="targeted strict mls mcs" - - for i in ${POLICY_TYPES}; do - cd "${S}/${i}" || die - - emake DESTDIR="${D}" install - emake DESTDIR="${D}" install-headers - - echo "run_init_t" > "${D}/etc/selinux/${i}/contexts/run_init_type" || die - - echo "textrel_shlib_t" >> "${D}/etc/selinux/${i}/contexts/customizable_types" || die - - # libsemanage won't make this on its own - keepdir "/etc/selinux/${i}/policy" - - if use doc; then - docinto ${i}/html - dodoc -r doc/html/*; - fi - - insinto /usr/share/selinux/devel; - doins doc/policy.xml; - - done - - docinto / - dodoc doc/Makefile.example doc/example.{te,fc,if} - - doman man/man8/*.8; - - insinto /etc/selinux - doins "${FILESDIR}/config" - - insinto /usr/share/portage/config/sets - doins "${FILESDIR}/selinux.conf" -} diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base/selinux-base-2.20231002-r2.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base/selinux-base-2.20231002-r2.ebuild index 11859691550..d38a576e7f7 100644 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base/selinux-base-2.20231002-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-base/selinux-base-2.20231002-r2.ebuild @@ -17,7 +17,7 @@ else SRC_URI="https://github.com/SELinuxProject/refpolicy/releases/download/RELEASE_${PV/./_}/refpolicy-${PV}.tar.bz2 https://dev.gentoo.org/~perfinion/patches/selinux-base-policy/patchbundle-selinux-base-policy-${PVR}.tar.bz2" - KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" + KEYWORDS="amd64 arm arm64 ~mips x86" fi IUSE="doc +unknown-perms systemd +ubac +unconfined" diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/Manifest b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/Manifest index 4d610c6a88b..4effec8926c 100644 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/Manifest +++ b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/Manifest @@ -1,6 +1,2 @@ -DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f -DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6 -DIST patchbundle-selinux-base-policy-2.20231002-r1.tar.bz2 434734 BLAKE2B f2f28674ba93cd3a699cf0bc8fd06ab0500995f9518082cc76734c724b9ac82fcbcfa536f383a22b2fe72a9f781f202a78e630b7eb314880a98410badb32edd2 SHA512 30963590525842b7aaafc4bda99ae5297dc9706031431e69766dc90507357e4852ab0647893bfa27e6c6d82dd12f9af9a3fb5b790e2bd9b8311b8d91dafd083d DIST patchbundle-selinux-base-policy-2.20231002-r2.tar.bz2 436443 BLAKE2B f481e661b4afadd15f786a5d69d975d79e5d9a378c7bca279282d59215a02897a9587cbd56f7a2d95fd8152f931c0a8d469927033910e8fe214ee4494f4e6e49 SHA512 8545592130d7d10f7d6411a356e79f9cb2689138a7eb69a5f7bcd630203019c61336f1e3bdbc95dea31efceb41c9bce2e7ff42ced6a51a9b7482e991864fec05 -DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6 DIST refpolicy-2.20231002.tar.bz2 600458 BLAKE2B 254d6d3d6b95f21e1f8e1df5822520ccaeade427053fb172079427cf70bd33f8ced87a9e09e1d36ec5f7b33f0bac8d730020d91996c6d25eafdcec66ebe35bb3 SHA512 029cd2225ce57d96f681720f24828e962320af41832ad2dc95d4d41d00dbde20bb08d91fa8b964b592812a9fedd908c261734b77ad72cccfde2de541b9c2c74d diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/selinux-container-2.20221101-r3.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/selinux-container-2.20221101-r3.ebuild deleted file mode 100644 index 4455418ebe0..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/selinux-container-2.20221101-r3.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -IUSE="" -MODS="container" - -inherit selinux-policy-2 - -DESCRIPTION="SELinux policy for container" - -if [[ ${PV} != 9999* ]] ; then - KEYWORDS="amd64 arm arm64 ~mips x86" -fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/selinux-container-2.20221101-r4.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/selinux-container-2.20221101-r4.ebuild deleted file mode 100644 index 3c54414a955..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/selinux-container-2.20221101-r4.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -IUSE="" -MODS="container" - -inherit selinux-policy-2 - -DESCRIPTION="SELinux policy for container" - -if [[ ${PV} != 9999* ]] ; then - KEYWORDS="amd64 arm arm64 ~mips x86" -fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/selinux-container-2.20231002-r1.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/selinux-container-2.20231002-r1.ebuild deleted file mode 100644 index 49a81a368ef..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/selinux-container-2.20231002-r1.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -IUSE="" -MODS="container" - -inherit selinux-policy-2 - -DESCRIPTION="SELinux policy for container" - -if [[ ${PV} != 9999* ]] ; then - KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" -fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/selinux-container-2.20231002-r2.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/selinux-container-2.20231002-r2.ebuild index 49a81a368ef..3c54414a955 100644 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/selinux-container-2.20231002-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-container/selinux-container-2.20231002-r2.ebuild @@ -11,5 +11,5 @@ inherit selinux-policy-2 DESCRIPTION="SELinux policy for container" if [[ ${PV} != 9999* ]] ; then - KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" + KEYWORDS="amd64 arm arm64 ~mips x86" fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/Manifest b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/Manifest index 4d610c6a88b..4effec8926c 100644 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/Manifest +++ b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/Manifest @@ -1,6 +1,2 @@ -DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f -DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6 -DIST patchbundle-selinux-base-policy-2.20231002-r1.tar.bz2 434734 BLAKE2B f2f28674ba93cd3a699cf0bc8fd06ab0500995f9518082cc76734c724b9ac82fcbcfa536f383a22b2fe72a9f781f202a78e630b7eb314880a98410badb32edd2 SHA512 30963590525842b7aaafc4bda99ae5297dc9706031431e69766dc90507357e4852ab0647893bfa27e6c6d82dd12f9af9a3fb5b790e2bd9b8311b8d91dafd083d DIST patchbundle-selinux-base-policy-2.20231002-r2.tar.bz2 436443 BLAKE2B f481e661b4afadd15f786a5d69d975d79e5d9a378c7bca279282d59215a02897a9587cbd56f7a2d95fd8152f931c0a8d469927033910e8fe214ee4494f4e6e49 SHA512 8545592130d7d10f7d6411a356e79f9cb2689138a7eb69a5f7bcd630203019c61336f1e3bdbc95dea31efceb41c9bce2e7ff42ced6a51a9b7482e991864fec05 -DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6 DIST refpolicy-2.20231002.tar.bz2 600458 BLAKE2B 254d6d3d6b95f21e1f8e1df5822520ccaeade427053fb172079427cf70bd33f8ced87a9e09e1d36ec5f7b33f0bac8d730020d91996c6d25eafdcec66ebe35bb3 SHA512 029cd2225ce57d96f681720f24828e962320af41832ad2dc95d4d41d00dbde20bb08d91fa8b964b592812a9fedd908c261734b77ad72cccfde2de541b9c2c74d diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/selinux-dbus-2.20221101-r3.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/selinux-dbus-2.20221101-r3.ebuild deleted file mode 100644 index d8d567fc3af..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/selinux-dbus-2.20221101-r3.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -IUSE="" -MODS="dbus" - -inherit selinux-policy-2 - -DESCRIPTION="SELinux policy for dbus" - -if [[ ${PV} != 9999* ]] ; then - KEYWORDS="amd64 arm arm64 ~mips x86" -fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/selinux-dbus-2.20221101-r4.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/selinux-dbus-2.20221101-r4.ebuild deleted file mode 100644 index 8410ed0b65e..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/selinux-dbus-2.20221101-r4.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -IUSE="" -MODS="dbus" - -inherit selinux-policy-2 - -DESCRIPTION="SELinux policy for dbus" - -if [[ ${PV} != 9999* ]] ; then - KEYWORDS="amd64 arm arm64 ~mips x86" -fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/selinux-dbus-2.20231002-r1.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/selinux-dbus-2.20231002-r1.ebuild deleted file mode 100644 index 2d7012a30ee..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/selinux-dbus-2.20231002-r1.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -IUSE="" -MODS="dbus" - -inherit selinux-policy-2 - -DESCRIPTION="SELinux policy for dbus" - -if [[ ${PV} != 9999* ]] ; then - KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" -fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/selinux-dbus-2.20231002-r2.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/selinux-dbus-2.20231002-r2.ebuild index 2d7012a30ee..8410ed0b65e 100644 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/selinux-dbus-2.20231002-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-dbus/selinux-dbus-2.20231002-r2.ebuild @@ -11,5 +11,5 @@ inherit selinux-policy-2 DESCRIPTION="SELinux policy for dbus" if [[ ${PV} != 9999* ]] ; then - KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" + KEYWORDS="amd64 arm arm64 ~mips x86" fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/Manifest b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/Manifest index 4d610c6a88b..4effec8926c 100644 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/Manifest +++ b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/Manifest @@ -1,6 +1,2 @@ -DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f -DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6 -DIST patchbundle-selinux-base-policy-2.20231002-r1.tar.bz2 434734 BLAKE2B f2f28674ba93cd3a699cf0bc8fd06ab0500995f9518082cc76734c724b9ac82fcbcfa536f383a22b2fe72a9f781f202a78e630b7eb314880a98410badb32edd2 SHA512 30963590525842b7aaafc4bda99ae5297dc9706031431e69766dc90507357e4852ab0647893bfa27e6c6d82dd12f9af9a3fb5b790e2bd9b8311b8d91dafd083d DIST patchbundle-selinux-base-policy-2.20231002-r2.tar.bz2 436443 BLAKE2B f481e661b4afadd15f786a5d69d975d79e5d9a378c7bca279282d59215a02897a9587cbd56f7a2d95fd8152f931c0a8d469927033910e8fe214ee4494f4e6e49 SHA512 8545592130d7d10f7d6411a356e79f9cb2689138a7eb69a5f7bcd630203019c61336f1e3bdbc95dea31efceb41c9bce2e7ff42ced6a51a9b7482e991864fec05 -DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6 DIST refpolicy-2.20231002.tar.bz2 600458 BLAKE2B 254d6d3d6b95f21e1f8e1df5822520ccaeade427053fb172079427cf70bd33f8ced87a9e09e1d36ec5f7b33f0bac8d730020d91996c6d25eafdcec66ebe35bb3 SHA512 029cd2225ce57d96f681720f24828e962320af41832ad2dc95d4d41d00dbde20bb08d91fa8b964b592812a9fedd908c261734b77ad72cccfde2de541b9c2c74d diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/selinux-sssd-2.20221101-r3.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/selinux-sssd-2.20221101-r3.ebuild deleted file mode 100644 index d0691f20a03..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/selinux-sssd-2.20221101-r3.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -IUSE="" -MODS="sssd" - -inherit selinux-policy-2 - -DESCRIPTION="SELinux policy for sssd" - -if [[ ${PV} != 9999* ]] ; then - KEYWORDS="amd64 arm arm64 ~mips x86" -fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/selinux-sssd-2.20221101-r4.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/selinux-sssd-2.20221101-r4.ebuild deleted file mode 100644 index 5a569d91618..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/selinux-sssd-2.20221101-r4.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -IUSE="" -MODS="sssd" - -inherit selinux-policy-2 - -DESCRIPTION="SELinux policy for sssd" - -if [[ ${PV} != 9999* ]] ; then - KEYWORDS="amd64 arm arm64 ~mips x86" -fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/selinux-sssd-2.20231002-r1.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/selinux-sssd-2.20231002-r1.ebuild deleted file mode 100644 index 6aedbbce8a0..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/selinux-sssd-2.20231002-r1.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -IUSE="" -MODS="sssd" - -inherit selinux-policy-2 - -DESCRIPTION="SELinux policy for sssd" - -if [[ ${PV} != 9999* ]] ; then - KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" -fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/selinux-sssd-2.20231002-r2.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/selinux-sssd-2.20231002-r2.ebuild index 6aedbbce8a0..5a569d91618 100644 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/selinux-sssd-2.20231002-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-sssd/selinux-sssd-2.20231002-r2.ebuild @@ -11,5 +11,5 @@ inherit selinux-policy-2 DESCRIPTION="SELinux policy for sssd" if [[ ${PV} != 9999* ]] ; then - KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" + KEYWORDS="amd64 arm arm64 ~mips x86" fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/Manifest b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/Manifest index 4d610c6a88b..4effec8926c 100644 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/Manifest +++ b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/Manifest @@ -1,6 +1,2 @@ -DIST patchbundle-selinux-base-policy-2.20221101-r3.tar.bz2 444710 BLAKE2B e33cc01a8be5a354e022be1e8bf242883b09b15ead0673f859819f5e668f18773a16527f2e608878e6976695dcb2890c55658e77877e93c716ae0b2dd2ed5a9b SHA512 52e60b22346903a6fead95c9fb348fa1d4037b7dcd3e5781248a7dfc426c8c3fced258fd22762c779a5f436d8be21eaed5425ed36ff99c267daae5e1cb9c8e7f -DIST patchbundle-selinux-base-policy-2.20221101-r4.tar.bz2 457886 BLAKE2B 1e085f9f1739e0640c5eafa70db4c7ec19bca887c682ca2312a457fa57ee3eb176d0c8f16c2f84a1a026669b1240be3ff69066bd825c92fad75dcd2c13739f6c SHA512 da3ba1f076c04746719698aedb3aad48eb7c8a09df95c314b36f7a052538a07d893be413f35f4c34b01c1bf967ebe35ff32c2cea0722fe74a6e089a9d6aa47a6 -DIST patchbundle-selinux-base-policy-2.20231002-r1.tar.bz2 434734 BLAKE2B f2f28674ba93cd3a699cf0bc8fd06ab0500995f9518082cc76734c724b9ac82fcbcfa536f383a22b2fe72a9f781f202a78e630b7eb314880a98410badb32edd2 SHA512 30963590525842b7aaafc4bda99ae5297dc9706031431e69766dc90507357e4852ab0647893bfa27e6c6d82dd12f9af9a3fb5b790e2bd9b8311b8d91dafd083d DIST patchbundle-selinux-base-policy-2.20231002-r2.tar.bz2 436443 BLAKE2B f481e661b4afadd15f786a5d69d975d79e5d9a378c7bca279282d59215a02897a9587cbd56f7a2d95fd8152f931c0a8d469927033910e8fe214ee4494f4e6e49 SHA512 8545592130d7d10f7d6411a356e79f9cb2689138a7eb69a5f7bcd630203019c61336f1e3bdbc95dea31efceb41c9bce2e7ff42ced6a51a9b7482e991864fec05 -DIST refpolicy-2.20221101.tar.bz2 583183 BLAKE2B 783d8af40fd77d7ddb848dba32e91921dd7c1380c094c45b719ada7b15f91aacbb52b410ffa6341f2f705ecbc9674b8570bd4867ce998e944fa0054ffd8bdf74 SHA512 29e5a29d90f714018c88fead2d5006ea90338fb5b7a1e4e98cb2e588c96cd861871d32176f6cc6f7c4e864ce5acae1aeed85d4c706ce2da8168986535baaf3a6 DIST refpolicy-2.20231002.tar.bz2 600458 BLAKE2B 254d6d3d6b95f21e1f8e1df5822520ccaeade427053fb172079427cf70bd33f8ced87a9e09e1d36ec5f7b33f0bac8d730020d91996c6d25eafdcec66ebe35bb3 SHA512 029cd2225ce57d96f681720f24828e962320af41832ad2dc95d4d41d00dbde20bb08d91fa8b964b592812a9fedd908c261734b77ad72cccfde2de541b9c2c74d diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/selinux-unconfined-2.20221101-r3.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/selinux-unconfined-2.20221101-r3.ebuild deleted file mode 100644 index ca2ad1523df..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/selinux-unconfined-2.20221101-r3.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -IUSE="" -MODS="unconfined" - -inherit selinux-policy-2 - -DESCRIPTION="SELinux policy for unconfined" - -if [[ ${PV} != 9999* ]] ; then - KEYWORDS="amd64 arm arm64 ~mips x86" -fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/selinux-unconfined-2.20221101-r4.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/selinux-unconfined-2.20221101-r4.ebuild deleted file mode 100644 index ca550395be7..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/selinux-unconfined-2.20221101-r4.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -IUSE="" -MODS="unconfined" - -inherit selinux-policy-2 - -DESCRIPTION="SELinux policy for unconfined" - -if [[ ${PV} != 9999* ]] ; then - KEYWORDS="amd64 arm arm64 ~mips x86" -fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/selinux-unconfined-2.20231002-r1.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/selinux-unconfined-2.20231002-r1.ebuild deleted file mode 100644 index f0d92c5f4ac..00000000000 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/selinux-unconfined-2.20231002-r1.ebuild +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -IUSE="" -MODS="unconfined" - -inherit selinux-policy-2 - -DESCRIPTION="SELinux policy for unconfined" - -if [[ ${PV} != 9999* ]] ; then - KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" -fi diff --git a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/selinux-unconfined-2.20231002-r2.ebuild b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/selinux-unconfined-2.20231002-r2.ebuild index f0d92c5f4ac..ca550395be7 100644 --- a/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/selinux-unconfined-2.20231002-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sec-policy/selinux-unconfined/selinux-unconfined-2.20231002-r2.ebuild @@ -11,5 +11,5 @@ inherit selinux-policy-2 DESCRIPTION="SELinux policy for unconfined" if [[ ${PV} != 9999* ]] ; then - KEYWORDS="~amd64 ~arm ~arm64 ~mips ~x86" + KEYWORDS="amd64 arm arm64 ~mips x86" fi diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/debianutils/debianutils-5.14.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/debianutils/debianutils-5.14.ebuild index f56e99e6a6b..c71e9cb0196 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/debianutils/debianutils-5.14.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/debianutils/debianutils-5.14.ebuild @@ -18,7 +18,7 @@ PDEPEND=" installkernel? ( || ( sys-kernel/installkernel-gentoo - sys-kernel/installkernel-systemd-boot + sys-kernel/installkernel-systemd ) ) " diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/debianutils/debianutils-5.7.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/debianutils/debianutils-5.7.ebuild index 358f820b732..0cc841149e5 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/debianutils/debianutils-5.7.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/debianutils/debianutils-5.7.ebuild @@ -18,7 +18,7 @@ PDEPEND=" installkernel? ( || ( sys-kernel/installkernel-gentoo - sys-kernel/installkernel-systemd-boot + sys-kernel/installkernel-systemd ) )" diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/debianutils/debianutils-5.8.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/debianutils/debianutils-5.8.ebuild index 3bd7fca2ed7..1909cc22de7 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/debianutils/debianutils-5.8.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/debianutils/debianutils-5.8.ebuild @@ -18,7 +18,7 @@ PDEPEND=" installkernel? ( || ( sys-kernel/installkernel-gentoo - sys-kernel/installkernel-systemd-boot + sys-kernel/installkernel-systemd ) )" diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/Manifest index dc73cb4bb28..2028789d238 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/Manifest @@ -1,7 +1,2 @@ -DIST ethtool-5.15.tar.xz 318864 BLAKE2B 855c07e388bfabf37637f20e2714c6ca27717f38d7f658be96e0e9ec9d4514e61f4ee29361fc0279510869606ad18126ccd2a47160f1097ab52b1e35216e9721 SHA512 28147468a92c179217b459907a3257ee4f2d2ed028cb87b074f1c7ca6eb91aca81c8a9f5c7fe74e81d16a516e6e7eb20137bf7a15b5479fd82a327c64954da12 -DIST ethtool-5.19.tar.xz 324472 BLAKE2B 44cc292db04f411a57a0a5ae0cdfbef733c7ee739fc252523c713489a13ae33de3927b500db796bc584fef3c83d7238dca2af4e6b6a5c594bbf21e87ed2380a7 SHA512 71103c6856a889161ef2bf81eadec69b2f3a84c94aa776d545f889dc1c55b91d566d3b7394dbd2cb70ed92ac19d5f26967b1f829c204f23831d1fb81a0464972 -DIST ethtool-6.1.tar.xz 327644 BLAKE2B 002a4edffda42520d77e8f0c27adf909090823f1a08689b67fc7c75de3048bdc9c94d7d32973bd17562d7dbf295479e796c2529b5db66b5fce42a2ede5851cd6 SHA512 6ca478ec75dae7cc347b859802e1965e6c78310ec4b276dec29bdf76d3464e4186c6e5ed0cb8f013171d6c0562c1156cb0442419f5b947c314e8b91ad9fd2d93 -DIST ethtool-6.2.tar.xz 332708 BLAKE2B b3fa2571b1efef3b686eb4f20b33e6cc32bdb8cff5f2e642454ca3d41c427b1953df7b07e5ac8ef149f8b4be614210e05e593233655e5fe317c48630b20b68e8 SHA512 ff1f14c7876163bef93ca48e22a3429f09b4bcb3e1d101ef297d9f226e3fc2d3c3f19faf5b85f54cb558479e4a408ef5356a2d12e7ba132cc4cadaf92effccaf -DIST ethtool-6.3.tar.xz 338764 BLAKE2B c06509525db47f8ee7c220d0b880fe80323a4a00036e9698432b1b9c85ad75045e98b23498f6283497728cafd187ca173b15f3ad60f8e6f8b4d0c5688d84a1f9 SHA512 85e5ecd20abf737e94ddc093f15ab0b876f763a886e3327027c448c0efcc091628c3df42070f30583551fa12f866f5b49d41fb3333acdf854a59bba671646320 -DIST ethtool-6.4.tar.xz 340844 BLAKE2B 15fbd3f2db21b7a880d040bbd5fffc51f5335d182e1d3d23dc23d2cfd3b572fabb5914426f0e8470f4374ceddb07741ed1b57d058a57867b89c1ea2a78d13c10 SHA512 5e389564b41e9494df102f9fb703ae2d80ba38346d84ec6c89b024ec21c85eca9f58e88012290feaa88d3ce035d6f779913798b0ca177e8d0a08eff197eb6afd DIST ethtool-6.5.tar.xz 344220 BLAKE2B 1cd79cbac563d63d81212e25df57cd5887e5284f9e4a5e73d483a3fcc1cb18dc0679d7bf53ed424f244642fc7aeda2b6cc5b11341ab28e74f5397a6bbf4130e6 SHA512 07994a20f34b1c1e72f9f855972d31d027968b53b278a5b46c5a2977be8d7152e6439c9719001101be85359876d9d932d2afb9561af9967e84d8a447a7d0c558 +DIST ethtool-6.6.tar.xz 352476 BLAKE2B dfbc5f9a6ac63210d1ae305c2458cc44d38d44fcc272c9b0397a13a93e0aa0a09e3750e330a27dcf4dce796c6bd302c4d4c1fd91faab824a81949c31f1ed3504 SHA512 1e7eae3abe59e6af4bce0ebedd0a7ea84d1b0adc7693a0f03021c4096677096a022fdae521ac02413f9db46ee232b89dd2015a116845aa6ca7686fdda50a5b21 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-5.15.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-5.15.ebuild deleted file mode 100644 index 3b0186226f1..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-5.15.ebuild +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -DESCRIPTION="Utility for examining and tuning ethernet-based network interfaces" -HOMEPAGE="https://www.kernel.org/pub/software/network/ethtool/" -SRC_URI="https://www.kernel.org/pub/software/network/ethtool/${P}.tar.xz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86" -IUSE="+netlink" - -BDEPEND="app-arch/xz-utils" -RDEPEND="netlink? ( net-libs/libmnl )" -DEPEND="${RDEPEND}" - -src_configure() { - econf $(use_enable netlink) -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.1.ebuild deleted file mode 100644 index 108ad5e44c5..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.1.ebuild +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="Utility for examining and tuning ethernet-based network interfaces" -HOMEPAGE="https://www.kernel.org/pub/software/network/ethtool/" -SRC_URI="https://www.kernel.org/pub/software/network/ethtool/${P}.tar.xz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86" -IUSE="+netlink" - -RDEPEND="netlink? ( net-libs/libmnl )" -DEPEND="${RDEPEND}" -BDEPEND="app-arch/xz-utils" - -PATCHES=( - "${FILESDIR}"/${P}-musl.patch -) - -src_configure() { - econf $(use_enable netlink) -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.2.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.2.ebuild deleted file mode 100644 index fd370de49db..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.2.ebuild +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="Utility for examining and tuning ethernet-based network interfaces" -HOMEPAGE="https://www.kernel.org/pub/software/network/ethtool/" -SRC_URI="https://www.kernel.org/pub/software/network/ethtool/${P}.tar.xz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86" -IUSE="+netlink" - -RDEPEND="netlink? ( net-libs/libmnl )" -DEPEND="${RDEPEND}" -BDEPEND="app-arch/xz-utils" - -src_configure() { - econf $(use_enable netlink) -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.3.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.3.ebuild deleted file mode 100644 index fd370de49db..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.3.ebuild +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="Utility for examining and tuning ethernet-based network interfaces" -HOMEPAGE="https://www.kernel.org/pub/software/network/ethtool/" -SRC_URI="https://www.kernel.org/pub/software/network/ethtool/${P}.tar.xz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86" -IUSE="+netlink" - -RDEPEND="netlink? ( net-libs/libmnl )" -DEPEND="${RDEPEND}" -BDEPEND="app-arch/xz-utils" - -src_configure() { - econf $(use_enable netlink) -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.4.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.4.ebuild deleted file mode 100644 index fd370de49db..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.4.ebuild +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="Utility for examining and tuning ethernet-based network interfaces" -HOMEPAGE="https://www.kernel.org/pub/software/network/ethtool/" -SRC_URI="https://www.kernel.org/pub/software/network/ethtool/${P}.tar.xz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86" -IUSE="+netlink" - -RDEPEND="netlink? ( net-libs/libmnl )" -DEPEND="${RDEPEND}" -BDEPEND="app-arch/xz-utils" - -src_configure() { - econf $(use_enable netlink) -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-5.19.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.6.ebuild similarity index 93% rename from sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-5.19.ebuild rename to sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.6.ebuild index 8d122a733c0..a7eff7664c7 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-5.19.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/ethtool-6.6.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/files/ethtool-6.1-musl.patch b/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/files/ethtool-6.1-musl.patch deleted file mode 100644 index ed441a4511d..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/ethtool/files/ethtool-6.1-musl.patch +++ /dev/null @@ -1,64 +0,0 @@ -https://bugs.gentoo.org/889402 -https://git.kernel.org/pub/scm/network/ethtool/ethtool.git/commit/?id=41be533331fc3c6b711dbe532405782d3b8be5d1 - -From 41be533331fc3c6b711dbe532405782d3b8be5d1 Mon Sep 17 00:00:00 2001 -From: Florian Fainelli -Date: Sat, 14 Jan 2023 08:34:11 -0800 -Subject: marvell.c: Fix build with musl-libc - -After commit 1fa60003a8b8 ("misc: header includes cleanup") we stopped -including net/if.h which resolved the proper defines to pull in -sys/types.h and provide a definition for u_int32_t. With musl-libc we -would need to define _GNU_SOURCE to ensure that sys/types.h does provide a -definition for u_int32_t. - -Rather, just replace u_uint{16,32}_t with the more standard -uint{16,32}_t types from stdint.h - -Fixes: 1fa60003a8b8 ("misc: header includes cleanup") -Signed-off-by: Florian Fainelli ---- a/marvell.c -+++ b/marvell.c -@@ -31,23 +31,23 @@ static void dump_timer(const char *name, const void *p) - static void dump_queue(const char *name, const void *a, int rx) - { - struct desc { -- u_int32_t ctl; -- u_int32_t next; -- u_int32_t data_lo; -- u_int32_t data_hi; -- u_int32_t status; -- u_int32_t timestamp; -- u_int16_t csum2; -- u_int16_t csum1; -- u_int16_t csum2_start; -- u_int16_t csum1_start; -- u_int32_t addr_lo; -- u_int32_t addr_hi; -- u_int32_t count_lo; -- u_int32_t count_hi; -- u_int32_t byte_count; -- u_int32_t csr; -- u_int32_t flag; -+ uint32_t ctl; -+ uint32_t next; -+ uint32_t data_lo; -+ uint32_t data_hi; -+ uint32_t status; -+ uint32_t timestamp; -+ uint16_t csum2; -+ uint16_t csum1; -+ uint16_t csum2_start; -+ uint16_t csum1_start; -+ uint32_t addr_lo; -+ uint32_t addr_hi; -+ uint32_t count_lo; -+ uint32_t count_hi; -+ uint32_t byte_count; -+ uint32_t csr; -+ uint32_t flag; - }; - const struct desc *d = a; - --- -cgit diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/gptfdisk/gptfdisk-1.0.9-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/gptfdisk/gptfdisk-1.0.9-r2.ebuild deleted file mode 100644 index 94027ea21f2..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-apps/gptfdisk/gptfdisk-1.0.9-r2.ebuild +++ /dev/null @@ -1,62 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic toolchain-funcs - -DESCRIPTION="GPT partition table manipulator for Linux" -HOMEPAGE="https://www.rodsbooks.com/gdisk/" -SRC_URI="mirror://sourceforge/${PN}/${PN}/${PV}/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux" -IUSE="ncurses static" - -# libuuid from util-linux is required. -RDEPEND="!static? ( - dev-libs/popt - ncurses? ( sys-libs/ncurses:=[unicode(+)] ) - kernel_linux? ( sys-apps/util-linux ) - )" -DEPEND=" - ${RDEPEND} - static? ( - dev-libs/popt[static-libs(+)] - ncurses? ( sys-libs/ncurses:=[unicode(+),static-libs(+)] ) - kernel_linux? ( sys-apps/util-linux[static-libs(+)] ) - ) - virtual/pkgconfig -" - -PATCHES=( - "${FILESDIR}/${PN}-1.0.9-libuuid.patch" #844073 - "${FILESDIR}/${PN}-1.0.9-popt_segv.patch" #872131 - "${FILESDIR}"/${PN}-1.0.9-musl-1.2.4.patch -) - -src_prepare() { - default - - tc-export CXX PKG_CONFIG - - if ! use ncurses ; then - sed -i \ - -e '/^all:/s: cgdisk::' \ - Makefile || die - fi - - sed \ - -e '/g++/s:=:?=:g' \ - -e 's:-lncursesw:$(shell $(PKG_CONFIG) --libs ncursesw):g' \ - -i Makefile || die - - use static && append-ldflags -static -} - -src_install() { - dosbin gdisk sgdisk $(usex ncurses cgdisk '') fixparts - doman *.8 - dodoc NEWS README -} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.23.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.23.0.ebuild index 87bb7256446..6821a20db9d 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.23.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/groff/groff-1.23.0.ebuild @@ -69,6 +69,7 @@ src_prepare() { src_configure() { local myeconfargs=( --with-appdefdir="${EPREFIX}"/usr/share/X11/app-defaults + --without-compatibility-wrappers # for Prefix $(use_with uchardet) $(use_with X x) ) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.12.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.12.0.ebuild index a18a06fff68..795e71f73b1 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.12.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-2.12.0.ebuild @@ -109,7 +109,7 @@ src_configure() { --with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" --disable-setuid # bug #662438 - --enable-cache-owner=man + $(use_enable !prefix cache-owner man) # bug #917024 --with-sections="${sections}" $(use_enable nls) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-9999.ebuild index 3aa96909e35..2805d67ac3c 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/man-db/man-db-9999.ebuild @@ -109,7 +109,7 @@ src_configure() { --with-systemdtmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" --disable-setuid # bug #662438 - --enable-cache-owner=man + $(use_enable !prefix cache-owner man) # bug #917024 --with-sections="${sections}" $(use_enable nls) diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/portage/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/portage/Manifest index e45accaa710..86155cae4c9 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/portage/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/portage/Manifest @@ -6,3 +6,4 @@ DIST portage-3.0.51.tar.bz2 1155503 BLAKE2B 1095ab616993951da8f4d43cef4cf815672c DIST portage-3.0.52.tar.bz2 1157447 BLAKE2B 61e4d32f9713b9b0a2df6ca636b2d756dacdb93f862eeab8a8b46d436b9c90d3d5d04989023dc5580ce0c4a6827fa623e5b32ce3d5094ff56ccde7a53c1af81c SHA512 1a249b140cc24b6d83314ad0b3f4ca73fcff3df01f1207c2fe661b16e78ab1155bb6dca4fb89100910fce13bf0fc21636232f9560360cf12f2c43b803d2a0429 DIST portage-3.0.53.tar.bz2 1162321 BLAKE2B 1c38bc97d9aca2ce4062ed0fc2ef9297911379a32f1ed32b4d5ced760970edbfb9579471efd69c0fc16e3227ef6444d60c2bb19be6d809eabe832250d340b4b5 SHA512 d747acc922da2d6f2dc10a8b5a6c7cf4b325ab903b3c5634d5aa1927bbfffa306076ad780a4634d7bcf6092b763b753b02c14f1a21197706559d370c6eee00a1 DIST portage-3.0.54.tar.bz2 1164619 BLAKE2B b70ed74a557470068f873b544bc7efc497f4121b2189601c44f9ddc1571e80cdc1387148cdd705604a24a2357289385345df5d60e03e7ebff1e8797bed350fe4 SHA512 2e9e16dae4a30e2bfed2d5eab7eb4e4c8260cc1b5a826d247e98908fb8669e4e5176d7f59a01d4d7a302f874fe1d80c17da87bb87d31f98af7a79e1823fa4009 +DIST portage-3.0.55.tar.bz2 1167100 BLAKE2B 8dd4ffa3f816e34a9afa5ba70d0ae252797a782cf8b3dd4df9c4fe52f1fb218d757b3679a5d43229accdbed52ae70bb6a706768839bf735b342bdfc598e252a1 SHA512 de891a7a91012546ded5ac6f3427324d1d959beeb7442339f350728bee3337ff49e48a113b191dc0d515f3545b8662ff26ad434bb9cbfbc23bd47938a8932fce diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.55.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.55.ebuild new file mode 100644 index 00000000000..5bf30b190b8 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/portage/portage-3.0.55.ebuild @@ -0,0 +1,238 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( pypy3 python3_{10..12} ) +PYTHON_REQ_USE='bzip2(+),threads(+)' +TMPFILES_OPTIONAL=1 + +inherit meson linux-info multiprocessing python-r1 tmpfiles + +DESCRIPTION="The package management and distribution system for Gentoo" +HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI=" + https://anongit.gentoo.org/git/proj/portage.git + https://github.com/gentoo/portage.git + " + inherit git-r3 +else + SRC_URI="https://gitweb.gentoo.org/proj/portage.git/snapshot/${P}.tar.bz2" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="apidoc build doc gentoo-dev +ipc +native-extensions +rsync-verify selinux test xattr" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +# setuptools is still needed as a workaround for Python 3.12+ for now. +# https://github.com/mesonbuild/meson/issues/7702 +# +# >=meson-1.2.1-r1 for bug #912051 +BDEPEND=" + ${PYTHON_DEPS} + >=dev-util/meson-1.2.1-r1 + $(python_gen_cond_dep ' + dev-python/setuptools[${PYTHON_USEDEP}] + ' python3_12) + test? ( + dev-python/pytest-xdist[${PYTHON_USEDEP}] + dev-vcs/git + ) +" +DEPEND=" + ${PYTHON_DEPS} + >=app-arch/tar-1.27 + dev-lang/python-exec:2 + >=sys-apps/sed-4.0.5 + sys-devel/patch + !build? ( $(python_gen_impl_dep 'ssl(+)') ) + apidoc? ( + dev-python/sphinx[${PYTHON_USEDEP}] + dev-python/sphinx-epytext[${PYTHON_USEDEP}] + ) + doc? ( + ~app-text/docbook-xml-dtd-4.4 + app-text/xmlto + ) +" +# Require sandbox-2.2 for bug #288863. +# For whirlpool hash, require python[ssl] (bug #425046). +RDEPEND=" + ${PYTHON_DEPS} + acct-user/portage + >=app-arch/tar-1.27 + app-arch/zstd + >=app-misc/pax-utils-0.1.17 + dev-lang/python-exec:2 + >=sys-apps/baselayout-2.9 + >=sys-apps/findutils-4.4 + !build? ( + >=app-admin/eselect-1.2 + app-portage/getuto + >=app-shells/bash-5.0:0 + >=sec-keys/openpgp-keys-gentoo-release-20230329 + >=sys-apps/sed-4.0.5 + rsync-verify? ( + >=app-crypt/gnupg-2.2.4-r2[ssl(-)] + >=app-portage/gemato-14.5[${PYTHON_USEDEP}] + ) + ) + elibc_glibc? ( >=sys-apps/sandbox-2.2 ) + elibc_musl? ( >=sys-apps/sandbox-2.2 ) + kernel_linux? ( sys-apps/util-linux ) + selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] ) + xattr? ( kernel_linux? ( + >=sys-apps/install-xattr-0.3 + ) ) + !/dev/null ; then + chmod g+s,ug+rwx "${ED}"/var/log/portage{,/elog} + fi + + if has_version "<${CATEGORY}/${PN}-2.3.77"; then + elog "The emerge --autounmask option is now disabled by default, except for" + elog "portions of behavior which are controlled by the --autounmask-use and" + elog "--autounmask-license options. For backward compatibility, previous" + elog "behavior of --autounmask=y and --autounmask=n is entirely preserved." + elog "Users can get the old behavior simply by adding --autounmask to the" + elog "make.conf EMERGE_DEFAULT_OPTS variable. For the rationale for this" + elog "change, see https://bugs.gentoo.org/658648." + fi +} + +pkg_postinst() { + # Warn about obsolete "enotice" script, bug #867010 + local bashrc=${EROOT}/etc/portage/profile/profile.bashrc + if [[ -e ${bashrc} ]] && grep -q enotice "${bashrc}"; then + eerror "Obsolete 'enotice' script detected!" + eerror "Please remove this from ${bashrc} to avoid problems." + eerror "See bug 867010 for more details." + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/pv/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/pv/Manifest index 79ae162c419..ddedcd85270 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/pv/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/pv/Manifest @@ -2,3 +2,5 @@ DIST pv-1.6.20.tar.bz2 115310 BLAKE2B b50623f623231e8e8615f960bad83d10e12d5274c5 DIST pv-1.7.24.tar.gz 160435 BLAKE2B a6cff613ac99294d70d1347e78625d838873740d2251802b461a29de28d9c2dda8ebc1fd0a8807fc420c8faf846bc8afc7c6f3e551ff243f02fa5e9ab3caf53e SHA512 46310e2d297bef1a8a7cbf2a23b2e19b21e367902de6cf759fb1a58275e0351d1f6f1ae101a32acaaa579a16c18ed49b116e58f158c87be527533ebacabd7671 DIST pv-1.8.0.tar.gz 321376 BLAKE2B b7c0cad63514d2a2254e3d0f2c3e883e958d420cd8df6b9a107c7a1fc06408f9279b8c7422bb8986772fb2755b483b8c7e9a4e18983cdec9efa077bc653f7528 SHA512 575b4ddbb23ffad9995f597595f58a92ccf9d0ff910d5fdfb513ed553238a1971c3bc09f473cabcf72fd2961ceff0b9fa0e4b8a7e06c3382e21a44551d90b7a8 DIST pv-1.8.0.tar.gz.asc 691 BLAKE2B df0a7d58ae3ba4065a85ab922e2094064ab435ba252013ea98573993572bc14956603cc0341a3966fb867b13fb828a3a53afeea3ffc31b825d3c5f30cf6faf15 SHA512 8fb93fc4f3476f944affb839c28fd36df0adca5ef4adf69ad6604afcd117e0e3d504687992cf9113f10d7829ccda6c368f7bb901545cfe1ff170ada81d73f9ef +DIST pv-1.8.5.tar.gz 327072 BLAKE2B ef7fcf64430a72e04ca3a922115e7012c999109bb7e1a52f480c27eeb6c49952f4be52e6041a063c710d934c68555cfb65796103920fd240e4ebde2fa6a323c7 SHA512 6d7a0f785ace5e25c5677af4cf38a003386774e60563865de7f1dae60f1785685541da93e1f88236b8b2e14431584bc2cb2adb3a575fb90dc774bc6bacf22e21 +DIST pv-1.8.5.tar.gz.asc 691 BLAKE2B ac5bd2b05e145d4ea5aedbb148b39a317d68329787f06f39f808be75951da0e0f460254b4a5049a8eafabad07edfbe936be00154f5dfa660628c8a3dfa3b7ffd SHA512 8414b2485347579a54233a2f241c080ab6461799c149567ab1063ce812b08ab2293f55bf8a24bcadabf94d12ce3dce36fe57277d822d115db9e53c957fe99c20 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/pv/pv-1.8.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/pv/pv-1.8.0.ebuild index c5442aa977e..ca01ea55e00 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/pv/pv-1.8.0.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/pv/pv-1.8.0.ebuild @@ -8,14 +8,21 @@ inherit linux-info toolchain-funcs verify-sig DESCRIPTION="Pipe Viewer: a tool for monitoring the progress of data through a pipe" HOMEPAGE="https://www.ivarch.com/programs/pv.shtml https://codeberg.org/a-j-wood/pv" -SRC_URI=" - https://www.ivarch.com/programs/sources/${P}.tar.gz - verify-sig? ( https://www.ivarch.com/programs/sources/${P}.tar.gz.txt -> ${P}.tar.gz.asc ) -" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://codeberg.org/a-j-wood/pv" + inherit autotools git-r3 +else + SRC_URI=" + https://www.ivarch.com/programs/sources/${P}.tar.gz + verify-sig? ( https://www.ivarch.com/programs/sources/${P}.tar.gz.txt -> ${P}.tar.gz.asc ) + " + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" +fi LICENSE="GPL-3+" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" IUSE="debug nls" BDEPEND="verify-sig? ( sec-keys/openpgp-keys-pv )" @@ -28,6 +35,12 @@ pkg_setup() { fi } +src_prepare() { + default + + [[ ${PV} == 9999 ]] && eautoreconf +} + src_configure() { tc-export AR diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/pv/pv-1.8.5.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/pv/pv-1.8.5.ebuild new file mode 100644 index 00000000000..7d003e10536 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/pv/pv-1.8.5.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/pv.asc +inherit linux-info toolchain-funcs verify-sig + +DESCRIPTION="Pipe Viewer: a tool for monitoring the progress of data through a pipe" +HOMEPAGE="https://www.ivarch.com/programs/pv.shtml https://codeberg.org/a-j-wood/pv" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://codeberg.org/a-j-wood/pv" + inherit autotools git-r3 +else + SRC_URI=" + https://www.ivarch.com/programs/sources/${P}.tar.gz + verify-sig? ( https://www.ivarch.com/programs/sources/${P}.tar.gz.txt -> ${P}.tar.gz.asc ) + " + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="debug nls" + +BDEPEND="verify-sig? ( sec-keys/openpgp-keys-pv )" + +pkg_setup() { + if use kernel_linux; then + CONFIG_CHECK="~SYSVIPC" + ERROR_SYSVIPC="You will need to enable CONFIG_SYSVIPC in your kernel to use the --remote option." + linux-info_pkg_setup + fi +} + +src_prepare() { + default + + [[ ${PV} == 9999 ]] && eautoreconf +} + +src_configure() { + tc-export AR + + econf \ + $(use_enable debug debugging) \ + $(use_enable nls) +} + +src_test() { + emake -Onone check +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/pv/pv-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/pv/pv-9999.ebuild new file mode 100644 index 00000000000..7d003e10536 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/pv/pv-9999.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/pv.asc +inherit linux-info toolchain-funcs verify-sig + +DESCRIPTION="Pipe Viewer: a tool for monitoring the progress of data through a pipe" +HOMEPAGE="https://www.ivarch.com/programs/pv.shtml https://codeberg.org/a-j-wood/pv" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://codeberg.org/a-j-wood/pv" + inherit autotools git-r3 +else + SRC_URI=" + https://www.ivarch.com/programs/sources/${P}.tar.gz + verify-sig? ( https://www.ivarch.com/programs/sources/${P}.tar.gz.txt -> ${P}.tar.gz.asc ) + " + + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="debug nls" + +BDEPEND="verify-sig? ( sec-keys/openpgp-keys-pv )" + +pkg_setup() { + if use kernel_linux; then + CONFIG_CHECK="~SYSVIPC" + ERROR_SYSVIPC="You will need to enable CONFIG_SYSVIPC in your kernel to use the --remote option." + linux-info_pkg_setup + fi +} + +src_prepare() { + default + + [[ ${PV} == 9999 ]] && eautoreconf +} + +src_configure() { + tc-export AR + + econf \ + $(use_enable debug debugging) \ + $(use_enable nls) +} + +src_test() { + emake -Onone check +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-7.4.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-7.4.ebuild index 62de3e77586..6eda646090a 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-7.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/smartmontools/smartmontools-7.4.ebuild @@ -10,7 +10,7 @@ if [[ ${PV} == 9999 ]] ; then inherit autotools subversion else SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" - KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos" + KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos" fi DESCRIPTION="Tools to monitor storage systems to provide advanced warning of disk degradation" diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0001-tp-Texinfo-XS-xspara.c-get_utf8_codepoint.patch b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0001-tp-Texinfo-XS-xspara.c-get_utf8_codepoint.patch new file mode 100644 index 00000000000..8aed47b7bc2 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0001-tp-Texinfo-XS-xspara.c-get_utf8_codepoint.patch @@ -0,0 +1,103 @@ +From c76bcd0feed005aaf9db28a76f4883f3ae98295b Mon Sep 17 00:00:00 2001 +From: Gavin Smith +Date: Mon, 23 Oct 2023 19:51:00 +0100 +Subject: [PATCH 1/5] * tp/Texinfo/XS/xspara.c (get_utf8_codepoint): Wrapper + for mbrtowc/btowc. [_WIN32]: Do not call btowc, as it was tested to be very + slow on MinGW. Report from Eli Zaretskii. + +--- + ChangeLog | 7 ++++++ + tp/Texinfo/XS/xspara.c | 48 +++++++++++++++++++++++------------------- + 2 files changed, 33 insertions(+), 22 deletions(-) + +diff --git a/ChangeLog b/ChangeLog +index e619109f5b..c4379ec56b 100644 +--- a/ChangeLog ++++ b/ChangeLog +@@ -1,3 +1,10 @@ ++2023-10-23 Gavin Smith ++ ++ * tp/Texinfo/XS/xspara.c (get_utf8_codepoint): ++ Wrapper for mbrtowc/btowc. ++ [_WIN32]: Do not call btowc, as it was tested to be very slow ++ on MinGW. Report from Eli Zaretskii. ++ + 2023-10-18 Gavin Smith + + Texinfo 7.1 +diff --git a/tp/Texinfo/XS/xspara.c b/tp/Texinfo/XS/xspara.c +index 7c6895a7ff..e1cddcdc2a 100644 +--- a/tp/Texinfo/XS/xspara.c ++++ b/tp/Texinfo/XS/xspara.c +@@ -684,6 +684,30 @@ xspara_end (void) + /* characters triggering an end of sentence */ + #define end_sentence_characters ".?!" + ++/* Wrapper for mbrtowc. Set *PWC and return length of codepoint in bytes. */ ++size_t ++get_utf8_codepoint (wchar_t *pwc, const char *mbs, size_t n) ++{ ++#ifdef _WIN32 ++ /* Use the above implementation of mbrtowc. Do not use btowc as ++ does not exist as standard on MS-Windows, and was tested to be ++ very slow on MinGW. */ ++ return mbrtowc (pwc, mbs, n, NULL); ++#else ++ if (!PRINTABLE_ASCII(*mbs)) ++ { ++ return mbrtowc (pwc, mbs, n, NULL); ++ } ++ else ++ { ++ /* Functionally the same as mbrtowc but (tested) slightly quicker. */ ++ *pwc = btowc (*mbs); ++ return 1; ++ } ++#endif ++} ++ ++ + /* Add WORD to paragraph in RESULT, not refilling WORD. If we go past the end + of the line start a new one. TRANSPARENT means that the letters in WORD + are ignored for the purpose of deciding whether a full stop ends a sentence +@@ -730,18 +754,7 @@ xspara__add_next (TEXT *result, char *word, int word_len, int transparent) + if (!strchr (end_sentence_characters + after_punctuation_characters, *p)) + { +- if (!PRINTABLE_ASCII(*p)) +- { +- wchar_t wc = L'\0'; +- mbrtowc (&wc, p, len, NULL); +- state.last_letter = wc; +- break; +- } +- else +- { +- state.last_letter = btowc (*p); +- break; +- } ++ get_utf8_codepoint (&state.last_letter, p, len); + } + } + } +@@ -1013,16 +1026,7 @@ xspara_add_text (char *text, int len) + } + + /************** Not a white space character. *****************/ +- if (!PRINTABLE_ASCII(*p)) +- { +- char_len = mbrtowc (&wc, p, len, NULL); +- } +- else +- { +- /* Functonally the same as mbrtowc but (tested) slightly quicker. */ +- char_len = 1; +- wc = btowc (*p); +- } ++ char_len = get_utf8_codepoint (&wc, p, len); + + if ((long) char_len == 0) + break; /* Null character. Shouldn't happen. */ +-- +2.42.1 + diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0002-tp-Texinfo-XS-xspara.c-xspara__add_next-Do-not-pass.patch b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0002-tp-Texinfo-XS-xspara.c-xspara__add_next-Do-not-pass.patch new file mode 100644 index 00000000000..242f90add70 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0002-tp-Texinfo-XS-xspara.c-xspara__add_next-Do-not-pass.patch @@ -0,0 +1,44 @@ +From f038d3f13f95b5494d5523f2af9dec59ff89b79d Mon Sep 17 00:00:00 2001 +From: Eli Zaretskii +Date: Wed, 25 Oct 2023 22:35:37 +0100 +Subject: [PATCH 2/5] * tp/Texinfo/XS/xspara.c (xspara__add_next): Do not pass + pointer to wint_t as a pointer to wchar_t, as the two types may be of + different sizes. + +--- + ChangeLog | 6 ++++++ + tp/Texinfo/XS/xspara.c | 4 +++- + 2 files changed, 9 insertions(+), 1 deletion(-) + +diff --git a/ChangeLog b/ChangeLog +index c4379ec56b..3d13a15517 100644 +--- a/ChangeLog ++++ b/ChangeLog +@@ -1,3 +1,9 @@ ++2023-10-25 Eli Zaretskii ++ ++ * tp/Texinfo/XS/xspara.c (xspara__add_next): Do not pass ++ pointer to wint_t as a pointer to wchar_t, as the two types ++ may be of different sizes. ++ + 2023-10-23 Gavin Smith + + * tp/Texinfo/XS/xspara.c (get_utf8_codepoint): +diff --git a/tp/Texinfo/XS/xspara.c b/tp/Texinfo/XS/xspara.c +index e1cddcdc2a..130e43a4db 100644 +--- a/tp/Texinfo/XS/xspara.c ++++ b/tp/Texinfo/XS/xspara.c +@@ -754,7 +754,9 @@ xspara__add_next (TEXT *result, char *word, int word_len, int transparent) + if (!strchr (end_sentence_characters + after_punctuation_characters, *p)) + { +- get_utf8_codepoint (&state.last_letter, p, len); ++ wchar_t wc; ++ get_utf8_codepoint (&wc, p, len); ++ state.last_letter = wc; + } + } + } +-- +2.42.1 + diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0003-info-scan.c-write_tag_contents-Check-if-added-text-i.patch b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0003-info-scan.c-write_tag_contents-Check-if-added-text-i.patch new file mode 100644 index 00000000000..b3fbc85f461 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0003-info-scan.c-write_tag_contents-Check-if-added-text-i.patch @@ -0,0 +1,51 @@ +https://lists.gnu.org/archive/html/bug-texinfo/2023-11/msg00001.html + +From 12ad80f3a1cfa78c8a7b3a45458df7e07251317d Mon Sep 17 00:00:00 2001 +From: Gavin Smith +Date: Sat, 4 Nov 2023 10:38:48 +0000 +Subject: [PATCH 3/5] * info/scan.c (write_tag_contents): Check if added text + is of zero length in order to avoid subsequently calling memcpy with a null + source argument. Report with -fsanitize=undefined on amd64 from Sam James + . + +--- + ChangeLog | 7 +++++++ + info/scan.c | 4 ++-- + 2 files changed, 9 insertions(+), 2 deletions(-) + +diff --git a/ChangeLog b/ChangeLog +index 3d13a15517..efbb3b22d1 100644 +--- a/ChangeLog ++++ b/ChangeLog +@@ -1,3 +1,10 @@ ++2023-11-04 Gavin Smith ++ ++ * info/scan.c (write_tag_contents): Check if added text is of ++ zero length in order to avoid subsequently calling memcpy with ++ a null source argument. Report with -fsanitize=undefined on amd64 ++ from Sam James . ++ + 2023-10-25 Eli Zaretskii + + * tp/Texinfo/XS/xspara.c (xspara__add_next): Do not pass +diff --git a/info/scan.c b/info/scan.c +index d6183ae9ae..bdf272f9bf 100644 +--- a/info/scan.c ++++ b/info/scan.c +@@ -925,11 +925,11 @@ write_extra_bytes_to_output (char *input, long n) + } + + /* Like write_extra_bytes_to_output, but writes bytes even when +- preprocess_nodes=Off. */ ++ preprocess_nodes=Off. Note n could be 0 for an index tag. */ + static void + write_tag_contents (char *input, long n) + { +- if (rewrite_p) ++ if (rewrite_p && n > 0) + { + text_buffer_add_string (&output_buf, input, n); + output_bytes_difference -= n; +-- +2.42.1 + diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0004-tp-Texinfo-XS-parsetexi-tree.c-reset_obstacks.patch b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0004-tp-Texinfo-XS-parsetexi-tree.c-reset_obstacks.patch new file mode 100644 index 00000000000..6f57363fc43 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0004-tp-Texinfo-XS-parsetexi-tree.c-reset_obstacks.patch @@ -0,0 +1,53 @@ +https://lists.gnu.org/archive/html/bug-texinfo/2023-11/msg00000.html +https://lists.gnu.org/archive/html/bug-texinfo/2023-11/msg00016.html +https://lists.gnu.org/archive/html/bug-texinfo/2023-11/msg00073.html + +From 81a854e22ca2449f2351436a863e5262935f5dc0 Mon Sep 17 00:00:00 2001 +From: Gavin Smith +Date: Mon, 13 Nov 2023 18:43:40 +0000 +Subject: [PATCH 4/5] * tp/Texinfo/XS/parsetexi/tree.c (reset_obstacks): Call + obstack_alignment_mask to use 8-byte alignment. Needed for Debian on + sparc64. Report of "Bus error" from John Paul Adrian Glaubitz + . + +--- + ChangeLog | 7 +++++++ + tp/Texinfo/XS/parsetexi/tree.c | 7 ++++++- + 2 files changed, 13 insertions(+), 1 deletion(-) + +diff --git a/ChangeLog b/ChangeLog +index efbb3b22d1..a146820671 100644 +--- a/ChangeLog ++++ b/ChangeLog +@@ -1,3 +1,10 @@ ++2023-11-13 Gavin Smith ++ ++ * tp/Texinfo/XS/parsetexi/tree.c (reset_obstacks): ++ Call obstack_alignment_mask to use 8-byte alignment. Needed ++ for Debian on sparc64. Report of "Bus error" from ++ John Paul Adrian Glaubitz . ++ + 2023-11-04 Gavin Smith + + * info/scan.c (write_tag_contents): Check if added text is of +diff --git a/tp/Texinfo/XS/parsetexi/tree.c b/tp/Texinfo/XS/parsetexi/tree.c +index f2d69e0454..09db6fc151 100644 +--- a/tp/Texinfo/XS/parsetexi/tree.c ++++ b/tp/Texinfo/XS/parsetexi/tree.c +@@ -43,7 +43,12 @@ reset_obstacks (void) + if (obs_element_first) + obstack_free (&obs_element, obs_element_first); + else +- obstack_init (&obs_element); ++ { ++ /* Specify 8-byte alignment. Needed for SPARC. */ ++ obstack_alignment_mask (&obs_element) = 7; ++ ++ obstack_init (&obs_element); ++ } + + obs_element_first = obstack_alloc (&obs_element, sizeof (int)); + } +-- +2.42.1 + diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0005-tp-Texinfo-command_data.txt.patch b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0005-tp-Texinfo-command_data.txt.patch new file mode 100644 index 00000000000..59b59061796 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/files/7.1/0005-tp-Texinfo-command_data.txt.patch @@ -0,0 +1,221 @@ +From f1f8920d798dbcb20cb775b46a54cd81847295fd Mon Sep 17 00:00:00 2001 +From: Gavin Smith +Date: Tue, 14 Nov 2023 21:53:49 +0000 +Subject: [PATCH 5/5] * tp/Texinfo/command_data.txt (item_LINE, itemx, + defblock, defline, deftypeline): Remove contain_basic_inline flag. There is + no reason an @anchor should not occur inside @item, inside @table, or the + other commands, as no index entry is being created with the @anchor. + +Report from Ihor Radchenko for Org mode manual. +--- + ChangeLog | 10 +++ + tp/Texinfo/command_data.txt | 10 +-- + tp/t/results/invalid_nestings/in_table.pl | 90 ------------------- + .../invalid_nestings/table_on_item_line.pl | 9 -- + 4 files changed, 15 insertions(+), 104 deletions(-) + +diff --git a/ChangeLog b/ChangeLog +index a146820671..0dcdb1a904 100644 +--- a/ChangeLog ++++ b/ChangeLog +@@ -1,3 +1,13 @@ ++2023-11-14 Gavin Smith ++ ++ * tp/Texinfo/command_data.txt ++ (item_LINE, itemx, defblock, defline, deftypeline): ++ Remove contain_basic_inline flag. There is no reason an @anchor ++ should not occur inside @item, inside @table, or the other ++ commands, as no index entry is being created with the @anchor. ++ ++ Report from Ihor Radchenko for Org mode manual. ++ + 2023-11-13 Gavin Smith + + * tp/Texinfo/XS/parsetexi/tree.c (reset_obstacks): +diff --git a/tp/Texinfo/command_data.txt b/tp/Texinfo/command_data.txt +index bcda173e2c..c9b5f51569 100644 +--- a/tp/Texinfo/command_data.txt ++++ b/tp/Texinfo/command_data.txt +@@ -253,8 +253,8 @@ printindex line,formattable_line,close_paragraph,global,contain_pla + listoffloats line,formattable_line,close_paragraph,global,contain_basic_inline LINE_line + exdent line,formatted_line,close_paragraph LINE_line + # or nobrace skipspace, depending on the context +-item_LINE line,formatted_line,close_paragraph,contain_basic_inline LINE_line +-itemx line,formatted_line,close_paragraph,contain_basic_inline LINE_line ++item_LINE line,formatted_line,close_paragraph LINE_line ++itemx line,formatted_line,close_paragraph LINE_line + nodedescription line,close_paragraph LINE_line + # in index entries + subentry line,in_index,contain_basic_inline LINE_line +@@ -494,9 +494,9 @@ defmethod block,def,contain_basic_inline,def_alias,close_paragraph + deftypemethod block,def,contain_basic_inline,def_alias,close_paragraph BLOCK_def + + # generic, no automatic index +-defblock block,contain_basic_inline,close_paragraph BLOCK_def +-defline line,def,contain_basic_inline,close_paragraph LINE_line +-deftypeline line,def,contain_basic_inline,close_paragraph LINE_line ++defblock block,close_paragraph BLOCK_def ++defline line,def,close_paragraph LINE_line ++deftypeline line,def,close_paragraph LINE_line + + # def*x + deffnx line,def,contain_basic_inline,close_paragraph LINE_line +diff --git a/tp/t/results/invalid_nestings/in_table.pl b/tp/t/results/invalid_nestings/in_table.pl +index f4dcef1141..76eea8b3b4 100644 +--- a/tp/t/results/invalid_nestings/in_table.pl ++++ b/tp/t/results/invalid_nestings/in_table.pl +@@ -1107,42 +1107,6 @@ $result_errors{'in_table'} = [ + 'text' => '@indent should not appear in @item', + 'type' => 'warning' + }, +- { +- 'error_line' => 'warning: @indent should not appear on @item line +-', +- 'file_name' => '', +- 'line_nr' => 9, +- 'macro' => '', +- 'text' => '@indent should not appear on @item line', +- 'type' => 'warning' +- }, +- { +- 'error_line' => 'warning: @titlefont should not appear on @item line +-', +- 'file_name' => '', +- 'line_nr' => 9, +- 'macro' => '', +- 'text' => '@titlefont should not appear on @item line', +- 'type' => 'warning' +- }, +- { +- 'error_line' => 'warning: @anchor should not appear on @item line +-', +- 'file_name' => '', +- 'line_nr' => 9, +- 'macro' => '', +- 'text' => '@anchor should not appear on @item line', +- 'type' => 'warning' +- }, +- { +- 'error_line' => 'warning: @footnote should not appear on @item line +-', +- 'file_name' => '', +- 'line_nr' => 9, +- 'macro' => '', +- 'text' => '@footnote should not appear on @item line', +- 'type' => 'warning' +- }, + { + 'error_line' => 'warning: @exdent should only appear at the beginning of a line + ', +@@ -1161,24 +1125,6 @@ $result_errors{'in_table'} = [ + 'text' => '@exdent should not appear in @item', + 'type' => 'warning' + }, +- { +- 'error_line' => 'warning: @exdent should not appear on @item line +-', +- 'file_name' => '', +- 'line_nr' => 9, +- 'macro' => '', +- 'text' => '@exdent should not appear on @item line', +- 'type' => 'warning' +- }, +- { +- 'error_line' => 'warning: @ref should not appear on @item line +-', +- 'file_name' => '', +- 'line_nr' => 11, +- 'macro' => '', +- 'text' => '@ref should not appear on @item line', +- 'type' => 'warning' +- }, + { + 'error_line' => '@ref missing closing brace + ', +@@ -1206,15 +1152,6 @@ $result_errors{'in_table'} = [ + 'text' => '@center should not appear in @item', + 'type' => 'warning' + }, +- { +- 'error_line' => 'warning: @center should not appear on @item line +-', +- 'file_name' => '', +- 'line_nr' => 13, +- 'macro' => '', +- 'text' => '@center should not appear on @item line', +- 'type' => 'warning' +- }, + { + 'error_line' => 'warning: @cindex should not appear in @item + ', +@@ -1224,15 +1161,6 @@ $result_errors{'in_table'} = [ + 'text' => '@cindex should not appear in @item', + 'type' => 'warning' + }, +- { +- 'error_line' => 'warning: @cindex should not appear on @item line +-', +- 'file_name' => '', +- 'line_nr' => 14, +- 'macro' => '', +- 'text' => '@cindex should not appear on @item line', +- 'type' => 'warning' +- }, + { + 'error_line' => 'warning: @cindex should not appear in @item + ', +@@ -1242,15 +1170,6 @@ $result_errors{'in_table'} = [ + 'text' => '@cindex should not appear in @item', + 'type' => 'warning' + }, +- { +- 'error_line' => 'warning: @cindex should not appear on @item line +-', +- 'file_name' => '', +- 'line_nr' => 18, +- 'macro' => '', +- 'text' => '@cindex should not appear on @item line', +- 'type' => 'warning' +- }, + { + 'error_line' => 'warning: @cindex should not appear in @item + ', +@@ -1260,15 +1179,6 @@ $result_errors{'in_table'} = [ + 'text' => '@cindex should not appear in @item', + 'type' => 'warning' + }, +- { +- 'error_line' => 'warning: @cindex should not appear on @item line +-', +- 'file_name' => '', +- 'line_nr' => 21, +- 'macro' => '', +- 'text' => '@cindex should not appear on @item line', +- 'type' => 'warning' +- }, + { + 'error_line' => 'warning: empty index key in @item + ', +diff --git a/tp/t/results/invalid_nestings/table_on_item_line.pl b/tp/t/results/invalid_nestings/table_on_item_line.pl +index b1184ba915..51ba523fd7 100644 +--- a/tp/t/results/invalid_nestings/table_on_item_line.pl ++++ b/tp/t/results/invalid_nestings/table_on_item_line.pl +@@ -273,15 +273,6 @@ $result_errors{'table_on_item_line'} = [ + 'text' => '@table should not appear in @item', + 'type' => 'warning' + }, +- { +- 'error_line' => 'warning: @table should not appear on @item line +-', +- 'file_name' => '', +- 'line_nr' => 2, +- 'macro' => '', +- 'text' => '@table should not appear on @item line', +- 'type' => 'warning' +- }, + { + 'error_line' => 'no matching `@end table\' + ', +-- +2.42.1 + diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.1-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.1-r1.ebuild new file mode 100644 index 00000000000..22c42c1ad70 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-7.1-r1.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Note: if your package uses the texi2dvi utility, it must depend on the +# virtual/texi2dvi package to pull in all the right deps. The tool is not +# usable out-of-the-box because it requires the large tex packages. + +# Keep an eye on the release/$(ver_cut 1-2) branch upstream for backports. + +EAPI=8 + +inherit flag-o-matic toolchain-funcs + +DESCRIPTION="The GNU info program and utilities" +HOMEPAGE="https://www.gnu.org/software/texinfo/" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://git.savannah.gnu.org/git/texinfo.git" + REGEN_BDEPEND=" + >=sys-devel/autoconf-2.62 + >=sys-devel/automake-1.16 + sys-devel/libtool + " +elif [[ $(ver_cut 3) -ge 90 || $(ver_cut 4) -ge 90 ]] ; then + SRC_URI="https://alpha.gnu.org/gnu/${PN}/${P}.tar.xz" + REGEN_BDEPEND="" +else + SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + REGEN_BDEPEND="" +fi + +LICENSE="GPL-3+" +SLOT="0" +IUSE="nls +standalone static" + +RDEPEND=" + !=app-text/tetex-2* + >=sys-libs/ncurses-5.2-r2:= + virtual/perl-Data-Dumper + virtual/perl-Encode + virtual/perl-Unicode-Collate + standalone? ( >=dev-lang/perl-5.8.1 ) + !standalone? ( + >=dev-lang/perl-5.8.1:= + dev-libs/libunistring:= + ) + nls? ( virtual/libintl ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + ${REGEN_BDEPEND} + nls? ( >=sys-devel/gettext-0.19.6 ) +" + +PATCHES=( + # Backports from the release/7.1 branch + "${FILESDIR}"/7.1 +) + +src_prepare() { + default + + if [[ ${PV} == 9999 ]]; then + ./autogen.sh || die + fi + + # Needed if a patch touches install-info.c + #touch man/install-info.1 || die + + if use prefix ; then + sed -i -e '1c\#!/usr/bin/env sh' util/texi2dvi util/texi2pdf || die + touch {doc,man}/{texi2dvi,texi2pdf,pdftexi2dvi}.1 || die + fi +} + +src_configure() { + # Respect compiler and CPPFLAGS/CFLAGS/LDFLAGS for Perl extensions + # bug #622576 + local -x PERL_EXT_CC="$(tc-getCC)" PERL_EXT_CPPFLAGS="${CPPFLAGS}" + local -x PERL_EXT_CFLAGS="${CFLAGS}" PERL_EXT_LDFLAGS="${LDFLAGS}" + + use static && append-ldflags -static + + # TODO: + # --with-external-Unicode-EastAsianWidth + # --with-external-Text-Unidecode + # + # Also, 7.0.91 seemed to introduce a included-libunistring w/ USE=-standalone + # but it doesn't seem to do anything? + local myeconfargs=( + --cache-file="${S}"/config.cache + $(use_enable nls) + $(use_enable !standalone perl-xs) + ) + + econf "${myeconfargs[@]}" +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-9999.ebuild index 7c36a927189..4f348154302 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/texinfo/texinfo-9999.ebuild @@ -5,6 +5,8 @@ # virtual/texi2dvi package to pull in all the right deps. The tool is not # usable out-of-the-box because it requires the large tex packages. +# Keep an eye on the release/$(ver_cut 1-2) branch upstream for backports. + EAPI=8 inherit flag-o-matic toolchain-funcs diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/usbutils/Manifest b/sdk_container/src/third_party/portage-stable/sys-apps/usbutils/Manifest index fbbd91e6764..0f977552028 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/usbutils/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-apps/usbutils/Manifest @@ -1,2 +1,3 @@ DIST usbutils-015.tar.xz 167472 BLAKE2B 1074c7159e9e6729f03f98e1f38fa0b3fef3e744b5297e6d97a5fc44ea374e2d5a0c481e14b2a034bca201048b1305c3877dbb15e3c4c04b228b4036048d8904 SHA512 cda0070138400703d7429d39dee49130aedaa704292531e6af57b347cc62422ca609540650926e74335f71d67d7d4655418be4824e1eb8a2b065c7b395feaa87 DIST usbutils-016.tar.xz 169000 BLAKE2B 2f3af61e5a7abf48cdf0a4aebc901ca1570007b54d11ae74572e16bdeb2d8e73844d76af54bd812d6d4b84ddaf6e956132ecc9a8a2849a7bffc0643e29115a49 SHA512 4483038bf91c056cd2977f5e7f449c0a62d9152d6f5d64ab7bde438ab9c1c56fe524ba10b35781c2828edd0fe89379dbaed78fa7ffe78903cae0c4e3c460f9a0 +DIST usbutils-017.tar.xz 168820 BLAKE2B 868c646ed6d38a38b9bd3ab85ba3a5e9362a97e476aeed6576c1b175caaf4ee688cb2c33756f02c9bf0aef9e7d58657331fc1c3b3314d86145b3d4f37124537e SHA512 eaebbc82eee4d940898f7a8de95ca49846c7c964e65c3d866b38735f8f3c8ccfed2b3a536bf2ef39a835a40a34c2273ac4d82b1012d0c693d4863cff14870d95 diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/usbutils/usbutils-017.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/usbutils/usbutils-017.ebuild new file mode 100644 index 00000000000..aff70399627 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/usbutils/usbutils-017.ebuild @@ -0,0 +1,66 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..11} ) +inherit python-single-r1 + +DESCRIPTION="USB enumeration utilities" +HOMEPAGE=" + https://www.kernel.org/pub/linux/utils/usb/usbutils/ + https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usbutils.git/ +" +SRC_URI="https://www.kernel.org/pub/linux/utils/usb/${PN}/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="python" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +DEPEND=" + virtual/libusb:1= + virtual/libudev:= +" +RDEPEND=" + ${DEPEND} + python? ( + ${PYTHON_DEPS} + sys-apps/hwdata + ) +" +BDEPEND=" + virtual/pkgconfig + python? ( ${PYTHON_DEPS} ) +" + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + + use python && python_fix_shebang lsusb.py.in +} + +src_configure() { + local myeconfargs=( + --cache-file="${S}"/config.cache + --datarootdir="${EPREFIX}/usr/share" + --datadir="${EPREFIX}/usr/share/hwdata" + ) + econf "${myeconfargs[@]}" +} + +src_install() { + default + + newdoc usbhid-dump/NEWS NEWS.usbhid-dump + dobin usbreset # noinst_PROGRAMS, but installed by other distros + + if ! use python ; then + rm -f "${ED}"/usr/bin/lsusb.py || die + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/files/util-linux-2.39.2-fincore-test.patch b/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/files/util-linux-2.39.2-fincore-test.patch new file mode 100644 index 00000000000..f69876fe0a1 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/files/util-linux-2.39.2-fincore-test.patch @@ -0,0 +1,23 @@ +https://bugs.gentoo.org/627532 +https://github.com/util-linux/util-linux/commit/f5715c117e727d4ff45e0d8568f188753620356e + +From f5715c117e727d4ff45e0d8568f188753620356e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= +Date: Mon, 13 Nov 2023 21:05:59 +0100 +Subject: [PATCH] fincore: (tests) also use nosize error file +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Link: https://lore.kernel.org/util-linux/b8cafd0d89878949705782312dfe800ec2779035.camel@physik.fu-berlin.de/ +Signed-off-by: Thomas Weißschuh +--- a/tests/ts/fincore/count ++++ b/tests/ts/fincore/count +@@ -107,6 +107,7 @@ if test -f "$TS_EXPECTED.$PAGE_SIZE"; then + OUT_COLUMNS="PAGES,SIZE,FILE" + else + TS_EXPECTED+=".nosize" ++ TS_EXPECTED_ERR+=".nosize" + OUT_COLUMNS="PAGES,FILE" + fi + diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.39.2.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.39.2.ebuild index 3b2516a8aba..6655149f15a 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.39.2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-2.39.2.ebuild @@ -95,6 +95,10 @@ fi REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} ) su? ( pam )" RESTRICT="!test? ( test )" +PATCHES=( + "${FILESDIR}"/${PN}-2.39.2-fincore-test.patch +) + pkg_pretend() { if use su && ! use suid ; then elog "su will be installed as suid despite USE=-suid (bug #832092)" @@ -141,6 +145,8 @@ src_prepare() { lsfd/mkfds-symlink lsfd/mkfds-rw-character-device + # Fails with network-sandbox at least in nspawn + lsfd/option-inet ) local known_failing_test diff --git a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-9999.ebuild index 1f3d37f8219..3ae57148c8b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-apps/util-linux/util-linux-9999.ebuild @@ -141,6 +141,8 @@ src_prepare() { lsfd/mkfds-symlink lsfd/mkfds-rw-character-device + # Fails with network-sandbox at least in nspawn + lsfd/option-inet ) local known_failing_test diff --git a/sdk_container/src/third_party/portage-stable/sys-block/thin-provisioning-tools/thin-provisioning-tools-1.0.6.ebuild b/sdk_container/src/third_party/portage-stable/sys-block/thin-provisioning-tools/thin-provisioning-tools-1.0.6.ebuild index 7697688d631..9dd27580edd 100644 --- a/sdk_container/src/third_party/portage-stable/sys-block/thin-provisioning-tools/thin-provisioning-tools-1.0.6.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-block/thin-provisioning-tools/thin-provisioning-tools-1.0.6.ebuild @@ -146,7 +146,7 @@ else https://github.com/jthornber/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz ${CARGO_CRATE_URIS} " - KEYWORDS="~amd64 ~arm arm64 ~loong ~mips ppc64 ~riscv x86 ~amd64-linux ~x86-linux" + KEYWORDS="~amd64 arm arm64 ~loong ~mips ppc64 ~riscv x86 ~amd64-linux ~x86-linux" fi LICENSE="Apache-2.0 BSD GPL-3 MIT Unicode-DFS-2016" diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/automake/automake-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/automake/automake-9999.ebuild index 0fef18d0c6d..0c72cfe6e47 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/automake/automake-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/automake/automake-9999.ebuild @@ -109,8 +109,13 @@ src_install() { done popd >/dev/null || die - local major="$(ver_cut 1)" - local minor="$(ver_cut 2)" + if [[ ${PV} == 9999 ]]; then + local major="89" + local minor="999" + else + local major="$(ver_cut 1)" + local minor="$(ver_cut 2)" + fi local idx="$((99999-(major*1000+minor)))" newenvd - "06automake${idx}" <<-EOF INFOPATH="${infopath}" diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.40-r9.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.40-r9.ebuild index b7fac9c0e71..bd9728b2f2d 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.40-r9.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/binutils/binutils-2.40-r9.ebuild @@ -32,7 +32,7 @@ else [[ -z ${PATCH_VER} ]] || SRC_URI="${SRC_URI} https://dev.gentoo.org/~${PATCH_DEV}/distfiles/binutils-${PATCH_BINUTILS_VER}-patches-${PATCH_VER}.tar.xz" SLOT=$(ver_cut 1-2) - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" fi # diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/Manifest b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/Manifest index f3a711c36f6..29d8c1b3210 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/Manifest @@ -1,43 +1,28 @@ -DIST gcc-10-20230426.tar.xz 72118868 BLAKE2B d87cfd78d96585877abc20ed213e4d2fba36556279a5bce5d185de34a59f8cde1250d7322543533922ef224ac8508c1d3fe597c652a648e6e7f08bc19cb2f11c SHA512 805fbb840e6bd8cdd53f954b13c768c0ea0635c099094f6f0b0b04f00120dcde7cf3950a01e199d674b39ff764e9119a548b2f7a156ab2b5d598bd68ed56ce24 DIST gcc-10.5.0-musl-patches-2.tar.xz 3452 BLAKE2B 5387e516d07d81477b3f39b8b3bd986bf861d32cd25dc5481c97bd3620d00c918c5661e86857f66dbf28a655401a53e43417f638c443e44cbfdbf5e950caac4d SHA512 86f2ce31cc4fc4fb5a6043fb527bf822d895e1a6220652024f78a1cbd5a962edb6be8dc5f43c32053e075f39bb2350ea8f14e7d57e0473dd2933a7b44676bde5 DIST gcc-10.5.0-patches-6.tar.xz 18208 BLAKE2B 4cac3340108fb378c76ad62b728429f3c97f348d178744e7536575f3576ca8aa682b878b7df3b1c162dccae64a3cb56c66d8d60eae323e1ece2de4278084fdbd SHA512 9d6c84325fbc118cee01347468ce729c278e5b026b16da945fe54050726e26f86a46ee7b71a01a47cf927b70bfcce459c49a6bc4fb93dcfaa047c76d4c5bc5bc DIST gcc-10.5.0.tar.xz 77846412 BLAKE2B 9b71761f4015649514677784443886e59733ac3845f7dfaa4343f46327d36c08c403c444b9e492b870ac0b3f2e3568f972b7700a0ef05a497fb4066079b3143b SHA512 d86dbc18b978771531f4039465e7eb7c19845bf607dc513c97abf8e45ffe1086a99d98f83dfb7b37204af22431574186de9d5ff80c8c3c3a98dbe3983195bffd -DIST gcc-11-20230427.tar.xz 76165128 BLAKE2B dd896b418c1fce35a61005d5b5c90cfd1246d37d23c2a8fc08bacd7d7ca84c353f3ccf5de2370ae5e5ca95c7ae3deab3565b3f65eb78b611dbe5ad4a256516f0 SHA512 fada917a832be5d2e15ee32f24e19fc87b851dc8e6fc75d1be6d25d3510dba408ae3ef3b245ff239c51aa3d243c95f12269695611e5c8965ba55f5aa4730778d DIST gcc-11-20230622.tar.xz 76199316 BLAKE2B a769dc6be63eabca3bc33944b471d727bf230e506773c85977156b187f12664f2cd3e0992a1faefda8ec88ff85d1a8d12795121baadc7e8b9653d69a8025e46e SHA512 8dbc5a4b54f2bc52458914705af40a00b33e46061dd5b335b4b4a6e96d17206fe480d3fec564dd11ebcca6168f054984d706b1b26b7e694e8b327692a13ae7d1 DIST gcc-11-20230824.tar.xz 76202120 BLAKE2B 243ce16e28c66d681bb27df32866947309f8fa386e258896651b6853e390da79304250669096fd55cafe0a9d5adf4b3a3cf5989302f4ad13660ece80639b545a SHA512 a9cab8bf61f2a572baba73a2a11271eeb61d43f07411df376a8568820c1373f64f635d747933fda1e942ae717b0ae9f1c810f662fc09ccb075940248bc48b582 -DIST gcc-11-20231012.tar.xz 76228876 BLAKE2B f48d440cefdad9eb021116b72ba41a7cb8b3af904abafb26bd49113f3bdaacbeab86f3d7a783130ea1a1f8c6556d1dc83b8176ae96973c524dc8606443e0be0a SHA512 7cae1a36a113e0184b1c10c7892a808a6ec38ecd4b1c482d589717c68474873093eebd68465694344ee1208d0e118f5d91b3a19f981da22dfa95ee86663572bb -DIST gcc-11-20231019.tar.xz 76228604 BLAKE2B cc1278eb4beb598d81b1629fe72095487709f9e1a7229dba0512ba8273767b05e79c7c02104a1aa28b699d42ef0f10f7b960f1a37693c1508df9846edfe80b82 SHA512 f98ce83e0d75fe4459e1852d900924e8e3c31853ba54e38e46f040f4d109726b6c171bbb51e9230c459d617c3c8ac37708ef65997d6797a1686b60cdca3107a0 -DIST gcc-11-20231026.tar.xz 76243752 BLAKE2B bdd28659a0ddf9aea98c989377260586aea746cde8fbc082d52944032c02209d67f633c295a7bebcb7bf8a8df081430110cbdf749ceacd9250263629d57797df SHA512 9c2a47465c7143b645df9e863faec4e6d80d158598262b59eaf248d900f73aeddbcd045b37b7015f2ba87c11c8beb3ae7d63fdda974160fef785e0648eb72d92 -DIST gcc-11-20231102.tar.xz 76231000 BLAKE2B a7ef4cb9aa79e401e070d80db8cc2366107a7965480caf52f1932ec977c1b60619b1504267165cdf3dacc0c74201f2bdf2466f09cf78d8b4fdd9055e8ccdbbe2 SHA512 f3e78d753efb76c8261478c99676980338dc0905e9974f3b4131aa9715753fd94d8b516a7e3a32a0436056697b15a09ab03d38a1222d295edabbb1f43559a8aa +DIST gcc-11-20231116.tar.xz 76229556 BLAKE2B d86238ccc5f477316cf9b24f85335e2eaefb168541bdea6e97703f8e587e36af67ff531c3f44d15976153e7ac6d84f4c0754df419620f86868877e29e552fd4c SHA512 cf8b1ce868cbdfce03735b30a941532406a317c8c539b054ba2784f58fe9680c6c248ab513ae76feaac92d47e993f0aab08185d335eed7565ff0ce778f9c1548 +DIST gcc-11-20231123.tar.xz 76227160 BLAKE2B 20fb3d3ec58c0c78a795ffbd154d76b203670f16b1a8c8eac4d17b4b2abd09e2def944c7765582889d7c79934a35c5852db8b0713bac8a3254df86eabce55a6a SHA512 49db02156afb5005822080a00172801ea1f3e62ae26eabf2edc9033c9577bc529adb8c9e259bb3e23d075741ff9074b6b1f33c158cdd60b7b23760e64f3f5c58 DIST gcc-11.4.0-musl-patches-2.tar.xz 4308 BLAKE2B a2335e155fc57816fed822a648e0eaefafcba9d04e1ad0fd7baeea5a694ab6f5e3c1678cb406f2a1bd17bab25cb01699d032713a1ccf337948dfda2093844607 SHA512 17b84f907cb1bd763873655e6f35fd3ed55a40b602b70a626f04f83b4cc89c6261db1661de78d4d969187a8c56e9f6305b742515a3836b962248a21df0df5d0c DIST gcc-11.4.0-patches-10.tar.xz 13852 BLAKE2B 54937d13e30e2a5303c7e197fae09eeed35ca0b9783625e02578fcee829b5503fb22d664366322b304df7d01ae807d00af7c93db3e3ceebe4851e15647724f87 SHA512 31b4d7a2e7cc589e92e12c3583d13d41c523cafbd309bc0532df9b68ea2473c89daef4c0edd3ce2917b5823d81a7792f145b9449f16277d0d64c22ceff50bbb9 -DIST gcc-11.4.0-patches-9.tar.xz 14704 BLAKE2B 9aa2ecbac493d3040694e9930738e57d59a764b90ab92b91709c319b883f28ad108767e5d11e8b62af40bf1e583d5ff83a03e8c895f904bc6f41315ce9ab4f0a SHA512 ac8b7c6c382ffacc4e9d08299440fc237fa366ec36fb8eb7a8d426b64a4186384a262e6380dc83ed7f7240125ce26a8435c8a4e0e13976ef2652067a7129bd17 -DIST gcc-12-20230526.tar.xz 79780444 BLAKE2B 6f6eca272ab506e16a231003c399e28572595c82fbaaec9deb14b78ff9fc493fb24afe1c375d4f2fd75e9813805934857ef2ceb6c05b7977dbfe2e50abdc3ec9 SHA512 fb190ce5bf3d38a1899016475c1551550d44c6f71f1f1a71ced545cbb2aff0446bd2765230b0920379579a13103a507ffc1e197ac69afb0a4f08efe11b50918d DIST gcc-12-20230825.tar.xz 79804260 BLAKE2B 4d3eb40eb5954d497b3e9586dad0d18c9e561d3fdd0bdccc5c9572edfbe024a235e30371a10116d98c77f0b6042739600c57ac99253d34f0fbb8b8465b187e1f SHA512 a6cd868f474c356886460b95263807828f9a379ce97524611ec504d6a9149ca1f92585128e6ffd03fa2647442e72fde6ebe987fd49f2fc49d8df39ab056905c5 -DIST gcc-12-20231006.tar.xz 79786912 BLAKE2B 09da5378d449b6d1d5d5af82bfa18b6d073a4f255afef5e19a086e72d41ba0a204705353a4ef7df8c89ace4de639573fe98ab37f90e0f0761743336fcfb023b2 SHA512 21975c70bc7958a44e4785881cc4c64bc842ec28e34a10880ef7369299af0bccdeb54ceb6e303ca031795a678e1649100a6924110268ba53147ae6e7da6acb91 -DIST gcc-12-20231013.tar.xz 79793868 BLAKE2B 39844a7ff9b5bfd1201816b5758aa9937fb69f28f43a6c6f3aba1debbc24e0908b0af20fd1257cfbddf5bfd23c3d8ea264a1743822443f8ed12c03b874732e76 SHA512 52ec9815535634db0ea47521a416b2be4fc483b1b90e10cac5d6235e661a5c142d8d5c9f3d06cc856572fc38d3a9abe601b9c1fa918f115dc7d1dc81db9d9ceb -DIST gcc-12-20231020.tar.xz 79803424 BLAKE2B 2bbd11b84a203a305279587ba8e8771778b425f507b38e6c9dd649c9124e0c77fdf23451150d5e70495ba4a978c449f0b5cd7a5355f63ed1e322585532d6976a SHA512 af6af7b0c6dc95d624bec7f17a092baf2c7258e3b87c372023ae3d1e07b30c7c155f21e24d6ed8e8e55378b1658e18dcb9d2658ddb7f534921b5ac25dab957d0 -DIST gcc-12-20231027.tar.xz 79811256 BLAKE2B 80f9b31f1cf0aaca4b3a2808b37627018872ccbe71c9d8e63c29fff4ab57738e6a9b5ce6484bf0237b6d725ecf9f1523c57062c5d2bad5111ef15bec96247094 SHA512 3986087a5a250ffa49f9ce85dfaf7f6fd0bc148afac832b7b498f3f5ae4a6bb45a48753304d7a913bb8829f6bf912ebc76b3a3279d0c3d7bbb60af53da6df3c7 -DIST gcc-12-20231103.tar.xz 79849280 BLAKE2B 40fe188736bba96d9facb71f19284815044a9f302fff340579a49d3a71f7f01b04e7c97df1291fbcdcd90a924d237dce56d09a49d6135ec4b8766c080d06dfea SHA512 1b49df9f2953fb25175d68ed12bb3d47355502b82537568b8d4148b7c8e3836ec606a7b07af0737f903f42cd6e56798987c4b9bdb00fe34871553877ecc07f04 +DIST gcc-12-20231117.tar.xz 79812376 BLAKE2B a32153daa75f640cfbea7eea3bbf1391d9d95fd0e9659c73e7bade50fefdbe93f5b0a22b4b9b61e08a5df9009081bbde9a3878c0fdd474f02944fe10704736c6 SHA512 c31886d2b5d2b58fa5caa063407d896aab565f8d5996f71447e341d85f8b34c989ab8462a14f067473e360d2f5e2131f9cc068eb8808a23b4531ad313b7ea37b +DIST gcc-12-20231124.tar.xz 79820140 BLAKE2B 8a4ea2e35955d72d6b87c3f352d2fadc859febf83e0df5846ad7749d496bcdc961d9fac76e4b3f91e2686e778a0433026a883d987cd5428a284d080eab82680d SHA512 fc2ecae20b94dbbfd3e017f89355f159826a18a56634bc0e4c54fbed6a237bb11980a323056915af5cea307fb1fefc301f8f996ea04608541cb12020197f2844 DIST gcc-12.3.0-musl-patches-1.tar.xz 3572 BLAKE2B c7bf65f7c9ea8023ddaac821ee2b778622fa310ac72a72b2f7032494a8f304eac86217f9204622e6c21aaef9952bece0d09bc126facd4f42b602927909815ab5 SHA512 babc279fea2c1fd4c018815f2f5630214fd46015ce9f365c28af242681d51818eaca30ce298eddcab1eed5ac5f2759e2b47b2335afab9d722b4469a6d4fec326 DIST gcc-12.3.0-patches-2.tar.xz 14236 BLAKE2B 06c43662c9abb0fa3cf90d5e2273c69aecb9158e6cf6f23c04754ed5d686be2616e81e2502eb16f4298ddd50518ca7677e13249da9e9b091162d3931ff65e4fe SHA512 b0d4b85dbf1a54aaaa1997203b872e3106906b4ad49cde57e1428bc22b2f8e2d73b8cb10ae0d0b792aebaf664594da4d1dea04c44ddc34e59047410766db04d1 DIST gcc-13-20230826.tar.xz 84285788 BLAKE2B c25be594e322dd7145245c42ae21b98aa9e3e6ae69f1fa313830e40bf2e8fcb8435762f1c9d3f1ca1dbf31653bdc76a658bec708b7850fe40a7c55504ac30618 SHA512 3d47632e90651bd50a881c727c1ef2aa3322b4fc3e082919ae430270901abf8a05a34fe93f8b678c10dc9a0758f93dc3b33ed5947c8743dab453d2b50c063722 DIST gcc-13-20231014.tar.xz 84317080 BLAKE2B 18c2326f203951d16904e4f2bf7fa0cd55da0460b19a9c9ce45de94b41fa71f8c1b8eb9d08700de427b3e02c2e61d3cbcc85cb6f27236717dca8359bfaf4c534 SHA512 406673a62deba759fc0532a801b3f57cabf894ea328587b23e62a707ba5767b0e3ae9b3f86bf3c6fcf13e8a3c30bc470e6598b625c8231efb629034211c162c2 -DIST gcc-13-20231021.tar.xz 84324516 BLAKE2B 0b55e215eeb1240c9c03664e6e3b65b9321ad3ea6bfd81464a652bd58992bb5f80748ebdf0ea284feb4a50ced7ac4d19cb97f480ed5f98f753fbb93f831f799f SHA512 f713492b0a92d3cd61e0f4d1ed8cdd70e5be7fb77df1ade54e760e800f213a7e6004cc7bdb338dffbd0b768f4c39a88d6b45e86b957f3ff689f2abf5c39686b1 -DIST gcc-13-20231028.tar.xz 84325916 BLAKE2B 605584633791822d8d4719837cde8d60866cfab2f278e0b2a680211f9dcea1c70ccb5bf94fa366dbb5891abd5e5c0d07e066a503e91df22d5d7ffb304d733fc1 SHA512 51bce79290edd3f95f8d833369089a6369691edf8a4f6a1d4ab5a3ff7342f855045fcb85b81f13fe79691f42725774ceba052a0d5ec8e557857d309b46c65e8d -DIST gcc-13-20231104.tar.xz 84312824 BLAKE2B 98f360273eed7ebd7610ed59dd2636e03cb58c5653736d5fd42fdb228c4d7d29d2fa1ef5c1061575f5571b1fec9d23806f8729c65a9def7b5d5f5b3da8daca71 SHA512 9d16205fdae17326fb646229a637ef798beed5901d883268678ea276a69a7bde878fadbf04c5402c1956d2e6a3f46a1c0126185e7dd64ef497ffb57292772a2d +DIST gcc-13-20231118.tar.xz 84338040 BLAKE2B 792122da18c1f315753b9aa194ff31b3e08befdea751ccb095fdfa9752f70fba85763508783b70aa8dd01ee88b35a586e03d8bb45e8c2e822b764e334b24da17 SHA512 a467cc5edae1628425291c0ea55f7e525f52cc50a849419ab39d439874276784d11a3c61172299cbe4b8e0efccff5375314ccc2920b331a7791b4c09a235fe99 +DIST gcc-13-20231125.tar.xz 84338152 BLAKE2B 4951fd200fe5abd9ed2f6a9ece4637c3a0528b0b3ceca9d55ec94d56b42cd24de239f5aede4432e55b9ce8fe3543954cc630dbae820b55806f0446152fb00415 SHA512 d16aef554ce87e013848301b6a32c119eef45010c51d4c821bf042c693488df311c8349b84dafe70abee493cc329d26c632643bced66bd99cf40677c0c384954 DIST gcc-13.2.0-musl-patches-2.tar.xz 5292 BLAKE2B c057d6574d03c05854edaa9f3fd40e9149662b04f3ac7a7db3eb078d73a7b535726d1bf52e5b12736dedb2f9898ad731f2e48a6421fcfbf7b90f929dee072fcb SHA512 a691da0c87c443a5e9d23731f4005f27871c5b12bc9102873ffa24d374aa7b9fbd187c4f5635d23fa9ffb17e351e76173c2d3fdf40646e355c4cb314b538de69 DIST gcc-13.2.0-patches-10.tar.xz 45860 BLAKE2B 3c4f8179fc27c31c117bf9260cebbab0805e0977cb41084f2df5c6664121ae67f83deb882572b0bce8d5f20c0ec927eeac43e60d69ce8d4d5a263c1dddedecaf SHA512 4088cc80278826043bc6a9819dfcfa09a251e256eca9a2654f1a83b9b54107ca08fbea0e9ab61593cb0b43fc42a3d87acbe095dc8f806c7010a3ac33148d5c9b DIST gcc-13.2.0-patches-7.tar.xz 37064 BLAKE2B 4a8700a8d44bfaa84926f8bfd0da4c5b0c0377f47fc0679456e909f7c9029b9cf1b72c0ba0bc505d9035d5c38e27f7e5b029727eaf2bc7aca417a6be966b2f43 SHA512 f440c97e6782ecb8581d41608e31a648ac426e2d870bc1d171da7794cdeff2fd0546cae0c7214e72fd3a00ead8a5c66f3f633b670b74553a2f3a40378b51f20c -DIST gcc-14-20231015.tar.xz 86138880 BLAKE2B e6dece3d6c4337c5ac85fec3fcd31117baf06a7c510440d2433d7750d4559ce5ccfb36edf1ed7dd003d55322dccf42ca811f16a9d22b19e3c784f48f804f688d SHA512 e0de6cd24278998138df8ac1e7e0ea2fe8f062f3bd4e1c88be5da3e468959dc3df41f076c1ce1ed6c919a4ddbd6cfff638cd101e6bd6a3a9ae0d67ded360a700 -DIST gcc-14-20231022.tar.xz 86217644 BLAKE2B e3248d78323370e3afa3082e89e507860d45d4eaebdf479edebca71deab1a85a6b27845057090fb155e5e53e5d3eb24647e2482ebf1f63645a73ad3561b26b94 SHA512 bbe013c7d226c64e4b4f95c12464f48177c8dd7acfdd1f6f8f2f650c48a4e11e70b724728accff9f135fc6d234fb7dc01ca20a414468ccf43c2b81d0ddc73e1f -DIST gcc-14-20231029.tar.xz 86262312 BLAKE2B 871b95efa775d4aa12a5224b9dffeb8ffa8fa168275890f651f5868ca7d9ad4a26cda625e69592618e933d8995307dba83aecc7fab82bb6bcc2d81177cbe3d20 SHA512 237533b45de45ff99d93ebba8aa2b410ba9a93d9aa61851a9451696d3cd5ab893361d55809cd41741e356f3f1ee48b6ade2a9fca136dd155b219d3f19ac2b5a1 -DIST gcc-14-20231105.tar.xz 86309008 BLAKE2B b990c5080a80a00bdfe8a838cef9a266b24e8e4204b4c746f4af2cc374ae37a9ce03b3b2a91aa81d9ac09dd005084e48c24591fc160cf3e73a920f6a07dfc40e SHA512 7c2a873fc6a6cfdf64909aeba0c34c98b9901cdbc7b182b1c79c89cb5205fed8ad868e5b2269d06d7415f88a7859420d4dbc5abecd58f2d3c89e9a5eaf3b8a8f +DIST gcc-14-20231119.tar.xz 86333708 BLAKE2B 520c504b931a6cbb3458e4ecbf198af89dd6cdc2133c1ba1854ddc8e079a86bc24ae592d43f7b40b2b45ddfdddd8fad66d2a829195b9e251a4fb5a62cb269712 SHA512 03499b789c8bc75eba4bff8a7d59e5ec490179fc6a740d45696c81a99ab966d8934ad3307672d33f9e35123823f7e36218c1f2ef9be67252d1def55cdfda47da +DIST gcc-14-20231126.tar.xz 86425216 BLAKE2B bd5c18c520fa7de9b9a3c02ed3d49d6771940d5f69e6b2fb52464ef4529f5d97a34f250ebd231749a03250e6ecb29df0ff9d2b1689bc820517a17c08e3fd476f SHA512 6e43f5d2d6072b0c91afb3bee80bd803e946c83095f1b927fdcb3473691bf196bcfc8e4a16b4e15896b5a81b9e6c388bad9a057c01972a7e940d11283f1e18b8 DIST gcc-14.0.0-musl-patches-1.tar.xz 3576 BLAKE2B 692baee8a7709905d53aeb150d73a3721c4ba47ee5f397cfb1b5be905cf003ca02b60c94ee294d90ac39645cd5cdf186c7a3aa950c47d8cf680c128ed705b807 SHA512 0592ab98a7142e404623a6511c67dff61e9ade32c3fb2c0e75b456306e0af3799ad13252b50b3d2fdd31e5815d7f0b16b0ad63ab8386fe4d78729fc9c182d617 -DIST gcc-14.0.0-patches-4.tar.xz 24132 BLAKE2B 95f382ff1232bc681f4fbd28134a5e781bbce0e472d36b9348f54153791ce2b942c9ca3ea0931df8ed5ef48fb0e71f5a5a941e90dfcbd7162f52a4a6a2df9133 SHA512 867c982ee4ce6e10bc76949d30749427e8d070261fd9253cd1ca6b21273f04303c317057176ad7a58ecde06104d295c3af7526151bab7339851f9b06214bba3d -DIST gcc-14.0.0-patches-5.tar.xz 21180 BLAKE2B 4ad48161bb35320141df60b99d2c7791df72f719931a649b45842df2acfb84428815efa11ecad6ff4f219a1fde77ffc5e4ed302e2f8f04e0911f514addb5cc7f SHA512 b47a1bbd7218fe03d6cc4968cb51614c34d1548fa85781c6b85cfa901cd43130f9c503404502c92a629ac6b23559fe3bccf38e3bbcb257524941aaec46774cff -DIST gcc-14.0.0-patches-7.tar.xz 21836 BLAKE2B 315b9b13fa2cd877917f4db3fbba3a6e3fc094688317144e46a9350dfd4823cccc8a33bf10767ee1104ce9708dbe99f0096c9fe4857b80d622b5a8ceb64f5944 SHA512 2277a11d048420f7cc45e01398cc2b5152e6d39cea97c298e144a40926db5b151bf0d07a97a42a78888c9d70481348b7a6d232cdc81e6d5cf7a3dc29172b7bbf -DIST gcc-14.0.0-patches-8.tar.xz 11568 BLAKE2B d73404a6d946782c126a613a205d0cdbd110a6c799dfa2e08eefe3bfe164c04b9d32f1951f839f5a3e8cdc4f0112d2880dbc01bbbcb1ac9dd4ea070a912ad4e2 SHA512 a39346550e15db1ac37acbebe71f1ee92b36f2de5289f680ff68705f7386d0fbe1e73eff0ef0d0719a1a4d37df369041b1a3bf809803cea743c74945c8bf57d1 +DIST gcc-14.0.0-patches-9.tar.xz 11428 BLAKE2B b5f543ab1b8b328e0ddf9e030995757c421a2cd7a5a3f42e82f07dbfc69af5d4a3d4ca28300e81a70d39729c24068e2ab2e00f6030c6ee79c61d52b5f631312c SHA512 dd7f9c4a3cb72911aa0a74826e890200f6c73ed09fb379f79ef3241945841be84f9bd618ed9b457da15cec182205af58dd478d2705ec663f721d9f16ec35293f DIST gcc-8.5.0-patches-4.tar.xz 18616 BLAKE2B 7594cbaea5daecf1a0b3d526c06aeba0a84c6da66aee2e105a51fda6be8d30a37ccc3814281b284a4582d892a1d556bca063551584edfc2525bed8ea5b6888e7 SHA512 1aa5742c361186637e7855f06feb1a4547e7d4d5de6e51f3d049e0ef3c19e2eff179465f52781739f59422035b7f8e4c0efa3844849f920f3c96acfdc37ca6a6 DIST gcc-8.5.0.tar.xz 63841008 BLAKE2B aa81a1a730fd7371360f6abed6ba78b5843fd18c58d5de5687acc320741b9e430e85df3535a1ef7a26051409be8d2f0945f503e5968480d919103123a99d4b12 SHA512 92f599680e6b7fbce88bcdda810f468777d541e5fddfbb287f7977d51093de2a5178bd0e6a08dfe37090ea10a0508a43ccd00220041abbbec33f1179bfc174d8 DIST gcc-9.5.0-patches-2.tar.xz 14324 BLAKE2B 1d3bf3e673108ad2fcdcb86daefb4603d1c9f6aa815e34d1591054d466b76d6f50cce124ab4760528c4951ea16eb00888a3e6485417f81ebf250548732df4a8e SHA512 a6d6f650aaf0bd193a17ac279649f0544a282cea295824384c59341c3000eac4b574b60e00dd427585d928f9768166abf85168b47772132790ad98854acacbbf diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/files/gcc-14.0.0_pre20231015-pycryptodome-ice.patch b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/files/gcc-14.0.0_pre20231015-pycryptodome-ice.patch deleted file mode 100644 index 377f68511f7..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/files/gcc-14.0.0_pre20231015-pycryptodome-ice.patch +++ /dev/null @@ -1,212 +0,0 @@ -https://gcc.gnu.org/PR111845 -https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=f1744dd50bb1661c98b694ff907cb0a1be4f6134 - -From f1744dd50bb1661c98b694ff907cb0a1be4f6134 Mon Sep 17 00:00:00 2001 -From: Jakub Jelinek -Date: Wed, 18 Oct 2023 12:37:40 +0200 -Subject: [PATCH] tree-ssa-math-opts: Fix up match_uaddc_usubc [PR111845] - -GCC ICEs on the first testcase. Successful match_uaddc_usubc ends up with -some dead stmts which DCE will remove (hopefully) later all. -The ICE is because one of the dead stmts refers to a freed SSA_NAME. -The code already gsi_removes a couple of stmts in the - /* Remove some statements which can't be kept in the IL because they - use SSA_NAME whose setter is going to be removed too. */ -section for the same reason (the reason for the freed SSA_NAMEs is that -we don't really have a replacement for those cases - all we have after -a match is combined overflow from the addition/subtraction of 2 operands + a -[0, 1] carry in, but not the individual overflows from the former 2 -additions), but for the last (most significant) limb case, where we try -to match x = op1 + op2 + carry1 + carry2; or -x = op1 - op2 - carry1 - carry2; we just gsi_replace the final stmt, but -left around the 2 temporary stmts as dead; if we were unlucky enough that -those referenced the carry flag that went away, it ICEs. - -So, the following patch remembers those temporary statements (rather than -trying to rediscover them more expensively) and removes them before the -final one is replaced. - -While working on it, I've noticed we didn't support all the reassociated -possibilities of writing the addition of 4 operands or subtracting 3 -operands from one, we supported e.g. -x = ((op1 + op2) + op3) + op4; -x = op1 + ((op2 + op3) + op4); -but not -x = (op1 + (op2 + op3)) + op4; -x = op1 + (op2 + (op3 + op4)); -Fixed by the change to inspect also rhs[2] when rhs[1] didn't yield what -we were searching for (if non-NULL) - rhs[0] is inspected in the first -loop and has different handling for the MINUS_EXPR case. - -2023-10-18 Jakub Jelinek - - PR tree-optimization/111845 - * tree-ssa-math-opts.cc (match_uaddc_usubc): Remember temporary - statements for the 4 operand addition or subtraction of 3 operands - from 1 operand cases and remove them when successful. Look for - nested additions even from rhs[2], not just rhs[1]. - - * gcc.dg/pr111845.c: New test. - * gcc.target/i386/pr111845.c: New test. ---- - gcc/testsuite/gcc.dg/pr111845.c | 16 ++++++++ - gcc/testsuite/gcc.target/i386/pr111845.c | 47 +++++++++++++++++++++++ - gcc/tree-ssa-math-opts.cc | 48 +++++++++++++++--------- - 3 files changed, 94 insertions(+), 17 deletions(-) - create mode 100644 gcc/testsuite/gcc.dg/pr111845.c - create mode 100644 gcc/testsuite/gcc.target/i386/pr111845.c - -diff --git a/gcc/testsuite/gcc.dg/pr111845.c b/gcc/testsuite/gcc.dg/pr111845.c -new file mode 100644 -index 000000000000..1bcb4f88e6f1 ---- /dev/null -+++ b/gcc/testsuite/gcc.dg/pr111845.c -@@ -0,0 +1,16 @@ -+/* PR tree-optimization/111845 */ -+/* { dg-do compile } */ -+/* { dg-options "-O2 --param tree-reassoc-width=2" } */ -+ -+int a, b; -+unsigned int c, d, e; -+ -+void -+foo (int x) -+{ -+ b += d; -+ c += b < d; -+ b += e = a < x; -+ c += b; -+ c += b < e; -+} -diff --git a/gcc/testsuite/gcc.target/i386/pr111845.c b/gcc/testsuite/gcc.target/i386/pr111845.c -new file mode 100644 -index 000000000000..d52110a40422 ---- /dev/null -+++ b/gcc/testsuite/gcc.target/i386/pr111845.c -@@ -0,0 +1,47 @@ -+/* PR tree-optimization/111845 */ -+/* { dg-do compile } */ -+/* { dg-options "-O2 -g -masm=att" } */ -+/* { dg-final { scan-assembler-times "\tadcq\t" 8 { target lp64 } } } */ -+/* { dg-final { scan-assembler-times "\tadcl\t" 8 { target ia32 } } } */ -+ -+unsigned long l, m; -+ -+__attribute__((noipa)) void -+foo (unsigned long x, unsigned long y, unsigned long h, unsigned long i, int a, int b) -+{ -+ unsigned long c, d; -+ unsigned long e = __builtin_add_overflow (x, y, &c); -+ unsigned long f = __builtin_add_overflow (c, a < b, &d); -+ m = ((h + i) + e) + f; -+ l = d; -+} -+ -+__attribute__((noipa)) void -+bar (unsigned long x, unsigned long y, unsigned long h, unsigned long i, int a, int b) -+{ -+ unsigned long c, d; -+ unsigned long e = __builtin_add_overflow (x, y, &c); -+ unsigned long f = __builtin_add_overflow (c, a < b, &d); -+ m = (h + (i + e)) + f; -+ l = d; -+} -+ -+__attribute__((noipa)) void -+baz (unsigned long x, unsigned long y, unsigned long h, unsigned long i, int a, int b) -+{ -+ unsigned long c, d; -+ unsigned long e = __builtin_add_overflow (x, y, &c); -+ unsigned long f = __builtin_add_overflow (c, a < b, &d); -+ m = h + (i + (e + f)); -+ l = d; -+} -+ -+__attribute__((noipa)) void -+qux (unsigned long x, unsigned long y, unsigned long h, unsigned long i, int a, int b) -+{ -+ unsigned long c, d; -+ unsigned long e = __builtin_add_overflow (x, y, &c); -+ unsigned long f = __builtin_add_overflow (c, a < b, &d); -+ m = h + ((i + e) + f); -+ l = d; -+} -diff --git a/gcc/tree-ssa-math-opts.cc b/gcc/tree-ssa-math-opts.cc -index 51c14d6bad9f..363f31646691 100644 ---- a/gcc/tree-ssa-math-opts.cc -+++ b/gcc/tree-ssa-math-opts.cc -@@ -4581,6 +4581,7 @@ match_uaddc_usubc (gimple_stmt_iterator *gsi, gimple *stmt, tree_code code) - if (!INTEGRAL_TYPE_P (type) || !TYPE_UNSIGNED (type)) - return false; - -+ auto_vec temp_stmts; - if (code != BIT_IOR_EXPR && code != BIT_XOR_EXPR) - { - /* If overflow flag is ignored on the MSB limb, we can end up with -@@ -4615,26 +4616,29 @@ match_uaddc_usubc (gimple_stmt_iterator *gsi, gimple *stmt, tree_code code) - rhs[0] = gimple_assign_rhs1 (g); - tree &r = rhs[2] ? rhs[3] : rhs[2]; - r = r2; -+ temp_stmts.quick_push (g); - } - else - break; - } -- while (TREE_CODE (rhs[1]) == SSA_NAME && !rhs[3]) -- { -- gimple *g = SSA_NAME_DEF_STMT (rhs[1]); -- if (has_single_use (rhs[1]) -- && is_gimple_assign (g) -- && gimple_assign_rhs_code (g) == PLUS_EXPR) -- { -- rhs[1] = gimple_assign_rhs1 (g); -- if (rhs[2]) -- rhs[3] = gimple_assign_rhs2 (g); -- else -- rhs[2] = gimple_assign_rhs2 (g); -- } -- else -- break; -- } -+ for (int i = 1; i <= 2; ++i) -+ while (rhs[i] && TREE_CODE (rhs[i]) == SSA_NAME && !rhs[3]) -+ { -+ gimple *g = SSA_NAME_DEF_STMT (rhs[i]); -+ if (has_single_use (rhs[i]) -+ && is_gimple_assign (g) -+ && gimple_assign_rhs_code (g) == PLUS_EXPR) -+ { -+ rhs[i] = gimple_assign_rhs1 (g); -+ if (rhs[2]) -+ rhs[3] = gimple_assign_rhs2 (g); -+ else -+ rhs[2] = gimple_assign_rhs2 (g); -+ temp_stmts.quick_push (g); -+ } -+ else -+ break; -+ } - /* If there are just 3 addends or one minuend and two subtrahends, - check for UADDC or USUBC being pattern recognized earlier. - Say r = op1 + op2 + ovf1 + ovf2; where the (ovf1 + ovf2) part -@@ -5039,7 +5043,17 @@ match_uaddc_usubc (gimple_stmt_iterator *gsi, gimple *stmt, tree_code code) - g = gimple_build_assign (ilhs, IMAGPART_EXPR, - build1 (IMAGPART_EXPR, TREE_TYPE (ilhs), nlhs)); - if (rhs[2]) -- gsi_insert_before (gsi, g, GSI_SAME_STMT); -+ { -+ gsi_insert_before (gsi, g, GSI_SAME_STMT); -+ /* Remove some further statements which can't be kept in the IL because -+ they can use SSA_NAMEs whose setter is going to be removed too. */ -+ while (temp_stmts.length ()) -+ { -+ g = temp_stmts.pop (); -+ gsi2 = gsi_for_stmt (g); -+ gsi_remove (&gsi2, true); -+ } -+ } - else - gsi_replace (gsi, g, true); - /* Remove some statements which can't be kept in the IL because they --- -2.39.3 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/files/gcc-14.0.0_pre20231022-PR111860.patch b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/files/gcc-14.0.0_pre20231022-PR111860.patch deleted file mode 100644 index 42deb046d0f..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/files/gcc-14.0.0_pre20231022-PR111860.patch +++ /dev/null @@ -1,129 +0,0 @@ -https://gcc.gnu.org/PR111860 -https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=9ed6b22eb4188c57bb3f5cdba5a7effa95395186 - -From 9ed6b22eb4188c57bb3f5cdba5a7effa95395186 Mon Sep 17 00:00:00 2001 -From: Tamar Christina -Date: Mon, 23 Oct 2023 14:07:20 +0100 -Subject: [PATCH] middle-end: don't keep .MEM guard nodes for PHI nodes who - dominate loop [PR111860] - -The previous patch tried to remove PHI nodes that dominated the first loop, -however the correct fix is to only remove .MEM nodes. - -This patch thus makes the condition a bit stricter and only tries to remove -MEM phi nodes. - -I couldn't figure out a way to easily determine if a particular PHI is vUSE -related, so the patch does: - -1. check if the definition is a vDEF and not defined in main loop. -2. check if the definition is a PHI and not defined in main loop. -3. check if the definition is a default definition. - -For no 2 and 3 we may misidentify the PHI, in both cases the value is defined -outside of the loop version block which also makes it ok to remove. - -gcc/ChangeLog: - - PR tree-optimization/111860 - * tree-vect-loop-manip.cc (slpeel_tree_duplicate_loop_to_edge_cfg): - Drop .MEM nodes only. - -gcc/testsuite/ChangeLog: - - PR tree-optimization/111860 - * gcc.dg/vect/pr111860-2.c: New test. - * gcc.dg/vect/pr111860-3.c: New test. ---- - gcc/testsuite/gcc.dg/vect/pr111860-2.c | 17 +++++++++++++++++ - gcc/testsuite/gcc.dg/vect/pr111860-3.c | 17 +++++++++++++++++ - gcc/tree-vect-loop-manip.cc | 21 ++++++++++++++++++++- - 3 files changed, 54 insertions(+), 1 deletion(-) - create mode 100644 gcc/testsuite/gcc.dg/vect/pr111860-2.c - create mode 100644 gcc/testsuite/gcc.dg/vect/pr111860-3.c - -diff --git a/gcc/testsuite/gcc.dg/vect/pr111860-2.c b/gcc/testsuite/gcc.dg/vect/pr111860-2.c -new file mode 100644 -index 000000000000..07f64ffb5318 ---- /dev/null -+++ b/gcc/testsuite/gcc.dg/vect/pr111860-2.c -@@ -0,0 +1,17 @@ -+/* { dg-do compile } */ -+/* { dg-options "-O -fno-tree-sink -ftree-vectorize" } */ -+int buffer_ctrl_ctx_0, buffer_ctrl_p1, buffer_ctrl_cmd; -+ -+int -+buffer_ctrl (long ret, int i) -+{ -+ switch (buffer_ctrl_cmd) -+ { -+ case 1: -+ buffer_ctrl_ctx_0 = 0; -+ for (; i; i++) -+ if (buffer_ctrl_p1) -+ ret++; -+ } -+ return ret; -+} -diff --git a/gcc/testsuite/gcc.dg/vect/pr111860-3.c b/gcc/testsuite/gcc.dg/vect/pr111860-3.c -new file mode 100644 -index 000000000000..07f64ffb5318 ---- /dev/null -+++ b/gcc/testsuite/gcc.dg/vect/pr111860-3.c -@@ -0,0 +1,17 @@ -+/* { dg-do compile } */ -+/* { dg-options "-O -fno-tree-sink -ftree-vectorize" } */ -+int buffer_ctrl_ctx_0, buffer_ctrl_p1, buffer_ctrl_cmd; -+ -+int -+buffer_ctrl (long ret, int i) -+{ -+ switch (buffer_ctrl_cmd) -+ { -+ case 1: -+ buffer_ctrl_ctx_0 = 0; -+ for (; i; i++) -+ if (buffer_ctrl_p1) -+ ret++; -+ } -+ return ret; -+} -diff --git a/gcc/tree-vect-loop-manip.cc b/gcc/tree-vect-loop-manip.cc -index d67c94700144..43ca985c53ce 100644 ---- a/gcc/tree-vect-loop-manip.cc -+++ b/gcc/tree-vect-loop-manip.cc -@@ -1626,12 +1626,31 @@ slpeel_tree_duplicate_loop_to_edge_cfg (class loop *loop, edge loop_exit, - edge temp_e = redirect_edge_and_branch (exit, new_preheader); - flush_pending_stmts (temp_e); - } -- - /* Record the new SSA names in the cache so that we can skip materializing - them again when we fill in the rest of the LCSSA variables. */ - for (auto phi : new_phis) - { - tree new_arg = gimple_phi_arg (phi, 0)->def; -+ -+ if (!SSA_VAR_P (new_arg)) -+ continue; -+ /* If the PHI MEM node dominates the loop then we shouldn't create -+ a new LC-SSSA PHI for it in the intermediate block. */ -+ /* A MEM phi that consitutes a new DEF for the vUSE chain can either -+ be a .VDEF or a PHI that operates on MEM. And said definition -+ must not be inside the main loop. Or we must be a parameter. -+ In the last two cases we may remove a non-MEM PHI node, but since -+ they dominate both loops the removal is unlikely to cause trouble -+ as the exits must already be using them. */ -+ if (virtual_operand_p (new_arg) -+ && (SSA_NAME_IS_DEFAULT_DEF (new_arg) -+ || !flow_bb_inside_loop_p (loop, -+ gimple_bb (SSA_NAME_DEF_STMT (new_arg))))) -+ { -+ auto gsi = gsi_for_stmt (phi); -+ remove_phi_node (&gsi, true); -+ continue; -+ } - new_phi_args.put (new_arg, gimple_phi_result (phi)); - - if (TREE_CODE (new_arg) != SSA_NAME) --- -2.39.3 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-10.4.1_p20230426-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-10.4.1_p20230426-r1.ebuild deleted file mode 100644 index fd84792d2c9..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-10.4.1_p20230426-r1.ebuild +++ /dev/null @@ -1,59 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="10.5.0" -PATCH_VER="6" -MUSL_VER="2" -MUSL_GCC_VER="10.5.0" - -if [[ ${PV} == *.9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=1 - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$((${MY_PV_2} - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=releases/gcc-$(ver_cut 1) -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" -fi - -RDEPEND="" -BDEPEND="${CATEGORY}/binutils" - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - if has_version '>=sys-libs/glibc-2.32-r1'; then - rm -v "${WORKDIR}/patch/23_all_disable-riscv32-ABIs.patch" || die - fi - - toolchain_src_prepare -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.3.1_p20230427.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.3.1_p20230427.ebuild deleted file mode 100644 index 0b049cfd0a8..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.3.1_p20230427.ebuild +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="11.4.0" -PATCH_VER="9" -MUSL_VER="2" -MUSL_GCC_VER="11.4.0" - -if [[ ${PV} == *.9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=1 - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$((${MY_PV_2} - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=releases/gcc-$(ver_cut 1) -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" - BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20231026.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20231026.ebuild deleted file mode 100644 index 02c58f02f0a..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20231026.ebuild +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="11.4.0" -PATCH_VER="10" -MUSL_VER="2" -MUSL_GCC_VER="11.4.0" - -if [[ ${PV} == *.9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=1 - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$((${MY_PV_2} - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=releases/gcc-$(ver_cut 1) -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" - BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20231102.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20231102.ebuild deleted file mode 100644 index 02c58f02f0a..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20231102.ebuild +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="11.4.0" -PATCH_VER="10" -MUSL_VER="2" -MUSL_GCC_VER="11.4.0" - -if [[ ${PV} == *.9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=1 - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$((${MY_PV_2} - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=releases/gcc-$(ver_cut 1) -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" - BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20231012.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20231116.ebuild similarity index 100% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20231012.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20231116.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20231019.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20231123.ebuild similarity index 100% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20231019.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-11.4.1_p20231123.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20230526.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20230526.ebuild deleted file mode 100644 index d1ff9bb6832..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20230526.ebuild +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="12.3.0" -PATCH_VER="2" -MUSL_VER="1" -MUSL_GCC_VER="12.3.0" - -if [[ ${PV} == *.9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=1 - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$((${MY_PV_2} - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=releases/gcc-$(ver_cut 1) -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~riscv ~s390 sparc x86" -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" - BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231020.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231020.ebuild deleted file mode 100644 index 1ffe2b97a4b..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231020.ebuild +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="12.3.0" -PATCH_VER="2" -MUSL_VER="1" -MUSL_GCC_VER="12.3.0" - -if [[ ${PV} == *.9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=1 - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$((${MY_PV_2} - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=releases/gcc-$(ver_cut 1) -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" - BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231027.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231027.ebuild deleted file mode 100644 index 1ffe2b97a4b..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231027.ebuild +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="12.3.0" -PATCH_VER="2" -MUSL_VER="1" -MUSL_GCC_VER="12.3.0" - -if [[ ${PV} == *.9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=1 - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$((${MY_PV_2} - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=releases/gcc-$(ver_cut 1) -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" - BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231103.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231103.ebuild deleted file mode 100644 index 1ffe2b97a4b..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231103.ebuild +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="12.3.0" -PATCH_VER="2" -MUSL_VER="1" -MUSL_GCC_VER="12.3.0" - -if [[ ${PV} == *.9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=1 - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$((${MY_PV_2} - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=releases/gcc-$(ver_cut 1) -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" - BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231006.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231117.ebuild similarity index 100% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231006.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231117.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231013.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231124.ebuild similarity index 100% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231013.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-12.3.1_p20231124.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.2.1_p20231104.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.2.1_p20231104.ebuild deleted file mode 100644 index 905d93979f4..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.2.1_p20231104.ebuild +++ /dev/null @@ -1,65 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="13.2.0" -PATCH_VER="10" -MUSL_VER="2" -MUSL_GCC_VER="13.2.0" - -if [[ ${PV} == *.9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=1 - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$((${MY_PV_2} - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=releases/gcc-$(ver_cut 1) -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" - BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply "${FILESDIR}"/${PN}-13-fix-cross-fixincludes.patch - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.2.1_p20231021.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.2.1_p20231118.ebuild similarity index 100% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.2.1_p20231021.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.2.1_p20231118.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.2.1_p20231028.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.2.1_p20231125.ebuild similarity index 100% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.2.1_p20231028.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-13.2.1_p20231125.ebuild diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231015-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231015-r1.ebuild deleted file mode 100644 index 84b65f32fd8..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231015-r1.ebuild +++ /dev/null @@ -1,65 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="14.0.0" -PATCH_VER="5" -MUSL_VER="1" -MUSL_GCC_VER="14.0.0" - -if [[ ${PV} == *.9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=1 - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$((${MY_PV_2} - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=master -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" - BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply "${FILESDIR}"/${P}-pycryptodome-ice.patch - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231015.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231015.ebuild deleted file mode 100644 index 8100ea5656f..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231015.ebuild +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="14.0.0" -PATCH_VER="4" -MUSL_VER="1" -MUSL_GCC_VER="14.0.0" - -if [[ ${PV} == *.9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=1 - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$((${MY_PV_2} - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=master -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" - BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231022-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231022-r1.ebuild deleted file mode 100644 index 43d107eab91..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231022-r1.ebuild +++ /dev/null @@ -1,65 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="14.0.0" -PATCH_VER="7" -MUSL_VER="1" -MUSL_GCC_VER="14.0.0" - -if [[ ${PV} == *.9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=1 - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$((${MY_PV_2} - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=master -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" - BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply "${FILESDIR}"/${P}-PR111860.patch - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231022.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231022.ebuild deleted file mode 100644 index a7f77ac3fa0..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231022.ebuild +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -TOOLCHAIN_PATCH_DEV="sam" -PATCH_GCC_VER="14.0.0" -PATCH_VER="7" -MUSL_VER="1" -MUSL_GCC_VER="14.0.0" - -if [[ ${PV} == *.9999 ]] ; then - MY_PV_2=$(ver_cut 2) - MY_PV_3=1 - if [[ ${MY_PV_2} == 0 ]] ; then - MY_PV_2=0 - MY_PV_3=0 - else - MY_PV_2=$((${MY_PV_2} - 1)) - fi - - # e.g. 12.2.9999 -> 12.1.1 - TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} -elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then - # Cheesy hack for RCs - MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) - MY_P=${PN}-${MY_PV} - GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" - TOOLCHAIN_SET_S=no - S="${WORKDIR}"/${MY_P} -fi - -inherit toolchain - -if tc_is_live ; then - # Needs to be after inherit (for now?), bug #830908 - EGIT_BRANCH=master -elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then - # Don't keyword live ebuilds - #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - :; -fi - -if [[ ${CATEGORY} != cross-* ]] ; then - # Technically only if USE=hardened *too* right now, but no point in complicating it further. - # If GCC is enabling CET by default, we need glibc to be built with support for it. - # bug #830454 - RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" - DEPEND="${RDEPEND}" - BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" -fi - -src_prepare() { - local p upstreamed_patches=( - # add them here - ) - for p in "${upstreamed_patches[@]}"; do - rm -v "${WORKDIR}/patch/${p}" || die - done - - toolchain_src_prepare - - eapply_user -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231029.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231119.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231029.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231119.ebuild index a7f77ac3fa0..b3130a67831 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231029.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231119.ebuild @@ -5,7 +5,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" PATCH_GCC_VER="14.0.0" -PATCH_VER="7" +PATCH_VER="9" MUSL_VER="1" MUSL_GCC_VER="14.0.0" diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231105.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231126.ebuild similarity index 99% rename from sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231105.ebuild rename to sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231126.ebuild index b8c8acca5b2..b3130a67831 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231105.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gcc/gcc-14.0.0_pre20231126.ebuild @@ -5,7 +5,7 @@ EAPI=8 TOOLCHAIN_PATCH_DEV="sam" PATCH_GCC_VER="14.0.0" -PATCH_VER="8" +PATCH_VER="9" MUSL_VER="1" MUSL_GCC_VER="14.0.0" diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gdb/gdb-13.2.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gdb/gdb-13.2.ebuild deleted file mode 100644 index 8ca46ea15fc..00000000000 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gdb/gdb-13.2.ebuild +++ /dev/null @@ -1,312 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# See https://sourceware.org/gdb/wiki/DistroAdvice for general packaging -# tips & notes. - -PYTHON_COMPAT=( python3_{10..11} ) -inherit flag-o-matic python-single-r1 strip-linguas toolchain-funcs - -export CTARGET=${CTARGET:-${CHOST}} - -if [[ ${CTARGET} == ${CHOST} ]] ; then - if [[ ${CATEGORY} == cross-* ]] ; then - export CTARGET=${CATEGORY#cross-} - fi -fi - -is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; } - -case ${PV} in - 9999*) - # live git tree - EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git" - inherit git-r3 - SRC_URI="" - ;; - *.*.50_p2???????|*.*.90_p2???????) - # Weekly snapshots - MY_PV="${PV/_p/.}" - SRC_URI=" - https://sourceware.org/pub/gdb/snapshots/branch/gdb-weekly-${MY_PV}.tar.xz - https://sourceware.org/pub/gdb/snapshots/current/gdb-weekly-${MY_PV}.tar.xz - https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/gdb-weekly-${MY_PV}.tar.xz - " - S="${WORKDIR}/${PN}-${MY_PV}" - - # e.g. 13.1.90_p20230325 is a snapshot on the stable branch, so it's fine - if [[ ${PV} == *.[123456789].9?_p2??????? ]] ; then - REGULAR_RELEASE=1 - fi - ;; - *.*.9?) - # Prereleases - MY_PV="${PV/_p/.}" - SRC_URI=" - https://sourceware.org/pub/gdb/snapshots/branch/gdb-${MY_PV}.tar.xz - https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/gdb-${MY_PV}.tar.xz - " - S="${WORKDIR}/${PN}-${MY_PV}" - ;; - *) - # Normal upstream release - SRC_URI=" - mirror://gnu/gdb/${P}.tar.xz - https://sourceware.org/pub/gdb/releases/${P}.tar.xz - " - - REGULAR_RELEASE=1 -esac - -PATCH_DEV="" -PATCH_VER="" -DESCRIPTION="GNU debugger" -HOMEPAGE="https://sourceware.org/gdb/" -SRC_URI=" - ${SRC_URI} - ${PATCH_DEV:+https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${CATEGORY}/${PN}/${P}-patches-${PATCH_VER}.tar.xz} - ${PATCH_VER:+mirror://gentoo/${P}-patches-${PATCH_VER}.tar.xz} -" - -LICENSE="GPL-3+ LGPL-2.1+" -SLOT="0" -IUSE="cet 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 ~ia64 ~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 )" - -RDEPEND=" - dev-libs/mpfr:= - dev-libs/gmp:= - >=sys-libs/ncurses-5.2-r2:= - >=sys-libs/readline-7:= - sys-libs/zlib - elibc_glibc? ( net-libs/libnsl:= ) - lzma? ( app-arch/xz-utils ) - python? ( ${PYTHON_DEPS} ) - guile? ( >=dev-scheme/guile-2.0 ) - xml? ( dev-libs/expat ) - source-highlight? ( - dev-util/source-highlight - ) - xxhash? ( - dev-libs/xxhash - ) - zstd? ( app-arch/zstd:= ) -" -DEPEND="${RDEPEND}" -BDEPEND=" - app-arch/xz-utils - sys-apps/texinfo - app-alternatives/yacc - nls? ( sys-devel/gettext ) - source-highlight? ( virtual/pkgconfig ) - test? ( dev-util/dejagnu ) -" - -PATCHES=( - "${FILESDIR}"/${PN}-8.3.1-verbose-build.patch -) - -pkg_setup() { - use python && python-single-r1_pkg_setup -} - -src_prepare() { - default - - strip-linguas -u bfd/po opcodes/po - - # Avoid using ancient termcap from host on Prefix systems - sed -i -e 's/termcap tinfow/tinfow/g' \ - gdb/configure{.ac,} || die -} - -gdb_branding() { - printf "Gentoo ${PV} " - - if ! use vanilla && [[ -n ${PATCH_VER} ]] ; then - printf "p${PATCH_VER}" - else - printf "vanilla" - fi - - [[ -n ${EGIT_COMMIT} ]] && printf " ${EGIT_COMMIT}" -} - -src_configure() { - strip-unsupported-flags - - # See https://www.gnu.org/software/make/manual/html_node/Parallel-Output.html - # Avoid really confusing logs from subconfigure spam, makes logs far - # more legible. - MAKEOPTS="--output-sync=line ${MAKEOPTS}" - - local myconf=( - # portage's econf() does not detect presence of --d-d-t - # because it greps only top-level ./configure. But not - # gnulib's or gdb's configure. - --disable-dependency-tracking - - --with-pkgversion="$(gdb_branding)" - --with-bugurl='https://bugs.gentoo.org/' - --disable-werror - # Disable modules that are in a combined binutils/gdb tree. bug #490566 - --disable-{binutils,etc,gas,gold,gprof,gprofng,ld} - - # avoid automagic dependency on (currently prefix) systems - # systems with debuginfod library, bug #754753 - --without-debuginfod - - $(use_enable test unit-tests) - - # Allow user to opt into CET for host libraries. - # Ideally we would like automagic-or-disabled here. - # But the check does not quite work on i686: bug #760926. - $(use_enable cet) - - # Helps when cross-compiling. Not to be confused with --with-sysroot. - --with-build-sysroot="${ESYSROOT}" - ) - - is_cross && myconf+=( - --with-sysroot="\${prefix}/${CTARGET}" - --includedir="\${prefix}/include/${CTARGET}" - --with-gdb-datadir="\${datadir}/gdb/${CTARGET}" - ) - - # gdbserver only works for native targets (CHOST==CTARGET). - # it also doesn't support all targets, so rather than duplicate - # the target list (which changes between versions), use the - # "auto" value when things are turned on, which is triggered - # whenever no --enable or --disable is given - if is_cross || use !server ; then - myconf+=( --disable-gdbserver ) - fi - - myconf+=( - --enable-64-bit-bfd - --disable-install-libbfd - --disable-install-libiberty - --enable-obsolete - # This only disables building in the readline subdir. - # For gdb itself, it'll use the system version. - --disable-readline - --with-system-readline - # This only disables building in the zlib subdir. - # For gdb itself, it'll use the system version. - --without-zlib - --with-system-zlib - --with-separate-debug-dir="${EPREFIX}"/usr/lib/debug - $(use_with xml expat) - $(use_with lzma) - $(use_enable nls) - $(use_enable sim) - $(use_enable source-highlight) - $(use multitarget && echo --enable-targets=all) - $(use_with python python "${EPYTHON}") - $(use_with xxhash) - $(use_with guile) - $(use_with zstd) - - # Find libraries using the toolchain sysroot rather than the configured - # prefix. Needed when cross-compiling. - # - # Check which libraries to apply this to with: - # "${S}"/gdb/configure --help | grep without-lib | sort - --without-lib{babeltrace,expat,gmp,iconv,ipt,lzma,mpfr,xxhash}-prefix - ) - - # source-highlight is detected with pkg-config: bug #716558 - export ac_cv_path_pkg_config_prog_path="$(tc-getPKG_CONFIG)" - - export CC_FOR_BUILD="$(tc-getBUILD_CC)" - - # ensure proper compiler is detected for Clang builds: bug #831202 - export GCC_FOR_TARGET="${CC_FOR_TARGET:-$(tc-getCC)}" - - econf "${myconf[@]}" -} - -src_compile() { - emake V=1 -} - -src_test() { - # Run the unittests (nabbed invocation from Fedora's spec file) at least - emake -k -C gdb run GDBFLAGS='-batch -ex "maintenance selftest"' - - # Too many failures - # In fact, gdb's test suite needs some work to get passing. - # See e.g. https://sourceware.org/gdb/wiki/TestingGDB. - # As of 11.2, on amd64: "# of unexpected failures 8600" - # Also, ia64 kernel crashes when gdb testsuite is running. - #emake -k check -} - -src_install() { - emake V=1 DESTDIR="${D}" install - - find "${ED}"/usr -name libiberty.a -delete || die - - # Delete translations that conflict with binutils-libs. bug #528088 - # Note: Should figure out how to store these in an internal gdb dir. - if use nls ; then - find "${ED}" \ - -regextype posix-extended -regex '.*/(bfd|opcodes)[.]g?mo$' \ - -delete || die - fi - - # Don't install docs when building a cross-gdb - if [[ ${CTARGET} != ${CHOST} ]] ; then - rm -rf "${ED}"/usr/share/{doc,info,locale} || die - local f - for f in "${ED}"/usr/share/man/*/* ; do - if [[ ${f##*/} != ${CTARGET}-* ]] ; then - mv "${f}" "${f%/*}/${CTARGET}-${f##*/}" || die - fi - done - return 0 - fi - - # Install it by hand for now: - # https://sourceware.org/ml/gdb-patches/2011-12/msg00915.html - # Only install if it exists due to the twisted behavior (see - # notes in src_configure above). - [[ -e gdbserver/gdbreplay ]] && dobin gdbserver/gdbreplay - - docinto gdb - dodoc gdb/CONTRIBUTE gdb/README gdb/MAINTAINERS \ - gdb/NEWS gdb/PROBLEMS - docinto sim - dodoc sim/{MAINTAINERS,README-HACKING} - - if use server ; then - docinto gdbserver - dodoc gdbserver/README - fi - - # Remove shared info pages - rm -f "${ED}"/usr/share/info/{annotate,bfd,configure,ctf-spec,standards}.info* - - if use python ; then - python_optimize "${ED}"/usr/share/gdb/python/gdb - fi -} - -pkg_postinst() { - # Portage doesn't unmerge files in /etc - rm -vf "${EROOT}"/etc/skel/.gdbinit - - if use prefix && [[ ${CHOST} == *-darwin* ]] ; then - ewarn "gdb is unable to get a mach task port when installed by Prefix" - ewarn "Portage, unprivileged. To make gdb fully functional you'll" - ewarn "have to perform the following steps:" - ewarn " % sudo chgrp procmod ${EPREFIX}/usr/bin/gdb" - ewarn " % sudo chmod g+s ${EPREFIX}/usr/bin/gdb" - fi -} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/Manifest b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/Manifest index df54eec48fc..65aab49491b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/Manifest @@ -4,5 +4,7 @@ DIST gettext-0.22.2.tar.xz 10238092 BLAKE2B 337597432af11ba082354e968fa7dd95aa6b DIST gettext-0.22.2.tar.xz.sig 833 BLAKE2B 47a3480c6ec5b379e2262588a358e69560477c5e8cdc13d82f879bf1c2381c4b176060e6e1d482b0a9b17d497ff5e7c1642646489f3829c879340b939d51de5c SHA512 b40f233d64001b13ab5d5b85bc87424bc873cbbd6e59e797997ed39404325a5a2dc945f7b6a3dfc25becaff788d5dd644779bf505d5141bfa437882931dcf22c DIST gettext-0.22.3.tar.xz 10236340 BLAKE2B 567945a9554f14729835b63587d0ae1e8c1a4538ec039243b525abe4bff9a30cd02d0ddb12f3475f27c6a2a0c6647e52201f2ea34ba60d1867c063c653718785 SHA512 ccfd17d664f02da58b91623845fde23b9763442cb988be979d814aff66d774db87ed7d8b27dcce84bf8f118d85d34f4782ce451c5d3cb5a9484161ba2c3f4209 DIST gettext-0.22.3.tar.xz.sig 833 BLAKE2B a329a9b6d9bc8e7dfc4bda748624649f1a4d66fbe5ab4e61038e0e931d5838448bfd93a093b5f4fff8e86f446683ca660f47d8bfd2a0dc27f52f575daaa116ef SHA512 fd3fdbd78e5f86dd1e5d149cac7e7f1ee6c553e1c703bb141906116cb6e8603042128aa64a9dfc06c51841c5748c532219337735911e55c7c99306099fd5d719 +DIST gettext-0.22.4.tar.xz 10255384 BLAKE2B 3f93aa5aef8e40d2e01acaa5aeed11efefd0de43ea26d084a0b9e743019685f7584d8e1bf05c1fd5772a5576d21ee1f052b81366f52c7827b6d14bd4d9890edc SHA512 0f3620b1621b85b3df9e372885c2f040c8a91ec0b2d4e16978459a8a2a152318a0e6f5fefb8d971bad80c437e7ee8ac8c24edc4de0ab86e729528b8a2ac62c51 +DIST gettext-0.22.4.tar.xz.sig 833 BLAKE2B fbb00b53c807934a11263c120861971fffebbd39689eda1fae0fb956476e69c3fb6799440cbf3acfcf43ecea2c134ea4dadb95becbac98badb43e546f3c8e9fb SHA512 a774c98de643b1ea3df645e451878652c2baa5cd786642aa457e6d5f5c44787cb1231eb15ad4390acdf314822633acaffffaa853eb69cbbc72c3b79b547a8854 DIST gettext-0.22.tar.xz 10008808 BLAKE2B e91c82eb793897bd7ed727503e9d6e72a47027adf51ca76cf5c936437c434e910508814b1d03b12694c5e87156018683cb2c8cc51637b121313ed41155bcd3e5 SHA512 c6368344aa4e0f6fd7c4a93023a5f7b377c7bb97b8ea688fd54f4c385c069d9ff27611d8763b1aed6328b6d3c4db7b34bd89bfbf6525ecaef11eb58434a4d4fa DIST gettext-0.22.tar.xz.sig 833 BLAKE2B d1718f02100abc2c7c67e5c6a49000baee5244030fcef33f099fac255562211332b0c7838d329e2cdd2c99c5b4e5d4bfed6da81cdddd86a4adf9f24f626c8704 SHA512 2d4f0ea68150aa9f7da315545bd782f0c74d581ec89f60ca5138d069cc6ef0296f85df6e05f0c7f030dc8660a8db32529d237497473f6cef7c72034adcc58a9b diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.22.4.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.22.4.ebuild new file mode 100644 index 00000000000..72915a2c049 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/gettext/gettext-0.22.4.ebuild @@ -0,0 +1,189 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Note: Keep version bumps in sync with dev-libs/libintl. + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gettext.asc +inherit java-pkg-opt-2 libtool multilib-minimal verify-sig toolchain-funcs + +DESCRIPTION="GNU locale utilities" +HOMEPAGE="https://www.gnu.org/software/gettext/" + +if [[ ${PV} == *_rc* ]] ; then + SRC_URI=" + https://alpha.gnu.org/gnu/${PN}/${P/_/-}.tar.xz + verify-sig? ( https://alpha.gnu.org/gnu/${PN}/${P/_/-}.tar.xz.sig ) + " + S="${WORKDIR}/${P/_/-}" +else + SRC_URI=" + mirror://gnu/${PN}/${P}.tar.xz + verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig ) + " + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi + +# Only libasprintf is under the LGPL (and libintl is in a sep package), +# so put that license behind USE=cxx. +LICENSE="GPL-3+ cxx? ( LGPL-2.1+ )" +SLOT="0" +IUSE="acl +cxx doc emacs git java ncurses nls openmp static-libs xattr" + +# only runtime goes multilib +# Note: The version of libxml2 corresponds to the version bundled via gnulib. +# If the build detects too old of a system version, it will end up falling back +# to the bundled copy. #596918 +# Note: expat lacks a subslot because it is dynamically loaded at runtime. We +# would depend on older subslots if they were available (based on the ABIs that +# are explicitly handled), but expat doesn't currently use subslots. +DEPEND=" + >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] + >=virtual/libintl-0-r2[${MULTILIB_USEDEP}] + >=dev-libs/libxml2-2.9.3:= + dev-libs/expat + acl? ( virtual/acl ) + ncurses? ( sys-libs/ncurses:= ) + java? ( virtual/jdk:1.8 ) + xattr? ( sys-apps/attr ) +" +RDEPEND=" + ${DEPEND} + git? ( dev-vcs/git ) + java? ( virtual/jre:1.8 ) +" +BDEPEND=" + git? ( dev-vcs/git ) + verify-sig? ( sec-keys/openpgp-keys-gettext ) +" +PDEPEND="emacs? ( app-emacs/po-mode )" + +MULTILIB_WRAPPED_HEADERS=( + # only installed for native ABI + /usr/include/gettext-po.h + + /usr/include/autosprintf.h + /usr/include/textstyle.h + /usr/include/textstyle/stdbool.h + /usr/include/textstyle/version.h + /usr/include/textstyle/woe32dll.h +) + +PATCHES=( + "${FILESDIR}"/${PN}-0.21-CVE-2020-12825.patch +) + +QA_SONAME_NO_SYMLINK=".*/preloadable_libintl.so" + +pkg_pretend() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp +} + +pkg_setup() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp + java-pkg-opt-2_pkg_setup +} + +src_prepare() { + java-pkg-opt-2_src_prepare + + default + + # gettext-0.21.1-java-autoconf.patch changes + # gettext-{runtime,tools}/configure.ac and the corresponding + # configure scripts. Avoid regenerating other autotools output. + #touch -c gettext-{runtime,tools}/{aclocal.m4,Makefile.in,config.h.in,configure} || die + # Makefile.am adds a dependency on gettext-{runtime,tools}/configure.ac + #touch -c configure || die + + elibtoolize + + if use elibc_musl || use elibc_Darwin; then + eapply "${FILESDIR}"/${PN}-0.21-musl-omit_setlocale_lock.patch + fi +} + +multilib_src_configure() { + local myconf=( + # switches common to runtime and top-level + --cache-file="${BUILD_DIR}"/config.cache + #--docdir="\$(datarootdir)/doc/${PF}" + + # Emacs support is now in a separate package + --without-emacs + --without-lispdir + # glib depends on us so avoid circular deps + --with-included-glib + # libcroco depends on glib which ... ^^^ + --with-included-libcroco + # this will _disable_ libunistring (since it is not bundled), + # see bug #326477 + --with-included-libunistring + # Never build libintl since it's in dev-libs/libintl now. + --without-included-gettext + # Never build bundled copy of libxml2. + --without-included-libxml + + --disable-csharp + --without-cvs + + $(use_enable acl) + $(use_enable cxx c++) + $(use_enable cxx libasprintf) + $(use_with git) + $(multilib_native_use_enable java) + $(use_enable ncurses curses) + $(use_enable nls) + $(use_enable openmp) + $(use_enable static-libs static) + $(use_enable xattr attr) + ) + + local ECONF_SOURCE="${S}" + if ! multilib_is_native_abi ; then + # for non-native ABIs, we build runtime only + ECONF_SOURCE+=/gettext-runtime + fi + + econf "${myconf[@]}" +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + if multilib_is_native_abi ; then + dosym msgfmt /usr/bin/gmsgfmt # bug #43435 + dobin gettext-tools/misc/gettextize + fi + + # 909041 never install libintl which upstream insists on building + rm -f "${ED}"/usr/$(get_libdir)/libintl.* "${ED}"/usr/include/libintl.h +} + +multilib_src_install_all() { + find "${ED}" -type f -name "*.la" -delete || die + + if use java ; then + java-pkg_dojar "${ED}"/usr/share/${PN}/*.jar + rm "${ED}"/usr/share/${PN}/*.jar || die + rm "${ED}"/usr/share/${PN}/*.class || die + if use doc ; then + java-pkg_dojavadoc "${ED}"/usr/share/doc/${PF}/html/javadoc2 + fi + fi + + dodoc AUTHORS ChangeLog NEWS README THANKS + + if use doc ; then + docinto html + dodoc "${ED}"/usr/share/doc/${PF}/*.html + else + rm -rf "${ED}"/usr/share/doc/${PF}/{csharpdoc,examples,javadoc2,javadoc1} + fi + rm "${ED}"/usr/share/doc/${PF}/*.html || die +} + +pkg_preinst() { + java-pkg-opt-2_pkg_preinst +} diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/m4/files/m4-1.4.19-race-condition-tests.patch b/sdk_container/src/third_party/portage-stable/sys-devel/m4/files/m4-1.4.19-race-condition-tests.patch new file mode 100644 index 00000000000..c212777dcd3 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-devel/m4/files/m4-1.4.19-race-condition-tests.patch @@ -0,0 +1,34 @@ +https://lists.gnu.org/archive/html/bug-m4/2022-12/msg00000.html +https://lists.gnu.org/archive/html/bug-m4/2022-12/txtmGJxjX3osy.txt + +Fix a sporadic failure of the test-posix_spawn-script test. + +From a3efddb96f5f121b8a5bb1310dc82407546fd255 Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Thu, 22 Dec 2022 21:19:34 -0800 +Subject: [PATCH] posix_spawnp-tests: fix filename typo + +Problem reported for GNU m4 by Mitchell Dorrell in: +https://lists.gnu.org/r/bug-m4/2022-12/msg00000.html +* tests/test-posix_spawnp-script.c (DATA_FILENAME): +Fix typo in file name that caused race with +test-posix_spawn-script.c. +--- + tests/test-posix_spawnp-script.c | 2 +- + 2 files changed, 10 insertions(+), 1 deletion(-) + +diff --git a/tests/test-posix_spawnp-script.c b/tests/test-posix_spawnp-script.c +index 1e5fc5c110..d2035ed63e 100644 +--- a/tests/test-posix_spawnp-script.c ++++ b/tests/test-posix_spawnp-script.c +@@ -28,7 +28,7 @@ + + #include "macros.h" + +-#define DATA_FILENAME "test-posix_spawn-script.tmp" ++#define DATA_FILENAME "test-posix_spawnp-script.tmp" + + int + main () +-- +2.25.1 diff --git a/sdk_container/src/third_party/portage-stable/sys-devel/m4/m4-1.4.19-r2.ebuild b/sdk_container/src/third_party/portage-stable/sys-devel/m4/m4-1.4.19-r2.ebuild index efb93a8e18b..6c21702d71b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-devel/m4/m4-1.4.19-r2.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-devel/m4/m4-1.4.19-r2.ebuild @@ -41,7 +41,8 @@ PATCHES=( "${FILESDIR}"/loong-fix-build.patch "${FILESDIR}"/${PN}-1.4.19-make-4.4-tests.patch "${WORKDIR}"/${P}-test-198-sysval-r1.patch - "${FILESDIR}"/${PN}-1.4.19-fortify-source.patch + "${FILESDIR}"/${P}-fortify-source.patch + "${FILESDIR}"/${P}-race-condition-tests.patch ) src_unpack() { diff --git a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/Manifest b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/Manifest index e134334401e..bb6d032eb9c 100644 --- a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/Manifest @@ -4,9 +4,11 @@ DIST intel-microcode-collection-20230512.tar.xz 12924124 BLAKE2B 3593d9dd9d46281 DIST intel-microcode-collection-20230520.tar.xz 12720520 BLAKE2B 804579eb05c5b8835565dec3560d059f909d13da853d37c79ddbaa049b94f96e811a2240ab043dfdbf59074e683383f5c17e76ceb0e7f6cccffdaad330bf7de1 SHA512 6302866edf5a5209f8dfc80817fe306fc11376ac7d70450f32e38483902c428365fb553c57e989a6ca6e1cf07573352c9b500764250a815c4aff6b9f6b6d47fb DIST intel-microcode-collection-20230804.tar.xz 12972872 BLAKE2B b2d04ad679b537fbcff7327e4eb9de5d989a3bc6057f4ef339908921fb71275f8374d1db1234f36dd8b07587133c4d2e59f1910f854038253d4cd36d5e6d2dcf SHA512 9e47ee898b5ea1da3fc115de6e8f9e5e6b2eeb74a178c3226cb2bbdf0b1677ac95c40f5d4d874c7e054bf8293e4c2457e32c953a371ab34dd16c43841412f71e DIST intel-microcode-collection-20231007.tar.xz 13997252 BLAKE2B fdd9f42c1b8945c4fdc9eed3b07959ac193df365dce7ff0f81c5f10916581914800701a57f9a57822369967a24cb092acb770f79815c5f595633f3e19a3e3fb5 SHA512 59fe08497c8c4a137c7212a8cc4bd038a740059059ae938dff7759c6797a29d008df7661c7f0fb20ea673f12df40479866d62278bb58a79e78789704a76cfc88 +DIST intel-microcode-collection-20231114.tar.xz 13782912 BLAKE2B 65e2e8753e41fb140abdcc821b6fcdf9b930bcfcd24dcf523ab334c7cbfe1ce2f891b8c4385adb2a6ab4896a08215f140698a028265d0bfbc18b6fbd66720b3c SHA512 c9e590053f2fcd8882727476ea08c7ff68d2f65487c87845513c0037f741e4548b56bee69b0c05b864f92f23e1453f638e5547f716319a861c4f0de8f51a39da DIST intel-ucode-sig_0x406e3-rev_0xd6.bin 101376 BLAKE2B 66d55867954d69dda1425febd93bb8c89f7aa836d504f8b5fee127f8505bcf2246f4fcc55cc245bc5e532528d60cca2eee278de7ab5174dc2862db7982a2b36f SHA512 248066b521bf512b5d8e4a8c7e921464ce52169c954d6e4ca580d8c172cd789519e22b4cf56c212e452b4191741f0202019f7061d322c9433b5af9ce5413b567 DIST microcode-20221108.tar.gz 6436305 BLAKE2B e149e001656f45e8da9a83817a6f83fc6663edbfc8a98b27ab4f9d326f0999921aea03f1ea3628d35978ad5534e017f2d394d1d00d0c992aee54a539a582abf2 SHA512 d86bee1269d31d3028f0d2b7d4886795b96d8f1f9d5dbd5149c2dd4cec3b0319fd869f8138f283e2135ecb0bb6387cfd3c2ef1f597b4194a250ac4f2df7f15a4 DIST microcode-20230214.tar.gz 12088391 BLAKE2B d98d054a8cfd66e3d0549d1e8f4a4745cad342d45f36a82d2f2f51fedc29635125fdad95ee4970069e134facc1ab3092b97837c6f8744ffedf220a5d3d022dd5 SHA512 6456cd6719923eeacb1f9d6d7372efd2bcd0de9e04350c722543ff41e45c7715ba52a2d330ad5818fbf44ea9df6b2ac482d6f8bd420b191427881dcfe3bd81e2 DIST microcode-20230512.tar.gz 12654272 BLAKE2B 302aedf0b57719d1009be0dea513da7290b41842117951a0081f866024d5380c65850638ee3d2e87c8d9efcac4da58650463b0c31373d661fe74b8a3a380e099 SHA512 e21c82846f7f5e2c8d9559931e90389a7d21f8a59fbdec4c5b11fe43f010a21d3e9f27d67be12fe98b3dbdf26558a8ed74dc149bedd93f4b7728795dc6e86d48 DIST microcode-20230613.tar.gz 12338446 BLAKE2B 56bffb26687fd3a20b79b4540ae10c98b2875e3edb84583b679ddc75e339193db4bddece25c7e5cb26b79f5e6ce2d10fcc318c55e13c05d8611198e4c571354b SHA512 460e46d20f71df1247affa2ca397b961ce3d77e3456144c6b7358e48c3239e9c077ff4c512b0c4b7d9a86f33fed094db8b3ac65b1a4047bb853212848d929639 DIST microcode-20230808.tar.gz 13011561 BLAKE2B 400ba9b91a7048c780377d49ff6cb00458c60a9d53c2e5cef1eb99170ca8f0cad66336841d14869bd42d182f7d8df27a2fa9cb982b0df0c5fc9f62325b6acb69 SHA512 8316eb9d35b315e630c6c9fab1ba601b91e72cc42926ef14e7c2b77e7025d276ae06c143060f44cd1a873d3879c067d11ad82e1886c796e6be6bf466243ad85b +DIST microcode-20231114.tar.gz 12466839 BLAKE2B e6084c92e9c3cc627af25a7f2f7fb26230b6ed117ddc197d19991df2816334132af92925f23af829bad005c32d0bd3afc362055ef223a599799d846216cf7612 SHA512 a684444ef81e81687ff43b8255e95675eed1d728053bb1a483a60e94e2d2d43f10fc12522510b22daf90c4debd8f035e6b9a565813aa799c2e1e3a464124f59b diff --git a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20230808_p20231007.ebuild b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20230808_p20231007.ebuild index 8f5ab874339..5d1ff1e7f4b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20230808_p20231007.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20230808_p20231007.ebuild @@ -43,7 +43,7 @@ S="${WORKDIR}" LICENSE="intel-ucode" SLOT="0" -KEYWORDS="-* ~amd64 ~x86" +KEYWORDS="-* amd64 x86" IUSE="hostonly initramfs +split-ucode vanilla" REQUIRED_USE="|| ( initramfs split-ucode )" RESTRICT="binchecks strip" diff --git a/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20231114_p20231114.ebuild b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20231114_p20231114.ebuild new file mode 100644 index 00000000000..5d1ff1e7f4b --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-firmware/intel-microcode/intel-microcode-20231114_p20231114.ebuild @@ -0,0 +1,287 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-info mount-boot + +# Find updates by searching and clicking the first link (hopefully it's the one): +# https://www.intel.com/content/www/us/en/search.html?keyword=Processor+Microcode+Data+File +# +# +# Package Maintenance instructions: +# 1. The ebuild is in the form of intel-microcode-_p.ebuild +# 2. The INTEL_SNAPSHOT upstream is located at: https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files +# 3. The COLLECTION_SNAPSHOT is created manually using the following steps: +# a. Clone the repository https://github.com/platomav/CPUMicrocodes +# b. Rename the Intel directory to intel-microcode-collection- +# c. From the CPUMicrocodes directory tar and xz compress the contents of intel-microcode-collection-: +# tar -cJf intel-microcode-collection-.tar.xz intel-microcode-collection-/ +# d. This file can go in your devspace, add the URL to SRC_URI if it's not there +# https://dev.gentoo.org/~/dist/intel-microcode/intel-microcode-collection-${COLLECTION_SNAPSHOT}.tar.xz +# +# PV: +# * the first date is upstream +# * the second date is snapshot (use last commit date in repo) from intel-microcode-collection + +COLLECTION_SNAPSHOT="${PV##*_p}" +INTEL_SNAPSHOT="${PV/_p*}" +#NUM="28087" + +#https://downloadcenter.intel.com/Detail_Desc.aspx?DwnldID=${NUM} +#https://downloadmirror.intel.com/${NUM}/eng/microcode-${INTEL_SNAPSHOT}.tgz + +DESCRIPTION="Intel IA32/IA64 microcode update data" +HOMEPAGE="https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files https://github.com/platomav/CPUMicrocodes http://inertiawar.com/microcode/" +SRC_URI=" + https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/archive/microcode-${INTEL_SNAPSHOT}.tar.gz + https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/raw/437f382b1be4412b9d03e2bbdcda46d83d581242/intel-ucode/06-4e-03 -> intel-ucode-sig_0x406e3-rev_0xd6.bin + https://dev.gentoo.org/~mpagano/dist/intel-microcode/intel-microcode-collection-${COLLECTION_SNAPSHOT}.tar.xz + https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/intel-microcode-collection-${COLLECTION_SNAPSHOT}.tar.xz +" +S="${WORKDIR}" + +LICENSE="intel-ucode" +SLOT="0" +KEYWORDS="-* amd64 x86" +IUSE="hostonly initramfs +split-ucode vanilla" +REQUIRED_USE="|| ( initramfs split-ucode )" +RESTRICT="binchecks strip" + +BDEPEND=">=sys-apps/iucode_tool-2.3" +# !/dev/null; then + # new tarball format from GitHub + mv * ../ || die "Failed to move Intel-Linux-Processor-Microcode-Data*" + cd .. || die + rm -r Intel-Linux-Processor-Microcode-Data* || die + fi + + mkdir intel-ucode-old || die + cp "${DISTDIR}"/intel-ucode-sig_0x406e3-rev_0xd6.bin "${S}"/intel-ucode-old/ || die + + # Prevent "invalid file format" errors from iucode_tool + rm -f "${S}"/intel-ucod*/list || die + + # https://gitlab.com/iucode-tool/iucode-tool/-/issues/4 + rm "${S}"/intel-microcode-collection-${COLLECTION_SNAPSHOT}/cpu106C0_plat01_ver00000007_2007-08-24_PRD_923CDFA3.bin || die + + # Remove non-microcode file from list + rm -f "${S}"/intel-microcode-collection-${COLLECTION_SNAPSHOT}/LICENSE || die + rm -f "${S}"/intel-ucode*/LICENSE || die +} + +src_install() { + # This will take ALL of the upstream microcode sources: + # - microcode.dat + # - intel-ucode/ + # In some cases, they have not contained the same content (eg the directory has newer stuff). + MICROCODE_SRC=( + "${S}"/intel-ucode/ + "${S}"/intel-ucode-with-caveats/ + "${S}"/intel-ucode-old/ + ) + + # Allow users who are scared about microcode updates not included in Intel's official + # microcode tarball to opt-out and comply with Intel marketing + if ! use vanilla; then + MICROCODE_SRC+=( "${S}"/intel-microcode-collection-${COLLECTION_SNAPSHOT} ) + fi + + # These will carry into pkg_preinst via env saving. + : ${MICROCODE_BLACKLIST=${MICROCODE_BLACKLIST_DEFAULT}} + : ${MICROCODE_SIGNATURES=${MICROCODE_SIGNATUES_DEFAULT}} + + opts=( + ${MICROCODE_BLACKLIST} + ${MICROCODE_SIGNATURES} + # be strict about what we are doing + --overwrite + --strict-checks + --no-ignore-broken + # we want to install latest version + --no-downgrade + # show everything we find + --list-all + # show what we selected + --list + ) + + # The earlyfw cpio needs to be in /boot because it must be loaded before + # rootfs is mounted. + use initramfs && dodir /boot && opts+=( --write-earlyfw="${ED}/boot/intel-uc.img" ) + + keepdir /lib/firmware/intel-ucode + opts+=( --write-firmware="${ED}/lib/firmware/intel-ucode" ) + + iucode_tool \ + "${opts[@]}" \ + "${MICROCODE_SRC[@]}" \ + || die "iucode_tool ${opts[@]} ${MICROCODE_SRC[@]}" + + dodoc releasenote.md +} + +pkg_preinst() { + if [[ ${MICROCODE_BLACKLIST} != ${MICROCODE_BLACKLIST_DEFAULT} ]]; then + ewarn "MICROCODE_BLACKLIST is set to \"${MICROCODE_BLACKLIST}\" instead of default \"${MICROCODE_BLACKLIST_DEFAULT}\". You are on your own!" + fi + + if [[ ${MICROCODE_SIGNATURES} != ${MICROCODE_SIGNATURES_DEFAULT} ]]; then + ewarn "Package was created using advanced options:" + ewarn "MICROCODE_SIGNATURES is set to \"${MICROCODE_SIGNATURES}\" instead of default \"${MICROCODE_SIGNATURES_DEFAULT}\"!" + fi + + # Make sure /boot is available if needed. + use initramfs && mount-boot_pkg_preinst + + local _initramfs_file="${ED}/boot/intel-uc.img" + + if use hostonly; then + # While this output looks redundant we do this check to detect + # rare cases where iucode_tool was unable to detect system's processor(s). + local _detected_processors=$(iucode_tool --scan-system 2>&1) + if [[ -z "${_detected_processors}" ]]; then + ewarn "Looks like iucode_tool was unable to detect any processor!" + else + einfo "Only installing ucode(s) for ${_detected_processors#iucode_tool: system has } due to USE=hostonly ..." + fi + + opts=( + --scan-system + # be strict about what we are doing + --overwrite + --strict-checks + --no-ignore-broken + # we want to install latest version + --no-downgrade + # show everything we find + --list-all + # show what we selected + --list + ) + + # The earlyfw cpio needs to be in /boot because it must be loaded before + # rootfs is mounted. + use initramfs && opts+=( --write-earlyfw=${_initramfs_file} ) + + if use split-ucode; then + opts+=( --write-firmware="${ED}/lib/firmware/intel-ucode" ) + fi + + opts+=( "${ED}/lib/firmware/intel-ucode-temp" ) + + mv "${ED}"/lib/firmware/intel-ucode{,-temp} || die + keepdir /lib/firmware/intel-ucode + + iucode_tool "${opts[@]}" || die "iucode_tool ${opts[@]}" + + rm -r "${ED}"/lib/firmware/intel-ucode-temp || die + + elif ! use split-ucode; then # hostonly disabled + rm -r "${ED}"/lib/firmware/intel-ucode || die + fi + + # Because it is possible that this package will install not one single file + # due to user selection which is still somehow unexpected we add the following + # check to inform user so that the user has at least a chance to detect + # a problem/invalid select. + local _has_installed_something= + if use initramfs && [[ -s "${_initramfs_file}" ]]; then + _has_installed_something="yes" + elif use split-ucode; then + _has_installed_something=$(find "${ED}/lib/firmware/intel-ucode" -maxdepth 0 -not -empty -exec echo yes \;) + fi + + if use hostonly && [[ -n "${_has_installed_something}" ]]; then + elog "You only installed ucode(s) for all currently available (=online)" + elog "processor(s). Remember to re-emerge this package whenever you" + elog "change the system's processor model." + elog "" + elif [[ -z "${_has_installed_something}" ]]; then + ewarn "WARNING:" + if [[ ${MICROCODE_SIGNATURES} != ${MICROCODE_SIGNATURES_DEFAULT} ]]; then + ewarn "No ucode was installed! Because you have created this package" + ewarn "using MICROCODE_SIGNATURES variable please double check if you" + ewarn "have an invalid select." + ewarn "It's rare but it is also possible that just no ucode update" + ewarn "is available for your processor(s). In this case it is safe" + ewarn "to ignore this warning." + else + ewarn "No ucode was installed! It's rare but it is also possible" + ewarn "that just no ucode update is available for your processor(s)." + ewarn "In this case it is safe to ignore this warning." + fi + + ewarn "" + + if use hostonly; then + ewarn "Unset \"hostonly\" USE flag to install all available ucodes." + ewarn "" + fi + fi +} + +pkg_prerm() { + # Make sure /boot is mounted so that we can remove /boot/intel-uc.img! + use initramfs && mount-boot_pkg_prerm +} + +pkg_postrm() { + # Don't forget to umount /boot if it was previously mounted by us. + use initramfs && mount-boot_pkg_postrm +} + +pkg_postinst() { + # Don't forget to umount /boot if it was previously mounted by us. + use initramfs && mount-boot_pkg_postinst + + # We cannot give detailed information if user is affected or not: + # If MICROCODE_BLACKLIST wasn't modified, user can still use MICROCODE_SIGNATURES + # to to force a specific, otherwise blacklisted, microcode. So we + # only show a generic warning based on running kernel version: + if kernel_is -lt 4 14 34; then + ewarn "${P} contains microcode updates which require" + ewarn "additional kernel patches which aren't yet included in kernel <4.14.34." + ewarn "Loading such a microcode through kernel interface from an unpatched kernel" + ewarn "can crash your system!" + ewarn "" + ewarn "Those microcodes are blacklisted per default. However, if you have altered" + ewarn "MICROCODE_BLACKLIST or MICROCODE_SIGNATURES, you maybe have unintentionally" + ewarn "re-enabled those microcodes...!" + ewarn "" + ewarn "Check \"${EROOT}/usr/share/doc/${PN}-*/releasenot*\" if your microcode update" + ewarn "requires additional kernel patches or not." + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.40-r7.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.40-r7.ebuild index 45c549b9f00..b4e26ddc543 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.40-r7.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/binutils-libs/binutils-libs-2.40-r7.ebuild @@ -22,7 +22,7 @@ SRC_URI="mirror://gnu/binutils/${MY_P}.tar.xz LICENSE="|| ( GPL-3 LGPL-3 )" SLOT="0/${PV%_p?}" IUSE="64-bit-bfd cet multitarget nls static-libs test" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris" RESTRICT="!test? ( test )" BDEPEND=" diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.6-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.6-r1.ebuild index 82fc1c9e7be..648e22e39bf 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.6-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.6-r1.ebuild @@ -12,7 +12,7 @@ SRC_URI="https://github.com/linux-nvme/libnvme/archive/refs/tags/v${PV}.tar.gz - LICENSE="LGPL-2.1+" SLOT="0/1" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" +KEYWORDS="~alpha amd64 arm arm64 ~loong ~mips ppc64 ~riscv x86" IUSE="dbus +json keyutils python ssl test +uuid" RESTRICT="!test? ( test )" diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/readline/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/readline/Manifest index 0153b051aec..23c0a3f351f 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/readline/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/readline/Manifest @@ -8,3 +8,15 @@ DIST readline81-002 1242 BLAKE2B 4ef0404561bd8fc5559e8e5f675ae3f12c467178a8954f5 DIST readline81-002.sig 95 BLAKE2B f85d8a65a7326d6e18b32a603c8082952e4b81c53b6a1bd1668c7b0064ecce6ef04a41e2a042f100424dbf152e4db32c0e07ff166d528aa4ac4a9bd7daf4c7a9 SHA512 9ffb6cc697499f57df133f5ebaa5e43e24d33df5eb450d94a02144e94c833424218594c366f21101bc63331c1d532299c9327bd447d0a9849b0bbedce206a5b7 DIST readline82-001 1198 BLAKE2B 2e8f3d2aa14c4c4c4f9621f80f4ffae9bbd6f46c3561e87aaf684c759ffd82e3c46843cf4c4224533b28a847d83f7b8b254813f8a306d438e9f7cb457516c4e0 SHA512 ea3800a62e992b3e594d78e77b6c4b662fb8c501b81010277e478656bb3b56db7747ba40c6c3d68c3ec5ab8e9e41be104788ec52268135d7e642ff40dea421a8 DIST readline82-001.sig 94 BLAKE2B 542ac331a7da3702b47f4828b3264bc7bf996f473807d675044beeb9688c4ca3645bcba0898d3ea9447c1cde540eb8a6b1934008b0a11baef33235e43f44c6c7 SHA512 01ad9769fee42dc601b511c87bd39e15c74226e1747c4ae8914e303213706005780135add180dbfe538fe847533dc56cfe8f51a3ad9ec55d1fde2cb2e096bfb5 +DIST readline82-002 1134 BLAKE2B 799f089105be9931ba13d562d4579b4d1dbdd5440b625b8fe0f1cec6438a1623bf473944cb278b937ca5ab2b98eac2f5993d6e047b96368b5fcd5649fb536d96 SHA512 2d4058c5c886498486d8514c238c0a05c0a97409011a7da40745e842977f0a29754e8b678f7e6e7a47c00df7e2e4c522d34d473118a24524af3824eed912e74a +DIST readline82-002.sig 95 BLAKE2B 400f0aea97b10fff5c9d7fbc5a75914f3c15e602f13eb1f1a3efede3010ee0c723637b6bd91eef0c0337a80d4e91d429041929dc06e29453b0990e2f644b8b0f SHA512 c0f87f9675e7ed9a5280451c7f0e7cb7e84575574987e9a4b4e29fe32f582ba01f77555b9c6db3b9b10a09014e2dbcc7c9e8ba9a201ec596ff74b6cebb6405a1 +DIST readline82-003 1201 BLAKE2B eee048069c7e11c9d2571adde31a61a8558b3b047403225039304621464c3469eaa3bcc6a4476b8530a1e9bbac3dea9a46724b6cce135b9f1aa189065737726e SHA512 796df5a5bc4fc4077158621ac5359a7ccf81261e55880e6e70577ba24b50bd4fce4f2c70521d69a776f6ae8890d14d4f5c95cb9ba7c10f1065978c70626faeab +DIST readline82-003.sig 95 BLAKE2B 206ce766001eeff03fef46263deefcac1b0145527540e7255a4a815167983cd6cddd5aceb58c92ff443de84d69fcd2037d5172e01183477592e4b78bb7786437 SHA512 367ab70037b689ef6b3b5ee62758df69b80dae9c625dd6e9db0f6fac5fc3b8722ea20ac19549171659a78a2d46fd475d94245ac7c1f0ed1a062612bd9a3c5b21 +DIST readline82-004 1708 BLAKE2B 1c72743e33bc0d1ffab3af4b3658e212889e3be1f65e952883e1c95ed00eda6a828022955a20cca1762b0d300c0b8f578ae22d498a4017c9658d7e3a5eb2ec92 SHA512 dc5e4cb6b7a058f433c9c6a587772a4c63e0aeef9c59f45f3f859a007cdbaa46dfd560c43cfe51b9c5c0a3a4d662c100540afc6026b2f8544984867ea3b52661 +DIST readline82-004.sig 95 BLAKE2B c9dad67b296e7e63d0e1dc58d6bc0c60cca556e8f535e25e4d85fa708e001e3d864b40e97b538a032e4f99667c6f07a62fced96bb669fc704c9919a5148afd3f SHA512 e08210259dfe7c4fdd0cb82cf88e6f28b2e10b46e0c159e359853cd154eb1b2322a67ca226ebb1307ec82279370d50a1e34df49c25348a23bac7c41fc8f52e74 +DIST readline82-005 1501 BLAKE2B e8b2ac303802b3a70e36714b465f6651b433bc6dcb3ba2f39a753183370114fd68f3bbe206657b3ca0288184eb3973a1f005ea50a131efcccf74167c772a156e SHA512 f20bcea5ce592edd0e41e0d725611ce536ceffc9ab176511ba6786ae802160b277c412ccbb2ce175da656bdfe5f0fd3f3ace11752cf1a152abff64c90f67a53a +DIST readline82-005.sig 95 BLAKE2B 49fee598d3bb9211bec230eaca992c66850060b4f5d178a46dcc50bcab07cb490fad44b943bacec30844cc0e1dc0f4a538bc84b859a4c7041348994cbd00743c SHA512 b0e16ffb41b211bc1497888c12a44100802c7140bbc33cab16233e0a13027f7d1ff6d9c2dbbef7bfd649b6725d09b325e7df8a83f9b5ed947972f11be75e9c14 +DIST readline82-006 3031 BLAKE2B 1a78e7344e2983486bea6fd398b4922ca671016a07f18334697b5c8db2216de966e9b295fc694fc619a002acc714b7da8030b95726761b0afaa6142ff82516c3 SHA512 0a2737b2e566fafd60da8c0c7abcbaef24139165fb62a422d257b4cf38835b1e9b7a639c9e64228bbaac432d6a9ce62363b134284e55f3473df788f6433fbe63 +DIST readline82-006.sig 95 BLAKE2B 48a0cf75019d44929eec32bf710438dc58629e41c5074c03e723b7102d23f45c78d726ded242654026e71a16eaf62dde4012ad9642181bade09d69159bc79900 SHA512 3b6da081737670e21a5acaa0be34d4196e576be823ec8f2d2c88b9dd5a7dc53da596731563e35601f0b180a818850d0ad27b120ec0ee48ade9c8487e958626be +DIST readline82-007 1422 BLAKE2B 5fbdfea7080a67e197305849f25390634c266a8e2363116ec5dcdc20e6cbce5af787ffdb500edb9d8111388eb6560c6749c4004eb362039813abcbe17cc3bd4e SHA512 e96dafe28f20b1092af08422b9be99965e3a973a0c19f7c57669a6a7fbf74ad4cc3490fa2ad50a1845644a65b0a0e001cfc7ad29528b3b36827a1b9a2c9a96e7 +DIST readline82-007.sig 95 BLAKE2B ea73f53d61291193937f28fcbdd09bd0dc46edefdb213db9aef485629d0df7541de4fcb89b0b6c06279c05bacea702a414021a239208515d4ab9050a4aab6984 SHA512 0f60a44eafe181c46331de9154f5d2c56a17e406e424ea8b644ef343e13315f1a363c07c374d5a1d34a4d0bb6048bf991b2c24c488b961ae038652f85161ff2a diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.2_p7.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.2_p7.ebuild new file mode 100644 index 00000000000..7b772ace377 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-8.2_p7.ebuild @@ -0,0 +1,253 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# There's no standard way of versioning the point releases upstream +# make anyway, so while this was added for RC versions, it's fine +# in general. +QA_PKGCONFIG_VERSION=$(ver_cut 1-2) +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc +inherit flag-o-matic multilib multilib-minimal preserve-libs toolchain-funcs usr-ldscript verify-sig + +# Official patches +# See ftp://ftp.cwru.edu/pub/bash/readline-8.1-patches/ +PLEVEL="${PV##*_p}" +MY_PV="${PV/_p*}" +MY_PV="${MY_PV/_/-}" +MY_P="${PN}-${MY_PV}" +MY_PATCHES=() + +is_release() { + case ${PV} in + 9999|*_alpha*|*_beta*|*_rc*) + return 1 + ;; + *) + return 0 + ;; + esac +} + +[[ ${PV} != *_p* ]] && PLEVEL=0 + +DESCRIPTION="Another cute console display library" +HOMEPAGE="https://tiswww.case.edu/php/chet/readline/rltop.html https://git.savannah.gnu.org/cgit/readline.git" + +if [[ ${PV} == 9999 ]] ; then + EGIT_REPO_URI="https://git.savannah.gnu.org/git/readline.git" + EGIT_BRANCH=devel + inherit git-r3 +elif is_release ; then + SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz" + SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig )" + + if [[ ${PLEVEL} -gt 0 ]] ; then + # bash-5.1 -> bash51 + my_p=${PN}$(ver_rs 1-2 '' $(ver_cut 1-2)) + + patch_url= + my_patch_index= + + upstream_url_base="mirror://gnu/readline" + mirror_url_base="ftp://ftp.cwru.edu/pub/readline" + + for ((my_patch_index=1; my_patch_index <= ${PLEVEL} ; my_patch_index++)) ; do + printf -v mangled_patch_ver ${my_p}-%03d ${my_patch_index} + patch_url="${upstream_url_base}/${MY_P}-patches/${mangled_patch_ver}" + + SRC_URI+=" ${patch_url}" + SRC_URI+=" verify-sig? ( ${patch_url}.sig )" + + # Add in the mirror URL too. + SRC_URI+=" ${patch_url/${upstream_url_base}/${mirror_url_base}}" + SRC_URI+=" verify-sig? ( ${patch_url/${upstream_url_base}/${mirror_url_base}} )" + + MY_PATCHES+=( "${DISTDIR}"/${mangled_patch_ver} ) + done + + unset my_p patch_url my_patch_index upstream_url_base mirror_url_base + fi +else + SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz ftp://ftp.cwru.edu/pub/readline/${MY_P}.tar.gz" + SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig ftp://ftp.cwru.edu/pub/readline/${MY_P}.tar.gz.sig )" +fi + +if ! is_release ; then + inherit autotools +fi + +LICENSE="GPL-3+" +SLOT="0/8" # subslot matches SONAME major +if is_release ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi +IUSE="static-libs +unicode utils" + +RDEPEND=">=sys-libs/ncurses-5.9-r3:=[static-libs?,unicode(+)?,${MULTILIB_USEDEP}]" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig + verify-sig? ( sec-keys/openpgp-keys-chetramey )" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}"/${PN}-5.0-no_rpath.patch + "${FILESDIR}"/${PN}-6.2-rlfe-tgoto.patch # bug #385091 + "${FILESDIR}"/${PN}-7.0-headers.patch + "${FILESDIR}"/${PN}-8.0-headers.patch + + # TODO: rebase + #"${FILESDIR}"/${PN}-8.0-darwin-shlib-versioning.patch +) + +src_unpack() { + if [[ ${PV} == 9999 ]] ; then + git-r3_src_unpack + else + # Needed because we don't want the patches being unpacked + # (which emits annoying and useless error messages) + verify-sig_src_unpack + unpack ${MY_P}.tar.gz + fi +} + +src_prepare() { + [[ ${PLEVEL} -gt 0 ]] && eapply -p0 "${MY_PATCHES[@]}" + + default + + is_release || eautoreconf + + if use prefix && [[ ! -x "${BROOT}"/usr/bin/pkg-config ]] ; then + # If we're bootstrapping, make a guess. We don't have pkg-config + # around yet. bug #818103. + # Incorrectly populating this leads to underlinked libreadline. + local ncurses_libs + local ncurses_libs_suffix=$(usex unicode w '') + + ncurses_libs="-lncurses${ncurses_libs_suffix}" + + if has_version "sys-libs/ncurses[tinfo(+)]" ; then + ncurses_libs+=" -ltinfo${ncurses_libs_suffix}" + fi + else + # Force ncurses linking, bug #71420. + # Use pkg-config to get the right values, bug #457558. + local ncurses_libs=$($(tc-getPKG_CONFIG) ncurses$(usex unicode w '') --libs) + fi + + sed -i \ + -e "/^SHLIB_LIBS=/s:=.*:='${ncurses_libs}':" \ + support/shobj-conf || die + sed -i \ + -e "/^[[:space:]]*LIBS=.-lncurses/s:-lncurses:${ncurses_libs}:" \ + examples/rlfe/configure || die + + # Fix building under Gentoo/FreeBSD; upstream FreeBSD deprecated + # objformat for years, so we don't want to rely on that. + sed -i -e '/objformat/s:if .*; then:if true; then:' support/shobj-conf || die + + # For local readline headers + ln -s ../.. examples/rlfe/readline || die +} + +src_configure() { + # Fix implicit decls with widechar funcs + append-cppflags -D_GNU_SOURCE + # https://lists.gnu.org/archive/html/bug-readline/2010-07/msg00013.html + append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free + + # Make sure configure picks a better ar than `ar`, bug #484866 + export ac_cv_prog_AR="$(tc-getAR)" + + # Force the test since we used sed above to force it. + export bash_cv_termcap_lib=ncurses + + # Control cross-compiling cases when we know the right answer. + # In cases where the C library doesn't support wide characters, readline + # itself won't work correctly, so forcing the answer below should be OK. + if tc-is-cross-compiler ; then + export bash_cv_func_sigsetjmp="present" + export bash_cv_func_ctype_nonascii="yes" + # bug #503312 + export bash_cv_wcwidth_broken="no" + fi + + # This is for rlfe, but we need to make sure LDFLAGS doesn't change + # so we can re-use the config cache file between the two. + append-ldflags -L. + + multilib-minimal_src_configure +} + +multilib_src_configure() { + local myeconfargs=( + --cache-file="${BUILD_DIR}"/config.cache + --with-curses + $(use_enable static-libs static) + ) + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" + + if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then + # Code is full of AC_TRY_RUN() + mkdir -p examples/rlfe || die + cd examples/rlfe || die + + ECONF_SOURCE="${S}"/examples/rlfe econf --cache-file="${BUILD_DIR}"/config.cache + fi +} + +multilib_src_compile() { + emake + + if use utils && multilib_is_native_abi && ! tc-is-cross-compiler ; then + # Code is full of AC_TRY_RUN() + cd examples/rlfe || die + local l + for l in readline history ; do + ln -s ../../shlib/lib${l}$(get_libname)* lib${l}$(get_libname) || die + ln -s ../../lib${l}.a lib${l}.a || die + done + emake + fi +} + +multilib_src_install() { + default + + if multilib_is_native_abi ; then + # bug #4411 + gen_usr_ldscript -a readline history + + if use utils && ! tc-is-cross-compiler; then + dobin examples/rlfe/rlfe + fi + fi +} + +multilib_src_install_all() { + HTML_DOCS="doc/history.html doc/readline.html doc/rluserman.html" einstalldocs + + dodoc USAGE + docinto ps + dodoc doc/*.ps +} +pkg_preinst() { + # bug #29865 + # Reappeared in bug #595324 with paludis so keeping this for now... + preserve_old_lib \ + /$(get_libdir)/lib{history,readline}$(get_libname 4) \ + /$(get_libdir)/lib{history,readline}$(get_libname 5) \ + /$(get_libdir)/lib{history,readline}$(get_libname 6) \ + /$(get_libdir)/lib{history,readline}$(get_libname 7) +} + +pkg_postinst() { + preserve_old_lib_notify \ + /$(get_libdir)/lib{history,readline}$(get_libname 4) \ + /$(get_libdir)/lib{history,readline}$(get_libname 5) \ + /$(get_libdir)/lib{history,readline}$(get_libname 6) \ + /$(get_libdir)/lib{history,readline}$(get_libname 7) +} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-9999.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-9999.ebuild index 6ada9260ced..7b772ace377 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/readline/readline-9999.ebuild @@ -49,8 +49,8 @@ elif is_release ; then patch_url= my_patch_index= - upstream_url_base="mirror://gnu/bash" - mirror_url_base="ftp://ftp.cwru.edu/pub/bash" + upstream_url_base="mirror://gnu/readline" + mirror_url_base="ftp://ftp.cwru.edu/pub/readline" for ((my_patch_index=1; my_patch_index <= ${PLEVEL} ; my_patch_index++)) ; do printf -v mangled_patch_ver ${my_p}-%03d ${my_patch_index} @@ -69,8 +69,8 @@ elif is_release ; then unset my_p patch_url my_patch_index upstream_url_base mirror_url_base fi else - SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz" - SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig ftp://ftp.cwru.edu/pub/bash/${MY_P}.tar.gz.sig )" + SRC_URI="mirror://gnu/${PN}/${MY_P}.tar.gz ftp://ftp.cwru.edu/pub/readline/${MY_P}.tar.gz" + SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${MY_P}.tar.gz.sig ftp://ftp.cwru.edu/pub/readline/${MY_P}.tar.gz.sig )" fi if ! is_release ; then diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/zlib/zlib-1.3-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/zlib/zlib-1.3-r1.ebuild index e8da1bdeb30..801eb15ff21 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/zlib/zlib-1.3-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/zlib/zlib-1.3-r1.ebuild @@ -23,7 +23,7 @@ SRC_URI=" LICENSE="ZLIB" SLOT="0/1" # subslot = SONAME -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="minizip static-libs" RDEPEND="!sys-libs/zlib-ng[compat]" diff --git a/sdk_container/src/third_party/portage-stable/sys-process/lsof/Manifest b/sdk_container/src/third_party/portage-stable/sys-process/lsof/Manifest index 7767d56a633..a0c745e7e15 100644 --- a/sdk_container/src/third_party/portage-stable/sys-process/lsof/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-process/lsof/Manifest @@ -1 +1,2 @@ DIST lsof-4.98.0.tar.gz 734232 BLAKE2B 2f4ba4d179e8061e5bcff7dda4a0981616530bd5577fc73904e2699e6e982efee9e4270d3f2d3c68751d73cb98bfed0fd49d4c6bd967d15b4e06dcb72494d024 SHA512 6fde12497ce9cbba698be624b45e8392d551626c3e46b50ec23e661b322438ef7162dbac0d06829d56f074c7d934fa1ca98aa50ee1487125c93bebfe8eb2a2e8 +DIST lsof-4.99.0.tar.gz 1127302 BLAKE2B 257f84e01b9530ab3a6c637c13c8e84c2562fa3ecd9048f93e2816bbed36ffd529311bc1424a41cde72383642decbd6f44e680bfdd2594bbae5908b07c466165 SHA512 6fe3039f1167fb3023a7f358dda2b4ea6eace1e50a97d0168af494217581eef73cc1742f544d2fb9f85ded8370c86e63d48104da899396de7b3007997a201825 diff --git a/sdk_container/src/third_party/portage-stable/sys-process/lsof/lsof-4.99.0.ebuild b/sdk_container/src/third_party/portage-stable/sys-process/lsof/lsof-4.99.0.ebuild new file mode 100644 index 00000000000..9965531bc30 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-process/lsof/lsof-4.99.0.ebuild @@ -0,0 +1,47 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_P="${P/-/_}" +DESCRIPTION="Lists open files for running Unix processes" +HOMEPAGE="https://github.com/lsof-org/lsof" +SRC_URI="https://github.com/lsof-org/lsof/releases/download/${PV}/${P}.tar.gz" + +LICENSE="lsof" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="rpc selinux" + +RDEPEND=" + rpc? ( net-libs/libtirpc ) + selinux? ( sys-libs/libselinux ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + sys-apps/groff + rpc? ( virtual/pkgconfig ) +" + +# Needs fixing first for sandbox +RESTRICT="test" + +src_configure() { + local myeconfargs=( + $(use_with rpc libtirpc) + $(use_with selinux) + ) + + econf "${myeconfargs[@]}" +} + +src_compile() { + emake DEBUG="" all +} + +pkg_postinst() { + if [[ ${CHOST} == *-solaris* ]] ; then + einfo "Note: to use lsof on Solaris you need read permissions on" + einfo "/dev/kmem, i.e. you need to be root, or to be in the group sys" + fi +} diff --git a/sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.4.ebuild b/sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.4.ebuild index de35e92d943..2ddcefdad32 100644 --- a/sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.4.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-process/procps/procps-4.0.4.ebuild @@ -15,7 +15,7 @@ S="${WORKDIR}"/${PN}-ng-${PV} # See bug #913210 LICENSE="GPL-2+ LGPL-2+ LGPL-2.1+" SLOT="0/0-ng" -KEYWORDS="~alpha ~amd64 arm ~arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha ~amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux" IUSE="elogind +kill modern-top +ncurses nls selinux static-libs systemd test unicode" REQUIRED_USE="unicode? ( ncurses )" RESTRICT="!test? ( test )"