378 changes: 262 additions & 116 deletions INSTALL

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion cmake/FindProj.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ FIND_PATH(PROJ_INCLUDE_DIR proj_api.h
)
FIND_PATH(PROJ_INCLUDE_DIR proj_api.h)

FIND_LIBRARY(PROJ_LIBRARY NAMES proj PATHS
FIND_LIBRARY(PROJ_LIBRARY NAMES proj proj_i PATHS
"$ENV{LIB_DIR}/lib"
#mingw
c:/msys/local/lib
Expand Down
163 changes: 163 additions & 0 deletions cmake/FindQtMobility.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,163 @@
INCLUDE(FindQt4)

set(MOBILITY_CONFIG_MKSPECS_FILE "")
IF(EXISTS "${QT_MKSPECS_DIR}/features/mobilityconfig.prf")
set(MOBILITY_CONFIG_MKSPECS_FILE "${QT_MKSPECS_DIR}/features/mobilityconfig.prf")
ELSEIF(EXISTS "${QT_MKSPECS_DIR}/features/mobility.prf")
set(MOBILITY_CONFIG_MKSPECS_FILE "${CMAKE_CURRENT_SOURCE_DIR}/cmakes/mobilityconfig.prf")
ENDIF()

macro(export_component component)
IF(NOT ${MOBILITY_CONFIG_MKSPECS_FILE} STREQUAL "")
FILE(READ ${MOBILITY_CONFIG_MKSPECS_FILE} MOBILITY_FILE_CONTENTS)
STRING(TOLOWER ${component} _COMPONENT)
IF(${MOBILITY_FILE_CONTENTS} MATCHES "MOBILITY_CONFIG=.*${_COMPONENT}.*")
STRING(TOUPPER ${component} _COMPONENT)
SET(QT_MOBILITY_${_COMPONENT}_FOUND 1)
SET(QT_MOBILITY_${_COMPONENT}_INCLUDE_DIR ${QT_MOBILITY_PARENT_INCLUDE_DIR}/Qt${component})
SET(QT_MOBILITY_${_COMPONENT}_LIBRARY Qt${component})
ADD_DEFINITIONS(-DHAVE_QT_MOBILITY_${_COMPONENT})
ENDIF()
ENDIF()
endmacro()

set(VERSION_INFO "")
set(FEATURE_FILE_PREFIX "${QT_MKSPECS_DIR}/features/mobility")

if(DEFINED MOBILITY_VERSION)
if(MOBILITY_VERSION STREQUAL "1.1" AND EXISTS "${FEATURE_FILE_PREFIX}11.prf")
set(MOBILITY_PRF_FILE "${FEATURE_FILE_PREFIX}11.prf")
set(VERSION_INFO "1.1")
elseif(MOBILITY_VERSION STREQUAL "1.2" AND EXISTS "${FEATURE_FILE_PREFIX}12.prf")
set(MOBILITY_PRF_FILE "${FEATURE_FILE_PREFIX}12.prf")
set(VERSION_INFO "1.2")
elseif(MOBILITY_VERSION STREQUAL "default" AND EXISTS "${FEATURE_FILE_PREFIX}.prf")
set(MOBILITY_PRF_FILE "${FEATURE_FILE_PREFIX}.prf")
set(VERSION_INFO "system's default")
else()
message(STATUS "Couldn't find QtMobility version: ${MOBILITY_VERSION}")
endif()
endif()

if(NOT DEFINED MOBILITY_PRF_FILE)
if(EXISTS "${FEATURE_FILE_PREFIX}.prf")
set(MOBILITY_PRF_FILE "${FEATURE_FILE_PREFIX}.prf")
set(VERSION_INFO "system's default")
elseif(EXISTS "${FEATURE_FILE_PREFIX}12.prf")
set(MOBILITY_PRF_FILE "${FEATURE_FILE_PREFIX}12.prf")
set(VERSION_INFO "1.2")
elseif(EXISTS "${FEATURE_FILE_PREFIX}11.prf")
set(MOBILITY_PRF_FILE "${FEATURE_FILE_PREFIX}11.prf")
set(VERSION_INFO "1.1")
else()
message(FATAL_ERROR "Couldn't find any version of QtMobility.")
endif()
endif()

message(STATUS "Using QtMobility version: ${VERSION_INFO}")

IF(DEFINED MOBILITY_PRF_FILE)
FILE(READ ${MOBILITY_PRF_FILE} MOBILITY_FILE_CONTENTS)

STRING(REGEX MATCH "MOBILITY_PREFIX=([^\n]+)" QT_MOBILITY_PREFIX "${MOBILITY_FILE_CONTENTS}")
SET(QT_MOBILITY_PREFIX ${CMAKE_MATCH_1})

STRING(REGEX MATCH "MOBILITY_INCLUDE=([^\n]+)" QT_MOBILITY_INCLUDE_DIR "${MOBILITY_FILE_CONTENTS}")
SET(QT_MOBILITY_INCLUDE_DIR ${CMAKE_MATCH_1})

STRING(REGEX MATCH "MOBILITY_LIB=([^\n]+)" "\\1" QT_MOBILITY_LIBRARY "${MOBILITY_FILE_CONTENTS}")
SET(QT_MOBILITY_LIBRARY_DIR ${CMAKE_MATCH_1})

#VERSION
IF(NOT ${MOBILITY_CONFIG_MKSPECS_FILE} STREQUAL "")
FILE(READ ${MOBILITY_CONFIG_MKSPECS_FILE} MOBILITY_CONFIG_FILE_CONTENTS)
STRING(REGEX MATCH "MOBILITY_VERSION = ([^\n]+)" QT_MOBILITY_VERSION "${MOBILITY_CONFIG_FILE_CONTENTS}")
SET(QT_MOBILITY_VERSION ${CMAKE_MATCH_1})

STRING(REGEX MATCH "MOBILITY_MAJOR_VERSION = ([^\n]+)" QT_MOBILITY_MAJOR_VERSION "${MOBILITY_CONFIG_FILE_CONTENTS}")
SET(QT_MOBILITY_MAJOR_VERSION ${CMAKE_MATCH_1})

STRING(REGEX MATCH "MOBILITY_MINOR_VERSION = ([^\n]+)" QT_MOBILITY_MINOR_VERSION "${MOBILITY_CONFIG_FILE_CONTENTS}")
SET(QT_MOBILITY_MINOR_VERSION ${CMAKE_MATCH_1})

STRING(REGEX MATCH "MOBILITY_PATCH_VERSION = ([^\n]+)" QT_MOBILITY_PATCH_VERSION "${MOBILITY_CONFIG_FILE_CONTENTS}")
SET(QT_MOBILITY_PATCH_VERSION ${CMAKE_MATCH_1})

message(STATUS "QtMobility version: ${QT_MOBILITY_VERSION}")
ELSE()
SET(QT_MOBILITY_VERSION 1.0.0)
SET(QT_MOBILITY_MAJOR_VERSION 1)
SET(QT_MOBILITY_MINOR_VERSION 0)
SET(QT_MOBILITY_PATCH_VERSION 0)
ENDIF()

SET(QT_MOBILITY_PARENT_INCLUDE_DIR ${QT_MOBILITY_INCLUDE_DIR})
SET(QT_MOBILITY_INCLUDE_DIR ${QT_MOBILITY_INCLUDE_DIR}/QtMobility)

IF(QtMobility_FIND_VERSION_EXACT)
IF(QT_MOBILITY_VERSION VERSION_EQUAL QtMobility_FIND_VERSION)
SET(QT_MOBILITY_FOUND TRUE)
ELSE()
SET(QT_MOBILITY_FOUND FALSE)
IF(QT_MOBILITY_VERSION VERSION_LESS QtMobility_FIND_VERSION)
SET(QT_MOBILITY_TOO_OLD TRUE)
ELSE()
SET(QT_MOBILITY_TOO_NEW TRUE)
ENDIF()
ENDIF()
ELSE()
IF(QT_MOBILITY_VERSION VERSION_LESS QtMobility_FIND_VERSION)
SET(QT_MOBILITY_FOUND FALSE)
SET(QT_MOBILITY_TOO_OLD TRUE)
ELSE()
SET(QT_MOBILITY_FOUND TRUE)
ENDIF()
ENDIF()
ELSE()
SET(QT_MOBILITY_FOUND NOTFOUND)
SET(QT_MOBILITY_PREFIX NOTFOUND)
SET(QT_MOBILITY_INCLUDE NOTFOUND)
SET(QT_MOBILITY_LIB NOTFOUND)
ENDIF()

IF(NOT QT_MOBILITY_FOUND)
if(QT_MOBILITY_TOO_OLD)
MESSAGE(FATAL_ERROR "The installed QtMobility version ${QT_MOBILITY_VERSION} it too old, version ${QtMobility_FIND_VERSION} is required.")
ELSEIF(QT_MOBILITY_TOO_NEW)
MESSAGE(FATAL_ERROR "The installed QtMobility version ${QT_MOBILITY_VERSION} it too new, version ${QtMobility_FIND_VERSION} is required.")
ELSE()
MESSAGE(FATAL_ERROR "QtMobility not found.")
ENDIF()
ELSE()
INCLUDE_DIRECTORIES(${QT_MOBILITY_INCLUDE_DIR})
export_component(Bearer)
export_component(Feedback)
export_component(Gallery)
export_component(PublishSubscribe)
export_component(Location)
export_component(Organizer)
export_component(ServiceFramework)
export_component(SystemInfo)
export_component(Contacts)
export_component(Connectivity)
export_component(Messaging)
export_component(Versit)
export_component(Sensors)
# VersitOrganizer
if(QT_MOBILITY_VERSIT_FOUND AND QT_MOBILITY_ORGANIZER_FOUND)
SET(QT_MOBILITY_VERSITORGANIZER_FOUND 1)
SET(QT_MOBILITY_VERSITORGANIZER_INCLUDE_DIR ${QT_MOBILITY_PARENT_INCLUDE_DIR}/QtVersitOrganizer)
SET(QT_MOBILITY_VERSITORGANIZER_LIBRARY QtVersitOrganizer)
endif()

# MultimediaKit - it's just 'multimedia' in the .prf file.
IF(NOT ${MOBILITY_CONFIG_MKSPECS_FILE} STREQUAL "")
FILE(READ ${MOBILITY_CONFIG_MKSPECS_FILE} MOBILITY_FILE_CONTENTS)
IF(${MOBILITY_FILE_CONTENTS} MATCHES "MOBILITY_CONFIG=.*multimedia.*")
SET(QT_MOBILITY_MULTIMEDIAKIT_FOUND 1)
SET(QT_MOBILITY_MULTIMEDIAKIT_INCLUDE_DIR ${QT_MOBILITY_PARENT_INCLUDE_DIR}/QtMultimediaKit)
SET(QT_MOBILITY_MULTIMEDIAKIT_LIBRARY QtMultimediaKit)
ENDIF()
ENDIF()

ENDIF()
89 changes: 50 additions & 39 deletions cmake/MacBundleMacros.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -31,20 +31,26 @@ ENDFUNCTION (MYMESSAGE)
# regex stuff taken from GetPrerequisites

FUNCTION (GET_INSTALL_NAME LIBFILE LIBNAME OUTVAR)
EXECUTE_PROCESS (COMMAND otool -L "${LIBFILE}" OUTPUT_VARIABLE iname_out)
# remove 1st line, it's just path to lib file
STRING (REGEX REPLACE ".*:\n" "" iname "${iname_out}")
IF (iname)
# find libname
STRING (REGEX MATCH "[^\n\t ]*${LIBNAME}[^\n ]*" iname "${iname}")
ENDIF (iname)
SET (${OUTVAR} ${iname} PARENT_SCOPE)
IF (EXISTS "${LIBFILE}")
EXECUTE_PROCESS (COMMAND otool -L "${LIBFILE}" OUTPUT_VARIABLE iname_out)
# remove 1st line, it's just path to lib file
STRING (REGEX REPLACE ".*:\n" "" iname "${iname_out}")
IF (iname)
# find libname
STRING (REGEX MATCH "[^\n\t ]*${LIBNAME}[^\n ]*" iname "${iname}")
ENDIF (iname)
SET (${OUTVAR} ${iname} PARENT_SCOPE)
ELSE ()
SET (${OUTVAR} "" PARENT_SCOPE)
ENDIF ()
ENDFUNCTION (GET_INSTALL_NAME)

# install_name_tool -change CHANGE CHANGETO CHANGEBIN

FUNCTION (INSTALLNAMETOOL_CHANGE CHANGE CHANGETO CHANGEBIN)
EXECUTE_PROCESS (COMMAND install_name_tool -change ${CHANGE} ${CHANGETO} "${CHANGEBIN}")
IF (EXISTS "${CHANGEBIN}" AND CHANGE AND CHANGETO)
EXECUTE_PROCESS (COMMAND install_name_tool -change ${CHANGE} ${CHANGETO} "${CHANGEBIN}")
ENDIF ()
ENDFUNCTION (INSTALLNAMETOOL_CHANGE)

# copy a framework, only specified archs, current version, debug dep on CMAKE_BUILD_TYPE
Expand All @@ -59,22 +65,24 @@ FUNCTION (COPY_FRAMEWORK FWPREFIX FWNAME FWDEST)
OUTPUT_VARIABLE FWDIRPHYS
)
STRING (STRIP "${FWDIRPHYS}" FWDIRPHYS)
STRING (REGEX MATCH "[^/\n]+$" FWVER "${FWDIRPHYS}")
EXECUTE_PROCESS (COMMAND mkdir -p "${FWDEST}/${FWNAME}.framework/Versions/${FWVER}")
EXECUTE_PROCESS (COMMAND ln -sfh ${FWVER} "${FWDEST}/${FWNAME}.framework/Versions/Current")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "${FWPREFIX}/${FWNAME}.framework/Versions/${FWVER}/${FWNAME}" "${FWDEST}/${FWNAME}.framework/Versions/${FWVER}/${FWNAME}")
EXECUTE_PROCESS (COMMAND ln -sf Versions/Current/${FWNAME} "${FWDEST}/${FWNAME}.framework/${FWNAME}")
IF (IS_DIRECTORY "${FWPREFIX}/${FWNAME}.framework/Versions/${FWVER}/Resources")
EXECUTE_PROCESS (COMMAND cp -Rfp "${FWPREFIX}/${FWNAME}.framework/Versions/${FWVER}/Resources" "${FWDEST}/${FWNAME}.framework/Versions/${FWVER}")
EXECUTE_PROCESS (COMMAND ln -sfh Versions/Current/Resources "${FWDEST}/${FWNAME}.framework/Resources")
ENDIF (IS_DIRECTORY "${FWPREFIX}/${FWNAME}.framework/Versions/${FWVER}/Resources")
# debug variants
SET (FWD "${FWNAME}_debug")
IF ("${FWDEBUG}" STREQUAL "Debug" AND EXISTS "${FWPREFIX}/${FWNAME}.framework/Versions/${FWVER}/${FWD}")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "${FWPREFIX}/${FWNAME}.framework/Versions/${FWVER}/${FWD}" "${FWDEST}/${FWNAME}.framework/Versions/${FWVER}/${FWD}")
EXECUTE_PROCESS (COMMAND ln -sf Versions/Current/${FWD} "${FWDEST}/${FWNAME}.framework/${FWD}")
IF (IS_DIRECTORY "${FWPREFIX}/${FWNAME}.framework/${FWD}.dSYM")
EXECUTE_PROCESS (COMMAND ditto -X ${QARCHS} "${FWPREFIX}/${FWNAME}.framework/${FWD}.dSYM" "${FWDEST}/${FWNAME}.framework")
IF (IS_DIRECTORY "${FWDIRPHYS}")
STRING (REGEX MATCH "[^/\n]+$" FWVER "${FWDIRPHYS}")
EXECUTE_PROCESS (COMMAND mkdir -p "${FWDEST}/${FWNAME}.framework/Versions/${FWVER}")
EXECUTE_PROCESS (COMMAND ln -sfh ${FWVER} "${FWDEST}/${FWNAME}.framework/Versions/Current")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "${FWPREFIX}/${FWNAME}.framework/Versions/${FWVER}/${FWNAME}" "${FWDEST}/${FWNAME}.framework/Versions/${FWVER}/${FWNAME}")
EXECUTE_PROCESS (COMMAND ln -sf Versions/Current/${FWNAME} "${FWDEST}/${FWNAME}.framework/${FWNAME}")
IF (IS_DIRECTORY "${FWPREFIX}/${FWNAME}.framework/Versions/${FWVER}/Resources")
EXECUTE_PROCESS (COMMAND cp -Rfp "${FWPREFIX}/${FWNAME}.framework/Versions/${FWVER}/Resources" "${FWDEST}/${FWNAME}.framework/Versions/${FWVER}")
EXECUTE_PROCESS (COMMAND ln -sfh Versions/Current/Resources "${FWDEST}/${FWNAME}.framework/Resources")
ENDIF (IS_DIRECTORY "${FWPREFIX}/${FWNAME}.framework/Versions/${FWVER}/Resources")
# debug variants
SET (FWD "${FWNAME}_debug")
IF ("${FWDEBUG}" STREQUAL "Debug" AND EXISTS "${FWPREFIX}/${FWNAME}.framework/Versions/${FWVER}/${FWD}")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "${FWPREFIX}/${FWNAME}.framework/Versions/${FWVER}/${FWD}" "${FWDEST}/${FWNAME}.framework/Versions/${FWVER}/${FWD}")
EXECUTE_PROCESS (COMMAND ln -sf Versions/Current/${FWD} "${FWDEST}/${FWNAME}.framework/${FWD}")
IF (IS_DIRECTORY "${FWPREFIX}/${FWNAME}.framework/${FWD}.dSYM")
EXECUTE_PROCESS (COMMAND ditto -X ${QARCHS} "${FWPREFIX}/${FWNAME}.framework/${FWD}.dSYM" "${FWDEST}/${FWNAME}.framework")
ENDIF ()
ENDIF ()
ENDIF ()
ENDFUNCTION (COPY_FRAMEWORK)
Expand All @@ -95,16 +103,17 @@ FUNCTION (UPDATEQGISPATHS LIBFROM LIBTO)
ENDIF ()
SET (LIB_CHG_TO "${ATEXECUTABLE}/${LIBMID}/${LIBPOST}")
# app - always @executable_path
INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QAPPDIR}/${QGIS_APP_NAME}")
# qgis_help, qbrowser - doesn't link anything else than Qt/Qgis
INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QBINDIR}/qgis_help.app/Contents/MacOS/qgis_help")
INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QBINDIR}/qbrowser.app/Contents/MacOS/qbrowser")
INSTALLNAMETOOL_CHANGE ("${LIBFROM}" "${LIB_CHG_TO}" "${QAPPDIR}/${QGIS_APP_NAME}")
# qgis helper apps - don't link anything else than Qt/Qgis
FOREACH (QA ${QGAPPLIST})
INSTALLNAMETOOL_CHANGE ("${LIBFROM}" "${LIB_CHG_TO}" "${QBINDIR}/${QA}.app/Contents/MacOS/${QA}")
ENDFOREACH (QA)
# qgis-mapserver
IF (${WITH_MAPSERVER})
IF (${OSX_HAVE_LOADERPATH})
SET (LIB_CHG_TO "${ATEXECUTABLE}/${QGIS_CGIBIN_SUBDIR_REV}/${LIBMID}/${LIBPOST}")
ENDIF ()
INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QCGIDIR}/qgis_mapserv.fcgi")
INSTALLNAMETOOL_CHANGE ("${LIBFROM}" "${LIB_CHG_TO}" "${QCGIDIR}/qgis_mapserv.fcgi")
ENDIF ()
# libs
IF (${OSX_HAVE_LOADERPATH})
Expand All @@ -116,40 +125,40 @@ FUNCTION (UPDATEQGISPATHS LIBFROM LIBTO)
ENDIF ()
ENDIF ()
FOREACH (QL ${QGFWLIST})
INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QFWDIR}/${QL}.framework/${QL}")
INSTALLNAMETOOL_CHANGE ("${LIBFROM}" "${LIB_CHG_TO}" "${QFWDIR}/${QL}.framework/${QL}")
ENDFOREACH (QL)
# libqgispython is not a framework
IF (${OSX_HAVE_LOADERPATH})
SET (LIB_CHG_TO "${ATLOADER}/${QGIS_LIB_SUBDIR_REV}/${LIBMID}/${LIBPOST}")
ENDIF ()
INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QLIBDIR}/libqgispython.dylib")
INSTALLNAMETOOL_CHANGE ("${LIBFROM}" "${LIB_CHG_TO}" "${QLIBDIR}/libqgispython.dylib")
# GRASS libexec stuff
IF (EXISTS "${QLIBXDIR}/grass/bin/qgis.g.browser")
IF (${OSX_HAVE_LOADERPATH})
SET (LIB_CHG_TO "${ATLOADER}/../../${QGIS_LIBEXEC_SUBDIR_REV}/${LIBMID}/${LIBPOST}")
ENDIF ()
INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QLIBXDIR}/grass/bin/qgis.g.browser")
INSTALLNAMETOOL_CHANGE ("${LIBFROM}" "${LIB_CHG_TO}" "${QLIBXDIR}/grass/bin/qgis.g.browser")
ENDIF ()
# plugins
IF (${OSX_HAVE_LOADERPATH})
SET (LIB_CHG_TO "${ATLOADER}/${QGIS_PLUGIN_SUBDIR_REV}/${LIBMID}/${LIBPOST}")
ENDIF ()
FOREACH (QP ${QGPLUGLIST})
INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QP}")
INSTALLNAMETOOL_CHANGE ("${LIBFROM}" "${LIB_CHG_TO}" "${QP}")
ENDFOREACH (QP)
# qgis python
IF (${OSX_HAVE_LOADERPATH})
SET (LIB_CHG_TO "${ATLOADER}/../../${QGIS_DATA_SUBDIR_REV}/${LIBMID}/${LIBPOST}")
ENDIF ()
FOREACH (PG ${QGPYLIST})
INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${PG}")
INSTALLNAMETOOL_CHANGE ("${LIBFROM}" "${LIB_CHG_TO}" "${PG}")
ENDFOREACH (PG)
# bin - nothing yet
#IF (${OSX_HAVE_LOADERPATH})
# SET (LIB_CHG_TO "${ATLOADER}/${QGIS_BIN_SUBDIR_REV}/${LIBMID}/${LIBPOST}")
#ENDIF ()
#FOREACH (PB ...)
# INSTALLNAMETOOL_CHANGE (${LIBFROM} ${LIB_CHG_TO} "${QBINDIR}/${PB}")
# INSTALLNAMETOOL_CHANGE ("${LIBFROM}" "${LIB_CHG_TO}" "${QBINDIR}/${PB}")
#ENDFOREACH (PB)
ENDIF (LIBFROM)
ENDFUNCTION (UPDATEQGISPATHS)
Expand Down Expand Up @@ -177,8 +186,10 @@ FOREACH (QARCH ${CMAKE_OSX_ARCHITECTURES})
ENDFOREACH (QARCH)

# common file lists
FILE (GLOB QGFWLIST RELATIVE ${QFWDIR} ${QFWDIR}/qgis*.framework)
FILE (GLOB QGFWLIST RELATIVE "${QFWDIR}" "${QFWDIR}/qgis*.framework")
# for some reason, REPLACE is stripping list seps
STRING(REPLACE ".framework" ";" QGFWLIST ${QGFWLIST})
FILE (GLOB QGPLUGLIST ${QPLUGDIR}/*.so)
FILE (GLOB QGPYLIST ${QGISPYDIR}/qgis/*.so)
FILE (GLOB QGPLUGLIST "${QPLUGDIR}/*.so")
FILE (GLOB QGPYLIST "${QGISPYDIR}/qgis/*.so")
FILE (GLOB QGAPPLIST RELATIVE "${QBINDIR}" "${QBINDIR}/q*.app")
STRING(REPLACE ".app" ";" QGAPPLIST ${QGAPPLIST})
5 changes: 4 additions & 1 deletion cmake/SIPMacros.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -95,14 +95,17 @@ MACRO(ADD_SIP_PYTHON_MODULE MODULE_NAME MODULE_SIP)
ELSE(MSVC)
# disable all warnings
ADD_DEFINITIONS( -w )
IF(NOT APPLE)
ADD_DEFINITIONS( -fpermissive )
ENDIF(NOT APPLE)
ENDIF(MSVC)
ENDIF(PEDANTIC)

ADD_CUSTOM_COMMAND(
OUTPUT ${_sip_output_files}
COMMAND ${CMAKE_COMMAND} -E echo ${message}
COMMAND ${CMAKE_COMMAND} -E touch ${_sip_output_files}
COMMAND ${SIP_BINARY_PATH} ${_sip_tags} ${_sip_x} ${SIP_EXTRA_OPTIONS} -j ${SIP_CONCAT_PARTS} -c ${CMAKE_CURRENT_BINARY_DIR}/${_module_path} ${_sip_includes} ${_abs_module_sip}
COMMAND ${SIP_BINARY_PATH} ${_sip_tags} -e ${_sip_x} ${SIP_EXTRA_OPTIONS} -j ${SIP_CONCAT_PARTS} -c ${CMAKE_CURRENT_BINARY_DIR}/${_module_path} ${_sip_includes} ${_abs_module_sip}
DEPENDS ${_abs_module_sip} ${SIP_EXTRA_FILES_DEPEND}
)
# not sure if type MODULE could be uses anywhere, limit to cygwin for now
Expand Down
3 changes: 3 additions & 0 deletions cmake_templates/qgsconfig.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,14 @@
#define QGIS_LIBEXEC_SUBDIR "${QGIS_LIBEXEC_SUBDIR}"
#define QGIS_LIB_SUBDIR "${QGIS_LIB_SUBDIR}"
#define CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}"
#define CMAKE_SOURCE_DIR "${CMAKE_SOURCE_DIR}"

#cmakedefine HAVE_POSTGRESQL

#cmakedefine HAVE_SPATIALITE

#cmakedefine HAVE_MSSQL

#cmakedefine HAVE_PYTHON

#endif
Expand Down
14 changes: 12 additions & 2 deletions debian/changelog
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,18 @@ qgis (1.9.90) UNRELEASED; urgency=low

* new development version 1.9.90 after branch of 1.8.0
* include function help in package

-- Jürgen E. Fischer <jef@norbit.de> Sat, 26 Nov 2011 23:43:48 +0100
* include heatmap plugin
* drop extra include path for QtWebkit on oneiric and natty
* add translations for desktop link
* add browser desktop entry
* add support for Debian wheezy and Ubuntu precise
* build package with internal libspatialite where libspatialite not available
* drop support for Ubuntu hardy, intrepid, jaunty and karmic
* add mssqlprovider plugin
* copyright & policy update (synced from debiangis)
* run crssync in postinst

-- Jürgen E. Fischer <jef@norbit.de> Tue, 03 Apr 2012 00:20:18 +0200

qgis (1.8.0) UNRELEASED; urgency=low

Expand Down
1 change: 0 additions & 1 deletion debian/compat.hardy

This file was deleted.

1 change: 0 additions & 1 deletion debian/compat.intrepid

This file was deleted.

1 change: 0 additions & 1 deletion debian/compat.jaunty

This file was deleted.

1 change: 0 additions & 1 deletion debian/compat.karmic

This file was deleted.

1 change: 1 addition & 0 deletions debian/compat.precise
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
7
2 changes: 1 addition & 1 deletion debian/compat.sid
Original file line number Diff line number Diff line change
@@ -1 +1 @@
7
8
1 change: 1 addition & 0 deletions debian/compat.wheezy
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
8
147 changes: 0 additions & 147 deletions debian/control.hardy

This file was deleted.

156 changes: 0 additions & 156 deletions debian/control.jaunty

This file was deleted.

103 changes: 83 additions & 20 deletions debian/control.intrepid → debian/control.precise
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,50 @@ Source: qgis
Section: science
Priority: extra
Maintainer: Quantum GIS developers <qgis-developer@lists.osgeo.org>
Build-Depends: debhelper (>= 5.0.51~), libgdal1-dev, libpq-dev,
libgeos-dev (>= 3.0.0), grass-dev, libsqlite3-dev, libgsl0-dev, proj,
libexpat1-dev, flex, bison, python-dev, cmake (>=2.4.3),
python-sip4 (>= 4.5.0), python-central (>=0.5), python, sip4 (>= 4.5),
libqt4-core (>=4.2.0), libqt4-dev (>=4.2.0), libqt4-gui (>=4.2.0),
libqt4-sql (>=4.2.0), python-qt4 (>=4.1.0), python-qt4-dev (>=4.1.0),
python-sip4-dev (>= 4.5.0), pyqt4-dev-tools, libqwt5-qt4-dev, libfcgi-dev,
git-core, doxygen, graphviz, txt2tags
Build-Depends:
bison,
cmake (>= 2.6),
debhelper (>= 7),
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,
libqwt5-qt4-dev,
libspatialite-dev,
libsqlite3-dev,
libspatialindex-dev,
pkg-config,
pyqt4-dev-tools,
python,
python-central (>=0.5),
python-dev,
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
Build-Conflicts: libqgis-dev, qgis-dev
Standards-Version: 3.8.0
Standards-Version: 3.8.4
XS-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-grass, python-qgis
Recommends: qgis-plugin-globe, qgis-plugin-grass, python-qgis
Suggests: gpsbabel
Conflicts: uim-qt3
Description: Geographic Information System (GIS)
Expand Down Expand Up @@ -53,14 +80,22 @@ Description: Quantum GIS - shared libraries
Package: libqgis-dev
Architecture: any
Section: libdevel
Depends: libqgis{QGIS_ABI} (= ${binary:Version}), libgdal1-dev,
libpq-dev, libgeos-dev (>= 3.0.0), grass-dev,
libsqlite3-dev, libgsl0-dev, proj, libexpat1-dev, libqt4-core (>=4.2.0),
libqt4-dev (>=4.2.0), libqt4-gui (>=4.2.0), libqt4-qt3support (>=4.2.0),
libqt4-sql (>=4.2.0), python-qt4 (>=4.1.0), python-qt4-dev (>=4.1.0),
qt4-designer (>=4.2.0)
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)
Provides: qgis-dev
Replaces: qgis-dev, libqgis1-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.
Expand All @@ -70,7 +105,7 @@ Description: Quantum GIS - development files

Package: qgis-plugin-grass
Architecture: any
Depends: qgis (= ${binary:Version}), qgis-plugin-grass-common (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}
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.
Expand All @@ -93,7 +128,7 @@ Description: GRASS plugin for Quantum GIS - architecture-independent data
Package: python-qgis
Section: python
Architecture: any
Depends: python-qt4 (>=4.1.0), python-sip4 (>= 4.5.0), python-qgis-common (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
Depends: python-qt4 (>=4.1.0), python-sip (>= 4.5.0), python-qgis-common (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
Provides: ${python:Provides}
XB-Python-Version: ${python:Versions}
Description: Python bindings to Quantum GIS
Expand All @@ -105,8 +140,8 @@ Description: Python bindings to Quantum GIS
Package: python-qgis-common
Section: python
Architecture: all
Depends: gdal-bin, python-gdal, ${python:Depends}
Provides: ${python:Provides}
Depends: gdal-bin, python-gdal, ${python:Depends}
XB-Python-Version: ${python:Versions}
Description: Python bindings to Quantum GIS - architecture-independent files
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
Expand Down Expand Up @@ -146,6 +181,16 @@ Description: Quantum GIS mapserver
.
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
Expand All @@ -155,3 +200,21 @@ Description: Quantum GIS API documentation
.
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.

18 changes: 10 additions & 8 deletions debian/control.sid
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ Maintainer: Quantum GIS developers <qgis-developer@lists.osgeo.org>
Build-Depends:
bison,
cmake (>= 2.6),
debhelper (>= 7),
debhelper (>= 9),
flex,
grass-dev,
libexpat1-dev,
Expand Down Expand Up @@ -37,8 +37,8 @@ Build-Depends:
graphviz,
txt2tags
Build-Conflicts: libqgis-dev, qgis-dev
Standards-Version: 3.8.4
XS-Python-Version: current
Standards-Version: 3.9.3
X-Python-Version: current
Homepage: http://qgis.org/

Package: qgis
Expand All @@ -58,6 +58,7 @@ Description: Geographic Information System (GIS)

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.
Expand Down Expand Up @@ -92,7 +93,8 @@ Depends:
libsqlite3-dev,
python-qt4 (>=4.1.0),
python-qt4-dev (>=4.1.0),
qt4-designer (>=4.4.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
Expand All @@ -114,8 +116,8 @@ Description: GRASS plugin for Quantum GIS

Package: qgis-plugin-grass-common
Architecture: all
Depends: python, ${misc:Depends}
Replaces: qgis-common (<< 1.5)
Depends: python
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
Expand All @@ -127,8 +129,7 @@ Description: GRASS plugin for Quantum GIS - architecture-independent data
Package: python-qgis
Section: python
Architecture: any
Depends: python-qt4 (>=4.1.0), python-sip (>= 4.5.0), python-qgis-common (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}
Provides: ${python:Provides}
Depends: python-qt4 (>=4.1.0), python-sip (>= 4.5.0), python-qgis-common (= ${source:Version}), ${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.
Expand All @@ -139,7 +140,7 @@ Package: python-qgis-common
Section: python
Architecture: all
Provides: ${python:Provides}
Depends: gdal-bin, python-gdal
Depends: gdal-bin, python-gdal, ${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.
Expand All @@ -162,6 +163,7 @@ 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.
Expand Down
2 changes: 1 addition & 1 deletion debian/control.squeeze
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ Build-Depends:
git,
doxygen,
graphviz,
txt2tags
txt2tags
Build-Conflicts: libqgis-dev, qgis-dev
Standards-Version: 3.8.4
XS-Python-Version: current
Expand Down
113 changes: 88 additions & 25 deletions debian/control.karmic → debian/control.wheezy
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,49 @@ Source: qgis
Section: science
Priority: extra
Maintainer: Quantum GIS developers <qgis-developer@lists.osgeo.org>
Build-Depends: debhelper (>= 5.0.51~), libgdal1-dev, libpq-dev,
libgeos-dev (>= 3.0.0), grass-dev, libsqlite3-dev, libgsl0-dev, proj,
libexpat1-dev, flex, bison, python-dev, cmake (>=2.4.3),
python-sip4 (>= 4.5.0), python-central (>=0.5), python, sip4 (>= 4.5),
libqt4-core (>=4.2.0), libqt4-dev (>=4.2.0), libqt4-gui (>=4.2.0),
libqt4-sql (>=4.2.0), python-qt4 (>=4.1.0), python-qt4-dev (>=4.1.0),
python-sip4-dev (>= 4.5.0), pyqt4-dev-tools, libqwt5-qt4-dev, libfcgi-dev,
git-core, doxygen, graphviz, txt2tags
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
Build-Conflicts: libqgis-dev, qgis-dev
Standards-Version: 3.8.0
XS-Python-Version: current
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-grass, python-qgis
Recommends: qgis-plugin-globe, qgis-plugin-grass, python-qgis
Suggests: gpsbabel
Conflicts: uim-qt3
Description: Geographic Information System (GIS)
Expand All @@ -32,11 +58,12 @@ Description: Geographic Information System (GIS)

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
This package contains architecture-independent supporting data files for use
with Quantum GIS.

Package: libqgis{QGIS_ABI}
Expand All @@ -53,14 +80,23 @@ Description: Quantum GIS - shared libraries
Package: libqgis-dev
Architecture: any
Section: libdevel
Depends: libqgis{QGIS_ABI} (= ${binary:Version}), libgdal1-dev,
libpq-dev, libgeos-dev (>= 3.0.0), grass-dev,
libsqlite3-dev, libgsl0-dev, proj, libexpat1-dev, libqt4-core (>=4.2.0),
libqt4-dev (>=4.2.0), libqt4-gui (>=4.2.0), libqt4-qt3support (>=4.2.0),
libqt4-sql (>=4.2.0), python-qt4 (>=4.1.0), python-qt4-dev (>=4.1.0),
qt4-designer (>=4.2.0)
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
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.
Expand All @@ -70,7 +106,7 @@ Description: Quantum GIS - development files

Package: qgis-plugin-grass
Architecture: any
Depends: qgis (= ${binary:Version}), qgis-plugin-grass-common (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}
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.
Expand All @@ -80,7 +116,7 @@ Description: GRASS plugin for Quantum GIS

Package: qgis-plugin-grass-common
Architecture: all
Depends: ${python:Depends}
Depends: python, ${misc:Depends}
Replaces: qgis-common (<< 1.5)
Breaks: qgis-common (<< 1.5)
Description: GRASS plugin for Quantum GIS - architecture-independent data
Expand All @@ -93,9 +129,8 @@ Description: GRASS plugin for Quantum GIS - architecture-independent data
Package: python-qgis
Section: python
Architecture: any
Depends: python-qt4 (>=4.1.0), python-sip4 (>= 4.5.0), python-qgis-common (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
Depends: python-qt4 (>=4.1.0), python-sip (>= 4.5.0), python-qgis-common (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends}, ${python:Depends}
Provides: ${python:Provides}
XB-Python-Version: ${python:Versions}
Description: Python bindings to Quantum GIS
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
Expand All @@ -105,9 +140,8 @@ Description: Python bindings to Quantum GIS
Package: python-qgis-common
Section: python
Architecture: all
Depends: gdal-bin, python-gdal, ${python:Depends}
Provides: ${python:Provides}
XB-Python-Version: ${python:Versions}
Depends: gdal-bin, python-gdal, ${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.
Expand All @@ -130,6 +164,7 @@ 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.
Expand All @@ -146,6 +181,16 @@ Description: Quantum GIS mapserver
.
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
Expand All @@ -155,3 +200,21 @@ Description: Quantum GIS API documentation
.
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.

261 changes: 203 additions & 58 deletions debian/copyright
Original file line number Diff line number Diff line change
@@ -1,58 +1,203 @@
This package was debianized by Steve Halasz <debian at adkgis.org> on
Wed, 31 Dec 2003 10:07:40 -0500.

It was downloaded from:
https://svn.osgeo.org/qgis/trunk/qgis

The upstream contributors are listed in the AUTHORS file and here
reported:

Gary E.Sherman <sherman at mrcc dot com>
Steve Halasz <stevehalasz at users.sourceforge.net>
Marco Hugentobler <mhugent at users.sourceforge.net>
Tim Sutton <tim at linfiniti.com>
Denis Antipov <rawbytes at users.sourceforge.net>
Mark Coletti <mcoletti at users.sourceforge.net>
Lars Luthman <larsl at users.sourceforge.net>
Jens Oberender <j.obi at troja.net>
Christoph Spoerri <spoerri at users.sourceforge.net>
Carl Anderson <>
Gavin Macaulay <g_j_m at users.sourceforge.net>
Masaru Hoshi <hoshi at users.sourceforge.net>
Peter Brewer <p.w.brewer at rdg dot ac dot uk>
Radim Blazek <blazek at itc.it>
Tom Elwertowski <telwertowski at users.sourceforge.net>
Godofredo Contreras <frdcn at hotmail.com>
Martin Dobias <wonder.sk at gmail.com>
Brendan Morley <morb at beagle.com.au>
Magnus Homann <magnus at homann.se>
Jürgen E. Fischer <jef at norbit.de>
Tisham Dhar <tisham at apogee.com.au>
Leonardo Lami <lami at faunalia.it>
Marco Pasetti <marco.pasetti at alice.it>
Mateusz Loskot <mateusz at loskot dot net>
Peter Ersts <ersts at amnh.org>
Borys Jurgiel <borysiasty at aster.pl>
Paolo Cavallini <cavallini at faunalia.it>
Carson J. Q. Farmer <carson dot farmer at gmail dot com>
Lorenzo Masini <lorenxo86 at gmail.com>
Werner Macho <werner.macho at gmail.com>
Giuseppe Sucameli <brush.tyler at gmail.com>
Alessandro Furieri <a.furieri at lqt.it>

Copyright:

Copyright (C) 2003-2010 the authors

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of
the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

On Debian systems, the complete text of the GNU General Public
License can be found in the /usr/share/common-licenses/GPL-2 file.
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: Quantum GIS
Upstream-Contact: qgis-developer@lists.osgeo.org
Source: git://github.com/qgis/Quantum-GIS.git

Files: *
Comment: The upstream contributors are listed in the PROVENANCE file
and here reported.
Copyright: Gary E.Sherman <sherman@mrcc dot com>
Steve Halasz <stevehalasz@users.sourceforge.net>
Marco Hugentobler <mhugent@users.sourceforge.net>
Tim Sutton <tim@linfiniti.com>
Denis Antipov <rawbytes@users.sourceforge.net>
Mark Coletti <mcoletti@users.sourceforge.net>
Lars Luthman <larsl@users.sourceforge.net>
Jens Oberender <j.obi@troja.net>
Christoph Spoerri <spoerri@users.sourceforge.net>
Carl Anderson <>
Gavin Macaulay <g_j_m@users.sourceforge.net>
Masaru Hoshi <hoshi@users.sourceforge.net>
Peter Brewer <p.w.brewer@rdg dot ac dot uk>
Radim Blazek <blazek@itc.it>
Tom Elwertowski <telwertowski@users.sourceforge.net>
Godofredo Contreras <frdcn@hotmail.com>
Martin Dobias <wonder.sk@gmail.com>
Brendan Morley <morb@beagle.com.au>
Magnus Homann <magnus@homann.se>
Jürgen E. Fischer <jef@norbit.de>
Tisham Dhar <tisham@apogee.com.au>
Leonardo Lami <lami@faunalia.it>
Marco Pasetti <marco.pasetti@alice.it>
Mateusz Loskot <mateusz@loskot dot net>
Peter Ersts <ersts@amnh.org>
Borys Jurgiel <borysiasty@aster.pl>
Paolo Cavallini <cavallini@faunalia.it>
Carson J. Q. Farmer <carson dot farmer@gmail dot com>
Lorenzo Masini <lorenxo86@gmail.com>
Werner Macho <werner.macho@gmail.com>
Giuseppe Sucameli <brush.tyler@gmail.com>
Alessandro Furieri <a.furieri@lqt.it>
2008 Paolo L. Scala, Barbara Rita Barricelli, Marco Padula
License: GPL-2+
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of
the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
.
On Debian systems, the complete text of the GNU General Public
License can be found in the /usr/share/common-licenses/GPL-2 file.

Files: python/pyspatialite/*
Copyright: 2004-2007 Gerhard Häring <gh@ghaering.de>
License: Zlib
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
.
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.

Files: src/plugins/dxf2shp_converter/builder.cpp
Copyright: 1999, Frank Warmerdam <warmerda@pobox.com>
Comment: The code is heavily based on Christopher Michaelis' DXF to
Shapefile Converter (http://www.wanderingidea.com/content/view/12/25/),
released under GPL License
.
This code is based on two other products:
DXFLIB (http://www.ribbonsoft.com/dxflib.html)
This is a library for reading DXF files, also GPL.
SHAPELIB (http://shapelib.maptools.org/)
Used for the Shapefile functionality.
License: Expat
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated
documentation files (the "Software"), to deal in the Software without
restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software,
and to permit persons to whom the Software is furnished to do so, subject to
the following conditions:
.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Softwa
.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTY
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDER
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Files: src/core/gps/config.h
src/core/gps/context.c
src/core/gps/context.h
src/core/gps/gmath.c
src/core/gps/gmath.h
src/core/gps/info.c
src/core/gps/info.h
src/core/gps/nmeatime.h
src/core/gps/parse.c
src/core/gps/parse.h
src/core/gps/parser.h
src/core/gps/sentence.c
src/core/gps/sentence.h
src/core/gps/time.c
src/core/gps/tok.c
src/core/gps/tok.h
src/core/gps/units.h
Copyright: Tim <xtimor@gmail.com>
License: LGPL-2+

Files: src/plugins/dxf2shp_converter/shapelib-1.2.10/*
License: LGPL-2+

Files: src/providers/sqlanywhere/sqlanyconnection/sacapi/*
Copyright: 2008-2010 iAnywhere Solutions, Inc.
License: Apache
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
.
http://www.apache.org/licenses/LICENSE-2.0
.
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
.
See the License for the specific language governing permissions and
limitations under the License.
.
While not a requirement of the license, if you do modify this file, we
would appreciate hearing about it. Please email
sqlany_interfaces@sybase.com

Files: cmake/PythonCompile.py
Copyright: Simon Edwards <simon@simonzone.com>
License: public-domain

Files: cmake/*.cmake
License: BSD
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
.
1. Redistributions of source code must retain the copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. The name of the author may not be used to endorse or promote products
derived from this software without specific prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Files: src/core/spatialindex/include/LineSegment.h
src/core/spatialindex/include/Point.h
src/core/spatialindex/include/PointerPool.h
src/core/spatialindex/include/PoolPointer.h
src/core/spatialindex/include/RTree.h
src/core/spatialindex/include/Region.h
src/core/spatialindex/include/SmartPointer.h
src/core/spatialindex/include/SpatialIndex.h
src/core/spatialindex/include/TemporaryFile.h
src/core/spatialindex/include/Tools.h
Copyright: 2004, Navel Ltd.
License: LGPL-2.1+
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
.
On Debian systems, the complete text of the GNU Lesser General Public
License can be found in the /usr/share/common-licenses/LGPL-2.1 file.
1 change: 1 addition & 0 deletions debian/libqgis{QGIS_ABI}.lintian-overrides
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
libqgis{QGIS_ABI}: package-name-doesnt-match-sonames
libqgis{QGIS_ABI}: no-symbols-control-file
libqgis{QGIS_ABI}: shlib-calls-exit
55 changes: 55 additions & 0 deletions debian/qbrowser.desktop
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
[Desktop Entry]
Type=Application
Name=Quantum GIS Browser
Version=1.0
GenericName=Geographic Information System
GenericName[ar]=نظام المعلومات الجغرافي
GenericName[az]=Coğrafi informasiya sistemi
GenericName[bg]=Географска информационна система
GenericName[bs]=Geografski informacioni sistem
GenericName[ca]=Sistema d'informació geogràfica
GenericName[cs]=Geografický Informační Systém
GenericName[de]=Geographisches Informationssystem
GenericName[el]=Σύστημα Γεωγραφικών Πληροφοριών
GenericName[es]=Sistema de Información Geográfica
GenericName[et]=Geoinfosüsteem
GenericName[eu]=Geografia-informazioko sistemen
GenericName[fa]=سامانه اطلاعات مکانی
GenericName[fi]=Maantieteellinen Tietojärjestelmä
GenericName[fr]=Système d'Information Géographique
GenericName[gl]=Sistema de información xeográfica
GenericName[he]=מערכת מידע גאוגרפית
GenericName[hi]=भूगोलीय_सूचना_प्रणाली
GenericName[hr]=Geografski informacijski sustav
GenericName[hu]=Földrajzi információs rendszer
GenericName[hy]=Աշխարհագրական տեղեկատվական համակարգ
GenericName[id]=Sistem informasi geografis
GenericName[is]=Landfræðilegt upplýsingakerfi
GenericName[it]=Sistema Informativo Geografico
GenericName[ka]=გეოინფორმაციული სისტემა
GenericName[lt]=Geografinė informacinė sistema
GenericName[lv]=Ģeogrāfiskā informācijas sistēma
GenericName[mk]=Географски информационен систем
GenericName[ml]=ജി.ഐ.എസ്.
GenericName[nl]=Geografisch informatiesysteem
GenericName[nn]=Geografiske informasjonssystem
GenericName[no]=Geografiske informasjonssystemer
GenericName[pl]=System Informacji Geograficznej
GenericName[pt]=Sistema de Informação Geográfica
GenericName[ro]=Sistem Informatic Geografic
GenericName[ru]=Геоинформационная система
GenericName[sh]=Geografski informacijski sistem
GenericName[sk]=Geografický informačný systém
GenericName[sl]=Geografski informacijski sistem
GenericName[sr]=Географски информациони систем
GenericName[sv]=Geografiskt Informationssystem
GenericName[th]=ระบบสารสนเทศภูมิศาสตร์
GenericName[tr]=Coğrafi bilgi sistemi
GenericName[uk]=Геоінформаційна система
GenericName[uz]=Geografik axborot tizimi
Icon=qgis-icon
TryExec=/usr/bin/qbrowser
Exec=/usr/bin/qbrowser %F
Terminal=false
StartupNotify=false
Categories=Qt;Education;Science;Geography;
8 changes: 8 additions & 0 deletions debian/qgis-providers-common.postinst
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#!/bin/sh
set -e

if [ "$1" = "configure" ] && [ -x /usr/lib/qgis/crssync ]; then
/usr/lib/qgis/crssync
fi

#DEBHELPER#
11 changes: 6 additions & 5 deletions debian/qgis-providers.install
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
usr/lib/qgis/crssync
usr/lib/qgis/plugins/libdelimitedtextprovider.so
usr/lib/qgis/plugins/libgdalprovider.so
usr/lib/qgis/plugins/libgpxprovider.so
usr/lib/qgis/plugins/libmemoryprovider.so
usr/lib/qgis/plugins/libmssqlprovider.so
usr/lib/qgis/plugins/libogrprovider.so
usr/lib/qgis/plugins/libosmprovider.so
usr/lib/qgis/plugins/libpostgresprovider.so
usr/lib/qgis/plugins/libspatialiteprovider.so
usr/lib/qgis/plugins/libwfsprovider.so
usr/lib/qgis/plugins/libwmsprovider.so
usr/lib/qgis/plugins/libmemoryprovider.so
usr/lib/qgis/plugins/libspatialiteprovider.so
usr/lib/qgis/plugins/libosmprovider.so
usr/lib/qgis/plugins/libgdalprovider.so
usr/lib/qgis/crssync
47 changes: 45 additions & 2 deletions debian/qgis.desktop
Original file line number Diff line number Diff line change
@@ -1,9 +1,52 @@
[Desktop Entry]
Type=Application
Name=Quantum GIS
Name=Quantum GIS Desktop
Version=1.0
GenericName=Geographical Information System
GenericName=Geographic Information System
GenericName[ar]=نظام المعلومات الجغرافي
GenericName[az]=Coğrafi informasiya sistemi
GenericName[bg]=Географска информационна система
GenericName[bs]=Geografski informacioni sistem
GenericName[ca]=Sistema d'informació geogràfica
GenericName[cs]=Geografický Informační Systém
GenericName[de]=Geographisches Informationssystem
GenericName[el]=Σύστημα Γεωγραφικών Πληροφοριών
GenericName[es]=Sistema de Información Geográfica
GenericName[et]=Geoinfosüsteem
GenericName[eu]=Geografia-informazioko sistemen
GenericName[fa]=سامانه اطلاعات مکانی
GenericName[fi]=Maantieteellinen Tietojärjestelmä
GenericName[fr]=Système d'Information Géographique
GenericName[gl]=Sistema de información xeográfica
GenericName[he]=מערכת מידע גאוגרפית
GenericName[hi]=भूगोलीय_सूचना_प्रणाली
GenericName[hr]=Geografski informacijski sustav
GenericName[hu]=Földrajzi információs rendszer
GenericName[hy]=Աշխարհագրական տեղեկատվական համակարգ
GenericName[id]=Sistem informasi geografis
GenericName[is]=Landfræðilegt upplýsingakerfi
GenericName[it]=Sistema Informativo Geografico
GenericName[ka]=გეოინფორმაციული სისტემა
GenericName[lt]=Geografinė informacinė sistema
GenericName[lv]=Ģeogrāfiskā informācijas sistēma
GenericName[mk]=Географски информационен систем
GenericName[ml]=ജി.ഐ.എസ്.
GenericName[nl]=Geografisch informatiesysteem
GenericName[nn]=Geografiske informasjonssystem
GenericName[no]=Geografiske informasjonssystemer
GenericName[pl]=System Informacji Geograficznej
GenericName[pt]=Sistema de Informação Geográfica
GenericName[ro]=Sistem Informatic Geografic
GenericName[ru]=Геоинформационная система
GenericName[sh]=Geografski informacijski sistem
GenericName[sk]=Geografický informačný systém
GenericName[sl]=Geografski informacijski sistem
GenericName[sr]=Географски информациони систем
GenericName[sv]=Geografiskt Informationssystem
GenericName[th]=ระบบสารสนเทศภูมิศาสตร์
GenericName[tr]=Coğrafi bilgi sistemi
GenericName[uk]=Геоінформаційна система
GenericName[uz]=Geografik axborot tizimi
Icon=qgis-icon
TryExec=/usr/bin/qgis
Exec=/usr/bin/qgis %F
Expand Down
2 changes: 2 additions & 0 deletions debian/qgis.install
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,13 @@ usr/lib/qgis/plugins/libspatialqueryplugin.so
usr/lib/qgis/plugins/libofflineeditingplugin.so
usr/lib/qgis/plugins/libroadgraphplugin.so
usr/lib/qgis/plugins/libzonalstatisticsplugin.so
usr/lib/qgis/plugins/libheatmapplugin.so
usr/lib/qgis/qgis_help
usr/share/pixmaps/qgis-icon.xpm
usr/share/pixmaps/qgis-mime-icon.png
usr/share/pixmaps/qgis-mime-icon.png usr/share/icons/crystalsvg/128x128/mimetypes
../qgis.desktop usr/share/applications
../qbrowser.desktop usr/share/applications
../qgis.xml usr/share/mime/packages
../mime/application/x-esri-shape.desktop usr/share/mimelnk/application
../mime/application/x-mapinfo-mif.desktop usr/share/mimelnk/application
Expand Down
28 changes: 12 additions & 16 deletions debian/rules
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)

DISTRIBUTION := $(shell dpkg-parsechangelog --format rfc822 | sed -ne "s/^Distribution: //p")
ifneq ($(DISTRIBUTION),$(findstring $(DISTRIBUTION),"squeeze hardy intrepid jaunty karmic lucid maverick natty oneiric"))
ifneq ($(DISTRIBUTION),$(findstring $(DISTRIBUTION),"lenny squeeze wheezy lucid maverick natty oneiric precise"))
DISTRIBUTION := sid
endif

Expand All @@ -32,28 +32,24 @@ CMAKE_OPTS := \
-D QGIS_CGIBIN_SUBDIR=/usr/lib/cgi-bin \
-D WITH_APIDOC=TRUE

ifneq (,$(findstring $(DISTRIBUTION),"natty oneiric"))
CMAKE_OPTS += -D QT_QTWEBKIT_INCLUDE_DIR=/usr/include/QtWebKit
endif

#ifeq (,$(findstring $(DISTRIBUTION),"squeeze lucid maverick natty oneiric sid"))
ifneq (,$(findstring $(DISTRIBUTION),"lenny squeeze lucid maverick natty oneiric"))
CMAKE_OPTS += -D WITH_INTERNAL_SPATIALITE=TRUE
#else
# CMAKE_OPTS += -D WITH_INTERNAL_SPATIALITE=FALSE
#endif
else
CMAKE_OPTS += -D WITH_INTERNAL_SPATIALITE=FALSE
endif

ifneq (,$(findstring $(DISTRIBUTION),"sid"))
ifneq (,$(findstring $(DISTRIBUTION),"lenny squeeze lucid maverick natty oneiric"))
CMAKE_OPTS += -D WITH_GLOBE=FALSE
else
CMAKE_OPTS += -D WITH_GLOBE=TRUE
endif

ifneq (,$(findstring $(DISTRIBUTION),"squeeze lucid maverick natty oneiric sid"))
ifneq (,$(findstring $(DISTRIBUTION),"lenny"))
CMAKE_OPTS += -D WITH_INTERNAL_SPATIALINDEX=TRUE
else
CMAKE_OPTS += -D WITH_INTERNAL_SPATIALINDEX=FALSE
endif

ifneq (,$(findstring $(DISTRIBUTION),"hardy intrepid"))
LDFLAGS += -Wl,--as-needed -Wl,--no-undefined
endif

ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
CFLAGS += -O0
else
Expand Down Expand Up @@ -169,7 +165,7 @@ binary-arch: build install
install -o root -g root -m 755 $(CURDIR)/debian/qgis.sh $(CURDIR)/debian/qgis-plugin-grass/usr/bin/qgis
install -o root -g root -m 755 $(CURDIR)/debian/qgis.sh $(CURDIR)/debian/qgis-plugin-grass/usr/bin/qbrowser

ifneq (,$(findstring $(DISTRIBUTION),"sid"))
ifneq (,$(findstring $(DISTRIBUTION),"wheezy sid"))
dh_python2 --no-guessing-versions
else
dh_pycentral
Expand Down
2 changes: 2 additions & 0 deletions doc/AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -42,3 +42,5 @@ Werner Macho <werner.macho at gmail.com>
Giuseppe Sucameli <brush.tyler at gmail.com>
Alessandro Furieri <a.furieri at lqt.it>
Alexander Bruy <alexander.bruy@gmail.com>
Marco Bernasocchi <marco at bernawebdesign dot ch>
Nathan Woodrow <woodrow.nathan at gmail.com>
2 changes: 1 addition & 1 deletion doc/CODING.t2t
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ Developers guide for QGIS
%! PostProc(tex): '\\section' '\\newpage\\section'
%! PostProc(tex): 'section{' 'section{\\color{qgis-green}'
%! PostProc(tex): NEWPAGE '\\newpage'
% Give alternating table rows different colours and use a smaller font in tables (\tiny)
% Give alternating table rows different colors and use a smaller font in tables (\tiny)
%! PostProc(tex): '\\begin{tabular}' '\\rowcolors{2}{tableShade}{white} \n\\tiny\\begin{tabular}'
%! encoding: iso-8859-1

Expand Down
4 changes: 2 additions & 2 deletions doc/CONTRIBUTORS
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@
# feedback, reviews and/or many other things that have aided the development of
# QGIS:
#
Alexander Bruy
Andres Manz
Anita Graser
Arthur Nanni
Arunmozhi
Baba Yoshihiko
Brent Wood
Brook Milligan
Expand Down Expand Up @@ -42,14 +42,14 @@ Matt Amos
Maurizio Napolitano
Mayeul Kauffmann
Milena Nowotarska
Nathan Woodrow
Nikos Alexandris
Paul Ramsey
Richard Duivenvoorde
Richard Kostecky
Robert Szczepanek
Stefanie Tellex
Steven Mizuno
Tamas Szekeres
Tom Russo
Tyler Mitchell
Vita Cizek
Expand Down
468 changes: 329 additions & 139 deletions doc/INSTALL.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions doc/TRANSLATORS
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ German|Jürgen E. Fischer, Stephan Holl, Otto Dassau, Werner Macho
Greek|Evripidis Argyropoulos, Mike Pegnigiannis, Nikos Ves
Hungarian|Siki Zoltan
Icelandic|Thordur Ivarsson
Indonesian|Januar V. Simarmata
Italian|Paolo Cavallini, Flavio Rigolon, Maurizio Napolitano
Indonesian|Januar V. Simarmata, I Made Anombawa
Italian|Paolo Cavallini, Flavio Rigolon, Maurizio Napolitano, Roberto Angeletti, Alessandro Fanna
Japanese|BABA Yoshihiko, Yoichi Kayama
Lao|Anousak Souphavanh
Latvian|Maris Nartiss, Pēteris Brūns
Expand Down
359 changes: 254 additions & 105 deletions doc/osx.t2t

Large diffs are not rendered by default.

11 changes: 4 additions & 7 deletions doc/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,11 @@ h1{ background-color: #F6F6F6;
padding: 0.75em 0 0;
margin: 0;
line-height: 1.1em;
border-bottom: 5px solid #DCEB5C;
}
h2{ background-color: #F6F6F6;
color: #8FB171;
font-size: medium;
font-size: large;
font-weight: normal;
font-family: luxi serif, georgia, times new roman, times, serif;
background: none;
Expand All @@ -35,23 +36,19 @@ h3{ background-color: #F6F6F6;
color: #729FCF;
font-family: luxi serif, georgia, times new roman, times, serif;
font-weight: bold;
font-size: large;
text-align: right;
border-bottom: 5px solid #DCEB5C;
font-size: medium;
}
h4{ background-color: #F6F6F6;
color: #729FCF;
font-family: luxi serif, georgia, times new roman, times, serif;
font-weight: bold;
font-weight: normal;
font-size: medium;
text-align: right;
}
h5{ background-color: #F6F6F6;
color: #729FCF;
font-family: luxi serif, georgia, times new roman, times, serif;
font-weight: bold;
font-size: small;
text-align: right;
}
a{ color: #729FCF;
font-family: arial,sans-serif;
Expand Down
18,005 changes: 11,301 additions & 6,704 deletions i18n/qgis_af.ts

Large diffs are not rendered by default.

18,072 changes: 11,366 additions & 6,706 deletions i18n/qgis_ar.ts

Large diffs are not rendered by default.

18,606 changes: 11,792 additions & 6,814 deletions i18n/qgis_bg.ts

Large diffs are not rendered by default.

18,474 changes: 11,525 additions & 6,949 deletions i18n/qgis_ca_ES.ts

Large diffs are not rendered by default.

18,393 changes: 12,699 additions & 5,694 deletions i18n/qgis_cs_CZ.ts

Large diffs are not rendered by default.

12,306 changes: 7,043 additions & 5,263 deletions i18n/qgis_de.ts

Large diffs are not rendered by default.

18,490 changes: 12,090 additions & 6,400 deletions i18n/qgis_el_GR.ts

Large diffs are not rendered by default.

15,176 changes: 6,992 additions & 8,184 deletions i18n/qgis_es.ts

Large diffs are not rendered by default.

11,894 changes: 7,550 additions & 4,344 deletions i18n/qgis_et.ts

Large diffs are not rendered by default.

18,546 changes: 11,632 additions & 6,914 deletions i18n/qgis_fa.ts

Large diffs are not rendered by default.

18,263 changes: 11,943 additions & 6,320 deletions i18n/qgis_fi.ts

Large diffs are not rendered by default.

11,565 changes: 7,325 additions & 4,240 deletions i18n/qgis_fr.ts

Large diffs are not rendered by default.

18,187 changes: 10,559 additions & 7,628 deletions i18n/qgis_gl_ES.ts

Large diffs are not rendered by default.

18,518 changes: 11,546 additions & 6,972 deletions i18n/qgis_he.ts

Large diffs are not rendered by default.

15,414 changes: 9,666 additions & 5,748 deletions i18n/qgis_hr_HR.ts

Large diffs are not rendered by default.

18,422 changes: 12,667 additions & 5,755 deletions i18n/qgis_hu.ts

Large diffs are not rendered by default.

38,041 changes: 22,359 additions & 15,682 deletions i18n/qgis_id.ts

Large diffs are not rendered by default.

18,472 changes: 12,073 additions & 6,399 deletions i18n/qgis_is.ts

Large diffs are not rendered by default.

18,665 changes: 12,954 additions & 5,711 deletions i18n/qgis_it.ts

Large diffs are not rendered by default.

18,397 changes: 12,689 additions & 5,708 deletions i18n/qgis_ja.ts

Large diffs are not rendered by default.

18,397 changes: 11,962 additions & 6,435 deletions i18n/qgis_ka_GE.ts

Large diffs are not rendered by default.

47,524 changes: 47,524 additions & 0 deletions i18n/qgis_ko_KR.ts

Large diffs are not rendered by default.

18,327 changes: 11,839 additions & 6,488 deletions i18n/qgis_lo.ts

Large diffs are not rendered by default.

22,706 changes: 13,657 additions & 9,049 deletions i18n/qgis_lt.ts

Large diffs are not rendered by default.

14,903 changes: 10,210 additions & 4,693 deletions i18n/qgis_lv.ts

Large diffs are not rendered by default.

11,754 changes: 7,020 additions & 4,734 deletions i18n/qgis_mn.ts

Large diffs are not rendered by default.

4,930 changes: 4,489 additions & 441 deletions i18n/qgis_nl.ts

Large diffs are not rendered by default.

12,278 changes: 7,408 additions & 4,870 deletions i18n/qgis_no.ts

Large diffs are not rendered by default.

18,478 changes: 12,781 additions & 5,697 deletions i18n/qgis_pl_PL.ts

Large diffs are not rendered by default.

18,813 changes: 12,964 additions & 5,849 deletions i18n/qgis_pt_BR.ts

Large diffs are not rendered by default.

11,772 changes: 7,265 additions & 4,507 deletions i18n/qgis_pt_PT.ts

Large diffs are not rendered by default.

18,414 changes: 11,740 additions & 6,674 deletions i18n/qgis_ro.ts

Large diffs are not rendered by default.

18,439 changes: 12,663 additions & 5,776 deletions i18n/qgis_ru.ts

Large diffs are not rendered by default.

18,253 changes: 11,891 additions & 6,362 deletions i18n/qgis_sk.ts

Large diffs are not rendered by default.

18,265 changes: 12,479 additions & 5,786 deletions i18n/qgis_sl_SI.ts

Large diffs are not rendered by default.

18,414 changes: 11,891 additions & 6,523 deletions i18n/qgis_sq_AL.ts

Large diffs are not rendered by default.

18,559 changes: 12,503 additions & 6,056 deletions i18n/qgis_sr_CS-Latn.ts

Large diffs are not rendered by default.

18,758 changes: 12,223 additions & 6,535 deletions i18n/qgis_sv.ts

Large diffs are not rendered by default.

18,508 changes: 11,541 additions & 6,967 deletions i18n/qgis_ta.ts

Large diffs are not rendered by default.

18,589 changes: 12,453 additions & 6,136 deletions i18n/qgis_th.ts

Large diffs are not rendered by default.

19,234 changes: 12,626 additions & 6,608 deletions i18n/qgis_tr.ts

Large diffs are not rendered by default.

19,002 changes: 12,658 additions & 6,344 deletions i18n/qgis_uk.ts

Large diffs are not rendered by default.

18,795 changes: 12,358 additions & 6,437 deletions i18n/qgis_vi.ts

Large diffs are not rendered by default.

18,532 changes: 11,552 additions & 6,980 deletions i18n/qgis_xh.ts

Large diffs are not rendered by default.

18,393 changes: 11,792 additions & 6,601 deletions i18n/qgis_zh_CN.ts

Large diffs are not rendered by default.

18,253 changes: 12,015 additions & 6,238 deletions i18n/qgis_zh_TW.ts

Large diffs are not rendered by default.

17 changes: 17 additions & 0 deletions images/images.qrc
Original file line number Diff line number Diff line change
Expand Up @@ -108,9 +108,11 @@
<file>themes/default/mActionNewFolder.png</file>
<file>themes/default/mActionNewVectorLayer.png</file>
<file>themes/default/mActionNodeTool.png</file>
<file>themes/default/mActionOffsetCurve.png</file>
<file>themes/default/mActionOpenTable.png</file>
<file>themes/default/mActionOptions.png</file>
<file>themes/default/mActionPan.png</file>
<file>themes/default/mActionPanToSelected.png</file>
<file>themes/default/mAction.png</file>
<file>themes/default/mActionProjectProperties.png</file>
<file>themes/default/mActionPropertyItem.png</file>
Expand Down Expand Up @@ -154,34 +156,43 @@
<file>themes/default/mActionZoomOut.png</file>
<file>themes/default/mActionZoomToLayer.png</file>
<file>themes/default/mActionZoomToSelected.png</file>
<file>themes/default/mIconConnect.png</file>
<file>themes/default/mIconDbSchema.png</file>
<file>themes/default/mIconDelete.png</file>
<file>themes/default/mIconEditable.png</file>
<file>themes/default/mIconFavourites.png</file>
<file>themes/default/mIconFirst.png</file>
<file>themes/default/mIconGeometryLayer.png</file>
<file>themes/default/mIconLast.png</file>
<file>themes/default/mIconLayer.png</file>
<file>themes/default/mIconLineLayer.png</file>
<file>themes/default/mIconLock.png</file>
<file>themes/default/mIconNew.png</file>
<file>themes/default/mIconMssql.png</file>
<file>themes/default/mIconNext.png</file>
<file>themes/default/mIconNoPyramid.png</file>
<file>themes/default/mIconPointLayer.png</file>
<file>themes/default/mIconPolygonLayer.png</file>
<file>themes/default/mIconPostgis.png</file>
<file>themes/default/mIconPrevious.png</file>
<file>themes/default/mIconProjectionDisabled.png</file>
<file>themes/default/mIconProjectionEnabled.png</file>
<file>themes/default/mIconProjectionProblem.png</file>
<file>themes/default/mIconProperties.png</file>
<file>themes/default/mIconPyramid.png</file>
<file>themes/default/mIconSpatialite.png</file>
<file>themes/default/mIconStopRendering.png</file>
<file>themes/default/mIconRaster.png</file>
<file>themes/default/mIconRenderingEnabled.png</file>
<file>themes/default/mIconRenderingDisabled.png</file>
<file>themes/default/mIconSymbology.png</file>
<file>themes/default/mIconTableLayer.png</file>
<file>themes/default/mIconUnknownLayerType.png</file>
<file>themes/default/mIconWaitingForLayerType.png</file>
<file>themes/default/mIconWfs.png</file>
<file>themes/default/mIconWms.png</file>
<file>themes/default/mIconWmsLayer.png</file>
<file>themes/default/mIconWarn.png</file>
<file>themes/default/mMapserverExport.png</file>
<file>themes/default/plugin.png</file>
<file>themes/default/propertyicons/action.png</file>
Expand Down Expand Up @@ -294,6 +305,7 @@
<file>themes/gis/mActionNodeTool.png</file>
<file>themes/gis/mActionOpenTable.png</file>
<file>themes/gis/mActionPan.png</file>
<file>themes/gis/mActionPanToSelected.png</file>
<file>themes/gis/mActionRaiseItems.png</file>
<file>themes/gis/mActionRedo.png</file>
<file>themes/gis/mActionRemoveLayer.png</file>
Expand Down Expand Up @@ -359,8 +371,13 @@
<file>themes/gis/mIconSpatialite.png</file>
<file>themes/gis/mIconRaster.png</file>
<file>themes/gis/mIconPostgis.png</file>
<file>themes/gis/mIconMssql.png</file>
<file>themes/gis/mIconConnect.png</file>
<file>themes/gis/mIconDbSchema.png</file>
<file>themes/gis/mActionTouch.png</file>
<file>themes/default/mActionAddMssqlLayer.png</file>
<file>themes/default/mActionTouch.png</file>
<file>themes/classic/mActionTouch.png</file>
</qresource>
<qresource prefix="/images/tips">
<file alias="symbol_levels.png">qgis_tips/symbol_levels.png</file>
Expand Down
Binary file added images/themes/classic/mActionTouch.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 0 additions & 1 deletion images/themes/default/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

FILE (GLOB IMAGES *.png)

INSTALL (FILES ${IMAGES}
Expand Down
Binary file added images/themes/default/mActionAddMssqlLayer.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/default/mActionOffsetCurve.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/default/mActionPanToSelected.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/default/mActionTouch.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/default/mIconConnect.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/default/mIconDbSchema.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/default/mIconFavourites.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/default/mIconMssql.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/default/mIconPostgis.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/default/mIconRaster.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/default/mIconSpatialite.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/default/mIconWarn.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/default/mIconWfs.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Empty file modified images/themes/default/propertyicons/gdal.png
100755 → 100644
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/gis/mActionPanToSelected.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/gis/mActionTouch.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/themes/gis/mIconMssql.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 2 additions & 0 deletions mac/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ IF (APPLE)
# start with Qt
CONFIGURE_FILE (cmake/1qt.cmake.in 1qt.cmake @ONLY)
INSTALL (SCRIPT ${CMAKE_BINARY_DIR}/mac/1qt.cmake)
CONFIGURE_FILE (cmake/1osg.cmake.in 1osg.cmake @ONLY)
INSTALL (SCRIPT ${CMAKE_BINARY_DIR}/mac/1osg.cmake)
IF (QGIS_MACAPP_BUNDLE GREATER 1)
# next - libs
CONFIGURE_FILE (cmake/2lib.cmake.in 2lib.cmake @ONLY)
Expand Down
79 changes: 79 additions & 0 deletions mac/cmake/1osg.cmake.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
# 1osg - bundle OSG & osgEarth frameworks
# ! cmakecache vars not available to external scripts
# so we configure it first to do substitutions
# make sure to use @varname@

# kill boolean warnings
CMAKE_POLICY (SET CMP0012 NEW)

IF (@OSGEARTH_FOUND@)

INCLUDE (@CMAKE_BINARY_DIR@/mac/0vars.cmake)
INCLUDE (@CMAKE_SOURCE_DIR@/cmake/MacBundleMacros.cmake)

SET (OSG_PLUGINS_PATH "@OSG_PLUGINS_PATH@")

# list of osg frameworks to bundle

SET (OSGLIST OpenThreads osg osgDB osgGA osgViewer osgEarth osgEarthAnnotation osgEarthFeatures osgEarthSymbology osgEarthUtil osgFX osgManipulator osgShadow osgSim osgTerrain osgText osgUtil osgWidget)
#SET (PYOSGLIST future python bindings?)
MYMESSAGE ("OSG list: ${OSGLIST}")

# extract OSG framework path from OSGEARTH_LIBRARY, assume all in same prefix

STRING (REPLACE "/osgEarth.framework" "" OSG_FW_DIR "@OSGEARTH_LIBRARY@")

### copy OSG

MESSAGE (STATUS "Copying OSG and osgEarth...")

# osg frameworks
FOREACH (OFW ${OSGLIST})
IF (NOT IS_DIRECTORY "${QFWDIR}/${OFW}.framework")
COPY_FRAMEWORK("${OSG_FW_DIR}" ${OFW} "${QFWDIR}")
ENDIF ()
ENDFOREACH (OFW)

# osg plugins

IF (OSG_PLUGINS_PATH)
FILE (GLOB OSGPLUGLIST RELATIVE ${OSG_PLUGINS_PATH} ${OSG_PLUGINS_PATH}/*.so)
EXECUTE_PROCESS (COMMAND mkdir -p "${QPLUGDIR}/../osgPlugins")
FOREACH (OP ${OSGPLUGLIST})
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "${OSG_PLUGINS_PATH}/${OP}" "${QPLUGDIR}/../osgPlugins/${OP}")
ENDFOREACH (OP)
ENDIF ()

# update lib paths

MESSAGE (STATUS "Updating OSG library paths...")

FOREACH (OFW ${OSGLIST})
# get install names from installed in case bundled copy already changed
# from a previous install attempt
GET_INSTALL_NAME ("${OSG_FW_DIR}/${OFW}.framework/${OFW}" ${OFW}.framework OO)
SET (OFW_CHG "${OO}")
SET (OFW_CHG_TO "${ATEXECUTABLE}/@QGIS_FW_SUBDIR@/${OFW}.framework/${OFW}")
# qgis app
INSTALLNAMETOOL_CHANGE ("${OFW_CHG}" "${OFW_CHG_TO}" "${QAPPDIR}/${QGIS_APP_NAME}")

SET (LIBPOST "${OFW}.framework/${OFW}")
# osg frameworks
IF (@OSX_HAVE_LOADERPATH@)
SET (OFW_CHG_TO "${ATLOADER}/../../../${LIBPOST}")
ENDIF ()
FOREACH (OF ${OSGLIST})
INSTALLNAMETOOL_CHANGE ("${OFW_CHG}" "${OFW_CHG_TO}" "${QFWDIR}/${OF}.framework/${OF}")
ENDFOREACH (OF)
# osg plugins
IF (@OSX_HAVE_LOADERPATH@)
SET (OFW_CHG_TO "${ATLOADER}/@QGIS_PLUGIN_SUBDIR_REV@/@QGIS_FW_SUBDIR@/${LIBPOST}")
ENDIF ()
FOREACH (OP ${OSGPLUGLIST})
INSTALLNAMETOOL_CHANGE ("${OFW_CHG}" "${OFW_CHG_TO}" "${QPLUGDIR}/../osgPlugins/${OP}")
ENDFOREACH (OP)
# globe plugin
INSTALLNAMETOOL_CHANGE ("${OFW_CHG}" "${OFW_CHG_TO}" "${QPLUGDIR}/libglobeplugin.so")
ENDFOREACH (OFW)

ENDIF (@OSGEARTH_FOUND@)
87 changes: 49 additions & 38 deletions mac/cmake/1qt.cmake.in
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,11 @@ ENDIF ()
# additional Qt may be needed by plugins
SET (QTLISTQG ${QTLISTQG} QtMultimedia QtOpenGL)
SET (PYQTLIST ${PYQTLIST} QtMultimedia QtOpenGL)
# for tests
IF (ENABLE_TESTS)
SET (QTLISTQG ${QTLISTQG} QtTest)
SET (PYQTLIST ${PYQTLIST} QtTest)
ENDIF ()

MYMESSAGE ("Qt list: ${QTLISTQG}")

Expand Down Expand Up @@ -53,19 +58,19 @@ ENDFOREACH (QFW)

# Qt plugins

EXECUTE_PROCESS (COMMAND mkdir -p "${QAPPDIRC}/PlugIns/imageformats")
IF (NOT EXISTS "${QAPPDIRC}/PlugIns/imageformats/libqjpeg.dylib")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/imageformats/libqjpeg.dylib" "${QAPPDIRC}/PlugIns/imageformats/libqjpeg.dylib")
EXECUTE_PROCESS (COMMAND mkdir -p "${QPLUGDIR}/../imageformats")
IF (NOT EXISTS "${QPLUGDIR}/../imageformats/libqjpeg.dylib")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/imageformats/libqjpeg.dylib" "${QPLUGDIR}/../imageformats/libqjpeg.dylib")
ENDIF ()
EXECUTE_PROCESS (COMMAND mkdir -p "${QAPPDIRC}/PlugIns/codecs")
EXECUTE_PROCESS (COMMAND mkdir -p "${QPLUGDIR}/../codecs")
FOREACH (QTC cn;jp;kr;tw)
IF (NOT EXISTS "${QAPPDIRC}/PlugIns/codecs/libq${QTC}codecs.dylib")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/codecs/libq${QTC}codecs.dylib" "${QAPPDIRC}/PlugIns/codecs/libq${QTC}codecs.dylib")
IF (NOT EXISTS "${QPLUGDIR}/../codecs/libq${QTC}codecs.dylib")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/codecs/libq${QTC}codecs.dylib" "${QPLUGDIR}/../codecs/libq${QTC}codecs.dylib")
ENDIF ()
ENDFOREACH (QTC)
EXECUTE_PROCESS (COMMAND mkdir -p "${QAPPDIRC}/PlugIns/sqldrivers")
IF (NOT EXISTS "${QAPPDIRC}/PlugIns/sqldrivers/libqsqlite.dylib")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/sqldrivers/libqsqlite.dylib" "${QAPPDIRC}/PlugIns/sqldrivers/libqsqlite.dylib")
EXECUTE_PROCESS (COMMAND mkdir -p "${QPLUGDIR}/../sqldrivers")
IF (NOT EXISTS "${QPLUGDIR}/../sqldrivers/libqsqlite.dylib")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@QT_PLUGINS_DIR@/sqldrivers/libqsqlite.dylib" "${QPLUGDIR}/../sqldrivers/libqsqlite.dylib")
ENDIF ()

# Qwt
Expand Down Expand Up @@ -117,32 +122,36 @@ IF (NOT EXISTS "${QBINDIR}/pyuic4")
ENDIF ()

# PyQwt
# only if it's available, not compatible with newer PyQt

MESSAGE (STATUS "Copying PyQwt and updating library paths...")
EXECUTE_PROCESS (COMMAND mkdir -p "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5")
IF (NOT EXISTS "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/_iqt.so")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@SIP_MOD_DIR@/PyQt${QT_FWVER}/Qwt5/_iqt.so" "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/")
ENDIF ()
IF (NOT EXISTS "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/Qwt.so")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@SIP_MOD_DIR@/PyQt${QT_FWVER}/Qwt5/Qwt.so" "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/")
IF (EXISTS "@SIP_MOD_DIR@/PyQt${QT_FWVER}/Qwt5/_iqt.so")
MESSAGE (STATUS "Copying PyQwt and updating library paths...")
EXECUTE_PROCESS (COMMAND mkdir -p "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5")
IF (NOT EXISTS "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/_iqt.so")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@SIP_MOD_DIR@/PyQt${QT_FWVER}/Qwt5/_iqt.so" "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/")
ENDIF ()
IF (NOT EXISTS "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/Qwt.so")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@SIP_MOD_DIR@/PyQt${QT_FWVER}/Qwt5/Qwt.so" "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/")
ENDIF ()
FILE (GLOB PQWPYLIST "@SIP_MOD_DIR@/PyQt${QT_FWVER}/Qwt5/*.py")
FOREACH (PQWPY ${PQWPYLIST})
EXECUTE_PROCESS (COMMAND cp -fp "${PQWPY}" "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/")
ENDFOREACH (PQWPY)
IF (QWT_CHG)
IF (@OSX_HAVE_LOADERPATH@)
SET (QWT_CHG_TO "${ATLOADER}/../../../@QGIS_DATA_SUBDIR_REV@/@QGIS_LIB_SUBDIR@/libqwt.dylib")
ENDIF (@OSX_HAVE_LOADERPATH@)
FOREACH (PW _iqt;Qwt)
INSTALLNAMETOOL_CHANGE ("${QWT_CHG}" "${QWT_CHG_TO}" "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/${PW}.so")
ENDFOREACH (PW)
ENDIF (QWT_CHG)
ENDIF ()
FILE (GLOB PQWPYLIST "@SIP_MOD_DIR@/PyQt${QT_FWVER}/Qwt5/*.py")
FOREACH (PQWPY ${PQWPYLIST})
EXECUTE_PROCESS (COMMAND cp -fp "${PQWPY}" "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/")
ENDFOREACH (PQWPY)
IF (QWT_CHG)
IF (@OSX_HAVE_LOADERPATH@)
SET (QWT_CHG_TO "${ATLOADER}/../../../@QGIS_DATA_SUBDIR_REV@/@QGIS_LIB_SUBDIR@/libqwt.dylib")
ENDIF (@OSX_HAVE_LOADERPATH@)
FOREACH (PW _iqt;Qwt)
INSTALLNAMETOOL_CHANGE (${QWT_CHG} ${QWT_CHG_TO} "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/${PW}.so")
ENDFOREACH (PW)
ENDIF (QWT_CHG)

# don't load plugins from system-installed Qt
FILE (WRITE "${QAPPDIRC}/Resources/qt.conf" "")
FILE (WRITE "${QBINDIR}/qgis_help.app/Contents/Resources/qt.conf" "")
FILE (WRITE "${QBINDIR}/qbrowser.app/Contents/Resources/qt.conf" "")
FOREACH (QA ${QGAPPLIST})
FILE (WRITE "${QBINDIR}/${QA}.app/Contents/Resources/qt.conf" "")
ENDFOREACH (QA)

### update lib paths

Expand All @@ -161,40 +170,42 @@ FOREACH (QFW ${QTLISTQG})
IF (@OSX_HAVE_LOADERPATH@)
SET (QFW_CHG_TO "${ATLOADER}/${QGIS_LIB_SUBDIR_REV}/${QGIS_FW_SUBDIR}/${LIBPOST}")
ENDIF ()
INSTALLNAMETOOL_CHANGE (${QFW_CHG} ${QFW_CHG_TO} "${QLIBDIR}/libqwt.dylib")
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QLIBDIR}/libqwt.dylib")
# qt plugs
IF (@OSX_HAVE_LOADERPATH@)
SET (QFW_CHG_TO "${ATLOADER}/@QGIS_PLUGIN_SUBDIR_REV@/${QGIS_FW_SUBDIR}/${LIBPOST}")
ENDIF ()
INSTALLNAMETOOL_CHANGE (${QFW_CHG} ${QFW_CHG_TO} "${QAPPDIRC}/PlugIns/imageformats/libqjpeg.dylib")
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QPLUGDIR}/../imageformats/libqjpeg.dylib")
FOREACH (QC cn;jp;kr;tw)
INSTALLNAMETOOL_CHANGE (${QFW_CHG} ${QFW_CHG_TO} "${QAPPDIRC}/PlugIns/codecs/libq${QC}codecs.dylib")
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QPLUGDIR}/../codecs/libq${QC}codecs.dylib")
ENDFOREACH (QC)
INSTALLNAMETOOL_CHANGE (${QFW_CHG} ${QFW_CHG_TO} "${QAPPDIRC}/PlugIns/sqldrivers/libqsqlite.dylib")
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QPLUGDIR}/../sqldrivers/libqsqlite.dylib")
# qt fw
IF (@OSX_HAVE_LOADERPATH@)
SET (QFW_CHG_TO "${ATLOADER}/../../../${LIBPOST}")
ENDIF ()
FOREACH (QF ${QTLISTQG})
INSTALLNAMETOOL_CHANGE (${QFW_CHG} ${QFW_CHG_TO} "${QFWDIR}/${QF}.framework/${QF}")
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QFWDIR}/${QF}.framework/${QF}")
ENDFOREACH (QF)
# PyQt
IF (@OSX_HAVE_LOADERPATH@)
SET (QFW_CHG_TO "${ATLOADER}/../../@QGIS_DATA_SUBDIR_REV@/${QGIS_FW_SUBDIR}/${LIBPOST}")
ENDIF ()
FOREACH (PQ ${PYQTLIST})
INSTALLNAMETOOL_CHANGE (${QFW_CHG} ${QFW_CHG_TO} "${QGISPYDIR}/PyQt${QT_FWVER}/${PQ}.so")
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QGISPYDIR}/PyQt${QT_FWVER}/${PQ}.so")
ENDFOREACH (PQ)
# PyQwt
IF (@OSX_HAVE_LOADERPATH@)
SET (QFW_CHG_TO "${ATLOADER}/../../../@QGIS_DATA_SUBDIR_REV@/${QGIS_FW_SUBDIR}/${LIBPOST}")
ENDIF ()
FOREACH (PW _iqt;Qwt)
INSTALLNAMETOOL_CHANGE (${QFW_CHG} ${QFW_CHG_TO} "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/${PW}.so")
IF (EXISTS "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/${PW}.so")
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QGISPYDIR}/PyQt${QT_FWVER}/Qwt5/${PW}.so")
ENDIF ()
ENDFOREACH (PW)
# bin - PyQt utils
SET (QFW_CHG_TO "${ATEXECUTABLE}/@QGIS_BIN_SUBDIR_REV@/${QGIS_FW_SUBDIR}/${LIBPOST}")
FOREACH (PB pylupdate4;pyrcc4)
INSTALLNAMETOOL_CHANGE (${QFW_CHG} ${QFW_CHG_TO} "${QBINDIR}/${PB}")
INSTALLNAMETOOL_CHANGE ("${QFW_CHG}" "${QFW_CHG_TO}" "${QBINDIR}/${PB}")
ENDFOREACH (PB)
ENDFOREACH (QFW)
6 changes: 3 additions & 3 deletions mac/cmake/2lib.cmake.in
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ INCLUDE (@CMAKE_SOURCE_DIR@/cmake/MacBundleMacros.cmake)

# Postgres

IF (@POSTGRES_LIBRARY@ MATCHES ".*libpq.dylib")
IF ("@POSTGRES_LIBRARY@" MATCHES ".*libpq.dylib")
MESSAGE (STATUS "Copying libpq and updating library paths...")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@POSTGRES_LIBRARY@" "${QLIBDIR}/libpq.dylib")
GET_INSTALL_NAME ("@POSTGRES_LIBRARY@" "libpq" PQLIB)
Expand All @@ -28,13 +28,13 @@ IF (@POSTGRES_LIBRARY@ MATCHES ".*libpq.dylib")
IF (@OSX_HAVE_LOADERPATH@)
SET (LIB_CHG_TO "${ATLOADER}/libintl.dylib")
ENDIF (@OSX_HAVE_LOADERPATH@)
INSTALLNAMETOOL_CHANGE (${INTLLIB} ${LIB_CHG_TO} "${QLIBDIR}/libpq.dylib")
INSTALLNAMETOOL_CHANGE ("${INTLLIB}" "${LIB_CHG_TO}" "${QLIBDIR}/libpq.dylib")
ENDIF (INTLLIB)
ENDIF ()

# libfcgi (non-system)

IF (@FCGI_LIBRARY@ MATCHES ".*libfcgi.dylib" AND NOT @FCGI_LIBRARY@ MATCHES "/usr/lib/.*")
IF ("@FCGI_LIBRARY@" MATCHES ".*libfcgi.dylib" AND NOT "@FCGI_LIBRARY@" MATCHES "/usr/lib/.*")
MESSAGE (STATUS "Copying libfcgi and updating library paths...")
EXECUTE_PROCESS (COMMAND ditto ${QARCHS} "@FCGI_LIBRARY@" "${QLIBDIR}/libfcgi.dylib")
GET_INSTALL_NAME ("@FCGI_LIBRARY@" "libfcgi" FCGILIB)
Expand Down
12 changes: 7 additions & 5 deletions ms-windows/osgeo4w/package-nightly.cmd
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@echo off
set GRASS_VERSION=6.4.2RC2
set GRASS_VERSION=6.4.2

set BUILDDIR=%CD%\build
REM set BUILDDIR=%TEMP%\qgis_unstable
Expand Down Expand Up @@ -92,15 +92,17 @@ cmake -G "Visual Studio 9 2008" ^
-D WITH_MAPSERVER=TRUE ^
-D WITH_ASTYLE=TRUE ^
-D WITH_GLOBE=TRUE ^
-D WITH_INTERNAL_SPATIALITE=TRUE ^
-D WITH_INTERNAL_SPATIALITE=FALSE ^
-D WITH_INTERNAL_SPATIALINDEX=FALSE ^
-D CMAKE_BUILD_TYPE=%BUILDCONF% ^
-D CMAKE_CONFIGURATION_TYPES=%BUILDCONF% ^
-D GEOS_LIBRARY=%OSGEO4W_ROOT%/lib/geos_c_i.lib ^
-D SQLITE3_LIBRARY=%OSGEO4W_ROOT%/lib/sqlite3_i.lib ^
-D SPATIALITE_LIBRARY=%OSGEO4W_ROOT%/lib/spatialite_i.lib ^
-D PYTHON_EXECUTABLE=%O4W_ROOT%/bin/python.exe ^
-D PYTHON_INCLUDE_PATH=%O4W_ROOT%/apps/Python25/include ^
-D PYTHON_LIBRARY=%O4W_ROOT%/apps/Python25/libs/python25.lib ^
-D SIP_BINARY_PATH=%O4W_ROOT%/apps/Python25/sip.exe ^
-D PYTHON_INCLUDE_PATH=%O4W_ROOT%/apps/Python27/include ^
-D PYTHON_LIBRARY=%O4W_ROOT%/apps/Python27/libs/python27.lib ^
-D SIP_BINARY_PATH=%O4W_ROOT%/apps/Python27/sip.exe ^
-D GRASS_PREFIX=%O4W_ROOT%/apps/grass/grass-%GRASS_VERSION% ^
-D QT_BINARY_DIR=%O4W_ROOT%/bin ^
-D QT_LIBRARY_DIR=%O4W_ROOT%/lib ^
Expand Down
12 changes: 7 additions & 5 deletions ms-windows/osgeo4w/package.cmd
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
@echo off
set GRASS_VERSION=6.4.2RC2
set GRASS_VERSION=6.4.2

set BUILDDIR=%CD%\build
REM set BUILDDIR=%TEMP%\qgis_unstable
Expand Down Expand Up @@ -90,15 +90,17 @@ cmake -G "Visual Studio 9 2008" ^
-D WITH_SPATIALITE=TRUE ^
-D WITH_MAPSERVER=TRUE ^
-D WITH_GLOBE=TRUE ^
-D WITH_INTERNAL_SPATIALITE=TRUE ^
-D WITH_INTERNAL_SPATIALITE=FALSE ^
-D WITH_INTERNAL_SPATIALINDEX=FALSE ^
-D CMAKE_BUILD_TYPE=%BUILDCONF% ^
-D CMAKE_CONFIGURATION_TYPES=%BUILDCONF% ^
-D GEOS_LIBRARY=%OSGEO4W_ROOT%/lib/geos_c_i.lib ^
-D SQLITE3_LIBRARY=%OSGEO4W_ROOT%/lib/sqlite3_i.lib ^
-D SPATIALITE_LIBRARY=%OSGEO4W_ROOT%/lib/spatialite_i.lib ^
-D PYTHON_EXECUTABLE=%O4W_ROOT%/bin/python.exe ^
-D PYTHON_INCLUDE_PATH=%O4W_ROOT%/apps/Python25/include ^
-D PYTHON_LIBRARY=%O4W_ROOT%/apps/Python25/libs/python25.lib ^
-D SIP_BINARY_PATH=%O4W_ROOT%/apps/Python25/sip.exe ^
-D PYTHON_INCLUDE_PATH=%O4W_ROOT%/apps/Python27/include ^
-D PYTHON_LIBRARY=%O4W_ROOT%/apps/Python27/libs/python27.lib ^
-D SIP_BINARY_PATH=%O4W_ROOT%/apps/Python27/sip.exe ^
-D GRASS_PREFIX=%O4W_ROOT%/apps/grass/grass-%GRASS_VERSION% ^
-D QT_BINARY_DIR=%O4W_ROOT%/bin ^
-D QT_LIBRARY_DIR=%O4W_ROOT%/lib ^
Expand Down
1 change: 0 additions & 1 deletion ms-windows/osgeo4w/qgis.bat.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,5 @@ SET OSGEO4W_ROOT=@osgeo4w@
call "%OSGEO4W_ROOT%"\bin\o4w_env.bat
call "%OSGEO4W_ROOT%"\apps\grass\grass-@grassversion@\etc\env.bat
@echo off
SET GDAL_DRIVER_PATH=%OSGEO4W_ROOT%\bin\gdalplugins\1.8
path %PATH%;%OSGEO4W_ROOT%\apps\@package@\bin;%OSGEO4W_ROOT%\apps\grass\grass-@grassversion@\lib
start "Quantum GIS" /B "%OSGEO4W_ROOT%"\apps\@package@\bin\qgis.exe %*
1 change: 1 addition & 0 deletions ms-windows/python_plugins.nsh
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@

WriteRegStr HKEY_CURRENT_USER "Software\QuantumGIS\QGIS\PythonPlugins" "plugin_installer" "true"
WriteRegStr HKEY_CURRENT_USER "Software\QuantumGIS\QGIS\PythonPlugins" "fTools" "true"
WriteRegStr HKEY_CURRENT_USER "Software\QuantumGIS\QGIS\PythonPlugins" "GdalTools" "true"
WriteRegStr HKEY_CURRENT_USER "Software\QuantumGIS\QGIS\PythonPlugins" "mapserver_export" "true"

############################### reg2nsis end #################################
13 changes: 10 additions & 3 deletions python/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,17 @@ ADD_SUBDIRECTORY(plugins)
SET (PYTHON_OUTPUT_DIRECTORY ${QGIS_OUTPUT_DIRECTORY}/python)
SET (QGIS_PYTHON_OUTPUT_DIRECTORY ${PYTHON_OUTPUT_DIRECTORY}/qgis)

IF (WITH_INTERNAL_SPATIALITE)
IF (WITH_PYSPATIALITE)
ADD_SUBDIRECTORY(pyspatialite)
ENDIF (WITH_PYSPATIALITE)

IF (WITH_INTERNAL_SPATIALITE)
INCLUDE_DIRECTORIES(
../src/core/spatialite/headers
../src/core/spatialite/headers/spatialite
)
ENDIF (WITH_INTERNAL_SPATIALITE)


SET (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${QGIS_PYTHON_OUTPUT_DIRECTORY})
SET (CMAKE_LIBRARY_OUTPUT_DIRECTORY ${QGIS_PYTHON_OUTPUT_DIRECTORY})

Expand All @@ -29,6 +30,8 @@ INCLUDE_DIRECTORIES(

../src/core
../src/core/composer
../src/core/gps
../src/core/gps/qextserialport
../src/core/raster
../src/core/renderer
../src/core/spatialindex
Expand Down Expand Up @@ -60,6 +63,7 @@ ENDIF(NOT PYQT4_VERSION_NUM LESS 264194)
# core module
FILE(GLOB sip_files_core core/*.sip)
SET(SIP_EXTRA_FILES_DEPEND ${sip_files_core})
SET(SIP_EXTRA_OPTIONS ${PYQT4_SIP_FLAGS} -o -a ${CMAKE_BINARY_DIR}/python/qgis.core.api)
ADD_SIP_PYTHON_MODULE(qgis.core core/core.sip qgis_core)

# additional gui includes
Expand All @@ -74,6 +78,7 @@ INCLUDE_DIRECTORIES(
# gui module
FILE(GLOB sip_files_gui gui/*.sip)
SET(SIP_EXTRA_FILES_DEPEND ${sip_files_core} ${sip_files_gui})
SET(SIP_EXTRA_OPTIONS ${PYQT4_SIP_FLAGS} -o -a ${CMAKE_BINARY_DIR}/python/qgis.gui.api)
ADD_SIP_PYTHON_MODULE(qgis.gui gui/gui.sip qgis_core qgis_gui)

# additional analysis includes
Expand All @@ -87,11 +92,13 @@ INCLUDE_DIRECTORIES(
# analysis module
FILE(GLOB sip_files_analysis analysis/*.sip)
SET(SIP_EXTRA_FILES_DEPEND ${sip_files_core} ${sip_files_analysis})
SET(SIP_EXTRA_OPTIONS ${PYQT4_SIP_FLAGS} -o -a ${CMAKE_BINARY_DIR}/python/qgis.analysis.api)
ADD_SIP_PYTHON_MODULE(qgis.analysis analysis/analysis.sip qgis_core qgis_analysis)

# network-analysis module
FILE(GLOB sip_files_network_analysis analysis/network/*.sip)
SET(SIP_EXTRA_FILES_DEPEND ${sip_files_core} ${sip_files_network_analysis})
SET(SIP_EXTRA_FILES_DEPEND ${sip_files_core} ${sip_files_network_analysis})
SET(SIP_EXTRA_OPTIONS ${PYQT4_SIP_FLAGS} -o -a ${CMAKE_BINARY_DIR}/python/qgis.networkanalysis.api)
ADD_SIP_PYTHON_MODULE(qgis.networkanalysis analysis/network/networkanalysis.sip qgis_core qgis_networkanalysis)

SET (QGIS_PYTHON_DIR ${PYTHON_SITE_PACKAGES_DIR}/qgis)
Expand Down
1 change: 0 additions & 1 deletion python/analysis/analysis.sip
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

%Module qgis.analysis 0

%Import QtCore/QtCoremod.sip
Expand Down
40 changes: 34 additions & 6 deletions python/analysis/network/qgsgraphanalyzer.sip
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,45 @@ class QgsGraphAnalyzer
%TypeHeaderCode
#include <qgsgraphanalyzer.h>
%End

public:
/**
* solve shortest path problem using dijkstra algorithm
* @param source The source graph
* @param startVertexIdx index of start vertex
* @param criterionNum index of edge property as optimization criterion
* @param destPointCost array of vertex indexes. Function calculating shortest path costs for vertices with these indexes
* @param cost array of cost paths
* @param treeResult return shortest path tree
* @param criterionNum index of arc property as optimization criterion
* @param treeResult array represents the shortest path tree. resultTree[ vertexIndex ] == inboundingArcIndex if vertex reacheble and resultTree[ vertexIndex ] == -1 others.
* @param resultCost array of cost paths
*/
// static void shortestpath( const QgsGraph* source, int startVertexIdx, int criterionNum, const QVector<int>& destPointCost, QVector<double>& cost, QgsGraph* treeResult );
static SIP_PYLIST dijkstra( const QgsGraph* source, int startVertexIdx, int criterionNum );
%MethodCode
QVector< int > treeResult;
QVector< double > costResult;
QgsGraphAnalyzer::dijkstra( a0, a1, a2, &treeResult, &costResult );

PyObject *l1 = PyList_New( treeResult.size() );
if ( l1 == NULL )
{
return NULL;
}
PyObject *l2 = PyList_New( costResult.size() );
if ( l2 == NULL )
{
return NULL;
}
int i;
for ( i = 0; i < costResult.size(); ++i )
{
PyObject *Int = PyInt_FromLong( treeResult[i] );
PyList_SET_ITEM( l1, i, Int );
PyObject *Float = PyFloat_FromDouble( costResult[i] );
PyList_SET_ITEM( l2, i, Float );
}

sipRes = PyTuple_New( 2 );
PyTuple_SET_ITEM( sipRes, 0, l1 );
PyTuple_SET_ITEM( sipRes, 1, l2 );
%End

/**
* return shortest path tree with root-node in startVertexIdx
Expand All @@ -25,3 +52,4 @@ class QgsGraphAnalyzer
static QgsGraph* shortestTree( const QgsGraph* source, int startVertexIdx, int criterionNum );
};


26 changes: 26 additions & 0 deletions python/analysis/qgsgeometryanalyzer.sip
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,32 @@ class QgsGeometryAnalyzer
bool onlySelectedFeatures = false,
int uniqueIdField = -1 );

/**Creates an event layer (multipoint or multiline) by locating features from a (non-spatial) event table along the features of a line layer.
Note that currently (until QgsGeometry supports m-values) the z-coordinate of the line layer is used for linear referencing
@param lineLayer layer with the line geometry
@param eventLayer layer with features and location field
@param lineField join index in line layer
@param eventField join index in event layer
@param outputLayer name of output file (can be empty if a memory layer is used)
@param outputFormat name of output format (can be empty if a memory provider is used to store the results)
@param unlocatedFeatureIds out: ids of event features where linear referencing was not successful
@param locationField1 attribute index of location field in event layer
@param locationField2 attribute index of location end field (or -1 for point layer)
@param offsetField attribute index for offset field. Negative offset value = offset to left side, positive value = offset to right side
@param offsetScale factor to scale offset
@param forceSingleGeometry force layer to single point/line type. Feature attributes are copied in case of multiple matches
@param memoryProvider memory provider to write output to (can be 0 if output is written to a file)
@param p progress dialog or 0 if no progress dialog should be shown
*/
bool eventLayer( QgsVectorLayer* lineLayer, QgsVectorLayer* eventLayer, int lineField, int eventField, QList<int>& unlocatedFeatureIds /Out/,
const QString& outputLayer, const QString& outputFormat, int locationField1, int locationField2 = -1, int offsetField = -1, double offsetScale = 1.0,
bool forceSingleGeometry = false, QgsVectorDataProvider* memoryProvider = 0, QProgressDialog* p = 0 );

/**Returns multilinestring*/
QgsGeometry* locateBetweenMeasures( double fromMeasure, double toMeasure, QgsGeometry* lineGeom );
/**Returns multipoint*/
QgsGeometry* locateAlongMeasure( double measure, QgsGeometry* lineGeom );

private:

QList<double> simpleMeasure( QgsGeometry* geometry );
Expand Down
108 changes: 104 additions & 4 deletions python/core/conversions.sip
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ which are not wrapped by PyQt:
- QMap<double, TYPE>
- QMultiMap<double, TYPE2>
- QMap<qint64, QgsGeometry>
- QMap<qint64, QgsOverlayObject*>*
- QMap<qint64, QgsOverlayObject*>
*/

%Feature QSETINT_CONVERSION
Expand Down Expand Up @@ -681,9 +681,6 @@ template<TYPE>
Py_ssize_t i = 0;
while (PyDict_Next(sipPy, &i, &kobj, &tobj))
{
if (!PyDict_Check(tobj))
return 0;

if (!sipCanConvertToInstance(tobj, sipClass_QgsGeometry, SIP_NOT_NONE))
return 0;
}
Expand Down Expand Up @@ -820,6 +817,109 @@ template<TYPE>
%End
};

%MappedType QMap<QString, int>
{
%TypeHeaderCode
#include <QMap>
#if (SIP_VERSION >= 0x040900)
#define sipClass_QString ((sipWrapperType *) sipTypeAsPyTypeObject (sipType_QString))
#endif
%End

%ConvertFromTypeCode
// Create the dictionary.
PyObject *d = PyDict_New();

if (!d)
return NULL;

// Set the dictionary elements.
QMap<QString, int>::const_iterator i = sipCpp->constBegin();

while (i != sipCpp->constEnd())
{
QString *t1 = new QString(i.key());

PyObject *t1obj = sipConvertFromNewInstance(t1, sipClass_QString, sipTransferObj);
PyObject *t2obj = PyInt_FromLong( (long) i.value() );

if (t1obj == NULL || t2obj == NULL || PyDict_SetItem(d, t1obj, t2obj) < 0)
{
Py_DECREF(d);

if (t1obj) {
Py_DECREF(t1obj);
} else {
delete t1;
}

if (t2obj) {
Py_DECREF(t2obj);
}

return NULL;
}

Py_DECREF(t1obj);
Py_DECREF(t2obj);

++i;
}

return d;
%End

%ConvertToTypeCode
PyObject *t1obj, *t2obj;
#if PY_VERSION_HEX >= 0x02050000
Py_ssize_t i = 0;
#else
int i = 0;
#endif


// Check the type if that is all that is required.
if (sipIsErr == NULL)
{
if (!PyDict_Check(sipPy))
return 0;

while (PyDict_Next(sipPy, &i, &t1obj, &t2obj))
{
if (!sipCanConvertToInstance(t1obj, sipClass_QString, SIP_NOT_NONE))
return 0;
}

return 1;
}

QMap<QString, int> *qm = new QMap<QString, int>;

while (PyDict_Next(sipPy, &i, &t1obj, &t2obj))
{
int state;

QString *t1 = reinterpret_cast<QString *>(sipConvertToInstance(t1obj, sipClass_QString, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
int t2 = PyInt_AsLong(t1obj);

if (*sipIsErr)
{
sipReleaseInstance(t1, sipClass_QString, state);
delete qm;
return 0;
}

qm->insert(*t1, t2);

sipReleaseInstance(t1, sipClass_QString, state);
}

*sipCppPtr = qm;

return sipGetState(sipTransferObj);
%End
};

template<TYPE1, TYPE2>
%MappedType QMap<TYPE1, TYPE2*>
{
Expand Down
8 changes: 7 additions & 1 deletion python/core/core.sip
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

%Module qgis.core 0

%Import QtCore/QtCoremod.sip
Expand All @@ -7,6 +6,7 @@
%Import QtNetwork/QtNetworkmod.sip

%Include conversions.sip
%Include qgsexception.sip

// TODO: more files to wrap

Expand Down Expand Up @@ -92,3 +92,9 @@
%Include qgsnetworkaccessmanager.sip

%Include symbology-ng-core.sip

%Include qgsgpsconnection.sip
%Include qgsgpsconnectionregistry.sip
%Include qgsgpsdconnection.sip
%Include qgsnmeaconnection.sip
%Include qgsgpsdetector.sip
Loading