nimiux 14/12/23 19:41:47
Added: gentoo-fix-dynamic-extent-sbcl-1.0.45.patch
gentoo-fix-asd.patch gentoo-fix-unused-vars.patch
gentoo-fix-dep-openmcl.patch
gentoo-fix-obsolete-eval-when.patch
Log:
Add current version and live ebuild of package CLX. Should replace package
cl-clx
(Portage version: 2.2.14/cvs/Linux x86_64, signed Manifest commit with key
F253DB15)
Revision Changes Path
1.1
dev-lisp/clx/files/gentoo-fix-dynamic-extent-sbcl-1.0.45.patch
file :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lisp/clx/files/gentoo-fix-dynamic-extent-sbcl-1.0.45.patch?rev=1.1&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lisp/clx/files/gentoo-fix-dynamic-extent-sbcl-1.0.45.patch?rev=1.1&content-type=text/plain
Index: gentoo-fix-dynamic-extent-sbcl-1.0.45.patch
===================================================================
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))
1.1 dev-lisp/clx/files/gentoo-fix-asd.patch
file :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lisp/clx/files/gentoo-fix-asd.patch?rev=1.1&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lisp/clx/files/gentoo-fix-asd.patch?rev=1.1&content-type=text/plain
Index: gentoo-fix-asd.patch
===================================================================
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)))
1.1 dev-lisp/clx/files/gentoo-fix-unused-vars.patch
file :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lisp/clx/files/gentoo-fix-unused-vars.patch?rev=1.1&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lisp/clx/files/gentoo-fix-unused-vars.patch?rev=1.1&content-type=text/plain
Index: gentoo-fix-unused-vars.patch
===================================================================
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)))
1.1 dev-lisp/clx/files/gentoo-fix-dep-openmcl.patch
file :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lisp/clx/files/gentoo-fix-dep-openmcl.patch?rev=1.1&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lisp/clx/files/gentoo-fix-dep-openmcl.patch?rev=1.1&content-type=text/plain
Index: gentoo-fix-dep-openmcl.patch
===================================================================
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
1.1 dev-lisp/clx/files/gentoo-fix-obsolete-eval-when.patch
file :
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lisp/clx/files/gentoo-fix-obsolete-eval-when.patch?rev=1.1&view=markup
plain:
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-lisp/clx/files/gentoo-fix-obsolete-eval-when.patch?rev=1.1&content-type=text/plain
Index: gentoo-fix-obsolete-eval-when.patch
===================================================================
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