-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathlibrary.lisp
47 lines (34 loc) · 1.18 KB
/
library.lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
(defpackage claw-raylib.library
(:use #:cl #:alexandria))
(in-package #:claw-raylib.library)
(pushnew
(namestring
(merge-pathnames #P"lib/" (asdf:component-pathname (asdf:find-system '#:claw-raylib))))
cffi:*foreign-library-directories* :test #'string=)
(cffi:define-foreign-library libraylib
(:unix "libraylib.so")
(t (:default "libraylib")))
(cffi:use-foreign-library libraylib)
(cffi:define-foreign-library libraylib-adapter
(:unix "libraylib-adapter.so")
(t (:default "libraylib-adapter")))
(cffi:use-foreign-library libraylib-adapter)
(push :raylib *features*)
(cffi:define-foreign-library librlgl-adapter
(:unix "librlgl-adapter.so")
(t (:default "librlgl-adapter")))
(cffi:use-foreign-library librlgl-adapter)
(push :rlgl *features*)
(cffi:define-foreign-library libraygui
(:unix "libraygui.so")
(t (:default "libraygui")))
(cffi:define-foreign-library libraygui-adapter
(:unix "libraygui-adapter.so")
(t (:default "libraygui-adapter")))
(handler-case
(progn
(cffi:use-foreign-library libraygui)
(cffi:use-foreign-library libraygui-adapter)
(push :raygui *features*))
(cffi:load-foreign-library-error ()
(delete-package '#:raygui)))