]> granicus.if.org Git - postgresql/blobdiff - contrib/cube/Makefile
Make all our flex and bison files use %option prefix or %name-prefix
[postgresql] / contrib / cube / Makefile
index 014fafa1fe2cb81798c74b503ff105c052206c51..0b43cfa24003f797f26cd675c89401e8b76bd27f 100644 (file)
@@ -1,32 +1,40 @@
-#
-# $Header: /cvsroot/pgsql/contrib/cube/Makefile,v 1.3 2001/02/20 19:20:27 petere Exp $
-#
+# $PostgreSQL: pgsql/contrib/cube/Makefile,v 1.17 2006/03/07 01:03:12 tgl Exp $
 
-subdir = contrib/cube
-top_builddir = ../..
-include $(top_builddir)/src/Makefile.global
+MODULE_big = cube
+OBJS= cube.o cubeparse.o
 
-# override libdir to install shlib in contrib not main directory
-libdir := $(libdir)/contrib
+DATA_built = cube.sql
+DATA = uninstall_cube.sql
+DOCS = README.cube
+REGRESS = cube
 
-# shared library parameters
-NAME= cube
-SO_MAJOR_VERSION= 1
-SO_MINOR_VERSION= 0
+EXTRA_CLEAN = cubeparse.c cubeparse.h cubescan.c y.tab.c y.tab.h
 
-override CPPFLAGS := -I$(srcdir) $(CPPFLAGS)
+PG_CPPFLAGS = -I.
 
-OBJS= cube.o cubeparse.o cubescan.o buffer.o
+SHLIB_LINK += $(filter -lm, $(LIBS))
+
+ifdef USE_PGXS
+PGXS := $(shell pg_config --pgxs)
+include $(PGXS)
+else
+subdir = contrib/cube
+top_builddir = ../..
+include $(top_builddir)/src/Makefile.global
+include $(top_srcdir)/contrib/contrib-global.mk
+endif
 
-all: all-lib $(NAME).sql
 
-# Shared library stuff
-include $(top_srcdir)/src/Makefile.shlib
+# cubescan is compiled as part of cubeparse
+cubeparse.o: cubescan.c
 
+# See notes in src/backend/parser/Makefile about the following two rules
 
-cubeparse.c cubeparse.h: cubeparse.y
+cubeparse.c: cubeparse.h ;
+
+cubeparse.h: cubeparse.y
 ifdef YACC
-       $(YACC) -d $(YFLAGS) -p cube_yy $<
+       $(YACC) -d $(YFLAGS) $<
        mv -f y.tab.c cubeparse.c
        mv -f y.tab.h cubeparse.h
 else
@@ -35,53 +43,7 @@ endif
 
 cubescan.c: cubescan.l
 ifdef FLEX
-       $(FLEX) $(FLEXFLAGS) -Pcube_yy -o'$@' $<
+       $(FLEX) $(FLEXFLAGS) -o'$@' $<
 else
        @$(missing) flex $< $@
 endif
-
-$(NAME).sql: $(NAME).sql.in
-       sed -e 's:MODULE_PATHNAME:$(libdir)/$(shlib):g' < $< > $@
-
-.PHONY: submake
-submake:
-       $(MAKE) -C $(top_builddir)/src/test/regress pg_regress
-
-# against installed postmaster
-installcheck: submake
-       $(top_builddir)/src/test/regress/pg_regress cube
-
-# in-tree test doesn't work yet (no way to install my shared library)
-#check: all submake
-#      $(top_builddir)/src/test/regress/pg_regress --temp-install \
-#        --top-builddir=$(top_builddir) seg
-check:
-       @echo "'make check' is not supported."
-       @echo "Do 'make install', then 'make installcheck' instead."
-
-install: all installdirs install-lib
-       $(INSTALL_DATA) $(srcdir)/README.$(NAME)  $(docdir)/contrib
-       $(INSTALL_DATA) $(NAME).sql $(datadir)/contrib
-
-installdirs:
-       $(mkinstalldirs) $(docdir)/contrib $(datadir)/contrib $(libdir)
-
-uninstall: uninstall-lib
-       rm -f $(docdir)/contrib/README.$(NAME) $(datadir)/contrib/$(NAME).sql
-
-clean distclean maintainer-clean: clean-lib
-       rm -f cubeparse.c cubeparse.h cubescan.c
-       rm -f y.tab.c y.tab.h $(OBJS) $(NAME).sql
-# things created by various check targets
-       rm -rf results tmp_check log
-       rm -f regression.diffs regression.out regress.out run_check.out
-ifeq ($(PORTNAME), win)
-       rm -f regress.def
-endif
-
-depend dep:
-       $(CC) -MM $(CFLAGS) *.c >depend
-
-ifeq (depend,$(wildcard depend))
-include depend
-endif