source: project/release/4/sdl-base/trunk/sdl-base.setup @ 27326

Last change on this file since 27326 was 27326, checked in by megane, 9 years ago

sdl-base: - copied initial sources from sdl egg

File size: 1.7 KB
Line 
1;;;; sdl.setup -*- Scheme -*-
2
3
4(define (check-depends)
5     
6  (let* ((lib-fun-pack '(("SDL" "SDL_Init" "libsdl1.2-dev")
7                         ("SDL_gfx" "polygonColor" "libsdl-gfx1.2-dev")
8                         ("SDL_net" "SDLNet_Init" "libsdl-net1.2-dev")
9                         ("SDL_ttf" "TTF_Init" "libsdl-ttf2.0-dev")
10                         ("SDL_image" "IMG_Init" "libsdl-image1.2-dev")))
11         (missing (filter (lambda (lib-fun)
12                            (not (find-library (first lib-fun) (second lib-fun))))
13                          lib-fun-pack)))
14    (for-each
15     (lambda (lib-fun)
16       (print "\nWARNING: You seem to be missing the library " (first lib-fun) "!"))
17     missing)
18    (cond-expand
19     (linux
20      (unless (null? missing)
21        (print "\nSuggested package(s) to install: " (map third missing))))
22     (else #f))))
23
24(check-depends)
25
26(let* ((escape-flags (lambda (fs)
27                       (map
28                        (lambda (s) (if (not (or (string-prefix-ci? "-l" s)
29                                                 (string-prefix-ci? "-i" s)
30                                                 (string-prefix-ci? "-d" s)))
31                                        (sprintf " -C ~a " s)
32                                        (sprintf " ~a " s)))
33                        (string-split fs))))
34       (sdl-cflags (apply string-append
35                          (escape-flags
36                           (with-input-from-pipe "sdl-config --cflags" read-line))))
37       (sdl-lflags (apply string-append
38                          ;; sdl-config doesn't give these
39                          " -lSDL_gfx -lSDL_net -lSDL_ttf -lSDL_image"
40                          (escape-flags
41                           (with-input-from-pipe "sdl-config --libs" read-line))))
42       (types? (version>=? (chicken-version) "4.7.4"))
43       (files (append '("sdl.so"
44                        "sdl.import.so"
45                        "sdl-foreign-types-include.scm")
46                      (if types? '("sdl.types") '()))))
47  (compile ,@(if types? '(-emit-type-file sdl.types) '())
48           -s -O3 -d1 sdl.scm -j sdl -lSDL ,sdl-cflags ,sdl-lflags)
49  (compile -s -O3 -d0 sdl.import.scm ,sdl-cflags ,sdl-lflags)
50
51  (install-extension 'sdl files '((version "0.5.5"))))
52
Note: See TracBrowser for help on using the repository browser.