commit:     7631303ac7e17863314394f566559706db415e4c
Author:     Cyprien Nicolas (fulax) <gentoo <AT> fulax <DOT> fr>
AuthorDate: Sat Jun 15 10:46:59 2019 +0000
Commit:     Cyprien Nicolas <c.nicolas+gentoo <AT> gmail <DOT> com>
CommitDate: Sat Jun 15 10:46:59 2019 +0000
URL:        https://gitweb.gentoo.org/proj/lisp.git/commit/?id=7631303a

dev-lisp/clisp: Drop 2.49.92 (stable in tree); Add -9999

Package-Manager: Portage-2.3.66, Repoman-2.3.11

 .../{clisp-2.49.92.ebuild => clisp-9999.ebuild}    |  10 +-
 .../clisp-2.49.92-after_glibc_cfree_bdb.patch      | 185 ---------------------
 .../files/clisp-9999-after_glibc_cfree_bdb.patch   |  18 ++
 3 files changed, 24 insertions(+), 189 deletions(-)

diff --git a/dev-lisp/clisp/clisp-2.49.92.ebuild 
b/dev-lisp/clisp/clisp-9999.ebuild
similarity index 94%
rename from dev-lisp/clisp/clisp-2.49.92.ebuild
rename to dev-lisp/clisp/clisp-9999.ebuild
index 83c982ee..3904c794 100644
--- a/dev-lisp/clisp/clisp-2.49.92.ebuild
+++ b/dev-lisp/clisp/clisp-9999.ebuild
@@ -1,17 +1,19 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
 
 inherit eutils flag-o-matic multilib toolchain-funcs xdg-utils
+inherit git-r3
 
 DESCRIPTION="A portable, bytecode-compiled implementation of Common Lisp"
-HOMEPAGE="http://clisp.sourceforge.net/";
-SRC_URI="mirror://gentoo/${P}.tar.bz2"
+HOMEPAGE="http://clisp.sourceforge.net/ https://gitlab.com/gnu-clisp/clisp";
+#SRC_URI="mirror://gentoo/${P}.tar.bz2"
+EGIT_REPO_URI="https://gitlab.com/gnu-clisp/clisp.git";
 
 LICENSE="GPL-2"
 SLOT="2/8"
-KEYWORDS="~amd64 ~ia64 ~ppc ~sparc ~x86"
+KEYWORDS=""
 IUSE="hyperspec X berkdb dbus fastcgi gdbm gtk +pcre postgres +readline svm 
-threads +unicode +zlib"
 # "jit" disabled ATM
 

diff --git a/dev-lisp/clisp/files/clisp-2.49.92-after_glibc_cfree_bdb.patch 
b/dev-lisp/clisp/files/clisp-2.49.92-after_glibc_cfree_bdb.patch
deleted file mode 100644
index ae83bbb8..00000000
--- a/dev-lisp/clisp/files/clisp-2.49.92-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)

diff --git a/dev-lisp/clisp/files/clisp-9999-after_glibc_cfree_bdb.patch 
b/dev-lisp/clisp/files/clisp-9999-after_glibc_cfree_bdb.patch
new file mode 100644
index 00000000..84645d71
--- /dev/null
+++ b/dev-lisp/clisp/files/clisp-9999-after_glibc_cfree_bdb.patch
@@ -0,0 +1,18 @@
+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));

Reply via email to