diff options
Diffstat (limited to 'dev-lisp')
-rw-r--r-- | dev-lisp/clisp/Manifest | 2 | ||||
-rw-r--r-- | dev-lisp/clisp/clisp-2.49-r9.ebuild | 144 | ||||
-rw-r--r-- | dev-lisp/clisp/clisp-2.49.90.ebuild | 140 | ||||
-rw-r--r-- | dev-lisp/clisp/files/clisp-2.49-bits_ipctypes_to_sys_ipc.patch | 21 | ||||
-rw-r--r-- | dev-lisp/clisp/files/clisp-2.49-get_hostname.patch | 56 | ||||
-rw-r--r-- | dev-lisp/clisp/files/clisp-2.49-tinfo.patch | 15 | ||||
-rw-r--r-- | dev-lisp/clisp/files/clisp-2.49.90-after_glibc_cfree_bdb.patch | 185 |
7 files changed, 0 insertions, 563 deletions
diff --git a/dev-lisp/clisp/Manifest b/dev-lisp/clisp/Manifest index 84d215a48e08..5aba3d53d0f0 100644 --- a/dev-lisp/clisp/Manifest +++ b/dev-lisp/clisp/Manifest @@ -1,3 +1 @@ -DIST clisp-2.49.90.tar.bz2 8921458 BLAKE2B 3be7cfe41038f42d8844d500877fa5c20e5c21dc0e162aa0018b297e4dfcd5374ef608793c9d809852e1f9885a155bb5b25fef8efe66016dd0ee400007386b70 SHA512 1fa7205e38883dcc863160b5418ddaaa2c45ee2d2f936de4067d1ea4a1e5043bf1235361bbbfc366afd6d8f1144497ccdccf1767ecf327f7a672b18742ceb651 DIST clisp-2.49.92.tar.bz2 9055207 BLAKE2B 6cf331eb9f99f62579e35469e2d01cae066083592ccc71cf483b70b4d1be349cdee9d403e0a7ed1ad1c8c5d805c1dab51c1a5031d77469ff8c4dc52eb58913df SHA512 cc9412a7b3f21c85b040bf5e660380fafb3c2374765a1c00272feb3f7838f2161e27a5d6295cef9976f0c4522f10796cf5ee5447716090d1cc69ecfe598ef306 -DIST clisp-2.49.tar.bz2 8091011 BLAKE2B e034c581b8100837b34d0adf1ef45bd667272d062945875175958178b4ef5b11e899dfb76505eb8cb51fca6101c11a9f21fb2cc9a78a3c0f82b06166211434f7 SHA512 eef66fc85199a2c283b616db61bf67ff103eeb0f19fa907da48994dc790b6f5f8d0c74fb3bd723c6b827c0ff3cfd89fa6ba67934fc669ed5d5249044b5140d81 diff --git a/dev-lisp/clisp/clisp-2.49-r9.ebuild b/dev-lisp/clisp/clisp-2.49-r9.ebuild deleted file mode 100644 index b1cf33182eed..000000000000 --- a/dev-lisp/clisp/clisp-2.49-r9.ebuild +++ /dev/null @@ -1,144 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 -inherit eutils flag-o-matic multilib toolchain-funcs xdg-utils - -DESCRIPTION="A portable, bytecode-compiled implementation of Common Lisp" -HOMEPAGE="https://clisp.sourceforge.io/" -SRC_URI="mirror://sourceforge/clisp/${P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="2/${PV}" -KEYWORDS="amd64 ~ppc ~sparc x86" -IUSE="hyperspec X berkdb dbus fastcgi gdbm gtk +pcre postgres +readline svm -threads +unicode +zlib" -# "jit" disabled ATM - -RDEPEND=">=dev-lisp/asdf-2.33-r3 - virtual/libiconv - >=dev-libs/libsigsegv-2.4 - >=dev-libs/ffcall-1.10 - dbus? ( sys-apps/dbus ) - fastcgi? ( dev-libs/fcgi ) - gdbm? ( sys-libs/gdbm ) - gtk? ( >=x11-libs/gtk+-2.10 >=gnome-base/libglade-2.6 ) - postgres? ( >=dev-db/postgresql-8.0 ) - readline? ( >=sys-libs/readline-5.0 <sys-libs/readline-7.0 ) - pcre? ( dev-libs/libpcre ) - svm? ( sci-libs/libsvm ) - zlib? ( sys-libs/zlib ) - X? ( x11-libs/libXpm ) - hyperspec? ( dev-lisp/hyperspec ) - berkdb? ( sys-libs/db:4.8 )" -# jit? ( >=dev-libs/lightning-1.2 ) - -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto x11-misc/imake )" - -enable_modules() { - [[ $# = 0 ]] && die "${FUNCNAME[0]} must receive at least one argument" - for m in "$@" ; do - einfo "enabling module $m" - myconf+=" --with-module=${m}" - done -} - -BUILDDIR="builddir" - -# modules not enabled: -# * berkdb: must figure out a way to make the configure script pick up the -# currect version of the library and headers -# * dirkey: fails to compile, requiring windows.h, possibly wrong #ifdefs -# * matlab, netica: not in portage -# * oracle: can't install oracle-instantclient - -src_prepare() { - # More than -O1 breaks alpha/ia64 - if use alpha || use ia64; then - sed -i -e 's/-O2//g' src/makemake.in || die - fi - epatch "${FILESDIR}"/${P}-bits_ipctypes_to_sys_ipc.patch - epatch "${FILESDIR}"/${P}-get_hostname.patch - epatch "${FILESDIR}"/${P}-tinfo.patch - - xdg_environment_reset -} - -src_configure() { - # Bug 618170. If anyone has a better idea... - append-flags -fno-pie - - # We need this to build on alpha/ia64 - if use alpha || use ia64; then - replace-flags -O? -O1 - append-flags '-D NO_MULTIMAP_SHM -D NO_MULTIMAP_FILE -D NO_SINGLEMAP -D NO_TRIVIALMAP' - fi - - # QA issue with lisp.run - append-flags -Wa,--noexecstack - - # built-in features - local myconf="--with-ffcall --without-dynamic-modules" -# There's a problem with jit_allocai function -# if use jit; then -# myconf+=" --with-jitc=lightning" -# fi - if use threads; then - myconf+=" --with-threads=POSIX_THREADS" - fi - - # default modules - enable_modules wildcard rawsock - # optional modules - use elibc_glibc && enable_modules bindings/glibc - use X && enable_modules clx/new-clx - if use postgres; then - enable_modules postgresql - append-cppflags -I$(pg_config --includedir) - fi - if use berkdb; then - enable_modules berkeley-db - append-cppflags -I/usr/include/db4.8 - fi - use dbus && enable_modules dbus - use fastcgi && enable_modules fastcgi - use gdbm && enable_modules gdbm - use gtk && enable_modules gtk2 - use pcre && enable_modules pcre - use svm && enable_modules libsvm - use zlib && enable_modules zlib - - if use hyperspec; then - CLHSROOT="file:///usr/share/doc/hyperspec/HyperSpec/" - else - CLHSROOT="http://www.lispworks.com/reference/HyperSpec/" - fi - - # configure chokes on --sysconfdir option - local configure="./configure --prefix=/usr --libdir=/usr/$(get_libdir) \ - $(use_with readline) $(use_with unicode) \ - ${myconf} --hyperspec=${CLHSROOT} ${BUILDDIR}" - einfo "${configure}" - ${configure} || die "./configure failed" - - IMPNOTES="file://${ROOT%/}/usr/share/doc/${PN}-${PVR}/html/impnotes.html" - sed -i "s,http://clisp.cons.org/impnotes/,${IMPNOTES},g" \ - "${BUILDDIR}"/config.lisp || die "Cannot fix link to implementation notes" -} - -src_compile() { - export VARTEXFONTS="${T}"/fonts - cd "${BUILDDIR}" - # parallel build fails - emake -j1 -} - -src_install() { - pushd "${BUILDDIR}" - make DESTDIR="${D}" prefix=/usr install-bin || die "Installation failed" - doman clisp.1 - dodoc ../SUMMARY README* ../src/NEWS ../unix/MAGIC.add ../ANNOUNCE - popd - dohtml doc/impnotes.{css,html} doc/regexp.html doc/clisp.png - dodoc doc/{CLOS-guide,LISP-tutorial}.txt -} diff --git a/dev-lisp/clisp/clisp-2.49.90.ebuild b/dev-lisp/clisp/clisp-2.49.90.ebuild deleted file mode 100644 index 660b5a4acdd1..000000000000 --- a/dev-lisp/clisp/clisp-2.49.90.ebuild +++ /dev/null @@ -1,140 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit eutils flag-o-matic multilib toolchain-funcs xdg-utils - -DESCRIPTION="A portable, bytecode-compiled implementation of Common Lisp" -HOMEPAGE="https://clisp.sourceforge.io/" -SRC_URI="https://haible.de/bruno/gnu/${P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="2/8" -KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~sparc ~x86" -IUSE="hyperspec X berkdb dbus fastcgi gdbm gtk +pcre postgres +readline svm -threads +unicode +zlib" -# "jit" disabled ATM - -RDEPEND=">=dev-lisp/asdf-2.33-r3 - virtual/libiconv - >=dev-libs/libsigsegv-2.10 - >=dev-libs/ffcall-1.10 - dbus? ( sys-apps/dbus ) - fastcgi? ( dev-libs/fcgi ) - gdbm? ( sys-libs/gdbm ) - gtk? ( >=x11-libs/gtk+-2.10:2 >=gnome-base/libglade-2.6 ) - postgres? ( >=dev-db/postgresql-8.0:* ) - readline? ( >=sys-libs/readline-7.0:0= ) - pcre? ( dev-libs/libpcre:3 ) - svm? ( sci-libs/libsvm ) - zlib? ( sys-libs/zlib ) - X? ( x11-libs/libXpm ) - hyperspec? ( dev-lisp/hyperspec ) - berkdb? ( sys-libs/db:4.8 )" - -DEPEND="${RDEPEND} - X? ( x11-base/xorg-proto x11-misc/imake )" - -enable_modules() { - [[ $# = 0 ]] && die "${FUNCNAME[0]} must receive at least one argument" - for m in "$@" ; do - einfo "enabling module $m" - myconf+=" --with-module=${m}" - done -} - -BUILDDIR="builddir" - -# modules not enabled: -# * berkdb: must figure out a way to make the configure script pick up the -# currect version of the library and headers -# * dirkey: fails to compile, requiring windows.h, possibly wrong #ifdefs -# * matlab, netica: not in portage -# * oracle: can't install oracle-instantclient - -src_prepare() { - # More than -O1 breaks alpha/ia64 - if use alpha || use ia64; then - sed -i -e 's/-O2//g' src/makemake.in || die - fi - eapply "${FILESDIR}"/"${P}"-after_glibc_cfree_bdb.patch - eapply_user - - xdg_environment_reset -} - -src_configure() { - # We need this to build on alpha/ia64 - if use alpha || use ia64; then - replace-flags -O? -O1 - fi - - if use x86; then - append-flags -falign-functions=4 - fi - - # built-in features - local myconf="--with-ffcall --without-dynamic-modules" -# There's a problem with jit_allocai function -# if use jit; then -# myconf+=" --with-jitc=lightning" -# fi - if use threads; then - myconf+=" --with-threads=POSIX_THREADS" - fi - - # default modules - enable_modules rawsock - # optional modules - use elibc_glibc && enable_modules bindings/glibc - use X && enable_modules clx/new-clx - if use postgres; then - enable_modules postgresql - append-cppflags -I$(pg_config --includedir) - fi - if use berkdb; then - enable_modules berkeley-db - append-cppflags -I"${EPREFIX}"/usr/include/db4.8 - fi - use dbus && enable_modules dbus - use fastcgi && enable_modules fastcgi - use gdbm && enable_modules gdbm - use gtk && enable_modules gtk2 - use pcre && enable_modules pcre - use svm && enable_modules libsvm - use zlib && enable_modules zlib - - if use hyperspec; then - CLHSROOT="file:///${EPREFIX}/usr/share/doc/hyperspec/HyperSpec/" - else - CLHSROOT="http://www.lispworks.com/reference/HyperSpec/" - fi - - # configure chokes on --sysconfdir option - local configure="./configure --prefix=${EPREFIX}/usr --enable-portability \ - --libdir=${EPREFIX}/usr/$(get_libdir) $(use_with readline) $(use_with unicode) \ - ${myconf} --hyperspec=${CLHSROOT} ${BUILDDIR}" - einfo "${configure}" - ${configure} || die "./configure failed" - - IMPNOTES="file://${ROOT%/}/usr/share/doc/${PN}-${PVR}/html/impnotes.html" - sed -i "s,http://clisp.cons.org/impnotes/,${IMPNOTES},g" \ - "${BUILDDIR}"/config.lisp || die "Cannot fix link to implementation notes" -} - -src_compile() { - export VARTEXFONTS="${T}"/fonts - cd "${BUILDDIR}" || die - # parallel build fails - emake -j1 -} - -src_install() { - pushd "${BUILDDIR}" - make DESTDIR="${D}" prefix="${EPREFIX}"/usr install-bin || die "Installation failed" - doman clisp.1 - dodoc ../SUMMARY README* ../src/NEWS ../unix/MAGIC.add ../ANNOUNCE - popd - dohtml doc/impnotes.{css,html} doc/regexp.html doc/clisp.png - dodoc doc/{CLOS-guide,LISP-tutorial}.txt -} diff --git a/dev-lisp/clisp/files/clisp-2.49-bits_ipctypes_to_sys_ipc.patch b/dev-lisp/clisp/files/clisp-2.49-bits_ipctypes_to_sys_ipc.patch deleted file mode 100644 index 8037157c9512..000000000000 --- a/dev-lisp/clisp/files/clisp-2.49-bits_ipctypes_to_sys_ipc.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -ru a/modules/bindings/glibc/linux.lisp b/modules/bindings/glibc/linux.lisp ---- a/modules/bindings/glibc/linux.lisp 2008-10-08 19:36:19.000000000 +0300 -+++ b/modules/bindings/glibc/linux.lisp 2013-04-08 00:05:06.028305248 +0300 -@@ -67,7 +67,7 @@ - (def-c-type __daddr_t) ; int - (def-c-type __caddr_t) ; c-pointer - (def-c-type __time_t) ; long --(def-c-type __swblk_t) ; long -+;(def-c-type __swblk_t) ; long - - (def-c-type __fd_mask ulong) - (eval-when (load compile eval) -@@ -86,7 +86,7 @@ - - (def-c-type __key_t) ; int - --(c-lines "#include <bits/ipctypes.h>~%") -+(c-lines "#include <sys/ipc.h>~%") - (def-c-type __ipc_pid_t) ; ushort - - ; --------------------------- <sys/types.h> ----------------------------------- diff --git a/dev-lisp/clisp/files/clisp-2.49-get_hostname.patch b/dev-lisp/clisp/files/clisp-2.49-get_hostname.patch deleted file mode 100644 index 5db3a71efbc3..000000000000 --- a/dev-lisp/clisp/files/clisp-2.49-get_hostname.patch +++ /dev/null @@ -1,56 +0,0 @@ -diff -r -U1 clisp-2.49.orig/src/socket.d clisp-2.49/src/socket.d ---- clisp-2.49.orig/src/socket.d 2009-10-08 21:45:13.000000000 +0700 -+++ clisp-2.49/src/socket.d 2013-04-20 16:24:11.133895050 +0700 -@@ -59,5 +59,5 @@ - Fetches the machine's host name. -- get_hostname(host =); -- The name is allocated on the stack, with dynamic extent. -- < const char* host: The host name. -+ get_hostname(hostname); -+ where hostname is an array of MAXHOTNAMELEN+1 characters. -+ < const char host[]: The host name. - (Note: In some cases we could get away with less system calls by simply -@@ -69,10 +69,8 @@ - /* present on all supported unix systems and on woe32 */ -- #define get_hostname(host_assignment) \ -- do { var char hostname[MAXHOSTNAMELEN+1]; \ -- begin_system_call(); \ -- if ( gethostname(&hostname[0],MAXHOSTNAMELEN) <0) { SOCK_error(); } \ -- end_system_call(); \ -- hostname[MAXHOSTNAMELEN] = '\0'; \ -- host_assignment &hostname[0]; \ -- } while(0) -+static void get_hostname (char *hostname) { -+ begin_system_call(); -+ if (gethostname(hostname,MAXHOSTNAMELEN) < 0) { ANSIC_error(); } -+ end_system_call(); -+ hostname[MAXHOSTNAMELEN] = '\0'; -+} - #else -@@ -209,4 +207,4 @@ - (apply #'string-concat hostname " [" (inet-ntop address) "]"))) */ -- var const char* host; -- get_hostname(host =); -+ var char host[MAXHOSTNAMELEN+1]; -+ get_hostname(host); - result = asciz_to_string(host,O(misc_encoding)); /* hostname as result */ -@@ -391,4 +389,4 @@ - if (eq(arg,S(Kdefault))) { -- var char* host; -- get_hostname(host =); -+ var char host[MAXHOSTNAMELEN+1]; -+ get_hostname(host); - begin_system_call(); -@@ -726,3 +724,4 @@ - if (host[0] == '\0') { -- get_hostname(host =); -+ var char host[MAXHOSTNAMELEN+1]; -+ get_hostname(host); - fd = with_host_port(host,port,&connect_to_x_via_ip,NULL); -@@ -800,4 +799,4 @@ - if (resolve_p) { /* Fill in hd->truename. */ -- var const char* host; -- get_hostname(host =); /* was: host = "localhost"; */ -+ var char host[MAXHOSTNAMELEN+1]; -+ get_hostname(host); - ASSERT(strlen(host) <= MAXHOSTNAMELEN); diff --git a/dev-lisp/clisp/files/clisp-2.49-tinfo.patch b/dev-lisp/clisp/files/clisp-2.49-tinfo.patch deleted file mode 100644 index 72f40d585b5b..000000000000 --- a/dev-lisp/clisp/files/clisp-2.49-tinfo.patch +++ /dev/null @@ -1,15 +0,0 @@ -clisp does not need a full blown ncurses, but it does require a termcap or tinfo -I would have changed this in src/m4/termcap.m4 but configure.in fails terribly - JeR - - ---- a/src/configure -+++ b/src/configure -@@ -28613,7 +28613,7 @@ - return 0; - } - _ACEOF --for ac_lib in '' ncurses termcap; do -+for ac_lib in '' tinfo ncurses termcap; do - if test -z "$ac_lib"; then - ac_res="none required" - else diff --git a/dev-lisp/clisp/files/clisp-2.49.90-after_glibc_cfree_bdb.patch b/dev-lisp/clisp/files/clisp-2.49.90-after_glibc_cfree_bdb.patch deleted file mode 100644 index ae83bbb8770d..000000000000 --- a/dev-lisp/clisp/files/clisp-2.49.90-after_glibc_cfree_bdb.patch +++ /dev/null @@ -1,185 +0,0 @@ -diff -r -U3 clisp-2.49.90.orig/modules/berkeley-db/bdb.c clisp-2.49.90/modules/berkeley-db/bdb.c ---- clisp-2.49.90.orig/modules/berkeley-db/bdb.c 2018-01-27 12:03:01.000000000 +0100 -+++ clisp-2.49.90/modules/berkeley-db/bdb.c 2018-02-12 20:37:24.203803219 +0100 -@@ -2216,7 +2216,13 @@ - c_data.compact_timeout = timeout; - c_data.compact_pages = pages; - SYSCALL(db->compact,(db,txn,pstart,pstop,&c_data,flags,&end)); -- pushSTACK(uint32_to_I(c_data.compact_empty_buckets)); -+ /* ==== -+ * compact_empty_buckets is in bdb-5.3 as part of output stats -+ * however this version use bdb-4.8 which does not have it -+ * ==== -+ * -+ * pushSTACK(uint32_to_I(c_data.compact_empty_buckets)); -+ * */ - pushSTACK(uint32_to_I(c_data.compact_pages_free)); - pushSTACK(uint32_to_I(c_data.compact_pages_examine)); - pushSTACK(uint32_to_I(c_data.compact_levels)); -diff -r -U3 clisp-2.49.90.orig/modules/bindings/glibc/linux.lisp clisp-2.49.90/modules/bindings/glibc/linux.lisp ---- clisp-2.49.90.orig/modules/bindings/glibc/linux.lisp 2018-01-10 00:32:25.000000000 +0100 -+++ clisp-2.49.90/modules/bindings/glibc/linux.lisp 2018-02-12 20:48:22.467775536 +0100 -@@ -1,7 +1,7 @@ - ;; Foreign functions provided by the Linux C library version 6, - ;; i.e. the GNU C library version 2.0.7. - ;; Bruno Haible 10.4.1998, 19.4.1998 --;; Sam Steingold 2002-2008, 2011 -+;; Sam Steingold 2002-2008, 2011, 2013, 2016-2017 - - ;; NB: quite a few functions here have more portable counterparts in POSIX - -@@ -686,9 +686,8 @@ - (def-call-out system? (:arguments (null c-string)) - (:return-type boolean) (:name "system")) - --; You can uncomment this if your compiler sets __USE_GNU --; (def-call-out canonicalize_file_name (:arguments (name c-string)) --; (:return-type c-string :malloc-free)) -+(def-call-out canonicalize_file_name (:arguments (name c-string)) -+ (:return-type c-string :malloc-free)) - - (def-call-out realpath - (:arguments (name c-string) -@@ -1040,9 +1039,8 @@ - (def-call-out access (:arguments (name c-string) (type int)) - (:return-type int)) - --; You can uncomment this if your compiler sets __USE_GNU --; (def-call-out euidaccess (:arguments (name c-string) (type int)) --; (:return-type int)) -+(def-call-out euidaccess (:arguments (name c-string) (type int)) -+ (:return-type int)) - - (defconstant SEEK_SET 0) - (defconstant SEEK_CUR 1) -@@ -1093,9 +1091,8 @@ - ;(def-call-out getcwd (:arguments (buf c-string :out) (size size_t)) ; ?? - ; (:return-type c-string)) - --; You can uncomment this if your compiler sets __USE_GNU --; (def-call-out get_current_dir_name (:arguments) --; (:return-type c-string :malloc-free)) -+(def-call-out get_current_dir_name (:arguments) -+ (:return-type c-string :malloc-free)) - - ;(def-call-out getwd (:arguments (buf c-string :out)) ; ?? - ; (:return-type c-string)) -@@ -1323,8 +1320,7 @@ - ; (:arguments (size int) (list (c-ptr (c-array gid_t ??)) :out)) ; ?? - ; (:return-type int)) - --; You can uncomment this if your compiler sets __USE_GNU --; (def-call-out group_member (:arguments (gid gid_t)) (:return-type boolean)) -+(def-call-out group_member (:arguments (gid gid_t)) (:return-type boolean)) - (def-call-out setuid (:arguments (uid uid_t)) (:return-type int)) - (def-call-out setreuid (:arguments (ruid uid_t) (euid uid_t)) - (:return-type int)) -@@ -1821,8 +1817,7 @@ - (:return-type c-string :malloc-free)) - (def-call-out ungetc (:arguments (c int) (fp FILE)) - (:return-type int)) --; You can uncomment this if your compiler sets __USE_GNU --; (def-call-out fcloseall (:arguments) (:return-type int)) -+(def-call-out fcloseall (:arguments) (:return-type int)) - (def-call-out fdopen (:arguments (fildes int) (mode c-string)) - (:return-type c-pointer)) - (def-call-out fileno (:arguments (fp FILE)) (:return-type int)) -@@ -1900,11 +1895,11 @@ - (:return-type (c-ptr-null dirent))) - (def-call-out readdir64 (:arguments (dirp c-pointer)) - (:return-type (c-ptr-null dirent64))) --(def-call-out readdir_r -+(def-call-out readdir_r ; deprecated - (:arguments (dirp c-pointer) (entry (c-ptr dirent) :out :alloca) - (result (c-ptr (c-ptr dirent)) :out :alloca)) ; ?? - (:return-type int)) --(def-call-out readdir64_r -+(def-call-out readdir64_r ; deprecated - (:arguments (dirp c-pointer) (entry (c-ptr dirent64) :out :alloca) - (result (c-ptr (c-ptr dirent64)) :out :alloca)) ; ?? - (:return-type int)) -diff -r -U3 clisp-2.49.90.orig/modules/bindings/glibc/test.tst clisp-2.49.90/modules/bindings/glibc/test.tst ---- clisp-2.49.90.orig/modules/bindings/glibc/test.tst 2018-01-10 00:04:26.000000000 +0100 -+++ clisp-2.49.90/modules/bindings/glibc/test.tst 2018-02-12 20:50:48.225769407 +0100 -@@ -14,6 +14,16 @@ - (= linux:DT_DIR (linux:dirent64-d_type (show (linux:readdir64 *d*)))) T - (linux:closedir *d*) 0 - -+(stringp (show (linux:get-domain-name))) T -+(stringp (show (linux:get-host-name))) T -+ -+;; usually __USE_GNU is defined, so this should work: -+(let* ((d (linux:get_current_dir_name)) -+ (c (linux:canonicalize_file_name (concatenate 'string d "/.")))) -+ (or (string= d c) -+ (list :cur-dir d :canonical c))) -+T -+ - (defparameter *d* (show (linux:opendir "."))) *D* - (linux:dirent-d_name (show (linux:readdir *d*))) "." - (linux:dirent-d_name (show (linux:readdir *d*))) ".." -diff -r -U3 clisp-2.49.90.orig/src/foreign1.lisp clisp-2.49.90/src/foreign1.lisp ---- clisp-2.49.90.orig/src/foreign1.lisp 2018-01-10 00:04:26.000000000 +0100 -+++ clisp-2.49.90/src/foreign1.lisp 2018-02-12 21:03:56.768736245 +0100 -@@ -805,14 +805,17 @@ - c-name (to-c-string c-name) (third variable) (first variable)) - (when *foreign-guard* (format *coutput-stream* "# endif~%")))) - (dolist (function *function-list*) -- (let ((c-name (first function))) -- (when *foreign-guard* -- (format *coutput-stream* "# if defined(HAVE_~A)~%" -- (string-upcase c-name))) -+ (let ((c-name (first function)) -+ (guard (fourth function))) -+ (when guard -+ (format *coutput-stream* "# if ~A~%" -+ (if (eq guard t) -+ (format nil "defined(HAVE_~A)" (string-upcase c-name)) -+ guard))) - (format *coutput-stream* - " register_foreign_function((void*)&~A,~A,~D);~%" - c-name (to-c-string c-name) (svref (second function) 3)) -- (when *foreign-guard* (format *coutput-stream* "# endif~%")))) -+ (when guard (format *coutput-stream* "# endif~%")))) - (maphash (lambda (type fun-vec) - (declare (ignore type)) - (let ((c-name (to-c-name (car fun-vec)))) -@@ -1083,7 +1086,7 @@ - (defmacro DEF-CALL-OUT (&whole whole-form name &rest options) - (setq name (check-symbol name (first whole-form))) - (let* ((alist -- (parse-options options '(:name :arguments :return-type :language -+ (parse-options options '(:name :arguments :return-type :language :guard - :built-in :library :version :documentation) - whole-form)) - (def (gensym "DEF-CALL-OUT-")) -@@ -1095,6 +1098,7 @@ - (version (second (assoc :version alist))) - (c-name (foreign-name name (assoc :name alist))) - (built-in (second (assoc :built-in alist))) -+ (guard (get-assoc :guard alist '*foreign-guard*)) - ;; Maximize sharing in .fas file, reuse options - ;; parse-c-function ignores unknown options, e.g. :name - (ctype `(PARSE-C-FUNCTION ',options ',whole-form))) -@@ -1102,7 +1106,7 @@ - ',c-name ,ctype ',properties ,library ,version NIL))) - (EXT:COMPILER-LET ((,def ,ctype)) - (EVAL-WHEN (COMPILE) -- (UNLESS ,LIBRARY (NOTE-C-FUN ',c-name ,def ',built-in))) -+ (UNLESS ,LIBRARY (NOTE-C-FUN ',c-name ,def ',built-in ,guard))) - (SYSTEM::EVAL-WHEN-COMPILE - (SYSTEM::C-DEFUN ',name (C-TYPE-TO-SIGNATURE ,ctype)))) - (WHEN ,def ; found library function -@@ -1110,10 +1114,10 @@ - (SYSTEM::%PUTD ',name ,def)) - ',name))) - --(defun note-c-fun (c-name ctype built-in) ; not ABI, compile-time only -+(defun note-c-fun (c-name ctype built-in guard) ; not ABI, compile-time only - (when (system::prepare-coutput-file) - (prepare-module) -- (push (list c-name ctype built-in) -+ (push (list c-name ctype built-in guard) - *function-list*))) - - (defun count-inarguments (arg-vector) |