Skip to content
Permalink
Browse files
[FEATURE] add oracle provider
  • Loading branch information
jef-n committed Jan 22, 2013
1 parent dda51c6 commit 4923c30d73c0d23c9d62848a8d9ec6e32f15fe05
Showing with 15,204 additions and 1,839 deletions.
  1. +5 −0 CMakeLists.txt
  2. +2 −0 cmake_templates/qgsconfig.h.in
  3. +232 −0 debian/control.sid-oracle
  4. +2 −0 debian/qgis-oracle-provider.install.in
  5. +6 −1 debian/rules
  6. +41 −41 doc/TRANSLATORS
  7. +3,154 −1,654 i18n/qgis_de.ts
  8. +3 −0 images/images.qrc
  9. BIN images/themes/default/mActionAddOracleLayer.png
  10. BIN images/themes/default/mIconOracle.png
  11. BIN images/themes/gis/mIconOracle.png
  12. +2 −0 ms-windows/osgeo4w/package-nightly.cmd
  13. +8 −0 ms-windows/osgeo4w/package.cmd
  14. +10 −1 scripts/addcopyright.sh
  15. +12 −0 scripts/licenses
  16. +5 −0 scripts/prepare-commit.sh
  17. +2 −2 src/app/main.cpp
  18. +45 −21 src/app/qgisapp.cpp
  19. +5 −1 src/app/qgisapp.h
  20. +0 −22 src/core/qgis.cpp
  21. +70 −19 src/core/qgis.h
  22. +25 −14 src/core/qgsgeometry.cpp
  23. +0 −3 src/core/qgsgeometry.h
  24. +3 −3 src/core/qgsproviderregistry.cpp
  25. +1 −1 src/core/qgsvectorfilewriter.cpp
  26. +2 −2 src/core/qgsvectorlayer.cpp
  27. +22 −0 src/core/qgsvectorlayerimport.cpp
  28. +3 −0 src/core/qgsvectorlayerimport.h
  29. +1 −1 src/core/symbology-ng/qgsrendererv2.cpp
  30. +1 −1 src/gui/attributetable/qgsattributetablemodel.cpp
  31. +1 −1 src/gui/qgsfieldvalidator.cpp
  32. +140 −1 src/gui/qgsmanageconnectionsdialog.cpp
  33. +6 −1 src/gui/qgsmanageconnectionsdialog.h
  34. +1 −1 src/plugins/grass/qgsgrassmodule.cpp
  35. +4 −0 src/providers/CMakeLists.txt
  36. +0 −1 src/providers/mssql/qgsmssqlsourceselect.h
  37. +54 −0 src/providers/oracle/CMakeLists.txt
  38. +32 −0 src/providers/oracle/ocispatial/CMakeLists.txt
  39. +7 −0 src/providers/oracle/ocispatial/README
  40. +45 −0 src/providers/oracle/ocispatial/cmake/FindOCI.cmake
  41. +85 −0 src/providers/oracle/ocispatial/main.cpp
  42. +3,983 −0 src/providers/oracle/ocispatial/qsql_ocispatial.cpp
  43. +130 −0 src/providers/oracle/ocispatial/qsql_ocispatial.h
  44. +100 −0 src/providers/oracle/ocispatial/qsqlcachedresult_p.h
  45. +66 −0 src/providers/oracle/ocispatial/wkbptr.h
  46. +66 −0 src/providers/oracle/qgsoraclecolumntypethread.cpp
  47. +53 −0 src/providers/oracle/qgsoraclecolumntypethread.h
  48. +695 −0 src/providers/oracle/qgsoracleconn.cpp
  49. +180 −0 src/providers/oracle/qgsoracleconn.h
  50. +473 −0 src/providers/oracle/qgsoracledataitems.cpp
  51. +117 −0 src/providers/oracle/qgsoracledataitems.h
  52. +160 −0 src/providers/oracle/qgsoraclenewconnection.cpp
  53. +43 −0 src/providers/oracle/qgsoraclenewconnection.h
  54. +3,156 −0 src/providers/oracle/qgsoracleprovider.cpp
  55. +427 −0 src/providers/oracle/qgsoracleprovider.h
  56. +655 −0 src/providers/oracle/qgsoraclesourceselect.cpp
  57. +167 −0 src/providers/oracle/qgsoraclesourceselect.h
  58. +339 −0 src/providers/oracle/qgsoracletablemodel.cpp
  59. +69 −0 src/providers/oracle/qgsoracletablemodel.h
  60. +1 −1 src/providers/postgres/qgspgnewconnection.cpp
  61. +2 −2 src/providers/postgres/qgspostgresconn.cpp
  62. +13 −0 src/ui/qgisapp.ui
  63. +265 −0 src/ui/qgsoraclenewconnectionbase.ui
  64. +7 −44 tests/src/core/testqgsgeometry.cpp
@@ -70,6 +70,11 @@ IF (WITH_SPATIALITE)
ENDIF (WITH_INTERNAL_SPATIALITE)
ENDIF (WITH_SPATIALITE)

SET (WITH_ORACLE FALSE CACHE BOOL "Determines whether Oracle support should be built")
IF(WITH_ORACLE)
SET(HAVE_ORACLE TRUE)
ENDIF(WITH_ORACLE)

# try to configure and build python bindings by default
SET (WITH_BINDINGS TRUE CACHE BOOL "Determines whether python bindings should be built")
IF (WITH_BINDINGS)
@@ -38,6 +38,8 @@

#cmakedefine HAVE_MSSQL

#cmakedefine HAVE_ORACLE

#cmakedefine HAVE_PYTHON

#cmakedefine HAVE_TOUCH
@@ -0,0 +1,232 @@
Source: qgis
Section: science
Priority: extra
Maintainer: Quantum GIS developers <qgis-developer@lists.osgeo.org>
Build-Depends:
bison,
cmake (>= 2.6),
debhelper (>= 9),
flex,
grass-dev,
libexpat1-dev,
libfcgi-dev,
libgdal1-dev,
libgeos-dev (>= 3.0.0),
libgsl0-dev,
libpq-dev,
libproj-dev,
libqt4-dev (>=4.4.0),
libqt4-opengl-dev,
libqtwebkit-dev,
libqwt-dev,
libspatialite-dev,
libsqlite3-dev,
libspatialindex-dev,
pkg-config,
pyqt4-dev-tools,
python,
python-dev (>= 2.6.6-3~),
python-qt4 (>=4.1.0),
python-qt4-dev (>=4.1.0),
python-sip (>= 4.5.0),
python-sip-dev (>= 4.5.0),
libosgearth-dev,
libopenscenegraph-dev,
git,
doxygen,
graphviz,
txt2tags,
xvfb, xauth, xfonts-base,
oracle-instantclient11.2-devel
Build-Conflicts: libqgis-dev, qgis-dev
Standards-Version: 3.9.3
X-Python-Version: current
Homepage: http://qgis.org/

Package: qgis
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, qgis-providers (= ${binary:Version}), qgis-common (= ${source:Version})
Recommends: qgis-plugin-globe, qgis-plugin-grass, python-qgis
Suggests: gpsbabel
Conflicts: uim-qt3
Description: Geographic Information System (GIS)
A Geographic Information System (GIS) manages, analyzes, and displays
databases of geographic information. Quantum GIS (QGIS) supports shape file
viewing and editing, spatial data storage with PostgreSQL/PostGIS, projection
on-the-fly, map composition, and a number of other features via a plugin
interface. QGIS also supports display of various georeferenced raster and
Digital Elevation Model (DEM) formats including GeoTIFF, Arc/Info ASCII Grid,
and USGS ASCII DEM.

Package: qgis-common
Architecture: all
Depends: ${misc:Depends}
Description: Quantum GIS - architecture-independent data
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains architecture-independent supporting data files for use
with Quantum GIS.

Package: libqgis{QGIS_ABI}
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Replaces: qgis (<=0.9.2rc1), libqgis-core1, libqgis-gui1, libqgis0, libqgis1
Description: Quantum GIS - shared libraries
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains the shared core and gui library that provide an
interface for plugins and stand-alone applications.

Package: libqgis-dev
Architecture: any
Section: libdevel
Depends:
grass-dev,
libexpat1-dev,
libgdal1-dev,
libgeos-dev (>= 3.0.0),
libgsl0-dev,
libpq-dev,
libproj-dev,
libqgis{QGIS_ABI} (= ${binary:Version}),
libqt4-dev (>=4.4.0),
libsqlite3-dev,
python-qt4 (>=4.1.0),
python-qt4-dev (>=4.1.0),
qt4-designer (>=4.4.0),
${misc:Depends}
Provides: qgis-dev
Replaces: qgis-dev, libqgis1-dev, libqgis1.4.0-dev
Description: Quantum GIS - development files
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains the headers and libraries needed to develop plugins for
Quantum GIS.

Package: qgis-plugin-grass
Architecture: any
Depends: qgis (= ${binary:Version}), qgis-plugin-grass-common (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}, grass{GRASS_ABI}
Description: GRASS plugin for Quantum GIS
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This plugin enables GRASS data access in the Quantum GIS geographic data
viewer.

Package: qgis-plugin-grass-common
Architecture: all
Depends: python, ${misc:Depends}
Replaces: qgis-common (<< 1.5)
Breaks: qgis-common (<< 1.5)
Description: GRASS plugin for Quantum GIS - architecture-independent data
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains architecture-independent supporting data files for use
with the Quantum GIS GRASS plugin.

Package: python-qgis
Section: python
Architecture: any
Depends: python-qt4 (>=4.1.0), python-sip (>= 4.5.0), python-qgis-common (= ${source:Version}), python-pyspatialite, python-psycopg2, python-qscintilla2, ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
Description: Python bindings to Quantum GIS
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains the files for the Python support.

Package: python-qgis-common
Section: python
Architecture: all
Provides: ${python:Provides}
Depends: gdal-bin, python-gdal, libjs-jquery, libjs-underscore, ${misc:Depends}
Description: Python bindings to Quantum GIS - architecture-independent files
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains architecture-independent files for the Quantum GIS
Python bindings.

Package: qgis-providers
Architecture: any
Depends: qgis-providers-common (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}
Replaces: qgis (<= 1.6)
Breaks: qgis (<= 1.6)
Description: collection of data providers to Quantum GIS
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains the provider plugins for Quantum GIS.

Package: qgis-providers-common
Architecture: all
Replaces: qgis-common (<= 1.6)
Breaks: qgis-common (<= 1.6)
Depends: ${misc:Depends}
Description: collection of data providers to Quantum GIS - architecture-independent files
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains architecture-independent files for the Quantum GIS
providers.

Package: qgis-mapserver
Architecture: any
Depends: qgis-providers (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}
Description: Quantum GIS mapserver
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains the Quantum GIS mapserver.

Package: qgis-sqlanywhere
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Conflicts: qgis-sqlanywhere1.7.0, qgis-sqlanywhere1.7.1, qgis-sqlanywhere1.8.0
Description: Quantum GIS sql anywhere plugin and provider
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains the Quantum GIS sqlanywhere plugin and provider.

Package: qgis-api-doc
Architecture: all
Section: doc
Depends: libjs-jquery
Description: Quantum GIS API documentation
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains the Quantum GIS API documentation.

Package: qgis-plugin-globe
Architecture: any
Depends: qgis (= ${binary:Version}), qgis-plugin-globe-common (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}
Description: OSG globe plugin for Quantum GIS
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This plugin enables 3D viewing using OSG globe in the Quantum GIS.

Package: qgis-plugin-globe-common
Architecture: all
Description: OSG GLOBE plugin for Quantum GIS - architecture-independent data
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains architecture-independent supporting data files for use
with the Quantum GIS GLOBE plugin.

Package: qgis-oracle-provider
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Section: contrib/databases
Description: Quantum GIS oracle provider
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains the Quantum GIS oracle provider.

@@ -0,0 +1,2 @@
usr/lib/qgis/plugins/liboracleprovider.so
usr/lib/{DEB_BUILD_GNU_TYPE}/qt4/plugins/sqldrivers/libqsqlocispatial.so
@@ -16,7 +16,7 @@ ifeq (,$(DISTRIBUTION))
DISTRIBUTION := $(shell dpkg-parsechangelog --format rfc822 | sed -ne "s/^Distribution: //p")
endif

ifneq ($(DISTRIBUTION),$(findstring $(DISTRIBUTION),"squeeze wheezy lucid maverick natty oneiric precise"))
ifneq ($(DISTRIBUTION),$(findstring $(DISTRIBUTION),"squeeze wheezy lucid maverick natty oneiric precise sid-oracle"))
DISTRIBUTION := sid
endif

@@ -71,6 +71,10 @@ else
CMAKE_OPTS += -D WITH_GLOBE=TRUE
endif

ifneq (,$(findstring -oracle,$(DISTRIBUTION)))
CMAKE_OPTS += -D WITH_ORACLE=TRUE
endif

ifneq (,$(findstring $(DISTRIBUTION),"wheezy sid"))
CPPFLAGS := $(shell dpkg-buildflags --get CPPFLAGS)
CFLAGS := $(shell dpkg-buildflags --get CFLAGS) $(CPPFLAGS)
@@ -107,6 +111,7 @@ endif
define gentemplate
$(2): $(1)
sed \
-e "s/{DEB_BUILD_GNU_TYPE}/$(DEB_BUILD_GNU_TYPE)/g" \
-e "s/{QGIS_ABI}/$(QGIS_ABI)/g" \
-e "s/{GRASS}/$(GRASS)/g" \
-e "s/{GRASS_ABI}/$(GRASS_ABI)/g" $$^ >$$@

0 comments on commit 4923c30

Please sign in to comment.