summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOmar Vega Ramos <ovruni@gnu.org.pe>2020-02-19 11:01:40 -0500
committerOmar Vega Ramos <ovruni@gnu.org.pe>2020-02-19 11:01:40 -0500
commitae15eb3d7dfff847b9a4b37923042ea8688dc4b0 (patch)
tree974eadc998b6b5c8e63fdd08af02e969f96050a1
parent0d811f608dabf1f1414084980268ff5b35acc3c7 (diff)
syslinux-6.04.pre2.r11.gbf6db5b4-3.parabola1: rebuild
-rw-r--r--libre/syslinux/0025-reproducible-build.patch39
-rw-r--r--libre/syslinux/PKGBUILD43
2 files changed, 64 insertions, 18 deletions
diff --git a/libre/syslinux/0025-reproducible-build.patch b/libre/syslinux/0025-reproducible-build.patch
new file mode 100644
index 000000000..965a9d946
--- /dev/null
+++ b/libre/syslinux/0025-reproducible-build.patch
@@ -0,0 +1,39 @@
+diff --git a/core/Makefile b/core/Makefile
+index 50ff35af..f1af71b7 100644
+--- a/core/Makefile
++++ b/core/Makefile
+@@ -112,7 +112,7 @@ CFLAGS += -D__SYSLINUX_CORE__ -D__FIRMWARE_$(FIRMWARE)__ \
+ # official release. Otherwise, substitute a hex string that is pretty much
+ # guaranteed to be unique to be unique from build to build.
+ ifndef HEXDATE
+-HEXDATE := $(shell $(PERL) $(SRC)/../now.pl $(SRCS))
++HEXDATE := $(shell printf '0x%x\n' $(git log -1 --format=%ct)) # make the build more predictable
+ endif
+ ifndef DATE
+ DATE := $(shell sh $(SRC)/../gen-id.sh $(VERSION) $(HEXDATE))
+diff --git a/mk/lib.mk b/mk/lib.mk
+index f3fb07c7..bece24a0 100644
+--- a/mk/lib.mk
++++ b/mk/lib.mk
+@@ -58,8 +58,8 @@ CFLAGS += -mregparm=3 -DREGPARM=3
+ endif
+
+ ARCH_MATH_OBJS = \
+- $(patsubst $(com32)/lib/%.c,%.o,$(wildcard $(com32)/lib/$(ARCH)/math/*.c)) \
+- $(patsubst $(com32)/lib/%.S,%.o,$(wildcard $(com32)/lib/$(ARCH)/math/*.S))
++ $(patsubst $(com32)/lib/%.c,%.o,$(sort $(wildcard $(com32)/lib/$(ARCH)/math/*.c))) \
++ $(patsubst $(com32)/lib/%.S,%.o,$(sort $(wildcard $(com32)/lib/$(ARCH)/math/*.S)))
+
+ VPATH = $(SRC)
+ LIBOTHER_OBJS = \
+@@ -130,8 +130,8 @@ LIBENTRY_OBJS = \
+ exit.o
+
+ LIBGCC_OBJS = \
+- $(patsubst $(com32)/lib/%.c,%.o,$(wildcard $(com32)/lib/$(ARCH)/libgcc/*.c)) \
+- $(patsubst $(com32)/lib/%.S,%.o,$(wildcard $(com32)/lib/$(ARCH)/libgcc/*.S))
++ $(patsubst $(com32)/lib/%.c,%.o,$(sort $(wildcard $(com32)/lib/$(ARCH)/libgcc/*.c))) \
++ $(patsubst $(com32)/lib/%.S,%.o,$(sort $(wildcard $(com32)/lib/$(ARCH)/libgcc/*.S)))
+
+ LIBCONSOLE_OBJS = \
+ \
diff --git a/libre/syslinux/PKGBUILD b/libre/syslinux/PKGBUILD
index 9d1927b17..fa5523861 100644
--- a/libre/syslinux/PKGBUILD
+++ b/libre/syslinux/PKGBUILD
@@ -9,13 +9,15 @@ pkgname=syslinux
pkgver=6.04.pre2.r11.gbf6db5b4
#_tag=syslinux-$pkgver
_commit=bf6db5b4
-pkgrel=2
+pkgrel=3
pkgrel+=.parabola1
-pkgdesc='Collection of boot loaders that boot from FAT, ext2/3/4 and btrfs filesystems, from CDs and via PXE (Parabola rebranded)'
-url='http://www.syslinux.org/'
-arch=(i686 x86_64)
-backup=(boot/syslinux/syslinux.cfg
- boot/syslinux/splash.png)
+pkgdesc='Collection of boot loaders that boot from FAT, ext2/3/4 and btrfs filesystems, from CDs and via PXE'
+pkgdesc+=' (Parabola rebranded)'
+url='https://www.syslinux.org/'
+arch=(x86_64)
+arch+=(i686)
+backup=(boot/syslinux/syslinux.cfg)
+backup+=(boot/syslinux/splash.png)
install=syslinux.install
license=(GPL2)
# syslinux build system is a mess of submakes that does not work with -jN
@@ -23,15 +25,15 @@ license=(GPL2)
options=(!makeflags !buildflags)
replaces=(${pkgname}-parabola)
conflicts=(${pkgname}-parabola)
-makedepends=(git python2 nasm upx asciidoc)
+makedepends=(git python nasm upx asciidoc)
makedepends_x86_64=(lib32-glibc) # efi32 needs it
optdepends=('perl-crypt-passwdmd5: For md5pass'
- 'perl-digest-sha1: For sha1pass'
- 'mtools: For mkdiskimage and syslinux support'
- 'gptfdisk: For GPT support'
- 'util-linux: For isohybrid'
- 'efibootmgr: For EFI support'
- 'dosfstools: For EFI support')
+ 'perl-digest-sha1: For sha1pass'
+ 'mtools: For mkdiskimage and syslinux support'
+ 'gptfdisk: For GPT support'
+ 'util-linux: For isohybrid'
+ 'efibootmgr: For EFI support'
+ 'dosfstools: For EFI support')
# The syslinux-install_update script is maintained at https://gist.github.com/pyther/772138
# Script not yet updated for syslinux-efi
@@ -45,7 +47,9 @@ source=(git+https://repo.or.cz/syslinux.git#commit=$_commit
0004-gnu-efi-from-arch.patch
0016-strip-gnu-property.patch
0018-prevent-pow-optimization.patch
- splash.png)
+ 0025-reproducible-build.patch
+ splash.png
+)
sha1sums=('SKIP'
'SKIP'
'e40acf4cf9d05ec000c59284f959d1540b35a3be'
@@ -56,8 +60,8 @@ sha1sums=('SKIP'
'4c3706e7a5620e450a6abb9238c08d7b39bb6945'
'f4a6768c7e5b8d02428ae550e37a7ca445ad1bb8'
'c94622eaa14ad9512e4f43b13302ba35d1787cbc'
+ '5b3878a1fff74bbb09ddbc66cc8afa38f34ed05c'
'aab1c7789e0d7290fe87538abad181abac069d40')
-
sha256sums=('SKIP'
'SKIP'
'67fe3050e60a0d1572293ff095dac2e6cab9da6d0f98fb1fc555850ec046d6ea'
@@ -68,6 +72,7 @@ sha256sums=('SKIP'
'cf3c3da9300d6ea70eab5b8dca724ce03a3651bd63fb0168594dcfeb35eec11c'
'7facb5c2abc71c9bfe01bf4db388306ed7b7abf6654009af336262839527f962'
'755cd7062fe8495f6f62053ce664451c12ae65dba9fb5c75062a495fbe040fb1'
+ '9a76f6f75a42485bc337163ba38068b09f7889bdc1a4e191408898f10de36662'
'a839e3e1242c5279f95f5f913af47be73cf16339c7aa55af378a428c904f1595')
_targets='bios efi32'
@@ -92,6 +97,8 @@ prepare() {
# patch -p1 < ../0004-gnu-efi-from-arch.patch
# patch -p1 < ../0005-gnu-efi-version-compatibility.patch
+ patch -p1 < ../0025-reproducible-build.patch
+
# do not swallow efi compilation output to make debugging easier
sed 's|> /dev/null 2>&1||' -i efi/check-gnu-efi.sh
@@ -105,9 +112,9 @@ prepare() {
build() {
cd syslinux
- export LDFLAGS+=--no-dynamic-linker # workaround for binutils 2.28 http://www.syslinux.org/wiki/index.php?title=Building
- export EXTRA_CFLAGS=-fno-PIE # to fix gpxe build
- make PYTHON=python2 $_targets
+ export LDFLAGS+=--no-dynamic-linker # workaround for binutils 2.28 http://www.syslinux.org/wiki/index.php?title=Building
+ export EXTRA_CFLAGS=-fno-PIE # to fix gpxe build
+ make PYTHON=python $_targets
}
package() {