;;;; sdl.setup -*- Scheme -*- (let* ((escape-flags (lambda (fs) (map (lambda (s) (if (not (or (string-prefix-ci? "-l" s) (string-prefix-ci? "-i" s) (string-prefix-ci? "-d" s))) (sprintf " -C ~a " s) (sprintf " ~a " s))) (string-split fs)))) (sdl-cflags (apply string-append (escape-flags (with-input-from-pipe "sdl-config --cflags" read-line)))) (sdl-lflags (apply string-append " -lSDL_image" (escape-flags (with-input-from-pipe "sdl-config --libs" read-line)))) (types? (version>=? (chicken-version) "4.7.4")) (files (append '("sdl-img.so" "sdl-img.import.so") (if types? '("sdl-img.types") '())))) (compile ,@(if types? '(-emit-type-file sdl-img.types) '()) -v -s -O3 -d1 -I ,(repository-path) sdl-img.scm -j sdl-img ,sdl-cflags ,sdl-lflags) (compile -s -O3 -d0 sdl-img.import.scm ,sdl-cflags ,sdl-lflags) (install-extension 'sdl-img files '((version "0.1"))))