#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/interfaces/libpgtcl/Attic/Makefile,v 1.4 1996/11/08 00:58:07 scrappy Exp $
+# $Header: /cvsroot/pgsql/src/interfaces/libpgtcl/Attic/Makefile,v 1.5 1996/11/12 11:42:09 bryanh Exp $
#
#-------------------------------------------------------------------------
-LIB= pgtcl
+SRCDIR= ..
+LIBPQDIR= $(SRCDIR)/libpq
+include ../Makefile.global
-MKDIR= ../mk
-include $(MKDIR)/postgres.mk
-
-CFLAGS+= -I$(HEADERDIR) \
- -I$(srcdir)/backend/include \
- -I$(srcdir)/backend \
- -I$(CURDIR) \
- -I$(TCL_INCDIR) \
- -I$(srcdir)/libpq
-
-LIBLDLIBS+= -L$(LIBDIR) -lpq
+INCLUDE_OPT= \
+ -I../backend \
+ -I../include \
+ -I$(LIBPQDIR) \
+ -I$(TCL_INCDIR)
+CFLAGS+= $(INCLUDE_OPT)
ifdef KRBVERS
CFLAGS+= $(KRBFLAGS)
endif
ifdef LINUX_ELF
CFLAGS += -fPIC
-CC += -L $(POSTGRESDIR)/lib -lpq
endif
-LIBSRCS= pgtcl.c pgtclCmds.c pgtclId.c
+OBJS= pgtcl.o pgtclCmds.o pgtclId.o
-install-headers:
- $(INSTALL) $(INSTLOPTS) libpgtcl.h $(HEADERDIR)/libpgtcl.h
+all: libpgtcl.a
+
+libpgtcl.a: $(OBJS)
+ifdef MK_NO_LORDER
+ $(AR) $(AROPT) libpgtcl.a $(OBJS)
+else
+ $(AR) $(AROPT) libpgtcl.a `lorder $(OBJS) | tsort`
+endif
+ $(RANLIB) libpgtcl.a
+
+.PHONY: beforeinstall-headers install-headers
+.PHONY: install install-libpgtcl
+install: install-headers install-libpgtcl
+
+install-headers: beforeinstall-headers libpgtcl.h
+ $(INSTALL) $(INSTLOPTS) libpgtcl.h $(HEADERDIR)/libpgtcl.h
-install:: install-headers
+beforeinstall-headers:
+ @if [ ! -d $(HEADERDIR) ]; then mkdir $(HEADERDIR); fi
-include $(MKDIR)/postgres.lib.mk
+install-libpgtcl: libpgtcl.a
+ $(INSTALL) $(INSTL_LIB_OPTS) libpgtcl.a $(DESTDIR)$(LIBDIR)/libpgtcl.a
+.PHONY: clean
+clean:
+ rm -f $(OBJS)
\ No newline at end of file
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/interfaces/libpq++/Attic/Makefile,v 1.1.1.1 1996/07/09 06:22:18 scrappy Exp $
+# $Header: /cvsroot/pgsql/src/interfaces/libpq++/Attic/Makefile,v 1.2 1996/11/12 11:42:24 bryanh Exp $
#
#-------------------------------------------------------------------------
-CPP_LIB= true
+SRCDIR= ..
+LIBPQDIR= $(SRCDIR)/libpq
+include ../Makefile.global
-LIB= pq++
+CXXFLAGS= $(CFLAGS)
-MKDIR= ../mk
-include $(MKDIR)/postgres.mk
+INCLUDE_OPT= \
+ -I../backend \
+ -I../include \
+ -I$(LIBPQDIR)
-CXXFLAGS = $(CFLAGS)
-
-CXXFLAGS+= -I$(srcdir)/backend/include \
- -I$(srcdir)/backend \
- -I$(srcdir)/libpq \
- -I$(CURDIR) \
+CXXFLAGS+= $(INCLUDE_OPT) -DPOSTPORT='"$(POSTPORT)"'
ifdef KRBVERS
CXXFLAGS+= $(KRBFLAGS)
endif
+OBJS= pgenv.o pgconnection.o pglobject.o
-LIBSRCS = pgenv.cc pgconnection.cc pglobject.cc
-
-.PHONY: beforeinstall-headers install-headers
+all: libpq++.a examples
-ifndef NO_BEFOREINSTL
-beforeinstall-headers:
- @-if [ ! -d $(HEADERDIR) ]; then mkdir $(HEADERDIR); fi
+libpq++.a: $(OBJS)
+ifdef MK_NO_LORDER
+ $(AR) $(AROPT) libpq++.a $(OBJS)
else
-beforeinstall-headers: .dosomething
+ $(AR) $(AROPT) libpq++.a `lorder $(OBJS) | tsort`
endif
+ $(RANLIB) libpq++.a
+
+.PHONY: examples
+examples:
+ $(MAKE) -C examples all
-HEADERFILES = libpq++.H
+.PHONY: beforeinstall-headers install-headers
+.PHONY: install install-libpq++ doc
+
+install: install-headers install-libpq++ doc
+
+install-headers: beforeinstall-headers libpq++.H
+ $(INSTALL) $(INSTLOPTS) libpq++.H $(HEADERDIR)/libpq++.H
+
+beforeinstall-headers:
+ @if [ ! -d $(HEADERDIR) ]; then mkdir $(HEADERDIR); fi
-install-headers: beforeinstall-headers
- @for i in ${HEADERFILES}; do \
- echo "Installing $(HEADERDIR)/$$i."; \
- $(INSTALL) -c -m 444 $$i $(HEADERDIR)/$$i; \
- done
+install-libpq++: libpq++.a
+ $(INSTALL) $(INSTL_LIB_OPTS) libpq++.a $(DESTDIR)$(LIBDIR)/libpq++.a
-install:: install-headers
+doc:
+ $(MAKE) -C man install
-include $(MKDIR)/postgres.lib.mk
+clean:
+ rm libpq++.a $(OBJS)
+ $(MAKE) -C examples clean
\ No newline at end of file
# Makefile for example programs
#
-CPP_PROG = true
+SRCDIR= ../..
+LIBPQDIR= $(SRCDIR)/libpq
+include ../../Makefile.global
-MKDIR= ../../mk
-include $(MKDIR)/postgres.mk
+CXXFLAGS= $(CFLAGS)
-CXXFLAGS+= -I$(HEADERDIR) -I$(srcdir)/libpq -I$(srcdir)/backend \
- -I$(srcdir)/backend/include
+INCLUDE_OPT= \
+ -I.. \
+ -I../../backend \
+ -I../../include \
+ -I$(LIBPQDIR)
-LD_ADD+=-L$(LIBDIR) -lpq++ -lpq
+CXXFLAGS+= $(INCLUDE_OPT)
+
+LD_ADD+= -L.. -lpq++ -L$(LIBPQDIR) -lpq
#
# And where libpq goes, so goes the authentication stuff...
CXXFLAGS+= $(KRBFLAGS)
endif
-P0_PROG:= testlibpq0
-P0_OBJS:= testlibpq0.o
-
-$(P0_PROG): $(addprefix $(objdir)/,$(P0_OBJS))
- $(CXX) $(CFLAGS) -o $(objdir)/$(@F) $< $(LD_ADD)
-
-P1_PROG:= testlibpq1
-P1_OBJS:= testlibpq1.o
-
-$(P1_PROG): $(addprefix $(objdir)/,$(P1_OBJS))
- $(CXX) $(CFLAGS) -o $(objdir)/$(@F) $< $(LD_ADD)
-
-P2_PROG:= testlibpq2
-P2_OBJS:= testlibpq2.o
-
-$(P2_PROG): $(addprefix $(objdir)/,$(P2_OBJS))
- $(CXX) $(CFLAGS) -o $(objdir)/$(@F) $< $(LD_ADD)
-
-P3_PROG:= testlibpq3
-P3_OBJS:= testlibpq3.o
-
-$(P3_PROG): $(addprefix $(objdir)/,$(P3_OBJS))
- $(CXX) $(CFLAGS) -o $(objdir)/$(@F) $< $(LD_ADD)
-
-P4_PROG:= testlibpq4
-P4_OBJS:= testlibpq4.o
-
-$(P4_PROG): $(addprefix $(objdir)/,$(P4_OBJS))
- $(CXX) $(CFLAGS) -o $(objdir)/$(@F) $< $(LD_ADD)
-
-P5_PROG:= testlo
-P5_OBJS:= testlo.o
+PROGS= testlibpq0 testlibpq1 testlibpq2 testlibpq3 testlibpq4 testlo
-$(P5_PROG): $(addprefix $(objdir)/,$(P5_OBJS))
- $(CXX) $(CFLAGS) -o $(objdir)/$(@F) $< $(LD_ADD)
+all: submake $(PROGS)
-OBJS:= $(P0_OBJS) $(P1_OBJS) $(P2_OBJS) $(P3_OBJS) $(P4_OBJS) $(P5_OBJS)
-PROGS:= $(P0_PROG) $(P1_PROG) $(P2_PROG) $(P3_PROG) $(P4_PROG) $(P5_PROG)
+$(PROGS): % : %.cc ../libpq++.a
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $@.cc $(LD_ADD)
-CLEANFILES+= $(OBJS) $(PROGS)
+.PHONY: submake
+submake:
+ $(MAKE) -C.. libpq++.a
-all:: $(PROGS)
+../libpq++.a:
+ $(MAKE) -C.. libpq++.a
-install:: $(PROGS)
- @for i in ${PROGS}; do \
- echo "Installing $$i"; \
- $(INSTALL) $(objdir)/$$i $(DESTDIR)$(BINDIR)/$$i;\
- done
+clean:
+ rm -f $(PROGS)
*
* IDENTIFICATION
*
- * $Id: libpq++.H,v 1.2 1996/08/21 04:32:09 scrappy Exp $
+ * $Id: libpq++.H,v 1.3 1996/11/12 11:42:27 bryanh Exp $
*
*-------------------------------------------------------------------------
*/
#include <strings.h>
extern "C" {
+#include "config.h"
+#include "postgres.h"
#include "libpq-fe.h"
#include "fe-auth.h"
}
* Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/interfaces/libpq++/Attic/pglobject.cc,v 1.1.1.1 1996/07/09 06:22:18 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/interfaces/libpq++/Attic/pglobject.cc,v 1.2 1996/11/12 11:42:31 bryanh Exp $
*
*-------------------------------------------------------------------------
*/
#include "libpq++.H"
extern "C" {
+#include <unistd.h>
+#include <fcntl.h>
#include "libpq/libpq-fs.h"
}
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/interfaces/libpq/Makefile,v 1.15 1996/11/09 06:24:51 momjian Exp $
+# $Header: /cvsroot/pgsql/src/interfaces/libpq/Makefile,v 1.16 1996/11/12 11:42:21 bryanh Exp $
#
#-------------------------------------------------------------------------
install-shlib-dep :=
endif
-install-libpq:
+install-libpq: libpq.a
$(INSTALL) $(INSTL_LIB_OPTS) libpq.a $(DESTDIR)$(LIBDIR)/libpq.a
-install-shlib:
+install-shlib: libpq.so.1
$(INSTALL) $(INSTL_LIB_OPTS) libpq.so.1 $(DESTDIR)$(LIBDIR)/libpq.so.1
depend dep:
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/test/Makefile,v 1.1.1.1 1996/07/09 06:22:20 scrappy Exp $
+# $Header: /cvsroot/pgsql/src/test/Makefile,v 1.2 1996/11/12 11:42:41 bryanh Exp $
#
#-------------------------------------------------------------------------
-SUBDIR= bench regress
-
-include ../mk/postgres.subdir.mk
-
-
+.DEFAULT all:
+ $(MAKE) -C bench $@
+ $(MAKE) -C regress $@
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/test/bench/Attic/Makefile,v 1.1.1.1 1996/07/09 06:22:21 scrappy Exp $
+# $Header: /cvsroot/pgsql/src/test/bench/Attic/Makefile,v 1.2 1996/11/12 11:42:49 bryanh Exp $
#
#-------------------------------------------------------------------------
-MKDIR= ../../mk
-include $(MKDIR)/postgres.mk
-
+SRCDIR= ../..
+LIBPQDIR= $(SRCDIR)/libpq
+include ../../Makefile.global
CREATEFILES= create.sql bench.sql
+OUTFILES= bench.out bench.out.perquery
-include $(MKDIR)/postgres.user.mk
+CFLAGS+= -I$(LIBPQDIR) $(CFLAGS_SL)
+all: $(CREATEFILES)
+ rm -f $(OUTFILES)
-OUTFILES= bench.out bench.out.perquery
-CLEANFILES+= $(CREATEFILES) $(OUTFILES)
+create.sql: create.source
+ if [ -z "$$USER" ]; then USER=$$LOGNAME; fi; \
+ if [ -z "$$USER" ]; then USER=`whoami`; fi; \
+ if [ -z "$$USER" ]; then echo 'Cannot deduce $$USER.'; exit 1; fi; \
+ rm -f $@; \
+ C=`pwd`; \
+ sed -e "s:_CWD_:$$C:g" \
+ -e "s:_OBJWD_:$$C:g" \
+ -e "s:_SLSUFF_:$(SLSUFF):g" \
+ -e "s/_USER_/$$USER/g" < $< > $@
bench.sql:
- cat > $(objdir)/$@ < /dev/null
x=1; \
for i in `ls query[0-9][0-9]`; do \
- echo "select $$x as x" >> $(objdir)/$@; \
- cat $$i >> $(objdir)/$@; \
- x=`expr $$x + 1`; \
+ echo "select $$x as x" >> bench.sql; \
+ cat $$i >> bench.sql; \
+ x=`expr $$x + 1`; \
done
-bench2.pq:
- cat > ${.TARGET} < /dev/null
- C=`pwd`; cd ${.CURDIR}; \
- for i in 1 2 3 4 5 6; do \
- echo "select timeofday();" >> $$C/${.TARGET}; \
- done; \
- x=1; \
- for i in `ls query[0-9][0-9]`; do \
- echo "select $$x as x;" >> $$C/${.TARGET}; \
- echo "select timeofday();" >> $$C/${.TARGET}; \
- cat $$i >> $$C/${.TARGET}; \
- echo "select timeofday();" >> $$C/${.TARGET}; \
- x=`expr $$x + 1`; \
- done
+runtest: $(OUTFILES)
bench.out: $(CREATEFILES)
$(SHELL) ./create.sh && \
- $(SHELL) ./runwisc.sh > $(objdir)/$@ 2>&1
- @echo "RESULTS OF BENCHMARK ARE SAVED IN ${MAKEOBJDIR}/bench.out";
+ $(SHELL) ./runwisc.sh >bench.out 2>&1
+ @echo "RESULTS OF BENCHMARK ARE SAVED IN FILE bench.out";
bench.out.perquery: bench.out
- $(SHELL) ./perquery < $(objdir)/bench.out 2>&1 > $@
- @echo "BREAKDOWN OF BENCHMARK IS SAVED IN ${MAKEOBJDIR}/bench.out.perquery";
-
-all:: $(CREATEFILES)
- rm -f $(OUTFILES)
+ $(SHELL) ./perquery <bench.out 2>&1 > $@
+ @echo "BREAKDOWN OF BENCHMARK IS SAVED IN FILE" \
+ "bench.out.perquery";
-runtest: ${OUTFILES}
+clean:
+ rm -f $(OUTFILES) $(CREATEFILES)
# Makefile for example programs
#
-MKDIR= ../../mk
-include $(MKDIR)/postgres.mk
+SRCDIR= ../..
+LIBPQDIR= $(SRCDIR)/libpq
+include ../../Makefile.global
-CFLAGS+= -I$(HEADERDIR) -I$(srcdir)/backend -I$(srcdir)/backend/include
+CFLAGS+= -I$(LIBPQDIR)
-LIBPQ:= -L$(LIBDIR) -lpq
-
-LD_ADD+=$(LIBPQ)
+LD_ADD+= -L$(LIBPQDIR) -lpq
#
# And where libpq goes, so goes the authentication stuff...
CFLAGS+= $(KRBFLAGS)
endif
-P1_PROG:= testlibpq
-P1_OBJS:= testlibpq.o
-
-$(P1_PROG): $(addprefix $(objdir)/,$(P1_OBJS))
- $(CC) $(CFLAGS) -o $(objdir)/$(@F) $< $(LD_ADD)
-
-P2_PROG:= testlibpq2
-P2_OBJS:= testlibpq2.o
-
-$(P2_PROG): $(addprefix $(objdir)/,$(P2_OBJS))
- $(CC) $(CFLAGS) -o $(objdir)/$(@F) $< $(LD_ADD)
-
-
-P3_PROG:= testlibpq3
-P3_OBJS:= testlibpq3.o
-
-$(P3_PROG): $(addprefix $(objdir)/,$(P3_OBJS))
- $(CC) $(CFLAGS) -o $(objdir)/$(@F) $< $(LD_ADD)
-
-P4_PROG:= testlo
-P4_OBJS:= testlo.o
-
-$(P4_PROG): $(addprefix $(objdir)/,$(P4_OBJS))
- $(CC) $(CFLAGS) -o $(objdir)/$(@F) $< $(LD_ADD)
-
-OBJS:= $(P1_OBJS) $(P2_OBJS) $(P3_OBJS) $(P4_OBJS)
-PROGS:= $(P1_PROG) $(P2_PROG) $(P3_PROG) $(P4_PROG)
-
-CLEANFILES+= $(OBJS) $(PROGS)
-
-all:: $(PROGS)
-
-install:: $(PROGS)
- @for i in ${PROGS}; do \
- echo "Installing $$i"; \
- $(INSTALL) $(objdir)/$$i $(DESTDIR)$(BINDIR)/$$i;\
- done
-
-
-
-
-
-
-
-
-
-
-
-
-
+PROGS= testlibpq0 testlibpq1 testlibpq2 testlibpq3 testlibpq4 testlo
+all: $(PROGS)
+$(PROGS): % : %.c
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $@.c $(LD_ADD)
+clean:
+ rm -f $(PROGS)
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/test/regress/Makefile,v 1.7 1996/11/12 11:16:44 scrappy Exp $
+# $Header: /cvsroot/pgsql/src/test/regress/Makefile,v 1.8 1996/11/12 11:43:05 bryanh Exp $
#
#-------------------------------------------------------------------------
-MKDIR= ../../mk
-include $(MKDIR)/postgres.mk
-include $(MKDIR)/postgres.user.mk
+SRCDIR= ../..
+LIBPQDIR= $(SRCDIR)/libpq
+include ../../Makefile.global
-CFLAGS+=-I../../include
+CFLAGS+= -I$(LIBPQDIR) -I../../include
+LDADD+= -L$(LIBPQDIR) -lpq
+
#
-# try locating libpq.a in the following places
-#
-LIBPQ:= -L$(srcdir)/libpq/$(objdir) -L$(LIBDIR) -lpq
-
-LDADD+= $(LIBPQ)
-
-
-#
-# build dynamically-loaded object files
+# DLOBJS is the dynamically-loaded object file. The regression test uses
+# this when it does a CREATE FUNCTION ... LANGUAGE 'C').
#
DLOBJS= regress$(SLSUFF)
#
# ... plus test query inputs
#
-CREATEFILES= $(DLOBJS:%=$(objdir)/%) \
- create.sql queries.sql errors.sql destroy.sql security.sql expected.out
-
+# INFILES is the files the regression test uses for input.
+INFILES= $(DLOBJS) \
+ create.sql queries.sql errors.sql destroy.sql security.sql \
+ expected.out
+#
+# plus exports files
+#
+ifdef EXPSUFF
+INFILES+= $(DLOBJS:.o=$(EXPSUFF))
+endif
+# OUTFILES is the files that get created by running the regression test.
OUTFILES= stud_emp.data onek.data regress.out aportal.out
-CLEANFILES+= $(notdir $(CREATEFILES)) $(OUTFILES)
-
-$(OUTFILES): $(CREATEFILES)
- $(SHELL) ./regress.sh 2>&1 | tee $(objdir)/regress.out
- @echo "RESULTS OF REGRESSION ARE SAVED IN $(objdir)/regress.out"
-
#
-# expected results file -- expand macros for user and location
+# prepare to run the test (including clean-up after the last run)
#
-# the expected.input file is make by hand from 'regress.out' when the
-# regression test has been updated and a successful output obtained
+all: $(INFILES)
+ rm -f $(OUTFILES)
+
+#
+# run the test
#
+runtest: $(INFILES) expected.out
+ $(SHELL) ./regress.sh 2>&1 | tee regress.out
+ @echo "ACTUAL RESULTS OF REGRESSION TEST ARE NOW IN FILE regress.out"
+
+# The expected.input file is part of the distribution. It was made by hand
+# from 'regress.out' from a reference run of the regression test, replacing
+# installation-dependent things with names like _CWD_. The following rule
+# turns those names back into real values for the instant installation to
+# create a standard (expected.out) against which to compare regress.out
+# from the experimental run.
+
expected.out: expected.input
if [ -z "$$USER" ]; then USER=$$LOGNAME; fi; \
if [ -z "$$USER" ]; then USER=`whoami`; fi; \
if [ -z "$$USER" ]; then echo 'Cannot deduce $USER.'; exit 1; fi; \
- rm -f $(objdir)/expected.out; \
+ rm -f expected.out; \
C="`pwd`"; \
sed -e "s:_CWD_:$$C:g" \
- -e "s:_OBJWD_:$$C/$(objdir):g" \
+ -e "s:_OBJWD_:$$C:g" \
-e "s:_SLSUFF_:$(SLSUFF):g" \
- -e "s/_USER_/$$USER/g" < expected.input > $(objdir)/expected.out
+ -e "s/_USER_/$$USER/g" < expected.input > expected.out
+ @echo "YOUR EXPECTED RESULTS ARE NOW IN FILE expected.out."
-#
-# prepare to run the test (including clean-up after the last run)
-#
-all:: $(CREATEFILES)
- cd $(objdir); rm -f $(OUTFILES)
-
-#
-# run the test
-#
-runtest: expected.out regress.out
+%.sql: %.source
+ if [ -z "$$USER" ]; then USER=$$LOGNAME; fi; \
+ if [ -z "$$USER" ]; then USER=`whoami`; fi; \
+ if [ -z "$$USER" ]; then echo 'Cannot deduce $$USER.'; exit 1; fi; \
+ rm -f $@; \
+ C=`pwd`; \
+ sed -e "s:_CWD_:$$C:g" \
+ -e "s:_OBJWD_:$$C:g" \
+ -e "s:_SLSUFF_:$(SLSUFF):g" \
+ -e "s/_USER_/$$USER/g" < $< > $@
-#
-# installation
-#
-install: localobj all
+clean:
+ rm -f $(INFILES)
+ rm -f $(OUTFILES)
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/tools/mkldexport/Attic/Makefile,v 1.1.1.1 1996/07/09 06:22:32 scrappy Exp $
+# $Header: /cvsroot/pgsql/src/tools/mkldexport/Attic/Makefile,v 1.2 1996/11/12 11:43:12 bryanh Exp $
#
#-------------------------------------------------------------------------
-SHPROG=mkldexport
+all: mkldexport
-MKDIR= ../../mk
-include ../../Makefile.global
-include $(MKDIR)/postgres.mk
+mkldexport: mkldexport.sh
+ cp mkldexport.sh mkldexport
+ chmod a+x mkldexport
-include $(MKDIR)/postgres.shell.mk
+clean:
+ rm -f mkldexport
--- /dev/null
+SRCDIR= ../..
+LIBPQDIR= $(SRCDIR)/libpq
+include ../../Makefile.global
+
+CFLAGS+= -I../../include -I$(LIBPQDIR)
+
+all: complex$(SLSUFF) funcs$(SLSUFF)
+
+clean:
+ rm -f complex$(SLSUFF) funcs$(SLSUFF)
\ No newline at end of file
#-------------------------------------------------------------------------
#
# Makefile--
-# Makefile for tutorial/C-code
-#
-# Copyright (c) 1994, Regents of the University of California
-#
+# Makefile for tutorial
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/tutorial/Makefile,v 1.1.1.1 1996/07/09 06:22:33 scrappy Exp $
+# $Header: /cvsroot/pgsql/src/tutorial/Makefile,v 1.2 1996/11/12 11:43:20 bryanh Exp $
#
#-------------------------------------------------------------------------
-MKDIR= ../mk
-include $(MKDIR)/postgres.mk
+SRCDIR= ..
+LIBPQDIR= $(SRCDIR)/libpq
+include ../Makefile.global
-VPATH:= $(VPATH):C-code
+CFLAGS+= -I$(LIBPQDIR) -I../../include
+LDADD+= -L$(LIBPQDIR) -lpq
+
#
-# build dynamically-loaded object files
+# DLOBJS is the dynamically-loaded object files. The "funcs" queries
+# include CREATE FUNCTIONs that load routines from these files.
#
-DLOBJS= complex$(SLSUFF) funcs$(SLSUFF)
+DLOBJS= complex$(SLSUFF) funcs$(SLSUFF)
+QUERIES= advanced.sql basics.sql complex.sql funcs.sql syscat.sql
#
-# ... plus test query inputs
+# plus exports files
#
-CREATEFILES= $(DLOBJS:%=$(objdir)/%) \
- advanced.sql basics.sql complex.sql funcs.sql syscat.sql
-
-include $(MKDIR)/postgres.user.mk
-
-CFLAGS+= -I$(srcdir)/backend
+ifdef EXPSUFF
+DLOBJS+= $(DLOBJS:.o=$(EXPSUFF))
+endif
-CLEANFILES+= $(notdir $(CREATEFILES))
+all: $(QUERIES)
-all:: $(CREATEFILES)
+%.sql: %.source
+ if [ -z "$$USER" ]; then USER=$$LOGNAME; fi; \
+ if [ -z "$$USER" ]; then USER=`whoami`; fi; \
+ if [ -z "$$USER" ]; then echo 'Cannot deduce $$USER.'; exit 1; fi; \
+ rm -f $@; \
+ C=`pwd`; \
+ sed -e "s:_CWD_:$$C:g" \
+ -e "s:_OBJWD_:$$C:g" \
+ -e "s:_SLSUFF_:$(SLSUFF):g" \
+ -e "s/_USER_/$$USER/g" < $< > $@
+funcs.sql:: $(DLOBJS)
+$(DLOBJS):
+ $(MAKE) -C C-code $@
+ cp C-code/$@ .
+clean:
+ $(MAKE) -C C-code clean
+ rm -f $(QUERIES)
+ rm -f $(DLOBJS)