4 Commits

Author SHA256 Message Date
1e6caa5734 Accepting request 1288568 from devel:languages:misc
- Update to latest commit f6622093 (based on 2.49.95+git20241103)
  to get it build with gcc15
  Fix expansion of CL_FFCALL in src/configure.
  Reported by Adam Sampson <ats@offog.org> at
  <https://gitlab.com/gnu-clisp/clisp/-/issues/60>.
    * glm4/lib-link.m4 (AC_LIB_FROMPACKAGE): Import bug fix from gnulib.
    * src/configure: Regenerated.
      Enable most optimizations on Hurd/x86_64.
    * lispbibl.d (MAPPABLE_ADDRESS_RANGE_START, MAPPABLE_ADDRESS_RANGE_END,
      SINGLEMAP_*, *_WORKS): Define for Hurd/x86_64.
    * Makefile.devel (multibuild-hurd-x86_64): Enable all build variants
      that work.
    * makemake.in (Z_XCFLAGS): For Hurd/x86_64, enable all optimizations
  except ASM.
  Recommend libsigsegv 2.15.
    * configure (libsigsegv_url): Update to 2.15.
  Find a better way to make things work with gcc 15.1.0.
  Suggested by Jerry James in
  <https://gitlab.com/gnu-clisp/clisp/-/merge_requests/12>.
  According to ISO C 99/11/17 § 6.5.6.(8), ISO C 23 § 6.5.7.(9),
  computing (T*)0 + constant is undefined behaviour.
    * package.d (rehash_symtab): Change 'offset' to be of integral type.
  Re-enable gcc optimizations.
  (map_symtab, map_symtab_c): Change 'offset' to be of integral type.
  Fix most gcc -Wimplicit-fallthrough warnings.
    * Makefile.devel (GNULIB_CORE): Add 'attribute'.
    * lispbibl.d: Include attribute.h.
    * eval.d: Silence -Wimplicit-fallthrough warnings.
    * foreign.d (foreign_pointer): Add 'FALLTHROUGH;' statement.
    * stream.d (interactive_stream_p, READ-BYTE-NO-HANG): Likewise.

OBS-URL: https://build.opensuse.org/request/show/1288568
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/clisp?expand=0&rev=56
2025-06-26 09:39:40 +00:00
ca3f68084d .
OBS-URL: https://build.opensuse.org/package/show/devel:languages:misc/clisp?expand=0&rev=157
2025-06-25 14:47:20 +00:00
94d5c80907 Update to clisp 2.49.95+git20241103.f6622093
OBS-URL: https://build.opensuse.org/package/show/devel:languages:misc/clisp?expand=0&rev=156
2025-06-24 12:54:20 +00:00
ecbd4fb8eb .
OBS-URL: https://build.opensuse.org/package/show/devel:languages:misc/clisp?expand=0&rev=155
2025-06-23 14:33:50 +00:00
9 changed files with 374 additions and 64 deletions

View File

@@ -28,7 +28,7 @@
passnext=both ;;
--- clisp-2.49.93+git20240704.f5acef38/modules/clx/new-clx/Makefile.in
+++ clisp-2.49.93+git20240704.f5acef38/modules/clx/new-clx/Makefile.in 2024-09-02 13:23:26.124850752 +0000
@@ -18,7 +18,7 @@ distribdir =
@@ -29,7 +29,7 @@ distribdir =
### Custom defs.
CCMP2C = ../../ccmp2c
RM = rm -f
@@ -81,7 +81,7 @@
#define PC386
#endif
#if (defined(sun) && defined(unix) && defined(sparc))
@@ -274,8 +274,14 @@
@@ -278,8 +278,14 @@
#endif
#ifdef GENERIC_UNIX
#define UNIX
@@ -97,7 +97,7 @@
#endif
#ifdef __GNU__
#define UNIX_HURD /* the GNU system (Hurd + glibc) */
@@ -1271,7 +1277,7 @@ typedef signed int signean;
@@ -1240,7 +1246,7 @@ typedef signed int signean;
address of its component 'ident' and return it as number: */
#include <stddef.h>
#ifndef offsetof
@@ -106,7 +106,7 @@
#endif
/* Determine the offset of an array 'ident' in a struct of the type 'type': */
#if defined(__cplusplus) || defined(MICROSOFT)
@@ -5439,9 +5445,9 @@ typedef signed_int_with_n_bits(intVsize)
@@ -5517,9 +5523,9 @@ typedef signed_int_with_n_bits(intVsize)
type_data_object(type,data) */
#if defined(WIDE) && defined(WIDE_STRUCT)
#if BIG_ENDIAN_P==WIDE_ENDIANNESS
@@ -130,7 +130,7 @@
-verb* | --verb* )
verbose=`echol "$1"|sed 's/-*v[^=]*=*//'`
test -n "${verbose}" || verbose=true
@@ -1166,11 +1169,13 @@ else
@@ -1188,11 +1191,13 @@ else
fi
# Main cpu dependencies:
@@ -144,18 +144,18 @@
test "${verbose}" = true -o "${verbose}" = yes && \
cat <<EOF >&2
@@ -1367,6 +1372,10 @@ if [ $XCC_GCC = true ] ; then
XCFLAGS=${XCFLAGS}" -pthread"
@@ -1385,6 +1390,10 @@ if [ $XCC_GCC = true ] ; then
Z_XCFLAGS=${Z_XCFLAGS}" -pthread"
fi
+ if [ -n "${MYCFLAGS}" ] ; then
+ XCFLAGS=$XCFLAGS' ${MYCFLAGS}'
+ Z_XCFLAGS=${Z_XCFLAGS}' ${MYCFLAGS}'
+ fi
+
else
if [ $CROSS = false ] ; then
@@ -1468,7 +1477,7 @@ if [ "${with_dynamic_modules}" != no ];
@@ -1485,7 +1490,7 @@ if [ "${with_dynamic_modules}" != no ];
eval XCC_PICFLAG=\"${pic_flag}\"
if [ "$HSYSOS" != cygwin ]; then
eval "`./libtool --tag=CC --config | grep '^allow_undefined_flag='`"
@@ -164,7 +164,7 @@
else
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname'
fi
@@ -4036,8 +4045,9 @@ if [ $CROSS = false ] ; then
@@ -4100,8 +4105,9 @@ if [ $CROSS = false ] ; then
echol
if [ "${with_dynamic_modules}" != no ]; then
depends="full install-modules force"

View File

@@ -5,7 +5,7 @@
diff --git a/src/_clisp.c b/src/_clisp.c
--- a/src/_clisp.c
+++ b/src/_clisp.c
@@ -48,6 +48,11 @@
@@ -46,6 +46,11 @@
/* Declare stderr, perror(). */
# include <stdio.h>
@@ -17,7 +17,7 @@ diff --git a/src/_clisp.c b/src/_clisp.c
#if defined(WIN32_NATIVE)
# include <windows.h>
int shell_quote (char * dest, const char * source);
@@ -435,6 +440,12 @@ int main (int argc, char* argv[])
@@ -434,6 +439,12 @@ int main (int argc, char* argv[])
}
#undef W32ERR
#else

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6b7d512b12653ea022cc461308ecd36a6aae66473ae797fbcd37ba7b663e4fa4
size 7239936

View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9fa7f1a52a5110c22be47077c13766850d023c0c8d4f477b130478431cfc4a83
size 7341848

View File

@@ -12,7 +12,7 @@ it [set_rpc_server] always returned EOPNOTSUPP even in libdb-4.8).
--- clisp-536a48a9/modules/berkeley-db/bdb.c
+++ clisp-536a48a9/modules/berkeley-db/bdb.c 2016-11-29 11:58:23.833524665 +0000
@@ -60,6 +60,7 @@ static void vecout (unsigned char* v, in
@@ -61,6 +61,7 @@ static void vecout (unsigned char* v, in
this is a macro and not a function for NO_UNICODE */
#define asciz_to_string0(a,e) (a ? asciz_to_string(a,e) : NIL)
@@ -20,7 +20,7 @@ it [set_rpc_server] always returned EOPNOTSUPP even in libdb-4.8).
#include <db.h>
/* http://www.oracle.com/technology/products/berkeley-db/db/update/4.4.20/if.4.4.20.html
@@ -2216,7 +2217,7 @@ DEFUN(BDB:DB-COMPACT, db &key TRANSACTIO
@@ -2217,7 +2218,7 @@ DEFUN(BDB:DB-COMPACT, db &key TRANSACTIO
c_data.compact_timeout = timeout;
c_data.compact_pages = pages;
SYSCALL(db->compact,(db,txn,pstart,pstop,&c_data,flags,&end));

View File

@@ -11,7 +11,7 @@
--- modules/berkeley-db/bdb.c
+++ modules/berkeley-db/bdb.c 2024-08-29 11:45:09.133249570 +0000
@@ -364,7 +364,7 @@ DEFUN(BDB:DBE-CREATE,&key PASSWORD ENCRY
@@ -365,7 +365,7 @@ DEFUN(BDB:DBE-CREATE,&key PASSWORD ENCRY
dbe_set_encryption(dbe,&STACK_0,&STACK_1);
skipSTACK(2);
/* set error & message callbacks */
@@ -20,7 +20,7 @@
#if defined(HAVE_DB_ENV_SET_MSGCALL)
dbe->set_msgcall(dbe,&message_callback);
#endif
@@ -1212,7 +1212,7 @@ DEFUN(BDB:DB-CREATE, dbe)
@@ -1213,7 +1213,7 @@ DEFUN(BDB:DB-CREATE, dbe)
SYSCALL(db_create,(&db,dbe,0));
if (!dbe) { /* set error callback */
begin_system_call();
@@ -29,7 +29,7 @@
end_system_call();
}
wrap_finalize(db,STACK_0,`BDB::MKDB`,``BDB::DB-CLOSE``);
@@ -1514,9 +1514,9 @@ DEFUN(BDB:DB-STAT, db &key FAST-STAT TRA
@@ -1515,9 +1515,9 @@ DEFUN(BDB:DB-STAT, db &key FAST-STAT TRA
{ /* Return database statistics */
DB_TXN *txn = (DB_TXN*)bdb_handle(popSTACK(),`BDB::TXN`,BH_NIL_IS_NULL);
#if defined(HAVE_DB_STAT_ACCEPT_TXN)
@@ -41,41 +41,18 @@
#endif
u_int32_t flags = missingp(STACK_0) ? 0 : DB_FAST_STAT;
DB *db = (DB*)bdb_handle(STACK_1,`BDB::DB`,BH_VALID);
@@ -2752,7 +2752,8 @@ DEFUN(BDB:TXN-RECOVER, dbe &key FIRST :N
DB_ENV *dbe = (DB_ENV*)bdb_handle(popSTACK(),`BDB::DBE`,BH_VALID);
@@ -2754,7 +2754,7 @@ DEFUN(BDB:TXN-RECOVER, dbe &key FIRST :N
u_int32_t tx_max;
DB_PREPLIST *preplist;
- int status, ii;
+ int status;
+ long ii;
u_int32_t retnum;
int status;
- long retnum;
+ u_int32_t retnum;
long ii;
SYSCALL(dbe->get_tx_max,(dbe,&tx_max));
preplist = (DB_PREPLIST*)clisp_malloc(tx_max * sizeof(DB_PREPLIST));
--- modules/berkeley-db/configure.in
+++ modules/berkeley-db/configure.in 2024-08-29 07:17:20.463971573 +0000
@@ -38,7 +38,7 @@ AC_CHECK_SIZEOF(db_recno_t,,[#include <s
dnl <http://www.sleepycat.com/docs/ref/upgrade.4.3/stat.html>
AC_CACHE_CHECK([whether DB->stat() accepts TXNid],ac_cv_db_stat_accept_txn,[
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <db.h>],
-[[DB db; db.stat(&db,NULL,0,NULL);]])],
+[[DB db; db.stat(&db,NULL,NULL,0);]])],
ac_cv_db_stat_accept_txn=yes,ac_cv_db_stat_accept_txn=no)])
if test "$ac_cv_db_stat_accept_txn" = "yes"; then
AC_DEFINE(HAVE_DB_STAT_ACCEPT_TXN,1,[Define to 1 if DB->stat() accepts TXNid])
--- modules/berkeley-db/configure
+++ modules/berkeley-db/configure 2024-08-29 07:17:20.463971573 +0000
@@ -6241,7 +6241,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_
int
main (void)
{
-DB db; db.stat(&db,NULL,0,NULL);
+DB db; db.stat(&db,NULL,NULL,0);
;
return 0;
}
--- src/foreign.d
+++ src/foreign.d 2024-08-29 07:24:17.508412215 +0000
@@ -2417,7 +2417,7 @@ local void count_walk_post (object fvd,
@@ -2372,7 +2372,7 @@ local void count_walk_post (object fvd,
{
unused(fvd); unused(obj); unused(walk);
}
@@ -86,7 +63,7 @@
struct walk_lisp walk
--- src/lispbibl.d
+++ src/lispbibl.d 2024-08-29 07:25:56.826610237 +0000
@@ -11641,7 +11641,7 @@ All other long words on the LISP-Stack a
@@ -11725,7 +11725,7 @@ All other long words on the LISP-Stack a
#define FAST_SP
#endif
#elif defined(GNU) && defined(SP_register)
@@ -119,7 +96,7 @@
ANSIC_ERROR("textdomain",td);
--- src/spvw_sigsegv.d
+++ src/spvw_sigsegv.d 2024-08-29 07:21:09.115828518 +0000
@@ -62,7 +62,7 @@ local void print_mem_stats (void) {
@@ -58,7 +58,7 @@ local void print_mem_stats (void) {
/* Put a breakpoint here if you want to catch CLISP just before it dies. */
global void sigsegv_handler_failed (void* address) {
fprint(stderr,"\n");

View File

@@ -16,16 +16,7 @@
cp ${f} ${absdestdir}/${DYNMOD}/
--- src/lispbibl.d
+++ src/lispbibl.d 2018-02-19 09:30:11.552748021 +0000
@@ -1610,6 +1610,8 @@ typedef SLONG sint32; /* signed 32 bi
/* Emulate 64-Bit-numbers using two 32-Bit-numbers. */
typedef struct { sintL hi; uintL lo; } sintL2; /* signed 64 Bit integer */
typedef struct { uintL hi; uintL lo; } uintL2; /* unsigned 64 Bit integer */
+ #define bitQ(n) bit(n)
+ #define bitQm(n) bitm(n)
#endif
/* Use 'uintX' and 'sintX' for Integers with approximately given width
and a minumum of storage space. */
@@ -14188,7 +14190,7 @@ re-enters the corresponding top-level lo
@@ -14272,7 +14272,7 @@ re-enters the corresponding top-level lo
#define pushSTACK(obj) (STACK_(-1) = (obj), STACK skipSTACKop -1)
/* Almost equivalent with *--STACK = obj resp. *STACK++ = obj , but
Careful: first enter the object into STACK_(-1), THEN modify the STACK! */

View File

@@ -1,3 +1,345 @@
-------------------------------------------------------------------
Mon Jun 23 15:23:10 UTC 2025 - Dr. Werner Fink <werner@suse.de>
- Update to latest commit f6622093 (based on 2.49.95+git20241103)
to get it build with gcc15
Fix expansion of CL_FFCALL in src/configure.
Reported by Adam Sampson <ats@offog.org> at
<https://gitlab.com/gnu-clisp/clisp/-/issues/60>.
* glm4/lib-link.m4 (AC_LIB_FROMPACKAGE): Import bug fix from gnulib.
* src/configure: Regenerated.
Enable most optimizations on Hurd/x86_64.
* lispbibl.d (MAPPABLE_ADDRESS_RANGE_START, MAPPABLE_ADDRESS_RANGE_END,
SINGLEMAP_*, *_WORKS): Define for Hurd/x86_64.
* Makefile.devel (multibuild-hurd-x86_64): Enable all build variants
that work.
* makemake.in (Z_XCFLAGS): For Hurd/x86_64, enable all optimizations
except ASM.
Recommend libsigsegv 2.15.
* configure (libsigsegv_url): Update to 2.15.
Find a better way to make things work with gcc 15.1.0.
Suggested by Jerry James in
<https://gitlab.com/gnu-clisp/clisp/-/merge_requests/12>.
According to ISO C 99/11/17 § 6.5.6.(8), ISO C 23 § 6.5.7.(9),
computing (T*)0 + constant is undefined behaviour.
* package.d (rehash_symtab): Change 'offset' to be of integral type.
Re-enable gcc optimizations.
(map_symtab, map_symtab_c): Change 'offset' to be of integral type.
Fix most gcc -Wimplicit-fallthrough warnings.
* Makefile.devel (GNULIB_CORE): Add 'attribute'.
* lispbibl.d: Include attribute.h.
* eval.d: Silence -Wimplicit-fallthrough warnings.
* foreign.d (foreign_pointer): Add 'FALLTHROUGH;' statement.
* stream.d (interactive_stream_p, READ-BYTE-NO-HANG): Likewise.
* lisparit.d (read_float): Likewise.
* intelem.d (I_to_UL, I_to_UQ): Likewise.
* io.d (GET-MACRO-CHARACTER, test_number_syntax, PARSE-INTEGER,
pr_real_number): Likewise.
* charstrg.d: Use 'FALLTHROUGH;' statements.
* hashtabl.d: Likewise.
* pathname.d: Likewise.
* spvw.d: Likewise.
Fix a gcc -Wformat-overflow warning.
* utils/varbrace.c (line_repeat_else, line_repeat_endif): Make buf
larger.
Fix a gcc warning "macro __DATE__ might prevent reproducible builds".
* genclisph.d (main): Don't store a time stamp in clisp-test.c; its
time stamp on disk is sufficient.
Work around a gcc 15.1.0 bug on x86_64.
* package.d (rehash_symtab): When compiled by GCC 15, disable all
optimizations.
Update after gnulib changed.
* Makefile.devel (GNULIB_CORE): Use the new names of renamed gnulib
modules.
Revisit Linux/riscv64 builds.
* Makefile.devel (multibuild-linux-riscv64): Enable all build variants
that work.
Upgrade ASDF. This fixes a bug on Haiku.
Reported by Alexandru Popa <alpopa@gmail.com>
in <https://sourceforge.net/p/clisp/mailman/message/58844235/>.
* modules/asdf/asdf.lisp: Upgrade to upstream 3.3.6.7.
* modules/asdf/asdf.xml: Update.
* doc/impnotes.html: Regenerated.
Add comments.
* Makefile.devel (build-porting*): Add comments regarding *_WORKS macros
Enable most optimizations on Linux/loongarch64.
* lispbibl.d (LOONGARCH64): New macro.
(C_CODE_ALIGNMENT, intDsize, varobject_alignment, SP_register,
ASM_get_SP_register, SP_DOWN): Define for loongarch64.
(MAPPABLE_ADDRESS_RANGE_START, MAPPABLE_ADDRESS_RANGE_END, SINGLEMAP_*,
HEAPCODES1BIT_WITH_TRIVIALMAP_WORKS, HEAPCODES1BIT_WITH_MALLOC_WORKS,
GENERIC64C_HEAPCODES_WORKS, TYPECODES_WITH_TRIVIALMAP_WORKS,
TYPECODES_WITH_MALLOC_WORKS): Define for Linux/loongarch64.
* Makefile.devel (multibuild-linux-loongarch64): New target. Enable all
build variants that work.
* makemake.in (XCFLAGS): For Linux/loongarch64, enable all optimizations
except ASM.
Review memory mapping on Linux/powerpc64 with newer Linux kernels.
* lispbibl.d: Update comments.
Review memory mapping on Linux/arm64 with newer Linux kernels.
* lispbibl.d (MALLOC_ADDRESS_RANGE): Move override.
Fix a compiler bug that would lead to a wrong value of STACK.
Reported by Paul F. Dietz
at <https://gitlab.com/gnu-clisp/clisp/issues/11>.
* compiler.lisp (simplify): Fix the (SKIPI k11 k21 n1)
(SKIPI k21 k22 n2) combination rule.
Add user configuration for Haiku, part 3.
Reported by Alexandru Popa <alpopa@gmail.com>.
* cfghaiku.lisp: Remove *clhs-root-default* assignment. It is being
added automatically to config.lisp during the build process.
Improve memory mapping on Linux/s390x with newer Linux kernels.
Reported by Sébastien Villemot in
<https://gitlab.com/gnu-clisp/clisp/-/issues/2>.
* lispbibl.d [UNIX_LINUX && S390_64]: Support more variation of
CODE_ADDRESS_RANGE. Choose larger values for
MAPPABLE_ADDRESS_RANGE_START, MAPPABLE_ADDRESS_RANGE_END. Choose new
values for SINGLEMAP_TYPE_MASK, SINGLEMAP_oint_type_shift. Don't favour
GENERIC64_HEAPCODES. Set HEAPCODES1BIT_WITH_MALLOC_WORKS to 1.
* Makefile.devel (multibuild-linux-s390x): Enable all build variants.
* tests/alltest.tst: Allow new values of most-positive-fixnum,
most-negative-fixnum.
Fix compilation errors of SAFETY=3 builds with gcc versions < 5.
* lispbibl.d (OBJECT_STRUCT, CHART_STRUCT): Don't define with gcc
versions < 5.
Fix universal-time overflow in the year 2036.
Reported by Bernhard M. Wiedemann via Dr. Werner Fink in
<https://sourceforge.net/p/clisp/feature-requests/59/>
<https://gitlab.com/gnu-clisp/clisp/-/issues/48>.
* lispbibl.d (sec_usec_number): Change seconds parameter to sint64 and
microseconds parameter to uint32.
(Q_to_I): Declare unconditionally.
* intelem.d (Q_to_I): Define unconditionally.
* time.d (convert_time_to_universal): Cast time_t to sint64. Use Q_to_I
instead of UL_to_I.
(convert_time_from_universal): Use I_to_Q instead of I_to_UL.
(real_time_sec): Return a sint64.
(GET-UNIVERSAL-TIME): Use Q_to_I instead of UL_to_I.
* stream.d (sec_usec): Check that the seconds parameter is a sint64 or
sint64, depending on the type of 'tv_sec' in 'struct timeval'.
(sec_usec_number): Change seconds parameter to sint64 and microseconds
parameter to uint32. Use Q_to_I.
* modules/syscalls/calls.c (file_stat_to_STACK): Convert each st_*time
value to sint64 before adding +UNIX_LISP_TIME_DIFF.
Remove support for C compilers that don't support 64-bit 'long long'.
* intparam.c: Assume HAVE_LONG_LONG_INT.
* m4/intparam.m4 (CL_INTPARAM_CROSS): Don't require
AC_TYPE_LONG_LONG_INT. Handle 'long long' and 'unsigned long long' types
always.
* configure.in: Don't invoke AC_TYPE_LONG_LONG_INT.
* src/configure: Regenerated.
* lispbibl.d (LL, ULL): Remove macros.
(SLONGLONG, ULONGLONG): Define unconditionally.
(uint33, sint33, uint48, sint48, uint64, sint64): Define
unconditionally.
(sintL2, uintL2): Remove types.
(timescore_t, gc_space): Use uint64 instead of uintL2.
(I_to_UQ, I_to_Q): Declare unconditionally.
(I_to_uint64, I_to_sint64): Declare unconditionally.
* genclisph.d (printf_arg, fill_printf_arg, ULLsuffix,
print_printf_arg): Assume HAVE_LONG_LONG_INT.
* unixaux.d (FACTOR, NSPERSEC): Update.
* spvw_gcstat.d (gc_space, inc_gc_space): Use uint64 instead of uintL2.
* spvw_garcol.d (uintVLA): Likewise.
* spvw_garcol_old.d (uintVLA): Likewise.
* spvw_sigsegv.d (print_mem_stats): Use fprintf %llu unconditionally.
* debug.d (SYS::%ROOM): Use UQ_to_I unconditionally.
* time.d (convert_time_to_universal, real_time_sec): Assume
HAVE_LONG_LONG_INT.
(SYSTEM::%%TIME): Use uint64 unconditionally.
* aridecl.d (wbitc): Assume HAVE_LONG_LONG_INT.
* arilev0.d (mulu32, divu_6432_3232): Assume HAVE_LONG_LONG_INT.
* arilev1.d (muluD, divuD): Assume HAVE_LONG_LONG_INT.
* intelem.d (I_to_UQ, I_to_Q): Define unconditionally.
* intlog.d (logcount_64): Update.
* intmal.d (FN_fak_I): Update.
* intsqrt.d: Use uint64 instead of uintL2.
* foreign.d (struct_uint64, struct_sint64): Remove types. All uses
replaced with uint64, sint64.
(error_64bit): Remove function.
(foreign_layout, convert_from_foreign, convert_to_foreign, do_av_start,
do_av_arg, do_va_start, do_va_arg, do_va_return): Assume
HAVE_LONG_LONG_INT.
* tests/ffi.tst: Remove outdated comment.
Remove support for Mach systems without mmap.
This fixes a compilation error on Mac OS X caused by the last commit.
* lispbibl.d: Remove HAVE_MACH_VM specific code.
* unix.d: Likewise.
* spvw.d, spvw_mmap.d: Likewise.
* configure.in: Don't invoke CL_MACH_VM.
* m4/mach-vm.m4: Remove file.
* aclocal.m4, src/config*, src/gllib/Makefile.in: Regenerated.
On Mach, use mach_task_self() instead of task_self().
Reported by Florian Weimer in
<https://gitlab.com/gnu-clisp/clisp/-/issues/42>.
* m4/mach-vm.m4 (CL_MACH_VM): Use mach_task_self() and include the
appropriate Mach headers.
* unix.d [HAVE_MACH_VM]: Include <mach/mach_init.h>.
* spvw_mmap.d (mmap_zeromap, mmap_filemap, munmap, mprotect): Use
mach_task_self() instead of task_self().
* src/configure: Regenerated.
doc: Increase user privacy in HTML documentation.
* doc/common.xsl: Remove donation request (is redirected to paypal.com
and does not work), sourceforge.org reference (can be seen as a web
bug), and optional google ad (anti-social).
* doc/Makefile (GOOGLEADS): Remove variable.
(XMLOUT): Don't set google.ads any more.
* doc/*.html: Regenerated.
pari: Add support for pari 2.17.
* modules/pari/pari.lisp (diffptr): Remove declaration.
doc: Don't require an internet connection to build the doc.
* doc/gpl-2.0.dbk: Fix a syntax error.
* doc/impnotes.xml.in: Include fdl-1.3.dbk, gpl-2.0.dbk directly.
* doc/impnotes.html: Regenerated.
doc: Use a local copy of the GFDL and GPL licenses.
* doc/fdl-1.3.dbk: New file, from
https://www.gnu.org/licenses/fdl-1.3.dbk.
* doc/gpl-2.0.dbk: New file, from
https://www.gnu.org/licenses/old-licenses/gpl-2.0.dbk.
* doc/Makefile (IMPNOTES): Add them.
doc: Don't use undocumented groff man macro 'an-trap'.
* doc/Makefile (MAN_XSL_POSTPROCESS): Replace 'an-trap' with
'an-input-trap'.
doc: Add missing line breaks before .PP.
Reported by Erik Auerswald <auerswal@unix-ag.uni-kl.de> in
<https://sourceforge.net/p/clisp/bugs/748/>
<https://bugs.launchpad.net/ubuntu/+source/clisp/+bug/2022970>
<https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1041788>
* doc/Makefile (MAN_XSL_POSTPROCESS): New variable.
(clisp.1, clisp-link.1): Use it for post-processing.
doc: Comments about quality checking.
* Makefile.devel (view-man): Use -Tutf8 nowadays.
* doc/Makefile: Add comments.
syscalls tests: Don't assume that errno values are small. For Hurd/i386.
* modules/syscalls/test.tst: Start checking the errno values at the
minimum valid errno, not at 0.
Fix memory mapping on Hurd from 2021 or newer.
Reported by Flavio Cruz in
<https://gitlab.com/gnu-clisp/clisp/-/merge_requests/6>.
* lispbibl.d (MAPPABLE_ADDRESS_RANGE_START): Change for Hurd/i386.
Revisit list of predefined browsers.
* clhs.lisp (*browsers*): Add :falkon, :falkon-window, :falkon-tab,
:tor, :gnome, :sensible-browser. Change :chromium. Remove :mmm, :mosaic.
build: Build genclx without gnulib.
Reported by Peter Van Eynde in
<https://gitlab.com/gnu-clisp/clisp/-/issues/53>.
* modules/clx/new-clx/Makefile.in (BUILD_CC, BUILD_CPPFLAGS,
BUILD_CFLAGS, BUILD_LDFLAGS): New variables.
(clx.d): Use them to compile genclx.c.
berkeley-db: Fix configure test.
* modules/berkeley-db/configure.in: Avoid using uninitialized variables
in test programs, especially with -Werror.
* modules/berkeley-db/configure: Regenerated.
berkeley-db: Fix BDB:TXN-RECOVER on 64-bit platforms.
Reported by Jerry James in
<https://gitlab.com/gnu-clisp/clisp/-/merge_requests/9>.
* modules/berkeley-db/bdb.c (BDB:TXN-RECOVER): Change type of local
variables.
berkeley-db: Fix configure test.
Reported by Florian Weimer in
<https://gitlab.com/gnu-clisp/clisp/-/merge_requests/8>.
* modules/berkeley-db/configure.in: Fix arguments to db.stat.
* modules/berkeley-db/configure: Regenerated.
Update the GPL text.
* GNU-GPL: Update from <https://ftp.gnu.org/gnu/Licenses/gpl-2.0.txt>.
Add user configuration for Haiku, part 2.
* clhs.lisp (*browsers): Add :webpositive.
* cfghaiku.lisp (edit-file): Start the Haiku UI editor in the background.
(*browser*): Set to a keyword, not a string.
Bump version number.
* version.sh: Bump version number to 2.49.95+.
* version.h, src/configure: Regenerated.
build: Build the clisp driver program without gnulib, part 2.
* makemake.in (install-bin): When building $(bindir)/clisp, use only the
user-provided options and -DLISPLIBDIR, -DLOCALEDIR.
Add user configuration for Haiku.
* cfghaiku.lisp: New file, based on cfgunix.lisp, with small changes by
Alexandru Popa <alpopa@gmail.com>.
* makemake.in (CONFIG): Use it on Haiku.
Enable most optimizations on Haiku/x86_64.
* lispbibl.d (MAPPABLE_ADDRESS_RANGE_START, MAPPABLE_ADDRESS_RANGE_END,
SINGLEMAP_*): Define for Haiku/x86_64.
(TRIVIALMAP_MEMORY): Don't disable it by default on Haiku/x86_64.
(GENERATIONAL_GC): Don't enable it by default on Haiku.
* Makefile.devel (multibuild-haiku-64): Enable all build variants that
work.
* makemake.in (Z_XCFLAGS): For Haiku/x86_64, enable all optimizations
except ASM.
Improve port to Haiku/x86_64.
* stream.d (clear_tty_input, clear_tty_output): Ignore error code -1 on
Haiku.
* time.d (SYS::%SLEEP): On Haiku, use a smaller first argument to
Avoid a hang during configuration on Haiku.
* m4/mmap.m4 (CL_MMAP): Don't run the MAP_FIXED test on Haiku.
Enable most optimizations on Haiku/i386.
* Makefile.devel (multibuild-haiku-32): Enable all build variants that
work.
* makemake.in (Z_XCFLAGS): For Haiku/i386, enable all optimizations
except ASM.
Improve port to Haiku/i386.
* lispbibl.d: Update comments.
* modules/syscalls/posix.lisp (*services-file*): Set differently on
Haiku.
* modules/regexp/test.tst: Update expected test result on Haiku.
* modules/rawsock/rawsock.c (IFF): Change default to ~0L. This fixes a
compilation error on Haiku in debug-gcsafety mode.
Update to the newest gnulib. This fixes the DEBUG_GCSAFETY builds.
Ran "make -f Makefile.devel build-aux-update gnulib-imported \
&& make -f Makefile.devel build-prerequisites".
* build-aux/config.*: Update.
* gllib/*: Update from gnulib.
* glm4/*: Likewise.
* aclocal.m4, src/configure, src/config.h.in: Regenerated.
* modules/*/configure, modules/*/config.h.in: Regenerated.
build: Build the clisp driver program without gnulib.
* makemake.in (clisp${TEXE}): Use only the user-provided options and
-DENABLE_RELOCATABLE.
* _clisp.c: Don't include config.h.
build: Fix host-system / target-system confusion.
* _clisp.c: Include <fcntl.h>, needed by execname.c.
* execname.c: Don't use macro names WIN32_NATIVE, UNIX, UNIX_CYGWIN,
my_open_mask that are not present on the target system.
build: Build the utils/*.c programs without gnulib.
* makemake.in (UTILCOMPILE): Use only the user-provided options.
(${util}${HEXE}): Remove -I. option.
* utils/ccmp2c.c: Don't include <config.h>.
* utils/ccpaux.c: Likewise.
* utils/comment5.c: Likewise.
* utils/deema.c: Likewise.
* utils/gctrigger.c: Likewise.
* utils/txt2c.c: Likewise.
* utils/varbrace.c: Likewise.
build: Rename CLFLAGS to LDFLAGS, for consistency with Autoconf.
* makemake.in: Use Z_LDFLAGS instead of CLFLAGS.
* built.d (built_flags): Update.
build: Separate the user-provided CFLAGS from our added CFLAGS.
* makemake.in: New variables A_CFLAGS, Z_CFLAGS, A_XCFLAGS, Z_XCFLAGS.
build: Separate the user-provided CPPFLAGS from our added CPPFLAGS.
* makemake.in: New variables A_CPPFLAGS, Z_CPPFLAGS, A_XCPPFLAGS,
Z_XCPPFLAGS.
Align clisp module system better with GNU standards.
* doc/impext.xml: Mention LDFLAGS instead of CLFLAGS.
* makemake.in: In makevars and when invoking a 'clisp-module' rule, set
LDFLAGS instead of CLFLAGS. Rename MODULE_CLFLAGS_VAR to
MODULE_LDFLAGS_VAR.
* clisp-link.in: Use LDFLAGS instead of CLFLAGS.
* modules/queens/Makefile: Set LDFLAGS instead of CLFLAGS.
* modules/matlab/link.sh: Set LDFLAGS instead of CLFLAGS.
Replace FSF snail-mail addresses with URLs.
* spvw.d (print_license): Update GPL license notice.
build: Modernize 'update-gnulib' target.
* Makefile.devel (GNULIB_GIT): Use secured URL.
(GNULIB_CVS_ROOT, GNULIB_CVS_REPOSITORY): Remove variables.
(update-gnulib): Don't use cvs any more.
Fix DEPENDENCIES.
* DEPENDENCIES: Remove mention of unsupported option
--with-ncurses-prefix.
- Port patches
* clisp-2.49-configure.dif
* clisp-2.49-personality.patch
* clisp-db6.diff
* clisp-gcc14.patch
* clisp-link.dif
-------------------------------------------------------------------
Thu Mar 20 21:25:55 UTC 2025 - Andreas Stieger <andreas.stieger@gmx.de>

View File

@@ -17,11 +17,11 @@
%bcond_with debug
%global commit f5acef38
%global vdate 20240704
%global commit f6622093
%global vdate 20241103
Name: clisp
Version: 2.49.93
Version: 2.49.95
Release: 0
Summary: A Common Lisp Interpreter
# Included gllib is GPL-3.0-or-later