blob: 30a78a24d46086fb7d33345cbade9fa66eebf214 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
#!/usr/bin/guile \
--no-auto-compile -s
!#
(define // file-name-separator-string)
(define here (cond ((current-filename) => dirname)
(else (getcwd))))
(define module-dir (string-append here // "module"))
(add-to-load-path module-dir)
(use-modules (util))
;; --with-zoneinfo
(define zoneinfo #t)
;; when zoneinfo
(use-modules (ice-9 rdelim))
(define pipe
(-> here
(string-append "/tzget")
((@ (ice-9 popen) open-input-pipe))))
(define path (read-line pipe))
(define names (string-split (read-line pipe) #\space))
(use-modules (util io)
(datetime))
(with-atomic-output-to-file
(string-append module-dir // "autoconfig.scm")
(lambda ()
(display ";;; Commentary:") (newline)
(display ";;; File genererated by ./configure on ")
(display (datetime->string
(current-datetime) "~Y-~m-~d ~H:~M:~S~Z"))
(newline)
(display ";;; DONT make any manual changes") (newline)
(display ";;; Code:") (newline)
(for-each (@ (ice-9 pretty-print) pretty-print)
`((define-module (autoconfig)
use-module: (util config))
,@(when zoneinfo
`((set-config! 'tz-file ,path)
(set-config! 'tz-list (quote ,names))))))))
|