From 15379ff3b369560c4bf13459b630387bf7349bb7 Mon Sep 17 00:00:00 2001 From: William Deegan Date: Sun, 13 Nov 2022 10:38:38 -0500 Subject: move debian and rpm into packaging dir --- debian/changelog | 330 -------------------------------------------- debian/compat | 1 - debian/control | 23 --- debian/copyright | 66 --------- debian/dirs | 3 - debian/docs | 1 - debian/postinst | 19 --- debian/prerm | 12 -- debian/rules | 113 --------------- packaging/debian/changelog | 330 ++++++++++++++++++++++++++++++++++++++++++++ packaging/debian/compat | 1 + packaging/debian/control | 23 +++ packaging/debian/copyright | 66 +++++++++ packaging/debian/dirs | 3 + packaging/debian/docs | 1 + packaging/debian/postinst | 19 +++ packaging/debian/prerm | 12 ++ packaging/debian/rules | 113 +++++++++++++++ packaging/rpm/scons.spec.in | 54 ++++++++ rpm/scons.spec.in | 54 -------- 20 files changed, 622 insertions(+), 622 deletions(-) delete mode 100755 debian/changelog delete mode 100644 debian/compat delete mode 100644 debian/control delete mode 100644 debian/copyright delete mode 100644 debian/dirs delete mode 100644 debian/docs delete mode 100644 debian/postinst delete mode 100644 debian/prerm delete mode 100644 debian/rules create mode 100755 packaging/debian/changelog create mode 100644 packaging/debian/compat create mode 100644 packaging/debian/control create mode 100644 packaging/debian/copyright create mode 100644 packaging/debian/dirs create mode 100644 packaging/debian/docs create mode 100644 packaging/debian/postinst create mode 100644 packaging/debian/prerm create mode 100644 packaging/debian/rules create mode 100644 packaging/rpm/scons.spec.in delete mode 100644 rpm/scons.spec.in diff --git a/debian/changelog b/debian/changelog deleted file mode 100755 index ba38e64..0000000 --- a/debian/changelog +++ /dev/null @@ -1,330 +0,0 @@ -scons (4.4.0) unstable; urgency=low - - * Feature release - - -- William Deegan Sat, 30 Jul 2022 14:08:29 -0700 - -scons (4.3.0) unstable; urgency=low - - * Feature release - - -- William Deegan Tue, 16 Nov 2021 18:12:46 -0700 - -scons (4.2.0) unstable; urgency=low - - * Feature release - - -- William Deegan Sat, 31 Jul 2021 18:12:46 -0700 - -scons (4.1.0) unstable; urgency=low - - * Feature release - - -- William Deegan Tues, 19 Jan 2021 15:04:42 -0700 - -scons (4.0.1) unstable; urgency=low - - * Maintenance Release - - -- William Deegan Thu, 16 Jul 2020 15:04:42 -0700 - -scons (4.0.0) unstable; urgency=low - - * Maintenance Release - - -- William Deegan Mon, 16 Dec 2019 15:04:42 -0700 - -scons (3.1.1) unstable; urgency=low - - * Maintenance Release - - -- William Deegan Mon, 16 Dec 2019 15:04:42 -0700 - -scons (3.1.0) unstable; urgency=low - - * Maintenance Release - - -- William Deegan Sat, 20 Jul 2019 15:04:42 -0700 - -scons (3.0.4) unstable; urgency=low - - * Maintenance Release - - -- William Deegan Sun, 20 Jan 2019 19:44:18 -0700 - -scons (3.0.3) unstable; urgency=low - - * Maintenance Release - - -- William Deegan Sat, 07 Jan 2019 19:44:18 -0700 - -scons (3.0.2) unstable; urgency=low - - * Maintenance Release - - -- William Deegan Mon, 31 Dec 2018 15:14:21 -0700 - -scons (3.0.1) unstable; urgency=low - - * Maintenance Release - - -- William Deegan Mon, 12 Nov 2017 15:31:33 -0700 - -scons (3.0.0) unstable; urgency=low - - * Feature Release - - -- William Deegan Mon, 18 Sep 2017 08:32:04 -0700 - -scons (2.5.1) unstable; urgency=low - - * Maintenance Release - - -- William Deegan Mon, 03 Nov 2016 13:37:42 -0700 - -scons (2.5.0) unstable; urgency=low - - * Feature Release - - -- William Deegan Sat, 09 Apr 2016 08:56:00 -0700 - -scons (2.4.1) unstable; urgency=low - - * Maintenance release. - - -- William Deegan Sat, 07 Nov 2015 08:56:00 -0700 - -scons (2.4.0) unstable; urgency=low - - * Maintenance release. - - -- William Deegan Mon, 21 Sep 2015 08:56:00 -0700 - -scons (2.3.6) unstable; urgency=low - - * Maintenance release. - - -- William Deegan Mon, 17 Jun 2015 21:07:32 -0700 - -scons (2.3.5) unstable; urgency=low - - * Maintenance release. - - -- William Deegan Mon, 17 Jun 2015 21:07:32 -0700 - -scons (2.3.4) unstable; urgency=low - - * Maintenance release. - - -- Gary Oberbrunner Sun, 27 Sep 2014 21:00:00 -0500 - -scons (2.3.3) unstable; urgency=low - - * Maintenance release. - - -- Gary Oberbrunner Sun, 24 Aug 2014 21:00:00 -0500 - -scons (2.3.2) unstable; urgency=low - - * Maintenance release. - - -- Gary Oberbrunner Fri, 4 July 2014 21:00:00 -0500 - -scons (2.3.0) unstable; urgency=low - - * Maintenance release. - - -- Gary Oberbrunner Sat, 9 Feb 2013 21:00:00 -0500 - - -scons (2.2.0) unstable; urgency=low - - * Maintenance release. - - -- Gary Oberbrunner Sun, 12 Aug 2012 09:00:00 -0500 - - -scons (0.97) unstable; urgency=low - - * Eighth beta release. - - -- Steven Knight Thu, 17 May 2007 08:59:41 -0500 - - -scons (0.96-1) unstable; urgency=low - - * Seventh beta release. - - -- Steven Knight Wed, 18 Aug 2004 13:36:40 +0000 - - -scons (0.95-1) unstable; urgency=low - - * Sixth beta release. - - -- Steven Knight Mon, 08 Mar 2004 06:43:20 -0600 - - -scons (0.94-1) unstable; urgency=low - - * Fifth beta release. - - -- Steven Knight Fri, 07 Nov 2003 05:29:48 -0600 - - -scons (0.93-1) unstable; urgency=low - - * Fourth beta release. - - -- Steven Knight Thu, 23 Oct 2003 07:26:55 -0500 - - -scons (0.92-1) unstable; urgency=low - - * Third beta release. - - -- Steven Knight Wed, 20 Aug 2003 03:45:28 -0500 - - -scons (0.91-1) unstable; urgency=low - - * Second beta release. - - -- Steven Knight Thu, 14 Aug 2003 13:00:44 -0500 - - -scons (0.90-1) unstable; urgency=low - - * First beta release. - - -- Steven Knight Wed, 25 Jun 2003 14:24:52 -0500 - - -scons (0.14-1) unstable; urgency=low - - * Eighth post-official-Debian build cycle - - -- Steven Knight Wed, 21 May 2003 05:16:32 -0500 - - -scons (0.13-1) unstable; urgency=low - - * Seventh post-official-Debian build cycle - - -- Steven Knight Mon, 31 Mar 2003 20:22:00 -0600 - - -scons (0.12-1) unstable; urgency=low - - * Sixth post-official-Debian build cycle - - -- Steven Knight Thu, 27 Mar 2003 23:52:09 -0600 - - -scons (0.11-1) unstable; urgency=low - - * Fifth post-official-Debian build cycle - - -- Steven Knight Tue, 11 Feb 2003 05:24:33 -0600 - - -scons (0.10-1) unstable; urgency=low - - * Fourth post-official-Debian build cycle - - -- Steven Knight Thu, 16 Jan 2003 04:11:46 -0600 - - -scons (0.09-1) unstable; urgency=low - - * Third post-official-Debian build cycle - - -- Steven Knight Thu, 5 Dec 2002 04:48:25 -0600 - - -scons (0.08-1) unstable; urgency=low - - * New upstream release (Closes: #158373) - - -- Moshe Zadka Mon, 21 Oct 2002 16:52:11 +0200 - -scons (0.07-3) unstable; urgency=low - - * Removing /usr/doc links - * Python 2.1 -> Python 2.2 - - -- Moshe Zadka Tue, 27 Aug 2002 18:48:02 +0300 - -scons (0.07-2) unstable; urgency=low - - * Ugh, who would put distutils.core in python-dev? Changing build - dependancies (Closes: #146601) - * While we're at it, update Standards-Version - - -- Moshe Zadka Sat, 11 May 2002 08:25:07 +0300 - -scons (0.07-1) unstable; urgency=low - - * New upstream version - * Packaging properly, instead of as debian native - * Modifying copyright to include upstream location (Closes: #144491) - * Fixing my e-mail address (Closes: #144490) - * Thanks for looking after my packages, tbm ;-) - - -- Moshe Zadka Sat, 4 May 2002 13:05:53 +0300 - -scons (0.06-1) unstable; urgency=low - - * New upstream version - - -- Moshe Zadka Mon, 15 Apr 2002 19:22:09 +0300 - -scons (0.05-1) unstable; urgency=low - - * First upload (closes: #140128) - - -- Moshe Zadka Wed, 27 Mar 2002 10:40:42 +0200 - - -scons (0.06-1) unstable; urgency=low - - * Sixth Release. - - -- Steven Knight Thu, 28 Mar 2002 01:24:29 -0600 - - -scons (0.05-1) unstable; urgency=low - - * Fifth Release. - - -- Steven Knight Thu, 21 Feb 2002 16:50:03 -0600 - - -scons (0.04-1) unstable; urgency=low - - * Fourth Release. - - -- Steven Knight Wed, 30 Jan 2002 11:09:42 -0600 - - -scons (0.03-1) unstable; urgency=low - - * Third Release. - - -- Steven Knight Fri, 11 Jan 2002 01:09:30 -0600 - - -scons (0.02-1) unstable; urgency=low - - * Second Release. - - -- Steven Knight Fri, 14 Dec 2001 13:23:03 -0600 - - -scons (0.01-1) unstable; urgency=low - - * Initial Release. - - -- Anthony Roach Mon, 1 Oct 2001 23:24:45 -0500 - - diff --git a/debian/compat b/debian/compat deleted file mode 100644 index 7ed6ff8..0000000 --- a/debian/compat +++ /dev/null @@ -1 +0,0 @@ -5 diff --git a/debian/control b/debian/control deleted file mode 100644 index d0a61fa..0000000 --- a/debian/control +++ /dev/null @@ -1,23 +0,0 @@ -Source: scons -Section: devel -Priority: optional -Maintainer: Moshe Zadka -Build-Depends-Indep: debhelper (>> 5.0.0), python-dev (>> 2.7) -Standards-Version: 3.5.6 - -Package: scons -Architecture: all -Depends: python (>> 2.7) -Description: A replacement for Make - SCons is an Open Source software construction tool--that is, a build - tool; an improved substitute for the classic Make utility; a better - way to build software. SCons is based on the design which won the - Software Carpentry build tool design competition in August 2000. SCons - "configuration files" are Python scripts that call an API to establish - dependencies and specify how targets are built. SCons maintains a global - view of all dependencies in a tree, and can scan source (or other) files - for implicit dependencies, such as files specified on #include lines. - SCons uses MD5 signatures to rebuild only when the contents of a file - have really changed, not just when the timestamp has been touched. - SCons supports side-by-side variant builds, and is easily extended with - user-defined Builder and/or Scanner objects. diff --git a/debian/copyright b/debian/copyright deleted file mode 100644 index c4cc1ef..0000000 --- a/debian/copyright +++ /dev/null @@ -1,66 +0,0 @@ -This package was debianized by Moshe Zadka on -Wed, 27 Mar 2002 10:40:28 +0200. - -Upstream Author(s): -Steven Knight -knight at baldmt dot com -http://www.baldmt.com/~knight/ - -With plenty of help from the SCons Development team: - Chad Austin - Charles Crain - Steve Leblanc - Anthony Roach - - -Copyright: - -The software comes with the following notice in the file LICENSE.txt: -__COPYRIGHT__ - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY -KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -This package was debianized by Anthony Roach - -The package source can be downloaded from http://www.scons.org/ - -Upstream Author: Steven Knight - -__COPYRIGHT__ - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY -KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - diff --git a/debian/dirs b/debian/dirs deleted file mode 100644 index 93a451b..0000000 --- a/debian/dirs +++ /dev/null @@ -1,3 +0,0 @@ -usr/bin -usr/share/doc/scons -usr/share/man/man1 diff --git a/debian/docs b/debian/docs deleted file mode 100644 index 09547ff..0000000 --- a/debian/docs +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/scons/* diff --git a/debian/postinst b/debian/postinst deleted file mode 100644 index 6a7d335..0000000 --- a/debian/postinst +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh -set -e -if [ "$1" = "configure" ]; then - if [ -d /usr/doc -a ! -e /usr/doc/scons -a -d /usr/share/doc/scons ]; then - ln -sf ../share/doc/scons /usr/doc/scons - fi -fi - -NAME=scons -PYTHON_VERSION=`python -V 2>&1| cut -d" " -f2 | cut -d"." -f1-2` -PYTHON_EXE_NAME=`which python$PYTHON_VERSION` -case "$1" in - configure|abort-upgrade|abort-remove|abort-deconfigure) - dpkg --listfiles $NAME | grep '\.py$' | \ - xargs -n 1 $PYTHON_EXE_NAME -c 'import py_compile,sys;py_compile.compile(sys.argv[1])' - dpkg --listfiles $NAME | grep '\.py$' | \ - xargs -n 1 $PYTHON_EXE_NAME -O -c 'import py_compile,sys;py_compile.compile(sys.argv[1])' - ;; -esac diff --git a/debian/prerm b/debian/prerm deleted file mode 100644 index 62531a3..0000000 --- a/debian/prerm +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh -set -e - -NAME=scons - -dpkg --listfiles $NAME | - awk '$0~/\.py$/ {print $0"c\n" $0"o"}' | - xargs rm -f >&2 - -if [ \( "$1" = "upgrade" -o "$1" = "remove" \) -a -L /usr/doc/scons ]; then - rm -f /usr/doc/scons -fi diff --git a/debian/rules b/debian/rules deleted file mode 100644 index 9d83723..0000000 --- a/debian/rules +++ /dev/null @@ -1,113 +0,0 @@ -#!/usr/bin/make -f -# Sample debian/rules that uses debhelper. -# GNU copyright 1997 to 1999 by Joey Hess. - -######## -# Overridable variables added to support building test .deb files -# as part of routine SCons builds. --SK -BUILDDEB_OPTIONS= -PYTHON_VERSION=`python -V 2>&1| cut -d" " -f2 | cut -d"." -f1-2` -PYTHON_PATH=/usr/bin/python -PYTHON=$(PYTHON_PATH)$(PYTHON_VERSION) -####### - -# Uncomment this to turn on verbose mode. -#export DH_VERBOSE=1 - -# This is the debhelper compatability version to use. -configure: configure-stamp -configure-stamp: - dh_testdir - # Add here commands to configure the package. - - - touch configure-stamp - -build: configure-stamp build-stamp -build-stamp: - dh_testdir - $(PYTHON) setup.py build - touch build-stamp - -clean: - dh_testdir - dh_testroot - rm -f build-stamp configure-stamp - rm -rf build/ - dh_clean - -install: build - dh_testdir - dh_testroot - dh_prep - dh_installdirs - - # Add here commands to install the package into debian/scons. - @######## - @# The SCons project uses Aegis for development, which requires - @# that targets be removed explicitly before they're created. - @# (They could be symlinks to checked-in read-only copies in the - @# repository.) We also can't assume that the proper directories - @# already exist on our non-Debian test build systems. Hence, - @# we do a lot of mkdir -p and rm -f here... --SK - @######## - mkdir -p debian/scons/usr/lib/python$(PYTHON_VERSION)/site-packages/ - rm -rf debian/scons/usr/lib/python$(PYTHON_VERSION)/site-packages/SCons - cp -r build/lib*/SCons debian/scons/usr/lib/python$(PYTHON_VERSION)/site-packages/ - - mkdir -p debian/scons/usr/bin/ - rm -f debian/scons/usr/bin/scons - rm -f debian/scons/usr/bin/sconsign -ifeq ($(PYTHON),python) - cp build/scripts/scons debian/scons/usr/bin/scons - cp build/scripts/sconsign debian/scons/usr/bin/sconsign -else - sed '1s|.*|#!/usr/bin/python2.2|' build/scripts/scons > debian/scons/usr/bin/scons - sed '1s|.*|#!/usr/bin/python2.2|' build/scripts/sconsign > debian/scons/usr/bin/sconsign -endif - chmod +x debian/scons/usr/bin/scons - chmod +x debian/scons/usr/bin/sconsign - - mkdir -p debian/scons/usr/share/man/man1/ - rm -f debian/scons/usr/share/man/man1/scons.1 - rm -f debian/scons/usr/share/man/man1/sconsign.1 - cp scons.1 debian/scons/usr/share/man/man1/ - cp sconsign.1 debian/scons/usr/share/man/man1/ - - mkdir -p debian/scons/usr/share/doc/scons - rm -f debian/scons/usr/share/doc/scons/changelog - rm -f debian/scons/usr/share/doc/scons/README.txt - rm -f debian/scons/usr/share/doc/scons/CHANGES.txt - rm -f debian/scons/usr/share/doc/scons/*.gz - rm -f debian/scons/usr/share/doc/scons/copyright - - cp README.txt debian/scons/usr/share/doc/scons/ - cp CHANGES.txt debian/scons/usr/share/doc/scons/ - - gzip -9 debian/scons/usr/share/doc/scons/* - - cp debian/changelog debian/scons/usr/share/doc/scons/changelog - - cp debian/copyright debian/scons/usr/share/doc/scons/ - -# Build architecture-independent files here. -binary-indep: build install - dh_testdir - dh_testroot - #dh_installdocs - dh_installchangelogs - dh_link - dh_strip - dh_compress - dh_fixperms - dh_installdeb - dh_shlibdeps - dh_gencontrol - dh_md5sums - dh_builddeb $(BUILDDEB_OPTIONS) - -# Build architecture-dependent files here. -binary-arch: build install - -binary: binary-indep binary-arch -.PHONY: build clean binary-indep binary-arch binary install configure diff --git a/packaging/debian/changelog b/packaging/debian/changelog new file mode 100755 index 0000000..ba38e64 --- /dev/null +++ b/packaging/debian/changelog @@ -0,0 +1,330 @@ +scons (4.4.0) unstable; urgency=low + + * Feature release + + -- William Deegan Sat, 30 Jul 2022 14:08:29 -0700 + +scons (4.3.0) unstable; urgency=low + + * Feature release + + -- William Deegan Tue, 16 Nov 2021 18:12:46 -0700 + +scons (4.2.0) unstable; urgency=low + + * Feature release + + -- William Deegan Sat, 31 Jul 2021 18:12:46 -0700 + +scons (4.1.0) unstable; urgency=low + + * Feature release + + -- William Deegan Tues, 19 Jan 2021 15:04:42 -0700 + +scons (4.0.1) unstable; urgency=low + + * Maintenance Release + + -- William Deegan Thu, 16 Jul 2020 15:04:42 -0700 + +scons (4.0.0) unstable; urgency=low + + * Maintenance Release + + -- William Deegan Mon, 16 Dec 2019 15:04:42 -0700 + +scons (3.1.1) unstable; urgency=low + + * Maintenance Release + + -- William Deegan Mon, 16 Dec 2019 15:04:42 -0700 + +scons (3.1.0) unstable; urgency=low + + * Maintenance Release + + -- William Deegan Sat, 20 Jul 2019 15:04:42 -0700 + +scons (3.0.4) unstable; urgency=low + + * Maintenance Release + + -- William Deegan Sun, 20 Jan 2019 19:44:18 -0700 + +scons (3.0.3) unstable; urgency=low + + * Maintenance Release + + -- William Deegan Sat, 07 Jan 2019 19:44:18 -0700 + +scons (3.0.2) unstable; urgency=low + + * Maintenance Release + + -- William Deegan Mon, 31 Dec 2018 15:14:21 -0700 + +scons (3.0.1) unstable; urgency=low + + * Maintenance Release + + -- William Deegan Mon, 12 Nov 2017 15:31:33 -0700 + +scons (3.0.0) unstable; urgency=low + + * Feature Release + + -- William Deegan Mon, 18 Sep 2017 08:32:04 -0700 + +scons (2.5.1) unstable; urgency=low + + * Maintenance Release + + -- William Deegan Mon, 03 Nov 2016 13:37:42 -0700 + +scons (2.5.0) unstable; urgency=low + + * Feature Release + + -- William Deegan Sat, 09 Apr 2016 08:56:00 -0700 + +scons (2.4.1) unstable; urgency=low + + * Maintenance release. + + -- William Deegan Sat, 07 Nov 2015 08:56:00 -0700 + +scons (2.4.0) unstable; urgency=low + + * Maintenance release. + + -- William Deegan Mon, 21 Sep 2015 08:56:00 -0700 + +scons (2.3.6) unstable; urgency=low + + * Maintenance release. + + -- William Deegan Mon, 17 Jun 2015 21:07:32 -0700 + +scons (2.3.5) unstable; urgency=low + + * Maintenance release. + + -- William Deegan Mon, 17 Jun 2015 21:07:32 -0700 + +scons (2.3.4) unstable; urgency=low + + * Maintenance release. + + -- Gary Oberbrunner Sun, 27 Sep 2014 21:00:00 -0500 + +scons (2.3.3) unstable; urgency=low + + * Maintenance release. + + -- Gary Oberbrunner Sun, 24 Aug 2014 21:00:00 -0500 + +scons (2.3.2) unstable; urgency=low + + * Maintenance release. + + -- Gary Oberbrunner Fri, 4 July 2014 21:00:00 -0500 + +scons (2.3.0) unstable; urgency=low + + * Maintenance release. + + -- Gary Oberbrunner Sat, 9 Feb 2013 21:00:00 -0500 + + +scons (2.2.0) unstable; urgency=low + + * Maintenance release. + + -- Gary Oberbrunner Sun, 12 Aug 2012 09:00:00 -0500 + + +scons (0.97) unstable; urgency=low + + * Eighth beta release. + + -- Steven Knight Thu, 17 May 2007 08:59:41 -0500 + + +scons (0.96-1) unstable; urgency=low + + * Seventh beta release. + + -- Steven Knight Wed, 18 Aug 2004 13:36:40 +0000 + + +scons (0.95-1) unstable; urgency=low + + * Sixth beta release. + + -- Steven Knight Mon, 08 Mar 2004 06:43:20 -0600 + + +scons (0.94-1) unstable; urgency=low + + * Fifth beta release. + + -- Steven Knight Fri, 07 Nov 2003 05:29:48 -0600 + + +scons (0.93-1) unstable; urgency=low + + * Fourth beta release. + + -- Steven Knight Thu, 23 Oct 2003 07:26:55 -0500 + + +scons (0.92-1) unstable; urgency=low + + * Third beta release. + + -- Steven Knight Wed, 20 Aug 2003 03:45:28 -0500 + + +scons (0.91-1) unstable; urgency=low + + * Second beta release. + + -- Steven Knight Thu, 14 Aug 2003 13:00:44 -0500 + + +scons (0.90-1) unstable; urgency=low + + * First beta release. + + -- Steven Knight Wed, 25 Jun 2003 14:24:52 -0500 + + +scons (0.14-1) unstable; urgency=low + + * Eighth post-official-Debian build cycle + + -- Steven Knight Wed, 21 May 2003 05:16:32 -0500 + + +scons (0.13-1) unstable; urgency=low + + * Seventh post-official-Debian build cycle + + -- Steven Knight Mon, 31 Mar 2003 20:22:00 -0600 + + +scons (0.12-1) unstable; urgency=low + + * Sixth post-official-Debian build cycle + + -- Steven Knight Thu, 27 Mar 2003 23:52:09 -0600 + + +scons (0.11-1) unstable; urgency=low + + * Fifth post-official-Debian build cycle + + -- Steven Knight Tue, 11 Feb 2003 05:24:33 -0600 + + +scons (0.10-1) unstable; urgency=low + + * Fourth post-official-Debian build cycle + + -- Steven Knight Thu, 16 Jan 2003 04:11:46 -0600 + + +scons (0.09-1) unstable; urgency=low + + * Third post-official-Debian build cycle + + -- Steven Knight Thu, 5 Dec 2002 04:48:25 -0600 + + +scons (0.08-1) unstable; urgency=low + + * New upstream release (Closes: #158373) + + -- Moshe Zadka Mon, 21 Oct 2002 16:52:11 +0200 + +scons (0.07-3) unstable; urgency=low + + * Removing /usr/doc links + * Python 2.1 -> Python 2.2 + + -- Moshe Zadka Tue, 27 Aug 2002 18:48:02 +0300 + +scons (0.07-2) unstable; urgency=low + + * Ugh, who would put distutils.core in python-dev? Changing build + dependancies (Closes: #146601) + * While we're at it, update Standards-Version + + -- Moshe Zadka Sat, 11 May 2002 08:25:07 +0300 + +scons (0.07-1) unstable; urgency=low + + * New upstream version + * Packaging properly, instead of as debian native + * Modifying copyright to include upstream location (Closes: #144491) + * Fixing my e-mail address (Closes: #144490) + * Thanks for looking after my packages, tbm ;-) + + -- Moshe Zadka Sat, 4 May 2002 13:05:53 +0300 + +scons (0.06-1) unstable; urgency=low + + * New upstream version + + -- Moshe Zadka Mon, 15 Apr 2002 19:22:09 +0300 + +scons (0.05-1) unstable; urgency=low + + * First upload (closes: #140128) + + -- Moshe Zadka Wed, 27 Mar 2002 10:40:42 +0200 + + +scons (0.06-1) unstable; urgency=low + + * Sixth Release. + + -- Steven Knight Thu, 28 Mar 2002 01:24:29 -0600 + + +scons (0.05-1) unstable; urgency=low + + * Fifth Release. + + -- Steven Knight Thu, 21 Feb 2002 16:50:03 -0600 + + +scons (0.04-1) unstable; urgency=low + + * Fourth Release. + + -- Steven Knight Wed, 30 Jan 2002 11:09:42 -0600 + + +scons (0.03-1) unstable; urgency=low + + * Third Release. + + -- Steven Knight Fri, 11 Jan 2002 01:09:30 -0600 + + +scons (0.02-1) unstable; urgency=low + + * Second Release. + + -- Steven Knight Fri, 14 Dec 2001 13:23:03 -0600 + + +scons (0.01-1) unstable; urgency=low + + * Initial Release. + + -- Anthony Roach Mon, 1 Oct 2001 23:24:45 -0500 + + diff --git a/packaging/debian/compat b/packaging/debian/compat new file mode 100644 index 0000000..7ed6ff8 --- /dev/null +++ b/packaging/debian/compat @@ -0,0 +1 @@ +5 diff --git a/packaging/debian/control b/packaging/debian/control new file mode 100644 index 0000000..d0a61fa --- /dev/null +++ b/packaging/debian/control @@ -0,0 +1,23 @@ +Source: scons +Section: devel +Priority: optional +Maintainer: Moshe Zadka +Build-Depends-Indep: debhelper (>> 5.0.0), python-dev (>> 2.7) +Standards-Version: 3.5.6 + +Package: scons +Architecture: all +Depends: python (>> 2.7) +Description: A replacement for Make + SCons is an Open Source software construction tool--that is, a build + tool; an improved substitute for the classic Make utility; a better + way to build software. SCons is based on the design which won the + Software Carpentry build tool design competition in August 2000. SCons + "configuration files" are Python scripts that call an API to establish + dependencies and specify how targets are built. SCons maintains a global + view of all dependencies in a tree, and can scan source (or other) files + for implicit dependencies, such as files specified on #include lines. + SCons uses MD5 signatures to rebuild only when the contents of a file + have really changed, not just when the timestamp has been touched. + SCons supports side-by-side variant builds, and is easily extended with + user-defined Builder and/or Scanner objects. diff --git a/packaging/debian/copyright b/packaging/debian/copyright new file mode 100644 index 0000000..c4cc1ef --- /dev/null +++ b/packaging/debian/copyright @@ -0,0 +1,66 @@ +This package was debianized by Moshe Zadka on +Wed, 27 Mar 2002 10:40:28 +0200. + +Upstream Author(s): +Steven Knight +knight at baldmt dot com +http://www.baldmt.com/~knight/ + +With plenty of help from the SCons Development team: + Chad Austin + Charles Crain + Steve Leblanc + Anthony Roach + + +Copyright: + +The software comes with the following notice in the file LICENSE.txt: +__COPYRIGHT__ + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +This package was debianized by Anthony Roach + +The package source can be downloaded from http://www.scons.org/ + +Upstream Author: Steven Knight + +__COPYRIGHT__ + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + diff --git a/packaging/debian/dirs b/packaging/debian/dirs new file mode 100644 index 0000000..93a451b --- /dev/null +++ b/packaging/debian/dirs @@ -0,0 +1,3 @@ +usr/bin +usr/share/doc/scons +usr/share/man/man1 diff --git a/packaging/debian/docs b/packaging/debian/docs new file mode 100644 index 0000000..09547ff --- /dev/null +++ b/packaging/debian/docs @@ -0,0 +1 @@ +usr/share/doc/scons/* diff --git a/packaging/debian/postinst b/packaging/debian/postinst new file mode 100644 index 0000000..6a7d335 --- /dev/null +++ b/packaging/debian/postinst @@ -0,0 +1,19 @@ +#!/bin/sh +set -e +if [ "$1" = "configure" ]; then + if [ -d /usr/doc -a ! -e /usr/doc/scons -a -d /usr/share/doc/scons ]; then + ln -sf ../share/doc/scons /usr/doc/scons + fi +fi + +NAME=scons +PYTHON_VERSION=`python -V 2>&1| cut -d" " -f2 | cut -d"." -f1-2` +PYTHON_EXE_NAME=`which python$PYTHON_VERSION` +case "$1" in + configure|abort-upgrade|abort-remove|abort-deconfigure) + dpkg --listfiles $NAME | grep '\.py$' | \ + xargs -n 1 $PYTHON_EXE_NAME -c 'import py_compile,sys;py_compile.compile(sys.argv[1])' + dpkg --listfiles $NAME | grep '\.py$' | \ + xargs -n 1 $PYTHON_EXE_NAME -O -c 'import py_compile,sys;py_compile.compile(sys.argv[1])' + ;; +esac diff --git a/packaging/debian/prerm b/packaging/debian/prerm new file mode 100644 index 0000000..62531a3 --- /dev/null +++ b/packaging/debian/prerm @@ -0,0 +1,12 @@ +#!/bin/sh +set -e + +NAME=scons + +dpkg --listfiles $NAME | + awk '$0~/\.py$/ {print $0"c\n" $0"o"}' | + xargs rm -f >&2 + +if [ \( "$1" = "upgrade" -o "$1" = "remove" \) -a -L /usr/doc/scons ]; then + rm -f /usr/doc/scons +fi diff --git a/packaging/debian/rules b/packaging/debian/rules new file mode 100644 index 0000000..9d83723 --- /dev/null +++ b/packaging/debian/rules @@ -0,0 +1,113 @@ +#!/usr/bin/make -f +# Sample debian/rules that uses debhelper. +# GNU copyright 1997 to 1999 by Joey Hess. + +######## +# Overridable variables added to support building test .deb files +# as part of routine SCons builds. --SK +BUILDDEB_OPTIONS= +PYTHON_VERSION=`python -V 2>&1| cut -d" " -f2 | cut -d"." -f1-2` +PYTHON_PATH=/usr/bin/python +PYTHON=$(PYTHON_PATH)$(PYTHON_VERSION) +####### + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# This is the debhelper compatability version to use. +configure: configure-stamp +configure-stamp: + dh_testdir + # Add here commands to configure the package. + + + touch configure-stamp + +build: configure-stamp build-stamp +build-stamp: + dh_testdir + $(PYTHON) setup.py build + touch build-stamp + +clean: + dh_testdir + dh_testroot + rm -f build-stamp configure-stamp + rm -rf build/ + dh_clean + +install: build + dh_testdir + dh_testroot + dh_prep + dh_installdirs + + # Add here commands to install the package into debian/scons. + @######## + @# The SCons project uses Aegis for development, which requires + @# that targets be removed explicitly before they're created. + @# (They could be symlinks to checked-in read-only copies in the + @# repository.) We also can't assume that the proper directories + @# already exist on our non-Debian test build systems. Hence, + @# we do a lot of mkdir -p and rm -f here... --SK + @######## + mkdir -p debian/scons/usr/lib/python$(PYTHON_VERSION)/site-packages/ + rm -rf debian/scons/usr/lib/python$(PYTHON_VERSION)/site-packages/SCons + cp -r build/lib*/SCons debian/scons/usr/lib/python$(PYTHON_VERSION)/site-packages/ + + mkdir -p debian/scons/usr/bin/ + rm -f debian/scons/usr/bin/scons + rm -f debian/scons/usr/bin/sconsign +ifeq ($(PYTHON),python) + cp build/scripts/scons debian/scons/usr/bin/scons + cp build/scripts/sconsign debian/scons/usr/bin/sconsign +else + sed '1s|.*|#!/usr/bin/python2.2|' build/scripts/scons > debian/scons/usr/bin/scons + sed '1s|.*|#!/usr/bin/python2.2|' build/scripts/sconsign > debian/scons/usr/bin/sconsign +endif + chmod +x debian/scons/usr/bin/scons + chmod +x debian/scons/usr/bin/sconsign + + mkdir -p debian/scons/usr/share/man/man1/ + rm -f debian/scons/usr/share/man/man1/scons.1 + rm -f debian/scons/usr/share/man/man1/sconsign.1 + cp scons.1 debian/scons/usr/share/man/man1/ + cp sconsign.1 debian/scons/usr/share/man/man1/ + + mkdir -p debian/scons/usr/share/doc/scons + rm -f debian/scons/usr/share/doc/scons/changelog + rm -f debian/scons/usr/share/doc/scons/README.txt + rm -f debian/scons/usr/share/doc/scons/CHANGES.txt + rm -f debian/scons/usr/share/doc/scons/*.gz + rm -f debian/scons/usr/share/doc/scons/copyright + + cp README.txt debian/scons/usr/share/doc/scons/ + cp CHANGES.txt debian/scons/usr/share/doc/scons/ + + gzip -9 debian/scons/usr/share/doc/scons/* + + cp debian/changelog debian/scons/usr/share/doc/scons/changelog + + cp debian/copyright debian/scons/usr/share/doc/scons/ + +# Build architecture-independent files here. +binary-indep: build install + dh_testdir + dh_testroot + #dh_installdocs + dh_installchangelogs + dh_link + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb $(BUILDDEB_OPTIONS) + +# Build architecture-dependent files here. +binary-arch: build install + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install configure diff --git a/packaging/rpm/scons.spec.in b/packaging/rpm/scons.spec.in new file mode 100644 index 0000000..9b97a07 --- /dev/null +++ b/packaging/rpm/scons.spec.in @@ -0,0 +1,54 @@ +%define name scons +%define version __VERSION__ +%define release 1 +%define _unpackaged_files_terminate_build 0 + +Summary: an Open Source software construction tool +Name: %{name} +Version: %{version} +Release: %{release} +Source0: %{name}-%{version}.tar.gz +#Copyright: The SCons Foundation +License: MIT, freely distributable +Group: Development/Tools +BuildRoot: %{_tmppath}/%{name}-buildroot +Prefix: %{_prefix} +BuildArchitectures: noarch +Vendor: The SCons Development Team +Packager: The SCons Development Team +Requires: python >= 2.4 +Url: http://www.scons.org/ + +%description +SCons is an Open Source software construction tool--that is, a build +tool; an improved substitute for the classic Make utility; a better way +to build software. SCons is based on the design which won the Software +Carpentry build tool design competition in August 2000. + +SCons "configuration files" are Python scripts, eliminating the need +to learn a new build tool syntax. SCons maintains a global view of +all dependencies in a tree, and can scan source (or other) files for +implicit dependencies, such as files specified on #include lines. SCons +uses MD5 signatures to rebuild only when the contents of a file have +really changed, not just when the timestamp has been touched. SCons +supports side-by-side variant builds, and is easily extended with user- +defined Builder and/or Scanner objects. + +%prep +%setup + +%build +python setup.py build + +%install +python setup.py install --root=$RPM_BUILD_ROOT --install-lib=/usr/lib/scons --install-scripts=/usr/bin --install-data=/usr/share + +%clean +rm -rf $RPM_BUILD_ROOT + +%files +%defattr(-,root,root) +__RPM_FILES__ +%doc %{_mandir}/man1/scons.1* +%doc %{_mandir}/man1/sconsign.1* +%doc %{_mandir}/man1/scons-time.1* diff --git a/rpm/scons.spec.in b/rpm/scons.spec.in deleted file mode 100644 index 9b97a07..0000000 --- a/rpm/scons.spec.in +++ /dev/null @@ -1,54 +0,0 @@ -%define name scons -%define version __VERSION__ -%define release 1 -%define _unpackaged_files_terminate_build 0 - -Summary: an Open Source software construction tool -Name: %{name} -Version: %{version} -Release: %{release} -Source0: %{name}-%{version}.tar.gz -#Copyright: The SCons Foundation -License: MIT, freely distributable -Group: Development/Tools -BuildRoot: %{_tmppath}/%{name}-buildroot -Prefix: %{_prefix} -BuildArchitectures: noarch -Vendor: The SCons Development Team -Packager: The SCons Development Team -Requires: python >= 2.4 -Url: http://www.scons.org/ - -%description -SCons is an Open Source software construction tool--that is, a build -tool; an improved substitute for the classic Make utility; a better way -to build software. SCons is based on the design which won the Software -Carpentry build tool design competition in August 2000. - -SCons "configuration files" are Python scripts, eliminating the need -to learn a new build tool syntax. SCons maintains a global view of -all dependencies in a tree, and can scan source (or other) files for -implicit dependencies, such as files specified on #include lines. SCons -uses MD5 signatures to rebuild only when the contents of a file have -really changed, not just when the timestamp has been touched. SCons -supports side-by-side variant builds, and is easily extended with user- -defined Builder and/or Scanner objects. - -%prep -%setup - -%build -python setup.py build - -%install -python setup.py install --root=$RPM_BUILD_ROOT --install-lib=/usr/lib/scons --install-scripts=/usr/bin --install-data=/usr/share - -%clean -rm -rf $RPM_BUILD_ROOT - -%files -%defattr(-,root,root) -__RPM_FILES__ -%doc %{_mandir}/man1/scons.1* -%doc %{_mandir}/man1/sconsign.1* -%doc %{_mandir}/man1/scons-time.1* -- cgit v0.12 From 93a613f6ccd20e2c60bf32c102b12458e47bcf9b Mon Sep 17 00:00:00 2001 From: William Deegan Date: Sun, 13 Nov 2022 11:35:43 -0500 Subject: Add example site_init.py to propagate SOURCE_DATE_EPOCH from users shell environment to support reproducible builds. This is replacement logic for PR #4239 --- README.rst | 8 ++++++++ packaging/etc/README.txt | 0 packaging/etc/reproducible_install.sh | 19 +++++++++++++++++++ packaging/etc/reproducible_site_init.py | 23 +++++++++++++++++++++++ 4 files changed, 50 insertions(+) create mode 100644 packaging/etc/README.txt create mode 100644 packaging/etc/reproducible_install.sh create mode 100644 packaging/etc/reproducible_site_init.py diff --git a/README.rst b/README.rst index 1cc390d..bf34fd1 100755 --- a/README.rst +++ b/README.rst @@ -258,6 +258,14 @@ software, or hardware) to support continued work on the project. Information is available at https://www.scons.org/donate.html or the GitHub Sponsors button on https://github.com/scons/scons. +Reproducible Builds +=================== +In order to suppor those users who which to produce reproducible builds +(https://reproducible-builds.org/specs/source-date-epoch/) we're now including +logic to force SCons to propagate SOURCE_DATE_EPOCH from your shell environment for +all SCons builds to support reproducible builds we're now providing an example +site_init.py and a script to install it in your ~/.scons. See packaging/etc/README.txt +for more info For More Information ==================== diff --git a/packaging/etc/README.txt b/packaging/etc/README.txt new file mode 100644 index 0000000..e69de29 diff --git a/packaging/etc/reproducible_install.sh b/packaging/etc/reproducible_install.sh new file mode 100644 index 0000000..2eb6ad1 --- /dev/null +++ b/packaging/etc/reproducible_install.sh @@ -0,0 +1,19 @@ +#!/usr/bin/env bash + +set -e +set -x + +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +mkdir -p ~/.site_scons + +if [ ! -f "~/.site_scons/site_init.py" ] +then + echo "File ~/.site_scons/site_init.py does not exist" + echo "We will add one which supports reproducible builds" + cp ${SCRIPT_DIR}/site_init.py ~/.site_scons/site_init.py +else + echo "File ~/.site_scons/site_init.py already exists" + echo "We will not overwrite it. Please copy the content" + echo "from ${SCRIPT_DIR}/site_init.py" +fi diff --git a/packaging/etc/reproducible_site_init.py b/packaging/etc/reproducible_site_init.py new file mode 100644 index 0000000..e4672a1 --- /dev/null +++ b/packaging/etc/reproducible_site_init.py @@ -0,0 +1,23 @@ +""" +Use this file as your ~/.site_scons/scons_init.py to enable reprodicble builds as described at +https://reproducible-builds.org/specs/source-date-epoch/ +""" + +import os +import SCons.Environment + +old_init = SCons.Environment.Base.__init__ + + +def new_init(self, **kw): + """ + This logic will add SOURCE_DATE_EPOCH to the execution environment used to run + all the build commands. + """ + print("In my custom init") + old_init(self, **kw) + if 'SOURCE_DATE_EPOCH' in os.environ: + self._dict['ENV']['SOURCE_DATE_EPOCH'] = os.environ['SOURCE_DATE_EPOCH'] + + +SCons.Environment.Base.__init__ = new_init -- cgit v0.12 From e897c501d9aeb3aeeebf011dbe110cc2c0f59f0b Mon Sep 17 00:00:00 2001 From: William Deegan Date: Sun, 13 Nov 2022 14:48:03 -0500 Subject: Fixes to installation script. Text to README.txt --- SCons/__init__.py | 8 ++++---- packaging/etc/README.txt | 10 ++++++++++ packaging/etc/reproducible_install.sh | 16 +++++++--------- packaging/etc/reproducible_site_init.py | 3 ++- 4 files changed, 23 insertions(+), 14 deletions(-) mode change 100644 => 100755 packaging/etc/reproducible_install.sh diff --git a/SCons/__init__.py b/SCons/__init__.py index de64c52..8f397bc 100644 --- a/SCons/__init__.py +++ b/SCons/__init__.py @@ -1,9 +1,9 @@ __version__="4.4.1" __copyright__="Copyright (c) 2001 - 2022 The SCons Foundation" __developer__="bdbaddog" -__date__="Mon, 15 Aug 2022 11:59:33 -0700" -__buildsys__="M1Dog2021" -__revision__="18745cfc5e75df8028682183097202f926e22134" -__build__="18745cfc5e75df8028682183097202f926e22134" +__date__="Sun, 13 Nov 2022 11:31:29 -0400" +__buildsys__="M1DOG2021" +__revision__="15379ff3b369560c4bf13459b630387bf7349bb7" +__build__="15379ff3b369560c4bf13459b630387bf7349bb7" # make sure compatibility is always in place import SCons.compat # noqa \ No newline at end of file diff --git a/packaging/etc/README.txt b/packaging/etc/README.txt index e69de29..ffb9cc1 100644 --- a/packaging/etc/README.txt +++ b/packaging/etc/README.txt @@ -0,0 +1,10 @@ +This directory contains a number of scripts/files useful when building/packageing SCons + +To force SCons to propagate SOURCE_DATE_EPOCH from the shell running SCons we're providing +a script to create a ~/.scons/site_scons/site_init.py. +Note that reproducible_install.sh will NOT overwite an existing ~/.scons/site_scons/site_init.py +This supports https://reproducible-builds.org/specs/source-date-epoch/ +If you wanted to include this in your build tree you would place in site_scons/site_init.py relative +to your SConstruct. +* reproducible_install.sh +* reproducible_site_init.py \ No newline at end of file diff --git a/packaging/etc/reproducible_install.sh b/packaging/etc/reproducible_install.sh old mode 100644 new mode 100755 index 2eb6ad1..90d9d37 --- a/packaging/etc/reproducible_install.sh +++ b/packaging/etc/reproducible_install.sh @@ -1,19 +1,17 @@ #!/usr/bin/env bash -set -e -set -x - SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +TARGET_FILE=~/.scons/site_scons/site_init.py -mkdir -p ~/.site_scons +mkdir -p ~/.scons/site_scons -if [ ! -f "~/.site_scons/site_init.py" ] +if [ ! -f "${TARGET_FILE}" ] then - echo "File ~/.site_scons/site_init.py does not exist" + echo "File ${TARGET_FILE} does not exist" echo "We will add one which supports reproducible builds" - cp ${SCRIPT_DIR}/site_init.py ~/.site_scons/site_init.py + cp ${SCRIPT_DIR}/reproducible_site_init.py ${TARGET_FILE} else - echo "File ~/.site_scons/site_init.py already exists" + echo "File ${TARGET_FILE} already exists" echo "We will not overwrite it. Please copy the content" - echo "from ${SCRIPT_DIR}/site_init.py" + echo "from ${SCRIPT_DIR}/reproducible_site_init.py" fi diff --git a/packaging/etc/reproducible_site_init.py b/packaging/etc/reproducible_site_init.py index e4672a1..2b6b42a 100644 --- a/packaging/etc/reproducible_site_init.py +++ b/packaging/etc/reproducible_site_init.py @@ -8,13 +8,14 @@ import SCons.Environment old_init = SCons.Environment.Base.__init__ +print("Adding logic to propagate SOURCE_DATE_EPOCH from the shell environment when building with SCons") + def new_init(self, **kw): """ This logic will add SOURCE_DATE_EPOCH to the execution environment used to run all the build commands. """ - print("In my custom init") old_init(self, **kw) if 'SOURCE_DATE_EPOCH' in os.environ: self._dict['ENV']['SOURCE_DATE_EPOCH'] = os.environ['SOURCE_DATE_EPOCH'] -- cgit v0.12 From c59eff14013543958d0aa377f3bfca0d05664ca0 Mon Sep 17 00:00:00 2001 From: William Deegan Date: Sun, 13 Nov 2022 15:07:06 -0500 Subject: Added blurbs to CHANGES and RELEASE --- CHANGES.txt | 3 +++ RELEASE.txt | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/CHANGES.txt b/CHANGES.txt index ea9776f..51680d7 100755 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -27,6 +27,9 @@ RELEASE VERSION/DATE TO BE FILLED IN LATER will create a string joining the list with os.pathsep - Move execution environment sanitation from Action._subproc() to SCons.Util.sanitize_shell_env(ENV) + - Moved rpm and debian directories under packaging + - Added logic to help packagers enable reproducible builds into packaging/etc/. Please + read packaging/etc/README.txt if you are interested. diff --git a/RELEASE.txt b/RELEASE.txt index 4bfb15f..8160bd6 100644 --- a/RELEASE.txt +++ b/RELEASE.txt @@ -67,6 +67,10 @@ PACKAGING develop it - mainly things needed to run the testsuite; requirements_pkg.txt are the requirements to do a full build (including docs build) with an intent to create the packages. +- Moved rpm and debian directories under packaging +- Added logic to help packagers enable reproducible builds into packaging/etc/. Please + read packaging/etc/README.txt if you are interested. + DOCUMENTATION ------------- -- cgit v0.12