From 5aefd52323886077f370e3f07f4f770ee1f8b9c2 Mon Sep 17 00:00:00 2001 From: John-Mark Bell Date: Thu, 2 Jun 2022 19:40:02 +0100 Subject: Make ro-install available The OSLib buildsystem expects this to exist, so ensure it does, patching the original to find the correct objdump binary. --- arm-riscos-gnueabihf/Makefile | 6 ++++++ .../recipes/patches/gccsdk/roinstall-objdump-name.p | 13 +++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 arm-riscos-gnueabihf/recipes/patches/gccsdk/roinstall-objdump-name.p diff --git a/arm-riscos-gnueabihf/Makefile b/arm-riscos-gnueabihf/Makefile index 6c53c9b..1deec0f 100644 --- a/arm-riscos-gnueabihf/Makefile +++ b/arm-riscos-gnueabihf/Makefile @@ -3,6 +3,7 @@ UPSTREAM_GCCSDK_VERSION := 7698 UPSTREAM_GCCSDK_TARBALL := gccsdk$(UPSTREAM_GCCSDK_VERSION).tar.gz UPSTREAM_GCCSDK_URI := svn://svn.riscos.info/gccsdk/trunk/autobuilder/develop/gcc@$(UPSTREAM_GCCSDK_VERSION) UPSTREAM_GCCSDK_SGP_URI := svn://svn.riscos.info/gccsdk/trunk/gcc4/setup-gccsdk-params@$(UPSTREAM_GCCSDK_VERSION) +UPSTREAM_GCCSDK_ROINSTALL_URI := svn://svn.riscos.info/gccsdk/trunk/gcc4/porting-scripts/ro-install@$(UPSTREAM_GCCSDK_VERSION) UPSTREAM_GCCSDK_AMP_URI := svn://svn.riscos.info/gccsdk/trunk/gcc4/recipe/patches/automake-for-binutils@$(UPSTREAM_GCCSDK_VERSION) UPSTREAM_GCCSDK_UNIXLIB_URI := svn://svn.riscos.info/gccsdk/trunk/gcc4/recipe/files/gcc/libunixlib@$(UPSTREAM_GCCSDK_VERSION) UPSTREAM_GCCSDK_LD_URI := svn://svn.riscos.info/gccsdk/trunk/gcc4/riscos/soloader/dynamic/ld.so-1.9.9@$(UPSTREAM_GCCSDK_VERSION) @@ -124,6 +125,10 @@ $(BUILDSTEPS)/oslib.d: $(BUILDSTEPS)/gcc.d $(SOURCESDIR)/$(UPSTREAM_OSLIB_TARBAL $(BUILDSTEPS)/gcc.d: $(BUILDSTEPS)/gccsdk-srcdir.d cd $(BUILDDIR)/gccsdk && make + @# Install ro-install + mkdir -p $(PREFIX)/env + sed -e s:GCCSDK_ENV:$(PREFIX)/env:g < $(BUILDDIR)/gccsdk/ro-install > $(PREFIX)/env/ro-install + chmod 755 $(PREFIX)/env/ro-install @# Install empty libraries needed to fool configure scripts for l in c pthread gcc_s ; do $(PREFIX)/cross/bin/$(TARGET_NAME)-ar mv $(PREFIX)/cross/$(TARGET_NAME)/lib/lib$$l.a ; done @# Newer GCCSDK adds these trampoline binaries that for us @@ -152,6 +157,7 @@ $(BUILDSTEPS)/gccsdk-srcdir.d: $(BUILDSTEPS)/buildsteps.d $(SOURCESDIR)/$(UPSTRE $(SOURCESDIR)/$(UPSTREAM_GCCSDK_TARBALL): svn export $(UPSTREAM_GCCSDK_URI) $(SOURCESDIR)/gccsdk/gcc svn export $(UPSTREAM_GCCSDK_SGP_URI) $(SOURCESDIR)/gccsdk/ + svn export $(UPSTREAM_GCCSDK_ROINSTALL_URI) $(SOURCESDIR)/gccsdk/ svn export $(UPSTREAM_GCCSDK_AMP_URI) $(SOURCESDIR)/gccsdk/automake svn export $(UPSTREAM_GCCSDK_UNIXLIB_URI) $(SOURCESDIR)/gccsdk/libunixlib svn export $(UPSTREAM_GCCSDK_LD_URI) $(SOURCESDIR)/gccsdk/ld diff --git a/arm-riscos-gnueabihf/recipes/patches/gccsdk/roinstall-objdump-name.p b/arm-riscos-gnueabihf/recipes/patches/gccsdk/roinstall-objdump-name.p new file mode 100644 index 0000000..7451829 --- /dev/null +++ b/arm-riscos-gnueabihf/recipes/patches/gccsdk/roinstall-objdump-name.p @@ -0,0 +1,13 @@ +Index: ro-install +=================================================================== +--- ro-install (revision 7698) ++++ ro-install (working copy) +@@ -72,7 +72,7 @@ + + # Check that static libraries really do contain static objects + if grep -q "\.a\$" <<< $param || grep -q "\.a-static" <<< $param ; then +- if GCCSDK_BIN/arm-unknown-riscos-objdump -p $param | grep -q "position independent"; then ++ if GCCSDK_BIN/arm-riscos-gnueabihf-objdump -p $param | grep -q "position independent"; then + echo "RISC OS Cross installer: static archive $param contains position independent code" 1>&2 + exit 1 + fi -- cgit v1.2.3