svn commit: r315396 - in head/databases: . pyspatialite pyspatialite/files
Pawel Pekala
pawel at FreeBSD.org
Wed Mar 27 16:59:19 UTC 2013
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 at 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 at 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 at 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
+ at dirrm %%DOCSDIR%%/code
+ at dirrm %%DOCSDIR%%
+ at dirrm %%PYTHON_SITELIBDIR%%/pyspatialite/test/py25
+ at dirrm %%PYTHON_SITELIBDIR%%/pyspatialite/test
+ at dirrm %%PYTHON_SITELIBDIR%%/pyspatialite
More information about the svn-ports-all
mailing list