-# Copyright (C) 1998-2014 Free Software Foundation, Inc.
+# Copyright (C) 1998-2015 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
# The GNU C Library is free software; you can redistribute it and/or
#
subdir := timezone
+include ../Makeconfig
+
extra-objs := scheck.o ialloc.o
others := zdump zic
-tests := test-tz tst-timezone
+tests := test-tz tst-timezone tst-tzset
# pacificnew doesn't compile; if it is to be used, it should be included in
# northamerica.
tzlinks := backward systemv
tzfiles := $(tzbases) $(tzlinks)
-generated := $(addprefix z.,$(tzfiles))
+generated += $(addprefix z.,$(tzfiles))
install-sbin := zic zdump
-generated-dirs = testdata
-
-all: # Make this the default target; it will be defined in Rules.
-
-include ../Makeconfig # Get objpfx defined so we can use it below.
-
-CPPFLAGS-zic = -DNOT_IN_libc
+generated-dirs += testdata
-ifeq ($(have-ksh),yes)
install-bin-script = tzselect
generated += tzselect
+
+testdata = $(objpfx)testdata
+
+ifeq ($(run-built-tests),yes)
+# List zones generated by separate commands running zic on the host.
+# Each such zic run counts as a separate test.
+test-zones := America/New_York Etc/UTC UTC Europe/Berlin \
+ Australia/Melbourne America/Sao_Paulo Asia/Tokyo
+tests-special += $(addprefix $(testdata)/, $(test-zones))
endif
include ../Rules
# We have to make sure the data for testing the tz functions is available.
# Don't add leapseconds here since test-tz made checks that work only without
# leapseconds.
-testdata = $(objpfx)testdata
define build-testdata
-GCONV_PATH=${common-objpfx}iconvdata LANGUAGE=C LC_ALL=C \
- $(built-program-cmd) -d $(testdata) -y ./yearistype $<
+$(built-program-cmd) -d $(testdata) -y ./yearistype $<; \
+$(evaluate-test)
endef
$(objpfx)test-tz.out: $(addprefix $(testdata)/, America/New_York Etc/UTC UTC)
Australia/Melbourne \
America/Sao_Paulo Asia/Tokyo \
Europe/London)
+$(objpfx)tst-tzset.out: $(addprefix $(testdata)/XT, 1 2 3 4)
test-tz-ENV = TZDIR=$(testdata)
tst-timezone-ENV = TZDIR=$(testdata)
+tst-tzset-ENV = TZDIR=$(testdata)
# Note this must come second in the deps list for $(built-program-cmd) to work.
zic-deps = $(objpfx)zic $(leapseconds) yearistype
$(testdata)/Asia/Tokyo: asia $(zic-deps)
$(build-testdata)
+$(testdata)/XT%: testdata/XT%
+ cp $< $@
$(objpfx)tzselect: tzselect.ksh $(common-objpfx)config.make
- sed -e 's|/bin/bash|$(KSH)|g' \
- -e '/TZDIR=/s|\$$(pwd)|$(zonedir)|' \
+ sed -e 's|/bin/bash|$(BASH)|' \
+ -e 's|TZDIR=[^}]*|TZDIR=$(zonedir)|' \
-e '/TZVERSION=/s|see_Makefile|"$(version)"|' \
-e '/PKGVERSION=/s|=.*|="$(PKGVERSION)"|' \
-e '/REPORT_BUGS_TO=/s|=.*|="$(REPORT_BUGS_TO)"|' \