#------------------------------------------------------------------------- # # Makefile for src/bin/initdb # # Portions Copyright (c) 1996-2013, PostgreSQL Global Development Group # Portions Copyright (c) 1994, Regents of the University of California # # src/bin/initdb/Makefile # #------------------------------------------------------------------------- PGFILEDESC = "initdb - initialize a new database cluster" PGAPPICON=win32 subdir = src/bin/initdb top_builddir = ../../.. include $(top_builddir)/src/Makefile.global override CPPFLAGS := -DFRONTEND -I$(libpq_srcdir) -I$(top_srcdir)/src/timezone $(CPPFLAGS) # use system timezone data? ifneq (,$(with_system_tzdata)) override CPPFLAGS += '-DSYSTEMTZDIR="$(with_system_tzdata)"' endif OBJS= initdb.o findtimezone.o localtime.o encnames.o $(WIN32RES) all: initdb initdb: $(OBJS) | submake-libpgport $(CC) $(CFLAGS) $(OBJS) $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X) # We used to pull in all of libpq to get encnames.c, but that # exposes us to risks of version skew if we link to a shared library. # Do it the hard way, instead, so that we're statically linked. encnames.c: % : $(top_srcdir)/src/backend/utils/mb/% rm -f $@ && $(LN_S) $< . # Likewise, pull in localtime.c from src/timezones localtime.c: % : $(top_srcdir)/src/timezone/% rm -f $@ && $(LN_S) $< . install: all installdirs $(INSTALL_PROGRAM) initdb$(X) '$(DESTDIR)$(bindir)/initdb$(X)' installdirs: $(MKDIR_P) '$(DESTDIR)$(bindir)' uninstall: rm -f '$(DESTDIR)$(bindir)/initdb$(X)' clean distclean maintainer-clean: rm -f initdb$(X) $(OBJS) encnames.c localtime.c # ensure that changes in datadir propagate into object file initdb.o: initdb.c $(top_builddir)/src/Makefile.global