aboutsummaryrefslogtreecommitdiff
path: root/src/mk/postgres.user.mk
diff options
context:
space:
mode:
Diffstat (limited to 'src/mk/postgres.user.mk')
-rw-r--r--src/mk/postgres.user.mk79
1 files changed, 79 insertions, 0 deletions
diff --git a/src/mk/postgres.user.mk b/src/mk/postgres.user.mk
new file mode 100644
index 00000000000..8b8c84c87f3
--- /dev/null
+++ b/src/mk/postgres.user.mk
@@ -0,0 +1,79 @@
+#-------------------------------------------------------------------------
+#
+# postgres.user.mk--
+# rules for building object/shared libraries used in dynamic loading.
+# To use the rules, set the following variables:
+# DLOBJS - objects to be linked in dynamically
+# This makefile adds the files you need to build to CREATEFILES.
+#
+# For building user modules (user functions to be loaded in dynamically).
+# Make sure the following variables are set properly (You can either
+# define them manually or include postgres.mk which defines them.):
+# MKDIR - where postgres makefiles are
+# includedir - where header files are installed
+# PORTNAME - your platform (alpha, sparc, sparc_solaris, etc.)
+# objdir - where to put the generated files
+#
+# An SQL script foo.sql or a shell script foo.sh generated from foo.source.
+# Occurrence of the following strings will be replaced with the respective
+# values. This is a feeble attempt to provide "portable" scripts.
+# _CWD_ - current working directory
+# _OBJWD_ - where the generated files (eg. object files) are
+# _SLSUFF_ - suffix of the shared library or object for
+# dynamic loading
+# _USER_ - the login of the user
+#
+# Copyright (c) 1994-5, Regents of the University of California
+#
+#
+# IDENTIFICATION
+# $Header: /cvsroot/pgsql/src/mk/Attic/postgres.user.mk,v 1.1.1.1 1996/07/09 06:22:19 scrappy Exp $
+#
+#-------------------------------------------------------------------------
+
+-include $(MKDIR)/port/postgres.mk.$(PORTNAME)
+CFLAGS+= -I$(includedir) $(CFLAGS_SL)
+
+%.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 $(objdir)/$*.sql; \
+ C=`pwd`; \
+ sed -e "s:_CWD_:$$C:g" \
+ -e "s:_OBJWD_:$$C/$(objdir):g" \
+ -e "s:_SLSUFF_:$(SLSUFF):g" \
+ -e "s/_USER_/$$USER/g" < $*.source > $(objdir)/$*.sql
+
+#How to create a dynamic lib
+%.so.1: %.so
+ @rm -f $(objdir)/$(@F)
+ $(CC) -shared $< -o $(objdir)/$(@F)
+
+%.sh: %.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 $(objdir)/$*.sh; \
+ C="`pwd`/"; \
+ sed -e "s:_CWD_:$$C:g" \
+ -e "s:_OBJWD_:$$C/$(objdir):g" \
+ -e "s:_SLSUFF_:$(SLSUFF):g" \
+ -e "s/_USER_/$$USER/g" < $*.source > $(objdir)/$*.sh
+
+#
+# plus exports files
+#
+ifdef EXPSUFF
+CREATEFILES+= $(DLOBJS:.o=$(EXPSUFF))
+endif
+
+#
+# plus shared libraries
+#
+ifdef SLSUFF
+ifneq ($(SLSUFF), '.o')
+CREATEFILES+= $(DLOBJS:.so=$(SLSUFF))
+endif
+endif
+