diff --git a/clisp-arm.diff b/clisp-arm.diff new file mode 100644 index 0000000..eaad858 --- /dev/null +++ b/clisp-arm.diff @@ -0,0 +1,28 @@ +diff -r f618e42f6fef src/lispbibl.d +--- a/src/lispbibl.d Mon Feb 12 01:32:02 2018 +0100 ++++ b/src/lispbibl.d Mon Feb 12 20:06:41 2018 +0100 +@@ -2197,9 +2197,10 @@ + MALLOC_ADDRESS_RANGE = 0x00000000UL + SHLIB_ADDRESS_RANGE = 0x40000000UL or 0xF7000000UL + STACK_ADDRESS_RANGE = 0xFF000000UL +- There is room from 0x41000000UL to 0xB6000000UL. */ +- #define MAPPABLE_ADDRESS_RANGE_START 0x41000000UL +- #define MAPPABLE_ADDRESS_RANGE_END 0xB5FFFFFFUL ++ There is room from 0x43000000UL to 0xB6000000UL, but let's keep some ++ distance. */ ++ #define MAPPABLE_ADDRESS_RANGE_START 0x48000000UL ++ #define MAPPABLE_ADDRESS_RANGE_END 0xAFFFFFFFUL + #endif + #if defined(UNIX_LINUX) && defined(HPPA) + /* On Linux/hppa in qemu user-mode emulation: +@@ -3178,7 +3179,9 @@ + #define SINGLEMAP_ADDRESS_BASE 0x40000000UL + #define SINGLEMAP_TYPE_MASK 0x3F000000UL + #define SINGLEMAP_oint_type_shift 24 +- #define SINGLEMAP_WORKS 1 ++ /* This configuration allocates memory outside the MAPPABLE_ADDRESS_RANGE. */ ++ #define IGNORE_MAPPABLE_ADDRESS_RANGE ++ #define SINGLEMAP_WORKS 0 /* does not work on build.opensuse.org machines */ + #endif + #if defined(UNIX_LINUX) && defined(HPPA) /* Linux/hppa */ + #define SINGLEMAP_ADDRESS_BASE 0x08000000UL diff --git a/clisp-s390x.diff b/clisp-s390x.diff new file mode 100644 index 0000000..b5c3764 --- /dev/null +++ b/clisp-s390x.diff @@ -0,0 +1,16 @@ +diff -r f618e42f6fef src/makemake.in +--- a/src/makemake.in Mon Feb 12 01:32:02 2018 +0100 ++++ b/src/makemake.in Mon Feb 12 20:06:47 2018 +0100 +@@ -2990,9 +2990,10 @@ + # use and -O2. + flags2=$flags2' -O1' + fi +- if [ $f = lisparit -a "$cpu" = s390x ] ; then ++ if [ "$cpu" = s390x ] ; then + # gcc-4.9.2 on Linux/s390x miscompiles lisparit.d when -O2 is used. +- flags2=$flags2' -O1' ++ # gcc-7.3 on Linux/s390x miscompiles something when -O is used. ++ flags2=$flags2' -O0' + fi + ;; + esac diff --git a/clisp.spec b/clisp.spec index c2c456c..04f1b70 100644 --- a/clisp.spec +++ b/clisp.spec @@ -46,6 +46,10 @@ Patch8: clisp-2.49-rpath.dif Patch12: clisp-linux.patch Patch14: clisp-link.dif Patch16: clisp-db6.diff +# PATCH-FIX-UPSTREAM arm +Patch20: clisp-arm.diff +# PATCH-FIX-UPSTREAM s390x +Patch21: clisp-s390x.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build %global vimdir %{_datadir}/vim/site/after/syntax @@ -126,6 +130,8 @@ contains two nice applications. %patch12 -p1 -b .p12 %patch14 -p0 -b .p14 %patch16 -p1 -b .p16 +%patch20 -p1 -b .p20 +%patch21 -p1 -b .p21 %build #