(defvar *gtk-library-path* (pkg-variable "gtk+-2.0" "libdir"))
(defvar *cmucl-include-path* (ext:unix-namestring "target:lisp"))
-;; A hack to get around a bug in gdk's init code
-(defvar argc (make-alien c-call:int))
-(defvar progname (make-alien c-call:char))
-(defvar argv0 (make-alien (* c-call:char)))
-(defvar argv (make-alien (* (* c-call:char))))
-(setf (deref argc) 1)
-(setf (deref progname) 0)
-(setf (deref argv0) progname)
-(setf (deref argv) argv0)
-
;; Without this, MAKE uses "CLG:glib;.err" as a namestring, which fails.
;; TODO: Find and fix the bug, then remove this.
(setq mk::*cmu-errors-to-file* nil)
`(mk:defsystem clg
:initially-do
(progn
- (pkg-exists-p "glib-2.0" :atleast-version "1.3.9")
- (pkg-exists-p "pango" :atleast-version "0.20")
- (pkg-exists-p "gtk+-2.0" :atleast-version "1.3.9"))
+ (pkg-exists-p "glib-2.0" :atleast-version "2.0.0")
+ (pkg-exists-p "pango" :atleast-version "1.0.0")
+ (pkg-exists-p "atk" :atleast-version "1.0.0")
+ (pkg-exists-p "gtk+-2.0" :atleast-version "2.0.0"))
:source-pathname "clg:"
:binary-pathname "clg:"
:components
(:module glib
:initially-do
(progn
- (load-shared-library "libglib-1.3.so")
- (load-shared-library "libgobject-1.3.so" :init "g_type_init"))
+ (load-shared-library "libglib-2.0.so")
+ (load-shared-library "libgobject-2.0.so" :init "g_type_init"))
:components
((:file "callback"
:language :c
(:file "gboxed" :depends-on ("gtype"))
(:file "genums" :depends-on ("gtype"))
(:file "gparam" :depends-on ("genums"))
+ (:file "ginterface" :depends-on ("gtype"))
(:file "gobject" :depends-on ("gparam"))
(:file "gcallback" :depends-on ("gtype" "gparam" "gobject" "callback"))
(:file "glib-export"
:binary-pathname "gdk;"
:initially-do
(progn
- (load-shared-library "libgdk_pixbuf-1.3.so")
- (load-shared-library "libgdk-x11-1.3.so"
+ (load-shared-library "libgdk_pixbuf-2.0.so")
+ (load-shared-library "libgdk-x11-2.0.so"
:init "gdk_init"
:prototype '(function
- c-call:void (* c-call:int) (* (* (* char))))
- :initargs (list argc argv)))
+ c-call:void
+ system-area-pointer
+ system-area-pointer)
+ :initargs (list (system:int-sap 0) (system:int-sap 0))))
:language :c
:source-extension "c"
:binary-extension "o"
(:file "gdk" :depends-on ("gdkevents")))
:depends-on (glib "gdkglue"))
(:module pango
- :initially-do (load-shared-library "libpango.so")
+ :initially-do (load-shared-library "libpango-1.0.so")
:components
((:file "pango-package")
(:file "pango" :depends-on ("pango-package"))
(:file "pango-export" :depends-on ("pango")))
:depends-on (glib))
+ (:module atk
+ :initially-do (load-shared-library "libatk-1.0.so")
+ :components
+ ((:file "atk-package")
+ (:file "atk" :depends-on ("atk-package"))
+ (:file "atk-export" :depends-on ("atk")))
+ :depends-on (glib))
(:file "gtkglue"
:source-pathname "gtk;"
:binary-pathname "gtk;"
:initially-do
(progn
(load-shared-library
- "libgtk-x11-1.3.so"
+ "libgtk-x11-2.0.so"
:init "gtk_init"
:prototype '(function
c-call:void
(:file "gtkcontainer" :depends-on ("gtktypes"))
(:file "gtk" :depends-on ("gtktypes"))
(:file "gtkutils" :depends-on ("gtk")))
- :depends-on (glib gdk pango "gtkglue")))))
-
-
-
+ :depends-on (glib gdk pango atk "gtkglue")))))