From: Regina Obe Date: Wed, 3 Aug 2011 15:01:40 +0000 (+0000) Subject: Create new legacy compatibility layer script which will install the absolute minimal... X-Git-Tag: 2.0.0alpha1~1154 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=35a3c4f4a5eb672fddd7725247bf51762143e1bd;p=postgis Create new legacy compatibility layer script which will install the absolute minimal to restore an old postgis database. Also got rid of srid function and moved to legacy compatibility layer. Still need to test with a restore. git-svn-id: http://svn.osgeo.org/postgis/trunk@7693 b70326c6-7e19-0410-871a-916f4a2858ee --- diff --git a/postgis/Makefile.in b/postgis/Makefile.in index 3bc68f257..542cddff0 100644 --- a/postgis/Makefile.in +++ b/postgis/Makefile.in @@ -14,11 +14,11 @@ MODULE_big=postgis-@POSTGIS_MAJOR_VERSION@.@POSTGIS_MINOR_VERSION@ MODULEDIR=contrib/$(MODULE_big) # Files to be copied to the contrib/ directory -DATA_built=postgis.sql uninstall_postgis.sql postgis_upgrade_20_minor.sql legacy.sql uninstall_legacy.sql +DATA_built=postgis.sql uninstall_postgis.sql postgis_upgrade_20_minor.sql legacy.sql uninstall_legacy.sql legacy_compatibility_layer.sql DATA=../spatial_ref_sys.sql # SQL objects (files requiring C pre-processing) -SQL_OBJS=postgis.sql.in uninstall_postgis.sql.in legacy.sql.in uninstall_legacy.sql.in +SQL_OBJS=postgis.sql.in uninstall_postgis.sql.in legacy.sql.in uninstall_legacy.sql.in legacy_compatibility_layer.sql.in # PostgreSQL objects PG_OBJS=lwgeom_pg.o \ diff --git a/postgis/legacy.sql.in.c b/postgis/legacy.sql.in.c index 376b277ca..34b227143 100644 --- a/postgis/legacy.sql.in.c +++ b/postgis/legacy.sql.in.c @@ -1,6 +1,6 @@ -- $Id$ -- Legacy functions without chip functions -- -#include "sqldefines.h" +#include "legacy_compatibility_layer.sql.in.c" --- start functions that in theory should never have been used or internal like stuff deprecated -- these were superceded by PostGIS_AddBBOX , PostGIS_DropBBOX, PostGIS_HasBBOX in 1.5 -- @@ -614,18 +614,6 @@ CREATE OR REPLACE FUNCTION Area2D(geometry) AS 'MODULE_PATHNAME', 'LWGEOM_area_polygon' LANGUAGE 'C' IMMUTABLE STRICT; --- Deprecation in 1.2.3 -CREATE OR REPLACE FUNCTION AsBinary(geometry) - RETURNS bytea - AS 'MODULE_PATHNAME','LWGEOM_asBinary' - LANGUAGE 'C' IMMUTABLE STRICT; - --- Deprecation in 1.2.3 -CREATE OR REPLACE FUNCTION AsBinary(geometry,text) - RETURNS bytea - AS 'MODULE_PATHNAME','LWGEOM_asBinary' - LANGUAGE 'C' IMMUTABLE STRICT; - -- Deprecation in 1.2.3 CREATE OR REPLACE FUNCTION AsEWKB(geometry) RETURNS BYTEA @@ -709,12 +697,6 @@ CREATE OR REPLACE FUNCTION AsSVG(geometry,int4,int4) AS 'MODULE_PATHNAME','LWGEOM_asSVG' LANGUAGE 'C' IMMUTABLE STRICT; --- Deprecation in 1.2.3 -CREATE OR REPLACE FUNCTION AsText(geometry) - RETURNS TEXT - AS 'MODULE_PATHNAME','LWGEOM_asText' - LANGUAGE 'C' IMMUTABLE STRICT; - -- Deprecation in 1.2.3 CREATE OR REPLACE FUNCTION azimuth(geometry,geometry) RETURNS float8 @@ -881,25 +863,7 @@ CREATE OR REPLACE FUNCTION Envelope(geometry) RETURNS geometry AS 'MODULE_PATHNAME', 'LWGEOM_envelope' LANGUAGE 'C' IMMUTABLE STRICT; - --- Deprecation in 1.2.3 -CREATE OR REPLACE FUNCTION Estimated_Extent(text,text,text) RETURNS box2d AS -#ifdef GSERIALIZED_ON - 'MODULE_PATHNAME', 'geometry_estimated_extent' -#else - 'MODULE_PATHNAME', 'LWGEOM_estimated_extent' -#endif - LANGUAGE 'C' IMMUTABLE STRICT SECURITY DEFINER; - --- Deprecation in 1.2.3 -CREATE OR REPLACE FUNCTION Estimated_Extent(text,text) RETURNS box2d AS -#ifdef GSERIALIZED_ON - 'MODULE_PATHNAME', 'geometry_estimated_extent' -#else - 'MODULE_PATHNAME', 'LWGEOM_estimated_extent' -#endif - LANGUAGE 'C' IMMUTABLE STRICT SECURITY DEFINER; - + -- Deprecation in 1.2.3 CREATE OR REPLACE FUNCTION Expand(box2d,float8) RETURNS box2d @@ -1610,12 +1574,6 @@ CREATE OR REPLACE FUNCTION MultiPolygonFromText(text) AS 'SELECT MPolyFromText($1)' LANGUAGE 'SQL' IMMUTABLE STRICT; --- Deprecation in 1.2.3 -CREATE OR REPLACE FUNCTION ndims(geometry) - RETURNS smallint - AS 'MODULE_PATHNAME', 'LWGEOM_ndims' - LANGUAGE 'C' IMMUTABLE STRICT; - -- Deprecation in 1.2.3 CREATE OR REPLACE FUNCTION NumInteriorRing(geometry) RETURNS integer diff --git a/postgis/legacy_compatibility_layer.sql.in.c b/postgis/legacy_compatibility_layer.sql.in.c new file mode 100644 index 000000000..acfa5bef8 --- /dev/null +++ b/postgis/legacy_compatibility_layer.sql.in.c @@ -0,0 +1,51 @@ +-- $Id: legacy.sql.in.c 7548 2011-07-02 08:58:38Z robe $ +-- Legacy functions without chip functions -- +#include "sqldefines.h" +-- Deprecation in 1.2.3 +CREATE OR REPLACE FUNCTION AsBinary(geometry) + RETURNS bytea + AS 'MODULE_PATHNAME','LWGEOM_asBinary' + LANGUAGE 'C' IMMUTABLE STRICT; + +-- Deprecation in 1.2.3 +CREATE OR REPLACE FUNCTION AsBinary(geometry,text) + RETURNS bytea + AS 'MODULE_PATHNAME','LWGEOM_asBinary' + LANGUAGE 'C' IMMUTABLE STRICT; + +-- Deprecation in 1.2.3 +CREATE OR REPLACE FUNCTION AsText(geometry) + RETURNS TEXT + AS 'MODULE_PATHNAME','LWGEOM_asText' + LANGUAGE 'C' IMMUTABLE STRICT; + +-- Deprecation in 1.2.3 +CREATE OR REPLACE FUNCTION Estimated_Extent(text,text,text) RETURNS box2d AS +#ifdef GSERIALIZED_ON + 'MODULE_PATHNAME', 'geometry_estimated_extent' +#else + 'MODULE_PATHNAME', 'LWGEOM_estimated_extent' +#endif + LANGUAGE 'C' IMMUTABLE STRICT SECURITY DEFINER; + +-- Deprecation in 1.2.3 +CREATE OR REPLACE FUNCTION Estimated_Extent(text,text) RETURNS box2d AS +#ifdef GSERIALIZED_ON + 'MODULE_PATHNAME', 'geometry_estimated_extent' +#else + 'MODULE_PATHNAME', 'LWGEOM_estimated_extent' +#endif + LANGUAGE 'C' IMMUTABLE STRICT SECURITY DEFINER; + +-- Deprecation in 1.2.3 +CREATE OR REPLACE FUNCTION ndims(geometry) + RETURNS smallint + AS 'MODULE_PATHNAME', 'LWGEOM_ndims' + LANGUAGE 'C' IMMUTABLE STRICT; + +-- Deprecation in 1.2.3 +CREATE OR REPLACE FUNCTION SRID(geometry) + RETURNS int4 + AS 'MODULE_PATHNAME','LWGEOM_get_srid' + LANGUAGE 'C' IMMUTABLE STRICT; + diff --git a/postgis/postgis.sql.in.c b/postgis/postgis.sql.in.c index c1d5510f6..2be2feb79 100644 --- a/postgis/postgis.sql.in.c +++ b/postgis/postgis.sql.in.c @@ -3717,13 +3717,6 @@ CREATE OR REPLACE FUNCTION ST_IsEmpty(geometry) AS 'MODULE_PATHNAME', 'LWGEOM_isempty' LANGUAGE 'C' IMMUTABLE STRICT; --- Deprecation in 1.2.3 -CREATE OR REPLACE FUNCTION SRID(geometry) - RETURNS int4 - AS 'MODULE_PATHNAME','LWGEOM_get_srid' - LANGUAGE 'C' IMMUTABLE STRICT; - --- PostGIS equivalent function: getSRID(geometry) CREATE OR REPLACE FUNCTION ST_SRID(geometry) RETURNS int4 AS 'MODULE_PATHNAME','LWGEOM_get_srid'