commit: 461a0284d5e3d05988b20e43411c93330d41ee67
Author: David Seifert gentoo org>
AuthorDate: Thu Nov 29 21:35:12 2018 +
Commit: David Seifert gentoo org>
CommitDate: Thu Nov 29 21:36:04 2018 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=461a0284
dev-util/statifier: [QA] Honour CC flags
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: David Seifert gentoo.org>
.../files/statifier-1.7.4-fix-build-system.patch | 48 ++
dev-util/statifier/statifier-1.7.4.ebuild | 17
2 files changed, 58 insertions(+), 7 deletions(-)
diff --git a/dev-util/statifier/files/statifier-1.7.4-fix-build-system.patch
b/dev-util/statifier/files/statifier-1.7.4-fix-build-system.patch
new file mode 100644
index 000..ef8c6a516bd
--- /dev/null
+++ b/dev-util/statifier/files/statifier-1.7.4-fix-build-system.patch
@@ -0,0 +1,48 @@
+Honour user flags and CC
+
+--- a/src/Makefile
b/src/Makefile
+@@ -170,7 +170,7 @@
+ echo "VERSION='$(VERSION)'" > $@ || { $(RM) $@; exit 1; }
+
+ $(UTILS_WITH_ELF_CLASS): $(ELF_CLASS)/%: %.c
+- gcc $(FLAGS_ELF) -I$(CPU_DIR) -Wall -O2 -g $< -o $@
++ $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $(FLAGS_ELF) -I$(CPU_DIR) -g $<
-o $@
+
+ MY_GDB_CFILES := \
+breakpoints.c \
+@@ -187,13 +187,13 @@
+
+ MY_GDB_CPPFLAGS := -I. -I$(CPU_DIR) -I$(ELF_CLASS)
+ $(MY_GDB_OBJ_FILES): $(ELF_CLASS)/%.o: my_gdb/%.c
+- gcc -c $(FLAGS_ELF) $(MY_GDB_CPPFLAGS) -Wall -O2 -g $< -o $@
++ $(CC) $(CPPFLAGS) $(CFLAGS) -c $(FLAGS_ELF) $(MY_GDB_CPPFLAGS) -g $< -o
$@
+
+ $(ELF_CLASS)/my_gdb: $(MY_GDB_OBJ_FILES)
+- gcc $(FLAGS_ELF) $^ -o $@
++ $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $(FLAGS_ELF) $^ -o $@
+
+ $(ELF_CLASS)/dl-var.s: dl-var.c dl-var.inc
+- gcc $(FLAGS_ELF) $(FLAGS_C_TO_ASM_ELF) -Wall -O2 -S $< -o $@.s
++ $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $(FLAGS_ELF)
$(FLAGS_C_TO_ASM_ELF) -S $< -o $@.s
+ /bin/sh asm.make.sh < $@.s > $@ || { $(RM) $@; exit 1; }
+
+ # Dependencies should be in correct order
+@@ -210,7 +210,7 @@
+ # Because linker give warning about _start function I specify
+ # pretty dummy '--entry=0x0'
+ $(FILES_TO_BE_EMBEDDED_WITH_ELF_CLASS): $(ELF_CLASS)/%: $(ELF_CLASS)/%.o
+- gcc $(FLAGS_ELF) -o $@ $< -Wl,--oformat,binary,--entry=0x0 -nostdlib
++ $(CC) $(CPPFLAGS) $(CFLAGS) $(FLAGS_ELF) -o $@ $<
-Wl,--oformat,binary,--entry=0x0 -nostdlib
+
+ OBJECTS_TO_BE_EMBEDDED_WITH_ELF_CLASS = $(addsuffix
.o,$(FILES_TO_BE_EMBEDDED_WITH_ELF_CLASS))
+
+@@ -221,7 +221,7 @@
+ # with -include processor.h, start.S and $<
+ #
+ $(OBJECTS_TO_BE_EMBEDDED_WITH_ELF_CLASS): $(ELF_CLASS)/%.o: $(CPU_DIR)/%.S
$(CPU_DIR)/processor.h ./start.S ./end.S
+- gcc $(FLAGS_ELF) -c -o $@ -nostdinc -I$(CURDIR)
-I$(CURDIR)/$(ELF_CLASS) -include $(CPU_DIR)/processor.h -include ./start.S
-include $< ./end.S
++ $(CC) $(CPPFLAGS) $(CFLAGS) $(FLAGS_ELF) -c -o $@ -nostdinc -I$(CURDIR)
-I$(CURDIR)/$(ELF_CLASS) -include $(CPU_DIR)/processor.h -include ./start.S
-include $< ./end.S
+
+ # Additional dependencies:
+ $(ELF_CLASS)/regs.o: $(ELF_CLASS)/regs.inc
diff --git a/dev-util/statifier/statifier-1.7.4.ebuild
b/dev-util/statifier/statifier-1.7.4.ebuild
index 08b4f7afec9..b4021f0a1cf 100644
--- a/dev-util/statifier/statifier-1.7.4.ebuild
+++ b/dev-util/statifier/statifier-1.7.4.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
MULTILIB_COMPAT=( abi_x86_{32,64} )
-inherit multilib-build
+inherit multilib-build toolchain-funcs
DESCRIPTION="Statifier is a tool for creating portable, self-containing Linux
executables"
HOMEPAGE="http://statifier.sourceforge.net;
@@ -20,20 +20,23 @@ RDEPEND="app-shells/bash
sys-apps/coreutils
virtual/awk"
-src_prepare() {
+PATCHES=(
# Respect users CFLAGS and LDFLAGS
- sed -i -e 's/-Wall -O2/$(CFLAGS) $(LDFLAGS)/g' src/Makefile || die
+ "${FILESDIR}"/${PN}-1.7.4-fix-build-system.patch
+)
+
+src_prepare() {
+ default
# Don't compile 32-bit on amd64 no-multilib profile
if ! use abi_x86_32; then
sed -i -e 's/ELF32 .*/ELF32 := no/g' configs/config.x86_64 ||
die
fi
-
- # Apply user patches
- eapply_user
}
src_configure() {
+ tc-export CC
+
# Fix permissions, as configure is not marked executable
chmod +x configure || die
econf