diff options
author | Pawel Pekala <pawel@FreeBSD.org> | 2013-03-27 16:59:17 +0000 |
---|---|---|
committer | Pawel Pekala <pawel@FreeBSD.org> | 2013-03-27 16:59:17 +0000 |
commit | 134da7dfa5e2e30a8f4e0a531148ce3351366d19 (patch) | |
tree | 4713c52b14091def2643bdff04614d2fb3002444 | |
parent | be82768dae59b0c1cff329fed966f60b9b4c1288 (diff) |
Notes
-rw-r--r-- | databases/Makefile | 1 | ||||
-rw-r--r-- | databases/pyspatialite/Makefile | 29 | ||||
-rw-r--r-- | databases/pyspatialite/distinfo | 4 | ||||
-rw-r--r-- | databases/pyspatialite/files/patch-setup.py | 85 | ||||
-rw-r--r-- | databases/pyspatialite/files/patch-src-connection.h | 11 | ||||
-rw-r--r-- | databases/pyspatialite/pkg-descr | 6 | ||||
-rw-r--r-- | databases/pyspatialite/pkg-plist | 52 |
7 files changed, 188 insertions, 0 deletions
diff --git a/databases/Makefile b/databases/Makefile index fc1369890b76..c062f97655cb 100644 --- a/databases/Makefile +++ b/databases/Makefile @@ -767,6 +767,7 @@ SUBDIR += pydbdesigner SUBDIR += pydbx SUBDIR += pymongo + SUBDIR += pyspatialite SUBDIR += qdbm SUBDIR += qdbm-plus SUBDIR += qt-mysql-plugin diff --git a/databases/pyspatialite/Makefile b/databases/pyspatialite/Makefile new file mode 100644 index 000000000000..819bdf067cfd --- /dev/null +++ b/databases/pyspatialite/Makefile @@ -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> diff --git a/databases/pyspatialite/distinfo b/databases/pyspatialite/distinfo new file mode 100644 index 000000000000..d56383f8b249 --- /dev/null +++ b/databases/pyspatialite/distinfo @@ -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 diff --git a/databases/pyspatialite/files/patch-setup.py b/databases/pyspatialite/files/patch-setup.py new file mode 100644 index 000000000000..beb65587af07 --- /dev/null +++ b/databases/pyspatialite/files/patch-setup.py @@ -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 diff --git a/databases/pyspatialite/files/patch-src-connection.h b/databases/pyspatialite/files/patch-src-connection.h new file mode 100644 index 000000000000..34df7abbef34 --- /dev/null +++ b/databases/pyspatialite/files/patch-src-connection.h @@ -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 diff --git a/databases/pyspatialite/pkg-descr b/databases/pyspatialite/pkg-descr new file mode 100644 index 000000000000..2d067f18583b --- /dev/null +++ b/databases/pyspatialite/pkg-descr @@ -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/ diff --git a/databases/pyspatialite/pkg-plist b/databases/pyspatialite/pkg-plist new file mode 100644 index 000000000000..2cd80b63e295 --- /dev/null +++ b/databases/pyspatialite/pkg-plist @@ -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 |