From bbab831ebf629066de050cac235f7a4e87b69b04 Mon Sep 17 00:00:00 2001 From: Estevan Castilho Date: Mon, 29 May 2023 19:14:39 +0000 Subject: [PATCH] ecl: fix build, update to 21.2.1, drop old versions (#8754) * ecl: fix build, update to 21.2.1, drop old versions Parallel building seems to have been fixed in the meantime, so enable that as well. Note that the make check call doesn't seem to work since it expects ecl to already be installed on the system, which it doesn't seem to be by the time haikuporter --test calls TEST. * Update dev-lisp/ecl/ecl-21.2.1.recipe Co-authored-by: OscarL --- .../{ecl-16.1.3.recipe => ecl-21.2.1.recipe} | 11 +++--- dev-lisp/ecl/patches/ecl-21.2.1.patchset | 38 +++++++++++++++++++ 2 files changed, 43 insertions(+), 6 deletions(-) rename dev-lisp/ecl/{ecl-16.1.3.recipe => ecl-21.2.1.recipe} (89%) create mode 100644 dev-lisp/ecl/patches/ecl-21.2.1.patchset diff --git a/dev-lisp/ecl/ecl-16.1.3.recipe b/dev-lisp/ecl/ecl-21.2.1.recipe similarity index 89% rename from dev-lisp/ecl/ecl-16.1.3.recipe rename to dev-lisp/ecl/ecl-21.2.1.recipe index 3dc65835e..deeed90c2 100644 --- a/dev-lisp/ecl/ecl-16.1.3.recipe +++ b/dev-lisp/ecl/ecl-21.2.1.recipe @@ -9,11 +9,12 @@ COPYRIGHT="2015 Daniel KochmaƄski 1990, 1991, 1993 Giuseppe Attardi 1984 Taiichi Yuasa and Masami Hagiya" LICENSE="GNU LGPL v2.1" -REVISION="4" +REVISION="1" SOURCE_URI="https://common-lisp.net/project/ecl/static/files/release/ecl-$portVersion.tgz" -CHECKSUM_SHA256="76a585c616e8fa83a6b7209325a309da5bc0ca68e0658f396f49955638111254" +CHECKSUM_SHA256="b15a75dcf84b8f62e68720ccab1393f9611c078fcd3afdd639a1086cad010900" +PATCHES="ecl-21.2.1.patchset" -ARCHITECTURES="!all x86" +ARCHITECTURES="all ?x86_gcc2" SECONDARY_ARCHITECTURES="?x86" PROVIDES=" @@ -58,8 +59,7 @@ BUILD() --with-dffi=system \ --enable-boehm=system - # doesn't work with $jobArgs - make + make $jobArgs } INSTALL() @@ -73,6 +73,5 @@ INSTALL() TEST() { - # 2 tests fail, 1 crashes in FFI make check } diff --git a/dev-lisp/ecl/patches/ecl-21.2.1.patchset b/dev-lisp/ecl/patches/ecl-21.2.1.patchset new file mode 100644 index 000000000..c55953b8b --- /dev/null +++ b/dev-lisp/ecl/patches/ecl-21.2.1.patchset @@ -0,0 +1,38 @@ +From 4ec558acd7258fc6d722754d43a9a81256a701cc Mon Sep 17 00:00:00 2001 +From: Estevan Castilho +Date: Sun, 28 May 2023 19:30:16 +0000 +Subject: Avoid conflicting bool definitions on Haiku + +On Haiku, link.h indirectly includes stdbool.h, causing bool to be +defined to _Bool, which is incompatible with ecl's own expected +definition of int. So we just unconditionally undef bool after +including the necessary sytem headers, which is unlikely to cause much +trouble in any case. + +diff --git a/src/c/ffi/libraries.d b/src/c/ffi/libraries.d +index 5620988..5e0fd1f 100644 +--- a/src/c/ffi/libraries.d ++++ b/src/c/ffi/libraries.d +@@ -44,9 +44,6 @@ + # ifdef HAVE_DLFCN_H + # include + # define INIT_PREFIX "init_fas_" +-# ifdef bool +-# undef bool +-# endif + # endif + # ifdef HAVE_MACH_O_DYLD_H + # include +@@ -64,6 +61,9 @@ + # else + # include + # endif ++# ifdef bool ++# undef bool ++# endif + #endif /* ENABLE_DLOPEN */ + #include + #include +-- +2.37.3 +