Makefile revision 1.37
11.1Smlelstv# This file is in the public domain, so clarified as of 21.1Smlelstv# 2009-05-17 by Arthur David Olson. 31.1Smlelstv 41.10Schristos# Package name for the code distribution. 51.10SchristosPACKAGE= tzcode 61.10Schristos 71.34Schristos# Version number for the distribution, overridden in the 'tarballs' rule below. 81.35SchristosVERSION= unknown 91.9Schristos 101.9Schristos# Email address for bug reports. 111.9SchristosBUGEMAIL= tz@iana.org 121.6Schristos 131.1Smlelstv# Change the line below for your time zone (after finding the zone you want in 141.1Smlelstv# the time zone files, or adding it to a time zone file). 151.1Smlelstv# Alternately, if you discover you've got the wrong time zone, you can just 161.1Smlelstv# zic -l rightzone 171.1Smlelstv# to correct things. 181.1Smlelstv# Use the command 191.1Smlelstv# make zonenames 201.1Smlelstv# to get a list of the values you can use for LOCALTIME. 211.1Smlelstv 221.4SchristosLOCALTIME= GMT 231.1Smlelstv 241.1Smlelstv# If you want something other than Eastern United States time as a template 251.1Smlelstv# for handling POSIX-style time zone environment variables, 261.1Smlelstv# change the line below (after finding the zone you want in the 271.1Smlelstv# time zone files, or adding it to a time zone file). 281.1Smlelstv# (When a POSIX-style environment variable is handled, the rules in the 291.1Smlelstv# template file are used to determine "spring forward" and "fall back" days and 301.15Schristos# times; the environment variable itself specifies UT offsets of standard and 311.1Smlelstv# summer time.) 321.1Smlelstv# Alternately, if you discover you've got the wrong time zone, you can just 331.1Smlelstv# zic -p rightzone 341.1Smlelstv# to correct things. 351.1Smlelstv# Use the command 361.1Smlelstv# make zonenames 371.1Smlelstv# to get a list of the values you can use for POSIXRULES. 381.1Smlelstv# If you want POSIX compatibility, use "America/New_York". 391.1Smlelstv 401.1SmlelstvPOSIXRULES= America/New_York 411.1Smlelstv 421.1Smlelstv# Also see TZDEFRULESTRING below, which takes effect only 431.1Smlelstv# if the time zone files cannot be accessed. 441.1Smlelstv 451.1Smlelstv# Everything gets put in subdirectories of. . . 461.1Smlelstv 471.1SmlelstvTOPDIR= /usr/local 481.1Smlelstv 491.1Smlelstv# "Compiled" time zone information is placed in the "TZDIR" directory 501.1Smlelstv# (and subdirectories). 511.1Smlelstv# Use an absolute path name for TZDIR unless you're just testing the software. 521.1Smlelstv 531.15SchristosTZDIR_BASENAME= zoneinfo 541.15SchristosTZDIR= $(TOPDIR)/etc/$(TZDIR_BASENAME) 551.1Smlelstv 561.14Schristos# Types to try, as an alternative to time_t. int64_t should be first. 571.14SchristosTIME_T_ALTERNATIVES= int64_t int32_t uint32_t uint64_t 581.14Schristos 591.1Smlelstv# The "tzselect", "zic", and "zdump" commands get installed in. . . 601.1Smlelstv 611.1SmlelstvETCDIR= $(TOPDIR)/etc 621.1Smlelstv 631.1Smlelstv# If you "make INSTALL", the "date" command gets installed in. . . 641.1Smlelstv 651.1SmlelstvBINDIR= $(TOPDIR)/bin 661.1Smlelstv 671.1Smlelstv# Manual pages go in subdirectories of. . . 681.1Smlelstv 691.1SmlelstvMANDIR= $(TOPDIR)/man 701.1Smlelstv 711.1Smlelstv# Library functions are put in an archive in LIBDIR. 721.1Smlelstv 731.1SmlelstvLIBDIR= $(TOPDIR)/lib 741.1Smlelstv 751.37Schristos# If you want only POSIX time, with time values interpreted as 761.37Schristos# seconds since the epoch (not counting leap seconds), use 771.1Smlelstv# REDO= posix_only 781.37Schristos# below. If you want want only "right" time, with values interpreted 791.37Schristos# as seconds since the epoch (counting leap seconds), use 801.1Smlelstv# REDO= right_only 811.1Smlelstv# below. If you want both sets of data available, with leap seconds not 821.1Smlelstv# counted normally, use 831.1Smlelstv# REDO= posix_right 841.1Smlelstv# below. If you want both sets of data available, with leap seconds counted 851.1Smlelstv# normally, use 861.1Smlelstv# REDO= right_posix 871.32Schristos# below. POSIX mandates that leap seconds not be counted; for compatibility 881.37Schristos# with it, use "posix_only" or "posix_right". Use POSIX time on systems with 891.37Schristos# leap smearing; this can work better than unsmeared "right" time with 901.37Schristos# applications that are not leap second aware, and is closer to unsmeared 911.37Schristos# "right" time than unsmeared POSIX time is (e.g., 0.5 vs 1.0 s max error). 921.1Smlelstv 931.1SmlelstvREDO= posix_right 941.1Smlelstv 951.32Schristos# If you want out-of-scope and often-wrong data from the file 'backzone', use 961.32Schristos# PACKRATDATA= backzone 971.32Schristos# To omit this data, use 981.32Schristos# PACKRATDATA= 991.32Schristos 1001.32SchristosPACKRATDATA= 1011.32Schristos 1021.1Smlelstv# Since "." may not be in PATH... 1031.1Smlelstv 1041.1SmlelstvYEARISTYPE= ./yearistype 1051.1Smlelstv 1061.1Smlelstv# Non-default libraries needed to link. 1071.1SmlelstvLDLIBS= 1081.1Smlelstv 1091.1Smlelstv# Add the following to the end of the "CFLAGS=" line as needed. 1101.19Schristos# -DBIG_BANG=-9999999LL if the Big Bang occurred at time -9999999 (see zic.c) 1111.32Schristos# -DHAVE_DECL_ASCTIME_R=0 if <time.h> does not declare asctime_r 1121.32Schristos# -DHAVE_DIRECT_H if mkdir needs <direct.h> (MS-Windows) 1131.14Schristos# -DHAVE_DOS_FILE_NAMES if file names have drive specifiers etc. (MS-DOS) 1141.35Schristos# -DHAVE_GETTEXT=1 if 'gettext' works (e.g., GNU/Linux, FreeBSD, Solaris) 1151.1Smlelstv# -DHAVE_INCOMPATIBLE_CTIME_R=1 if your system's time.h declares 1161.35Schristos# ctime_r and asctime_r incompatibly with the POSIX standard 1171.35Schristos# (Solaris when _POSIX_PTHREAD_SEMANTICS is not defined). 1181.14Schristos# -DHAVE_INTTYPES_H=1 if you have a pre-C99 compiler with "inttypes.h" 1191.16Schristos# -DHAVE_LINK=0 if your system lacks a link function 1201.23Schristos# -DHAVE_LOCALTIME_R=0 if your system lacks a localtime_r function 1211.23Schristos# -DHAVE_LOCALTIME_RZ=0 if you do not want zdump to use localtime_rz 1221.23Schristos# This defaults to 1 if a working localtime_rz seems to be available. 1231.23Schristos# localtime_rz can make zdump significantly faster, but is nonstandard. 1241.32Schristos# -DHAVE_POSIX_DECLS=0 if your system's include files do not declare 1251.32Schristos# functions like 'link' or variables like 'tzname' required by POSIX 1261.1Smlelstv# -DHAVE_STDINT_H=1 if you have a pre-C99 compiler with "stdint.h" 1271.23Schristos# -DHAVE_STRFTIME_L=1 if <time.h> declares locale_t and strftime_l 1281.23Schristos# This defaults to 0 if _POSIX_VERSION < 200809, 1 otherwise. 1291.28Schristos# -DHAVE_STRDUP=0 if your system lacks the strdup function 1301.1Smlelstv# -DHAVE_SYMLINK=0 if your system lacks the symlink function 1311.1Smlelstv# -DHAVE_SYS_STAT_H=0 if your compiler lacks a "sys/stat.h" 1321.1Smlelstv# -DHAVE_SYS_WAIT_H=0 if your compiler lacks a "sys/wait.h" 1331.23Schristos# -DHAVE_TZSET=0 if your system lacks a tzset function 1341.1Smlelstv# -DHAVE_UNISTD_H=0 if your compiler lacks a "unistd.h" (Microsoft C++ 7?) 1351.36Schristos# -DEPOCH_LOCAL=1 if the 'time' function returns local time not UT 1361.36Schristos# -DEPOCH_OFFSET=N if the 'time' function returns a value N greater 1371.36Schristos# than what POSIX specifies, assuming local time is UT. 1381.36Schristos# For example, N is 252460800 on AmigaOS. 1391.14Schristos# -DNO_RUN_TIME_WARNINGS_ABOUT_YEAR_2000_PROBLEMS_THANK_YOU=1 1401.14Schristos# if you do not want run time warnings about formats that may cause 1411.14Schristos# year 2000 grief 1421.24Schristos# -Dssize_t=long on ancient hosts that lack ssize_t 1431.23Schristos# -DTHREAD_SAFE=1 to make localtime.c thread-safe, as POSIX requires; 1441.23Schristos# not needed by the main-program tz code, which is single-threaded. 1451.23Schristos# Append other compiler flags as needed, e.g., -pthread on GNU/Linux. 1461.14Schristos# -Dtime_tz=\"T\" to use T as the time_t type, rather than the system time_t 1471.1Smlelstv# -DTZ_DOMAIN=\"foo\" to use "foo" for gettext domain name; default is "tz" 1481.22Schristos# -DTZ_DOMAINDIR=\"/path\" to use "/path" for gettext directory; 1491.1Smlelstv# the default is system-supplied, typically "/usr/lib/locale" 1501.14Schristos# -DTZDEFRULESTRING=\",date/time,date/time\" to default to the specified 1511.23Schristos# -DUNINIT_TRAP=1 if reading uninitialized storage can cause problems 1521.23Schristos# other than simply getting garbage data 1531.23Schristos# -DUSE_LTZ=0 to build zdump with the system time zone library 1541.23Schristos# Also set TZDOBJS=zdump.o and CHECK_TIME_T_ALTERNATIVES= below. 1551.11Schristos# -DNO_ERROR_IN_DST_GAP=1 1561.11Schristos# if you want mktime() not to return an error in the DST gap. 1571.1Smlelstv# -DZIC_MAX_ABBR_LEN_WO_WARN=3 1581.1Smlelstv# (or some other number) to set the maximum time zone abbreviation length 1591.1Smlelstv# that zic will accept without a warning (the default is 6) 1601.30Schristos# $(GCC_DEBUG_FLAGS) if you are using recent GCC and want lots of checking 1611.7SchristosGCC_DEBUG_FLAGS = -Dlint -g3 -O3 -fno-common -fstrict-aliasing \ 1621.7Schristos -Wall -Wextra \ 1631.28Schristos -Wbad-function-cast -Wcast-align -Wdate-time \ 1641.22Schristos -Wdeclaration-after-statement \ 1651.28Schristos -Wdouble-promotion \ 1661.22Schristos -Wformat=2 -Winit-self -Wjump-misses-init \ 1671.28Schristos -Wlogical-op -Wmissing-prototypes -Wnested-externs \ 1681.28Schristos -Wold-style-definition -Woverlength-strings -Wpointer-arith \ 1691.7Schristos -Wshadow -Wstrict-prototypes -Wsuggest-attribute=const \ 1701.22Schristos -Wsuggest-attribute=format -Wsuggest-attribute=noreturn \ 1711.22Schristos -Wsuggest-attribute=pure -Wtrampolines \ 1721.37Schristos -Wundef -Wunused -Wwrite-strings \ 1731.28Schristos -Wno-address -Wno-format-nonliteral -Wno-sign-compare \ 1741.28Schristos -Wno-type-limits -Wno-unused-parameter 1751.1Smlelstv# 1761.1Smlelstv# If you want to use System V compatibility code, add 1771.1Smlelstv# -DUSG_COMPAT 1781.1Smlelstv# to the end of the "CFLAGS=" line. This arrange for "timezone" and "daylight" 1791.1Smlelstv# variables to be kept up-to-date by the time conversion functions. Neither 1801.1Smlelstv# "timezone" nor "daylight" is described in X3J11's work. 1811.1Smlelstv# 1821.1Smlelstv# If your system has a "GMT offset" field in its "struct tm"s 1831.1Smlelstv# (or if you decide to add such a field in your system's "time.h" file), 1841.1Smlelstv# add the name to a define such as 1851.1Smlelstv# -DTM_GMTOFF=tm_gmtoff 1861.23Schristos# to the end of the "CFLAGS=" line. If not defined, the code attempts to 1871.23Schristos# guess TM_GMTOFF from other macros; define NO_TM_GMTOFF to suppress this. 1881.23Schristos# Similarly, if your system has a "zone abbreviation" field, define 1891.1Smlelstv# -DTM_ZONE=tm_zone 1901.23Schristos# and define NO_TM_ZONE to suppress any guessing. These two fields are not 1911.23Schristos# required by POSIX, but are widely available on GNU/Linux and BSD systems. 1921.1Smlelstv# 1931.1Smlelstv# If you want functions that were inspired by early versions of X3J11's work, 1941.1Smlelstv# add 1951.1Smlelstv# -DSTD_INSPIRED 1961.1Smlelstv# to the end of the "CFLAGS=" line. This arranges for the functions 1971.1Smlelstv# "tzsetwall", "offtime", "timelocal", "timegm", "timeoff", 1981.1Smlelstv# "posix2time", and "time2posix" to be added to the time conversion library. 1991.1Smlelstv# "tzsetwall" is like "tzset" except that it arranges for local wall clock 2001.1Smlelstv# time (rather than the time specified in the TZ environment variable) 2011.1Smlelstv# to be used. 2021.1Smlelstv# "offtime" is like "gmtime" except that it accepts a second (long) argument 2031.1Smlelstv# that gives an offset to add to the time_t when converting it. 2041.1Smlelstv# "timelocal" is equivalent to "mktime". 2051.1Smlelstv# "timegm" is like "timelocal" except that it turns a struct tm into 2061.15Schristos# a time_t using UT (rather than local time as "timelocal" does). 2071.1Smlelstv# "timeoff" is like "timegm" except that it accepts a second (long) argument 2081.1Smlelstv# that gives an offset to use when converting to a time_t. 2091.1Smlelstv# "posix2time" and "time2posix" are described in an included manual page. 2101.1Smlelstv# X3J11's work does not describe any of these functions. 2111.1Smlelstv# Sun has provided "tzsetwall", "timelocal", and "timegm" in SunOS 4.0. 2121.1Smlelstv# These functions may well disappear in future releases of the time 2131.1Smlelstv# conversion package. 2141.1Smlelstv# 2151.23Schristos# If you don't want functions that were inspired by NetBSD, add 2161.23Schristos# -DNETBSD_INSPIRED=0 2171.23Schristos# to the end of the "CFLAGS=" line. Otherwise, the functions 2181.23Schristos# "localtime_rz", "mktime_z", "tzalloc", and "tzfree" are added to the 2191.23Schristos# time library, and if STD_INSPIRED is also defined the functions 2201.23Schristos# "posix2time_z" and "time2posix_z" are added as well. 2211.23Schristos# The functions ending in "_z" (or "_rz") are like their unsuffixed 2221.23Schristos# (or suffixed-by-"_r") counterparts, except with an extra first 2231.23Schristos# argument of opaque type timezone_t that specifies the time zone. 2241.23Schristos# "tzalloc" allocates a timezone_t value, and "tzfree" frees it. 2251.23Schristos# 2261.1Smlelstv# If you want to allocate state structures in localtime, add 2271.1Smlelstv# -DALL_STATE 2281.1Smlelstv# to the end of the "CFLAGS=" line. Storage is obtained by calling malloc. 2291.1Smlelstv# 2301.1Smlelstv# If you want an "altzone" variable (a la System V Release 3.1), add 2311.1Smlelstv# -DALTZONE 2321.1Smlelstv# to the end of the "CFLAGS=" line. 2331.1Smlelstv# This variable is not described in X3J11's work. 2341.1Smlelstv# 2351.1Smlelstv# NIST-PCTS:151-2, Version 1.4, (1993-12-03) is a test suite put 2361.1Smlelstv# out by the National Institute of Standards and Technology 2371.1Smlelstv# which claims to test C and Posix conformance. If you want to pass PCTS, add 2381.1Smlelstv# -DPCTS 2391.1Smlelstv# to the end of the "CFLAGS=" line. 2401.1Smlelstv# 2411.1Smlelstv# If you want strict compliance with XPG4 as of 1994-04-09, add 2421.1Smlelstv# -DXPG4_1994_04_09 2431.1Smlelstv# to the end of the "CFLAGS=" line. This causes "strftime" to always return 2441.1Smlelstv# 53 as a week number (rather than 52 or 53) for those days in January that 2451.1Smlelstv# before the first Monday in January when a "%V" format is used and January 1 2461.1Smlelstv# falls on a Friday, Saturday, or Sunday. 2471.1Smlelstv 2481.1SmlelstvCFLAGS= 2491.1Smlelstv 2501.9Schristos# Linker flags. Default to $(LFLAGS) for backwards compatibility 2511.34Schristos# to release 2012h and earlier. 2521.9Schristos 2531.9SchristosLDFLAGS= $(LFLAGS) 2541.1Smlelstv 2551.32Schristos# For leap seconds, this Makefile uses LEAPSECONDS='-L leapseconds' in 2561.32Schristos# submake command lines. The default is no leap seconds. 2571.32Schristos 2581.32SchristosLEAPSECONDS= 2591.32Schristos 2601.32Schristos# The zic command and its arguments. 2611.32Schristos 2621.1Smlelstvzic= ./zic 2631.1SmlelstvZIC= $(zic) $(ZFLAGS) 2641.1Smlelstv 2651.15SchristosZFLAGS= 2661.15Schristos 2671.34Schristos# How to use zic to install tz binary files. 2681.32Schristos 2691.32SchristosZIC_INSTALL= $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS) 2701.32Schristos 2711.22Schristos# The name of a Posix-compliant 'awk' on your system. 2721.9SchristosAWK= awk 2731.9Schristos 2741.16Schristos# The full path name of a Posix-compliant shell, preferably one that supports 2751.16Schristos# the Korn shell's 'select' statement as an extension. 2761.16Schristos# These days, Bash is the most popular. 2771.16Schristos# It should be OK to set this to /bin/sh, on platforms where /bin/sh 2781.16Schristos# lacks 'select' or doesn't completely conform to Posix, but /bin/bash 2791.16Schristos# is typically nicer if it works. 2801.9SchristosKSHELL= /bin/bash 2811.1Smlelstv 2821.18Schristos# The path where SGML DTDs are kept and the catalog file(s) to use when 2831.34Schristos# validating. The default should work on both Debian and Red Hat. 2841.10SchristosSGML_TOPDIR= /usr 2851.9SchristosSGML_DTDDIR= $(SGML_TOPDIR)/share/xml/w3c-sgml-lib/schema/dtd 2861.9SchristosSGML_SEARCH_PATH= $(SGML_DTDDIR)/REC-html401-19991224 2871.18SchristosSGML_CATALOG_FILES= \ 2881.34Schristos $(SGML_TOPDIR)/share/doc/w3-recs/html/www.w3.org/TR/1999/REC-html401-19991224/HTML4.cat:$(SGML_TOPDIR)/share/sgml/html/4.01/HTML4.cat 2891.1Smlelstv 2901.1Smlelstv# The name, arguments and environment of a program to validate your web pages. 2911.34Schristos# See <http://openjade.sourceforge.net/doc/> for a validator, and 2921.34Schristos# <https://validator.w3.org/source/> for a validation library. 2931.1SmlelstvVALIDATE = nsgmls 2941.1SmlelstvVALIDATE_FLAGS = -s -B -wall -wno-unused-param 2951.1SmlelstvVALIDATE_ENV = \ 2961.1Smlelstv SGML_CATALOG_FILES=$(SGML_CATALOG_FILES) \ 2971.1Smlelstv SGML_SEARCH_PATH=$(SGML_SEARCH_PATH) \ 2981.1Smlelstv SP_CHARSET_FIXED=YES \ 2991.1Smlelstv SP_ENCODING=UTF-8 3001.1Smlelstv 3011.23Schristos# This expensive test requires USE_LTZ. 3021.23Schristos# To suppress it, define this macro to be empty. 3031.23SchristosCHECK_TIME_T_ALTERNATIVES = check_time_t_alternatives 3041.23Schristos 3051.22Schristos# SAFE_CHAR is a regular expression that matches a safe character. 3061.22Schristos# Some parts of this distribution are limited to safe characters; 3071.22Schristos# others can use any UTF-8 character. 3081.22Schristos# For now, the safe characters are a safe subset of ASCII. 3091.9Schristos# The caller must set the shell variable 'sharp' to the character '#', 3101.9Schristos# since Makefile macros cannot contain '#'. 3111.9Schristos# TAB_CHAR is a single tab character, in single quotes. 3121.9SchristosTAB_CHAR= ' ' 3131.22SchristosSAFE_CHARSET1= $(TAB_CHAR)' !\"'$$sharp'$$%&'\''()*+,./0123456789:;<=>?@' 3141.22SchristosSAFE_CHARSET2= 'ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\^_`' 3151.22SchristosSAFE_CHARSET3= 'abcdefghijklmnopqrstuvwxyz{|}~' 3161.29SchristosSAFE_CHARSET= $(SAFE_CHARSET1)$(SAFE_CHARSET2)$(SAFE_CHARSET3) 3171.29SchristosSAFE_CHAR= '[]'$(SAFE_CHARSET)'-]' 3181.29Schristos 3191.29Schristos# OK_CHAR matches any character allowed in the distributed files. 3201.29Schristos# This is the same as SAFE_CHAR, except that multibyte letters are 3211.29Schristos# also allowed so that commentary can contain people's names and quote 3221.29Schristos# non-English sources. For non-letters the sources are limited to 3231.22Schristos# ASCII renderings for the convenience of maintainers whose text editors 3241.22Schristos# mishandle UTF-8 by default (e.g., XEmacs 21.4.22). 3251.29SchristosOK_CHAR= '[][:alpha:]'$(SAFE_CHARSET)'-]' 3261.22Schristos 3271.22Schristos# SAFE_LINE matches a line of safe characters. 3281.29Schristos# SAFE_SHARP_LINE is similar, except any OK character can follow '#'; 3291.22Schristos# this is so that comments can contain non-ASCII characters. 3301.29Schristos# OK_LINE matches a line of OK characters. 3311.22SchristosSAFE_LINE= '^'$(SAFE_CHAR)'*$$' 3321.29SchristosSAFE_SHARP_LINE='^'$(SAFE_CHAR)'*('$$sharp$(OK_CHAR)'*)?$$' 3331.29SchristosOK_LINE= '^'$(OK_CHAR)'*$$' 3341.9Schristos 3351.6Schristos# Flags to give 'tar' when making a distribution. 3361.6Schristos# Try to use flags appropriate for GNU tar. 3371.34SchristosGNUTARFLAGS= --numeric-owner --owner=0 --group=0 --mode=go+u,go-w --sort=name 3381.6SchristosTARFLAGS= `if tar $(GNUTARFLAGS) --version >/dev/null 2>&1; \ 3391.6Schristos then echo $(GNUTARFLAGS); \ 3401.6Schristos else :; \ 3411.6Schristos fi` 3421.6Schristos 3431.6Schristos# Flags to give 'gzip' when making a distribution. 3441.21SapbGZIPFLAGS= -9 ${GZIP_N_FLAG} 3451.6Schristos 3461.1Smlelstv############################################################################### 3471.1Smlelstv 3481.29Schristos#MAKE= make 3491.29Schristos 3501.1Smlelstvcc= cc 3511.1SmlelstvCC= $(cc) -DTZDIR=\"$(TZDIR)\" 3521.1Smlelstv 3531.16SchristosAR= ar 3541.16Schristos 3551.16Schristos# ':' on typical hosts; 'ranlib' on the ancient hosts that still need ranlib. 3561.16SchristosRANLIB= : 3571.16Schristos 3581.28SchristosTZCOBJS= zic.o 3591.23SchristosTZDOBJS= zdump.o localtime.o asctime.o 3601.1SmlelstvDATEOBJS= date.o localtime.o strftime.o asctime.o 3611.1SmlelstvLIBSRCS= localtime.c asctime.c difftime.c 3621.1SmlelstvLIBOBJS= localtime.o asctime.o difftime.o 3631.1SmlelstvHEADERS= tzfile.h private.h 3641.28SchristosNONLIBSRCS= zic.c zdump.c 3651.1SmlelstvNEWUCBSRCS= date.c strftime.c 3661.23SchristosSOURCES= $(HEADERS) $(LIBSRCS) $(NONLIBSRCS) $(NEWUCBSRCS) \ 3671.35Schristos tzselect.ksh workman.sh 3681.1SmlelstvMANS= newctime.3 newstrftime.3 newtzset.3 time2posix.3 \ 3691.1Smlelstv tzfile.5 tzselect.8 zic.8 zdump.8 3701.16SchristosMANTXTS= newctime.3.txt newstrftime.3.txt newtzset.3.txt \ 3711.16Schristos time2posix.3.txt \ 3721.16Schristos tzfile.5.txt tzselect.8.txt zic.8.txt zdump.8.txt \ 3731.16Schristos date.1.txt 3741.35SchristosCOMMON= CONTRIBUTING LICENSE Makefile NEWS README Theory version 3751.32SchristosWEB_PAGES= tz-art.htm tz-how-to.html tz-link.htm 3761.23SchristosDOCS= $(MANS) date.1 $(MANTXTS) $(WEB_PAGES) 3771.1SmlelstvPRIMARY_YDATA= africa antarctica asia australasia \ 3781.1Smlelstv europe northamerica southamerica 3791.4SchristosYDATA= $(PRIMARY_YDATA) pacificnew etcetera backward 3801.4SchristosNDATA= systemv factory 3811.16SchristosTDATA= $(YDATA) $(NDATA) 3821.22SchristosZONETABLES= zone1970.tab zone.tab 3831.22SchristosTABDATA= iso3166.tab leapseconds $(ZONETABLES) 3841.16SchristosLEAP_DEPS= leapseconds.awk leap-seconds.list 3851.23SchristosDATA= $(YDATA) $(NDATA) backzone $(TABDATA) \ 3861.23Schristos leap-seconds.list yearistype.sh 3871.26SchristosAWK_SCRIPTS= checklinks.awk checktab.awk leapseconds.awk 3881.23SchristosMISC= $(AWK_SCRIPTS) zoneinfo2tdf.pl 3891.34SchristosTZS_YEAR= 2050 3901.34SchristosTZS= to$(TZS_YEAR).tzs 3911.34SchristosTZS_NEW= to$(TZS_YEAR)new.tzs 3921.34SchristosTZS_DEPS= $(PRIMARY_YDATA) asctime.c localtime.c \ 3931.34Schristos private.h tzfile.h zdump.c zic.c 3941.34SchristosENCHILADA= $(COMMON) $(DOCS) $(SOURCES) $(DATA) $(MISC) $(TZS) 3951.34Schristos 3961.34Schristos# Consult these files when deciding whether to rebuild the 'version' file. 3971.34Schristos# This list is not the same as the output of 'git ls-files', since 3981.34Schristos# .gitignore is not distributed. 3991.34SchristosVERSION_DEPS= \ 4001.34Schristos CONTRIBUTING LICENSE Makefile NEWS README Theory \ 4011.34Schristos africa antarctica asctime.c asia australasia \ 4021.34Schristos backward backzone \ 4031.34Schristos checklinks.awk checktab.awk \ 4041.34Schristos date.1 date.c difftime.c \ 4051.34Schristos etcetera europe factory iso3166.tab \ 4061.34Schristos leap-seconds.list leapseconds.awk localtime.c \ 4071.34Schristos newctime.3 newstrftime.3 newtzset.3 northamerica \ 4081.34Schristos pacificnew private.h \ 4091.34Schristos southamerica strftime.c systemv \ 4101.34Schristos time2posix.3 tz-art.htm tz-how-to.html tz-link.htm \ 4111.34Schristos tzfile.5 tzfile.h tzselect.8 tzselect.ksh \ 4121.34Schristos workman.sh yearistype.sh \ 4131.34Schristos zdump.8 zdump.c zic.8 zic.c \ 4141.34Schristos zone.tab zone1970.tab zoneinfo2tdf.pl 4151.1Smlelstv 4161.1Smlelstv# And for the benefit of csh users on systems that assume the user 4171.1Smlelstv# shell should be used to handle commands in Makefiles. . . 4181.1Smlelstv 4191.1SmlelstvSHELL= /bin/sh 4201.1Smlelstv 4211.32Schristosall: tzselect yearistype zic zdump libtz.a $(TABDATA) 4221.1Smlelstv 4231.29SchristosALL: all date $(ENCHILADA) 4241.1Smlelstv 4251.16Schristosinstall: all $(DATA) $(REDO) $(MANS) 4261.16Schristos mkdir -p $(DESTDIR)$(ETCDIR) $(DESTDIR)$(TZDIR) \ 4271.16Schristos $(DESTDIR)$(LIBDIR) \ 4281.16Schristos $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \ 4291.16Schristos $(DESTDIR)$(MANDIR)/man8 4301.32Schristos $(ZIC_INSTALL) -l $(LOCALTIME) -p $(POSIXRULES) 4311.22Schristos cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/. 4321.15Schristos cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/. 4331.16Schristos cp libtz.a $(DESTDIR)$(LIBDIR)/. 4341.16Schristos $(RANLIB) $(DESTDIR)$(LIBDIR)/libtz.a 4351.16Schristos cp -f newctime.3 newtzset.3 $(DESTDIR)$(MANDIR)/man3/. 4361.16Schristos cp -f tzfile.5 $(DESTDIR)$(MANDIR)/man5/. 4371.16Schristos cp -f tzselect.8 zdump.8 zic.8 $(DESTDIR)$(MANDIR)/man8/. 4381.1Smlelstv 4391.1SmlelstvINSTALL: ALL install date.1 4401.16Schristos mkdir -p $(DESTDIR)$(BINDIR) $(DESTDIR)$(MANDIR)/man1 4411.15Schristos cp date $(DESTDIR)$(BINDIR)/. 4421.16Schristos cp -f date.1 $(DESTDIR)$(MANDIR)/man1/. 4431.1Smlelstv 4441.34Schristosversion: $(VERSION_DEPS) 4451.35Schristos { (type git) >/dev/null 2>&1 && \ 4461.35Schristos V=`git describe --match '[0-9][0-9][0-9][0-9][a-z]*' \ 4471.35Schristos --abbrev=7 --dirty` || \ 4481.34Schristos V=$(VERSION); } && \ 4491.35Schristos printf '%s\n' "$$V" >$@.out 4501.35Schristos mv $@.out $@ 4511.34Schristos 4521.34Schristosversion.h: version 4531.35Schristos VERSION=`cat version` && printf '%s\n' \ 4541.35Schristos 'static char const PKGVERSION[]="($(PACKAGE)) ";' \ 4551.35Schristos "static char const TZVERSION[]=\"$$VERSION\";" \ 4561.35Schristos 'static char const REPORT_BUGS_TO[]="$(BUGEMAIL)";' \ 4571.35Schristos >$@.out 4581.35Schristos mv $@.out $@ 4591.6Schristos 4601.1Smlelstvzdump: $(TZDOBJS) 4611.9Schristos $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZDOBJS) $(LDLIBS) 4621.1Smlelstv 4631.32Schristoszic: $(TZCOBJS) 4641.9Schristos $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZCOBJS) $(LDLIBS) 4651.1Smlelstv 4661.1Smlelstvyearistype: yearistype.sh 4671.1Smlelstv cp yearistype.sh yearistype 4681.1Smlelstv chmod +x yearistype 4691.1Smlelstv 4701.16Schristosleapseconds: $(LEAP_DEPS) 4711.35Schristos $(AWK) -f leapseconds.awk leap-seconds.list >$@.out 4721.35Schristos mv $@.out $@ 4731.15Schristos 4741.32Schristos# Arguments to pass to submakes of install_data. 4751.32Schristos# They can be overridden by later submake arguments. 4761.32SchristosINSTALLARGS = \ 4771.32Schristos DESTDIR=$(DESTDIR) \ 4781.32Schristos LEAPSECONDS='$(LEAPSECONDS)' \ 4791.32Schristos PACKRATDATA='$(PACKRATDATA)' \ 4801.32Schristos TZDIR=$(TZDIR) \ 4811.32Schristos YEARISTYPE=$(YEARISTYPE) \ 4821.32Schristos ZIC='$(ZIC)' 4831.32Schristos 4841.32Schristos# 'make install_data' installs one set of tz binary files. 4851.32Schristos# It can be tailored by setting LEAPSECONDS, PACKRATDATA, etc. 4861.32Schristosinstall_data: zic leapseconds yearistype $(PACKRATDATA) $(TDATA) 4871.32Schristos $(ZIC_INSTALL) $(TDATA) 4881.32Schristos $(AWK) '/^Rule/' $(TDATA) | $(ZIC_INSTALL) - $(PACKRATDATA) 4891.32Schristos 4901.32Schristosposix_only: 4911.32Schristos $(MAKE) $(INSTALLARGS) LEAPSECONDS= install_data 4921.32Schristos 4931.32Schristosright_only: 4941.32Schristos $(MAKE) $(INSTALLARGS) LEAPSECONDS='-L leapseconds' \ 4951.32Schristos install_data 4961.1Smlelstv 4971.1Smlelstv# In earlier versions of this makefile, the other two directories were 4981.1Smlelstv# subdirectories of $(TZDIR). However, this led to configuration errors. 4991.1Smlelstv# For example, with posix_right under the earlier scheme, 5001.1Smlelstv# TZ='right/Australia/Adelaide' got you localtime with leap seconds, 5011.1Smlelstv# but gmtime without leap seconds, which led to problems with applications 5021.1Smlelstv# like sendmail that subtract gmtime from localtime. 5031.1Smlelstv# Therefore, the other two directories are now siblings of $(TZDIR). 5041.1Smlelstv# You must replace all of $(TZDIR) to switch from not using leap seconds 5051.1Smlelstv# to using them, or vice versa. 5061.32Schristosright_posix: right_only 5071.15Schristos rm -fr $(DESTDIR)$(TZDIR)-leaps 5081.15Schristos ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-leaps || \ 5091.32Schristos $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-leaps right_only 5101.32Schristos $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-posix posix_only 5111.15Schristos 5121.32Schristosposix_right: posix_only 5131.15Schristos rm -fr $(DESTDIR)$(TZDIR)-posix 5141.15Schristos ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-posix || \ 5151.32Schristos $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-posix posix_only 5161.32Schristos $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-leaps right_only 5171.32Schristos 5181.32Schristos# This obsolescent rule is present for backwards compatibility with 5191.32Schristos# tz releases 2014g through 2015g. It should go away eventually. 5201.32Schristosposix_packrat: 5211.32Schristos $(MAKE) $(INSTALLARGS) PACKRATDATA=backzone posix_only 5221.23Schristos 5231.1Smlelstvzones: $(REDO) 5241.1Smlelstv 5251.34Schristos$(TZS_NEW): $(TDATA) zdump zic 5261.34Schristos mkdir -p tzs.dir 5271.34Schristos $(zic) -d tzs.dir $(TDATA) 5281.34Schristos $(AWK) '/^Link/{print $$1 "\t" $$2 "\t" $$3}' \ 5291.34Schristos $(TDATA) | LC_ALL=C sort >$@.out 5301.35Schristos wd=`pwd` && \ 5311.35Schristos zones=`$(AWK) -v wd="$$wd" \ 5321.34Schristos '/^Zone/{print wd "/tzs.dir/" $$2}' $(TDATA) \ 5331.35Schristos | LC_ALL=C sort` && \ 5341.34Schristos ./zdump -i -c $(TZS_YEAR) $$zones >>$@.out 5351.35Schristos sed 's,^TZ=".*tzs\.dir/,TZ=",' $@.out >$@.sed.out 5361.34Schristos rm -fr tzs.dir $@.out 5371.35Schristos mv $@.sed.out $@ 5381.34Schristos 5391.34Schristos# If $(TZS) does not already exist (e.g., old-format tarballs), create it. 5401.34Schristos# If it exists but 'make check_tzs' fails, a maintainer should inspect the 5411.34Schristos# failed output and fix the inconsistency, perhaps by running 'make force_tzs'. 5421.34Schristos$(TZS): 5431.34Schristos $(MAKE) force_tzs 5441.34Schristos 5451.34Schristosforce_tzs: $(TZS_NEW) 5461.34Schristos cp $(TZS_NEW) $(TZS) 5471.34Schristos 5481.16Schristoslibtz.a: $(LIBOBJS) 5491.37Schristos rm -f $@ 5501.37Schristos $(AR) -rc $@ $(LIBOBJS) 5511.16Schristos $(RANLIB) $@ 5521.1Smlelstv 5531.1Smlelstvdate: $(DATEOBJS) 5541.9Schristos $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(DATEOBJS) $(LDLIBS) 5551.1Smlelstv 5561.34Schristostzselect: tzselect.ksh version 5571.35Schristos VERSION=`cat version` && sed \ 5581.9Schristos -e 's|#!/bin/bash|#!$(KSHELL)|g' \ 5591.1Smlelstv -e 's|AWK=[^}]*|AWK=$(AWK)|g' \ 5601.9Schristos -e 's|\(PKGVERSION\)=.*|\1='\''($(PACKAGE)) '\''|' \ 5611.9Schristos -e 's|\(REPORT_BUGS_TO\)=.*|\1=$(BUGEMAIL)|' \ 5621.1Smlelstv -e 's|TZDIR=[^}]*|TZDIR=$(TZDIR)|' \ 5631.35Schristos -e 's|\(TZVERSION\)=.*|\1='"$$VERSION"'|' \ 5641.35Schristos <$@.ksh >$@.out 5651.35Schristos chmod +x $@.out 5661.35Schristos mv $@.out $@ 5671.1Smlelstv 5681.26Schristoscheck: check_character_set check_white_space check_links check_sorted \ 5691.34Schristos check_tables check_tzs check_web 5701.9Schristos 5711.9Schristoscheck_character_set: $(ENCHILADA) 5721.22Schristos LC_ALL=en_US.utf8 && export LC_ALL && \ 5731.22Schristos sharp='#' && \ 5741.35Schristos ! grep -Env $(SAFE_LINE) $(MANS) date.1 $(MANTXTS) \ 5751.35Schristos $(MISC) $(SOURCES) $(WEB_PAGES) \ 5761.35Schristos CONTRIBUTING LICENSE Makefile README version && \ 5771.23Schristos ! grep -Env $(SAFE_SHARP_LINE) $(TDATA) backzone \ 5781.29Schristos leapseconds yearistype.sh zone.tab && \ 5791.29Schristos ! grep -Env $(OK_LINE) $(ENCHILADA) 5801.22Schristos 5811.23Schristoscheck_white_space: $(ENCHILADA) 5821.35Schristos patfmt=' \t|[\f\r\v]' && pat=`printf "$$patfmt\\n"` && \ 5831.35Schristos ! grep -En "$$pat" $(ENCHILADA) 5841.27Schristos ! grep -n '[[:space:]]$$' $(ENCHILADA) 5851.23Schristos 5861.23SchristosCHECK_CC_LIST = { n = split($$1,a,/,/); for (i=2; i<=n; i++) print a[1], a[i]; } 5871.23Schristos 5881.23Schristoscheck_sorted: backward backzone iso3166.tab zone.tab zone1970.tab 5891.23Schristos $(AWK) '/^Link/ {print $$3}' backward | LC_ALL=C sort -cu 5901.23Schristos $(AWK) '/^Zone/ {print $$2}' backzone | LC_ALL=C sort -cu 5911.23Schristos $(AWK) '/^[^#]/ {print $$1}' iso3166.tab | LC_ALL=C sort -cu 5921.23Schristos $(AWK) '/^[^#]/ {print $$1}' zone.tab | LC_ALL=C sort -c 5931.23Schristos $(AWK) '/^[^#]/ {print substr($$0, 1, 2)}' zone1970.tab | \ 5941.23Schristos LC_ALL=C sort -c 5951.23Schristos $(AWK) '/^[^#]/ $(CHECK_CC_LIST)' zone1970.tab | \ 5961.23Schristos LC_ALL=C sort -cu 5971.23Schristos 5981.26Schristoscheck_links: checklinks.awk $(TDATA) 5991.26Schristos $(AWK) -f checklinks.awk $(TDATA) 6001.26Schristos 6011.22Schristoscheck_tables: checktab.awk $(PRIMARY_YDATA) $(ZONETABLES) 6021.22Schristos for tab in $(ZONETABLES); do \ 6031.22Schristos $(AWK) -f checktab.awk -v zone_table=$$tab $(PRIMARY_YDATA) \ 6041.22Schristos || exit; \ 6051.22Schristos done 6061.1Smlelstv 6071.34Schristoscheck_tzs: $(TZS) $(TZS_NEW) 6081.34Schristos diff -u $(TZS) $(TZS_NEW) 6091.34Schristos 6101.1Smlelstvcheck_web: $(WEB_PAGES) 6111.1Smlelstv $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) $(WEB_PAGES) 6121.1Smlelstv 6131.14Schristosclean_misc: 6141.6Schristos rm -f core *.o *.out \ 6151.18Schristos date tzselect version.h zdump zic yearistype libtz.a 6161.14Schristosclean: clean_misc 6171.34Schristos rm -fr *.dir tzdb-*/ $(TZS_NEW) 6181.1Smlelstv 6191.1Smlelstvmaintainer-clean: clean 6201.1Smlelstv @echo 'This command is intended for maintainers to use; it' 6211.1Smlelstv @echo 'deletes files that may need special tools to rebuild.' 6221.34Schristos rm -f leapseconds version $(MANTXTS) $(TZS) *.asc *.tar.* 6231.1Smlelstv 6241.1Smlelstvnames: 6251.1Smlelstv @echo $(ENCHILADA) 6261.1Smlelstv 6271.23Schristospublic: check check_public $(CHECK_TIME_T_ALTERNATIVES) \ 6281.16Schristos tarballs signatures 6291.16Schristos 6301.16Schristosdate.1.txt: date.1 6311.16Schristosnewctime.3.txt: newctime.3 6321.16Schristosnewstrftime.3.txt: newstrftime.3 6331.16Schristosnewtzset.3.txt: newtzset.3 6341.16Schristostime2posix.3.txt: time2posix.3 6351.16Schristostzfile.5.txt: tzfile.5 6361.16Schristostzselect.8.txt: tzselect.8 6371.16Schristoszdump.8.txt: zdump.8 6381.16Schristoszic.8.txt: zic.8 6391.16Schristos 6401.16Schristos$(MANTXTS): workman.sh 6411.35Schristos LC_ALL=C sh workman.sh `expr $@ : '\(.*\)\.txt$$'` >$@.out 6421.35Schristos mv $@.out $@ 6431.9Schristos 6441.6Schristos# Set the time stamps to those of the git repository, if available, 6451.6Schristos# and if the files have not changed since then. 6461.6Schristos# This uses GNU 'touch' syntax 'touch -d@N FILE', 6471.6Schristos# where N is the number of seconds since 1970. 6481.16Schristos# If git or GNU 'touch' is absent, don't bother to sync with git timestamps. 6491.16Schristos# Also, set the timestamp of each prebuilt file like 'leapseconds' 6501.16Schristos# to be the maximum of the files it depends on. 6511.16Schristosset-timestamps.out: $(ENCHILADA) 6521.16Schristos rm -f $@ 6531.35Schristos if (type git) >/dev/null 2>&1 && \ 6541.35Schristos files=`git ls-files $(ENCHILADA)` && \ 6551.16Schristos touch -md @1 test.out; then \ 6561.16Schristos rm -f test.out && \ 6571.16Schristos for file in $$files; do \ 6581.16Schristos if git diff --quiet $$file; then \ 6591.16Schristos time=`git log -1 --format='tformat:%ct' $$file` && \ 6601.16Schristos touch -cmd @$$time $$file; \ 6611.16Schristos else \ 6621.16Schristos echo >&2 "$$file: warning: does not match repository"; \ 6631.16Schristos fi || exit; \ 6641.16Schristos done; \ 6651.16Schristos fi 6661.16Schristos touch -cmr `ls -t $(LEAP_DEPS) | sed 1q` leapseconds 6671.16Schristos for file in `ls $(MANTXTS) | sed 's/\.txt$$//'`; do \ 6681.16Schristos touch -cmr `ls -t $$file workman.sh | sed 1q` $$file.txt || \ 6691.16Schristos exit; \ 6701.6Schristos done 6711.35Schristos touch -cmr `ls -t $(TZS_DEPS) | sed 1q` $(TZS) 6721.35Schristos touch -cmr `ls -t $(VERSION_DEPS) | sed 1q` version 6731.16Schristos touch $@ 6741.6Schristos 6751.1Smlelstv# The zics below ensure that each data file can stand on its own. 6761.1Smlelstv# We also do an all-files run to catch links to links. 6771.1Smlelstv 6781.29Schristoscheck_public: 6791.29Schristos $(MAKE) maintainer-clean 6801.29Schristos $(MAKE) "CFLAGS=$(GCC_DEBUG_FLAGS)" ALL 6811.34Schristos mkdir -p public.dir 6821.9Schristos for i in $(TDATA) ; do \ 6831.34Schristos $(zic) -v -d public.dir $$i 2>&1 || exit; \ 6841.9Schristos done 6851.34Schristos $(zic) -v -d public.dir $(TDATA) 6861.34Schristos rm -fr public.dir 6871.9Schristos 6881.14Schristos# Check that the code works under various alternative 6891.14Schristos# implementations of time_t. 6901.14Schristoscheck_time_t_alternatives: 6911.23Schristos if diff -q Makefile Makefile 2>/dev/null; then \ 6921.23Schristos quiet_option='-q'; \ 6931.23Schristos else \ 6941.23Schristos quiet_option=''; \ 6951.23Schristos fi && \ 6961.35Schristos wd=`pwd` && \ 6971.22Schristos zones=`$(AWK) '/^[^#]/ { print $$3 }' <zone1970.tab` && \ 6981.14Schristos for type in $(TIME_T_ALTERNATIVES); do \ 6991.34Schristos mkdir -p time_t.dir/$$type && \ 7001.29Schristos $(MAKE) clean_misc && \ 7011.35Schristos $(MAKE) TOPDIR="$$wd/time_t.dir/$$type" \ 7021.14Schristos CFLAGS='$(CFLAGS) -Dtime_tz='"'$$type'" \ 7031.23Schristos REDO='$(REDO)' \ 7041.14Schristos install && \ 7051.23Schristos diff $$quiet_option -r \ 7061.34Schristos time_t.dir/int64_t/etc/zoneinfo \ 7071.34Schristos time_t.dir/$$type/etc/zoneinfo && \ 7081.14Schristos case $$type in \ 7091.14Schristos int32_t) range=-2147483648,2147483647;; \ 7101.14Schristos uint32_t) range=0,4294967296;; \ 7111.14Schristos int64_t) continue;; \ 7121.14Schristos *u*) range=0,10000000000;; \ 7131.14Schristos *) range=-10000000000,10000000000;; \ 7141.14Schristos esac && \ 7151.14Schristos echo checking $$type zones ... && \ 7161.34Schristos time_t.dir/int64_t/etc/zdump -V -t $$range $$zones \ 7171.34Schristos >time_t.dir/int64_t.out && \ 7181.34Schristos time_t.dir/$$type/etc/zdump -V -t $$range $$zones \ 7191.34Schristos >time_t.dir/$$type.out && \ 7201.34Schristos diff -u time_t.dir/int64_t.out time_t.dir/$$type.out \ 7211.14Schristos || exit; \ 7221.14Schristos done 7231.34Schristos rm -fr time_t.dir 7241.34Schristos 7251.34Schristostarballs_version: tzcode$(VERSION).tar.gz tzdata$(VERSION).tar.gz \ 7261.34Schristos tzdb-$(VERSION).tar.lz 7271.35Schristostarballs traditional_tarballs signatures traditional_signatures: version 7281.35Schristos VERSION=`cat version` && \ 7291.35Schristos $(MAKE) VERSION="$$VERSION" $@_version 7301.35Schristos 7311.35Schristossignatures_version: traditional_signatures_version tzdb-$(VERSION).tar.lz.asc 7321.35Schristostraditional_signatures_version: \ 7331.35Schristos tzcode$(VERSION).tar.gz.asc tzdata$(VERSION).tar.gz.asc \ 7341.9Schristos 7351.16Schristostzcode$(VERSION).tar.gz: set-timestamps.out 7361.6Schristos LC_ALL=C && export LC_ALL && \ 7371.7Schristos tar $(TARFLAGS) -cf - \ 7381.23Schristos $(COMMON) $(DOCS) $(SOURCES) | \ 7391.17Sapb ${TOOL_GZIP} $(GZIPFLAGS) > $@ 7401.35Schristos ${TOOL_GZIP} $(GZIPFLAGS) >$@.out 7411.35Schristos mv $@.out $@ 7421.10Schristos 7431.16Schristostzdata$(VERSION).tar.gz: set-timestamps.out 7441.6Schristos LC_ALL=C && export LC_ALL && \ 7451.23Schristos tar $(TARFLAGS) -cf - $(COMMON) $(DATA) $(MISC) | \ 7461.35Schristos ${TOOL_GZIP} $(GZIPFLAGS) > $@.out 7471.35Schristos mv $@.out $@ 7481.9Schristos 7491.34Schristostzdb-$(VERSION).tar.lz: set-timestamps.out 7501.34Schristos rm -fr tzdb-$(VERSION) 7511.34Schristos mkdir tzdb-$(VERSION) 7521.34Schristos ln $(ENCHILADA) tzdb-$(VERSION) 7531.35Schristos touch -cmr `ls -t tzdb-$(VERSION)/* | sed 1q` tzdb-$(VERSION) 7541.34Schristos LC_ALL=C && export LC_ALL && \ 7551.35Schristos tar $(TARFLAGS) -cf - tzdb-$(VERSION) | lzip -9 >$@.out 7561.35Schristos mv $@.out $@ 7571.9Schristos 7581.9Schristostzcode$(VERSION).tar.gz.asc: tzcode$(VERSION).tar.gz 7591.9Schristos gpg --armor --detach-sign $? 7601.9Schristos 7611.9Schristostzdata$(VERSION).tar.gz.asc: tzdata$(VERSION).tar.gz 7621.9Schristos gpg --armor --detach-sign $? 7631.1Smlelstv 7641.34Schristostzdb-$(VERSION).tar.lz.asc: tzdb-$(VERSION).tar.lz 7651.34Schristos gpg --armor --detach-sign $? 7661.34Schristos 7671.1Smlelstvtypecheck: 7681.29Schristos $(MAKE) clean 7691.15Schristos for i in "long long" unsigned; \ 7701.1Smlelstv do \ 7711.29Schristos $(MAKE) CFLAGS="-DTYPECHECK -D__time_t_defined -D_TIME_T \"-Dtime_t=$$i\"" ; \ 7721.1Smlelstv ./zdump -v Europe/Rome ; \ 7731.29Schristos $(MAKE) clean ; \ 7741.1Smlelstv done 7751.1Smlelstv 7761.1Smlelstvzonenames: $(TDATA) 7771.1Smlelstv @$(AWK) '/^Zone/ { print $$2 } /^Link/ { print $$3 }' $(TDATA) 7781.1Smlelstv 7791.1Smlelstvasctime.o: private.h tzfile.h 7801.1Smlelstvdate.o: private.h 7811.1Smlelstvdifftime.o: private.h 7821.1Smlelstvlocaltime.o: private.h tzfile.h 7831.23Schristosstrftime.o: private.h tzfile.h 7841.6Schristoszdump.o: version.h 7851.6Schristoszic.o: private.h tzfile.h version.h 7861.1Smlelstv 7871.1Smlelstv.KEEP_STATE: 7881.22Schristos 7891.22Schristos.PHONY: ALL INSTALL all 7901.26Schristos.PHONY: check check_character_set check_links 7911.26Schristos.PHONY: check_public check_sorted check_tables 7921.34Schristos.PHONY: check_time_t_alternatives check_tzs check_web check_white_space 7931.34Schristos.PHONY: clean clean_misc force_tzs 7941.32Schristos.PHONY: install install_data maintainer-clean names 7951.32Schristos.PHONY: posix_only posix_packrat posix_right 7961.34Schristos.PHONY: public right_only right_posix signatures signatures_version 7971.34Schristos.PHONY: tarballs tarballs_version typecheck 7981.22Schristos.PHONY: zonenames zones 799