31 lines
571 B
Racket
31 lines
571 B
Racket
#lang racket
|
|
|
|
(require racket-makefile)
|
|
|
|
;; Functional use: press Run in DrRacket and use (make 'all), (make 'clean),
|
|
;; or call a generated target procedure directly.
|
|
|
|
(define CC 'cc)
|
|
(define CFLAGS '(-Wall -O2))
|
|
|
|
(makefile hello
|
|
(default-target all)
|
|
(phony all clean setup test)
|
|
|
|
(target all
|
|
(deps "hello"))
|
|
|
|
(target "hello"
|
|
(deps "hello.c")
|
|
(run `(,CC ,@CFLAGS -o $target $<)))
|
|
|
|
(target clean
|
|
(rm-f "hello")
|
|
(rm-rf "compiled"))
|
|
|
|
(target setup
|
|
(raco '(setup racket-makefile)))
|
|
|
|
(target test
|
|
(raco '(test -p racket-makefile))))
|