Changeset 99886 for trunk/dports/gis


Ignore:
Timestamp:
Nov 20, 2012, 7:36:52 PM (7 years ago)
Author:
vince@…
Message:

Corrects checks for postgresql 9.2 and convert to standard spaces.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/dports/gis/qgis/Portfile

    r99816 r99886  
    22# $Id$
    33
    4 PortSystem                      1.0
    5 PortGroup                       cmake   1.0
     4PortSystem          1.0
     5PortGroup           cmake   1.0
    66PortGroup           qt4     1.0
    77
    8 name                            qgis
    9 version                         1.8.0
    10 categories                      gis
    11 maintainers                     vince
    12 description                     QGIS is a user-friendly GIS based on Qt 4
    13 long_description        QGIS is a GIS. It can visualize, inject data into \
    14                                         PostGres/PostGIS, or serve as a Qt front-end to Grass. \
    15                                         Extended with Python plugins, it can become a quite \
    16                                         powerful GIS on its own.
    17 
    18 platforms                       darwin
    19 license                         GPL
    20 
    21 use_parallel_build      no
    22 homepage                        http://www.qgis.org/
    23 
    24 distname                        ${name}-${version}
    25 master_sites            http://qgis.org/downloads/
    26 use_bzip2                       yes
     8name                qgis
     9version             1.8.0
     10categories          gis
     11maintainers         vince
     12description         QGIS is a user-friendly GIS based on Qt 4
     13long_description    QGIS is a GIS. It can visualize, inject data into \
     14                    PostGres/PostGIS, or serve as a Qt front-end to \
     15                    Grass. Extended with Python plugins, it can become \
     16                    a quite powerful GIS on its own.
     17
     18platforms           darwin
     19license             GPL
     20
     21use_parallel_build  no
     22homepage            http://www.qgis.org/
     23
     24distname            ${name}-${version}
     25master_sites        http://qgis.org/downloads/
     26use_bzip2           yes
    2727
    2828checksums           md5     1d60520f81d7763c026d0af887ac9a05 \
     
    3030                    rmd160  93138574da56fee232ba006d8d8943e16a2a9959
    3131
    32 worksrcdir                      ${name}-${version}
    33 
    34 patchfiles                      patch-conversions_sip.diff \
    35                                         patch-CMakeLists_txt.diff
    36 
    37 depends_lib-append      port:libiconv \
    38                                         port:expat \
    39                                         port:openssl \
    40                                         port:proj \
    41                                         port:geos \
    42                                         port:gdal \
    43                                         port:sqlite3 \
    44                                         port:gsl \
    45                                         port:qwt52 \
    46                                         port:fcgi \
    47                                         port:spatialindex
    48 
    49 depends_build-append    port:bison \
    50                                                 port:ld64
     32worksrcdir          ${name}-${version}
     33
     34patchfiles          patch-conversions_sip.diff \
     35                    patch-CMakeLists_txt.diff
     36
     37depends_lib-append  port:libiconv \
     38                    port:expat \
     39                    port:openssl \
     40                    port:proj \
     41                    port:geos \
     42                    port:gdal \
     43                    port:sqlite3 \
     44                    port:gsl \
     45                    port:qwt52 \
     46                    port:fcgi \
     47                    port:spatialindex
     48
     49depends_build-append    port:bison \
     50                        port:ld64
    5151
    5252post-extract {
    53         system "cd ${worksrcpath} && mkdir build && mkdir Python.framework"
     53    system "cd ${worksrcpath} && mkdir build && mkdir Python.framework"
    5454}
    5555
     
    5757
    5858if {![variant_isset postgis] && ![variant_isset postgis2]} {
    59         default_variants                +postgis2
     59    default_variants    +postgis2
    6060}
    6161
    6262if {![variant_isset python25] && ![variant_isset python26] &&
    63         ![variant_isset python27]} {
    64        
    65         default_variants                +python27
     63    ![variant_isset python27]} {
     64   
     65    default_variants    +python27
    6666}
    6767
    6868if {![variant_isset postgresql90] && ![variant_isset postgresql91] && \
    6969    ![variant_isset postgresql92]} {
    70        
    71         default_variants                +postgresql91
    72 }
    73 
    74 set Py_own_FRM  ${worksrcpath}/Python.framework
     70
     71    default_variants    +postgresql91
     72}
     73
     74set Py_own_FRM  ${worksrcpath}/Python.framework
    7575
    7676# Python related stuff
    7777
    78 variant python25        conflicts universal python26 python27 \
    79                                         description use Python 2.5 {   
    80 
    81         depends_lib-append              port:py25-pyqt4
    82         depends_build-append    port:py25-sip
    83         depends_run-append              port:py25-psycopg2 \
    84                                                         port:py25-spatialite
    85 
    86        
    87         configure.args-append "-DPYTHON_EXECUTABLE=${prefix}/bin/python2.5"
    88         configure.args-append "-DPYUIC4_PROGRAM=${prefix}/bin/pyuic4-2.5"
    89         configure.args-append "-DPYRCC4_PROGRAM=${prefix}/bin/pyrcc4-2.5"
    90         configure.args-append \
    91                                 "-DSIP_BINARY_PATH=${Py_own_FRM}/Versions/2.5/bin/sip"
    92 }
    93 
    94 variant python26        conflicts python25 python27 \
    95                                         description use Python 2.6 {
    96        
    97         depends_lib-append              port:py26-pyqt4
    98         depends_build-append    port:py26-sip
    99         depends_run-append              port:py26-psycopg2 \
    100                                                         port:py26-spatialite
    101 
    102        
    103         configure.args-append "-DPYTHON_EXECUTABLE=${prefix}/bin/python2.6"
    104         configure.args-append "-DPYUIC4_PROGRAM=${prefix}/bin/pyuic4-2.6"
    105         configure.args-append "-DPYRCC4_PROGRAM=${prefix}/bin/pyrcc4-2.6"
    106         configure.args-append \
    107                                 "-DSIP_BINARY_PATH=${Py_own_FRM}/Versions/2.6/bin/sip"
    108 
    109 }
    110 
    111 variant python27        conflicts python25 python26 \
    112                                         description use Python 2.7 {
    113                                        
    114         depends_lib-append              port:py27-pyqt4
    115         depends_build-append    port:py27-sip
    116         depends_run-append              port:py27-psycopg2 \
    117                                                         port:py27-spatialite
    118 
    119        
    120         configure.args-append "-DPYTHON_EXECUTABLE=${prefix}/bin/python2.7"
    121         configure.args-append "-DPYUIC4_PROGRAM=${prefix}/bin/pyuic4-2.7"
    122         configure.args-append "-DPYRCC4_PROGRAM=${prefix}/bin/pyrcc4-2.7"
    123         configure.args-append \
    124                                 "-DSIP_BINARY_PATH=${Py_own_FRM}/Versions/2.7/bin/sip"
    125 
    126 }
    127 
    128 variant postgresql90    conflicts postgresql91 postgresql92 \
    129                                                 description "Use postgresql 9.0" {
    130                                                
    131         depends_lib-append              port:postgresql90
    132         set PGSQL_DIR                   ${prefix}/lib/postgresql90
    133         configure.args-append   "-DPOSTGRES_CONFIG=${PGSQL_DIR}/bin/pg_config"
    134 }
    135 
    136 variant postgresql91    conflicts postgresql90 postgresql92 \
    137                                                 description "Use postgresql 9.1" {
    138                                                
    139         depends_lib-append              port:postgresql91
    140         set PGSQL_DIR                   ${prefix}/lib/postgresql91
    141         configure.args-append   "-DPOSTGRES_CONFIG=${PGSQL_DIR}/bin/pg_config"
    142 }
    143 
    144 variant postgresql92    conflicts postgresql90 postgresql91 \
    145                                                 description "Use postgresql 9.1" {
    146                                                
    147         depends_lib-append              port:postgresql92
    148         set PGSQL_DIR                   ${prefix}/lib/postgresql92
    149         configure.args-append   "-DPOSTGRES_CONFIG=${PGSQL_DIR}/bin/pg_config"
    150 }
    151 
    152 variant postgis                 description "Build postgis 1.x support" \
     78variant python25    conflicts universal python26 python27 \
     79                    description use Python 2.5 {   
     80
     81    depends_lib-append      port:py25-pyqt4
     82    depends_build-append    port:py25-sip
     83    depends_run-append      port:py25-psycopg2 \
     84                            port:py25-spatialite
     85
     86   
     87    configure.args-append  "-DPYTHON_EXECUTABLE=${prefix}/bin/python2.5"
     88    configure.args-append  "-DPYUIC4_PROGRAM=${prefix}/bin/pyuic4-2.5"
     89    configure.args-append  "-DPYRCC4_PROGRAM=${prefix}/bin/pyrcc4-2.5"
     90    configure.args-append  \
     91                "-DSIP_BINARY_PATH=${Py_own_FRM}/Versions/2.5/bin/sip"
     92}
     93
     94variant python26    conflicts python25 python27 \
     95                    description use Python 2.6 {
     96
     97    depends_lib-append      port:py26-pyqt4
     98    depends_build-append    port:py26-sip
     99    depends_run-append      port:py26-psycopg2 \
     100                            port:py26-spatialite
     101
     102   
     103    configure.args-append  "-DPYTHON_EXECUTABLE=${prefix}/bin/python2.6"
     104    configure.args-append  "-DPYUIC4_PROGRAM=${prefix}/bin/pyuic4-2.6"
     105    configure.args-append  "-DPYRCC4_PROGRAM=${prefix}/bin/pyrcc4-2.6"
     106    configure.args-append  \
     107                "-DSIP_BINARY_PATH=${Py_own_FRM}/Versions/2.6/bin/sip"
     108}
     109
     110variant python27    conflicts python25 python26 \
     111                    description use Python 2.7 {
     112
     113    depends_lib-append      port:py27-pyqt4
     114    depends_build-append    port:py27-sip
     115    depends_run-append      port:py27-psycopg2 \
     116                            port:py27-spatialite
     117
     118    configure.args-append  "-DPYTHON_EXECUTABLE=${prefix}/bin/python2.7"
     119    configure.args-append  "-DPYUIC4_PROGRAM=${prefix}/bin/pyuic4-2.7"
     120    configure.args-append  "-DPYRCC4_PROGRAM=${prefix}/bin/pyrcc4-2.7"
     121    configure.args-append  \
     122                "-DSIP_BINARY_PATH=${Py_own_FRM}/Versions/2.7/bin/sip"
     123
     124}
     125
     126variant postgresql90    conflicts postgresql91 postgresql92 \
     127                        description "Use postgresql 9.0" {
     128
     129    depends_lib-append      port:postgresql90
     130    set PGSQL_DIR           ${prefix}/lib/postgresql90
     131    configure.args-append   \
     132                "-DPOSTGRES_CONFIG=${PGSQL_DIR}/bin/pg_config"
     133}
     134
     135variant postgresql91    conflicts postgresql90 postgresql92 \
     136                        description "Use postgresql 9.1" {
     137
     138    depends_lib-append      port:postgresql91
     139    set PGSQL_DIR           ${prefix}/lib/postgresql91
     140    configure.args-append   \
     141                "-DPOSTGRES_CONFIG=${PGSQL_DIR}/bin/pg_config"
     142}
     143
     144variant postgresql92    conflicts postgresql90 postgresql91 \
     145                        description "Use postgresql 9.1" {
     146
     147    depends_lib-append      port:postgresql92
     148    set PGSQL_DIR           ${prefix}/lib/postgresql92
     149    configure.args-append   \
     150                "-DPOSTGRES_CONFIG=${PGSQL_DIR}/bin/pg_config"
     151}
     152
     153variant postgis            description "Build postgis 1.x support" \
    153154                        conflicts postgis2 {
    154        
    155         depends_lib-append              port:postgis
    156        
    157         if {![variant_isset postgresql90] &&
    158                 ![variant_isset postgresql91] } {
    159                 return -code error "Please also select a postgresql variant"
    160         }
    161 }
    162 
    163 variant postgis2                        description "Build postgis 2.x support" \
     155
     156    depends_lib-append      port:postgis
     157
     158    if {![variant_isset postgresql90] &&
     159        ![variant_isset postgresql91] &&
     160        ![variant_isset postgresql92]} {
     161        return -code error "Please also select a postgresql variant"
     162    }
     163}
     164
     165variant postgis2            description "Build postgis 2.x support" \
    164166                            conflicts postgis {
    165        
    166         depends_lib-append              port:postgis2
    167        
    168         if {![variant_isset postgresql90] &&
    169                 ![variant_isset postgresql91] } {
    170                 return -code error "Please also select a postgresql variant"
    171         }
    172 }
    173 
    174 variant grass                           description "Build the grass (6.4) plugin" {
    175 
    176         depends_lib-append              port:grass
    177         configure.args-append   "-DGRASS_PREFIX=${prefix}/share/grass-6.4.2"
    178 }
    179 
    180 configure.dir                           ${worksrcpath}/build                                                                   
    181 configure.cmd                           cmake ..
    182 
    183 configure.args-append           "-DCMAKE_CXX_COMPILER=${configure.cxx}"
    184 configure.args-append           "-DCMAKE_C_COMPILER=${configure.cc}"
    185 configure.args-append           "-DEXPAT_INCLUDE_DIR=${prefix}/include"
    186 configure.args-append           "-DEXPAT_LIBRARY=${prefix}/lib/libexpat.dylib"
    187 configure.args-append           "-DCMAKE_INSTALL_PREFIX=${applications_dir}"
    188 configure.args-append           "-DGDAL_CONFIG=${prefix}/bin/gdal-config"
    189 configure.args-append           "-DGDAL_INCLUDE_DIR=${prefix}/include"
    190 configure.args-append           "-DGDAL_LIBRARY=${prefix}/lib/libgdal.dylib"
    191 configure.args-append           "-DGEOS_CONFIG=${prefix}/bin/geos-config"
    192 configure.args-append           "-DGEOS_INCLUDE_DIR=${prefix}/include/geos"
    193 configure.args-append           "-DGEOS_LIBRARY=${prefix}/lib/libgeos_c.dylib"
    194 configure.args-append           "-DGSL_CONFIG=${prefix}/bin/gsl-config"
    195 configure.args-append           "-DPROJ_INCLUDE_DIR=${prefix}/include"
    196 configure.args-append           "-DPROJ_LIBRARY=${prefix}/lib/libproj.dylib"
    197 configure.args-append           "-DWITH_SPATIALITE:BOOL=NO"
    198 #configure.args-append       "-DSPATIALINDEX_INCLUDE=${prefix}/include"
    199 configure.args-append       "-DSPATIALINDEX_LIBRARY=${prefix}/lib/libspatialindex.dylib"
    200 configure.args-append           "-DPYTHON_INCLUDE_PATH=${Py_own_FRM}/Headers"
    201 configure.args-append       "'-DPYTHON_LIBRARY=-F${Py_own_FRM} -framework Python'"
    202 configure.args-append           "-DSIP_INCLUDE_DIR=${Py_own_FRM}/Headers"
    203 configure.args-append           "-DCMAKE_BUILD_TYPE=Release"
    204 configure.args-append       "-DQGIS_MACAPP_DEV_PREFIX=${frameworks_dir}"
    205        
    206 # This is a fake but don't ask me why it is needed
    207 #configure.args-append          "-DSVN_MARKER=/usr/bin/svnversion"
    208 
     167   
     168    depends_lib-append      port:postgis2
     169
     170    if {![variant_isset postgresql90] &&
     171        ![variant_isset postgresql91] &&
     172        ![variant_isset postgresql92]} {
     173        return -code error "Please also select a postgresql variant"
     174    }
     175}
     176
     177variant grass               description "Build Grass (6.42) plugin" {
     178
     179    depends_lib-append      port:grass
     180    configure.args-append   \
     181                "-DGRASS_PREFIX=${prefix}/share/grass-6.4.2"
     182}
     183
     184configure.dir               ${worksrcpath}/build                                   
     185configure.cmd               cmake ..
     186
     187configure.args-append  "-DCMAKE_CXX_COMPILER=${configure.cxx}"
     188configure.args-append  "-DCMAKE_C_COMPILER=${configure.cc}"
     189configure.args-append  "-DEXPAT_INCLUDE_DIR=${prefix}/include"
     190configure.args-append  "-DEXPAT_LIBRARY=${prefix}/lib/libexpat.dylib"
     191configure.args-append  "-DCMAKE_INSTALL_PREFIX=${applications_dir}"
     192configure.args-append  "-DGDAL_CONFIG=${prefix}/bin/gdal-config"
     193configure.args-append  "-DGDAL_INCLUDE_DIR=${prefix}/include"
     194configure.args-append  "-DGDAL_LIBRARY=${prefix}/lib/libgdal.dylib"
     195configure.args-append  "-DGEOS_CONFIG=${prefix}/bin/geos-config"
     196configure.args-append  "-DGEOS_INCLUDE_DIR=${prefix}/include/geos"
     197configure.args-append  "-DGEOS_LIBRARY=${prefix}/lib/libgeos_c.dylib"
     198configure.args-append  "-DGSL_CONFIG=${prefix}/bin/gsl-config"
     199configure.args-append  "-DPROJ_INCLUDE_DIR=${prefix}/include"
     200configure.args-append  "-DPROJ_LIBRARY=${prefix}/lib/libproj.dylib"
     201configure.args-append  "-DWITH_SPATIALITE:BOOL=NO"
     202configure.args-append  \
     203        "-DSPATIALINDEX_LIBRARY=${prefix}/lib/libspatialindex.dylib"
     204configure.args-append  "-DPYTHON_INCLUDE_PATH=${Py_own_FRM}/Headers"
     205configure.args-append  \
     206        "'-DPYTHON_LIBRARY=-F${Py_own_FRM} -framework Python'"
     207configure.args-append  "-DSIP_INCLUDE_DIR=${Py_own_FRM}/Headers"
     208configure.args-append  "-DCMAKE_BUILD_TYPE=Release"
     209configure.args-append  "-DQGIS_MACAPP_DEV_PREFIX=${frameworks_dir}"
     210   
    209211# Patch for proper linking of our own Python framework
    210212post-configure {
    211         reinplace -E "s|(^\[^ \]*)|\\1 -F${worksrcpath}|" \
    212                 ${worksrcpath}/build/src/python/CMakeFiles/qgispython.dir/link.txt
    213 
    214 
    215         # Setup Python stuff in order to gracefully link
    216         # against -framework Python
    217 
    218         set variantlist [split ${portvariants} "+"]
    219         set Pyversion   [string replace [lindex ${variantlist} \
    220                                                 [lsearch $variantlist "python*"]] 0 5]
    221         set Pyverpath   [join [split ${Pyversion} ""] .]
    222 
    223         # Set up a fake framework in ${worksrcpath}/Python.framework
    224         set Py_sys_FRM  "${frameworks_dir}/Python.framework/Versions/${Pyverpath}"
    225 
    226         system \
    227                 "cd ${Py_own_FRM} ; \
    228                 rm -f Headers Python Resources ; \
    229                 ln -s ${Py_sys_FRM}/include/python${Pyverpath} Headers ; \
    230                 ln -s ${Py_sys_FRM}/Python . ; \
    231                 ln -s ${Py_sys_FRM}/Resources . ;"
    232                
    233         # Workaround a bug in some clang version
     213    reinplace -E "s|(^\[^ \]*)|\\1 -F${worksrcpath}|" \
     214      ${worksrcpath}/build/src/python/CMakeFiles/qgispython.dir/link.txt
     215
     216    # Setup Python stuff in order to gracefully link
     217    # against -framework Python
     218
     219    set variantlist [split ${portvariants} "+"]
     220    set Pyversion   [string replace [lindex ${variantlist} \
     221                        [lsearch $variantlist "python*"]] 0 5]
     222    set Pyverpath   [join [split ${Pyversion} ""] .]
     223
     224    # Set up a fake framework in ${worksrcpath}/Python.framework
     225    set Py_sys_FRM  \
     226        "${frameworks_dir}/Python.framework/Versions/${Pyverpath}"
     227
     228    system \
     229        "cd ${Py_own_FRM} ; \
     230        rm -f Headers Python Resources ; \
     231        ln -s ${Py_sys_FRM}/include/python${Pyverpath} Headers ; \
     232        ln -s ${Py_sys_FRM}/Python . ; \
     233        ln -s ${Py_sys_FRM}/Resources . ;"
     234       
     235    # Workaround a bug in some clang version
    234236    system \
    235237        "cd ${worksrcpath}/build/src/crssync/CMakeFiles/crssync.dir ; \
     
    238240}
    239241
    240 use_parallel_build                      yes
    241 build.dir                                       ${worksrcpath}/build
    242 destroot.target                         install
     242use_parallel_build          yes
     243build.dir                   ${worksrcpath}/build
     244destroot.target             install
Note: See TracChangeset for help on using the changeset viewer.