From f5a8de28b86c2c838a28e79aa54f8b4c3fbd869e Mon Sep 17 00:00:00 2001 From: root Date: Thu, 31 May 2012 16:24:59 +0000 Subject: Thu May 31 16:24:59 UTC 2012 --- gis/grass/PKGBUILD | 119 +++++++++++++++++++++++++++++++++++++++ gis/grass/grass.conf | 1 + gis/grass/grass.install | 26 +++++++++ gis/grass/grass.sh | 4 ++ gis/merkaartor/PKGBUILD | 38 +++++++++++++ gis/merkaartor/install | 12 ++++ gis/qgis/PKGBUILD | 70 +++++++++++++++++++++++ gis/qgis/qgis.desktop | 10 ++++ gis/qgis/qgis_1.7.4_gcc4.7.patch | 20 +++++++ gis/qwt5/PKGBUILD | 47 ++++++++++++++++ gis/qwt5/qwtconfig-archlinux.pri | 85 ++++++++++++++++++++++++++++ 11 files changed, 432 insertions(+) create mode 100644 gis/grass/PKGBUILD create mode 100644 gis/grass/grass.conf create mode 100644 gis/grass/grass.install create mode 100644 gis/grass/grass.sh create mode 100644 gis/merkaartor/PKGBUILD create mode 100644 gis/merkaartor/install create mode 100644 gis/qgis/PKGBUILD create mode 100644 gis/qgis/qgis.desktop create mode 100644 gis/qgis/qgis_1.7.4_gcc4.7.patch create mode 100644 gis/qwt5/PKGBUILD create mode 100644 gis/qwt5/qwtconfig-archlinux.pri (limited to 'gis') diff --git a/gis/grass/PKGBUILD b/gis/grass/PKGBUILD new file mode 100644 index 000000000..eaf1dfc5c --- /dev/null +++ b/gis/grass/PKGBUILD @@ -0,0 +1,119 @@ +# Maintainer: Thomas Dziedzic < gostrc at gmail > +# Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org +# Contributor: Emiliano Vavassori + +pkgname=grass +pkgver=6.4.2 +pkgrel=2 +pkgdesc='Geographic Information System (GIS) used for geospatial data management and analysis, image processing, graphics/maps production, spatial modeling, and visualization.' +arch=('i686' 'x86_64') +url='http://grass.fbk.eu/' +license=('GPL') +depends=('cfitsio' 'fftw' 'gdal' 'libjpeg' 'libpng' 'libtiff' 'libxmu' 'mesa' 'python2' 'postgresql' 'proj' 'tcl' 'tk' 'wxpython' 'xorg-server') +makedepends=('freetype2') +optdepends=('sqlite3: sqlite3 database interface' + 'mysql: mysql database interface' + 'r: R language interface' + 'blas: required for GMATH library' + 'lapack: required for GMATH library' + 'cairo: cairo support' + 'ffmpeg: ffmpeg support' + 'lesstif: motif support') +options=('!libtool' '!makeflags') +install='grass.install' +source=("http://grass.fbk.eu/grass64/source/${pkgname}-${pkgver}.tar.gz" + "grass.sh" + "grass.conf") +md5sums=('d3398d6b1e3a2ef19cfb6e39a5ae9919' + 'a0e0ac6275e09a272f8ec38d3c0b4b3a' + '6103480c2a1adc19a50b9e925e5e6d4c') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + # python2 fix + sed -i 's_python $< $(GISBASE) > $@_python2 $< $(GISBASE) > $@_' gui/wxpython/Makefile + for file in $(find . -name '*.py' -print); do + sed -i 's_^#!.*/usr/bin/python_#!/usr/bin/python2_' $file + sed -i 's_^#!.*/usr/bin/env.*python_#!/usr/bin/env python2_' $file + done + + # the following exports are probably not needed + export PYTHON=python2 + export DOXNAME=python2 + export GRASS_python=python2 + + # fix wxpython error + sed -i 's/python/&2/' ./include/Make/Platform.make.in + + # see ${srcdir}/grass-6.4.0/REQUIREMENTS.html for options + ./configure \ + --prefix=/opt \ + --with-fftw \ + --with-postgres \ + --with-freetype \ + --with-freetype-includes=/usr/include/freetype2 \ + --with-nls \ + --with-gdal \ + --with-geos \ + --with-proj \ + --with-proj-share=/usr/share/proj \ + --with-python=/usr/bin/python2-config \ + --with-wxwidgets=/usr/bin/wx-config + + # sqlite3 support + # --with-sqlite \ + + # mysql support + # --with-mysql \ + # --with-mysql-includes=/usr/include/mysql \ + + # blas support + # --with-blas \ + + # lapack support + # --with-lapack \ + + make + + # some more potential problems nvm, works without, but save for future use if problems arrise + #cd ${pkgdir}/opt/grass-${pkgver} + #sed -i 's/PYTHON = python/PYTHON = python2/' include/Make/Python.make + #sed -i 's/GRASS_PYTHON=python/GRASS_PYTHON=python2/' etc/Init.sh +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make \ + INST_DIR=${pkgdir}/opt/grass-${pkgver} \ + BINDIR=${pkgdir}/usr/bin \ + install + + # fix $GISBASE path + sed -i "s|GISBASE=${pkgdir}/opt/grass-${pkgver}|GISBASE=/opt/grass-${pkgver}|g" \ + ${pkgdir}/usr/bin/grass64 + + # install profile.d file + install -D ${srcdir}/grass.sh \ + ${pkgdir}/etc/profile.d/grass.sh + + # install some freedesktop.org compatibility + install -D -m644 gui/icons/grass.desktop \ + ${pkgdir}/usr/share/applications/grass.desktop + + sed -i -e 's/grass65/grass64/' -e 's_/usr/share/icons_/usr/share/pixmaps_' \ + ${pkgdir}/usr/share/applications/grass.desktop + + install -D -m644 gui/icons/grass-48x48.png \ + ${pkgdir}/usr/share/pixmaps/grass-48x48.png + + install -D -m644 ${srcdir}/grass.conf \ + ${pkgdir}/etc/ld.so.conf.d/grass.conf + + # install g.html2man which is needed for some extensions + # FS#25705 - [grass] g.html2man is not installed into package directory + # https://bugs.archlinux.org/task/25705 + # most likely upstream problem which will be fixed in a version later than 6.4.1 + cp -r ./tools/g.html2man ${pkgdir}/opt/${pkgname}-${pkgver}/tools +} diff --git a/gis/grass/grass.conf b/gis/grass/grass.conf new file mode 100644 index 000000000..bb4964d93 --- /dev/null +++ b/gis/grass/grass.conf @@ -0,0 +1 @@ +/opt/grass/lib diff --git a/gis/grass/grass.install b/gis/grass/grass.install new file mode 100644 index 000000000..878ea0186 --- /dev/null +++ b/gis/grass/grass.install @@ -0,0 +1,26 @@ +## arg 1: the new package version +post_install() { + pkgver=${1%-*} + + # Create symlink for version workaround. + ln -sf /opt/grass-${pkgver} /opt/grass + + echo 'Please relogin for required variables to be set from /etc/profile.d/grass.sh' +} + +## arg 1: the new package version +## arg 2: the old package version +post_upgrade() { + pkgver=${1%-*} + + # Updating symlink for new version + ln -sf /opt/grass-${pkgver} /opt/grass +} + +## arg 1: the old package version +pre_remove() { + # Removing cruft symlink + rm -f /opt/grass +} + +# vim:set ts=2 sw=2 et: diff --git a/gis/grass/grass.sh b/gis/grass/grass.sh new file mode 100644 index 000000000..ccc2fcd7e --- /dev/null +++ b/gis/grass/grass.sh @@ -0,0 +1,4 @@ +export GISBASE=/opt/grass +export PATH=$PATH:$GISBASE/bin +export MANPATH=$MANPATH:$GISBASE/man +export GRASS_PYTHON=python2 diff --git a/gis/merkaartor/PKGBUILD b/gis/merkaartor/PKGBUILD new file mode 100644 index 000000000..333bc15fb --- /dev/null +++ b/gis/merkaartor/PKGBUILD @@ -0,0 +1,38 @@ +# Maintainer: Gaetan Bisson +# Contributor: Michael Kanis +# Contributor: Paulo Freire +# Contributor: Brice Maron + +pkgname=merkaartor +pkgver=0.17.2 +pkgrel=3 +pkgdesc='OpenStreetMap editor' +url='http://merkaartor.be/' +arch=('i686' 'x86_64') +license=('GPL2') +makedepends=('boost') +depends=('qtwebkit' 'exiv2') +optdepends=('gpsd' 'desktop-file-utils' 'gtk-update-icon-cache') +source=("http://www.merkaartor.be/attachments/download/253/merkaartor-${pkgver}.tar.bz2") +sha1sums=('f789141db427bf25bb3b61801fefc98ab0430012') + +install=install + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + echo 'QMAKE_MOC = $$QMAKE_MOC -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED' >> src/src.pro + lrelease src/src.pro + qmake Merkaartor.pro \ + PREFIX="/usr" \ + GEOIMAGE=1 \ + NODEBUG=1 \ + RELEASE=1 \ + + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make INSTALL_ROOT="${pkgdir}" install +} diff --git a/gis/merkaartor/install b/gis/merkaartor/install new file mode 100644 index 000000000..af0c8724a --- /dev/null +++ b/gis/merkaartor/install @@ -0,0 +1,12 @@ +post_install() { + update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/gis/qgis/PKGBUILD b/gis/qgis/PKGBUILD new file mode 100644 index 000000000..7c348fd1e --- /dev/null +++ b/gis/qgis/PKGBUILD @@ -0,0 +1,70 @@ +# Maintainer: Lantald < lantald at gmx.com +# Contributor: Thomas Dziedzic < gostrc at gmail > +# Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org +# Contributor: Gerardo Exequiel Pozzi +# Contributor: Eric Forgeot < http://esclinux.tk > + +pkgname=qgis +pkgver=1.7.4 +pkgrel=4 +pkgdesc='Quantum GIS is a Geographic Information System (GIS) that supports vector, raster & database formats' +url='http://qgis.org/' +license=('GPL') +arch=('i686' 'x86_64') +# update to http://www.qgis.org/wiki/Building_QGIS_from_Source#Overview +depends=('libmysqlclient' 'postgresql-libs' 'sqlite3' 'jasper' 'curl' 'qt' 'python2' 'python2-qt' 'giflib' 'xerces-c' 'cfitsio' 'qwt5' 'gdal' 'flex' 'bison') +makedepends=('cmake' 'grass' 'gsl' 'postgis' 'netcdf' 'fcgi' 'python2-sip' 'txt2tags') +optdepends=('postgis: postgis support and SPIT plugin' + 'fcgi: qgis mapserver' + 'python2-sip: python-support' + 'grass: grass plugin' + 'gsl: georeferencer ') +options=('!makeflags') +source=("http://qgis.org/downloads/qgis-${pkgver}.tar.bz2" + 'qgis.desktop' + 'qgis_1.7.4_gcc4.7.patch') + +md5sums=('ad6e2bd8c5eb0c486939c420af5d8c44' + '8ab66039f2aba519b92f52272ec3c13e' + '0a978eac520b3df8736603074b1072b0') + +build() { + # Fix insecure RPATH is weird, but just works ;) + # echo "os.system(\"sed -i '/^LFLAGS/s|-Wl,-rpath,.\+ ||g' gui/Makefile core/Makefile\")" >> python/configure.py.in + #cd qgis-${pkgver} + + #apply patch to be able to build qgis with GCC 4.7 + patch -p0 < ${srcdir}/qgis_1.7.4_gcc4.7.patch + + rm -rf build + mkdir build + cd build + + cmake ../qgis-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DGRASS_PREFIX=/opt/grass \ + -DQGIS_MANUAL_SUBDIR=share/man \ + -DQWT_INCLUDE_DIR=/usr/include/qwt5 \ + -DQWT_LIBRARY=/usr/lib/libqwt5.so \ + -DPYTHON_LIBRARY=/usr/lib/libpython2.7.so \ + -DPYTHON_EXECUTABLE=/usr/bin/python2 \ + -DPYTHON_SITE_PACKAGES_DIR=/usr/lib/python2.7/site-packages \ + -DPYTHON_INCLUDE_PATH=/usr/include/python2.7/ + + make +} + +package() { + cd build + + make DESTDIR=${pkgdir} install + + # create a more user-friendly application name link + ln -s /usr/bin/qgis $pkgdir/usr/bin/quantum-gis + + # install some freedesktop.org compatibility + install -D -m644 ${srcdir}/qgis.desktop \ + ${pkgdir}/usr/share/applications/qgis.desktop +} diff --git a/gis/qgis/qgis.desktop b/gis/qgis/qgis.desktop new file mode 100644 index 000000000..c3db5ad08 --- /dev/null +++ b/gis/qgis/qgis.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Name=Quantum GIS +GenericName="GIS" +Comment="Geographic Information System (GIS) that supports vector, raster & database formats" +Exec=/usr/bin/qgis +Icon=/usr/share/qgis/images/icons/qgis-icon.png +Terminal=false +MultipleArgs=false +Type=Application +Categories=Application;Science diff --git a/gis/qgis/qgis_1.7.4_gcc4.7.patch b/gis/qgis/qgis_1.7.4_gcc4.7.patch new file mode 100644 index 000000000..858a42c94 --- /dev/null +++ b/gis/qgis/qgis_1.7.4_gcc4.7.patch @@ -0,0 +1,20 @@ ++++ qgis-1.7.4/src/core/spatialindex/storagemanager/DiskStorageManager.cc 2012-04-21 13:58:04.107239275 +0300 +@@ -26,6 +26,7 @@ + #include + #include + #include ++#include + + #ifdef WIN32 + #include + ++++ qgis-1.7.4/src/core/spatialindex/tools/TemporaryFile.cc 2012-04-21 13:16:42.213690282 +0300 +@@ -20,7 +20,7 @@ + // mhadji@gmail.com + + #include +- ++#include + #include + + #ifdef WIN32 diff --git a/gis/qwt5/PKGBUILD b/gis/qwt5/PKGBUILD new file mode 100644 index 000000000..f998a0765 --- /dev/null +++ b/gis/qwt5/PKGBUILD @@ -0,0 +1,47 @@ +# Maintainer: Eugen Zagorodniy +# Contributor: Ronald van Haren + +pkgname=qwt5 +pkgver=5.2.2 +pkgrel=1 +pkgdesc="Qt Widgets for Technical Applications (version 5.X)" +arch=('i686' 'x86_64') +url="http://qwt.sourceforge.net/" +depends=('qt>=4.5.1') +options=('!makeflags') +license=("custom:$pkgname") +provides=('qwt') +source=("http://downloads.sourceforge.net/sourceforge/qwt/qwt-$pkgver.tar.bz2" \ + "qwtconfig-archlinux.pri") +md5sums=('70d77e4008a6cc86763737f0f24726ca' + '15db52c3312b5f8f7cbbdabc4831591b') +build() { + cd ${srcdir}/qwt-${pkgver} + + # copy our config file to the right place + install -Dm644 ${srcdir}/qwtconfig-archlinux.pri \ + ${srcdir}/qwt-${pkgver}/qwtconfig.pri + + # build qwt: + qmake qwt.pro + make || return 1 +} + +package() { + cd ${srcdir}/qwt-${pkgver} + + make INSTALL_ROOT=${pkgdir} QTDIR=/usr install + + # rename conlicting symlink + mv ${pkgdir}/usr/lib/libqwt.so ${pkgdir}/usr/lib/libqwt5.so + + # move html docs to propee place and move man pages to avoid conflict + # with qwt from [extra] + install -d ${pkgdir}/usr/share/doc/${pkgname} + mv ${pkgdir}/usr/share/html ${pkgdir}/usr/share/doc/${pkgname}/ + mv ${pkgdir}/usr/share/man ${pkgdir}/usr/share/doc/${pkgname}/ + + # install licence + install -Dm644 ${srcdir}/qwt-${pkgver}/COPYING \ + ${pkgdir}/usr/share/licenses/${pkgname}/license.txt +} diff --git a/gis/qwt5/qwtconfig-archlinux.pri b/gis/qwt5/qwtconfig-archlinux.pri new file mode 100644 index 000000000..045e53275 --- /dev/null +++ b/gis/qwt5/qwtconfig-archlinux.pri @@ -0,0 +1,85 @@ +###################################################################### +# Install paths +###################################################################### + +unix { + INSTALLBASE = /usr +} + +win32 { + INSTALLBASE = C:/Qwt +} + +target.path = $$INSTALLBASE/lib +headers.path = $$INSTALLBASE/include/qwt5 +doc.path = $$INSTALLBASE/share + +###################################################################### +# qmake internal options +###################################################################### + +CONFIG += qt # Also for Qtopia Core! +CONFIG += warn_on +CONFIG += thread + +###################################################################### +# release/debug mode +# The designer plugin is always built in release mode. +# If want to change this, you have to edit designer/designer.pro. +###################################################################### + +CONFIG += release # release/debug + +###################################################################### +# Build the static/shared libraries. +# If QwtDll is enabled, a shared library is built, otherwise +# it will be a static library. +###################################################################### + +CONFIG += QwtDll + +###################################################################### +# QwtPlot enables all classes, that are needed to use the QwtPlot +# widget. +###################################################################### + +CONFIG += QwtPlot + +###################################################################### +# QwtWidgets enables all classes, that are needed to use the all other +# widgets (sliders, dials, ...), beside QwtPlot. +###################################################################### + +CONFIG += QwtWidgets + +###################################################################### +# If you want to display svg images on the plot canvas, enable the +# line below. Note that Qwt needs the svg+xml, when enabling +# QwtSVGItem. +###################################################################### + +CONFIG += QwtSVGItem + +###################################################################### +# If you have a commercial license you can use the MathML renderer +# of the Qt solutions package to enable MathML support in Qwt. +# So if you want this, copy qtmmlwidget.h + qtmmlwidget.cpp to +# textengines/mathml and enable the line below. +###################################################################### + +#CONFIG += QwtMathML + +###################################################################### +# If you want to build the Qwt designer plugin, +# enable the line below. +# Otherwise you have to build it from the designer directory. +###################################################################### + +CONFIG += QwtDesigner + +###################################################################### +# If you want to auto build the examples, enable the line below +# Otherwise you have to build them from the examples directory. +###################################################################### + +#CONFIG += QwtExamples -- cgit v1.2.3-54-g00ecf