Made Makefile #rash complient

This commit is contained in:
2026-08-17 16:37:48 +02:00
parent d2e2298731
commit 6834b3d2ac
3 changed files with 62 additions and 41 deletions
+47 -40
View File
@@ -1,51 +1,58 @@
#lang racket #lang rash
(require racket-makefile (require racket-makefile/rash
package-zipper package-zipper
net/sendurl net/sendurl
) )
(target all
(displayln "use (make clean) or (make package)")
)
(target clean
(for-each (λ (f) (displayln f) (rm-f f)) (list-files "." #px"([.]bak|~)$" #:recursive #t))
(for-each (λ (d) (displayln d) (rm-rf d)) (list-dirs "." #px"(compiled|doc|docs)$" #:recursive #t))
(when (directory-exists? "scribblings")
(for-each (λ (f) (displayln f) (rm-f f)) (list-files "scribblings" #px"[.](css|js|html)$")))
)
(target package
(deps clean)
(zip-package))
(target zip
(deps package))
(define doc-target "docs/git.html") (define doc-target "docs/git.html")
(define doc-src "scribblings/git.scrbl") (define doc-src "scribblings/git.scrbl")
(target doc-target (makefile git-cli
(deps doc-src)
(unless (directory-exists? "docs")
(make-directory "docs"))
(raco '(scribble --html +m --dest "docs" $<)))
(target doc (target all
(deps doc-target) (displayln "use (make clean) or (make package)")
(displayln "Documentation built") )
)
(target showdoc (target clean
(deps doc) (for-each (λ (f) (displayln f) (rm-f f)) (list-files "." #px"([.]bak|~)$" #:recursive #t))
(send-url/file doc-target)) (for-each (λ (d) (displayln d) (rm-rf d)) (list-dirs "." #px"(compiled|doc|docs)$" #:recursive #t))
(when (directory-exists? "scribblings")
(for-each (λ (f) (displayln f) (rm-f f)) (list-files "scribblings" #px"[.](css|js|html)$")))
)
(target refresh (target version
(displayln "Refreshing makefile") (displayln
(refresh-makefile) (git 'next-version)))
(displayln "done.")
) (target package
(target setup (deps clean)
(raco '(setup git))) (zip-package))
(target zip
(deps package))
(target doc-target
(deps doc-src)
(unless (directory-exists? "docs")
(make-directory "docs"))
(raco '(scribble --html +m --dest "docs" $<)))
(target doc
(deps doc-target)
(displayln "Documentation built")
)
(target showdoc
(deps doc)
(send-url/file doc-target))
(target refresh
(displayln "Refreshing makefile")
(refresh-makefile)
(displayln "done.")
)
(target setup
(raco '(setup git)))
)
+14
View File
@@ -0,0 +1,14 @@
#lang racket/base
(require
"main.rkt"
"private/utils.rkt"
racket/string)
(define (git-cli)
(let ((re #px"\s+"))
(let loop ()
(let ((cmd (string-trim (input-prompt "git>"))))
+1 -1
View File
@@ -2,7 +2,7 @@
(define collection "git-cli") (define collection "git-cli")
(define pkg-desc "Command-line-like Git operations for Racket, interface to the git cli command") (define pkg-desc "Command-line-like Git operations for Racket, interface to the git cli command")
(define version "0.4.2") (define version "0.4.4")
(define pkg-authors '("Hans Dijkema")) (define pkg-authors '("Hans Dijkema"))
(define license 'MIT) (define license 'MIT)