Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 10 Jan 2013 19:46:08 +0000 (UTC)
From:      Brooks Davis <brooks@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r245265 - head/share/zoneinfo
Message-ID:  <201301101946.r0AJk8aJ007762@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: brooks
Date: Thu Jan 10 19:46:08 2013
New Revision: 245265
URL: http://svnweb.freebsd.org/changeset/base/245265

Log:
  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

Modified:
  head/share/zoneinfo/Makefile

Modified: head/share/zoneinfo/Makefile
==============================================================================
--- head/share/zoneinfo/Makefile	Thu Jan 10 19:26:56 2013	(r245264)
+++ head/share/zoneinfo/Makefile	Thu Jan 10 19:46:08 2013	(r245265)
@@ -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
-
-beforeinstall:
+TZBUILDDIR=	${.OBJDIR}/builddir
+TZBUILDSUBDIRS=	\
+		Africa \
+		America/Argentina \
+		America/Indiana \
+		America/Kentucky \
+		America/North_Dakota \
+		Antarctica \
+		Arctic \
+		Asia \
+		Atlantic \
+		Australia \
+		Etc \
+		Europe \
+		Indian \
+		Pacific \
+		SystemV
+
+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/
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201301101946.r0AJk8aJ007762>