Merge remote-tracking branch 'andy128k/master'
[cl-gtk2.git] / gdk / gdk.package.lisp
blob0e4f12b7377c6398869c2c27a8a014d8ea1e813e
1 (defpackage :gdk
2 (:use :cl :gobject :cffi :pango :iter)
3 (:export #:gdk-window-events
4 #:gdk-atom-as-string))
6 (in-package :gdk)
8 (glib:at-init ()
9 (eval-when (:compile-toplevel :load-toplevel :execute)
10 (define-foreign-library gdk
11 ((:and :unix (:not :darwin)) (:or "libgdk-x11-2.0.so.0" "libgdk-x11-2.0.so"))
12 (:darwin (:or "libgdk-x11-2.0.0.dylib" "libgdk-x11-2.0.dylib"))
13 (:windows "libgdk-win32-2.0-0.dll")
14 (t "libgdk-2.0"))
15 (define-foreign-library gdk-pixbuf
16 ((:and :unix (:not :darwin)) (:or "libgdk_pixbuf-2.0.so.0" "libgdk_pixbuf-2.0.so"))
17 (:darwin (:or "libgdk_pixbuf-2.0.0.dylib" "libgdk_pixbuf-2.0.dylib"))
18 (:windows (:or "libgdk_pixbuf-win32-2.0-0" "libgdk_pixbuf-2.0-0.dll"))
19 (t "libgdk_pixbuf-2.0"))
21 (define-foreign-library gtk
22 ((:and :unix (:not :darwin)) (:or "libgtk-x11-2.0.so.0" "libgtk-x11-2.0.so"))
23 (:darwin (:or "libgtk-x11-2.0.0.dylib" "libgtk-x11-2.0.dylib"))
24 (:windows (:or "libgtk-2.0-0.dll" "libgtk-win32-2.0-0.dll"))
25 (t "libgtk-2.0")))
27 (use-foreign-library gdk)
28 (use-foreign-library gdk-pixbuf)
29 (use-foreign-library gtk))
31 (defcvar (*gtk-major-version* "gtk_major_version" :read-only t :library gtk) :uint)
32 (defcvar (*gtk-minor-version* "gtk_minor_version" :read-only t :library gtk) :uint)
33 (defcvar (*gtk-micro-version* "gtk_micro_version" :read-only t :library gtk) :uint)
34 (defcvar (*gtk-binary-age* "gtk_binary_age" :read-only t :library gtk) :uint)
35 (defcvar (*gtk-interface-age* "gtk_interface_age" :read-only t :library gtk) :uint)
37 (glib:push-library-version-features gtk *gtk-major-version* *gtk-minor-version*
38 2 2
39 2 4
40 2 6
41 2 8
42 2 10
43 2 12
44 2 14
45 2 16
46 2 18)
48 (glib:require-library-version "Gtk+" 2 16 *gtk-major-version* *gtk-minor-version*)