Compare commits
30 Commits
master
...
f37-riscv6
Author | SHA1 | Date |
---|---|---|
David Abdurachmanov | 6aeeb20e70 | |
Jerry James | cfdd27206e | |
Jerry James | 5ed3b44cd5 | |
Jerry James | bc7fe11f4c | |
Jerry James | fee89f7955 | |
Jerry James | 4be1418d14 | |
Fedora Release Engineering | bf061dddcc | |
Jerry James | 7d5ddf7eb7 | |
Jerry James | ac57db4226 | |
Jerry James | 1bfa025e15 | |
Jerry James | 8e4e9cd80c | |
Fedora Release Engineering | 9ccff9cb0b | |
Fedora Release Engineering | 8469c0bd9b | |
Fedora Release Engineering | 0818325a5a | |
Jerry James | 1f88aa4a0e | |
Jerry James | 7cecc3c028 | |
Jerry James | 94e796d993 | |
Stewart Smith | 357878948a | |
Florian Weimer | 5224d940d5 | |
Jerry James | 9c5434c0ab | |
Pavel Raiskup | 5d3d4499e5 | |
Fedora Release Engineering | 5731df002e | |
Jerry James | cf0fa58cb2 | |
Jerry James | bc6259f867 | |
Fedora Release Engineering | 6163f752d5 | |
Jeff Law | 26951c4fcb | |
Fedora Release Engineering | 46374e59e3 | |
Fedora Release Engineering | e63db6f033 | |
Jerry James | 65cf1984f0 | |
Jerry James | 31fe7825e0 |
|
@ -1 +1,2 @@
|
|||
/clisp-*.tar.?z
|
||||
/clisp-*.tar.bz2
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
# clisp
|
||||
|
||||
[ANSI Common Lisp](http://www.lispworks.com/documentation/HyperSpec/Front/) is
|
||||
a high-level, general-purpose programming language.
|
||||
[GNU CLISP](https://clisp.sourceforge.io/) is a Common Lisp implementation by
|
||||
Bruno Haible of Karlsruhe University and Michael Stoll of Munich University,
|
||||
both in Germany. It mostly supports the Lisp described in the ANSI Common
|
||||
Lisp standard. It runs on most Unix workstations (GNU/Linux, FreeBSD, NetBSD,
|
||||
OpenBSD, Solaris, Tru64, HP-UX, BeOS, NeXTstep, IRIX, AIX and others) and on
|
||||
other systems (Windows NT/2000/XP, Windows 95/98/ME) and needs only 4 MiB of
|
||||
RAM.
|
||||
|
||||
It is Free Software and may be distributed under the terms of GNU GPL, while
|
||||
it is possible to distribute commercial proprietary applications compiled with
|
||||
GNU CLISP.
|
||||
|
||||
The user interface comes in English, German, French, Spanish, Dutch, Russian
|
||||
and Danish, and can be changed at run time. GNU CLISP includes an
|
||||
interpreter, a compiler, a debugger, CLOS, MOP, a foreign language interface,
|
||||
sockets, i18n, fast bignums and more. An X11 interface is available through
|
||||
CLX, Garnet, CLUE/CLIO. GNU CLISP runs Maxima, ACL2 and many other Common
|
||||
Lisp packages.
|
|
@ -0,0 +1,136 @@
|
|||
;;; clhs.el --- Access the Common Lisp HyperSpec (CLHS) -*- lexical-binding: t -*-
|
||||
;; Version: 2
|
||||
;; Homepage: https://gitlab.com/sam-s/clhs
|
||||
;; Maintainer: Sam Steingold <sds@gnu.org>
|
||||
|
||||
;;; This works with both
|
||||
;;; * the "long file name" version released by Harlequin and available
|
||||
;;; at the MIT web site as
|
||||
;;; http://www.ai.mit.edu/projects/iiip/doc/CommonLISP/HyperSpec/FrontMatter/
|
||||
;;; * the "8.3 file name" version released later by Xanalys/LispWorks and
|
||||
;;; available at http://www.lispworks.com/documentation/common-lisp.html
|
||||
;;; This is accomplished by not hard-wiring the symbol->file table
|
||||
;;; but reading the Data/<map> file instead.
|
||||
|
||||
;;; Copyright (C) 2002-2008, 2017, 2019, 2021 Sam Steingold <sds@gnu.org>
|
||||
;;; Keywords: lisp, common lisp, emacs, ANSI CL, hyperspec
|
||||
;;; released under the GNU GPL <https://www.gnu.org/copyleft/gpl.html>
|
||||
;;; as a part of GNU CLISP <https://www.clisp.org>
|
||||
|
||||
;;; Usage:
|
||||
|
||||
;; (autoload 'clhs-doc "clhs" "Get doc on ANSI CL" t)
|
||||
;; (define-key help-map "\C-l" 'clhs-doc)
|
||||
;; (custom-set-variables
|
||||
;; '(tags-apropos-additional-actions '(("Common Lisp" clhs-doc clhs-symbols))))
|
||||
|
||||
;;; Commentary:
|
||||
|
||||
;; Kent Pitman and the Harlequin Group (later Xanalys) have made the
|
||||
;; text of the "American National Standard for Information Technology --
|
||||
;; Programming Language -- Common Lisp", ANSI X3.226-1994 available on
|
||||
;; the WWW, in the form of the Common Lisp HyperSpec. This package
|
||||
;; makes it convenient to peruse this documentation from within Emacs.
|
||||
|
||||
;; This is inspired by the Erik Naggum's version of 1997.
|
||||
|
||||
;;; Code:
|
||||
|
||||
(require 'browse-url)
|
||||
(require 'thingatpt)
|
||||
(require 'url)
|
||||
|
||||
(defvar clhs-symbols nil)
|
||||
|
||||
(defcustom clhs-root "http://clhs.lisp.se/"
|
||||
;; "http://www.lispworks.com/documentation/HyperSpec/"
|
||||
;; "http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/html/hyperspec/HyperSpec/"
|
||||
;; "http://www.ai.mit.edu/projects/iiip/doc/CommonLISP/HyperSpec/"
|
||||
"*The root of the Common Lisp HyperSpec URL.
|
||||
If you copy the HyperSpec to your local system, set this variable to
|
||||
something like \"file:/usr/local/doc/HyperSpec/\"."
|
||||
:group 'lisp
|
||||
:set (lambda (s v)
|
||||
(setq clhs-symbols nil)
|
||||
(set-default s v))
|
||||
:type 'string)
|
||||
|
||||
(defvar clhs-history nil
|
||||
"History of symbols looked up in the Common Lisp HyperSpec so far.")
|
||||
|
||||
(defun clhs-table-buffer (&optional root)
|
||||
"Create a buffer containing the CLHS symbol table.
|
||||
Optional argument ROOT specifies the CLHS root location
|
||||
and defaults to `clhs-root'."
|
||||
(unless root (setq root clhs-root))
|
||||
(if (string-match "^file:/" root)
|
||||
(with-current-buffer (get-buffer-create " *clhs-tmp-buf*")
|
||||
(insert-file-contents-literally
|
||||
(let* ((d (concat (substring root 6) "/Data/"))
|
||||
(f (concat d "Map_Sym.txt")))
|
||||
(if (file-exists-p f) f
|
||||
(setq f (concat d "Symbol-Table.text"))
|
||||
(if (file-exists-p f) f
|
||||
(error "No symbol table at %s" root))))
|
||||
nil nil nil t)
|
||||
(goto-char 0)
|
||||
(current-buffer))
|
||||
(let* ((d (concat root "/Data/"))
|
||||
(f (concat d "Map_Sym.txt")))
|
||||
(set-buffer (url-retrieve-synchronously f))
|
||||
(goto-char 0)
|
||||
(unless (looking-at "^HTTP/.*200 *OK$")
|
||||
(kill-buffer (current-buffer))
|
||||
(setq f (concat d "Symbol-Table.text"))
|
||||
(set-buffer (url-retrieve-synchronously f))
|
||||
(goto-char 0)
|
||||
(unless (looking-at "^HTTP/.*200 *OK$")
|
||||
(kill-buffer (current-buffer))
|
||||
(error "No symbol table at %s" root)))
|
||||
;; skip to the first symbol
|
||||
(search-forward "\n\n")
|
||||
(current-buffer))))
|
||||
|
||||
(defun clhs-read-symbols ()
|
||||
"Read variable `clhs-symbols' from the current position in the current buffer."
|
||||
(while (not (eobp))
|
||||
(puthash (buffer-substring-no-properties ; symbol
|
||||
(line-beginning-position) (line-end-position))
|
||||
(progn (forward-line 1) ; file name
|
||||
(buffer-substring-no-properties ; strip "../"
|
||||
(+ 3 (line-beginning-position)) (line-end-position)))
|
||||
clhs-symbols)
|
||||
(forward-line 1)))
|
||||
|
||||
(defun clhs-symbols ()
|
||||
"Get variable `clhs-symbols' from `clhs-root'."
|
||||
(if (and clhs-symbols (not (= 0 (hash-table-count clhs-symbols))))
|
||||
clhs-symbols
|
||||
(with-current-buffer (clhs-table-buffer)
|
||||
(unless clhs-symbols
|
||||
(setq clhs-symbols (make-hash-table :test 'equal :size 1031)))
|
||||
(clhs-read-symbols)
|
||||
(kill-buffer (current-buffer))
|
||||
clhs-symbols)))
|
||||
|
||||
;;;###autoload
|
||||
(defun clhs-doc (symbol-name &optional kill)
|
||||
"Browse the Common Lisp HyperSpec documentation for SYMBOL-NAME.
|
||||
Finds the HyperSpec at `clhs-root'.
|
||||
With prefix arg KILL, save the URL in the `kill-ring' instead."
|
||||
(interactive (list (let ((sym (thing-at-point 'symbol t))
|
||||
(completion-ignore-case t))
|
||||
(completing-read
|
||||
"Look-up symbol in the Common Lisp HyperSpec: "
|
||||
(clhs-symbols) nil t sym 'clhs-history))
|
||||
current-prefix-arg))
|
||||
(unless (= ?/ (aref clhs-root (1- (length clhs-root))))
|
||||
(setq clhs-root (concat clhs-root "/")))
|
||||
(let ((url (concat clhs-root (gethash (upcase symbol-name) (clhs-symbols)))))
|
||||
(if kill
|
||||
(kill-new url)
|
||||
(browse-url url))))
|
||||
|
||||
(provide 'clhs)
|
||||
|
||||
;;; clhs.el ends here
|
|
@ -1,5 +1,16 @@
|
|||
--- modules/berkeley-db/configure.in.orig 2018-04-23 07:44:21.000000000 -0600
|
||||
+++ modules/berkeley-db/configure.in 2018-06-21 20:30:56.502368686 -0600
|
||||
--- modules/berkeley-db/configure.orig 2021-06-28 14:32:42.000000000 -0600
|
||||
+++ modules/berkeley-db/configure 2021-07-16 15:35:19.789568797 -0600
|
||||
@@ -6376,7 +6376,7 @@ then :
|
||||
else $as_nop
|
||||
|
||||
CFLAGS_save="$CFLAGS"
|
||||
-CFLAGS="$CFLAGS -Werror"
|
||||
+CFLAGS="$CFLAGS -Wno-uninitialized -Werror"
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
#include <db.h>
|
||||
--- modules/berkeley-db/configure.in.orig 2021-06-28 14:32:42.000000000 -0600
|
||||
+++ modules/berkeley-db/configure.in 2021-07-16 15:35:19.786568792 -0600
|
||||
@@ -48,7 +48,7 @@ dnl <http://www.sleepycat.com/docs/ref/u
|
||||
AC_CACHE_CHECK([whether DB_ENV->set_errcall() accepts DBE],
|
||||
ac_cv_dbe_set_errcall_accept_dbe,[
|
||||
|
@ -9,14 +20,3 @@
|
|||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <db.h>
|
||||
void my_callback (const DB_ENV* dbe, const char *errpfx, const char *msg) {}],
|
||||
[[DB_ENV dbe; dbe.set_errcall(&dbe,&my_callback);]])],
|
||||
--- modules/berkeley-db/configure.orig 2018-04-23 07:44:21.000000000 -0600
|
||||
+++ modules/berkeley-db/configure 2018-06-21 20:30:56.504368682 -0600
|
||||
@@ -5814,7 +5814,7 @@ if ${ac_cv_dbe_set_errcall_accept_dbe+:}
|
||||
else
|
||||
|
||||
CFLAGS_save="$CFLAGS"
|
||||
-CFLAGS="$CFLAGS -Werror"
|
||||
+CFLAGS="$CFLAGS -Wno-uninitialized -Werror"
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
#include <db.h>
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
--- modules/syscalls/calls.c.orig 2021-06-28 14:32:42.000000000 -0600
|
||||
+++ modules/syscalls/calls.c 2022-08-04 13:21:10.461997402 -0600
|
||||
@@ -677,7 +677,7 @@ DEFUN(OS:VERSION>=, string1 string2){VAL
|
||||
&& name[name##_bytelen-6]=='X') { \
|
||||
c_template = name; \
|
||||
} else { \
|
||||
- c_template = (char*)alloca(name##_bytelen+6); \
|
||||
+ c_template = (char*)alloca(name##_bytelen+7); \
|
||||
strcpy(c_template,name); \
|
||||
strcat(c_template,"XXXXXX"); \
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
--- src/foreign.d.orig 2021-06-28 14:32:42.000000000 -0600
|
||||
+++ src/foreign.d 2022-02-03 21:52:22.932176743 -0700
|
||||
@@ -2417,7 +2417,7 @@ local void count_walk_post (object fvd,
|
||||
{
|
||||
unused(fvd); unused(obj); unused(walk);
|
||||
}
|
||||
-local maygc void convert_to_foreign_needs (object fvd, object obj,
|
||||
+local maygc __attribute__((noinline)) void convert_to_foreign_needs (object fvd, object obj,
|
||||
struct foreign_layout *sas)
|
||||
{
|
||||
struct walk_lisp walk
|
|
@ -1,5 +1,5 @@
|
|||
--- modules/pari/desc2lisp.lisp.orig 2018-07-18 17:50:36.000000000 -0600
|
||||
+++ modules/pari/desc2lisp.lisp 2018-08-03 15:05:25.139224753 -0600
|
||||
--- modules/pari/desc2lisp.lisp.orig 2021-06-28 14:32:42.000000000 -0600
|
||||
+++ modules/pari/desc2lisp.lisp 2022-09-19 21:12:06.708459685 -0600
|
||||
@@ -166,7 +166,15 @@
|
||||
(setq h (car h)))
|
||||
(if (and h (ext:starts-with-p h f) (setq end (search "):" h)))
|
||||
|
@ -17,3 +17,15 @@
|
|||
;; (or (warn "~S: no arglist in ~S" 'desc-arglist desc) ...)
|
||||
:unspecific)))
|
||||
|
||||
--- modules/pari/pari.lisp.orig 2021-06-28 14:32:42.000000000 -0600
|
||||
+++ modules/pari/pari.lisp 2022-09-19 21:23:25.026083675 -0600
|
||||
@@ -218,8 +218,7 @@ t.e., this is the memory size for the re
|
||||
;; extern int factor_add_primes;
|
||||
(def-c-var factor_add_primes (:type int))
|
||||
|
||||
-;; extern ulong DEBUGFILES, DEBUGLEVEL, DEBUGMEM
|
||||
-(def-c-var debugfiles (:name "DEBUGFILES") (:type ulong))
|
||||
+;; extern ulong DEBUGLEVEL, DEBUGMEM
|
||||
(def-c-var debuglevel (:name "DEBUGLEVEL") (:type ulong))
|
||||
(def-c-var debugmem (:name "DEBUGMEM") (:type ulong))
|
||||
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
--- tests/streams.tst.orig 2021-06-28 14:32:42.000000000 -0600
|
||||
+++ tests/streams.tst 2022-01-28 14:04:45.685239619 -0700
|
||||
@@ -1288,9 +1288,9 @@ T
|
||||
(streamp (setq s (make-stream :error))) T
|
||||
(or (not (search "#P" (prin1-to-string s))) (pathnamep (truename s))) T
|
||||
(write-line "foo" s) "foo"
|
||||
-(let ((*reopen-open-file* nil)) ; stdout can be a file, it will be detected!
|
||||
- (with-open-file (copy s :direction :output) (streamp copy)))
|
||||
-#.(if (member (ext:operating-system-type) '("AIX" "Haiku" "HP-UX" "Minix" "Windows") :test #'equal) 'ERROR 'T)
|
||||
+;;(let ((*reopen-open-file* nil)) ; stdout can be a file, it will be detected!
|
||||
+;; (with-open-file (copy s :direction :output) (streamp copy)))
|
||||
+;;#.(if (member (ext:operating-system-type) '("AIX" "Haiku" "HP-UX" "Minix" "Windows") :test #'equal) 'ERROR 'T)
|
||||
|
||||
#+clisp
|
||||
(progn
|
|
@ -1,34 +0,0 @@
|
|||
--- modules/syscalls/posix.lisp.orig 2018-07-18 17:50:36.000000000 -0600
|
||||
+++ modules/syscalls/posix.lisp 2018-08-01 15:54:47.410580519 -0600
|
||||
@@ -72,7 +72,7 @@
|
||||
(addrtype 2 :type fixnum :read-only t))
|
||||
|
||||
;;; ============================================================
|
||||
-#+unix (export '(crypt encrypt setkey))
|
||||
+#+unix (export '(crypt))
|
||||
|
||||
#+unix
|
||||
(defstruct (user-info (:constructor
|
||||
--- modules/syscalls/test.tst.orig 2018-07-18 17:50:36.000000000 -0600
|
||||
+++ modules/syscalls/test.tst 2018-08-01 15:55:58.241645520 -0600
|
||||
@@ -14,20 +14,6 @@ T
|
||||
(> (length (show (os:service) :pretty t)) (length (os:service nil "tcp"))) T
|
||||
(equalp (os:service "www" "tcp") (os:service "http" "tcp")) T
|
||||
|
||||
-#+unix ;; (encrypt (encrypt X t) nil) == X
|
||||
-(handler-case
|
||||
- (let* ((v (make-array 8 :element-type '(unsigned-byte 8))) (u (copy-seq v)))
|
||||
- (loop :repeat 10 :do
|
||||
- (dotimes (i 8) (setf (aref v i) (setf (aref u i) (random 256))))
|
||||
- (os:setkey v) (show (os:encrypt v nil)) (show (os:encrypt v t))
|
||||
- :never (if (equalp v u) nil (list v u))))
|
||||
- (ext:os-error (err)
|
||||
- ;; Solaris (sf cf x86-solaris1 & sparc-solaris1) encrypt fails with
|
||||
- ;; "UNIX error 89 (ENOSYS): Function not implemented"
|
||||
- (format t "~S: ~A" 'os:encrypt err)
|
||||
- T))
|
||||
-#+unix T
|
||||
-
|
||||
#+unix (crypt "foo" "bar") #+unix "ba4TuD1iozTxw"
|
||||
|
||||
;; same as "%F %T" on GNU, but more portable
|
226
clisp.spec
226
clisp.spec
|
@ -1,31 +1,58 @@
|
|||
%global commit df3b9f6fdcff22832898e89a989eb499c0f842ed
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
# Upstream has not made a new release since 2010
|
||||
%global srcname clisp
|
||||
%global commit de01f0f47bb44d3a0f9e842464cf2520b238f356
|
||||
%global date 20210628
|
||||
%global forgeurl https://gitlab.com/gnu-clisp/clisp
|
||||
|
||||
# There is a plus on the end for unreleased versions, not for released versions
|
||||
%global instdir %{name}-%{version}+
|
||||
|
||||
# This package uses toplevel ASMs which are incompatible with LTO
|
||||
%global _lto_cflags %{nil}
|
||||
|
||||
Name: clisp
|
||||
Summary: ANSI Common Lisp implementation
|
||||
Version: 2.49.93
|
||||
Release: 8.%{shortcommit}git%{?dist}
|
||||
License: GPLv2+
|
||||
|
||||
%forgemeta
|
||||
|
||||
# The project as a whole is GPL-2.0-or-later. Exceptions:
|
||||
# - Some documentation is dual-licensed as GPL-2.0-or-later OR GFDL-1.2-or-later
|
||||
# - src/gllib is LGPL-2.1-or-later
|
||||
# - src/socket.d and modules/clx/mit-clx/doc.lisp are HPND
|
||||
# - src/xthread.d and modules/asdf/asdf.lisp are X11
|
||||
License: GPL-2.0-or-later AND (GPL-2.0-or-later OR GFDL-1.2-or-later) AND LGPL-2.1-or-later AND HPND AND X11
|
||||
Release: 28.0.riscv64%{?dist}
|
||||
URL: http://www.clisp.org/
|
||||
# The source for this package was pulled from upstream's git repository.
|
||||
Source0: https://gitlab.com/gnu-clisp/%{name}/repository/archive.tar.gz?ref=%{commit}#/%{name}-%{shortcommit}.tar.gz
|
||||
Source0: %{forgesource}
|
||||
# Upstream dropped this file from the distribution
|
||||
Source1: https://gitlab.com/sam-s/clhs/-/raw/master/clhs.el
|
||||
# Updated translations
|
||||
Source1: http://translationproject.org/latest/clisp/sv.po
|
||||
Source2: http://translationproject.org/latest/clisp/sv.po
|
||||
Source3: http://translationproject.org/latest/clisp/de.po
|
||||
# https://sourceforge.net/p/clisp/patches/35/
|
||||
Patch0: %{name}-db.patch
|
||||
# https://sourceforge.net/p/clisp/patches/32/
|
||||
Patch1: %{name}-format.patch
|
||||
# The encrypt and setkey functions are no longer available from glibc
|
||||
Patch2: %{name}-setkey.patch
|
||||
# Adapt to changes in pari 2.11.0
|
||||
Patch3: %{name}-pari.patch
|
||||
# Adapt to changes in pari 2.15.0
|
||||
Patch2: %{name}-pari.patch
|
||||
# The combination of register and volatile is nonsensical
|
||||
Patch4: %{name}-register-volatile.patch
|
||||
Patch3: %{name}-register-volatile.patch
|
||||
# A test that writes to /dev/pts/0 succeeds or fails apparently at random.
|
||||
# I can only guess that /dev/pts/0 may or may not be what the test expects.
|
||||
# Perhaps we are racing with something else that allocates a pty. Disable
|
||||
# the test for now.
|
||||
Patch4: %{name}-pts-access.patch
|
||||
# Work around a problem inlining a function on ppc64le
|
||||
# See https://bugzilla.redhat.com/show_bug.cgi?id=2049371
|
||||
Patch5: %{name}-no-inline.patch
|
||||
# The ENSURE_6X macro adds 6 'X' characters to a string. However, it allocates
|
||||
# only 6 bytes more than the length of the string, which is not enough for the
|
||||
# null terminator. See https://bugzilla.redhat.com/show_bug.cgi?id=2115476.
|
||||
Patch6: %{name}-ensure-6x.patch
|
||||
|
||||
BuildRequires: dbus-devel
|
||||
BuildRequires: diffutils
|
||||
BuildRequires: emacs
|
||||
BuildRequires: fcgi-devel
|
||||
BuildRequires: ffcall-devel
|
||||
|
@ -47,6 +74,7 @@ BuildRequires: libsigsegv-devel
|
|||
BuildRequires: libsvm-devel
|
||||
BuildRequires: libunistring-devel
|
||||
BuildRequires: libxcrypt-devel
|
||||
BuildRequires: make
|
||||
BuildRequires: pari-devel
|
||||
BuildRequires: pari-gp
|
||||
BuildRequires: pcre-devel
|
||||
|
@ -94,18 +122,14 @@ Files necessary for linking CLISP programs.
|
|||
|
||||
|
||||
%prep
|
||||
%autosetup -p0 -n %{name}-%{commit}-%{commit}
|
||||
|
||||
# Change URLs not affected by the --hyperspec argument to configure
|
||||
sed -i.orig 's|lisp.org/HyperSpec/Body/chap-7.html|lispworks.com/documentation/HyperSpec/Body/07_.htm|' \
|
||||
src/clos-package.lisp
|
||||
touch -r src/clos-package.lisp.orig src/clos-package.lisp
|
||||
rm -f src/clos-package.lisp.orig
|
||||
for f in src/_README.*; do
|
||||
sed -i.orig 's|lisp.org/HyperSpec/FrontMatter|lispworks.com/documentation/HyperSpec/Front|' $f
|
||||
touch -r ${f}.orig $f
|
||||
rm -f ${f}.orig
|
||||
done
|
||||
%forgesetup
|
||||
%autopatch -M4 -p0
|
||||
%ifarch %{power64}
|
||||
%patch5 -p0
|
||||
%endif
|
||||
%autopatch -m6 -p0
|
||||
cp -p %{SOURCE1} emacs
|
||||
cp -p %{SOURCE2} %{SOURCE3} src/po
|
||||
|
||||
# We only link against libraries in system directories, so we need -L dir in
|
||||
# place of -Wl,-rpath -Wl,dir
|
||||
|
@ -115,6 +139,9 @@ sed -i -e 's/${wl}-rpath ${wl}/-L/g' src/build-aux/config.rpath
|
|||
# Fix modules that need access to symbols in libgnu.a
|
||||
sed -i 's/\(${GLLIB_A}\) \(${LIBS}\)/-Wl,--whole-archive \1 -Wl,--no-whole-archive \2 -ldl/' src/makemake.in
|
||||
|
||||
# When building modules, put -Wl,--as-needed before the libraries to link
|
||||
sed -i "s/CC='\${CC}'/CC='\${CC} -Wl,--as-needed'/" src/makemake.in
|
||||
|
||||
# Enable firefox to be the default browser for displaying documentation
|
||||
sed -i 's/;; \((setq \*browser\* .*)\)/\1/' src/cfgunix.lisp
|
||||
|
||||
|
@ -123,15 +150,11 @@ tar -C modules/clx -xzf modules/clx/clx-manual.tar.gz
|
|||
chmod -R go+r modules/clx/clx-manual
|
||||
chmod a-x modules/clx/clx-manual/html/doc-index.cgi
|
||||
|
||||
# Update the translations
|
||||
cp -p %{SOURCE1} src/po
|
||||
|
||||
# On some koji builders, something is already listening on port 9090, which
|
||||
# causes a spurious test failure. Change to port 9096 for the test.
|
||||
sed -i 's/9090/9096/g' tests/socket.tst
|
||||
|
||||
%build
|
||||
ulimit -s unlimited
|
||||
export LC_ALL=C.UTF-8
|
||||
|
||||
# Do not need to specify base modules: i18n, readline, regexp, syscalls.
|
||||
|
@ -145,7 +168,6 @@ export LC_ALL=C.UTF-8
|
|||
--infodir=%{_infodir} \
|
||||
--docdir=%{_pkgdocdir} \
|
||||
--fsstnd=redhat \
|
||||
--hyperspec=http://www.lispworks.com/documentation/HyperSpec/ \
|
||||
--with-module=asdf \
|
||||
--with-module=berkeley-db \
|
||||
--with-module=bindings/glibc \
|
||||
|
@ -162,14 +184,19 @@ export LC_ALL=C.UTF-8
|
|||
--with-module=zlib \
|
||||
--with-libreadline-prefix=$PWD/readline \
|
||||
--with-ffcall \
|
||||
--cbcx \
|
||||
--config \
|
||||
build \
|
||||
CPPFLAGS="-I/usr/include/libsvm" \
|
||||
CFLAGS="%{optflags} -Wa,--noexecstack" \
|
||||
CFLAGS="%{build_cflags} -Wa,--noexecstack" \
|
||||
LDFLAGS="-Wl,--as-needed -Wl,-z,relro -Wl,-z,noexecstack"
|
||||
|
||||
cd build
|
||||
# Workaround libtool reordering -Wl,--as-needed after all the libraries.
|
||||
sed -i 's|CC="\(.*g..\)"|CC="\1 -Wl,--as-needed"|' libtool
|
||||
make
|
||||
cd -
|
||||
|
||||
%install
|
||||
ulimit -s unlimited
|
||||
make -C build DESTDIR=%{buildroot} install
|
||||
cp -a build/full %{buildroot}%{_libdir}/%{instdir}
|
||||
rm -f %{buildroot}%{_pkgdocdir}/doc/clisp.{dvi,1,ps}
|
||||
|
@ -188,13 +215,12 @@ pushd %{buildroot}%{_datadir}/emacs/site-lisp
|
|||
%{_emacs_bytecompile} *.el
|
||||
popd
|
||||
|
||||
# Put back the original config.rpath, and fix executable bits
|
||||
# Put back the original config.rpath
|
||||
cp -p config.rpath.orig %{buildroot}%{_libdir}/%{instdir}/build-aux/config.rpath
|
||||
chmod a+x \
|
||||
%{buildroot}%{_libdir}/%{instdir}/build-aux/config.guess \
|
||||
%{buildroot}%{_libdir}/%{instdir}/build-aux/config.sub \
|
||||
%{buildroot}%{_libdir}/%{instdir}/build-aux/depcomp \
|
||||
%{buildroot}%{_libdir}/%{instdir}/build-aux/install-sh \
|
||||
|
||||
# Fix a missing executable bit
|
||||
chmod a+x %{buildroot}%{_libdir}/%{instdir}/build-aux/depcomp
|
||||
|
||||
# Fix paths in the Makefiles
|
||||
for mk in $(find %{buildroot}%{_libdir} -name Makefile); do
|
||||
sed -e "s,$PWD/modules,%{_libdir}/%{instdir}," \
|
||||
|
@ -216,13 +242,9 @@ cp -p build/config.h %{buildroot}%{_libdir}/%{instdir}
|
|||
cp -p build/clx/new-clx/config.h \
|
||||
%{buildroot}%{_libdir}/%{instdir}/clx/new-clx
|
||||
|
||||
# Fix permissions
|
||||
chmod 0755 %{buildroot}%{_bindir}/%{name}
|
||||
chmod 0755 %{buildroot}%{_libdir}/%{instdir}/full/lisp.run
|
||||
|
||||
# Fix broken symlinks in the full set
|
||||
pushd %{buildroot}%{_libdir}/%{instdir}/full
|
||||
for obj in bogomips calls gettext readline regexi; do
|
||||
for obj in calls gettext readline regexi; do
|
||||
rm -f ${obj}.o
|
||||
ln -s ../base/${obj}.o ${obj}.o
|
||||
done
|
||||
|
@ -234,6 +256,10 @@ for obj in fastcgi fastcgi_wrappers; do
|
|||
rm -f ${obj}.o
|
||||
ln -s ../fastcgi/${obj}.o ${obj}.o
|
||||
done
|
||||
for obj in cpari pari; do
|
||||
rm -f ${obj}.o
|
||||
ln -s ../pari/${obj}.o ${obj}.o
|
||||
done
|
||||
rm -f bdb.o
|
||||
ln -s ../berkeley-db/bdb.o bdb.o
|
||||
rm -f clx.o
|
||||
|
@ -262,6 +288,12 @@ popd
|
|||
ln -s ../../src/modules.c build/base/modules.c
|
||||
ln -s ../../src/modules.c build/full/modules.c
|
||||
|
||||
%check
|
||||
export LC_ALL=C.UTF-8
|
||||
make -C build check || true
|
||||
make -C build extracheck || true
|
||||
make -C build base-mod-check || true
|
||||
|
||||
%files -f %{name}.lang
|
||||
%license COPYRIGHT GNU-GPL
|
||||
%{_bindir}/clisp
|
||||
|
@ -275,12 +307,14 @@ ln -s ../../src/modules.c build/full/modules.c
|
|||
%{_libdir}/%{instdir}/base/lisp.run
|
||||
%dir %{_libdir}/%{instdir}/berkeley-db/
|
||||
%{_libdir}/%{instdir}/berkeley-db/*.fas
|
||||
%{_libdir}/%{instdir}/berkeley-db/preload.lisp
|
||||
%dir %{_libdir}/%{instdir}/bindings/
|
||||
%dir %{_libdir}/%{instdir}/bindings/glibc/
|
||||
%{_libdir}/%{instdir}/bindings/glibc/*.fas
|
||||
%dir %{_libdir}/%{instdir}/clx/
|
||||
%dir %{_libdir}/%{instdir}/clx/new-clx/
|
||||
%{_libdir}/%{instdir}/clx/new-clx/*.fas
|
||||
%{_libdir}/%{instdir}/clx/new-clx/clx-preload.lisp
|
||||
%{_libdir}/%{instdir}/data/
|
||||
%dir %{_libdir}/%{instdir}/dbus/
|
||||
%{_libdir}/%{instdir}/dbus/*.fas
|
||||
|
@ -292,18 +326,24 @@ ln -s ../../src/modules.c build/full/modules.c
|
|||
%{_libdir}/%{instdir}/full/lisp.run
|
||||
%dir %{_libdir}/%{instdir}/gdbm/
|
||||
%{_libdir}/%{instdir}/gdbm/*.fas
|
||||
%{_libdir}/%{instdir}/gdbm/preload.lisp
|
||||
%dir %{_libdir}/%{instdir}/gtk2/
|
||||
%{_libdir}/%{instdir}/gtk2/*.fas
|
||||
%{_libdir}/%{instdir}/gtk2/preload.lisp
|
||||
%dir %{_libdir}/%{instdir}/libsvm/
|
||||
%{_libdir}/%{instdir}/libsvm/*.fas
|
||||
%{_libdir}/%{instdir}/libsvm/preload.lisp
|
||||
%dir %{_libdir}/%{instdir}/pari/
|
||||
%{_libdir}/%{instdir}/pari/*.fas
|
||||
%{_libdir}/%{instdir}/pari/preload.lisp
|
||||
%dir %{_libdir}/%{instdir}/pcre/
|
||||
%{_libdir}/%{instdir}/pcre/*.fas
|
||||
%{_libdir}/%{instdir}/pcre/preload.lisp
|
||||
%dir %{_libdir}/%{instdir}/postgresql/
|
||||
%{_libdir}/%{instdir}/postgresql/*.fas
|
||||
%dir %{_libdir}/%{instdir}/rawsock/
|
||||
%{_libdir}/%{instdir}/rawsock/*.fas
|
||||
%{_libdir}/%{instdir}/rawsock/preload.lisp
|
||||
%dir %{_libdir}/%{instdir}/zlib/
|
||||
%{_libdir}/%{instdir}/zlib/*.fas
|
||||
%{_datadir}/emacs/site-lisp/*
|
||||
|
@ -322,7 +362,7 @@ ln -s ../../src/modules.c build/full/modules.c
|
|||
%{_libdir}/%{instdir}/base/makevars
|
||||
%{_libdir}/%{instdir}/berkeley-db/Makefile
|
||||
%{_libdir}/%{instdir}/berkeley-db/*.h
|
||||
%{_libdir}/%{instdir}/berkeley-db/*.lisp
|
||||
%{_libdir}/%{instdir}/berkeley-db/dbi.lisp
|
||||
%{_libdir}/%{instdir}/berkeley-db/*.o
|
||||
%{_libdir}/%{instdir}/berkeley-db/*.sh
|
||||
%{_libdir}/%{instdir}/bindings/glibc/Makefile
|
||||
|
@ -334,7 +374,9 @@ ln -s ../../src/modules.c build/full/modules.c
|
|||
%{_libdir}/%{instdir}/clx/new-clx/README
|
||||
%{_libdir}/%{instdir}/clx/new-clx/Makefile
|
||||
%{_libdir}/%{instdir}/clx/new-clx/*.h
|
||||
%{_libdir}/%{instdir}/clx/new-clx/*.lisp
|
||||
%{_libdir}/%{instdir}/clx/new-clx/clx.lisp
|
||||
%{_libdir}/%{instdir}/clx/new-clx/image.lisp
|
||||
%{_libdir}/%{instdir}/clx/new-clx/resource.lisp
|
||||
%{_libdir}/%{instdir}/clx/new-clx/*.o
|
||||
%{_libdir}/%{instdir}/clx/new-clx/*.sh
|
||||
%{_libdir}/%{instdir}/config.h
|
||||
|
@ -355,32 +397,33 @@ ln -s ../../src/modules.c build/full/modules.c
|
|||
%{_libdir}/%{instdir}/full/makevars
|
||||
%{_libdir}/%{instdir}/gdbm/Makefile
|
||||
%{_libdir}/%{instdir}/gdbm/*.h
|
||||
%{_libdir}/%{instdir}/gdbm/*.lisp
|
||||
%{_libdir}/%{instdir}/gdbm/gdbm.lisp
|
||||
%{_libdir}/%{instdir}/gdbm/*.o
|
||||
%{_libdir}/%{instdir}/gdbm/*.sh
|
||||
%{_libdir}/%{instdir}/gtk2/Makefile
|
||||
%{_libdir}/%{instdir}/gtk2/*.cfg
|
||||
%{_libdir}/%{instdir}/gtk2/*.glade
|
||||
%{_libdir}/%{instdir}/gtk2/*.h
|
||||
%{_libdir}/%{instdir}/gtk2/*.lisp
|
||||
%{_libdir}/%{instdir}/gtk2/gtk.lisp
|
||||
%{_libdir}/%{instdir}/gtk2/*.o
|
||||
%{_libdir}/%{instdir}/gtk2/*.sh
|
||||
%{_libdir}/%{instdir}/libsvm/README
|
||||
%{_libdir}/%{instdir}/libsvm/Makefile
|
||||
%{_libdir}/%{instdir}/libsvm/*.h
|
||||
%{_libdir}/%{instdir}/libsvm/*.lisp
|
||||
%{_libdir}/%{instdir}/libsvm/libsvm.lisp
|
||||
%{_libdir}/%{instdir}/libsvm/*.o
|
||||
%{_libdir}/%{instdir}/libsvm/*.sh
|
||||
%{_libdir}/%{instdir}/linkkit/
|
||||
%{_libdir}/%{instdir}/pari/README
|
||||
%{_libdir}/%{instdir}/pari/Makefile
|
||||
%{_libdir}/%{instdir}/pari/*.h
|
||||
%{_libdir}/%{instdir}/pari/*.lisp
|
||||
%{_libdir}/%{instdir}/pari/desc2lisp.lisp
|
||||
%{_libdir}/%{instdir}/pari/pari.lisp
|
||||
%{_libdir}/%{instdir}/pari/*.o
|
||||
%{_libdir}/%{instdir}/pari/*.sh
|
||||
%{_libdir}/%{instdir}/pcre/Makefile
|
||||
%{_libdir}/%{instdir}/pcre/*.h
|
||||
%{_libdir}/%{instdir}/pcre/*.lisp
|
||||
%{_libdir}/%{instdir}/pcre/pcre.lisp
|
||||
%{_libdir}/%{instdir}/pcre/*.o
|
||||
%{_libdir}/%{instdir}/pcre/*.sh
|
||||
%{_libdir}/%{instdir}/postgresql/README
|
||||
|
@ -392,7 +435,7 @@ ln -s ../../src/modules.c build/full/modules.c
|
|||
%{_libdir}/%{instdir}/rawsock/demos/
|
||||
%{_libdir}/%{instdir}/rawsock/Makefile
|
||||
%{_libdir}/%{instdir}/rawsock/*.h
|
||||
%{_libdir}/%{instdir}/rawsock/*.lisp
|
||||
%{_libdir}/%{instdir}/rawsock/sock.lisp
|
||||
%{_libdir}/%{instdir}/rawsock/*.o
|
||||
%{_libdir}/%{instdir}/rawsock/*.sh
|
||||
%{_libdir}/%{instdir}/zlib/Makefile
|
||||
|
@ -404,6 +447,87 @@ ln -s ../../src/modules.c build/full/modules.c
|
|||
|
||||
|
||||
%changelog
|
||||
* Sun Oct 23 2022 David Abdurachmanov <davidlt@rivosinc.com> - 2.49.93-28.0.riscv64
|
||||
- Ignore testsuite errors
|
||||
|
||||
* Mon Sep 19 2022 Jerry James <loganjerry@gmail.com> - 2.49.93-28
|
||||
- Rebuild for pari 2.15.0
|
||||
|
||||
* Thu Aug 18 2022 Jerry James <loganjerry@gmail.com> - 2.49.93-27
|
||||
- Rebuild for libsvm 3.3
|
||||
|
||||
* Mon Aug 15 2022 Jerry James <loganjerry@gmail.com> - 2.49.93-26
|
||||
- Convert License tag to SPDX
|
||||
|
||||
* Wed Aug 10 2022 Jerry James <loganjerry@gmail.com> - 2.49.93-26
|
||||
- Move preload.lisp files to the main package
|
||||
|
||||
* Mon Aug 8 2022 Jerry James <loganjerry@gmail.com> - 2.49.93-25
|
||||
- Add -ensure-6x patch (rhbz#2115476)
|
||||
|
||||
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.49.93-24
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Mon Jul 18 2022 Jerry James <loganjerry@gmail.com> - 2.49.93-23
|
||||
- Reduce the impact of the -no-inline patch
|
||||
|
||||
* Thu Feb 3 2022 Jerry James <loganjerry@gmail.com> - 2.49.93-23
|
||||
- Add -no-inline patch to workaround bz 2049371 (ppc64le segfault)
|
||||
|
||||
* Fri Jan 28 2022 Jerry James <loganjerry@gmail.com> - 2.49.93-23
|
||||
- Add -pts-access patch to fix FTBFS
|
||||
|
||||
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.49.93-23
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.49.93-22
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Fri Jul 16 2021 Jerry James <loganjerry@gmail.com> - 2.49.93-21.20210628gitde01f0f
|
||||
- Update to latest git snapshot for autoconf + glib updates
|
||||
- Drop upstreamed -setkey patch
|
||||
- Use forge macros
|
||||
- Use default HyperSpec URLs
|
||||
|
||||
* Thu Jun 17 2021 Jerry James <loganjerry@gmail.com> - 2.49.93-20.d9cbf22git
|
||||
- Rebuild for ffcall 2.4 and multithreaded pari
|
||||
|
||||
* Tue May 25 2021 Florian Weimer <fweimer@redhat.com> - 2.49.93-19.d9cbf22git
|
||||
- Rebuild with new binutils to fix ppc64le corruption (#1960730)
|
||||
|
||||
* Tue Mar 23 2021 Jerry James <loganjerry@gmail.com> - 2.49.93-18.d9cbf22git
|
||||
- Update to latest git snapshot for autoconf + glib updates
|
||||
- Fix broken symlinks in the full set
|
||||
|
||||
* Mon Feb 08 2021 Pavel Raiskup <praiskup@redhat.com> - 2.49.93-17.a9aeb80git
|
||||
- rebuild for libpq ABI fix rhbz#1908268
|
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.49.93-16.a9aeb80git
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Mon Nov 9 2020 Jerry James <loganjerry@gmail.com> - 2.49.93-15.a9aeb80git
|
||||
- Update to latest git snapshot for more HyperSpec fixes
|
||||
|
||||
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.49.93-14.c26de78git
|
||||
- Second attempt - Rebuilt for
|
||||
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Mon Jul 27 2020 Jeff Law <law@redhat.com> - 2.49.93-13.c26de78git
|
||||
- Disable LTO
|
||||
|
||||
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.49.93-12.c26de78git
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.49.93-11.c26de78git
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Tue Dec 17 2019 Jerry James <loganjerry@gmail.com> - 2.49.93-10.c26de78git
|
||||
- Update to latest git snapshot for HyperSpec fixes
|
||||
|
||||
* Mon Aug 26 2019 Jerry James <loganjerry@gmail.com> - 2.49.93-9.dd40369git
|
||||
- Update to latest git snapshot for bug fixes
|
||||
- Add latest German translation
|
||||
|
||||
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.49.93-8.df3b9f6git
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
|
|
2
sources
2
sources
|
@ -1 +1 @@
|
|||
SHA512 (clisp-df3b9f6.tar.gz) = 393b07b93e517999028b6f535c31ae51a6bcedf373027e3b563e59b3195c49f9c07c6b3ab8f3de04db88f7a892a64dec5fe09c32c7bb12036d497f3dead0b942
|
||||
SHA512 (clisp-de01f0f47bb44d3a0f9e842464cf2520b238f356.tar.bz2) = d135248d22233194c0cb087053c02b72bd24c0bb2c6b23f6ff9a931ef7b09446a55f061626bfa5da55531a11665c615dae0c2a651df5114a019c5188b67e8b5a
|
||||
|
|
Loading…
Reference in New Issue