Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 27 Mar 2013 16:59:17 +0000 (UTC)
From:      Pawel Pekala <pawel@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r315396 - in head/databases: . pyspatialite pyspatialite/files
Message-ID:  <201303271659.r2RGxHSt081640@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: pawel
Date: Wed Mar 27 16:59:17 2013
New Revision: 315396
URL: http://svnweb.freebsd.org/changeset/ports/315396

Log:
  pyspatialite is an interface to the SQLite 3.x embedded relational database
  engine with spatialite extensions.
  It is almost fully compliant with the Python database API version 2.0 also
  exposes the unique features of SQLite and spatialite.
  
  WWW: https://code.google.com/p/pyspatialite/
  
  PR:		ports/173079
  Submitted by:	lbartoletti <coder@tuxfamily.org>

Added:
  head/databases/pyspatialite/
  head/databases/pyspatialite/Makefile   (contents, props changed)
  head/databases/pyspatialite/distinfo   (contents, props changed)
  head/databases/pyspatialite/files/
  head/databases/pyspatialite/files/patch-setup.py   (contents, props changed)
  head/databases/pyspatialite/files/patch-src-connection.h   (contents, props changed)
  head/databases/pyspatialite/pkg-descr   (contents, props changed)
  head/databases/pyspatialite/pkg-plist   (contents, props changed)
Modified:
  head/databases/Makefile

Modified: head/databases/Makefile
==============================================================================
--- head/databases/Makefile	Wed Mar 27 16:53:05 2013	(r315395)
+++ head/databases/Makefile	Wed Mar 27 16:59:17 2013	(r315396)
@@ -767,6 +767,7 @@
     SUBDIR += pydbdesigner
     SUBDIR += pydbx
     SUBDIR += pymongo
+    SUBDIR += pyspatialite
     SUBDIR += qdbm
     SUBDIR += qdbm-plus
     SUBDIR += qt-mysql-plugin

Added: head/databases/pyspatialite/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/pyspatialite/Makefile	Wed Mar 27 16:59:17 2013	(r315396)
@@ -0,0 +1,29 @@
+# Created by: lbartoletti <coder@tuxfamily.org>
+# $FreeBSD$
+
+PORTNAME=	pyspatialite
+PORTVERSION=	3.0.1
+CATEGORIES=	databases python
+MASTER_SITES=	CHEESESHOP:pyspatialite \
+		http://www.gaia-gis.it/gaia-sins/libspatialite-sources/:amalgam
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+DISTFILES=	${DISTNAME}${EXTRACT_SUFX}:pyspatialite \
+		${AMALGAMATION_NAME}${EXTRACT_SUFX}:amalgam
+
+MAINTAINER=	coder@tuxfamily.org
+COMMENT=	DB-API 2.0 interface for SQLite 3.x with Spatialite 3.x
+
+LIB_DEPENDS=	spatialite:${PORTSDIR}/databases/spatialite
+
+USE_PYTHON=	yes
+USE_PYDISTUTILS=yes
+PYDISTUTILS_PKGNAME=	pyspatialite
+
+AMALGAMATION_NAME=	libspatialite-amalgamation-${PORTVERSION}
+
+post-patch:
+	@${REINPLACE_CMD} -e "s|pyspatialite-doc|${DOCSDIR}|g" \
+		-e "s|%%LOCALBASE%%|${LOCALBASE}|g" ${WRKSRC}/setup.py
+	@${MV} ${WRKDIR}/${AMALGAMATION_NAME} ${WRKSRC}/amalgamation
+
+.include <bsd.port.mk>

Added: head/databases/pyspatialite/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/pyspatialite/distinfo	Wed Mar 27 16:59:17 2013	(r315396)
@@ -0,0 +1,4 @@
+SHA256 (pyspatialite-3.0.1.tar.gz) = 81a3e4966fb6348802a985486cbf62e019a0fcb0a1e006b9522e8b02dc08f238
+SIZE (pyspatialite-3.0.1.tar.gz) = 75099
+SHA256 (libspatialite-amalgamation-3.0.1.tar.gz) = 51f08c6c9180b1f8979d0469960a5c20a79a574c08fe032ae292042245ad46b6
+SIZE (libspatialite-amalgamation-3.0.1.tar.gz) = 2485779

Added: head/databases/pyspatialite/files/patch-setup.py
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/pyspatialite/files/patch-setup.py	Wed Mar 27 16:59:17 2013	(r315396)
@@ -0,0 +1,85 @@
+--- setup.py.orig	2012-01-11 23:54:57.000000000 +0100
++++ setup.py	2013-03-24 09:52:46.000000000 +0100
+@@ -44,7 +44,7 @@
+ 
+ include_dirs = []
+ library_dirs = []
+-libraries = ['geos','geos_c','proj']
++libraries = ['geos','geos_c','proj','iconv']
+ runtime_library_dirs = []
+ extra_objects = []
+ define_macros = []
+@@ -86,29 +86,30 @@
+ 
+ def get_amalgamation():
+     """Download the Spatialite amalgamation if it isn't there, already."""
+-    if os.path.exists(AMALGAMATION_ROOT):
+-        return
+-    os.mkdir(AMALGAMATION_ROOT)
+-    print "Downloading amalgation."
+-
+-    # find out what's current amalgamation ZIP file
+-    download_page = urllib.urlopen("https://www.gaia-gis.it/fossil/libspatialite/index").read()
+-    pattern = re.compile("(libspatialite-amalgamation.*?\.zip)")
+-    download_file = pattern.findall(download_page)[0]
+-    amalgamation_url = "http://www.gaia-gis.it/gaia-sins/" + download_file
+-    zip_dir = string.replace(download_file,'.zip','')
+-    # and download it
+-    urllib.urlretrieve(amalgamation_url, "tmp.zip")
+-
+-    zf = zipfile.ZipFile("tmp.zip")
+-    files = ["sqlite3.c", "headers/spatialite/sqlite3.h", "spatialite.c", "headers/spatialite/sqlite3ext.h","headers/spatialite/spatialite.h","headers/spatialite/gaiaaux.h","headers/spatialite/gaiaexif.h","headers/spatialite/gaiageo.h"]
+-    for fn in files:
+-        print "Extracting", fn
+-        outf = open(AMALGAMATION_ROOT + os.sep + string.split(fn,'/')[-1], "wb")
+-        outf.write(zf.read(zip_dir + '/' + fn))
+-        outf.close()
+-    zf.close()
+-    os.unlink("tmp.zip")
++#   into ${FILESDIR} for FreeBSD
++#    if os.path.exists(AMALGAMATION_ROOT):
++#        return
++#    os.mkdir(AMALGAMATION_ROOT)
++#    print "Downloading amalgation."
++#
++#    # find out what's current amalgamation ZIP file
++#    download_page = urllib.urlopen("http://www.gaia-gis.it/gaia-sins/libspatialite-sources/").read()
++#    pattern = re.compile("(libspatialite-amalgamation.*?\.zip)")
++#    download_file = pattern.findall(download_page)[-1]
++#    amalgamation_url = "http://www.gaia-gis.it/gaia-sins/libspatialite-sources/" + download_file
++#    zip_dir = string.replace(download_file,'.zip','')
++#    # and download it
++#    urllib.urlretrieve(amalgamation_url, "tmp.zip")
++#
++#    zf = zipfile.ZipFile("tmp.zip")
++#    files = ["sqlite3.c", "headers/spatialite/sqlite3.h", "spatialite.c", "headers/spatialite/sqlite3ext.h","headers/spatialite/spatialite.h","headers/spatialite/gaiaaux.h","headers/spatialite/gaiaexif.h","headers/spatialite/gaiageo.h"]
++#    for fn in files:
++#        print "Extracting", fn
++#        outf = open(AMALGAMATION_ROOT + os.sep + string.split(fn,'/')[-1], "wb")
++#        outf.write(zf.read(zip_dir + '/' + fn))
++#        outf.close()
++#    zf.close()
++#    os.unlink("tmp.zip")
+ 
+ class MyBuildExt(build_ext):
+ 
+@@ -119,8 +120,10 @@
+           ext.libraries.append("iconv")
+ 
+         #Default locations for Mac
++        ext.include_dirs.append("%%LOCALBASE%%/include/")
+         ext.include_dirs.append("/Library/Frameworks/GEOS.framework/unix/include/")
+         ext.include_dirs.append("/Library/Frameworks/PROJ.framework/unix/include/")
++        ext.library_dirs.append("%%LOCALBASE%%/lib")
+         ext.library_dirs.append("/Library/Frameworks/GEOS.framework/unix/lib")
+         ext.library_dirs.append("/Library/Frameworks/PROJ.framework/unix/lib")
+ 
+@@ -132,7 +135,7 @@
+         ext.sources.append(os.path.join(AMALGAMATION_ROOT, "spatialite.c"))
+         ext.include_dirs.append(AMALGAMATION_ROOT)
+         build_ext.build_extension(self, ext)
+-        
++
+ 
+ #    def __setattr__(self, k, v):
+ #        # Make sure we don't link against the SQLite library, no matter what setup.cfg says

Added: head/databases/pyspatialite/files/patch-src-connection.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/pyspatialite/files/patch-src-connection.h	Wed Mar 27 16:59:17 2013	(r315396)
@@ -0,0 +1,11 @@
+--- src/connection.h.bak	2012-10-25 19:40:06.000000000 +0200
++++ src/connection.h	2012-10-25 19:40:25.000000000 +0200
+@@ -33,8 +33,6 @@
+ #include "sqlite3.h"
+ #include "spatialite.h"
+ 
+-int spatialite_init(int verbose);
+-
+ typedef struct
+ {
+     PyObject_HEAD

Added: head/databases/pyspatialite/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/pyspatialite/pkg-descr	Wed Mar 27 16:59:17 2013	(r315396)
@@ -0,0 +1,6 @@
+pyspatialite is an interface to the SQLite 3.x embedded relational database
+engine with spatialite extensions.
+It is almost fully compliant with the Python database API version 2.0 also
+exposes the unique features of SQLite and spatialite.
+
+WWW: https://code.google.com/p/pyspatialite/

Added: head/databases/pyspatialite/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/pyspatialite/pkg-plist	Wed Mar 27 16:59:17 2013	(r315396)
@@ -0,0 +1,52 @@
+%%PYTHON_SITELIBDIR%%/pyspatialite/__init__.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/__init__.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/__init__.pyo
+%%PYTHON_SITELIBDIR%%/pyspatialite/_spatialite.so
+%%PYTHON_SITELIBDIR%%/pyspatialite/dbapi2.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/dbapi2.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/dbapi2.pyo
+%%PYTHON_SITELIBDIR%%/pyspatialite/dump.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/dump.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/dump.pyo
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/__init__.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/__init__.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/__init__.pyo
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/dbapi.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/dbapi.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/dbapi.pyo
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/dump.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/dump.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/dump.pyo
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/factory.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/factory.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/factory.pyo
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/hooks.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/hooks.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/hooks.pyo
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/py25/__init__.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/py25/__init__.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/py25/__init__.pyo
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/py25/py25tests.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/py25/py25tests.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/py25/py25tests.pyo
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/regression.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/regression.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/regression.pyo
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/spatial.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/spatial.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/spatial.pyo
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/transactions.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/transactions.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/transactions.pyo
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/types.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/types.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/types.pyo
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/userfunctions.py
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/userfunctions.pyc
+%%PYTHON_SITELIBDIR%%/pyspatialite/test/userfunctions.pyo
+%%DOCSDIR%%/install-source.txt
+@dirrm %%DOCSDIR%%/code
+@dirrm %%DOCSDIR%%
+@dirrm %%PYTHON_SITELIBDIR%%/pyspatialite/test/py25
+@dirrm %%PYTHON_SITELIBDIR%%/pyspatialite/test
+@dirrm %%PYTHON_SITELIBDIR%%/pyspatialite



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201303271659.r2RGxHSt081640>