commit:     35bfb94e24a41952128a26ed4d847f4df14ce5f6
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Mar  7 07:16:59 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Mar  7 08:10:28 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=35bfb94e

dev-util/scons: Bump to 4.5.1

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-util/scons/Manifest           |   4 ++
 dev-util/scons/scons-4.5.1.ebuild | 138 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 142 insertions(+)

diff --git a/dev-util/scons/Manifest b/dev-util/scons/Manifest
index 02f2849626bb..b4cb22f2c203 100644
--- a/dev-util/scons/Manifest
+++ b/dev-util/scons/Manifest
@@ -1,4 +1,8 @@
 DIST SCons-4.4.0.tar.gz 3096863 BLAKE2B 
60f125c077dd8f50a7150db6dc1234eac988cf7ee7495036d73c46e8ae445b87c88dde23a537d6647709778a33e6f1ac529f7ac7f862648e3019bbe437bb451c
 SHA512 
d4e630214a9221f00d668b6524803efa83b41534fa6e0acca689d926cbc8546e5cf79c1c7a4b5627afbcd5033564343b408790bf4c29067d053cfbb39408a8ed
+DIST SCons-4.5.1.tar.gz 3194371 BLAKE2B 
830e3365be99e38aec0f3b99d406bb7547d3d8b7c7fb752db1199df5545879dafc52f449b001c3ef10290b1bdbcb52cd7c4befc7dee4b2f3be1234cca2d4fcec
 SHA512 
aa676021694b1020a21a517a4d3df03f442a28e78b2d32d4316b7d7ee7271f8025f2b50d0ce8fe5d5a8be282b5ecaaebd9aa85be1e15e6a0bbad1567a394014d
 DIST scons-4.4.0-user.html 1608381 BLAKE2B 
ff4eb1e0f9c5e8ea7ca44cc00dc37e3e2dd38c24cb09a857c691e6a48f11e5fc86a55740037cc295e6b23df2a1c1b600adf0462320ec87cc26d4bcf919b07342
 SHA512 
8c1d6578270054efba34c56ddc07b4314bf62630f6a445f5b9f865cc48d593f6c92101a8d216dece201b8d6cb5bce59ff4adb51caaa40128e96b6235087f748c
 DIST scons-4.4.0-user.pdf 2964111 BLAKE2B 
45b37c99c3f3d0e9969a16506e27aeabfd562155405f5a59ba79c24404b14e5588fbd0673d86e2266adbd25eca140c9e1cf86e271228658591c0d9285474f078
 SHA512 
57330f685e7c775cb1c782e40f711c2b2322fad19212a22a920aff92db974610cc78f276e1606fb827660bb488ce803e2458bb9d93c452fa0600df4478f03d06
 DIST scons-4.4.0.gh.tar.gz 5808265 BLAKE2B 
f6ce757f2edc40551b05285098626bb62def6abda2380d4885ee4443868e715e53aaa34f26c09dc689bb6ade26d1b0e276046fe3b1d2ddf8eb40400bca9ea164
 SHA512 
01fcd40bf818ca22a278973af1cda3024efb74cf877f15d46607fda860448fbd577fc96ba33fef2bed3d145e662a0371f55e8c927e7ac44feea7f3081791ce11
+DIST scons-4.5.1-user.html 1655168 BLAKE2B 
644c808f129d2d83f40b1ef2c8c12781b697a0120dfc00f5f0425e88e23c609290ecf2c8b6daad556c876ae3a86e8b262c53915b05d69c6e3c79f58395789362
 SHA512 
171d9330df520a75fbc124bf646c55c5868b24343ff46755a6283fe444ad4e090f5658dafa7239e708b4ff8b910e81201c27655674bdaffd20e8cc6ffb81d633
+DIST scons-4.5.1-user.pdf 3023817 BLAKE2B 
caa782f77fac668eee0ccd76f3e96168ae3d61c9c3e80123c34bc45625182f77973fbab24170c5f67f133c6124412eadbf02c3497373211560c58a348d6b00ab
 SHA512 
41fddff58032b6364ff3935259d4bf81a0d69398cd52158c42be71e4ff6efaebd2faaf1354781f7336ba1aa4f0cf99f0f37edcd72baf325f9ced7ec88b76ce88
+DIST scons-4.5.1.gh.tar.gz 5844118 BLAKE2B 
88a82e12a034f6d0748555d0d33716e5af6ff957a9345d5b0ba87c2a36544bae0965ea0a29e3cc80d6d2493f3f8bf0bd314bed5824dc609123972f640b19a53a
 SHA512 
160089342b93197237b9f0c5f0ada42126f3e5c83e0026f6dc121aaae85c94774b01ea3b0b0fc56edf3effd87d91612b2167d004abe7a00bd8d107d5415f5d4a

diff --git a/dev-util/scons/scons-4.5.1.ebuild 
b/dev-util/scons/scons-4.5.1.ebuild
new file mode 100644
index 000000000000..87c03687ce2a
--- /dev/null
+++ b/dev-util/scons/scons-4.5.1.ebuild
@@ -0,0 +1,138 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9..11} )
+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
+       )
+"
+S="${WORKDIR}/${P}/src"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 
~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos 
~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+       test? (
+               dev-python/lxml[${PYTHON_USEDEP}]
+               dev-python/psutil[${PYTHON_USEDEP}]
+       )
+"
+
+PATCHES=(
+       # support env passthrough for Gentoo ebuilds
+       "${FILESDIR}"/scons-4.1.0-env-passthrough.patch
+       # respect CC, CXX, C*FLAGS, LDFLAGS by default
+       "${FILESDIR}"/scons-4.2.0-respect-cc-etc.patch
+)
+
+src_unpack() {
+       # use the git directory structure, but put pregenerated release
+       # inside src/ subdirectory to make our life easier
+       if use test; then
+               unpack "${P}.gh.tar.gz"
+       else
+               mkdir -p "${P}"/src || die
+       fi
+
+       tar -C "${P}"/src --strip-components=1 -xzf "${DISTDIR}/${MY_P}.tar.gz" 
|| die
+}
+
+src_prepare() {
+       # apply patches relatively to top directory
+       cd "${WORKDIR}/${P}" || die
+       distutils-r1_src_prepare
+
+       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
+                       # 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
+               )
+
+               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}"
+}
+
+python_install_all() {
+       rm "${ED}"/usr/*.1 || die
+       distutils-r1_python_install_all
+
+       doman *.1
+       use doc && dodoc "${DISTDIR}/${P}"-user.{pdf,html}
+}

Reply via email to