diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2004-05-21 21:56:02 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2004-05-21 21:56:02 +0000 |
commit | add8b70dda0439c8b3a89440576cbfc19989ed39 (patch) | |
tree | 7d49eead791d77e6fe898ee1e303fe9d62dc270b | |
parent | d584db60864f963691cd484b2438305dfaabae9e (diff) | |
download | postgresql-add8b70dda0439c8b3a89440576cbfc19989ed39.tar.gz postgresql-add8b70dda0439c8b3a89440576cbfc19989ed39.zip |
Handle inclusion of port modules 'correctly', viz the same way libpq
does it. Fixes OS X, which needs path.c. It may be that Win32 needs
some more port modules, but they are easily added.
-rw-r--r-- | src/interfaces/ecpg/ecpglib/Makefile | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/src/interfaces/ecpg/ecpglib/Makefile b/src/interfaces/ecpg/ecpglib/Makefile index 8755081e9ec..0b7291c42c1 100644 --- a/src/interfaces/ecpg/ecpglib/Makefile +++ b/src/interfaces/ecpg/ecpglib/Makefile @@ -4,7 +4,7 @@ # # Copyright (c) 1994, Regents of the University of California # -# $PostgreSQL: pgsql/src/interfaces/ecpg/ecpglib/Makefile,v 1.21 2004/05/21 03:12:03 momjian Exp $ +# $PostgreSQL: pgsql/src/interfaces/ecpg/ecpglib/Makefile,v 1.22 2004/05/21 21:56:02 tgl Exp $ # #------------------------------------------------------------------------- @@ -17,18 +17,13 @@ SO_MAJOR_VERSION= 4 SO_MINOR_VERSION= 2 override CPPFLAGS := -I$(top_srcdir)/src/interfaces/ecpg/include \ - -I$(libpq_srcdir) $(CPPFLAGS) + -I$(libpq_srcdir) -I$(top_builddir)/src/port $(CPPFLAGS) override CFLAGS += $(PTHREAD_CFLAGS) OBJS= execute.o typename.o descriptor.o data.o error.o prepare.o memory.o \ - connect.o misc.o + connect.o misc.o path.o -# needed by dllwrap -ifeq ($(PORTNAME), win32) -PGPORT=-lpgport -endif - -SHLIB_LINK = -L../pgtypeslib -lpgtypes $(PGPORT) $(libpq) \ +SHLIB_LINK = -L../pgtypeslib -lpgtypes $(libpq) \ $(filter -lintl -lssl -lcrypto -lkrb5 -lcrypt -lm, $(LIBS)) $(PTHREAD_LIBS) all: all-lib @@ -36,6 +31,14 @@ all: all-lib # Shared library stuff include $(top_srcdir)/src/Makefile.shlib +# We use some port modules verbatim, but since we need to +# compile with appropriate options to build a shared lib, we can't +# necessarily use the same object files as the backend uses. Instead, +# symlink the source files in here and build our own object file. + +path.c: % : $(top_srcdir)/src/port/% + rm -f $@ && $(LN_S) $< . + install: all installdirs install-lib installdirs: @@ -44,7 +47,7 @@ installdirs: uninstall: uninstall-lib clean distclean maintainer-clean: clean-lib - rm -f $(OBJS) + rm -f $(OBJS) path.c depend dep: $(CC) -MM $(CFLAGS) *.c >depend |