From: Todd S. <ts...@op...> - 2002-03-02 05:38:08
|
Sam Steingold <sd...@gn...> writes: > > Are there things that you feel need to be done before the next > > release? > > I want the release out by Monday. > > I tested it on Linux and FreeBSD. Current CVS is failing for me on Redhat62, due to an ICONV_CONST mismatch. I think I've figured out the problem. unixconf.h.in has a line: #define ICONV_CONST but the autoconf sed stuff can't change it because there's no symbol it's defined to, which causes the sed expressions autoconf uses not to work. Apparently, the way to address that is by changing it thusly: diff -u -r1.30 unixconf.h.in --- src/unixconf.h.in 25 Dec 2001 17:48:28 -0000 1.30 +++ src/unixconf.h.in 2 Mar 2002 04:56:38 -0000 @@ -653,7 +653,7 @@ iconv_open, iconv, iconv_close functions. */ #undef HAVE_ICONV /* Define as const if the declaration of iconv() needs const. */ -#define ICONV_CONST +#undef ICONV_CONST /* OS services */ which matches the way all the other *_CONST stuff in there is done. And it does fix the build on Redhat 6.2. Redhat 7.2 also still works (and does without the patch). Unfortunately, with the patch the build doesn't work on FreeBSD 4.5 (I haven't tried 4.5 without the patch). The problem in that case is that it doesn't have ICONV at all, so no line is added to confdefs.h one way or the other about ICONV_CONST, which leaves the undef as is. So the compiler complains about ICONV_CONST being unrecognized. A possible way around _that_ is this: diff -u -r1.30 unixconf.h.in --- src/unixconf.h.in 25 Dec 2001 17:48:28 -0000 1.30 +++ src/unixconf.h.in 2 Mar 2002 05:18:32 -0000 @@ -653,8 +653,11 @@ iconv_open, iconv, iconv_close functions. */ #undef HAVE_ICONV /* Define as const if the declaration of iconv() needs const. */ -#define ICONV_CONST +#undef ICONV_CONST +#ifndef ICONV_CONST +#define ICONV_CONST +#endif /* OS services */ which makes sure that ICONV_CONST is defined as nothing, if not defined yet. Probably the right way is to use just the first patch, but also fix the code in configure to put a line in confdefs.h even if iconv isn't present, but it seems that configure itself is auto-generated somehow. I really have no idea how this autoconf stuff is supposed to work, in case you couldn't tell... :) Hopefully, someone else does... Anyway, with this second patch, Redhat 6.2 and 7.2 build for me fine. FreeBSD 4.5 manages to build the clisp binaries, but chokes on the Makefile in the suite directory, saying: LISP="`pwd`/lisp.run -M `pwd`/lispinit.mem -B `pwd` -N `pwd`/locale -Efile UTF-8 -norc"; export LISP; cd suite; make LISP="$LISP" "Makefile", line 2: Missing dependency operator "Makefile", line 5: Need an operator "Makefile", line 8: Need an operator make: fatal errors encountered -- cannot continue *** Error code 1 > There will be _NO_ release until I get confirmation from the users that > the current CVS CLISP compiles out of the box on at least win32 and > Solaris. I'll try the windows build tomorrow. Don't have any Solaris... Todd |