From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <gentoo-commits+bounces-1716604-garchives=archives.gentoo.org@lists.gentoo.org> Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id B2F991582EF for <garchives@archives.gentoo.org>; Sun, 09 Feb 2025 22:45:53 +0000 (UTC) Received: from lists.gentoo.org (bobolink.gentoo.org [140.211.166.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) (Authenticated sender: relay-lists.gentoo.org@gentoo.org) by smtp.gentoo.org (Postfix) with ESMTPSA id 9FDF83430C8 for <garchives@archives.gentoo.org>; Sun, 09 Feb 2025 22:45:53 +0000 (UTC) Received: from bobolink.gentoo.org (localhost [127.0.0.1]) by bobolink.gentoo.org (Postfix) with ESMTP id 8B9F9110476; Sun, 09 Feb 2025 22:45:42 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by bobolink.gentoo.org (Postfix) with ESMTPS id 79AD9110476 for <gentoo-commits@lists.gentoo.org>; Sun, 09 Feb 2025 22:45:42 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 2D8CE34306D for <gentoo-commits@lists.gentoo.org>; Sun, 09 Feb 2025 22:45:42 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 99EFB2773 for <gentoo-commits@lists.gentoo.org>; Sun, 09 Feb 2025 22:45:39 +0000 (UTC) From: "Jason Zaman" <perfinion@gentoo.org> To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Jason Zaman" <perfinion@gentoo.org> Message-ID: <1739141065.7ccd236bd6c713a900d44010c3920ea2c7df20e8.perfinion@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: sys-libs/libselinux/ X-VCS-Repository: repo/gentoo X-VCS-Files: sys-libs/libselinux/Manifest sys-libs/libselinux/libselinux-3.8.ebuild X-VCS-Directories: sys-libs/libselinux/ X-VCS-Committer: perfinion X-VCS-Committer-Name: Jason Zaman X-VCS-Revision: 7ccd236bd6c713a900d44010c3920ea2c7df20e8 X-VCS-Branch: master Date: Sun, 09 Feb 2025 22:45:39 +0000 (UTC) Precedence: bulk List-Post: <mailto:gentoo-commits@lists.gentoo.org> List-Help: <mailto:gentoo-commits+help@lists.gentoo.org> List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org> List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org> List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org> X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: b2457cdf-445b-4dac-b7a6-d7bcb3fd4bc8 X-Archives-Hash: ed1873c8e8ec7d0257325ceb64714747 commit: 7ccd236bd6c713a900d44010c3920ea2c7df20e8 Author: Jason Zaman <perfinion <AT> gentoo <DOT> org> AuthorDate: Sat Feb 8 23:52:39 2025 +0000 Commit: Jason Zaman <perfinion <AT> gentoo <DOT> org> CommitDate: Sun Feb 9 22:44:25 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7ccd236b sys-libs/libselinux: bump to 3.8 Signed-off-by: Jason Zaman <perfinion <AT> gentoo.org> sys-libs/libselinux/Manifest | 1 + sys-libs/libselinux/libselinux-3.8.ebuild | 164 ++++++++++++++++++++++++++++++ 2 files changed, 165 insertions(+) diff --git a/sys-libs/libselinux/Manifest b/sys-libs/libselinux/Manifest index 21b7f934eefe..1924cfe06b72 100644 --- a/sys-libs/libselinux/Manifest +++ b/sys-libs/libselinux/Manifest @@ -1,2 +1,3 @@ DIST libselinux-3.6.tar.gz 194210 BLAKE2B 615198d47ecfb4b6274810cbe32cce5953dd44d1d04e8ce244213dc4ddbd61cde3515f4650046b805cf98f341aba718af8d7a9e1d66773172031ac19599f6032 SHA512 182dcdf3510083ff4b9376a4a6d6a7b33905ac3c5e974c188bf3965686c54b663162c543ecf15eab75102f3c91a2502d33d0f1104dec01dd9b14737ef3f2b544 DIST libselinux-3.7.tar.gz 194834 BLAKE2B 07d87c37608b480d17355334459ecb006573d61a7d3fbf622033838559397abcf343e6399f3a49b6cf24e106d03fd997397d061491d2129c15a378960dacc350 SHA512 e949c20b606c50ad521b9592ce55ad6658e8c4b24d9838028f5aba0a4fc762b6d0d0d0d207f5bef7a2e41485e12d91382fa6090df27152dbb40071b273419352 +DIST libselinux-3.8.tar.gz 204389 BLAKE2B fdba907a3060138e065c016ab510042fc9e5760db278b99a6508f475fdb25125a7cbaba541e3e681b6cf4a092a2ad40ca08d7736687c9f326c9fe2c87953da85 SHA512 e36edec33c3960679a8975f839a4d64d4b1f82d51346fba21082c2686136259040099c7fee2c947ac2ca180d61d10356c9b3d359a1c5f1242b6ecdd7c036005e diff --git a/sys-libs/libselinux/libselinux-3.8.ebuild b/sys-libs/libselinux/libselinux-3.8.ebuild new file mode 100644 index 000000000000..5bc7fa6d98fe --- /dev/null +++ b/sys-libs/libselinux/libselinux-3.8.ebuild @@ -0,0 +1,164 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" +PYTHON_COMPAT=( python3_{10..13} ) +USE_RUBY="ruby31 ruby32 ruby33" + +# No, I am not calling ruby-ng +inherit flag-o-matic python-r1 toolchain-funcs multilib-minimal + +MY_PV="${PV//_/-}" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="SELinux userland library" +HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki" + +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git" + S="${WORKDIR}/${P}/${PN}" +else + SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_PV}/${MY_P}.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~mips ~riscv ~x86" + S="${WORKDIR}/${MY_P}" +fi + +LICENSE="public-domain" +SLOT="0" +IUSE="python ruby static-libs ruby_targets_ruby31 ruby_targets_ruby32 ruby_targets_ruby33" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND="dev-libs/libpcre2:=[static-libs?,${MULTILIB_USEDEP}] + >=sys-libs/libsepol-${PV}:=[${MULTILIB_USEDEP},static-libs(+)] + python? ( ${PYTHON_DEPS} ) + ruby? ( + ruby_targets_ruby31? ( dev-lang/ruby:3.1 ) + ruby_targets_ruby32? ( dev-lang/ruby:3.2 ) + ruby_targets_ruby33? ( dev-lang/ruby:3.3 ) + ) + elibc_musl? ( sys-libs/fts-standalone )" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig + python? ( + >=dev-lang/swig-2.0.9 + dev-python/pip[${PYTHON_USEDEP}] +) + ruby? ( >=dev-lang/swig-2.0.9 )" + +src_prepare() { + eapply_user + + multilib_copy_sources +} + +multilib_src_compile() { + tc-export AR CC PKG_CONFIG RANLIB + + local -x CFLAGS="${CFLAGS} -fno-semantic-interposition" + + emake \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + LDFLAGS="-fPIC ${LDFLAGS} -pthread" \ + USE_PCRE2=y \ + USE_LFS=y \ + FTS_LDLIBS="$(usex elibc_musl '-lfts' '')" \ + all + + if multilib_is_native_abi && use python; then + building() { + emake \ + LDFLAGS="-fPIC ${LDFLAGS} -lpthread" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + USE_PCRE2=y \ + USE_LFS=y \ + FTS_LDLIBS="$(usex elibc_musl '-lfts' '')" \ + pywrap + } + python_foreach_impl building + fi + + if multilib_is_native_abi && use ruby; then + building() { + einfo "Calling rubywrap for ${1}" + # Clean up .lo file to force rebuild + rm -f src/selinuxswig_ruby_wrap.lo || die + emake \ + RUBY=${1} \ + LDFLAGS="-fPIC ${LDFLAGS} -lpthread" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + USE_LFS=y \ + USE_PCRE2=y \ + FTS_LDLIBS="$(usex elibc_musl '-lfts' '')" \ + rubywrap + } + for RUBYTARGET in ${USE_RUBY}; do + use ruby_targets_${RUBYTARGET} || continue + + building ${RUBYTARGET} + done + fi +} + +multilib_src_install() { + emake DESTDIR="${D}" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + USE_LFS=y \ + USE_PCRE2=y \ + install + + if multilib_is_native_abi && use python; then + installation() { + emake DESTDIR="${D}" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + USE_LFS=y \ + USE_PCRE2=y \ + install-pywrap + python_optimize # bug 531638 + } + python_foreach_impl installation + fi + + if multilib_is_native_abi && use ruby; then + installation() { + einfo "Calling install-rubywrap for ${1}" + # Forcing (re)build here as otherwise the resulting SO file is used for all ruby versions + rm src/selinuxswig_ruby_wrap.lo + emake DESTDIR="${D}" \ + LIBDIR="\$(PREFIX)/$(get_libdir)" \ + SHLIBDIR="/$(get_libdir)" \ + RUBY=${1} \ + USE_LFS=y \ + USE_PCRE2=y \ + install-rubywrap + } + for RUBYTARGET in ${USE_RUBY}; do + use ruby_targets_${RUBYTARGET} || continue + + installation ${RUBYTARGET} + done + fi + + use static-libs || rm "${ED}"/usr/$(get_libdir)/*.a || die +} + +pkg_postinst() { + # Fix bug 473502 + for POLTYPE in ${POLICY_TYPES}; + do + mkdir -p "${ROOT}/etc/selinux/${POLTYPE}/contexts/files" || die + touch "${ROOT}/etc/selinux/${POLTYPE}/contexts/files/file_contexts.local" || die + # Fix bug 516608 + for EXPRFILE in file_contexts file_contexts.homedirs file_contexts.local ; do + if [[ -f "${ROOT}/etc/selinux/${POLTYPE}/contexts/files/${EXPRFILE}" ]]; then + sefcontext_compile "${ROOT}/etc/selinux/${POLTYPE}/contexts/files/${EXPRFILE}" \ + || die "Failed to recompile contexts" + fi + done + done +}