summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-build/scons/Manifest4
-rw-r--r--dev-build/scons/scons-4.8.1.ebuild157
2 files changed, 161 insertions, 0 deletions
diff --git a/dev-build/scons/Manifest b/dev-build/scons/Manifest
index 5cd810290fab..b2b5de82efc5 100644
--- a/dev-build/scons/Manifest
+++ b/dev-build/scons/Manifest
@@ -1,8 +1,12 @@
DIST SCons-4.7.0.tar.gz 3220744 BLAKE2B 0fe8cdbaef46ca6571de35fb6544afe992e8a509cf52a8078133584e3af63919d2e0fb83ad646e042290fc47ca5a8932435946df9d40a099ccb2105b54bfd5cd SHA512 d08fba3e7f058eb2eeee4a129d10b55affada6b192932f069271fcbc28fd8216b2bf7e94285d9c448235a3965a789d3a91db9ebae1945aa73306788009dd2e77
DIST SCons-4.8.0.tar.gz 3243387 BLAKE2B 1ab4a63d14ecfd1984e41f6be11c87003413f74a0d6b03eb7d5fd7d7b66ad5cf904b1061b3cd91a33735fd6ea1ffda6aa388dbf42a7085caa900961bcf2340dd SHA512 6f1ab01b25752f1f43a1796fb68fb0508105b372cf082a57477af4685399f8b83372466d65070d5c928d81c9fd4bdf1e8ba357c72537f32c50f77121f52415fb
+DIST SCons-4.8.1.tar.gz 3244423 BLAKE2B 31441e16ca96b844b1bcc388cd430a4a087bb5f09a8951166fc44b7422611d416fc6311d79370d768b52a93ad417369682e2a77ada3fe77e82d59c81bfd7b4dd SHA512 dad76d7f16b4cc1d9e25c9d8969773604e23accbb4e94451f0fc725919bf223cf04265f5d2b64a1b7e96cc63496cba574df3a634fd6779f2eb5fb7246fded120
DIST scons-4.7.0-user.html 1683569 BLAKE2B 6c68f34af85fbfaf70f77758321bd0bb86b4f549c5fa05f721df94af0627d030a15db89565910ee6674b514d6b4fac9e624ac0aa6e849bd1224833c0473ed4c6 SHA512 8b0320794775890d898854767cd12bc4da725f6a33ae4496dc41a7b37a6dcb5f812c23083093d17685db9799b230552e19cc5550a108c2cf6787ffd963e649d6
DIST scons-4.7.0-user.pdf 3069908 BLAKE2B 7196a5b247802c9f42914c4de5968862c4a183e5c3ff7e5172ec7bbf58f049362f0b85fdaba47c66fc09dbed79c22ddac8195a78bff2e564eff879b0e6a4f482 SHA512 6d62def8a68c8bf3b6cc269a93272c815e82b46bd6a223d0f7f3848daf9c7212e5f9de8dcdac41d2a6f2d7d70053b97f92e0b99c11f4f5b2b3a69951d474fe3a
DIST scons-4.7.0.gh.tar.gz 5896790 BLAKE2B 1ce9041ad1e2891da92a9bd50e07e29a5e23c7c9432adb120d6610956a2ea4a5125fb6bfa1f8b944797d589cfdbe036a1b9b1eae271ae51abb826c6ee5a3ee1c SHA512 8be4d611c375c13467a1a437e0d47873f973584d9a1be0d1cbbd345685a8f477fc19fa59ab01bca1ab7be8af0034d5cfda360090ee4b347c41f7bfea363bfe6c
DIST scons-4.8.0-user.html 1695726 BLAKE2B 1c44141dd7d04d738cb9495aa4749f3b44275f2c0808695270bdb0642454eb3b93d599b5c0fa21fd4f1099a95b1dd90583eb2184631bbc14fbef6644faf3f633 SHA512 c69be0e682755bf74f7b9c366e56a69b60962327d2ee5f4c1928edd41e800484bfb43836c575500be4132e90ef78d39f23dda5655dedd05b42b54ca4a65f4766
DIST scons-4.8.0-user.pdf 3091708 BLAKE2B 430e56d3f0e433eb5c24a2ad1d9cf12b4912a3be9b98682019a071964d9824c55c18147e4c5ffff326c43ce6f232f03ce14386849d112b4fc29e09d0743dfb0f SHA512 8474bfbfeb76cc915f3b8392a7a38901206a264e23d867d5ed4a610debf3c5cd68d812e6b4e730b037eea4de1523aa7afc4e41e636fb3cd315c0fc5797fdb4e9
DIST scons-4.8.0.gh.tar.gz 5933373 BLAKE2B 6912696f5ffdfa7f54fd00210228f308468bc35be76dda56652f91c1cf301d2df1720715d88d755e1c783360efec79a708cfa7c21514983fec3111db0bb05500 SHA512 056bc7f5308e73e202a96ce6e56efee4df278cd77455dc42278d63470ff2ea05163124c2f971a87416766d098103f85cfc0a0340bd9d0aa9209d200890197af9
+DIST scons-4.8.1-user.html 1696975 BLAKE2B 5c34754daa149f49b35a06ae1ab0264649004cdd94106eb70965c0f89aef80268ee6b138aa0beaac1451222888ccd11ec34f2872006702c36460f719fc90a3c7 SHA512 dadfc79a441de6d882e18d3fbf82e668d8a7eca6fa449aaebac9d3edd518d91e208342b7203c5e74ed4651fa5cf5d2d453055e4805407a18aad5349a9e1ea92f
+DIST scons-4.8.1-user.pdf 3093300 BLAKE2B 84752a76fba302ab6ae1bbd6c960680e94144f0c9d7b1292096fb7df40a090848aede0b3c309271089ab6bbfd8ff89265496c71e970a9b2b6c5789e04ea4954e SHA512 11776a6f0ca475633a85673fb2347358f45e3c20465424aefe4c12f3037e22199ffdc2ae921d002a67f4edee204961f405aef172ca93a77452e25eb9cab33445
+DIST scons-4.8.1.gh.tar.gz 5931602 BLAKE2B 702252622bc9dd97417cb3db09caebd8732cabe3627e8539475f2177a15bf9cfa8dae9863c462796a6ebf079db2c1609089f1a6d1a0e0ffa220cc69f905beff1 SHA512 b9f39634b36876fa15e2db968a38693745ce3f0f14e838e97f69e2a6762d8f78c04e52843e2ce50900000833854c90ee2bd9d3d84bb48d9acfbf41f94af02775
diff --git a/dev-build/scons/scons-4.8.1.ebuild b/dev-build/scons/scons-4.8.1.ebuild
new file mode 100644
index 000000000000..c3320fbacd32
--- /dev/null
+++ b/dev-build/scons/scons-4.8.1.ebuild
@@ -0,0 +1,157 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..13} )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1 multiprocessing
+
+MY_P="SCons-${PV}"
+DESCRIPTION="Extensible Python-based build utility"
+HOMEPAGE="
+ https://www.scons.org/
+ https://github.com/SCons/scons/
+ https://pypi.org/project/SCons/
+"
+SRC_URI="
+ https://downloads.sourceforge.net/project/${PN}/${PN}/${PV}/${MY_P}.tar.gz
+ doc? (
+ https://www.scons.org/doc/${PV}/PDF/${PN}-user.pdf
+ -> ${P}-user.pdf
+ https://www.scons.org/doc/${PV}/HTML/${PN}-user.html
+ -> ${P}-user.html
+ )
+ test? (
+ https://github.com/SCons/scons/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ )
+"
+
+LICENSE="MIT"
+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"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ test? (
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ )
+"
+
+src_unpack() {
+ # use the git directory structure, then unpack the pypi tarball
+ # on top of it to make our life easier
+ if use test; then
+ unpack "${P}.gh.tar.gz"
+ else
+ mkdir -p "${P}" || die
+ fi
+
+ tar -C "${P}" --strip-components=1 --no-same-owner \
+ -xzf "${DISTDIR}/${MY_P}.tar.gz" || die
+}
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # TODO: rebase the patches <4.5.1-r2 is gone
+ # support env passthrough for Gentoo ebuilds
+ eapply -p2 "${FILESDIR}"/scons-4.1.0-env-passthrough.patch
+ # respect CC, CXX, C*FLAGS, LDFLAGS by default
+ eapply -p2 "${FILESDIR}"/scons-4.2.0-respect-cc-etc.patch
+
+ if use test; then
+ local remove_tests=(
+ # TODO: does not respect PATH?
+ test/Clang
+ # broken
+ test/DVIPDF/DVIPDFFLAGS.py
+ test/Java/swig-dependencies.py
+ test/Java/multi-step.py
+ test/TEX/newglossary.py
+ test/TEX/variant_dir_newglossary.py
+ test/Configure/option--config.py
+ test/D/HSTeoh/sconstest-linkingProblem_gdc.py
+ # broken by commas in date, sic!
+ test/option/option-v.py
+ test/Interactive/version.py
+ # warnings from new binutils?
+ test/AS/as-live.py
+ test/AS/nasm.py
+ # hangs
+ test/KeyboardInterrupt.py
+ # requires f77 executable
+ test/Fortran/F77PATH.py
+ test/Fortran/FORTRANPATH.py
+ test/Fortran/gfortran.py
+ # TODO, these seem to be caused by our patches
+ test/Repository/include.py
+ test/Repository/multi-dir.py
+ test/Repository/variants.py
+ test/virtualenv/activated/option/ignore-virtualenv.py
+ # broken by CC being set? *facepalm*
+ test/LINK/applelink.py
+ test/ToolSurrogate.py
+ # no clue but why would we care about rpm?
+ test/packaging/option--package-type.py
+ test/packaging/rpm/cleanup.py
+ test/packaging/rpm/internationalization.py
+ test/packaging/rpm/multipackage.py
+ test/packaging/rpm/package.py
+ test/packaging/rpm/tagging.py
+ # apparently fragile to... limits?
+ # https://bugs.gentoo.org/908347#c7
+ test/builderrors.py
+ )
+
+ if ! use amd64 && ! use x86 ; then
+ # These tests are currently broken on arm and other non-amd64/x86 platforms
+ # Work seems to be ongoing in e.g. https://github.com/SCons/scons/pull/4022 to
+ # better plumb up the MSVC tests for alternative arches.
+ # Try again after 4.2.0.
+ # See also: https://pairlist4.pair.net/pipermail/scons-users/2020-November/008452.html
+ # bug #757534
+ remove_tests+=(
+ test/MSVS/vs-7.0-scc-files.py
+ test/MSVS/vs-7.0-scc-legacy-files.py
+ test/MSVS/vs-7.1-scc-files.py
+ test/MSVS/vs-7.1-scc-legacy-files.py
+ test/MSVS/vs-scc-files.py
+ test/MSVS/vs-scc-legacy-files.py
+ )
+ fi
+
+ rm -r "${remove_tests[@]}" || die
+ fi
+}
+
+python_test() {
+ local -x COLUMNS=80
+ # set variable from escons() of scons-util.eclass to make env-passthrough patch work within test env
+ local -x GENTOO_SCONS_ENV_PASSTHROUGH=1
+ # unset some env variables to pass appropriate tests
+ unset AR AS ASFLAGS CC CXX CFLAGS CXXFLAGS CPPFLAGS LDFLAGS
+ cd "${WORKDIR}/${P}" || die
+ "${EPYTHON}" runtest.py -a --passed \
+ -j "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")"
+
+ # runtest.py script returns "0" if all tests are passed
+ # and returns "2" if there are any tests with "no result"
+ # (i.e. in case if some tools are not installed or it's Windows specific tests)
+ [[ ${?} == [02] ]] || die "Tests fail with ${EPYTHON}"
+
+ # sigh
+ rm "${BUILD_DIR}/install/usr/bin/.sconsign" || die
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ doman *.1
+ use doc && dodoc "${DISTDIR}/${P}"-user.{pdf,html}
+}