aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/bin/pg_ctl/Makefile12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/bin/pg_ctl/Makefile b/src/bin/pg_ctl/Makefile
index 46f30bd46f9..03ae8dea76e 100644
--- a/src/bin/pg_ctl/Makefile
+++ b/src/bin/pg_ctl/Makefile
@@ -16,12 +16,20 @@ subdir = src/bin/pg_ctl
top_builddir = ../../..
include $(top_builddir)/src/Makefile.global
+# On Windows, we need to link with libpq, just for use of pqexpbuffer;
+# but let's not pull that in on platforms where we don't need it.
+ifeq ($(PORTNAME), win32)
+override CPPFLAGS := -I$(libpq_srcdir) $(CPPFLAGS)
+SUBMAKE_LIBPQ := submake-libpq
+LIBPQ_PGPORT := $(libpq_pgport)
+endif
+
OBJS= pg_ctl.o $(WIN32RES)
all: pg_ctl
-pg_ctl: $(OBJS) | submake-libpgport
- $(CC) $(CFLAGS) $(OBJS) $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
+pg_ctl: $(OBJS) | submake-libpgport $(SUBMAKE_LIBPQ)
+ $(CC) $(CFLAGS) $(OBJS) $(LIBPQ_PGPORT) $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
install: all installdirs
$(INSTALL_PROGRAM) pg_ctl$(X) '$(DESTDIR)$(bindir)/pg_ctl$(X)'