@deffn Procedure make-configuration . options
@var{Options} should be a list of strings to be passed as arguments to
-the @code{./configure} scripts of the core and plugins.
+the @code{./configure} scripts of the core and plugins. They are
+not shell escaped. A space is inserted between them.
@end deffn
An example @file{devops-config.scm} file:
-
@smallexample
;; Shared configuration.
(load (merge-pathnames "devops/config.scm"
(or core) but no git tags.
@end deffn
+@deffn Procedure tag-options . options
+@var{Options} should be a list of strings to be passed as arguments in
+the @code{git tag} shell command line used to tag a release. They are
+not shell escaped. A space is inserted between them.
+@end deffn
+
@node Build Process
@section Build Process
;;; See devops.texi for complete details.
-(define (devops:main)
+(define (main)
(let* ((cmdl (command-line))
(arg1 (and (pair? cmdl) (car cmdl))))
(cond ((equal? arg1 "status") (apply devops:status (cdr cmdl)))
\f
;;;; Release
-(define git-tag-create-options "")
+(define tag-create-options "")
+
+(define (tag-options . options)
+ (guarantee-list-of string? options 'tag-options)
+ (if (not (null? options))
+ (set! tag-create-options ((string-joiner* 'infix " ") options)))
+ tag-create-options)
(define (devops:release #!optional plugin)
(load "devops/config.scm")
(runl "git archive --prefix="project"/ HEAD"
" | ( cd devops/"pkgvers" && tar xf - )")
(begin
- (runl "git tag "git-tag-create-options" -m \"\" "pkgvers)
+ (runl "git tag "tag-create-options" -m \"\" "pkgvers)
(runl "git archive --prefix="project"/ "pkgvers
" | ( cd devops/"pkgvers" && tar xf - )")))
(runl "cd devops/"pkgvers" && "project"/dist/make-src-files standard")
(runl "git archive --prefix="pkgvers"/ HEAD -- "dir
" | ( cd devops && tar xf - )")
(begin
- (runl "git tag "git-tag-create-options" -m \"\" "pkgvers)
+ (runl "git tag "tag-create-options" -m \"\" "pkgvers)
(runl "git archive --prefix="pkgvers"/ "pkgvers" -- "dir
" | ( cd devops && tar xf - )")))
(runl "cd devops/"pkgvers"/"dir" && ./autogen.sh")
(define make-config "")
(define (make-configuration . args)
+ (guarantee-list-of string? args 'make-configuration)
(if (not (null? args))
- (begin
- (if (not (list-of-type? args string?))
- (error:wrong-type-argument args "list of strings"
- 'make-configuration))
- (set! make-config (decorated-string-append "" " " "" args))))
+ (set! make-config ((string-joiner* 'infix " ") args)))
make-config)
(define (lndir dest)