gen.lua (825B)
- cflags{
- '-std=c99', '-Wall', '-Wpedantic', '-Wno-maybe-uninitialized',
- '-I $dir',
- [[-D 'ZIC_BLOAT_DEFAULT="slim"']],
- }
- exe('zic', {'zic.c'})
- file('bin/zic', '755', '$outdir/zic')
- man{'zic.8'}
- local srcs = {
- 'africa',
- 'antarctica',
- 'asia',
- 'australasia',
- 'europe',
- 'northamerica',
- 'southamerica',
- 'etcetera',
- 'factory',
- }
- local zones = {}
- local data = load 'data.lua'
- for _, src in ipairs(srcs) do
- for _, name, target in sortedpairs(data[src]) do
- if target then
- target = name:gsub('[^/]+', '..'):sub(1, -3)..target
- sym('share/zoneinfo/'..name, target)
- else
- file('share/zoneinfo/'..name, '644', '$outdir/zoneinfo/'..name)
- table.insert(zones, name)
- end
- end
- end
- rule('zic', 'zic -d $outdir/zoneinfo $in')
- build('zic', expand{'$outdir/zoneinfo/', zones}, expand{'$srcdir/', srcs})
- fetch 'git'