diff options
| author | Tom Lane | 2011-02-14 01:06:41 +0000 |
|---|---|---|
| committer | Tom Lane | 2011-02-14 03:54:49 +0000 |
| commit | 629b3af27d5c2bc9d6e16b22b943ad651d4ecb56 (patch) | |
| tree | eae9ef9a69ae6ad7aacb2428e3cf15ec77873ac5 /contrib/seg | |
| parent | e693e97d754ed6812ea115170afeae4bf8797d3f (diff) | |
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
Diffstat (limited to 'contrib/seg')
| -rw-r--r-- | contrib/seg/.gitignore | 1 | ||||
| -rw-r--r-- | contrib/seg/Makefile | 6 | ||||
| -rw-r--r-- | contrib/seg/expected/seg.out | 8 | ||||
| -rw-r--r-- | contrib/seg/expected/seg_1.out | 8 | ||||
| -rw-r--r-- | contrib/seg/seg--1.0.sql (renamed from contrib/seg/seg.sql.in) | 6 | ||||
| -rw-r--r-- | contrib/seg/seg--unpackaged--1.0.sql | 51 | ||||
| -rw-r--r-- | contrib/seg/seg.control | 5 | ||||
| -rw-r--r-- | contrib/seg/sql/seg.sql | 10 | ||||
| -rw-r--r-- | contrib/seg/uninstall_seg.sql | 94 |
9 files changed, 64 insertions, 125 deletions
diff --git a/contrib/seg/.gitignore b/contrib/seg/.gitignore index a8973ff696c..102f8b3246d 100644 --- a/contrib/seg/.gitignore +++ b/contrib/seg/.gitignore @@ -1,5 +1,4 @@ /segparse.c /segscan.c -/seg.sql # Generated subdirectories /results/ diff --git a/contrib/seg/Makefile b/contrib/seg/Makefile index e8c7a448450..d84934c67fb 100644 --- a/contrib/seg/Makefile +++ b/contrib/seg/Makefile @@ -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 diff --git a/contrib/seg/expected/seg.out b/contrib/seg/expected/seg.out index 17c803e50e4..1f82a4abb86 100644 --- a/contrib/seg/expected/seg.out +++ b/contrib/seg/expected/seg.out @@ -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 -- diff --git a/contrib/seg/expected/seg_1.out b/contrib/seg/expected/seg_1.out index a4cca8b3917..563c744b2d6 100644 --- a/contrib/seg/expected/seg_1.out +++ b/contrib/seg/expected/seg_1.out @@ -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 -- diff --git a/contrib/seg/seg.sql.in b/contrib/seg/seg--1.0.sql index 9bd747656c8..02d8ffadb0a 100644 --- a/contrib/seg/seg.sql.in +++ b/contrib/seg/seg--1.0.sql @@ -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 diff --git a/contrib/seg/seg--unpackaged--1.0.sql b/contrib/seg/seg--unpackaged--1.0.sql new file mode 100644 index 00000000000..9fefbfc9aa4 --- /dev/null +++ b/contrib/seg/seg--unpackaged--1.0.sql @@ -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; diff --git a/contrib/seg/seg.control b/contrib/seg/seg.control new file mode 100644 index 00000000000..a1286962eed --- /dev/null +++ b/contrib/seg/seg.control @@ -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 diff --git a/contrib/seg/sql/seg.sql b/contrib/seg/sql/seg.sql index b8a29d659a5..7b7f138dbf6 100644 --- a/contrib/seg/sql/seg.sql +++ b/contrib/seg/sql/seg.sql @@ -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 diff --git a/contrib/seg/uninstall_seg.sql b/contrib/seg/uninstall_seg.sql deleted file mode 100644 index 27e8ba901a7..00000000000 --- a/contrib/seg/uninstall_seg.sql +++ /dev/null @@ -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; |
