mirror of
https://github.com/postgres/postgres.git
synced 2026-04-12 12:36:49 -04:00
Formerly, various frontend directories symlinked these two sources and then built them locally. That's an ancient, ugly hack, and we now have a much better way: put them into libpgcommon. So do that. (The immediate motivation for this is the prospect of having to introduce still more symlinking if we don't.) This commit moves these two files absolutely verbatim, for ease of reviewing the git history. There's some follow-on work to be done that will modify them a bit. Robert Haas, Tom Lane Discussion: https://postgr.es/m/CA+TgmoYO8oq-iy8E02rD8eX25T-9SmyxKWqqks5OMHxKvGXpXQ@mail.gmail.com
69 lines
1.9 KiB
Makefile
69 lines
1.9 KiB
Makefile
#-------------------------------------------------------------------------
|
|
#
|
|
# Makefile for src/bin/initdb
|
|
#
|
|
# Portions Copyright (c) 1996-2020, 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)
|