diff options
author | brooks <brooks@FreeBSD.org> | 2013-01-10 19:46:08 +0000 |
---|---|---|
committer | brooks <brooks@FreeBSD.org> | 2013-01-10 19:46:08 +0000 |
commit | 7aba5649405b3a4a015471e42981705bae090148 (patch) | |
tree | 5c8572fe5e361c169d90350f974e7e74e88e0734 /share/zoneinfo | |
parent | f8200d9bc4de2e18914c36bbeb76cffced6288c5 (diff) | |
download | FreeBSD-src-7aba5649405b3a4a015471e42981705bae090148.zip FreeBSD-src-7aba5649405b3a4a015471e42981705bae090148.tar.gz |
Rather than using zic to both compile and install zoneinfo files,
generate the files during the build and install them with install(1).
This was the one place in installworld where files (vs links) were
installed by a tool other than install.
Reviewed by: edwin, jilles
Diffstat (limited to 'share/zoneinfo')
-rw-r--r-- | share/zoneinfo/Makefile | 35 |
1 files changed, 31 insertions, 4 deletions
diff --git a/share/zoneinfo/Makefile b/share/zoneinfo/Makefile index 6de8ef5..97181da 100644 --- a/share/zoneinfo/Makefile +++ b/share/zoneinfo/Makefile @@ -29,6 +29,7 @@ # CLEANFILES+= yearistype +CLEANDIRS+= builddir CONTRIBDIR= ${.CURDIR}/../../contrib/tzdata/ .PATH: ${CONTRIBDIR} @@ -48,13 +49,39 @@ TZFILES+= backward systemv TZFILES:= ${TZFILES:S/^/${CONTRIBDIR}/} -all: yearistype +TZBUILDDIR= ${.OBJDIR}/builddir +TZBUILDSUBDIRS= \ + Africa \ + America/Argentina \ + America/Indiana \ + America/Kentucky \ + America/North_Dakota \ + Antarctica \ + Arctic \ + Asia \ + Atlantic \ + Australia \ + Etc \ + Europe \ + Indian \ + Pacific \ + SystemV -beforeinstall: +all: zoneinfo + +.PHONY: zoneinfo +zoneinfo: yearistype ${TDATA} + mkdir -p ${TZBUILDDIR} + cd ${TZBUILDDIR}; mkdir -p ${TZBUILDSUBDIRS} umask 022; cd ${.CURDIR}; \ - zic -D -d ${DESTDIR}/usr/share/zoneinfo -p ${POSIXRULES} \ - -u ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ + zic -D -d ${TZBUILDDIR} -p ${POSIXRULES} -m ${NOBINMODE} \ ${LEAPFILE} -y ${.OBJDIR}/yearistype ${TZFILES} + +beforeinstall: + cd ${TZBUILDDIR} && \ + find . -type f -print | xargs -I _FILE_ ${INSTALL} \ + -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ + _FILE_ ${DESTDIR}/usr/share/zoneinfo/_FILE_ ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ ${CONTRIBDIR}/zone.tab ${DESTDIR}/usr/share/zoneinfo/ |