From: Reini U. <rei...@gm...> - 2017-03-22 20:51:28
Attachments:
0001-iconv-even-darwin-might-have-a-GNU_LIBICONV.patch
0002-lightning-fix-jitc_sym_constpr-syntax-error.patch
0003-lightning-protect-from-wrong-versions.patch
0004-configure-typo-exisiting.patch
0005-fix-cygwin-mingw-without-dynamic-modules.patch
0006-makemake-fix-clisp.rc-for-prerelease-PRODUCTVERSION.patch
0007-modprep-add-missing-doc-field-to-funcdef.patch
0008-linkkit-copy-dlls-on-windows.patch
0009-cygwin-fix-UUID-compilation.patch
0010-fix-various-cygwin-tests.patch
0011-win32-ddk-ntifs.h-winternl.h-ntstatus.h.patch
0012-win32-add-I.-for-include-w32shell.c.patch
|
See also https://github.com/rurban/clisp/issues I’m not sure about the makemake: fix clisp.rc for prerelease PRODUCTVERSION patch It’s broken, but my shell/sed fu is not quite good enough I guess. The cygwin/modprep patches are several years old and still needed. The win32 patches are needed for the latest mingw64, which my smoker is using now: https://ci.appveyor.com/project/rurban/clisp/build/clisp-ci-2.49.50+-109.cf4ec77 iconv is needed for mac with gnu libiconv. lightning is a big todo. I wanted to try llvm, but first I thought we have to fix lightning. it should be much faster than llvm, I think. compile-time trumps run-time with most calls. only with some very often used calls llvm would make sense, I think. Or trace and guard the types, and assume the next calls will use the same types and path. (pypy, v8, …) |
From: Reini U. <rei...@gm...> - 2017-03-22 21:02:25
Attachments:
0001-linkkit-copy-dlls-on-windows.patch
|
One had to be revised: linkkit: copy dlls on windows See this one instead, not all shells can do ${/} |
From: Ken B. <kb...@co...> - 2017-03-22 21:52:53
|
Hi Reini, 0009-cygwin-fix-UUID-compilation.patch is a slight variation of a patch that I submitted a couple years ago (https://sourceforge.net/p/clisp/patches/39/). Unfortunately, as I pointed out yesterday, it no longer works with the current hg tip. Ken |
From: Reini U. <rei...@gm...> - 2017-03-23 09:44:13
|
> On Mar 22, 2017, at 10:52 PM, Ken Brown <kb...@co...> wrote: > 0009-cygwin-fix-UUID-compilation.patch is a slight variation of a patch that I submitted a couple years ago (https://sourceforge.net/p/clisp/patches/39/). Unfortunately, as I pointed out yesterday, it no longer works with the current hg tip. > Yes, yours doesn’t work anymore, but mine still works. It is part of my cygport recipe for 2.49. Reini Urban ru...@cp... |
From: Ken B. <kb...@co...> - 2017-03-23 11:06:33
|
On 3/23/2017 5:44 AM, Reini Urban wrote: > >> On Mar 22, 2017, at 10:52 PM, Ken Brown <kb...@co...> wrote: >> 0009-cygwin-fix-UUID-compilation.patch is a slight variation of a patch that I submitted a couple years ago (https://sourceforge.net/p/clisp/patches/39/). Unfortunately, as I pointed out yesterday, it no longer works with the current hg tip. >> > > Yes, yours doesn’t work anymore, but mine still works. > It is part of my cygport recipe for 2.49. Have you tested with the hg tip (or Bruno's tarball for 2.49.50)? And do you have libuuid-devel installed? host_os isn't defined in the syscalls configure script until after the line setting LIBS. Ken |
From: Sam S. <sd...@gn...> - 2017-03-23 14:42:34
|
Hi Reini, please create patches on https://sourceforge.net/p/clisp/patches/ > * Reini Urban <erv...@tz...> [2017-03-22 21:51:15 +0100]: > > Subject: [PATCH 04/12] configure: typo exisiting > Subject: [PATCH 05/12] fix cygwin/mingw --without-dynamic-modules done, thanks > Subject: [PATCH 07/12] modprep: add missing doc field to funcdef what is the benefit of this? > Subject: [PATCH 10/12] fix various cygwin tests this prevents some tests from failing. could it be that you are hiding a bug in clisp? > Subject: [PATCH 11/12] win32: ddk/ntifs.h -> winternl.h, ntstatus.h > > Do not include private ddk headers, where winternl.h is good enough. > ddk/ntifs.h cannot be loaded on most modern mingw settings. (mingw64 32/64 bit) > > Have no idea if this is backcompat. the doc says: Header: Wdm.h (include Wdm.h, Ntddk.h, or Ntifs.h) > Subject: [PATCH 12/12] win32: add -I. for include w32shell.c > > gcc does not have -I. as default. > clisp.c:2191:23: fatal error: w32shell.c: No such file or directory > # include <w32shell.c> > --- > src/makemake.in | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git src/makemake.in src/makemake.in > index b50f0ade9..10d240946 100644 > --- src/makemake.in > +++ src/makemake.in > @@ -1449,6 +1449,11 @@ if [ "${with_debug}" != no ] ; then > esac > fi > > +if [ ${HSYSOS} = win32gcc -o ${HSYSOS} = cygwin ] > +then > + # include <w32shell.c> > + XCFLAGS=$XCFLAGS' -I.' > +fi > if [ $CC_CPLUSPLUS = true -a \( ${HSYSOS} = win32gcc -o ${HSYSOS} = cygwin \) ] > then # This is necessary for g++ to handle w32shell.c: > # The member lpVtbl is not defined by the w32api include files if We prefer "then" to be on the same line as "if", see other code in the file. -- Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1504 http://steingoldpsychology.com http://www.childpsy.net http://iris.org.il http://islamexposedonline.com http://www.dhimmitude.org http://think-israel.org When we break the law, they fine us, when we comply, they tax us. |
From: Sam S. <sd...@gn...> - 2017-03-23 14:45:51
|
Hi Reini, > * Reini Urban <erv...@tz...> [2017-03-22 21:51:15 +0100]: > > https://ci.appveyor.com/project/rurban/clisp/build/clisp-ci-2.49.50+-109.cf4ec77 --8<---------------cut here---------------start------------->8--- ./lisp.exe -B . -E UTF-8 -Emisc 1:1 -Epathname 1:1 -norc -q -M lispinit.mem -x '(truename (make-stream :output))' *** - TRUENAME: Filename for #<OUTPUT UNBUFFERED FILE-STREAM CHARACTER> is unknown make: *** [check-script] Error 1 --8<---------------cut here---------------end--------------->8--- could you please investigate this? > iconv is needed for mac with gnu libiconv. I am not sure what this means. I use mac and I don't install gnu libiconv. Thanks. -- Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1504 http://steingoldpsychology.com http://www.childpsy.net http://think-israel.org http://islamexposedonline.com http://honestreporting.com http://www.memritv.org Lisp: its not just for geniuses anymore. |
From: Karsten P. <Kar...@gm...> - 2017-03-23 17:50:45
|
On 23.03.17 15:45, Sam Steingold wrote: >> iconv is needed for mac with gnu libiconv. > I am not sure what this means. > I use mac and I don't install gnu libiconv. With todays hg tip on macossierra 10.2.3 ./configure --with-libsigsegv-prefix=/usr/local/ --with-libreadline-prefix=/usr/local/opt/readline/ --with-libffcall-prefix=/usr/local/ --cbc 20170323 -> Compilation aborted with errors in stream.c (see error details) But ./configure --with-libiconv-prefix=/Users/karstenpoeck/clisphg/tools/libiconv-1.14/ --with-libsigsegv-prefix=/usr/local/ --with-libreadline-prefix=/usr/local/opt/readline/ --with-libffcall-prefix=/usr/local/ --cbc 20170323b works without errors. Error details: gcc -I/usr/local//include -I/usr/local/include -I/usr/local/opt/readline//include -I/Users/karstenpoeck/lisp/compiler/clisphg/src -I/Users/karstenpoeck/lisp/compiler/clisphg/20170323/gllib -I/Users/karstenpoeck/lisp/compiler/clisphg/src/gllib -g -O2 -W -Wswitch -Wcomment -Wpointer-arith -Wreturn-type -Wmissing-declarations -Wimplicit -Wno-sign-compare -Wno-format-nonliteral -Wno-shift-negative-value -O -fwrapv -fno-strict-aliasing -DUNIX_BINARY_DISTRIB -DENABLE_UNICODE -DDYNAMIC_FFI -DDYNAMIC_MODULES -DNO_GETTEXT -I. -c stream.c ../src/stream.d:282:52: warning: unused parameter 'bytearray_' [-Wunused-parameter] const gcv_object_t* bytearray_, ^ ../src/stream.d:283:38: warning: unused parameter 'start' [-Wunused-parameter] uintL start, uintL len, perseverance_t persev) ^ ../src/stream.d:283:51: warning: unused parameter 'len' [-Wunused-parameter] uintL start, uintL len, perseverance_t persev) ^ ../src/stream.d:283:71: warning: unused parameter 'persev' [-Wunused-parameter] uintL start, uintL len, perseverance_t persev) ^ ../src/stream.d:310:47: warning: unused parameter 'obj' [-Wunused-parameter] local void wr_by_error (object stream, object obj) ^ ../src/stream.d:314:51: warning: unused parameter 'bytearray_' [-Wunused-parameter] const gcv_object_t* bytearray_, ^ ../src/stream.d:315:37: warning: unused parameter 'start' [-Wunused-parameter] uintL start, uintL len, perseverance_t persev) ^ ../src/stream.d:315:50: warning: unused parameter 'len' [-Wunused-parameter] uintL start, uintL len, perseverance_t persev) ^ ../src/stream.d:315:70: warning: unused parameter 'persev' [-Wunused-parameter] uintL start, uintL len, perseverance_t persev) ^ ../src/stream.d:345:52: warning: unused parameter 'chararray_' [-Wunused-parameter] const gcv_object_t* chararray_, ^ ../src/stream.d:346:38: warning: unused parameter 'start' [-Wunused-parameter] uintL start, uintL len) ^ ../src/stream.d:346:51: warning: unused parameter 'len' [-Wunused-parameter] uintL start, uintL len) ^ ../src/stream.d:366:61: warning: unused parameter 'obj' [-Wunused-parameter] local void wr_ch_error (const gcv_object_t* stream_, object obj) ^ ../src/stream.d:370:51: warning: unused parameter 'chararray_' [-Wunused-parameter] const gcv_object_t* chararray_, ^ ../src/stream.d:371:37: warning: unused parameter 'start' [-Wunused-parameter] uintL start, uintL len) ^ ../src/stream.d:371:50: warning: unused parameter 'len' [-Wunused-parameter] uintL start, uintL len) ^ ../src/stream.d:2955:39: warning: unused parameter 'sp' [-Wunused-parameter] local void handle_close_errors (void* sp, gcv_object_t* frame, object label, ^ ../src/stream.d:2955:71: warning: unused parameter 'label' [-Wunused-parameter] local void handle_close_errors (void* sp, gcv_object_t* frame, object label, ^ ../src/stream.d:2956:40: warning: unused parameter 'condition' [-Wunused-parameter] object condition) { ^ ../src/stream.d:4001:11: warning: 'iconv' macro redefined [-Wmacro-redefined] #define iconv(cd,inbuf,inbytesleft,outbuf,outbytesleft) \ ^ /usr/local//include/iconv.h:81:9: note: previous definition is here #define iconv libiconv ^ ../src/stream.d:4061:27: error: use of undeclared identifier 'iconv' {var size_t res = iconv(cd,&inptr,&insize,&outptr,&outsize); ^ ../src/stream.d:4002:6: note: expanded from macro 'iconv' (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) ^ ../src/stream.d:4108:27: error: use of undeclared identifier 'iconv' {var size_t res = iconv(cd,&inptr,&insize,&outptr,&outsize); ^ ../src/stream.d:4002:6: note: expanded from macro 'iconv' (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) ^ ../src/stream.d:4143:25: error: use of undeclared identifier 'iconv' {var size_t res = iconv(cd,&inptr,&insize,&outptr,&outsize); ^ ../src/stream.d:4002:6: note: expanded from macro 'iconv' (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) ^ ../src/stream.d:4194:27: error: use of undeclared identifier 'iconv' {var size_t res = iconv(cd,&inptr,&insize,&outptr,&outsize); ^ ../src/stream.d:4002:6: note: expanded from macro 'iconv' (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) ^ ../src/stream.d:4208:19: error: use of undeclared identifier 'iconv' if (iconv(cd,&inptr1,&insize1,&outptr,&outsize) ^ ../src/stream.d:4002:6: note: expanded from macro 'iconv' (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) ^ ../src/stream.d:4238:25: error: use of undeclared identifier 'iconv' {var size_t res = iconv(cd,NULL,NULL,&outptr,&outsize); ^ ../src/stream.d:4002:6: note: expanded from macro 'iconv' (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) ^ ../src/stream.d:4273:27: error: use of undeclared identifier 'iconv' {var size_t res = iconv(cd,&inptr,&insize,&outptr,&outsize); ^ ../src/stream.d:4002:6: note: expanded from macro 'iconv' (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) ^ ../src/stream.d:4287:19: error: use of undeclared identifier 'iconv' if (iconv(cd,&inptr1,&insize1,&outptr,&outsize) != (size_t)(-1)) { ^ ../src/stream.d:4002:6: note: expanded from macro 'iconv' (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) ^ ../src/stream.d:4314:27: error: use of undeclared identifier 'iconv' {var size_t res = iconv(cd,NULL,NULL,&outptr,&outsize); ^ ../src/stream.d:4002:6: note: expanded from macro 'iconv' (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) ^ ../src/stream.d:4336:25: error: use of undeclared identifier 'iconv' {var size_t res = iconv(cd,&inptr,&insize,&outptr,&outsize); ^ ../src/stream.d:4002:6: note: expanded from macro 'iconv' (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) ^ ../src/stream.d:4352:17: error: use of undeclared identifier 'iconv' if (iconv(cd,&inptr1,&insize1,&outptr,&outsize) != (size_t)(-1)) { ^ ../src/stream.d:4002:6: note: expanded from macro 'iconv' (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) ^ ../src/stream.d:4415:29: error: use of undeclared identifier 'iconv' {var size_t res = iconv(cd,&inptr,&insize,&outptr,&outsize); ^ ../src/stream.d:4002:6: note: expanded from macro 'iconv' (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) ^ ../src/stream.d:4779:51: warning: unused parameter 'tty_p' [-Wunused-parameter] local listen_t listen_handle (Handle handle, bool tty_p, int *byte) { ^ ../src/stream.d:5489:64: warning: unused parameter 'bitsize' [-Wunused-parameter] local maygc void wr_by_aux_ia_unbuffered (object stream, uintL bitsize, ^ ../src/stream.d:5775:5: error: use of undeclared identifier 'iconv' iconv(ChannelStream_oconvdesc(stream),NULL,NULL,&outptr,&outsize); ^ ../src/stream.d:4002:6: note: expanded from macro 'iconv' (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) ^ ../src/stream.d:7166:5: error: use of undeclared identifier 'iconv' iconv(ChannelStream_oconvdesc(stream),NULL,NULL,&outptr,&outsize); ^ ../src/stream.d:4002:6: note: expanded from macro 'iconv' (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) ^ ../src/stream.d:7518:62: warning: unused parameter 'bitsize' [-Wunused-parameter] local maygc void wr_by_aux_ia_buffered (object stream, uintL bitsize, ^ ../src/stream.d:7562:47: warning: unused parameter 'bytesize' [-Wunused-parameter] uintL bytesize) ^ ../src/stream.d:7594:47: warning: unused parameter 'bytesize' [-Wunused-parameter] uintL bytesize) { GCTRIGGER1(stream); { ^ ../src/stream.d:7666:41: warning: unused parameter 'persev' [-Wunused-parameter] uintL start, uintL len, perseverance_t persev) { GCTRIGGER(); { ^ ../src/stream.d:9245:42: warning: unused parameter 'sp' [-Wunused-parameter] local void lisp_completion_ignore (void* sp, gcv_object_t* frame, object label, ^ ../src/stream.d:9245:60: warning: unused parameter 'frame' [-Wunused-parameter] local void lisp_completion_ignore (void* sp, gcv_object_t* frame, object label, ^ ../src/stream.d:9245:74: warning: unused parameter 'label' [-Wunused-parameter] local void lisp_completion_ignore (void* sp, gcv_object_t* frame, object label, ^ ../src/stream.d:9246:43: warning: unused parameter 'condition' [-Wunused-parameter] object condition) { ^ ../src/stream.d:9598:60: warning: unused parameter 'text' [-Wunused-parameter] local char** lisp_completion_matches (READLINE_CONST char* text, ^ ../src/stream.d:9694:11: warning: comparison of array 'prompt' not equal to a null pointer is always true [-Wtautological-pointer-compare] if (prompt!=NULL) { ^~~~~~ ~~~~ ../src/stream.d:9706:46: warning: comparison of array 'prompt' equal to a null pointer is always false [-Wtautological-pointer-compare] {var char* line = strip_white(readline(prompt==NULL ? "" : prompt)); ^~~~~~ ~~~~ ../src/stream.d:10948:29: warning: unused parameter 'c' [-Wunused-parameter] local void count_char (char c) { cost_counter++; } ^ ../src/stream.d:12397:28: warning: unused parameter 'abort' [-Wunused-parameter] local void end_term (uintB abort) { ^ ../src/stream.d:12511:33: warning: unused parameter 'stream' [-Wunused-parameter] local void close_window (object stream, uintB abort) { ^ ../src/stream.d:13034:54: warning: unused parameter 'stream' [-Wunused-parameter] local void low_finish_output_unbuffered_pipe (object stream) {} /* do nothing */ ^ ../src/stream.d:13035:53: warning: unused parameter 'stream' [-Wunused-parameter] local void low_force_output_unbuffered_pipe (object stream) {} /* do nothing */ ^ ../src/stream.d:13036:53: warning: unused parameter 'stream' [-Wunused-parameter] local void low_clear_output_unbuffered_pipe (object stream) {} /* do nothing */ ^ ../src/stream.d:13849:41: warning: unused parameter 'stream' [-Wunused-parameter] local void low_close_socket_nop (object stream, object handle, uintB abort) {} ^ ../src/stream.d:13849:56: warning: unused parameter 'handle' [-Wunused-parameter] local void low_close_socket_nop (object stream, object handle, uintB abort) {} ^ ../src/stream.d:13849:70: warning: unused parameter 'abort' [-Wunused-parameter] local void low_close_socket_nop (object stream, object handle, uintB abort) {} ^ 42 warnings and 14 errors generated. make: *** [stream.o] Error 1 |
From: Sam S. <sd...@gn...> - 2017-03-23 18:43:57
|
> * Karsten Poeck <Xne...@tz...> [2017-03-23 18:50:12 +0100]: > > On 23.03.17 15:45, Sam Steingold wrote: >>> iconv is needed for mac with gnu libiconv. >> I am not sure what this means. >> I use mac and I don't install gnu libiconv. > > With todays hg tip on macossierra 10.2.3 > > ./configure --with-libsigsegv-prefix=/usr/local/ > --with-libreadline-prefix=/usr/local/opt/readline/ > --with-libffcall-prefix=/usr/local/ --cbc 20170323 > > -> > > Compilation aborted with errors in stream.c (see error details) > > But > ./configure > --with-libiconv-prefix=/Users/karstenpoeck/clisphg/tools/libiconv-1.14/ > --with-libsigsegv-prefix=/usr/local/ > --with-libreadline-prefix=/usr/local/opt/readline/ > --with-libffcall-prefix=/usr/local/ --cbc 20170323b > > works without errors. > > Error details: > gcc -I/usr/local//include -I/usr/local/include > -I/usr/local/opt/readline//include > -I/Users/karstenpoeck/lisp/compiler/clisphg/src > -I/Users/karstenpoeck/lisp/compiler/clisphg/20170323/gllib > -I/Users/karstenpoeck/lisp/compiler/clisphg/src/gllib -g -O2 -W -Wswitch > -Wcomment -Wpointer-arith -Wreturn-type -Wmissing-declarations > -Wimplicit -Wno-sign-compare -Wno-format-nonliteral > -Wno-shift-negative-value -O -fwrapv -fno-strict-aliasing > -DUNIX_BINARY_DISTRIB -DENABLE_UNICODE -DDYNAMIC_FFI -DDYNAMIC_MODULES > -DNO_GETTEXT -I. -c stream.c >..... > ../src/stream.d:4061:27: error: use of undeclared identifier 'iconv' > {var size_t res = iconv(cd,&inptr,&insize,&outptr,&outsize); > ^ > ../src/stream.d:4002:6: note: expanded from macro 'iconv' Interesting. I did not install libiconv myself, but I seem to have it in /usr/include/iconv.h: --8<---------------cut here---------------start------------->8--- #define _LIBICONV_VERSION 0x010B /* version number: (major<<8) + minor */ extern int _libiconv_version; /* Likewise */ --8<---------------cut here---------------end--------------->8--- Do you? -- Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1504 http://steingoldpsychology.com http://www.childpsy.net http://camera.org http://www.memritv.org http://americancensorship.org Democrats, get out of my wallet! Republicans, get out of my bedroom! |
From: Karsten P. <Kar...@gm...> - 2017-03-23 19:15:00
|
On 23.03.17 19:43, Sam Steingold wrote: > /usr/include/iconv.h: > > --8<---------------cut here---------------start------------->8--- > #define _LIBICONV_VERSION 0x010B /* version number: (major<<8) + minor */ > extern int _libiconv_version; /* Likewise */ > --8<---------------cut here---------------end--------------->8--- > > Do you? I think I have the same: My /usr/include/iconv.h: (from 31.07.2016) #ifndef _LIBICONV_H #define _LIBICONV_H #include <sys/cdefs.h> #include <_types.h> #include <sys/_types/_size_t.h> #define _LIBICONV_VERSION 0x010B /* version number: (major<<8) + minor */ extern int _libiconv_version; /* Likewise */ ....... puzzled Karsten |
From: Sam S. <sd...@gn...> - 2017-03-23 19:23:09
|
> * Karsten Poeck <Xne...@tz...> [2017-03-23 20:14:19 +0100]: > > On 23.03.17 19:43, Sam Steingold wrote: >> /usr/include/iconv.h: >> >> --8<---------------cut here---------------start------------->8--- >> #define _LIBICONV_VERSION 0x010B /* version number: (major<<8) + minor */ >> extern int _libiconv_version; /* Likewise */ >> --8<---------------cut here---------------end--------------->8--- >> >> Do you? > > I think I have the same: > > > My /usr/include/iconv.h: (from 31.07.2016) > #ifndef _LIBICONV_H > #define _LIBICONV_H > > #include <sys/cdefs.h> > #include <_types.h> > #include <sys/_types/_size_t.h> > > #define _LIBICONV_VERSION 0x010B /* version number: (major<<8) + minor */ > extern int _libiconv_version; /* Likewise */ > ....... > > puzzled when you build without your own libiconv installation, do you see libiconv in "./clisp --version" like I do? libsigsegv 2.11 libiconv 1.11 libreadline 7.0 libffcall 1.13 -- Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1504 http://steingoldpsychology.com http://www.childpsy.net http://think-israel.org http://americancensorship.org http://thereligionofpeace.com To avoid fatigue, one must sleep 8 hours every day. And 8 hours every night too. |
From: Karsten P. <Kar...@gm...> - 2017-03-23 23:07:35
|
On 23.03.17 20:23, Sam Steingold wrote: > when you build without your own libiconv installation, do you see > libiconv in "./clisp --version" like I do? > > libsigsegv 2.11 > libiconv 1.11 > libreadline 7.0 > libffcall 1.13 To start with libiconv 1.11 does not link anymore on my system gcc -dynamiclib -o .libs/libiconv.2.4.0.dylib .libs/iconv.o .libs/localcharset.o .libs/relocatable.o -install_name /usr/local/lib/libiconv.2.dylib -Wl,-compatibility_version -Wl,7 -Wl,-current_version -Wl,7.0 Undefined symbols for architecture x86_64: "_aliases_lookup", referenced from: _libiconv_open in iconv.o _iconv_canonicalize in iconv.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) Regarding the compilation error, this happens in streams.d:If I do the following change, the files compiles happily, and libiconv 1.15 shows in ./clisp --version diff --git a/src/stream.d b/src/stream.d --- a/src/stream.d +++ b/src/stream.d @@ -3999,7 +3999,7 @@ libiconv(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) #else #define iconv(cd,inbuf,inbytesleft,outbuf,outbytesleft) \ - (iconv)(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) + libiconv(cd,(ICONV_CONST char **)(inbuf),inbytesleft,outbuf,outbytesleft) #endif /* open the iconv conversion and signal errors when necessary than I get with ./configure --with-libiconv-prefix=/usr/local/ --with-libsigsegv-prefix=/usr/local/ --with-libreadline-prefix=/usr/local/opt/readline/ --with-libffcall-prefix=/usr/local/ --cbc 20170323m .... checking for iconv... yes checking for working iconv... yes checking how to link with libiconv... -L/usr/local//lib -liconv checking for iconv declaration... extern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); ..... karstenoecksMBP:20170323m karstenpoeck$ ./clisp --version GNU CLISP 2.49.50+ (2017-03-30) (built 3699296506) (memory 3699296983) Software: GNU C 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.42.1) gcc -g -O2 -W -Wswitch -Wcomment -Wpointer-arith -Wreturn-type -Wmissing-declarations -Wimplicit -Wno-sign-compare -Wno-format-nonliteral -Wno-shift-negative-value -O -fwrapv -fno-strict-aliasing -DUNIX_BINARY_DISTRIB -DENABLE_UNICODE -DDYNAMIC_FFI -DDYNAMIC_MODULES -DNO_GETTEXT libgnu.a -L/usr/local/opt/readline//lib -lreadline -lncurses /usr/local//lib/libavcall.a /usr/local//lib/libcallback.a -L/usr/local//lib -liconv /usr/local//lib/libsigsegv.a -lc -L/usr/X11/lib SAFETY=0 TYPECODES WIDE_HARD GENERATIONAL_GC SPVW_BLOCKS SPVW_MIXED TRIVIALMAP_MEMORY libsigsegv 2.11 libiconv 1.15 libreadline 7.0 libffcall 1.13 Features: (READLINE REGEXP WILDCARD SYSCALLS I18N LOOP COMPILER CLOS MOP CLISP ANSI-CL COMMON-LISP LISP=CL INTERPRETER LOGICAL-PATHNAMES SOCKETS GENERIC-STREAMS SCREEN FFI UNICODE BASE-CHAR=CHARACTER WORD-SIZE=64 UNIX MACOS) C Modules: (clisp i18n syscalls regexp readline) Installation directory: /Users/karstenpoeck/lisp/compiler/clisphg/20170323m/ User language: ENGLISH Machine: X86_64 (X86_64) karstenoecksmbp.fritz.box [192.168.178.41] To explain this, is beyond my paygrade, but I see that Reini has changed the definition in stream.d while I was checking. (rev cb052d00af69872f5c1df76f05e5d137ff2187da [cb052d00af69]). With his change i also can compile and get libiconv 1.15 included regards Karsten |