From 8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 14 Jul 2018 21:03:06 +0100 Subject: gentoo resync : 14.07.2018 --- dev-util/scons/Manifest | 20 +++++ .../scons/files/scons-2.5.1-respect-path.patch | 34 +++++++++ .../scons/files/scons-3.0.1-env-passthrough.patch | 40 ++++++++++ .../files/scons-3.0.1-respect-cc-etc-r1.patch | 88 ++++++++++++++++++++++ dev-util/scons/metadata.xml | 18 +++++ dev-util/scons/scons-2.4.1.ebuild | 52 +++++++++++++ dev-util/scons/scons-2.5.1.ebuild | 55 ++++++++++++++ dev-util/scons/scons-3.0.1-r1.ebuild | 71 +++++++++++++++++ dev-util/scons/scons-3.0.1-r100.ebuild | 73 ++++++++++++++++++ dev-util/scons/scons-3.0.1-r3.ebuild | 73 ++++++++++++++++++ dev-util/scons/scons-3.0.1.ebuild | 66 ++++++++++++++++ 11 files changed, 590 insertions(+) create mode 100644 dev-util/scons/Manifest create mode 100644 dev-util/scons/files/scons-2.5.1-respect-path.patch create mode 100644 dev-util/scons/files/scons-3.0.1-env-passthrough.patch create mode 100644 dev-util/scons/files/scons-3.0.1-respect-cc-etc-r1.patch create mode 100644 dev-util/scons/metadata.xml create mode 100644 dev-util/scons/scons-2.4.1.ebuild create mode 100644 dev-util/scons/scons-2.5.1.ebuild create mode 100644 dev-util/scons/scons-3.0.1-r1.ebuild create mode 100644 dev-util/scons/scons-3.0.1-r100.ebuild create mode 100644 dev-util/scons/scons-3.0.1-r3.ebuild create mode 100644 dev-util/scons/scons-3.0.1.ebuild (limited to 'dev-util/scons') diff --git a/dev-util/scons/Manifest b/dev-util/scons/Manifest new file mode 100644 index 000000000000..27487728d6af --- /dev/null +++ b/dev-util/scons/Manifest @@ -0,0 +1,20 @@ +AUX scons-2.5.1-respect-path.patch 1351 BLAKE2B e7bb7662394d6f5c6354b1616f5d4f36d65da8404916aea72c95bae5cfd9e1e3fb4286dc912ae55ba8c0863599223d68b3935ce18f5144f77006e6244e97f7f4 SHA512 6cc0d3b6dd711804f90af9b275e08071e6b0bb370e59aa5caadf3e192e096708f90b373de6ffba2ddaaffce0e2b5013df06f4e9259452bfcca8adcfa6b485618 +AUX scons-3.0.1-env-passthrough.patch 1507 BLAKE2B 9e21e0b14a3b6c95e2c501b5d264915a10c4c5908de98719c9a73c37f5f7de32824dce6df32a0884c4aeb53658d05cda5dbb9c6102ecd6307c085719d4e568c2 SHA512 07fa387b9ad50cd1e92495a414973acddac8c062827858b44867ff1da0560c1493d29992fe4ac2c6de8eb37ab218967df9a6d9ffa2cb26be772324a637fadbcb +AUX scons-3.0.1-respect-cc-etc-r1.patch 3470 BLAKE2B 4302f7f6448541ba76aa1e66a51535603b4ea7a4c47cf9ed59c23d559f32668604a2b7250ef1d7e6c40e34c93d02ac4858bee1f3b7196c8eda05c4cb8fd464b0 SHA512 6154b22c677176d8644a392ad68d63da04a2f3616c6861471b7ea397f4542aba63ee30b1f14e2ad2f183ef78e3ccaf8ddea8c712b46f18da44881b20ea8c1497 +DIST scons-2.4.1-user.html 1110981 BLAKE2B 3c2c7c3bb283e18e63b5dfe64928c2821ceb74ac6d5f4c4fc08f0ceb98ef25f6114308d02d65be0ee8231e367556bdce0f76f1f37bb9d3c1ab813a653fda2f54 SHA512 e73caa3daedb5da419a417dbec73a3958da162311e9ad09a7d5e9d6989686b24cf5c1b34fdb1d547a43de1da36e99566e6c367fde05af032a2d1000a7e12270c +DIST scons-2.4.1-user.pdf 2527773 BLAKE2B 16c9a90fd57af7552f8d05fcf018ed99b76d29c148169dee4fd610aa40e439448f5a7a6e8ba8d72830a605a26141927f5dcd1643f99a1bfe9433d87350e96569 SHA512 d53d41e51096d1923e168054d335da1498e9ca338e39aef7985967f839656d368b65a8b979dac701ca1c529deeff4a79f402f058d23ef4e658f849ce0784eb45 +DIST scons-2.4.1.tar.gz 638990 BLAKE2B 44084dd396d8cbe63da59aed706cda7342bbe51dd4f78bd324ad6ce822ae45b9da1099400e1dfeafdb2e4e8f1906e88be423598cc2c2915a1544f37285b31297 SHA512 bd0830719dfc0c2e8620ec767ee6342af74a170cd895acda2995761eafe52e1efa9471626fcaedb0dd9a779ef9bb9b4306bd6cd3c2a5bd7bd2500018b40653e0 +DIST scons-2.5.1-user.html 1112180 BLAKE2B 93df42b296d1be6ffcb73143c5ec9f46225e3e9d07154cf8f703d5f624d2996d85569ff302093a7a73dc0001cfeddf49ee9e57d9a1939d3c6b4689f8773e3ede SHA512 5be58a6bba4b92fc51f0b271fd7e08b820dda10775aaa40a012c0e54d485e02ebf6d0d0be379bd90980a9b496e86a951c8760a4a90107fb3b8f422e874e46046 +DIST scons-2.5.1-user.pdf 2522755 BLAKE2B 0dbf4ec98cd1dfb4889595762fdf57c2988a6784d75f8c3ac53e79d686b745ae4dd7b674ce34d61255c798e203fb6de93eaaf936a4842b27990350fa73b6bd46 SHA512 0bd7f67a1355ec33125bef87ce1bc352bda5b0befd9809673a427851c843191d74930b4ca9add705152393521f81d926595d173b0101013da216217dc5b64397 +DIST scons-2.5.1.tar.gz 620909 BLAKE2B 021e02583dab06a859e46d164be79dcaa49a1a383c5d3fb9baa64afabb793e049b7ebefff1bbbcc8be1f364ca5c64e1a9c7ef937c32407853e39f4d84a91e51d SHA512 0e39f7f22a6c4ecc13edcd843b050754da5ded5371b3a8b406395f7b53dd280f95f804707eec271f8de3624d06f5b4ba3cc788dc4eb891cad224a163544f51b9 +DIST scons-3.0.1-user.html 1121915 BLAKE2B 0ee57d112ba6269a488335e9354723c645e4b06129c26ca64d45923066ad92cf5519fa4933ef74dd5254d5b068b2909290c5c930a4247ebd6a5f1761f683a6e2 SHA512 e49ae91b04509d32f67d17cabb6619ede49c7190d80efcbd1e0bd1992574ea08c7abc892cad26f8b995b0f43bccd099a96ce633d63d6f56aafc442f9aa734aec +DIST scons-3.0.1-user.pdf 2541376 BLAKE2B 43895501bf8b4a7eda12c5b3b076e6a71e949727224c279ef77671f7d4094245d37b9d8aeca6daa7d043c5513cc0c83e82a06f8a50bb4add4f0d750fce416bac SHA512 9fab1915c96cd32908cbbf123dfb8c97be99ec45df0461fa68ac47706f6bfc51d7ab970a43630e5414b01a8b9d27409e356b57c134478cec13f1bcbd97f615e7 +DIST scons-3.0.1.gh.tar.gz 5481813 BLAKE2B 750668bf034ff48f635db0395fc4fc950a7148c315099738da4d96f346d025b7dd3849e376d566e5f55793ee0b901ad8a4d7ff661068420f085ab76404ca244c SHA512 092a5d88191e4c9deee2e14371745fad1c3beee746f55256729444ad56a141a28f45ebeef4b2a7ec37344048ff16864d85b978855c0285a14b7c6f46f91158ac +DIST scons-3.0.1.tar.gz 634815 BLAKE2B f5bacec048969d592697bc3dfb44678c25a92982f7ba81f9951e73532e8b9ac0906fe72c979d7818db5ab9b2c6dd380df21d323e47ea4cc0db646d6eed4b7d94 SHA512 b7be40ba507366cc678f31b910553cadaf59781c3a91833a34acbd29d9cad0cda38f6753034bf92c3af55d1e0c2f72aba5d81f1ec67205d0345b005d286f7084 +EBUILD scons-2.4.1.ebuild 1703 BLAKE2B 1fffba6edc3540869ce1af6c0a2e199614886610a464031395dd72e8f1311b703a398d9abb56eae9a67d4654529ec2fe06b8465f00fe83c442e251875dc53317 SHA512 69f7b513981e51bf547aad20f31af7ee98b77bb11bc10257499f92ea32d4a664cf83d77cabea81a56b068f2c18a40503567611e7ba78b987d4c6de1d52648b90 +EBUILD scons-2.5.1.ebuild 1603 BLAKE2B 2469be4adae61636d044e2beec6bba28cb62bc81c6381d8eb1228a8907ae05c248ca042490cb4af0ef94bd1e081b950dfff064d07e194cba347e01c5ad647624 SHA512 1609e0aa9c7ac60e38aa92cae29d15bebec7583656d9f18cd545745f8fd29677fbd00643e617408866df88b42949c47de3405e2c57ddfde1e608a88a8ea83611 +EBUILD scons-3.0.1-r1.ebuild 1967 BLAKE2B ae9dfc2809576dfa427c386d3943a15d39710f6401ea86ecc99f68420b11b07df817873b801df0a1802f0f51d973ee90bf7af2eceb79faabe39c70aa7972011b SHA512 58e7761c68debf79f1740f02800e94271b7339981696870411b8179b4e4e0156d8921b08c758f31ebf085da89fd4f0e880472787835ac2bc464c50a17df9a3c6 +EBUILD scons-3.0.1-r100.ebuild 2078 BLAKE2B 44634da960c7a30c9a0b8923cf163ea0be4ce31308d9b57d6705dc9baacd8661d62b317ad622f058cdfaae29728d781708df22021038281b83e9e9f0dda1db71 SHA512 f34c403ac05b2f42f3e1de1dd4ab3a3e22c3377f68ac0781da2a04280123cd218c912f5ff784876139b78cd93fe9b0dabd8d3304a4f3341f01645459a154f766 +EBUILD scons-3.0.1-r3.ebuild 2066 BLAKE2B 177a52afb4171023de660f6afdc0d895f5cc499b619c2d427354f8c99282eece6567c6b08c66b8dc9f644ca2b7d1ae216471c289c1030dbd0becd875c972108e SHA512 b88dd6016af45be90e31c761b276cb354bca00e28b3939bbe7f2b0a704620f46e71fc5b58dcc5553e10565413501c22d5c6e19d9a67cc99d267bd474493206e0 +EBUILD scons-3.0.1.ebuild 1738 BLAKE2B eb1430c2c64fe79b36cf776b1df482726982e7b871393e5f1e829e2e5e02c21a1db129248121435b97bd8288f4aed5cbde3a0f167041d8a0c26fe86575903062 SHA512 1454bc63720c78d58362ae72d311d3fd4b81ef8b01900cb36f6cda2aab235d06a4fb6c2631927ac4efcee0fc761c6a672a925bda248a7def5d49b43529d042d8 +MISC metadata.xml 704 BLAKE2B 448bfef70e4f230008c21d8e542618a52f9761295ed33f1c7385a2a678bcb29d1028792e221441f9ba61fecb34646f5ef0f04795e28b17e8d4aeacbabf8751f2 SHA512 62e5c8c23f1c67c218ff6b33c1f941ac3c258b39a5b2d799bedceb734aa5b2e29a718f90823ab5bf199e9d1eb8236aefaddcbff99c6d03f58987fb4936b10aa6 diff --git a/dev-util/scons/files/scons-2.5.1-respect-path.patch b/dev-util/scons/files/scons-2.5.1-respect-path.patch new file mode 100644 index 000000000000..d5da07bc980b --- /dev/null +++ b/dev-util/scons/files/scons-2.5.1-respect-path.patch @@ -0,0 +1,34 @@ +Clang/LLVM is installed in an "odd" location (/usr/lib/llvm//bin/) +which is added to PATH. Since we cannot know upfront, it's wrong +to hardcode the PATH at the time of installation else we'd break after a +Clang update. Since Clang is the primary compiler on Darwin, just +extract the relevant path on each invocation. + +--- a/engine/SCons/Platform/posix.py ++++ b/engine/SCons/Platform/posix.py +@@ -87,9 +87,15 @@ + pspawn = piped_env_spawn + # Note that this means that 'escape' is no longer used + ++ with open('@GENTOO_PORTAGE_EPREFIX@/etc/profile.env', 'r') as f: ++ for l in f: ++ if "export PATH=" in l: ++ path = l.split('=')[1].strip("'") ++ break ++ + if 'ENV' not in env: + env['ENV'] = {} +- env['ENV']['PATH'] = '/usr/local/bin:/opt/bin:/bin:/usr/bin' ++ env['ENV']['PATH'] = path + env['OBJPREFIX'] = '' + env['OBJSUFFIX'] = '.o' + env['SHOBJPREFIX'] = '$OBJPREFIX' +@@ -104,7 +110,7 @@ + env['LIBSUFFIXES'] = [ '$LIBSUFFIX', '$SHLIBSUFFIX' ] + env['PSPAWN'] = pspawn + env['SPAWN'] = spawn +- env['SHELL'] = 'sh' ++ env['SHELL'] = '@GENTOO_PORTAGE_EPREFIX@/bin/sh' + env['ESCAPE'] = escape + env['TEMPFILE'] = TempFileMunge + env['TEMPFILEPREFIX'] = '@' diff --git a/dev-util/scons/files/scons-3.0.1-env-passthrough.patch b/dev-util/scons/files/scons-3.0.1-env-passthrough.patch new file mode 100644 index 000000000000..16de316766b1 --- /dev/null +++ b/dev-util/scons/files/scons-3.0.1-env-passthrough.patch @@ -0,0 +1,40 @@ +From f2f8536be12f1d095382e7598060c1eb51eb5337 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= +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. +--- + src/engine/SCons/Platform/posix.py | 14 +++++++++++--- + 1 file changed, 11 insertions(+), 3 deletions(-) + +diff --git a/src/engine/SCons/Platform/posix.py b/src/engine/SCons/Platform/posix.py +index 8db08db1..af34650c 100644 +--- a/src/engine/SCons/Platform/posix.py ++++ b/src/engine/SCons/Platform/posix.py +@@ -87,9 +87,17 @@ 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' ++ # Force pass-through of environment variables in Gentoo builds ++ 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' ++ + env['OBJPREFIX'] = '' + env['OBJSUFFIX'] = '.o' + env['SHOBJPREFIX'] = '$OBJPREFIX' +-- +2.17.0 + diff --git a/dev-util/scons/files/scons-3.0.1-respect-cc-etc-r1.patch b/dev-util/scons/files/scons-3.0.1-respect-cc-etc-r1.patch new file mode 100644 index 000000000000..748646b14f10 --- /dev/null +++ b/dev-util/scons/files/scons-3.0.1-respect-cc-etc-r1.patch @@ -0,0 +1,88 @@ +From 68fc19b7fd6b65ab850e4fd8ef5e85c672989f92 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= +Date: Thu, 10 May 2018 08:01:08 +0200 +Subject: [PATCH] posix: Also force common toolchain vars for Gentoo + +--- + src/engine/SCons/Platform/posix.py | 20 ++++++++++++++++++++ + src/engine/SCons/Tool/cc.py | 3 ++- + src/engine/SCons/Tool/cxx.py | 3 ++- + src/engine/SCons/Tool/link.py | 3 ++- + 4 files changed, 26 insertions(+), 3 deletions(-) + +diff --git a/src/engine/SCons/Platform/posix.py b/src/engine/SCons/Platform/posix.py +index af34650c..5533c87c 100644 +--- a/src/engine/SCons/Platform/posix.py ++++ b/src/engine/SCons/Platform/posix.py +@@ -93,6 +93,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/engine/SCons/Tool/cc.py b/src/engine/SCons/Tool/cc.py +index 590ec5fd..5f9229a0 100644 +--- a/src/engine/SCons/Tool/cc.py ++++ b/src/engine/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/engine/SCons/Tool/cxx.py b/src/engine/SCons/Tool/cxx.py +index 430851c8..ca5ab563 100644 +--- a/src/engine/SCons/Tool/cxx.py ++++ b/src/engine/SCons/Tool/cxx.py +@@ -74,7 +74,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/engine/SCons/Tool/link.py b/src/engine/SCons/Tool/link.py +index 07e92507..614d1779 100644 +--- a/src/engine/SCons/Tool/link.py ++++ b/src/engine/SCons/Tool/link.py +@@ -292,7 +292,8 @@ def generate(env): + env.Append(SHLIBEMITTER = [shlib_emitter]) + 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' + env['LIBDIRPREFIX']='-L' +-- +2.17.0 + diff --git a/dev-util/scons/metadata.xml b/dev-util/scons/metadata.xml new file mode 100644 index 000000000000..979bab55bc3a --- /dev/null +++ b/dev-util/scons/metadata.xml @@ -0,0 +1,18 @@ + + + + + mgorny@gentoo.org + Michał Górny + + + 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. + + + scons + + diff --git a/dev-util/scons/scons-2.4.1.ebuild b/dev-util/scons/scons-2.4.1.ebuild new file mode 100644 index 000000000000..68b9b393ddfa --- /dev/null +++ b/dev-util/scons/scons-2.4.1.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 +PYTHON_COMPAT=( python2_7 pypy ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 + +DESCRIPTION="Extensible Python-based build utility" +HOMEPAGE="http://www.scons.org/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz + doc? ( http://www.scons.org/doc/${PV}/PDF/${PN}-user.pdf -> ${P}-user.pdf + http://www.scons.org/doc/${PV}/HTML/${PN}-user.html -> ${P}-user.html )" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris" +IUSE="doc" + +#PATCHES=( ) + +python_prepare_all() { + # https://bugs.gentoo.org/show_bug.cgi?id=361061 + sed -i -e "s|/usr/local/bin:/opt/bin:/bin:/usr/bin|${EPREFIX}/usr/local/bin:${EPREFIX}/opt/bin:${EPREFIX}/bin:${EPREFIX}/usr/bin:/usr/local/bin:/opt/bin:/bin:/usr/bin|g" engine/SCons/Platform/posix.py || die + # and make sure the build system doesn't "force" /usr/local/ :( + sed -i -e "s/'darwin'/'NOWAYdarwinWAYNO'/" setup.py || die + + distutils-r1_python_prepare_all +} + +python_install() { + distutils-r1_python_install \ + --standard-lib \ + --no-version-script \ + --install-data "${EPREFIX}"/usr/share +} + +python_install_all() { + local DOCS=( {CHANGES,README,RELEASE}.txt ) + distutils-r1_python_install_all + + use doc && dodoc "${DISTDIR}"/${P}-user.{pdf,html} +} + +src_install() { + distutils-r1_src_install + + # Build system does not use build_scripts properly. + # http://scons.tigris.org/issues/show_bug.cgi?id=2891 + python_replicate_script "${ED}"usr/bin/scons{,ign,-time} +} diff --git a/dev-util/scons/scons-2.5.1.ebuild b/dev-util/scons/scons-2.5.1.ebuild new file mode 100644 index 000000000000..22476258b7e4 --- /dev/null +++ b/dev-util/scons/scons-2.5.1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 pypy ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 prefix + +DESCRIPTION="Extensible Python-based build utility" +HOMEPAGE="http://www.scons.org/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz + doc? ( http://www.scons.org/doc/${PV}/PDF/${PN}-user.pdf -> ${P}-user.pdf + http://www.scons.org/doc/${PV}/HTML/${PN}-user.html -> ${P}-user.html )" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris" +IUSE="doc" + +#PATCHES=( ) + +python_prepare_all() { + # bug #361061 + if use prefix ; then + eapply "${FILESDIR}"/scons-2.5.1-respect-path.patch + eprefixify engine/SCons/Platform/posix.py + fi + # and make sure the build system doesn't "force" /usr/local/ :( + sed -i -e "s/'darwin'/'NOWAYdarwinWAYNO'/" setup.py || die + + distutils-r1_python_prepare_all +} + +python_install() { + distutils-r1_python_install \ + --standard-lib \ + --no-version-script \ + --install-data "${EPREFIX}"/usr/share +} + +python_install_all() { + local DOCS=( {CHANGES,README,RELEASE}.txt ) + distutils-r1_python_install_all + + use doc && dodoc "${DISTDIR}"/${P}-user.{pdf,html} +} + +src_install() { + distutils-r1_src_install + + # Build system does not use build_scripts properly. + # http://scons.tigris.org/issues/show_bug.cgi?id=2891 + python_replicate_script "${ED}"usr/bin/scons{,ign,-time} +} diff --git a/dev-util/scons/scons-3.0.1-r1.ebuild b/dev-util/scons/scons-3.0.1-r1.ebuild new file mode 100644 index 000000000000..212863e12920 --- /dev/null +++ b/dev-util/scons/scons-3.0.1-r1.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 + +DESCRIPTION="Extensible Python-based build utility" +HOMEPAGE="http://www.scons.org/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz + doc? ( + http://www.scons.org/doc/${PV}/PDF/${PN}-user.pdf -> ${P}-user.pdf + http://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 ~sh ~sparc ~x86 ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris" +IUSE="doc test" + +S=${WORKDIR}/${P}/src + +PATCHES=( + # support env passthrough for Gentoo ebuilds + "${FILESDIR}"/scons-3.0.1-env-passthrough.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" + rm -r "${P}/src" || die + else + mkdir "${P}" || die + fi + + cd "${P}" || die + unpack "${P}.tar.gz" + mv "${P}" src || die +} + +src_prepare() { + # apply patches relatively to top directory + cd "${WORKDIR}/${P}" || die + distutils-r1_src_prepare + + # remove half-broken, useless custom commands + # and fix manpage install location + sed -i -e '/cmdclass/,/}$/d' \ + -e '/data_files/s:man/:share/man/:' "${S}"/setup.py || die +} + +python_test() { + cd "${WORKDIR}/${P}" || die + "${EPYTHON}" runtest.py -as \ + -j "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")" \ + --builddir "${BUILD_DIR}/lib" || + die "Tests fail with ${EPYTHON}" +} + +python_install_all() { + local DOCS=( {CHANGES,README,RELEASE}.txt ) + distutils-r1_python_install_all + rm "${ED%/}/usr/bin/scons.bat" || die + + use doc && dodoc "${DISTDIR}"/${P}-user.{pdf,html} +} diff --git a/dev-util/scons/scons-3.0.1-r100.ebuild b/dev-util/scons/scons-3.0.1-r100.ebuild new file mode 100644 index 000000000000..93ab8b574de7 --- /dev/null +++ b/dev-util/scons/scons-3.0.1-r100.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python{2_7,3_{4,5,6}} ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 + +DESCRIPTION="Extensible Python-based build utility" +HOMEPAGE="http://www.scons.org/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz + doc? ( + http://www.scons.org/doc/${PV}/PDF/${PN}-user.pdf -> ${P}-user.pdf + http://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 ~sh ~sparc ~x86 ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris" +IUSE="doc test" + +S=${WORKDIR}/${P}/src + +PATCHES=( + # support env passthrough for Gentoo ebuilds + "${FILESDIR}"/scons-3.0.1-env-passthrough.patch + # respect CC, CXX, C*FLAGS, LDFLAGS by default + "${FILESDIR}"/scons-3.0.1-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" + rm -r "${P}/src" || die + else + mkdir "${P}" || die + fi + + cd "${P}" || die + unpack "${P}.tar.gz" + mv "${P}" src || die +} + +src_prepare() { + # apply patches relatively to top directory + cd "${WORKDIR}/${P}" || die + distutils-r1_src_prepare + + # remove half-broken, useless custom commands + # and fix manpage install location + sed -i -e '/cmdclass/,/}$/d' \ + -e '/data_files/s:man/:share/man/:' "${S}"/setup.py || die +} + +python_test() { + cd "${WORKDIR}/${P}" || die + "${EPYTHON}" runtest.py -as \ + -j "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")" \ + --builddir "${BUILD_DIR}/lib" || + die "Tests fail with ${EPYTHON}" +} + +python_install_all() { + local DOCS=( {CHANGES,README,RELEASE}.txt ) + distutils-r1_python_install_all + rm "${ED%/}/usr/bin/scons.bat" || die + + use doc && dodoc "${DISTDIR}"/${P}-user.{pdf,html} +} diff --git a/dev-util/scons/scons-3.0.1-r3.ebuild b/dev-util/scons/scons-3.0.1-r3.ebuild new file mode 100644 index 000000000000..eaa2ef2426d0 --- /dev/null +++ b/dev-util/scons/scons-3.0.1-r3.ebuild @@ -0,0 +1,73 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 + +DESCRIPTION="Extensible Python-based build utility" +HOMEPAGE="http://www.scons.org/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz + doc? ( + http://www.scons.org/doc/${PV}/PDF/${PN}-user.pdf -> ${P}-user.pdf + http://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 ~sh ~sparc ~x86 ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris" +IUSE="doc test" + +S=${WORKDIR}/${P}/src + +PATCHES=( + # support env passthrough for Gentoo ebuilds + "${FILESDIR}"/scons-3.0.1-env-passthrough.patch + # respect CC, CXX, C*FLAGS, LDFLAGS by default + "${FILESDIR}"/scons-3.0.1-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" + rm -r "${P}/src" || die + else + mkdir "${P}" || die + fi + + cd "${P}" || die + unpack "${P}.tar.gz" + mv "${P}" src || die +} + +src_prepare() { + # apply patches relatively to top directory + cd "${WORKDIR}/${P}" || die + distutils-r1_src_prepare + + # remove half-broken, useless custom commands + # and fix manpage install location + sed -i -e '/cmdclass/,/}$/d' \ + -e '/data_files/s:man/:share/man/:' "${S}"/setup.py || die +} + +python_test() { + cd "${WORKDIR}/${P}" || die + "${EPYTHON}" runtest.py -as \ + -j "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")" \ + --builddir "${BUILD_DIR}/lib" || + die "Tests fail with ${EPYTHON}" +} + +python_install_all() { + local DOCS=( {CHANGES,README,RELEASE}.txt ) + distutils-r1_python_install_all + rm "${ED%/}/usr/bin/scons.bat" || die + + use doc && dodoc "${DISTDIR}"/${P}-user.{pdf,html} +} diff --git a/dev-util/scons/scons-3.0.1.ebuild b/dev-util/scons/scons-3.0.1.ebuild new file mode 100644 index 000000000000..1a6f2c59360e --- /dev/null +++ b/dev-util/scons/scons-3.0.1.ebuild @@ -0,0 +1,66 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python2_7 ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 + +DESCRIPTION="Extensible Python-based build utility" +HOMEPAGE="http://www.scons.org/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz + doc? ( + http://www.scons.org/doc/${PV}/PDF/${PN}-user.pdf -> ${P}-user.pdf + http://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 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd" +IUSE="doc test" + +S=${WORKDIR}/${P}/src + +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" + rm -r "${P}/src" || die + else + mkdir "${P}" || die + fi + + cd "${P}" || die + unpack "${P}.tar.gz" + mv "${P}" src || die +} + +src_prepare() { + # apply patches relatively to top directory + cd "${WORKDIR}/${P}" || die + distutils-r1_src_prepare + + # remove half-broken, useless custom commands + # and fix manpage install location + sed -i -e '/cmdclass/,/}$/d' \ + -e '/data_files/s:man/:share/man/:' "${S}"/setup.py || die +} + +python_test() { + cd "${WORKDIR}/${P}" || die + "${EPYTHON}" runtest.py -as \ + -j "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")" \ + --builddir "${BUILD_DIR}/lib" || + die "Tests fail with ${EPYTHON}" +} + +python_install_all() { + local DOCS=( {CHANGES,README,RELEASE}.txt ) + distutils-r1_python_install_all + rm "${ED%/}/usr/bin/scons.bat" || die + + use doc && dodoc "${DISTDIR}"/${P}-user.{pdf,html} +} -- cgit v1.2.3