| #------------------------------------------------------------------------- | |
| # | |
| # Makefile | |
| # Makefile for the timezone library | |
| # IDENTIFICATION | |
| # src/timezone/Makefile | |
| # | |
| #------------------------------------------------------------------------- | |
| PGFILEDESC = "zic - time zone compiler" | |
| PGAPPICON = win32 | |
| subdir = src/timezone | |
| top_builddir = ../.. | |
| include $(top_builddir)/src/Makefile.global | |
| # files to build into backend | |
| OBJS = \ | |
| localtime.o \ | |
| pgtz.o \ | |
| strftime.o | |
| # files needed to build zic utility program | |
| ZICOBJS = \ | |
| $(WIN32RES) \ | |
| zic.o | |
| # we now distribute the timezone data as a single file | |
| TZDATAFILES = $(srcdir)/data/tzdata.zi | |
| # any custom options you might want to pass to zic while installing data files | |
| ZIC_OPTIONS = | |
| # use system timezone data? | |
| ifneq (,$(with_system_tzdata)) | |
| override CPPFLAGS += '-DSYSTEMTZDIR="$(with_system_tzdata)"' | |
| endif | |
| include $(top_srcdir)/src/backend/common.mk | |
| ifeq (,$(with_system_tzdata)) | |
| all: zic | |
| endif | |
| # We could do this test in the action section: | |
| # $(if $(ZIC),$(ZIC),./zic) | |
| # but GNU make versions <= 3.78.1 or perhaps later have a bug | |
| # that causes a segfault; GNU make 3.81 or later fixes this. | |
| ifeq (,$(ZIC)) | |
| ZIC= ./zic | |
| endif | |
| zic: $(ZICOBJS) | submake-libpgport | |
| $(CC) $(CFLAGS) $(ZICOBJS) $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X) | |
| install: all installdirs | |
| ifeq (,$(with_system_tzdata)) | |
| $(ZIC) -d '$(DESTDIR)$(datadir)/timezone' $(ZIC_OPTIONS) $(TZDATAFILES) | |
| endif | |
| $(MAKE) -C tznames $@ | |
| # Note: -P code currently depends on '-b fat'. Not worth fixing right now. | |
| abbrevs.txt: zic $(TZDATAFILES) | |
| mkdir junkdir | |
| $(ZIC) -P -b fat -d junkdir $(TZDATAFILES) | LANG=C sort | uniq >abbrevs.txt | |
| rm -rf junkdir | |
| installdirs: | |
| $(MKDIR_P) '$(DESTDIR)$(datadir)' | |
| uninstall: | |
| ifeq (,$(with_system_tzdata)) | |
| rm -rf '$(DESTDIR)$(datadir)/timezone' | |
| endif | |
| $(MAKE) -C tznames $@ | |
| clean distclean maintainer-clean: | |
| rm -f zic$(X) $(ZICOBJS) abbrevs.txt |