SHA256
1
0
forked from pool/syslinux

Accepting request 898783 from home:wfrisch:branches:system:install:head

Link all binaries as Position Independent Executables (bsc#1184124).
  + syslinux-4.04-pie.diff

OBS-URL: https://build.opensuse.org/request/show/898783
OBS-URL: https://build.opensuse.org/package/show/system:install:head/syslinux?expand=0&rev=106
This commit is contained in:
Steffen Winterfeldt 2021-09-30 16:08:01 +00:00 committed by Git OBS Bridge
parent 6b1e054506
commit 7c063f7fe4
3 changed files with 78 additions and 2 deletions

68
syslinux-4.04-pie.diff Normal file
View File

@ -0,0 +1,68 @@
Index: syslinux-4.04/utils/Makefile
===================================================================
--- syslinux-4.04.orig/utils/Makefile
+++ syslinux-4.04/utils/Makefile
@@ -17,8 +17,8 @@
topdir = ..
include $(topdir)/MCONFIG
-CFLAGS = $(GCCWARN) -Os -fomit-frame-pointer -D_FILE_OFFSET_BITS=64
-LDFLAGS = -O2 -g
+CFLAGS = $(GCCWARN) -Os -fomit-frame-pointer -D_FILE_OFFSET_BITS=64 -fPIC $(OPTFLAGS)
+LDFLAGS += -O2 -g -pie
TARGETS = mkdiskimage isohybrid gethostip memdiskfind
TARGETS += isohybrid.pl # about to be obsoleted
Index: syslinux-4.04/extlinux/Makefile
===================================================================
--- syslinux-4.04.orig/extlinux/Makefile
+++ syslinux-4.04/extlinux/Makefile
@@ -20,8 +20,8 @@ include $(topdir)/MCONFIG
OPTFLAGS = -g -Os
INCLUDES = -I. -I.. -I../libinstaller
CFLAGS = $(GCCWARN) -Wno-sign-compare -D_FILE_OFFSET_BITS=64 \
- $(OPTFLAGS) $(INCLUDES)
-LDFLAGS = # -s
+ -fPIC $(OPTFLAGS) $(INCLUDES)
+LDFLAGS += -pie # -s
SRCS = main.c \
../libinstaller/syslxmod.c \
Index: syslinux-4.04/mtools/Makefile
===================================================================
--- syslinux-4.04.orig/mtools/Makefile
+++ syslinux-4.04/mtools/Makefile
@@ -3,8 +3,8 @@ include $(topdir)/MCONFIG
OPTFLAGS = -g -Os
INCLUDES = -I. -I.. -I../libfat -I../libinstaller
-CFLAGS = $(GCCWARN) -D_FILE_OFFSET_BITS=64 $(OPTFLAGS) $(INCLUDES)
-LDFLAGS = -s
+CFLAGS = $(GCCWARN) -D_FILE_OFFSET_BITS=64 -fPIC $(OPTFLAGS) $(INCLUDES)
+LDFLAGS += -s -pie
SRCS = syslinux.c \
../libinstaller/fat.c \
Index: syslinux-4.04/core/Makefile
===================================================================
--- syslinux-4.04.orig/core/Makefile
+++ syslinux-4.04/core/Makefile
@@ -138,3 +138,4 @@ spotless: clean
# Include dependencies file
-include .*.d */.*.d */*/.*.d
+
Index: syslinux-4.04/linux/Makefile
===================================================================
--- syslinux-4.04.orig/linux/Makefile
+++ syslinux-4.04/linux/Makefile
@@ -20,7 +20,8 @@ include $(topdir)/MCONFIG
OPTFLAGS = -g -O0 -Dalloca=malloc
INCLUDES = -I. -I.. -I../libinstaller
CFLAGS = $(GCCWARN) -D_FILE_OFFSET_BITS=64 $(OPTFLAGS) $(INCLUDES)
-LDFLAGS =
+CFLAGS += -fPIC
+LDFLAGS = -pie
SRCS = syslinux.c \
../libinstaller/syslxopt.c \

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Wed Jun 9 10:45:24 UTC 2021 - Wolfgang Frisch <wolfgang.frisch@suse.com>
- Link all binaries as Position Independent Executables (bsc#1184124).
+ syslinux-4.04-pie.diff
-------------------------------------------------------------------
Wed Feb 3 09:45:57 UTC 2021 - Bernhard Wiedemann <bwiedemann@suse.com>

View File

@ -1,7 +1,7 @@
#
# spec file for package syslinux
#
# Copyright (c) 2020 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2021 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -27,7 +27,7 @@ BuildRequires: python3
BuildRequires: xz
# lots of assembler here that would need to be changed :(
#!BuildIgnore: gcc-PIE
Url: http://www.syslinux.org/wiki/index.php/The_Syslinux_Project
URL: http://www.syslinux.org/wiki/index.php/The_Syslinux_Project
Suggests: mtools
Summary: Boot Loader for Linux
License: GPL-2.0-or-later
@ -64,6 +64,7 @@ Patch22: remove-note-gnu-section.patch
Patch23: %{name}-%{version}-lzo.diff
Patch24: %{name}-%{version}-gcc10.diff
Patch25: syslinux-4.04-reproducible-isohybrid.patch
Patch26: %{name}-%{version}-pie.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@ -105,6 +106,7 @@ Authors:
%patch23 -p0
%patch24 -p0
%patch25 -p1
%patch26 -p1
%build
cp %{SOURCE2} .