diff options
Diffstat (limited to 'src/bin/initdb/Makefile')
-rw-r--r-- | src/bin/initdb/Makefile | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/src/bin/initdb/Makefile b/src/bin/initdb/Makefile new file mode 100644 index 0000000..a620a5b --- /dev/null +++ b/src/bin/initdb/Makefile @@ -0,0 +1,69 @@ +#------------------------------------------------------------------------- +# +# Makefile for src/bin/initdb +# +# Portions Copyright (c) 1996-2021, 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) + +# Note: it's important that we link to encnames.o from libpgcommon, not +# from libpq, else we have risks of version skew if we run with a libpq +# shared library from a different PG version. The libpq_pgport macro +# should ensure that that happens. +# +# We need libpq only because fe_utils does. +LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils $(libpq_pgport) + +# use system timezone data? +ifneq (,$(with_system_tzdata)) +override CPPFLAGS += '-DSYSTEMTZDIR="$(with_system_tzdata)"' +endif + +OBJS = \ + $(WIN32RES) \ + findtimezone.o \ + initdb.o \ + localtime.o + +all: initdb + +initdb: $(OBJS) | submake-libpq submake-libpgport submake-libpgfeutils + $(CC) $(CFLAGS) $(OBJS) $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X) + +# We must 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) localtime.c + rm -rf tmp_check + +# ensure that changes in datadir propagate into object file +initdb.o: initdb.c $(top_builddir)/src/Makefile.global + +check: + $(prove_check) + +installcheck: + $(prove_installcheck) |