summaryrefslogtreecommitdiff
path: root/Build/source/libs/icu-xetex/tools/tzcode/Makefile.in
blob: ce7c1a503a0c47518fce9f678738384948558002 (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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
# Some Portions Copyright (c) 2006-2007 IBM and others. All Rights Reserved.

srcdir = @srcdir@
top_srcdir = @top_srcdir@

top_builddir = ../..

subdir = tools/tzcode

include $(top_builddir)/icudefs.mk

OBJECTS= zic.o localtime.o asctime.o scheck.o ialloc.o
TZDATA = $(firstword $(wildcard ./tzdata*.tar.gz) $(wildcard $(srcdir)/tzdata*.tar.gz))
TZCODE = $(firstword $(wildcard ./tzcode*.tar.gz) $(wildcard $(srcdir)/tzcode*.tar.gz))

TZORIG=./tzorig
TZORIG_TZDIR=./tzorig/tzdir
TZORIG_ABS := $(shell pwd)/tzorig
TZORIG_TZDIR_ABS := $(TZORIG_ABS)/tzdir
TZORIG_OPTS := CFLAGS="-D_POSIX_C_SOURCE $(TZORIG_EXTRA_CFLAGS)" TZDIR=$(TZORIG_TZDIR_ABS)


## Options for building zdumps
ZDUMPOUT=$(shell pwd)/zdumpout
ICUZDUMPOUT=$(shell pwd)/icuzdumpout

ZDUMP_OPTS= -v -a -d $(ZDUMPOUT) -c 1902,2038 -i
ICUZDUMP_OPTS= -a -d $(ICUZDUMPOUT)

ifeq ($(TZDATA),)
all: 
	@echo ERROR "tzdata*.tar.gz" can\'t be found.
	@false
else
all: icu_data
endif

TZCODE_TARGETS= tzorig check-dump

ifeq ($(TZCODE),)
# we're broken.
$(TZCODE_TARGETS):
	@echo ERROR "tzcode*.tar.gz" can\'t be found.
	@false

else
ifeq ($(TZDATA),)
# we're broken.
$(TZCODE_TARGETS):
	@echo ERROR "tzdata*.tar.gz" can\'t be found.
	@false
else
tzorig:	$(TZCODE) $(TZDATA)
	-$(RMV) ./tzorig/
	mkdir $@
	mkdir $(TZORIG_TZDIR)
	gunzip -d < $(TZDATA) | ( cd $@ ; tar xf - )
	gunzip -d < $(TZCODE) | ( cd $@ ; tar xf - )
	-mv $(TZORIG)/zdump.c $(TZORIG)/zdump.c.orig
	cp $(srcdir)/zdump.c $(TZORIG)/zdump.c
	-mv $(TZORIG)/factory $(TZORIG)/factory.orig
	cat $(TZORIG)/factory.orig $(srcdir)/icuzones > $(TZORIG)/factory
	$(MAKE) -C $@ $(TZORIG_OPTS) zdump zones

$(ZDUMPOUT): tzorig
	( cd $(TZORIG) ; ./zdump$(EXEEXT) $(ZDUMP_OPTS) )


dump-out: $(ZDUMPOUT) $(ICUZDUMPOUT)

check-dump: dump-out
	diff -r zdumpout icuzdumpout

endif
endif

$(ICUZDUMPOUT): icuzdump$(EXEEXT)
	-$(RMV) $(ICUZDUMPOUT)
	-mkdir $(ICUZDUMPOUT)
	$(INVOKE) ./icuzdump $(ICUZDUMP_OPTS)


#
# old 'tz' rules start here
#


PRIMARY_YDATA=	africa antarctica asia australasia \
		europe northamerica southamerica
YDATA=		$(PRIMARY_YDATA) pacificnew etcetera factory backward
NDATA=		systemv
SDATA=		solar87 solar88 solar89
TDATA=		$(YDATA) $(NDATA) $(SDATA) 
YEARISTYPE=     ./yearistype

ZIC = ./zic
TZDIR=zoneinfo

CFLAGS+=-D_POSIX_C_SOURCE
CPPFLAGS+= -DTZDIR=\"$(TZDIR)\" 

# more data
XDATA=zone.tab yearistype.sh leapseconds iso3166.tab
ICUDATA=ZoneMetaData.java icu_zone.txt tz2icu zoneinfo.txt

zic:		$(OBJECTS) yearistype $(srcdir)/tz2icu.h
		$(CC) $(CFLAGS) $(TZORIG_EXTRA_CFLAGS) $(LFLAGS) -I$(srcdir) $(OBJECTS) $(LDLIBS) -o $@

tz2icu:		$(srcdir)/tz2icu.cpp $(srcdir)/tz2icu.h
		$(CXX) -W -Wall  -I$(srcdir) -I$(top_srcdir)/common -pedantic $(srcdir)/tz2icu.cpp -o $@

icuzdump${EXEEXT}:	$(srcdir)/icuzdump.cpp
		$(LINK.cc)  -I$(srcdir) -I$(top_srcdir)/common -I$(top_srcdir)/i18n -I$(top_srcdir)/tools/toolutil -I$(top_srcdir)/io  -pedantic $(srcdir)/icuzdump.cpp $(LIBICUUC) $(LIBICUDT) $(LIBICUI18N) $(LIBICUIO) $(LIBICUTOOLUTIL) -o $@


#		$(CXX) -W -Wall  -I$(srcdir) -I$(top_srcdir)/common -pedantic $(srcdir)/icuzdump.cpp -o $@

yearistype.sh: $(TZDATA)
	gunzip -d < $(TZDATA) | tar xf -

yearistype:	yearistype.sh
		cp yearistype.sh yearistype
		chmod +x yearistype

posix_only:	zic $(TDATA) $(srcdir)/icuzones
		$(ZIC) -y $(YEARISTYPE) -d $(TZDIR) -L /dev/null $(TDATA) $(srcdir)/icuzones


icu_data:	tz2icu posix_only
		./tz2icu $(TZDIR) zone.tab `echo $(TZDATA) | sed -e "s/.*\/tzdata//;s/\.tar\.gz$$//"`

clean:
		-rm -f core *.o *.out zdump${EXEEXT} zic${EXEEXT} yearistype date tz2icu${EXEEXT}
		@echo ICU specific cleanup:
		-rm -f $(ICUDATA)
		-rm -rf $(TZDIR)
		-$(RMV) icuzdump${EXEEXT} tzorig ./zdumpout/ ./icuzdumpout/
ifneq ($(TZDATA),)
		-rm -rf `gunzip -d < $(TZDATA) | tar tf - | grep -o '[^ ]*$$' | tr '\n' ' '`
endif

checkclean:

dataclean: clean
	-rm -f $(TDATA) $(XDATA)

distclean:	dataclean clean
	-rm -f Makefile

Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
	cd $(top_builddir) \
	&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status