summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChema Alonso Josa <nimiux@gentoo.org>2018-02-10 16:36:18 +0100
committerChema Alonso Josa <nimiux@gentoo.org>2018-02-10 16:36:46 +0100
commit1878d380b7c1ffe79b11c91a67eb8f3e02afdd78 (patch)
tree8e48b669746170e535bc8709735a91e1e35ee0fc /dev-lisp/clx
parentnet-vpn/tor: version bump alpha branch to 0.3.3.2_alpha (diff)
downloadgentoo-1878d380b7c1ffe79b11c91a67eb8f3e02afdd78.tar.gz
gentoo-1878d380b7c1ffe79b11c91a67eb8f3e02afdd78.tar.bz2
gentoo-1878d380b7c1ffe79b11c91a67eb8f3e02afdd78.zip
dev-lisp/clx: Drops old version 0.7.4
Package-Manager: Portage-2.3.19, Repoman-2.3.6
Diffstat (limited to 'dev-lisp/clx')
-rw-r--r--dev-lisp/clx/Manifest1
-rw-r--r--dev-lisp/clx/clx-0.7.4-r1.ebuild46
-rw-r--r--dev-lisp/clx/clx-9999.ebuild14
-rw-r--r--dev-lisp/clx/files/gentoo-fix-asd.patch303
-rw-r--r--dev-lisp/clx/files/gentoo-fix-dep-openmcl.patch21
-rw-r--r--dev-lisp/clx/files/gentoo-fix-dynamic-extent-sbcl-1.0.45.patch13
-rw-r--r--dev-lisp/clx/files/gentoo-fix-obsolete-eval-when.patch12
-rw-r--r--dev-lisp/clx/files/gentoo-fix-unused-vars.patch69
8 files changed, 0 insertions, 479 deletions
diff --git a/dev-lisp/clx/Manifest b/dev-lisp/clx/Manifest
index 7cb64367b793..9b7e836335f6 100644
--- a/dev-lisp/clx/Manifest
+++ b/dev-lisp/clx/Manifest
@@ -1,2 +1 @@
-DIST clx-0.7.4.tgz 444490 BLAKE2B 19ac6976353f254c11639a443f1b5821deae952dfae51bd168642c6a55be9401e38fce388f2d7feac618b00dd1606bc11869531f6c380acf2e4b1d65e187e9d1 SHA512 07f93735bee25c8a6d8cccaa0755efa0b750954cbeab70d9db69bf51f1cf4eb7918c0225b9ae2834b11ebb261a857eea0f60b70e4044ccbe96ecb32c3ac31278
DIST clx-0.7.5.tar.gz 468904 BLAKE2B 30ce4de52fdbbc935bf5653f54a588537670b7d55dc038f32b4527e5f3d7b2dfe6afde3d28debf7ab5a08994155ec390f1e70dfbe45e8831fe7a977d245c9d7a SHA512 9228c37a99dcaee637c64c58183220c1ed3745e683c877f843c7de5b052d7355a3ddd50687371e8388c05bcedda062008299476b82dc8a3d26b605dde1dfa997
diff --git a/dev-lisp/clx/clx-0.7.4-r1.ebuild b/dev-lisp/clx/clx-0.7.4-r1.ebuild
deleted file mode 100644
index e229aaf004b9..000000000000
--- a/dev-lisp/clx/clx-0.7.4-r1.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit common-lisp-3 eutils
-
-DESCRIPTION="CLX is the Common Lisp interface to the X11 protocol primarily for SBCL."
-HOMEPAGE="http://www.cliki.net/CLX"
-SRC_URI="http://common-lisp.net/~abridgewater/dist/${PN}/${P}.tgz"
-
-LICENSE="HPND"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~sparc ~x86"
-IUSE="doc"
-
-DEPEND="sys-apps/texinfo
- doc? ( virtual/texi2dvi )"
-RDEPEND="!dev-lisp/cl-${PN}"
-
-src_prepare() {
- rm -v {exclcmac,sockcl,defsystem,provide,cmudep}.lisp || die
- eapply "${FILESDIR}"/gentoo-fix-asd.patch
- eapply "${FILESDIR}"/gentoo-fix-dep-openmcl.patch
- eapply "${FILESDIR}"/gentoo-fix-unused-vars.patch
- eapply "${FILESDIR}"/gentoo-fix-obsolete-eval-when.patch
- eapply "${FILESDIR}"/gentoo-fix-dynamic-extent-sbcl-1.0.45.patch
- eapply_user
-}
-
-src_compile() {
- cd manual || die
- makeinfo ${PN}.texinfo -o ${PN}.info || die "Cannot compile info docs"
- if use doc ; then
- VARTEXFONTS="${T}"/fonts \
- texi2pdf ${PN}.texinfo -o ${PN}.pdf || die "Cannot build PDF docs"
- fi
-}
-
-src_install() {
- common-lisp-install-sources *.lisp debug demo test
- common-lisp-install-asdf
- dodoc NEWS CHANGES README*
- doinfo manual/${PN}.info
- use doc && dodoc manual/${PN}.pdf
-}
diff --git a/dev-lisp/clx/clx-9999.ebuild b/dev-lisp/clx/clx-9999.ebuild
deleted file mode 100644
index 58071bea11ca..000000000000
--- a/dev-lisp/clx/clx-9999.ebuild
+++ /dev/null
@@ -1,14 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit common-lisp-3 git-r3
-
-DESCRIPTION="A fork of crhodes' fork of danb's fork of CLX, an X11 client for Common Lisp"
-HOMEPAGE="https://github.com/sharplispers/clx http://www.cliki.net/CLX"
-EGIT_REPO_URI="https://github.com/sharplispers/clx.git"
-
-LICENSE="MIT"
-SLOT="0"
-IUSE=""
diff --git a/dev-lisp/clx/files/gentoo-fix-asd.patch b/dev-lisp/clx/files/gentoo-fix-asd.patch
deleted file mode 100644
index 62ad58748170..000000000000
--- a/dev-lisp/clx/files/gentoo-fix-asd.patch
+++ /dev/null
@@ -1,303 +0,0 @@
-diff -ur clx-0.7.4.orig/clx.asd clx-0.7.4/clx.asd
---- clx-0.7.4.orig/clx.asd 2009-11-28 16:43:30.000000000 +0100
-+++ clx-0.7.4/clx.asd 2009-11-29 22:29:11.000000000 +0100
-@@ -21,116 +21,80 @@
- ;;; or implied warranty.
-
- (defpackage :clx-system (:use :cl :asdf))
--(in-package :clx-system)
-+(in-package :clx-system)
-
- (pushnew :clx-ansi-common-lisp *features*)
-
- (defclass clx-source-file (cl-source-file) ())
- (defclass xrender-source-file (clx-source-file) ())
-
--;;; CL-SOURCE-FILE, not CLX-SOURCE-FILE, so that we're not accused of
--;;; cheating by rebinding *DERIVE-FUNCTION-TYPES* :-)
--(defclass example-source-file (cl-source-file) ())
--
--(defclass legacy-file (static-file) ())
--
--(defsystem CLX
-- :depends-on (#+sbcl sb-bsd-sockets)
-- :version "0.7.2"
-- :serial t
-- :default-component-class clx-source-file
-+(defsystem clx
-+ :depends-on (#+sbcl :sb-bsd-sockets)
-+ :version "0.7.4"
-+ :serial t
-+ :default-component-class clx-source-file
-+ :components
-+ ((:file "package")
-+ (:file "depdefs")
-+ (:file "clx")
-+ #-(or openmcl allegro) (:file "dependent")
-+ #+openmcl (:file "dep-openmcl")
-+ #+allegro (:file "dep-allegro")
-+ (:file "macros")
-+ (:file "bufmac")
-+ (:file "buffer")
-+ (:file "display")
-+ (:file "gcontext")
-+ (:file "input")
-+ (:file "requests")
-+ (:file "fonts")
-+ (:file "graphics")
-+ (:file "text")
-+ (:file "attributes")
-+ (:file "translate")
-+ (:file "keysyms")
-+ (:file "manager")
-+ (:file "image")
-+ (:file "resource")
-+ #+allegro
-+ (:file "excldep" :pathname "excldep.lisp")
-+ (:module extensions
-+ :pathname #.(make-pathname :directory '(:relative))
- :components
-- ((:file "package")
-- (:file "depdefs")
-- (:file "clx")
-- #-(or openmcl allegro) (:file "dependent")
-- #+openmcl (:file "dep-openmcl")
-- #+allegro (:file "dep-allegro")
-- (:file "macros")
-- (:file "bufmac")
-- (:file "buffer")
-- (:file "display")
-- (:file "gcontext")
-- (:file "input")
-- (:file "requests")
-- (:file "fonts")
-- (:file "graphics")
-- (:file "text")
-- (:file "attributes")
-- (:file "translate")
-- (:file "keysyms")
-- (:file "manager")
-- (:file "image")
-- (:file "resource")
-- #+allegro
-- (:file "excldep" :pathname "excldep.lisp")
-- (:module extensions
-- :pathname #.(make-pathname :directory '(:relative))
-- :components
-- ((:file "shape")
-- (:file "big-requests")
-- (:file "xvidmode")
-- (:xrender-source-file "xrender")
-- (:file "glx")
-- (:file "gl" :depends-on ("glx"))
-- (:file "dpms")
-- (:file "xtest")
-- (:file "screensaver")
-- (:file "xinerama")))
-- (:module demo
-- :default-component-class example-source-file
-- :components
-- ((:file "bezier")
-- ;; KLUDGE: this requires "bezier" for proper operation,
-- ;; but we don't declare that dependency here, because
-- ;; asdf doesn't load example files anyway.
-- (:file "beziertest")
-- (:file "clclock")
-- (:file "clipboard")
-- (:file "clx-demos")
-- (:file "gl-test")
-- ;; FIXME: compiling this generates 30-odd spurious code
-- ;; deletion notes. Find out why, and either fix or
-- ;; workaround the problem.
-- (:file "mandel")
-- (:file "menu")
-- (:file "zoid")))
-- (:module test
-- :default-component-class example-source-file
-- :components
-- ((:file "image")
-- ;; KLUDGE: again, this depends on "zoid"
-- (:file "trapezoid")))
-- (:static-file "NEWS")
-- (:static-file "CHANGES")
-- (:static-file "README")
-- (:static-file "README-R5")
-- (:legacy-file "exclMakefile")
-- (:legacy-file "exclREADME")
-- (:legacy-file "exclcmac" :pathname "exclcmac.lisp")
-- (:legacy-file "excldepc" :pathname "excldep.c")
-- (:legacy-file "sockcl" :pathname "sockcl.lisp")
-- (:legacy-file "socket" :pathname "socket.c")
-- (:legacy-file "defsystem" :pathname "defsystem.lisp")
-- (:legacy-file "provide" :pathname "provide.lisp")
-- (:legacy-file "cmudep" :pathname "cmudep.lisp")
-- (:module manual
-- ;; TODO: teach asdf how to process texinfo files
-- :components ((:static-file "clx.texinfo")))
-- (:module debug
-- :default-component-class legacy-file
-- :components
-- ((:file "debug" :pathname "debug.lisp")
-- (:file "describe" :pathname "describe.lisp")
-- (:file "event-test" :pathname "event-test.lisp")
-- (:file "keytrans" :pathname "keytrans.lisp")
-- (:file "trace" :pathname "trace.lisp")
-- (:file "util" :pathname "util.lisp")))))
--
--(defmethod perform ((o load-op) (f example-source-file))
-- ;; do nothing. We want to compile them when CLX is compiled, but
-- ;; not load them when CLX is loaded.
-- t)
-+ ((:file "shape")
-+ (:file "big-requests")
-+ (:file "xvidmode")
-+ (:xrender-source-file "xrender")
-+ (:file "glx")
-+ (:file "gl" :depends-on ("glx"))
-+ (:file "dpms")
-+ (:file "xtest")
-+ (:file "screensaver")
-+ (:file "xinerama")))))
-+
-+(defsystem clx-test
-+ :depends-on (:clx)
-+ :serial t
-+ :components
-+ ((:file "image")
-+ (:file "trapezoid")))
-+
-+(defsystem clx-demo
-+ :depends-on (:clx)
-+ :serial t
-+ :components
-+ ((:file "bezier")
-+ (:file "beziertest")
-+ (:file "clclock")
-+ (:file "clipboard")
-+ (:file "clx-demos")
-+ (:file "gl-test")
-+ ;; FIXME: compiling this generates 30-odd spurious code
-+ ;; deletion notes. Find out why, and either fix or
-+ ;; workaround the problem.
-+ (:file "mandel")
-+ (:file "menu")
-+ (:file "zoid")))
-
- #+sbcl
- (defmethod perform :around ((o compile-op) (f xrender-source-file))
-@@ -146,35 +110,35 @@
- ;; without STYLE-WARNINGs. Since it currently does, let's enforce
- ;; it here so that we can catch regressions easily.
- (let ((on-warnings (operation-on-warnings o))
-- (on-failure (operation-on-failure o)))
-+ (on-failure (operation-on-failure o)))
- (unwind-protect
-- (progn
-- (setf (operation-on-warnings o) :error
-- (operation-on-failure o) :error)
-- ;; a variety of accessors, such as AREF-CARD32, are not
-- ;; declared INLINE. Without this (non-ANSI)
-- ;; static-type-inference behaviour, SBCL emits an extra 100
-- ;; optimization notes (roughly one fifth of all of the
-- ;; notes emitted). Since the internals are unlikely to
-- ;; change much, and certainly the internals should stay in
-- ;; sync, enabling this extension is a win. (Note that the
-- ;; use of this does not imply that applications using CLX
-- ;; calls that expand into calls to these accessors will be
-- ;; optimized in the same way).
-- (let ((sb-ext:*derive-function-types* t)
-+ (progn
-+ (setf (operation-on-warnings o) :error
-+ (operation-on-failure o) :error)
-+ ;; a variety of accessors, such as AREF-CARD32, are not
-+ ;; declared INLINE. Without this (non-ANSI)
-+ ;; static-type-inference behaviour, SBCL emits an extra 100
-+ ;; optimization notes (roughly one fifth of all of the
-+ ;; notes emitted). Since the internals are unlikely to
-+ ;; change much, and certainly the internals should stay in
-+ ;; sync, enabling this extension is a win. (Note that the
-+ ;; use of this does not imply that applications using CLX
-+ ;; calls that expand into calls to these accessors will be
-+ ;; optimized in the same way).
-+ (let ((sb-ext:*derive-function-types* t)
- (sadx (find-symbol "STACK-ALLOCATE-DYNAMIC-EXTENT" :sb-c))
- (sadx-var (find-symbol "*STACK-ALLOCATE-DYNAMIC-EXTENT*" :sb-ext)))
-- ;; deeply unportable stuff, this. I will be shot. We
-- ;; want to enable the dynamic-extent declarations in CLX.
-- (when (and sadx (sb-c::policy-quality-name-p sadx))
-- ;; no way of setting it back short of yet more yukky stuff
-- (proclaim `(optimize (,sadx 3))))
-+ ;; deeply unportable stuff, this. I will be shot. We
-+ ;; want to enable the dynamic-extent declarations in CLX.
-+ (when (and sadx (sb-c::policy-quality-name-p sadx))
-+ ;; no way of setting it back short of yet more yukky stuff
-+ (proclaim `(optimize (,sadx 3))))
- (if sadx-var
- (progv (list sadx-var) (list t)
- (call-next-method))
- (call-next-method))))
- (setf (operation-on-warnings o) on-warnings
-- (operation-on-failure o) on-failure))))
-+ (operation-on-failure o) on-failure))))
-
- #+sbcl
- (defmethod perform :around (o (f clx-source-file))
-@@ -186,31 +150,31 @@
- ;; structured data is sufficiently equal.
- (handler-bind
- ((sb-ext:defconstant-uneql
-- (lambda (c)
-- ;; KLUDGE: this really means "don't warn me about
-- ;; efficiency of generic array access, please"
-- (declare (optimize (sb-ext:inhibit-warnings 3)))
-- (let ((old (sb-ext:defconstant-uneql-old-value c))
-- (new (sb-ext:defconstant-uneql-new-value c)))
-- (typecase old
-- (list (when (equal old new) (abort c)))
-- (string (when (and (typep new 'string)
-- (string= old new))
-- (abort c)))
-- (simple-vector
-- (when (and (typep new 'simple-vector)
-- (= (length old) (length new))
-- (every #'eql old new))
-- (abort c)))
-- (array
-- (when (and (typep new 'array)
-- (equal (array-dimensions old)
-- (array-dimensions new))
-- (equal (array-element-type old)
-- (array-element-type new))
-- (dotimes (i (array-total-size old) t)
-- (unless (eql (row-major-aref old i)
-- (row-major-aref new i))
-- (return nil))))
-- (abort c))))))))
-+ (lambda (c)
-+ ;; KLUDGE: this really means "don't warn me about
-+ ;; efficiency of generic array access, please"
-+ (declare (optimize (sb-ext:inhibit-warnings 3)))
-+ (let ((old (sb-ext:defconstant-uneql-old-value c))
-+ (new (sb-ext:defconstant-uneql-new-value c)))
-+ (typecase old
-+ (list (when (equal old new) (abort c)))
-+ (string (when (and (typep new 'string)
-+ (string= old new))
-+ (abort c)))
-+ (simple-vector
-+ (when (and (typep new 'simple-vector)
-+ (= (length old) (length new))
-+ (every #'eql old new))
-+ (abort c)))
-+ (array
-+ (when (and (typep new 'array)
-+ (equal (array-dimensions old)
-+ (array-dimensions new))
-+ (equal (array-element-type old)
-+ (array-element-type new))
-+ (dotimes (i (array-total-size old) t)
-+ (unless (eql (row-major-aref old i)
-+ (row-major-aref new i))
-+ (return nil))))
-+ (abort c))))))))
- (call-next-method)))
diff --git a/dev-lisp/clx/files/gentoo-fix-dep-openmcl.patch b/dev-lisp/clx/files/gentoo-fix-dep-openmcl.patch
deleted file mode 100644
index 1ec3eca0897c..000000000000
--- a/dev-lisp/clx/files/gentoo-fix-dep-openmcl.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -ur clx-0.7.4.orig/dep-openmcl.lisp clx-0.7.4/dep-openmcl.lisp
---- clx-0.7.4.orig/dep-openmcl.lisp 2009-11-28 16:43:30.000000000 +0100
-+++ clx-0.7.4/dep-openmcl.lisp 2009-11-29 22:39:36.000000000 +0100
-@@ -492,7 +492,7 @@
- ;;; value changes.
-
- (defun process-block (whostate predicate &rest predicate-args)
-- (declare (dynamic-extern predicate-args))
-+ (declare (dynamic-extent predicate-args))
- (apply #'ccl:process-wait whostate predicate predicate-args))
-
- ;;; PROCESS-WAKEUP: Check some other process' wait function.
-@@ -1113,7 +1113,7 @@
- unit byte-lsb-first-p bit-lsb-first-p)
- (declare (ignore bbuf boffset pixarray x y width height
- padded-bytes-per-line bits-per-pixel unit
-- byte-lsb-first-p bit-lsp-first-p))
-+ byte-lsb-first-p bit-lsb-first-p))
- nil)
-
- ;;; FAST-COPY-PIXARRAY - copy part of a pixarray into another
diff --git a/dev-lisp/clx/files/gentoo-fix-dynamic-extent-sbcl-1.0.45.patch b/dev-lisp/clx/files/gentoo-fix-dynamic-extent-sbcl-1.0.45.patch
deleted file mode 100644
index 961d1bedaa67..000000000000
--- a/dev-lisp/clx/files/gentoo-fix-dynamic-extent-sbcl-1.0.45.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -ur clx-0.7.4.orig/requests.lisp clx-0.7.4/requests.lisp
---- clx-0.7.4.orig/requests.lisp 2009-11-28 16:43:30.000000000 +0100
-+++ clx-0.7.4/requests.lisp 2010-12-16 23:37:07.122629835 +0100
-@@ -466,8 +466,7 @@
- (type event-key event-key)
- (type (or null event-mask) event-mask)
- (type generalized-boolean propagate-p)
-- (type (or null display) display)
-- (dynamic-extent args))
-+ (type (or null display) display))
- (unless event-mask (setq event-mask 0))
- (unless display (setq display (window-display window)))
- (let ((internal-event-code (get-event-code event-key))
diff --git a/dev-lisp/clx/files/gentoo-fix-obsolete-eval-when.patch b/dev-lisp/clx/files/gentoo-fix-obsolete-eval-when.patch
deleted file mode 100644
index e1df016b4a56..000000000000
--- a/dev-lisp/clx/files/gentoo-fix-obsolete-eval-when.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ur clx-0.7.4.orig/depdefs.lisp clx-0.7.4/depdefs.lisp
---- clx-0.7.4.orig/depdefs.lisp 2009-11-28 16:43:30.000000000 +0100
-+++ clx-0.7.4/depdefs.lisp 2009-11-29 22:56:38.000000000 +0100
-@@ -142,7 +142,7 @@
- ;;; overlapping array and image code.
-
- #+(or lispm vax little-endian Minima)
--(eval-when (eval compile load)
-+(eval-when (:compile-toplevel :load-toplevel :execute)
- (pushnew :clx-little-endian *features*))
-
- #+lcl3.0
diff --git a/dev-lisp/clx/files/gentoo-fix-unused-vars.patch b/dev-lisp/clx/files/gentoo-fix-unused-vars.patch
deleted file mode 100644
index 96dc255ffbf4..000000000000
--- a/dev-lisp/clx/files/gentoo-fix-unused-vars.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-diff -ur clx-0.7.4.orig/gl.lisp clx-0.7.4/gl.lisp
---- clx-0.7.4.orig/gl.lisp 2009-11-28 16:43:30.000000000 +0100
-+++ clx-0.7.4/gl.lisp 2009-11-29 22:46:37.000000000 +0100
-@@ -2274,7 +2274,7 @@
- (let ((constant 0)
- (calculated ()))
- (loop
-- for (name type length length-var) in argspecs
-+ for (nil type length length-var) in argspecs
- do (let ((byte-width (byte-width type)))
- (typecase length
- (number (incf constant (* byte-width length)))
-@@ -2287,7 +2287,7 @@
-
- (defun composite-args (argspecs)
- (loop
-- for (name type length length-var) in argspecs
-+ for (nil nil length length-var) in argspecs
- when (consp length)
- collect (list length-var length)))
-
-diff -ur clx-0.7.4.orig/xrender.lisp clx-0.7.4/xrender.lisp
---- clx-0.7.4.orig/xrender.lisp 2009-11-28 16:43:30.000000000 +0100
-+++ clx-0.7.4/xrender.lisp 2009-11-29 22:50:42.000000000 +0100
-@@ -408,7 +408,7 @@
-
- (macrolet ((foo (&rest specs)
- `(progn
-- ,@(loop for (type slot default) in specs
-+ ,@(loop for (nil slot nil) in specs
- for index from 0
- collect
- `(progn
-@@ -426,7 +426,7 @@
- (data +X-RenderChangePicture+)
- (picture picture)
- (mask
-- ,@(loop for (type slot default) in specs
-+ ,@(loop for (type slot nil) in specs
- for index from 0
- collect
- `(,type (and
-@@ -454,7 +454,7 @@
- (drawable
- &key format
- (picture (make-picture :display (drawable-display drawable)))
-- ,@(loop for (type slot default-value) in specs
-+ ,@(loop for (nil slot nil) in specs
- collect (cond ((eql slot 'clip-mask)
- `(clip-mask :none))
- (t
-@@ -475,7 +475,7 @@
- (drawable drawable)
- (picture-format format)
- (mask
-- ,@(loop for (type slot default) in specs
-+ ,@(loop for (type slot nil) in specs
- collect
- (cond ((eql slot 'clip-mask)
- (list type `(and
-@@ -487,7 +487,7 @@
- (%render-change-picture-clip-rectangles picture clip-mask))
- (setf (picture-format picture) format)
- (setf (picture-%server-values picture)
-- (vector ,@(loop for (type slot default) in specs
-+ (vector ,@(loop for (nil slot default) in specs
- collect
- `(or ,slot ,default))))
- (setf (picture-%values picture) (copy-seq (picture-%server-values picture)))