diff --git a/Makefile b/Makefile index 3659378..3d9c9d1 100644 --- a/Makefile +++ b/Makefile @@ -45,20 +45,20 @@ POSIXRULES= America/New_York # Everything gets put in subdirectories of. . . -TOPDIR= /usr/local +TOPDIR= $(DESTDIR)/usr # "Compiled" time zone information is placed in the "TZDIR" directory # (and subdirectories). # Use an absolute path name for TZDIR unless you're just testing the software. -TZDIR= $(TOPDIR)/etc/zoneinfo +TZDIR= $(TOPDIR)/share/zoneinfo # Types to try, as an alternative to time_t. int64_t should be first. TIME_T_ALTERNATIVES= int64_t int32_t uint32_t uint64_t # The "tzselect", "zic", and "zdump" commands get installed in. . . -ETCDIR= $(TOPDIR)/etc +SBINDIR= $(TOPDIR)/sbin # If you "make INSTALL", the "date" command gets installed in. . . @@ -66,7 +66,7 @@ BINDIR= $(TOPDIR)/bin # Manual pages go in subdirectories of. . . -MANDIR= $(TOPDIR)/man +MANDIR= $(TOPDIR)/share/man # Library functions are put in an archive in LIBDIR. @@ -97,7 +97,7 @@ YEARISTYPE= ./yearistype # Non-default libraries needed to link. # Add -lintl if you want to use `gettext' on Solaris. -LDLIBS= +LDLIBS=$(LDFLAGS) # Add the following to the end of the "CFLAGS=" line as needed. # -DHAVE_ADJTIME=0 if `adjtime' does not exist (SVR0?) @@ -231,7 +231,7 @@ GCC_DEBUG_FLAGS = -Dlint -g3 -O3 -fno-common -fstrict-aliasing \ # before the first Monday in January when a "%V" format is used and January 1 # falls on a Friday, Saturday, or Sunday. -CFLAGS= +CFLAGS += -std=gnu99 # Linker flags. Default to $(LFLAGS) for backwards compatibility # to tzcode2012h and earlier. @@ -292,8 +292,10 @@ GZIPFLAGS= -9n ############################################################################### -cc= cc -CC= $(cc) -DTZDIR=\"$(TZDIR)\" +CC+= -DTZDIR=\"$(TZDIR)\" +ifeq ($(NLS),1) +CC += -DHAVE_GETTEXT=1 -DTZ_DOMAIN=\"libc\" +endif TZCSRCS= zic.c localtime.c asctime.c scheck.c ialloc.c TZCOBJS= zic.o localtime.o asctime.o scheck.o ialloc.o @@ -334,14 +336,16 @@ all: tzselect zic zdump $(LIBOBJS) ALL: all date -install: all $(DATA) $(REDO) $(TZLIB) $(MANS) $(TABDATA) +install: all $(DATA) $(REDO) $(MANS) $(TABDATA) $(ZIC) -y $(YEARISTYPE) \ -d $(TZDIR) -l $(LOCALTIME) -p $(POSIXRULES) -rm -f $(TZDIR)/iso3166.tab $(TZDIR)/zone.tab cp iso3166.tab zone.tab $(TZDIR)/. - -mkdir $(TOPDIR) $(ETCDIR) - cp tzselect zic zdump $(ETCDIR)/. - -mkdir $(TOPDIR) $(MANDIR) \ + -mkdir -p $(TOPDIR) $(SBINDIR) + cp zic zdump $(SBINDIR)/. + -mkdir -p $(TOPDIR) $(BINDIR) + cp tzselect $(BINDIR)/. + -mkdir -p $(TOPDIR) $(MANDIR) \ $(MANDIR)/man3 $(MANDIR)/man5 $(MANDIR)/man8 -rm -f $(MANDIR)/man3/newctime.3 \ $(MANDIR)/man3/newtzset.3 \ @@ -350,13 +354,11 @@ install: all $(DATA) $(REDO) $(TZLIB) $(MANS) $(TABDATA) $(MANDIR)/man8/zdump.8 \ $(MANDIR)/man8/zic.8 cp newctime.3 newtzset.3 $(MANDIR)/man3/. - cp tzfile.5 $(MANDIR)/man5/. - cp tzselect.8 zdump.8 zic.8 $(MANDIR)/man8/. INSTALL: ALL install date.1 - -mkdir $(TOPDIR) $(BINDIR) + -mkdir -p $(TOPDIR) $(BINDIR) cp date $(BINDIR)/. - -mkdir $(TOPDIR) $(MANDIR) $(MANDIR)/man1 + -mkdir -p $(TOPDIR) $(MANDIR) $(MANDIR)/man1 -rm -f $(MANDIR)/man1/date.1 cp date.1 $(MANDIR)/man1/. @@ -391,9 +393,9 @@ right_only: zic leapseconds $(TDATA) # You must replace all of $(TZDIR) to switch from not using leap seconds # to using them, or vice versa. other_two: zic leapseconds $(TDATA) - $(ZIC) -y $(YEARISTYPE) -d $(TZDIR)-posix -L /dev/null $(TDATA) + $(ZIC) -y $(YEARISTYPE) -d $(TZDIR)/posix -L /dev/null $(TDATA) $(ZIC) -y $(YEARISTYPE) \ - -d $(TZDIR)-leaps -L leapseconds $(TDATA) + -d $(TZDIR)/right -L leapseconds $(TDATA) posix_right: posix_only other_two @@ -421,7 +423,7 @@ tzselect: tzselect.ksh <$? >$@ chmod +x $@ -check: check_character_set check_tables check_web +check: check_character_set check_tables check_character_set: $(ENCHILADA) sharp='#'; ! grep -n $(INVALID_CHAR) $(ENCHILADA)