From: espen Date: Wed, 6 Jun 2007 10:43:54 +0000 (+0000) Subject: Improved support for multiple OS platforms X-Git-Url: https://git.distorted.org.uk/~mdw/clg/commitdiff_plain/8f12a0ff07ea6a101e778c09218d5efaf319d950 Improved support for multiple OS platforms --- diff --git a/atk/atk.lisp b/atk/atk.lisp index 1837108..0c78e96 100644 --- a/atk/atk.lisp +++ b/atk/atk.lisp @@ -20,14 +20,12 @@ ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -;; $Id: atk.lisp,v 1.6 2006-08-30 11:08:12 espen Exp $ +;; $Id: atk.lisp,v 1.7 2007-06-06 10:43:54 espen Exp $ (in-package "ATK") (eval-when (:compile-toplevel :load-toplevel :execute) - (init-types-in-library - #.(concatenate 'string (pkg-config:pkg-variable "atk" "libdir") - "/libatk-1.0." asdf:*dso-extension*) :prefix "atk_")) + (init-types-in-library atk "libatk-1.0" :prefix "atk_")) (define-types-by-introspection "Atk") diff --git a/gdk/gdktypes.lisp b/gdk/gdktypes.lisp index 97cba9d..2adbb93 100644 --- a/gdk/gdktypes.lisp +++ b/gdk/gdktypes.lisp @@ -20,17 +20,13 @@ ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -;; $Id: gdktypes.lisp,v 1.27 2006-09-05 13:14:10 espen Exp $ +;; $Id: gdktypes.lisp,v 1.28 2007-06-06 10:43:54 espen Exp $ (in-package "GDK") (eval-when (:compile-toplevel :load-toplevel :execute) - (init-types-in-library #.(concatenate 'string - (pkg-config:pkg-variable "gtk+-2.0" "libdir") - "/libgdk-x11-2.0." asdf:*dso-extension*) :prefix ("gdk_" "_gdk_")) - (init-types-in-library #.(concatenate 'string - (pkg-config:pkg-variable "gtk+-2.0" "libdir") - "/libgdk_pixbuf-2.0." asdf:*dso-extension*) :prefix "gdk_")) + (init-types-in-library gdk "libgdk-2.0" :prefix ("gdk_" "_gdk_")) + (init-types-in-library gdk "libgdk_pixbuf-2.0" :prefix "gdk_")) (defclass color (boxed) @@ -157,6 +153,7 @@ :reader display-devices :type (copy-of (glist device))))) + ;; TODO: add unbound options ("GdkDrawable" :slots ((display diff --git a/glib/gtype.lisp b/glib/gtype.lisp index 747f0a8..e24b6b8 100644 --- a/glib/gtype.lisp +++ b/glib/gtype.lisp @@ -20,7 +20,7 @@ ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -;; $Id: gtype.lisp,v 1.61 2007-02-23 12:53:08 espen Exp $ +;; $Id: gtype.lisp,v 1.62 2007-06-06 10:43:54 espen Exp $ (in-package "GLIB") @@ -246,8 +246,9 @@ process))))) -(defmacro init-types-in-library (filename &key prefix ignore) - (let ((names (%find-types-in-library filename prefix ignore))) +(defmacro init-types-in-library (system library &key prefix ignore) + (let* ((filename (asdf:component-pathname (asdf:find-component (asdf:find-system system) library))) + (names (%find-types-in-library filename prefix ignore))) `(progn ,@(mapcar #'(lambda (name) `(progn @@ -513,7 +514,7 @@ ;; The argument is a list where each elements is on the form ;; (type . dependencies). This function will not handle indirect -;; dependencies and types depending on them selve. +;; dependencies and types depending on them selves. (defun sort-types-topologicaly (unsorted) (flet ((depend-p (type1) (find-if #'(lambda (type2) @@ -627,4 +628,4 @@ ;;;; Initialize all non static types in GObject -(init-types-in-library #.(concatenate 'string (pkg-config:pkg-variable "glib-2.0" "libdir") "/libgobject-2.0." asdf:*dso-extension*)) +(init-types-in-library glib "libgobject-2.0") diff --git a/gtk/gtkobject.lisp b/gtk/gtkobject.lisp index 2444c08..f537635 100644 --- a/gtk/gtkobject.lisp +++ b/gtk/gtkobject.lisp @@ -20,7 +20,7 @@ ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -;; $Id: gtkobject.lisp,v 1.41 2007-05-10 20:13:42 espen Exp $ +;; $Id: gtkobject.lisp,v 1.42 2007-06-06 10:43:54 espen Exp $ (in-package "GTK") @@ -29,9 +29,7 @@ ;;;; Superclass for the gtk class hierarchy (eval-when (:compile-toplevel :load-toplevel :execute) - (init-types-in-library - #.(concatenate 'string (pkg-config:pkg-variable "gtk+-2.0" "libdir") - "/libgtk-x11-2.0." asdf:*dso-extension*)) + (init-types-in-library gtk "libgtk-2.0") (defclass %object (gobject) () diff --git a/pango/pango.lisp b/pango/pango.lisp index 3a0a8f9..56eed96 100644 --- a/pango/pango.lisp +++ b/pango/pango.lisp @@ -20,27 +20,15 @@ ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -;; $Id: pango.lisp,v 1.13 2007-04-06 14:51:26 espen Exp $ +;; $Id: pango.lisp,v 1.14 2007-06-06 10:43:54 espen Exp $ (in-package "PANGO") (eval-when (:compile-toplevel :load-toplevel :execute) - (init-types-in-library #.(concatenate 'string - (pkg-variable "pango" "libdir") - "/libpango-1.0." asdf:*dso-extension*) - :prefix "pango_") - (init-types-in-library #.(concatenate 'string - (pkg-variable "pango" "libdir") - "/libpangoxft-1.0." asdf:*dso-extension*) - :prefix "pango_xft") - (init-types-in-library #.(concatenate 'string - (pkg-variable "pango" "libdir") - "/libpangoft2-1.0." asdf:*dso-extension*) - :prefix "pango_fc") - (init-types-in-library #.(concatenate 'string - (pkg-variable "pango" "libdir") - "/libpangocairo-1.0." asdf:*dso-extension*) - :prefix "pango_cairo")) + (init-types-in-library pango "libpango-1.0" :prefix "pango_") + (init-types-in-library pango "libpangoxft-1.0" :prefix "pango_xft") + (init-types-in-library pango "libpangoft2-1.0" :prefix "pango_fc") + (init-types-in-library pango "libpangocairo-1.0" :prefix "pango_cairo")) (eval-when (:compile-toplevel :load-toplevel :execute)