Trouble building 2.49.60 beta on Fedora

Jerry James <[email protected]>
Newsgroups gmane.lisp.clisp.devel
Message-ID <CAHCOHQkmLtz+iKxfQxnzZSTJFE-Ody0R+o4Levcps4w1xNTyRQ@mail.gmail.com>
Greetings,

I updated the Fedora ffcall package to the 1.13 release awhile ago.
Recently I attempted to update clisp to the 2.49.60 beta release as
well, but I'm having some trouble with it.  The x86 builds, both
32-bit and 64-bit, are fine, as is the 32-bit ARM build.  However, the
s390x, ppc64 and ppc64le builds all fail with this message:

../src/lispbibl.d:2987:2: error: #error CLISP has not been ported to
this platform - oint_type_len undefined
 #error CLISP has not been ported to this platform - oint_type_len undefined

Are additional configure flags of some kind needed when building for
those platforms?

Also, the aarch64 build fails like this:

;; Compiling file /builddir/build/BUILD/clisp-2.49.60/modules/asdf/asdf.lisp ...
*** - handle_fault error2 ! address = 0x2e0800084480 not in
[0x2e0000000000,0x2e0000066778) !
SIGSEGV cannot be cured. Fault address = 0x2e0800084480.
GC count: 14
Space collected by GC: 12036056
Run time: 0 457240
Real time: 0 476000
GC time: 0 38463
Permanently allocated: 165368 bytes.
Currently in use: 4392320 bytes.
Free space: 299880 bytes.
make[1]: Leaving directory '/builddir/build/BUILD/clisp-2.49.60/build/asdf'
make: Leaving directory '/builddir/build/BUILD/clisp-2.49.60/build'
make[1]: *** [Makefile:22: asdf.fas] Segmentation fault (core dumped)
make[1]: *** Deleting file 'asdf.fas'
make: *** [Makefile:2334: asdf] Error 2

Do you have any idea what might cause that?  Finally, I needed the
attached patch to build successfully with gdbm 1.13.

Regards,
-- 
Jerry James
http://www.jamezone.org/

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot

_______________________________________________
clisp-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/clisp-devel
clisp-gdbm.patch (text/x-patch, 1.4 KB)
--- modules/gdbm/gdbm.c.orig	2017-07-03 13:23:44.000000000 -0600
+++ modules/gdbm/gdbm.c	2017-07-03 14:48:19.233777016 -0600
@@ -63,10 +63,10 @@ DEFCHECKER(check_gdbm_errno, prefix=GDBM
            BLOCK-SIZE-ERROR FILE-OPEN-ERROR FILE-WRITE-ERROR FILE-SEEK-ERROR \
            FILE-READ-ERROR BAD-MAGIC-NUMBER EMPTY-DATABASE CANT-BE-READER    \
            CANT-BE-WRITER READER-CANT-DELETE READER-CANT-STORE               \
-           READER-CANT-REORGANIZE UNKNOWN-UPDATE ITEM-NOT-FOUND              \
+           READER-CANT-REORGANIZE UNKNOWN-ERROR ITEM-NOT-FOUND               \
            REORGANIZE-FAILED CANNOT-REPLACE ILLEGAL-DATA OPT-ALREADY-SET     \
            OPT-ILLEGAL)
-static _Noreturn void error_gdbm (char *fatal_message) {
+static _Noreturn void error_gdbm (const char *fatal_message) {
   end_blocking_system_call(); /* in case we are called from _gdbm_fatal() */
   pushSTACK(`GDBM::GDBM-ERROR`);
   pushSTACK(`:MESSAGE`);
@@ -125,8 +125,7 @@ static GDBM_FILE check_gdbm (gcv_object_
 static object open_gdbm (object path, int bsize, int rw, int mode) {
   GDBM_FILE gdbm;
   with_string_0(path, GLO(pathname_encoding), name, {
-      SYSCALL(gdbm = gdbm_open(name, bsize, rw, mode,
-                               (void (*)(void))error_gdbm));
+      SYSCALL(gdbm = gdbm_open(name, bsize, rw, mode, error_gdbm));
     });
   if (gdbm == NULL) error_gdbm(NULL);
   return allocate_fpointer(gdbm);
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.