]> granicus.if.org Git - postgresql/blob - src/backend/catalog/Makefile
Replace the pg_listener-based LISTEN/NOTIFY mechanism with an in-memory queue.
[postgresql] / src / backend / catalog / Makefile
1 #-------------------------------------------------------------------------
2 #
3 # Makefile for backend/catalog
4 #
5 # $PostgreSQL: pgsql/src/backend/catalog/Makefile,v 1.77 2010/02/16 22:34:43 tgl Exp $
6 #
7 #-------------------------------------------------------------------------
8
9 subdir = src/backend/catalog
10 top_builddir = ../../..
11 include $(top_builddir)/src/Makefile.global
12
13 OBJS = catalog.o dependency.o heap.o index.o indexing.o namespace.o aclchk.o \
14        pg_aggregate.o pg_constraint.o pg_conversion.o pg_depend.o pg_enum.o \
15        pg_inherits.o pg_largeobject.o pg_namespace.o pg_operator.o pg_proc.o \
16        pg_db_role_setting.o pg_shdepend.o pg_type.o storage.o toasting.o
17
18 BKIFILES = postgres.bki postgres.description postgres.shdescription
19
20 include $(top_srcdir)/src/backend/common.mk
21
22 all: $(BKIFILES) schemapg.h
23
24 # Note: there are some undocumented dependencies on the ordering in which
25 # the catalog header files are assembled into postgres.bki.  In particular,
26 # indexing.h had better be last, and toasting.h just before it.
27
28 POSTGRES_BKI_SRCS = $(addprefix $(top_srcdir)/src/include/catalog/,\
29         pg_proc.h pg_type.h pg_attribute.h pg_class.h \
30         pg_attrdef.h pg_constraint.h pg_inherits.h pg_index.h pg_operator.h \
31         pg_opfamily.h pg_opclass.h pg_am.h pg_amop.h pg_amproc.h \
32         pg_language.h pg_largeobject_metadata.h pg_largeobject.h pg_aggregate.h \
33         pg_statistic.h pg_rewrite.h pg_trigger.h pg_description.h \
34         pg_cast.h pg_enum.h pg_namespace.h pg_conversion.h pg_depend.h \
35         pg_database.h pg_db_role_setting.h pg_tablespace.h pg_pltemplate.h \
36         pg_authid.h pg_auth_members.h pg_shdepend.h pg_shdescription.h \
37         pg_ts_config.h pg_ts_config_map.h pg_ts_dict.h \
38         pg_ts_parser.h pg_ts_template.h \
39         pg_foreign_data_wrapper.h pg_foreign_server.h pg_user_mapping.h \
40         pg_default_acl.h \
41         toasting.h indexing.h \
42     )
43
44 # location of Catalog.pm
45 catalogdir = $(top_srcdir)/src/backend/catalog
46
47 # locations of headers that genbki.pl needs to read
48 pg_includes = -I$(top_srcdir)/src/include/catalog -I$(top_builddir)/src/include/catalog
49
50 # see explanation in ../parser/Makefile
51 postgres.description: postgres.bki ;
52
53 postgres.shdescription: postgres.bki ;
54
55 schemapg.h: postgres.bki ;
56
57 postgres.bki: genbki.pl Catalog.pm $(POSTGRES_BKI_SRCS)
58         $(PERL) -I $(catalogdir) $< $(pg_includes) --set-version=$(MAJORVERSION) $(POSTGRES_BKI_SRCS)
59
60 .PHONY: install-data
61 install-data: $(BKIFILES) installdirs
62         $(INSTALL_DATA) postgres.bki         '$(DESTDIR)$(datadir)/postgres.bki'
63         $(INSTALL_DATA) postgres.description '$(DESTDIR)$(datadir)/postgres.description'
64         $(INSTALL_DATA) postgres.shdescription '$(DESTDIR)$(datadir)/postgres.shdescription'
65         $(INSTALL_DATA) $(srcdir)/system_views.sql '$(DESTDIR)$(datadir)/system_views.sql'
66         $(INSTALL_DATA) $(srcdir)/information_schema.sql '$(DESTDIR)$(datadir)/information_schema.sql'
67         $(INSTALL_DATA) $(srcdir)/sql_features.txt '$(DESTDIR)$(datadir)/sql_features.txt'
68
69 installdirs:
70         $(MKDIR_P) '$(DESTDIR)$(datadir)'
71
72 .PHONY: uninstall-data
73 uninstall-data:
74         rm -f $(addprefix '$(DESTDIR)$(datadir)'/, $(BKIFILES) system_views.sql information_schema.sql sql_features.txt)
75
76 # postgres.bki, postgres.description, postgres.shdescription, and schemapg.h
77 # are in the distribution tarball, so they are not cleaned here.
78 clean:
79
80 maintainer-clean: clean
81         rm -f $(BKIFILES)