From: Jan Rękorajski Date: Sun, 23 Oct 2016 07:35:44 +0000 (+0200) Subject: - one step closer to building this on x32 X-Git-Tag: auto/th/clisp-2.49-5 X-Git-Url: http://git.pld-linux.org/gitweb.cgi?a=commitdiff_plain;h=01570cfa87b5496a4c27d918a5ebed1f16a32cdb;p=packages%2Fclisp.git - one step closer to building this on x32 - fix build on ix86 - rel 5 --- diff --git a/clisp.spec b/clisp.spec index b4353c5..300d3a9 100644 --- a/clisp.spec +++ b/clisp.spec @@ -9,7 +9,7 @@ Summary(pl.UTF-8): Implementacja Common Lisp (ANSI CL) Summary(pt_BR.UTF-8): Implementação do Common Lisp (ANSI CL) Name: clisp Version: 2.49 -Release: 4 +Release: 5 License: GPL Group: Development/Languages Source0: http://download.sourceforge.net/clisp/%{name}-%{version}.tar.bz2 @@ -19,6 +19,7 @@ Patch1: %{name}-alpha.patch Patch2: %{name}-glibc.patch # https://sourceforge.net/p/clisp/bugs/688/attachment/patch-modules_readline_readline.lisp Patch3: %{name}-readline.patch +Patch4: x32.patch URL: http://clisp.cons.org/ BuildRequires: ffcall-devel BuildRequires: gettext-tools @@ -84,6 +85,7 @@ software livre, distribuído sob os termos da GNU GPL. %patch1 -p1 %patch2 -p1 %patch3 -p0 +%patch4 -p1 # changing default -O to optflags causes memory fault on amd64 # - so something is broken... code or compiler @@ -103,9 +105,14 @@ CC="%{__cc}" \ %ifarch sparc sparcv9 sparc64 CFLAGS="%{rpmcflags} -DSAFETY=3" \ %else +%ifarch %{ix86} x32 +CFLAGS="%{rpmcflags} -falign-functions=4" \ +%else CFLAGS="%{rpmcflags}" \ %endif +%endif ./configure \ + --host=%{_target_platform} \ --prefix=%{_prefix} cd src diff --git a/x32.patch b/x32.patch new file mode 100644 index 0000000..88cf347 --- /dev/null +++ b/x32.patch @@ -0,0 +1,18 @@ +--- clisp-2.49/src/lispbibl.d~ 2016-10-23 08:56:52.000000000 +0200 ++++ clisp-2.49/src/lispbibl.d 2016-10-23 09:00:09.471732823 +0200 +@@ -203,8 +203,13 @@ + #ifdef __ia64__ + #define IA64 + #endif +- #if defined(__x86_64__) || defined(__amd64__) +- #define AMD64 ++ #if defined(__x86_64__) || defined(__amd64__) ++ #if defined(__ILP32__) ++ #define I80386 ++ #define NO_ARI_ASM ++ #else ++ #define AMD64 ++ #endif + #endif + #ifdef __s390__ + #define S390