Updated for gtk-1.3.11
[clg] / clg.system
CommitLineData
0d07716f 1;;; -*- Mode: lisp -*-
2
3(setf
4 (logical-pathname-translations "clg")
5 '(("**;*.*.*" "/home/espen/src/clg/**/*.*.*")))
096f4d91 6
7;; Uncomment and edit the next line if pkg-config needs to search for
8;; .pc files in directories other than the default (/usr/lib/pkgconfig)
fe66d5f4 9:(push '(:PKG_CONFIG_PATH . "/opt/gnome/lib/pkgconfig") ext:*environment-list*)
0d07716f 10
11(load "clg:tools;config")
12(load "clg:tools;sharedlib")
13
14(import 'alien:load-shared-library)
15
096f4d91 16(defvar gtk-library-path (pkg-variable "gtk+-2.0" "libdir"))
17(defvar cmucl-include-path "/usr/src/cmucl-2.4.20/src/lisp")
18
19
edb133d2 20;; A hack to get around a bug in gdk's init code
21(defvar argc (alien:make-alien c-call:int))
22(defvar progname (alien:make-alien c-call:char))
23(defvar argv0 (alien:make-alien (* c-call:char)))
24(defvar argv (alien:make-alien (* (* c-call:char))))
25(setf (alien:deref argc) 1)
26(setf (alien:deref progname) 0)
27(setf (alien:deref argv0) progname)
28(setf (alien:deref argv) argv0)
29
096f4d91 30(setq mk::*cmu-errors-to-file* nil)
edb133d2 31
0d07716f 32(eval
33 `(mk:defsystem clg
096f4d91 34 :initially-do
35 (progn
36 (pkg-exists-p "glib-2.0" :atleast-version "1.3.9")
37 (pkg-exists-p "pango" :atleast-version "0.20")
38 (pkg-exists-p "gtk+-2.0" :atleast-version "1.3.9"))
0d07716f 39 :source-pathname "clg:"
40 :binary-pathname "clg:"
41 :components
42 ((:module tools
43 :components ("autoexport"))
45eacdd2 44 (:file "pcl" :source-pathname "glib;" :binary-pathname "glib;")
0d07716f 45 (:module glib
46 :initially-do
47 (progn
096f4d91 48 (load-shared-library "libglib-1.3.so")
49 (load-shared-library "libgobject-1.3.so" :init "g_type_init"))
0d07716f 50 :components
552f98a1 51 ((:file "callback"
52 :language :c
096f4d91 53 :source-extension "c"
54 :binary-extension "o"
552f98a1 55 :compiler-options
5ea59051 56 (:cflags ,(pkg-cflags "glib-2.0")
552f98a1 57 :optimize 2
58 :definitions (#+cmu CMUCL)
096f4d91 59 :include-paths (,cmucl-include-path)))
552f98a1 60 (:file "glib-package")
0d07716f 61 (:file "gutils" :depends-on ("glib-package"))
62 (:file "gforeign" :depends-on ("gutils"))
63 (:file "glib" :depends-on ("gforeign"))
5ea59051 64 (:file "proxy" :depends-on ("glib"))
65 (:file "gtype" :depends-on ("proxy"))
66 (:file "gboxed" :depends-on ("gtype"))
5ea59051 67 (:file "genums" :depends-on ("gtype"))
68 (:file "gparam" :depends-on ("genums"))
69 (:file "gobject" :depends-on ("gparam"))
edb133d2 70 (:file "gcallback" :depends-on ("gtype" "gparam" "gobject" "callback"))
552f98a1 71 (:file "glib-export"
5ea59051 72 :depends-on
73 ("gutils" "glib" "proxy" "gboxed" "gtype" "gparam" "gcallback"
74 "genums" "gobject")))
45eacdd2 75 :depends-on (tools "pcl"))
0d07716f 76 (:file "gdkglue"
77 :source-pathname "gdk;"
78 :binary-pathname "gdk;"
79 :initially-do
80 (progn
096f4d91 81 (load-shared-library "libgdk_pixbuf-1.3.so")
82 (load-shared-library "libgdk-x11-1.3.so"
5ea59051 83 :init "gdk_init"
0d07716f 84 :prototype '(function
edb133d2 85 c-call:void (* c-call:int) (* (* (* char))))
86 :initargs (list argc argv)))
0d07716f 87 :language :c
096f4d91 88 :source-extension "c"
89 :binary-extension "o"
5ea59051 90 :compiler-options (:cflags ,(pkg-cflags "gtk+-2.0")
91 :optimize 2))
0d07716f 92 (:module gdk
5ea59051 93 :components
94 ((:file "gdk-package")
95 (:file "gdk-export" :depends-on ("gdkevents" "gdktypes" "gdk"))
96 (:file "gdktypes" :depends-on ("gdk-package"))
97 (:file "gdkevents" :depends-on ("gdktypes"))
98 (:file "gdk" :depends-on ("gdkevents")))
99 :depends-on (glib "gdkglue"))
45eacdd2 100 (:module pango
096f4d91 101 :initially-do (load-shared-library "libpango.so")
45eacdd2 102 :components
103 ((:file "pango-package")
104 (:file "pango" :depends-on ("pango-package"))
105 (:file "pango-export" :depends-on ("pango")))
106 :depends-on (glib))
0d07716f 107 (:file "gtkglue"
108 :source-pathname "gtk;"
109 :binary-pathname "gtk;"
5ea59051 110 :initially-do
111 (progn
112 (load-shared-library
096f4d91 113 "libgtk-x11-1.3.so"
5ea59051 114 :init "gtk_init"
115 :prototype '(function
116 c-call:void
117 alien:system-area-pointer
118 alien:system-area-pointer)
119 :initargs (list (system:int-sap 0) (system:int-sap 0))))
0d07716f 120 :language :c
096f4d91 121 :source-extension "c"
122 :binary-extension "o"
5ea59051 123 :compiler-options (:cflags ,(pkg-cflags "gtk+-2.0")
0d07716f 124 :optimize 2
125 :definitions (#+cmu CMUCL)
096f4d91 126 :include-paths (,cmucl-include-path)))
0d07716f 127 (:module gtk
128 :components
129 ((:file "gtk-package")
57398331 130 (:file "gtk-export" :depends-on ("gtktypes" "gtk"))
45eacdd2 131 (:file "gtkobject" :depends-on ("gtk-package"))
132 (:file "gtktypes" :depends-on ("gtkobject"))
133 (:file "gtkwidget" :depends-on ("gtktypes"))
134 (:file "gtkcontainer" :depends-on ("gtktypes"))
57398331 135 (:file "gtk" :depends-on ("gtktypes"))
136 (:file "gtkutils" :depends-on ("gtk")))
45eacdd2 137 :depends-on (glib gdk pango "gtkglue")))))
0d07716f 138
856e2b87 139
140