1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-27 12:41:57 +03:00

Convert contrib modules to use the extension facility.

This isn't fully tested as yet, in particular I'm not sure that the
"foo--unpackaged--1.0.sql" scripts are OK.  But it's time to get some
buildfarm cycles on it.

sepgsql is not converted to an extension, mainly because it seems to
require a very nonstandard installation process.

Dimitri Fontaine and Tom Lane
This commit is contained in:
Tom Lane
2011-02-13 20:06:41 -05:00
parent e693e97d75
commit 629b3af27d
264 changed files with 2026 additions and 2349 deletions

View File

@ -1,5 +1,4 @@
/segparse.c
/segscan.c
/seg.sql
# Generated subdirectories
/results/

View File

@ -2,8 +2,10 @@
MODULE_big = seg
OBJS = seg.o segparse.o
DATA_built = seg.sql
DATA = uninstall_seg.sql
EXTENSION = seg
DATA = seg--1.0.sql seg--unpackaged--1.0.sql
REGRESS = seg
EXTRA_CLEAN = y.tab.c y.tab.h

View File

@ -1,13 +1,7 @@
--
-- Test seg datatype
--
--
-- first, define the datatype. Turn off echoing so that expected file
-- does not depend on contents of seg.sql.
--
SET client_min_messages = warning;
\set ECHO none
RESET client_min_messages;
CREATE EXTENSION seg;
--
-- testing the input and output functions
--

View File

@ -1,13 +1,7 @@
--
-- Test seg datatype
--
--
-- first, define the datatype. Turn off echoing so that expected file
-- does not depend on contents of seg.sql.
--
SET client_min_messages = warning;
\set ECHO none
RESET client_min_messages;
CREATE EXTENSION seg;
--
-- testing the input and output functions
--

View File

@ -1,10 +1,6 @@
/* contrib/seg/seg.sql.in */
-- Adjust this setting to control where the objects get created.
SET search_path = public;
/* contrib/seg/seg--1.0.sql */
-- Create the user-defined type for 1-D floating point intervals (seg)
--
CREATE OR REPLACE FUNCTION seg_in(cstring)
RETURNS seg

View File

@ -0,0 +1,51 @@
/* contrib/seg/seg--unpackaged--1.0.sql */
ALTER EXTENSION seg ADD type seg;
ALTER EXTENSION seg ADD function seg_in(cstring);
ALTER EXTENSION seg ADD function seg_out(seg);
ALTER EXTENSION seg ADD function seg_over_left(seg,seg);
ALTER EXTENSION seg ADD function seg_over_right(seg,seg);
ALTER EXTENSION seg ADD function seg_left(seg,seg);
ALTER EXTENSION seg ADD function seg_right(seg,seg);
ALTER EXTENSION seg ADD function seg_lt(seg,seg);
ALTER EXTENSION seg ADD function seg_le(seg,seg);
ALTER EXTENSION seg ADD function seg_gt(seg,seg);
ALTER EXTENSION seg ADD function seg_ge(seg,seg);
ALTER EXTENSION seg ADD function seg_contains(seg,seg);
ALTER EXTENSION seg ADD function seg_contained(seg,seg);
ALTER EXTENSION seg ADD function seg_overlap(seg,seg);
ALTER EXTENSION seg ADD function seg_same(seg,seg);
ALTER EXTENSION seg ADD function seg_different(seg,seg);
ALTER EXTENSION seg ADD function seg_cmp(seg,seg);
ALTER EXTENSION seg ADD function seg_union(seg,seg);
ALTER EXTENSION seg ADD function seg_inter(seg,seg);
ALTER EXTENSION seg ADD function seg_size(seg);
ALTER EXTENSION seg ADD function seg_center(seg);
ALTER EXTENSION seg ADD function seg_upper(seg);
ALTER EXTENSION seg ADD function seg_lower(seg);
ALTER EXTENSION seg ADD operator >(seg,seg);
ALTER EXTENSION seg ADD operator >=(seg,seg);
ALTER EXTENSION seg ADD operator <(seg,seg);
ALTER EXTENSION seg ADD operator <=(seg,seg);
ALTER EXTENSION seg ADD operator >>(seg,seg);
ALTER EXTENSION seg ADD operator <<(seg,seg);
ALTER EXTENSION seg ADD operator &<(seg,seg);
ALTER EXTENSION seg ADD operator &&(seg,seg);
ALTER EXTENSION seg ADD operator &>(seg,seg);
ALTER EXTENSION seg ADD operator <>(seg,seg);
ALTER EXTENSION seg ADD operator =(seg,seg);
ALTER EXTENSION seg ADD operator <@(seg,seg);
ALTER EXTENSION seg ADD operator @>(seg,seg);
ALTER EXTENSION seg ADD operator ~(seg,seg);
ALTER EXTENSION seg ADD operator @(seg,seg);
ALTER EXTENSION seg ADD function gseg_consistent(internal,seg,integer,oid,internal);
ALTER EXTENSION seg ADD function gseg_compress(internal);
ALTER EXTENSION seg ADD function gseg_decompress(internal);
ALTER EXTENSION seg ADD function gseg_penalty(internal,internal,internal);
ALTER EXTENSION seg ADD function gseg_picksplit(internal,internal);
ALTER EXTENSION seg ADD function gseg_union(internal,internal);
ALTER EXTENSION seg ADD function gseg_same(seg,seg,internal);
ALTER EXTENSION seg ADD operator family seg_ops using btree;
ALTER EXTENSION seg ADD operator class seg_ops using btree;
ALTER EXTENSION seg ADD operator family gist_seg_ops using gist;
ALTER EXTENSION seg ADD operator class gist_seg_ops using gist;

5
contrib/seg/seg.control Normal file
View File

@ -0,0 +1,5 @@
# seg extension
comment = 'data type for representing line segments or floating-point intervals'
default_version = '1.0'
module_pathname = '$libdir/seg'
relocatable = true

View File

@ -2,15 +2,7 @@
-- Test seg datatype
--
--
-- first, define the datatype. Turn off echoing so that expected file
-- does not depend on contents of seg.sql.
--
SET client_min_messages = warning;
\set ECHO none
\i seg.sql
\set ECHO all
RESET client_min_messages;
CREATE EXTENSION seg;
--
-- testing the input and output functions

View File

@ -1,94 +0,0 @@
/* contrib/seg/uninstall_seg.sql */
-- Adjust this setting to control where the objects get dropped.
SET search_path = public;
DROP OPERATOR CLASS gist_seg_ops USING gist;
DROP OPERATOR CLASS seg_ops USING btree;
DROP FUNCTION gseg_same(seg, seg, internal);
DROP FUNCTION gseg_union(internal, internal);
DROP FUNCTION gseg_picksplit(internal, internal);
DROP FUNCTION gseg_penalty(internal,internal,internal);
DROP FUNCTION gseg_decompress(internal);
DROP FUNCTION gseg_compress(internal);
DROP FUNCTION gseg_consistent(internal,seg,int,oid,internal);
DROP OPERATOR <@ (seg, seg);
DROP OPERATOR @> (seg, seg);
DROP OPERATOR ~ (seg, seg);
DROP OPERATOR @ (seg, seg);
DROP OPERATOR <> (seg, seg);
DROP OPERATOR = (seg, seg);
DROP OPERATOR >> (seg, seg);
DROP OPERATOR &> (seg, seg);
DROP OPERATOR && (seg, seg);
DROP OPERATOR &< (seg, seg);
DROP OPERATOR << (seg, seg);
DROP OPERATOR >= (seg, seg);
DROP OPERATOR > (seg, seg);
DROP OPERATOR <= (seg, seg);
DROP OPERATOR < (seg, seg);
DROP FUNCTION seg_center(seg);
DROP FUNCTION seg_lower(seg);
DROP FUNCTION seg_upper(seg);
DROP FUNCTION seg_size(seg);
DROP FUNCTION seg_inter(seg, seg);
DROP FUNCTION seg_union(seg, seg);
DROP FUNCTION seg_cmp(seg, seg);
DROP FUNCTION seg_different(seg, seg);
DROP FUNCTION seg_same(seg, seg);
DROP FUNCTION seg_overlap(seg, seg);
DROP FUNCTION seg_contained(seg, seg);
DROP FUNCTION seg_contains(seg, seg);
DROP FUNCTION seg_ge(seg, seg);
DROP FUNCTION seg_gt(seg, seg);
DROP FUNCTION seg_le(seg, seg);
DROP FUNCTION seg_lt(seg, seg);
DROP FUNCTION seg_right(seg, seg);
DROP FUNCTION seg_left(seg, seg);
DROP FUNCTION seg_over_right(seg, seg);
DROP FUNCTION seg_over_left(seg, seg);
DROP TYPE seg CASCADE;