summaryrefslogtreecommitdiff
path: root/dev-util/scons
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2021-01-22 20:28:19 +0000
committerV3n3RiX <venerix@redcorelinux.org>2021-01-22 20:28:19 +0000
commitabaa75b10f899ada8dd05b23cc03205064394bc6 (patch)
treeeca3dd248b73b92013cba00a0fcc1edf2696e19a /dev-util/scons
parent24fd814c326e282c4321965c31f341dad77e270d (diff)
gentoo resync : 22.01.2021
Diffstat (limited to 'dev-util/scons')
-rw-r--r--dev-util/scons/Manifest6
-rw-r--r--dev-util/scons/files/scons-4.1.0-env-passthrough.patch41
-rw-r--r--dev-util/scons/scons-4.1.0-r1.ebuild98
3 files changed, 145 insertions, 0 deletions
diff --git a/dev-util/scons/Manifest b/dev-util/scons/Manifest
index cd3cae32b174..b8b6a508f969 100644
--- a/dev-util/scons/Manifest
+++ b/dev-util/scons/Manifest
@@ -2,6 +2,7 @@ AUX scons-3.0.1-env-passthrough.patch 1507 BLAKE2B 9e21e0b14a3b6c95e2c501b5d2649
AUX scons-3.0.3-respect-cc-etc-r1.patch 3381 BLAKE2B f7003c4fc7b054dbbfe4f185876470cf04461fd1a408f44bbac2967c9e709e7f16293dcdaf2042bda811610ca65e3007dceb0f8764b7ac2ea7675e901159d097 SHA512 054037a917a8cdc57fbca940a23699bb6ba55554b4753774df7d0b5102e0468ebb770910727f96ade949e69a6db94f2ed60e84061bd3967ff2366724980eb129
AUX scons-4.0.0-env-passthrough.patch 1472 BLAKE2B 8f44a054fdf28ca1f049cb2f85f4e344fe294abbf1112b65c4037fd57850b4f0dc3852cdbb6e86d538d1d0543ed4409b789d1e4bb0f4ea2632ff3746e7455fdc SHA512 10fee12e0e120c81d7829d65b0f69ee295c768bec7ad6d5745963b956037d6ff4ad1bc1ec2e47871e3e9352a4855932e07a3e2a9e4b69f06bec5574bfec2e50d
AUX scons-4.0.0-respect-cc-etc-r1.patch 3241 BLAKE2B 8e9cabb597db0c1cf278169bd6010168e46fc38895d00a0b013894b2783c65c5262156ded125e080b61927e34f40ef5ed4f2852dfd341d1d42bbcc1efad7b4ab SHA512 1878dc8f28d17aecd5c61b624c135ab3d1b311ec1b92687e1f205c4913dd5f99eeea0f7758d5623e6e60470c34fc2e7ce70571593f2197c8e59fed8df1586b53
+AUX scons-4.1.0-env-passthrough.patch 1498 BLAKE2B 9aaae51779053518d983c9f028fff58a68a8c3e1213c8a746aad2e6dc6cebf139939dd3fb41a643c5db7e6079e09ad9850e552192e35bc4c8bf75818334b9e0d SHA512 4c5c3364575d95f4922b7c5b3c8f536a34b58136e7a604bc06760d94a8b20c7e8cdfd3100ab8c56e08b885e2e9521f036f4009512b1f1b10aec2785a74119683
DIST scons-3.1.1-user.html 1134061 BLAKE2B de025ff73ecacec591c63b22bb3f934962a34fa16bec47a58972b97ba28f9a88254b419b4d2edeb2d920e70cf3e0c739df5357956c8586e5377afcd4125ba0a8 SHA512 bd00bcdcd01b192a42110ec65cdb906963af08f5bbc9d5e61624b5b5b1a667b115b099ce2ef71444a8998171a5544f4caecf3acec9715876d4e9e5baa581e60d
DIST scons-3.1.1-user.pdf 2564248 BLAKE2B 702e57a9646779ff1aa077aa7ae7a815d004cda08166f948ef3b893a786c7ccf13e9d1f8621640573802acd0b6a7acaaf68ebea984d5922112a30c4457740bc4 SHA512 0c0f8e93e3bddd9dc0ec661f629f2995ec9375908b3b7bf2b67c9518571cb31754d13fca46fc1182019976e5c0a417832447692ff61f5ee4613b7f56c7891594
DIST scons-3.1.1.tar.gz 663878 BLAKE2B 095d5f45885ac12937066be247194e70d33e8f5dc0955e7d693c4b0d3a4b61e776bc1d64cd00ebc89d1e85a7992747b8f448255a76c1b6c2d9df8fa173967711 SHA512 2e80b45571679d8acc0554273538f56163488df5aa9007c7c9c3a6deb2698909ab05da8df91502ea287c0cc0ff0a98f226454f67fcfb7a943570f673f4bd8f54
@@ -12,7 +13,12 @@ DIST scons-4.0.1-user.html 1415152 BLAKE2B 1a94b2ef5e076d883f2960825f055c7cc39cf
DIST scons-4.0.1-user.pdf 2468804 BLAKE2B f0af6bc6b41d972b98e955ee3ccec908aa366eabe31bd01022abe1f6d3a94dd6d7da26f71de23a6dfbcbc7bb4e439463f69bb7e8a5780c1300e3ba508b9eb314 SHA512 0d2733e2f1391083522a64117bfd35a2160d1366382f6f630b26eba36fc12ce797467d5e16efeb3b7f58aa9d853f96ae0d50fe78f59e78d24642b146bc7e565d
DIST scons-4.0.1.gh.tar.gz 5578800 BLAKE2B f9ece5eaf1b133219f975e484beb5df726560a38969b8e8ad829781b960b438458bfcd7971333da87560c957675b2a4f8675e757fb0a4268cc4ecf72bb60d45f SHA512 f23c5dfd3c236e9f9f85b986ca64a36dbd85e9f3383cb3577e082a7dea4b83283020fbf064c2d919ab116195c6708fc11f906fcf3b0bc0533a4bc49a4f7371c6
DIST scons-4.0.1.tar.gz 2874481 BLAKE2B 98377e62ae31d32758a93c4e04c578b88ea541cc292af63c6ca43e2948745e416ee6d757d98129ee30d0e0bbab90664889441a5bb86d4c9dfc649ca1dbef7536 SHA512 400b11323d48f04395b519dfafb6fce15a6dea92013f599dc4895b112629c0a06c7d2806755c74047d001d60087b94f39a118f512b7ee8de6214a4ffc7310468
+DIST scons-4.1.0-user.html 1454432 BLAKE2B 9fac4d7bfb4b25708bc4cc48d952beb030f88181af5dfee63090f726b1a82443c192c63ec5939869967ef8f374e8599321212971439fb265fb050b263681c9f8 SHA512 74f1349fa61dac9e66cfb863cb3126d07ce5f421b3e87d0220eb32bd5017ba8f6cf96eb8cb5ee45c39022671aa9f2d0408d4039970c438a69c002445aea510be
+DIST scons-4.1.0-user.pdf 2691364 BLAKE2B a910a09fa936d4d6f8dc967676d5aa009aac58a5a4566399b3ddc3512ac0259731e6c5399722fefadb3b79d8f89a5257e2e9bc2fa4d65697c8293ab995248d64 SHA512 64584731a59b59b78283be3876ecca91d742f83da2653d0de17922bec01e3c9cea1ce2ce3c8dc718597910ba86ed2c8aff0f7ae371bf763439b57a6d5484e1a7
+DIST scons-4.1.0.gh.tar.gz 5609204 BLAKE2B ede3d47a1ec652b9248681e26738073e9d01daab7ffeccc58f0fcadb79661e30edb9a35a511518e4a58459243acb027afd8fa5849b0f9e4bae451055f7b1a062 SHA512 f79b86bb09783767b3872cfb8efb665372714a604af2aaf3adc66eee63d3afe27bc6b2aab83813743c83f71c81c800d42842e916501787ba402ce2726dda9b44
+DIST scons-4.1.0.tar.gz 3007701 BLAKE2B 70ab64ecfd89fa2af1d78a33fcef82a5f7db9875ffe9d2c16ea75cf40e661b2874359e3a5f75d761b3d9e863f7a434560992cfb020cce3e21e389381331d90de SHA512 24fd493643545a2998b053ed0d68caf6241f05bc2437e7cbeae33d2e1c63517a61449a1a18062f8e4e5a639295a2486925296ba3e54ccfa2ecdd56fa07132de8
EBUILD scons-3.1.1.ebuild 1559 BLAKE2B 0a8af07867a5bce56b45e4a7f7fc150837e10cc478fff11bdbbd5e0d0e4c11573e48d98a118e0c2d6e0a8f44f18762464b4cc08eb597956055ab570c23efe1d3 SHA512 cc1bd6a0961c2602964c52c00aaf53aebb05b9707aada0ee8bcc222f3a591e8da228fce161cf04257a811b2499a2fa3718c467564ebc2292ac43c36f5baf5c0c
EBUILD scons-3.1.2.ebuild 1683 BLAKE2B e4a022b85ad90e4749b1b800fb93af0ea8d8bc3851bfc22681e989303b5d9f4493e3cf7a97086261601c5fa1e9e54139be28585b5236acfc4b6f8f2c61f3acd5 SHA512 72b6aa74bb466af2064959d13c049df5b92a7de48ddc525b540a7916c050411def15682d5ebb326d69c3a1e4764c98bc9221f0633563b8a89b6664877c86a27f
EBUILD scons-4.0.1.ebuild 2864 BLAKE2B 551d8079289430a022efa2409998bca9437127154e04fba9eecafefd63ee079459df1a17cffd75c147312d9a1f15fe3412b6bfd84d253eb5ec0a0fe5200ac311 SHA512 0d3cf51820d4b505b5f32390af56b5fc5e81565e0053a1fc23fda64e0b69b1d0abfc9f085ac4d426ae6df4c4f346782c4f8605f4e97b6d1b973e736ff907ca6b
+EBUILD scons-4.1.0-r1.ebuild 2764 BLAKE2B dcbb27b7566e58af4d77be30920b4225126ea0f032488afa92f7fde5f945390bdae6f9b1afa09750c06b6da582a8d8505085fe63d0871435c7c6678d93924be0 SHA512 9195ae0ea29c580f4a8e7762733517f2fbf24070b417055b6424477dbd3df49691283914d10fc968ccd296de8e98954acec1815c8fc358c70afdd3bb02ef4a6a
MISC metadata.xml 704 BLAKE2B 448bfef70e4f230008c21d8e542618a52f9761295ed33f1c7385a2a678bcb29d1028792e221441f9ba61fecb34646f5ef0f04795e28b17e8d4aeacbabf8751f2 SHA512 62e5c8c23f1c67c218ff6b33c1f941ac3c258b39a5b2d799bedceb734aa5b2e29a718f90823ab5bf199e9d1eb8236aefaddcbff99c6d03f58987fb4936b10aa6
diff --git a/dev-util/scons/files/scons-4.1.0-env-passthrough.patch b/dev-util/scons/files/scons-4.1.0-env-passthrough.patch
new file mode 100644
index 000000000000..06ec2f217611
--- /dev/null
+++ b/dev-util/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-util/scons/scons-4.1.0-r1.ebuild b/dev-util/scons/scons-4.1.0-r1.ebuild
new file mode 100644
index 000000000000..7535272500c1
--- /dev/null
+++ b/dev-util/scons/scons-4.1.0-r1.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="Extensible Python-based build utility"
+HOMEPAGE="https://www.scons.org/"
+SRC_URI="
+ https://downloads.sourceforge.net/project/scons/scons/${PV}/${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 ~m68k ~mips ~ppc ~ppc64 ~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-libs/libxml2[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ )
+"
+
+S=${WORKDIR}/${P}/src
+
+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.0.0-respect-cc-etc-r1.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}/${P}.tar.gz" || die
+}
+
+src_prepare() {
+ # apply patches relatively to top directory
+ cd "${WORKDIR}/${P}" || die
+ distutils-r1_src_prepare
+
+ # manpage install is completely broken
+ sed -i -e '/build\/doc\/man/d' src/setup.cfg || die
+
+ 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
+ )
+ 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() {
+ distutils-r1_python_install_all
+
+ doman *.1
+ use doc && dodoc "${DISTDIR}"/${P}-user.{pdf,html}
+}