diff options
author | Michał Górny <mgorny@gentoo.org> | 2024-01-17 16:08:07 +0100 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2024-01-17 18:14:49 +0100 |
commit | c1416eb91568a628e73e5c8b76759c38d5dde4ad (patch) | |
tree | cbd268817dfd568639c04d8a18831b4ffa1b0f06 /dev-build/scons | |
parent | Move {sys-devel → dev-build}/cons (diff) | |
download | gentoo-c1416eb91568a628e73e5c8b76759c38d5dde4ad.tar.gz gentoo-c1416eb91568a628e73e5c8b76759c38d5dde4ad.tar.bz2 gentoo-c1416eb91568a628e73e5c8b76759c38d5dde4ad.zip |
Move {dev-util → dev-build}/scons
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-build/scons')
-rw-r--r-- | dev-build/scons/Manifest | 8 | ||||
-rw-r--r-- | dev-build/scons/files/scons-4.1.0-env-passthrough.patch | 41 | ||||
-rw-r--r-- | dev-build/scons/files/scons-4.2.0-respect-cc-etc.patch | 96 | ||||
-rw-r--r-- | dev-build/scons/metadata.xml | 20 | ||||
-rw-r--r-- | dev-build/scons/scons-4.5.2.ebuild | 157 | ||||
-rw-r--r-- | dev-build/scons/scons-4.6.0-r1.ebuild | 160 |
6 files changed, 482 insertions, 0 deletions
diff --git a/dev-build/scons/Manifest b/dev-build/scons/Manifest new file mode 100644 index 000000000000..a9cedad46767 --- /dev/null +++ b/dev-build/scons/Manifest @@ -0,0 +1,8 @@ +DIST SCons-4.5.2.tar.gz 3194724 BLAKE2B c27d00e4bc319e3b8d5d35d50d5f03df15e2b72256e26000299ac95c5bdaffbe850942df9e3c23a6b0dbf55ea000f768a7938cfedc451cc7bd3e2a521292d49e SHA512 a9675f4b4dbedf8c7375d4d099216cd935c38944d57b0a08de2b9c133bb53184de0d5803edf5cb9f800f205b1252ceca3aaf33a10bf5d8b48eacd58866cf776c +DIST SCons-4.6.0.tar.gz 3230138 BLAKE2B adef2ad5394404ae48d85e8c2a91b5af29e4f9bfa7455504ac1cb8d22d9a05c9ace823e02c8e7a32b34dee281635987487ad43ca94c6adea8e287b086a0732f0 SHA512 c7dc952117c23ac30b8cf1f70ef0c4ad1c0a86c9865fd255fde1a29ea2fbf9e26573b73430f6adc8c545dab753077f380d29d77ac4eede7fce959c86576d2354 +DIST scons-4.5.2-user.html 1655168 BLAKE2B dab0b29ae7bdadc96b9081d1d9e1d8b29cc62afb39f3161e4b7694b3e58a31e82446319f3efc560fdbe2c3a37b902c79c74d15a790c865ec3c6d27811f0443fe SHA512 6f2c74d15dca903d500bebe33f0af6b90ca1458c3796048077d411b2c269013696036c7e9ae8b1f300f37c05dd6246f8b12d35b503f9018f002b9d01fea22ba9 +DIST scons-4.5.2-user.pdf 3023818 BLAKE2B b67e2ca3326b5e9ec2cdb530b22d347072e9c906678509a21aae1622487054d4aa3446beb599dd52cd93ad769a5b325dd101356ea88baedba907c931e0acc792 SHA512 172f494fd5e73f654adf9c137bd09f74f57bd2ef17dbd0f02c66aea49798a3fb136f176ee85fc7432378af49e28cbb498e830e519df74652533ecb9f3e52ecf9 +DIST scons-4.5.2.gh.tar.gz 5844800 BLAKE2B c0f42994a178bb0fb329cfa05328bdae89b374a33a7806276e7529a81b37a4ea9f52d07fb2afc55adbe3c1e00661ea3c3d53e981be4a8a095079fc35403328f1 SHA512 aa788d9365a8b5119fef404869562f61cb854be7ceadb5f5d47523e262c07f93ea7476166b577edec25339a64dc6a1f4a6f391fa5aeeab3f086a6659fc72e1ce +DIST scons-4.6.0-user.html 1670870 BLAKE2B 0c84248791bdce093cce4d45b525357aeb3ae69835337000d753b007dc77053d63e70363b3d73c3e7c8157b24d50f0a0216ea9993d90bb298ba2591d6fce4cb4 SHA512 5b8a2626bca361dbce1b0b40f6009752b2dbde7e1f5886b449b9015514951b2e998ede0582876411e7cde56b4ea05546e2db8a8fdcada349c39a126c2e50be1a +DIST scons-4.6.0-user.pdf 3058220 BLAKE2B 3a04e1c0fab47f2a1327f20d3ee500d7861599dc31b0007dd196173af5b880d9737ff528b419896e905cae5a5744c74ef38c2b29bc7945ef4157a79c1c6dabe9 SHA512 6a5ca9cdede81ec9536bb32d7df157fd1efd4b3e3f5afa386b7ecaa45d1fc212015673ccec5ab3283475ab0ee6ef001c111f51b7d3bb64dda664e61d11cbaec0 +DIST scons-4.6.0.gh.tar.gz 5891032 BLAKE2B 9aeda2ef899dcaf5bc7ca3bc77c0615544f2308f56ef095ad835d5cc748355b467a905ec737eef61a4afd183ff0f041dc244bdd58858ba3abc4f3a4efd9f8dc7 SHA512 d7dd30bbc94ec014b12b37a106aa536dd5c8b16e9f1605b68cad6721cf6e3959add1f75a42693fd8499734ca19eb76f648800d7cc8081fe334282841cd406954 diff --git a/dev-build/scons/files/scons-4.1.0-env-passthrough.patch b/dev-build/scons/files/scons-4.1.0-env-passthrough.patch new file mode 100644 index 000000000000..06ec2f217611 --- /dev/null +++ b/dev-build/scons/files/scons-4.1.0-env-passthrough.patch @@ -0,0 +1,41 @@ +From fb07dc4b4fa178b0c424c5f400b18669abd8960e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Wed, 9 May 2018 17:04:49 +0200 +Subject: [PATCH] posix: Support GENTOO_SCONS_ENV_PASSTHROUGH=1 + +Support GENTOO_SCONS_ENV_PASSTHROUGH=1 variable to override the default +of wiping the environment and resetting PATH to default, and instead +pass all variables through. +--- + SCons/Platform/posix.py | 15 ++++++++++++--- + 1 file changed, 12 insertions(+), 3 deletions(-) + +diff --git a/SCons/Platform/posix.py b/SCons/Platform/posix.py +index 4c9f8f9ba..fbc81196d 100644 +--- a/src/SCons/Platform/posix.py ++++ b/src/SCons/Platform/posix.py +@@ -82,9 +82,18 @@ def generate(env): + pspawn = piped_env_spawn + # Note that this means that 'escape' is no longer used + +- if 'ENV' not in env: +- env['ENV'] = {} +- env['ENV']['PATH'] = '/usr/local/bin:/opt/bin:/bin:/usr/bin:/snap/bin' ++ # Force pass-through of environment variables in Gentoo builds ++ import os ++ if os.environ.get('GENTOO_SCONS_ENV_PASSTHROUGH', False): ++ new_env = os.environ.copy() ++ if 'ENV' in env: ++ new_env.update(env['ENV']) ++ env['ENV'] = new_env ++ else: ++ if 'ENV' not in env: ++ env['ENV'] = {} ++ env['ENV']['PATH'] = '/usr/local/bin:/opt/bin:/bin:/usr/bin:/snap/bin' ++ + env['OBJPREFIX'] = '' + env['OBJSUFFIX'] = '.o' + env['SHOBJPREFIX'] = '$OBJPREFIX' +-- +2.30.0 + diff --git a/dev-build/scons/files/scons-4.2.0-respect-cc-etc.patch b/dev-build/scons/files/scons-4.2.0-respect-cc-etc.patch new file mode 100644 index 000000000000..a075fec91d22 --- /dev/null +++ b/dev-build/scons/files/scons-4.2.0-respect-cc-etc.patch @@ -0,0 +1,96 @@ +From b6ba1f2b1feda529eca20fb8980f7c6c52397df6 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Thu, 10 May 2018 08:01:08 +0200 +Subject: [PATCH] posix: Also force common toolchain vars for Gentoo + +--- + SCons/Platform/posix.py | 21 +++++++++++++++++++++ + SCons/Tool/cc.py | 3 ++- + SCons/Tool/cxx.py | 3 ++- + SCons/Tool/link.py | 3 ++- + 4 files changed, 27 insertions(+), 3 deletions(-) + +diff --git a/src/SCons/Platform/posix.py b/src/SCons/Platform/posix.py +index 37cd2377f..1246781de 100644 +--- a/src/SCons/Platform/posix.py ++++ b/src/SCons/Platform/posix.py +@@ -33,6 +33,7 @@ import subprocess + from SCons.Platform import TempFileMunge + from SCons.Platform.virtualenv import ImportVirtualenv + from SCons.Platform.virtualenv import ignore_virtualenv, enable_virtualenv ++import SCons.Util + + exitvalmap = { + 2 : 127, +@@ -86,6 +87,26 @@ def generate(env): + if 'ENV' in env: + new_env.update(env['ENV']) + env['ENV'] = new_env ++ ++ # Furthermore, force common compiler/linker variables as well ++ envvar_mapping = { ++ 'AR': 'AR', ++ 'AS': 'AS', ++ 'ASFLAGS': 'ASFLAGS', ++ 'CC': 'CC', ++ 'CXX': 'CXX', ++ 'CFLAGS': 'CFLAGS', ++ 'CXXFLAGS': 'CXXFLAGS', ++ 'CPPFLAGS': 'CPPFLAGS', ++ 'LDFLAGS': 'LINKFLAGS', ++ } ++ ++ for envvar, toolvar in envvar_mapping.items(): ++ if toolvar not in env and envvar in env['ENV']: ++ val = env['ENV'][envvar] ++ if toolvar.endswith('FLAGS'): ++ val = SCons.Util.CLVar(val) ++ env[toolvar] = val + else: + if 'ENV' not in env: + env['ENV'] = {} +diff --git a/src/SCons/Tool/cc.py b/src/SCons/Tool/cc.py +index 590ec5fd3..5f9229a02 100644 +--- a/src/SCons/Tool/cc.py ++++ b/src/SCons/Tool/cc.py +@@ -80,7 +80,8 @@ def generate(env): + + if 'CC' not in env: + env['CC'] = env.Detect(compilers) or compilers[0] +- env['CFLAGS'] = SCons.Util.CLVar('') ++ if 'CFLAGS' not in env: ++ env['CFLAGS'] = SCons.Util.CLVar('') + env['CCCOM'] = '$CC -o $TARGET -c $CFLAGS $CCFLAGS $_CCCOMCOM $SOURCES' + env['SHCC'] = '$CC' + env['SHCFLAGS'] = SCons.Util.CLVar('$CFLAGS') +diff --git a/src/SCons/Tool/cxx.py b/src/SCons/Tool/cxx.py +index 128cdc4f6..1f852b64c 100644 +--- a/src/SCons/Tool/cxx.py ++++ b/src/SCons/Tool/cxx.py +@@ -69,7 +69,8 @@ def generate(env): + + if 'CXX' not in env: + env['CXX'] = env.Detect(compilers) or compilers[0] +- env['CXXFLAGS'] = SCons.Util.CLVar('') ++ if 'CXXFLAGS' not in env: ++ env['CXXFLAGS'] = SCons.Util.CLVar('') + env['CXXCOM'] = '$CXX -o $TARGET -c $CXXFLAGS $CCFLAGS $_CCCOMCOM $SOURCES' + env['SHCXX'] = '$CXX' + env['SHCXXFLAGS'] = SCons.Util.CLVar('$CXXFLAGS') +diff --git a/src/SCons/Tool/link.py b/src/SCons/Tool/link.py +index 24d17a31f..4ea9917e8 100644 +--- a/src/SCons/Tool/link.py ++++ b/src/SCons/Tool/link.py +@@ -49,7 +49,8 @@ def generate(env): + + env['SMARTLINK'] = smart_link + env['LINK'] = "$SMARTLINK" +- env['LINKFLAGS'] = SCons.Util.CLVar('') ++ if 'LINKFLAGS' not in env: ++ env['LINKFLAGS'] = SCons.Util.CLVar('') + + # __RPATH is only set to something ($_RPATH typically) on platforms that support it. + env['LINKCOM'] = '$LINK -o $TARGET $LINKFLAGS $__RPATH $SOURCES $_LIBDIRFLAGS $_LIBFLAGS' +-- +2.32.0 + diff --git a/dev-build/scons/metadata.xml b/dev-build/scons/metadata.xml new file mode 100644 index 000000000000..aacbf74f7fb9 --- /dev/null +++ b/dev-build/scons/metadata.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>mgorny@gentoo.org</email> + <name>Michał Górny</name> + </maintainer> + <longdescription lang="en"> + SCons is a make replacement providing a range of enhanced + features such as automated dependency generation and built in + compilation cache support. SCons rule sets are Python scripts so + as well as the features it provides itself SCons allows you to use + the full power of Python to control compilation. + </longdescription> + <upstream> + <remote-id type="github">SCons/scons</remote-id> + <remote-id type="pypi">SCons</remote-id> + <remote-id type="sourceforge">scons</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-build/scons/scons-4.5.2.ebuild b/dev-build/scons/scons-4.5.2.ebuild new file mode 100644 index 000000000000..e62d6e75bd0b --- /dev/null +++ b/dev-build/scons/scons-4.5.2.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..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 + ) +" + +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 + # 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() { + rm "${ED}"/usr/*.1 || die + distutils-r1_python_install_all + + doman *.1 + use doc && dodoc "${DISTDIR}/${P}"-user.{pdf,html} +} diff --git a/dev-build/scons/scons-4.6.0-r1.ebuild b/dev-build/scons/scons-4.6.0-r1.ebuild new file mode 100644 index 000000000000..acf4b5429a1a --- /dev/null +++ b/dev-build/scons/scons-4.6.0-r1.ebuild @@ -0,0 +1,160 @@ +# 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..12} ) +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 + + # fixed in .post1 release + rm -r SCons/Tool/docbook/__pycache__ || die + + # 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 + # 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() { + rm "${ED}"/usr/*.1 || die + distutils-r1_python_install_all + + doman *.1 + use doc && dodoc "${DISTDIR}/${P}"-user.{pdf,html} +} |