From 4ee2647d0682d6953f7a5bfd9d412a2bc6bb341c868f24ec43f3b32518806d6b Mon Sep 17 00:00:00 2001 From: Angelos Tzotsos Date: Mon, 19 Jan 2015 21:21:14 +0000 Subject: [PATCH] Accepting request 281992 from home:tzotsos:Application:Geo Thanks to Tigerfoot: fixed build failure for 13.2 and cleanup OBS-URL: https://build.opensuse.org/request/show/281992 OBS-URL: https://build.opensuse.org/package/show/Application:Geo/mapserver?expand=0&rev=98 --- 4875-incorrect-blending-tif.patch | 67 +++++++ 4912-php56-php-input.patch | 114 +++++++++++ mapserver.changes | 15 ++ mapserver.spec | 309 +++++++++++++++--------------- 4 files changed, 348 insertions(+), 157 deletions(-) create mode 100644 4875-incorrect-blending-tif.patch create mode 100644 4912-php56-php-input.patch diff --git a/4875-incorrect-blending-tif.patch b/4875-incorrect-blending-tif.patch new file mode 100644 index 0000000..7863dd8 --- /dev/null +++ b/4875-incorrect-blending-tif.patch @@ -0,0 +1,67 @@ +From bc5c58296f29f0fabb117c9111ca73b723a642d0 Mon Sep 17 00:00:00 2001 +From: Thomas Bonfort +Date: Tue, 25 Feb 2014 15:14:23 +0100 +Subject: [PATCH 1/2] Fix blending of semi-opaque pixels in average and + bilinear resamplers (#4875) + +--- + mapresample.c | 2 +- + maputil.c | 18 +++++++++--------- + 2 files changed, 10 insertions(+), 10 deletions(-) + +diff --git a/mapresample.c b/mapresample.c +index 419d07b..7980355 100644 +--- a/mapresample.c ++++ b/mapresample.c +@@ -671,7 +671,7 @@ msAverageRasterResampler( imageObj *psSrcImage, rasterBufferObj *src_rb, + alpha = (unsigned char) + MAX(0,MIN(255,255*dfAlpha01+0.5)); + +- RB_SET_PIXEL(dst_rb,nDstX,nDstY, ++ RB_MIX_PIXEL(dst_rb,nDstX,nDstY, + red, green, blue, alpha ); + } + #ifdef USE_GD +diff --git a/maputil.c b/maputil.c +index ef0d309..34ead4d 100644 +--- a/maputil.c ++++ b/maputil.c +@@ -2096,19 +2096,19 @@ void msAlphaBlendPM( unsigned char red_src, unsigned char green_src, + /* Cases with actual blending. */ + /* -------------------------------------------------------------------- */ + if(!alpha_dst || *alpha_dst == 255) { +- int weight_dst = 256 - alpha_src; ++ int weight_dst = 255 - alpha_src; + +- *red_dst = (256 * red_src + *red_dst * weight_dst) >> 8; +- *green_dst = (256 * green_src + *green_dst * weight_dst) >> 8; +- *blue_dst = (256 * blue_src + *blue_dst * weight_dst) >> 8; ++ *red_dst = (alpha_src * red_src + *red_dst * weight_dst) >> 8; ++ *green_dst = (alpha_src * green_src + *green_dst * weight_dst) >> 8; ++ *blue_dst = (alpha_src * blue_src + *blue_dst * weight_dst) >> 8; + } else { +- int weight_dst = (256 - alpha_src); ++ int weight_dst = (255 - alpha_src); + +- *red_dst = (256 * red_src + *red_dst * weight_dst) >> 8; +- *green_dst = (256 * green_src + *green_dst * weight_dst) >> 8; +- *blue_dst = (256 * blue_src + *blue_dst * weight_dst) >> 8; ++ *red_dst = (alpha_src * red_src + *red_dst * weight_dst) >> 8; ++ *green_dst = (alpha_src * green_src + *green_dst * weight_dst) >> 8; ++ *blue_dst = (alpha_src * blue_src + *blue_dst * weight_dst) >> 8; + +- *alpha_dst = (256 * alpha_src + *alpha_dst * weight_dst) >> 8; ++ *alpha_dst = (255 * alpha_src + *alpha_dst * weight_dst) >> 8; + } + } + + +From 9aacff0d49f9dd4ea300e9e2dc68792f21159d88 Mon Sep 17 00:00:00 2001 +From: Thomas Bonfort +Date: Tue, 25 Feb 2014 16:05:20 +0100 +Subject: [PATCH 2/2] update submodule + +--- + msautotest | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + diff --git a/4912-php56-php-input.patch b/4912-php56-php-input.patch new file mode 100644 index 0000000..0a95b9d --- /dev/null +++ b/4912-php56-php-input.patch @@ -0,0 +1,114 @@ +From 1a0a11f2690b079eb53db982f1d7cdf9e3ecf80f Mon Sep 17 00:00:00 2001 +From: Bas Couwenberg +Date: Sat, 26 Apr 2014 13:46:41 +0200 +Subject: [PATCH 1/2] Use php://input instead of raw_post_data to support PHP + 5.6. + +php_stream handling largely taken from PECL HTTP: + +http://git.php.net/?p=pecl/http/pecl_http.git;a=blob;f=php_http_env.c;h=30ee32d7c68b3341aeaeb24c909b102537caccdf;hb=8ec2c825719482e62222163a300b0e18319591d0#l229 + +Copyright (c) 2004-2014, Michael Wallner . +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 COPYRIGHT OWNER OR CONTRIBUTORS 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. + +Bug-Debian: https://bugs.debian.org/745600 +--- + mapscript/php/owsrequest.c | 21 +++++++++++++++++++++ + 1 file changed, 21 insertions(+) + +diff --git a/mapscript/php/owsrequest.c b/mapscript/php/owsrequest.c +index 428c8dd..8fa48c7 100644 +--- a/mapscript/php/owsrequest.c ++++ b/mapscript/php/owsrequest.c +@@ -32,6 +32,7 @@ + #include "php_mapscript.h" + #include "SAPI.h" + #include "php_variables.h" ++#include "php_streams.h" + + char *owsrequest_getenv(const char *name, void *thread_context); + +@@ -193,9 +194,29 @@ PHP_METHOD(OWSRequestObj, loadParams) + cgirequestObj_loadParams(php_owsrequest->cgirequest, owsrequest_getenv, NULL, 0, thread_context); + } + } else { ++ php_stream *s = php_stream_temp_new(); ++#if PHP_VERSION_ID >= 50600 ++ php_stream *input = php_stream_open_wrapper("php://input", "r", 0, NULL); ++ ++ /* php://input does not support stat */ ++ php_stream_copy_to_stream_ex(input, s, -1, NULL); ++ php_stream_close(input); ++ ++ php_stream_rewind(s); ++ ++ char *raw_post_data = NULL; ++ long raw_post_data_length = 0; ++ ++ raw_post_data_length = php_stream_copy_to_mem(s, raw_post_data, -1, 0); ++ ++ cgirequestObj_loadParams(php_owsrequest->cgirequest, owsrequest_getenv, ++ raw_post_data, ++ raw_post_data_length, thread_context); ++#else + cgirequestObj_loadParams(php_owsrequest->cgirequest, owsrequest_getenv, + SG(request_info).raw_post_data, + SG(request_info).raw_post_data_length, thread_context); ++#endif + } + } + + +From 0ed9072658a0262f1273ba8ee74dad30229597ec Mon Sep 17 00:00:00 2001 +From: Bas Couwenberg +Date: Sat, 26 Apr 2014 16:26:34 +0200 +Subject: [PATCH 2/2] Minor fixes incorporating Thomas' feedback. + +--- + mapscript/php/owsrequest.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/mapscript/php/owsrequest.c b/mapscript/php/owsrequest.c +index 8fa48c7..f01d361 100644 +--- a/mapscript/php/owsrequest.c ++++ b/mapscript/php/owsrequest.c +@@ -32,7 +32,9 @@ + #include "php_mapscript.h" + #include "SAPI.h" + #include "php_variables.h" ++#if PHP_VERSION_ID >= 50600 + #include "php_streams.h" ++#endif + + char *owsrequest_getenv(const char *name, void *thread_context); + +@@ -194,8 +196,8 @@ PHP_METHOD(OWSRequestObj, loadParams) + cgirequestObj_loadParams(php_owsrequest->cgirequest, owsrequest_getenv, NULL, 0, thread_context); + } + } else { +- php_stream *s = php_stream_temp_new(); + #if PHP_VERSION_ID >= 50600 ++ php_stream *s = php_stream_temp_new(); + php_stream *input = php_stream_open_wrapper("php://input", "r", 0, NULL); + + /* php://input does not support stat */ diff --git a/mapserver.changes b/mapserver.changes index 71e244d..2ae5885 100644 --- a/mapserver.changes +++ b/mapserver.changes @@ -1,3 +1,18 @@ +------------------------------------------------------------------- +Sat Aug 30 18:34:09 UTC 2014 - bruno@ioda-net.ch + +- packaging spec-cleaner +- fixed compilation error with php 5.6.0 + upstream patch 4912-php56-php-input.patch + supported also php 5.5x +- fixed blending tif error + upstream patch 4875-incorrect-blending-tif.patch + +------------------------------------------------------------------- +Sun Mar 30 18:52:41 UTC 2014 - bruno@ioda-net.ch + +- use correct ruby rpm macros + ------------------------------------------------------------------- Thu Jan 2 20:30:07 UTC 2014 - bruno@ioda-net.ch diff --git a/mapserver.spec b/mapserver.spec index 1c50c9a..b5e8ca8 100644 --- a/mapserver.spec +++ b/mapserver.spec @@ -3,9 +3,9 @@ # this build respect python,java,perl,php package naming convention under # openSUSE. # -# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. -# Copyright (c) 2013 Ioda-Net Sàrl, Charmoille, Switzerland. Bruno Friedmann (tigerfoot) -# Copyright (c) 2013 Angelos Tzotsos (kalxas) +# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2014 Ioda-Net Sàrl, Charmoille, Switzerland. Bruno Friedmann (tigerfoot) +# Copyright (c) 2015 Angelos Tzotsos (kalxas) # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,85 +18,82 @@ # # Please submit bugfixes or comments via http://bugs.opensuse.org/ -# We only build for 12.3 and up # -Name: mapserver + %define fileversion 6.4.1 %define libname libmapserver1 -Version: 6.4.1 -Release: 1 -License: MIT -#see http://www.mapserver.org/copyright.html#license -Group: Productivity/Networking/Web/Servers -Source: %{name}-%{fileversion}.tar.gz -Url: http://www.mapserver.org -#wget https://github.com/mapserver/mapserver/pull/#PATCH.patch -Patch1: 4788.patch -Patch2: 4788-php-mapscript.patch -Patch3: 4788-python-mapscript.patch -Summary: Environment for building spatially-enabled internet applications -#@TODO : we should normally only require client & libs for database -Requires: postgresql >= 9.1 -Requires: mysql -Requires: FastCGI -Requires: apache2 -Requires: librsvg -Requires: fribidi -#Added proj due to missing espg tools for shp2img for example -Requires: proj -Requires: %{libname} = %{version}-%{release} - -%if 0%{?suse_version} != 1010 -BuildRequires: xorg-x11-libXpm-devel -%endif -BuildRequires: rpm -BuildRequires: gcc -BuildRequires: gcc-c++ -BuildRequires: chrpath -BuildRequires: autoconf -BuildRequires: cmake >= 2.4 -BuildRequires: pam -BuildRequires: pam-devel -BuildRequires: postgresql-devel >= 9.1 -BuildRequires: libexpat-devel -BuildRequires: mysql-devel -BuildRequires: giflib-devel -BuildRequires: libgeos-devel -BuildRequires: libproj-devel -BuildRequires: libgdal-devel >= 1.10 -#BuildRequires: libjpeg8-devel I've normally use that one ? -BuildRequires: openjpeg2-devel -BuildRequires: readline-devel -BuildRequires: freetype2-devel -BuildRequires: freetype2 -BuildRequires: FastCGI-devel -BuildRequires: fribidi-devel -BuildRequires: cairo-devel -BuildRequires: gd-devel >= 2.0.16 -BuildRequires: krb5-devel -BuildRequires: zlib-devel -BuildRequires: libxml2-devel -BuildRequires: libxslt-devel -BuildRequires: libjpeg-devel -BuildRequires: libpng-devel -BuildRequires: libtiff-devel -BuildRequires: perl(ExtUtils::MakeMaker) -BuildRequires: proj -BuildRequires: swig -BuildRequires: update-alternatives -BuildRequires: apache2-devel -BuildRequires: krb5-devel -BuildRequires: libgcj-devel - -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root - -%define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)") +%define python_sitearch %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)") %define _cgibindir /srv/www/cgi-bin +Name: mapserver +Version: 6.4.1 +Release: 0 +Summary: Environment for building spatially-enabled internet applications +License: MIT +#see http://www.mapserver.org/copyright.html#license +Group: Productivity/Networking/Web/Servers +Url: http://www.mapserver.org +Source: %{name}-%{fileversion}.tar.gz +#wget https://github.com/mapserver/mapserver/pull/#PATCH.patch +Patch1: 4788.patch +Patch2: 4788-php-mapscript.patch +Patch3: 4788-python-mapscript.patch +Patch4: 4875-incorrect-blending-tif.patch +Patch5: 4912-php56-php-input.patch +BuildRequires: FastCGI-devel +BuildRequires: apache2-devel +BuildRequires: autoconf +BuildRequires: cairo-devel +BuildRequires: chrpath +BuildRequires: cmake >= 2.4 +BuildRequires: freetype2 +BuildRequires: freetype2-devel +BuildRequires: fribidi-devel +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: gd-devel >= 2.0.16 +BuildRequires: giflib-devel +BuildRequires: krb5-devel +BuildRequires: libexpat-devel +BuildRequires: libgcj-devel +BuildRequires: libgdal-devel >= 1.10 +BuildRequires: libgeos-devel +BuildRequires: libjpeg-devel +BuildRequires: libpng-devel +BuildRequires: libproj-devel +BuildRequires: libtiff-devel +BuildRequires: libxml2-devel +BuildRequires: libxslt-devel +BuildRequires: mysql-devel +BuildRequires: openjpeg2-devel +BuildRequires: pam +BuildRequires: pam-devel +BuildRequires: perl(ExtUtils::MakeMaker) +BuildRequires: postgresql-devel >= 9.1 +BuildRequires: proj +BuildRequires: readline-devel +BuildRequires: rpm +BuildRequires: swig +BuildRequires: update-alternatives +BuildRequires: zlib-devel +%if 0%{?suse_version} != 1010 +BuildRequires: xorg-x11-libXpm-devel +%endif +Requires: %{libname} = %{version}-%{release} +Requires: FastCGI +Requires: apache2 +Requires: fribidi +Requires: librsvg +Requires: proj +Requires: mysql +Requires: postgresql >= 9.1 +BuildRoot: %{_tmppath}/%{name}-%{version}-build + + %description Mapserver is an internet mapping program that converts GIS data to -map images in real time. With appropriate interface pages, -Mapserver can provide an interactive internet map based on +map images in real time. With appropriate interface pages, +Mapserver can provide an interactive internet map based on custom GIS data. %package -n %{libname} @@ -107,14 +104,16 @@ Group: Development/Libraries/C and C++ Mapserver library for mapserver or mapscript module. you need this lib to run mapserver or any of the mapscript module (php, java, python, ruby) - # We don't require apache2_mod-php5 users could have php5 running # with other modes (cgi, php-fpm etc) + %package -n php-mapscript Summary: PHP/Mapscript map making extensions to PHP Group: Development/Libraries/PHP Requires: %{libname} = %{version}-%{release} Requires: apache2 +Provides: php-mapserver = %{version}-%{release} +Obsoletes: php-mapserver < %{version}-%{release} %if 0%{?sles_version} >= 11 BuildRequires: php53-devel Requires: php53 @@ -124,8 +123,6 @@ BuildRequires: php-devel Requires: php Requires: php-gd %endif -Provides: php-mapserver = %{version}-%{release} -Obsoletes: php-mapserver < %{version}-%{release} %description -n php-mapscript The PHP/Mapscript extension provides full map customization capabilities within the PHP scripting language. @@ -133,12 +130,12 @@ The PHP/Mapscript extension provides full map customization capabilities within %package -n perl-mapscript Summary: Perl/Mapscript map making extensions to Perl Group: Development/Languages/Perl -BuildRequires: perl-base BuildRequires: perl(ExtUtils::MakeMaker) +BuildRequires: perl-base Requires: %{libname} = %{version}-%{release} Requires: perl-base -Provides: mapserver-perl = %{version}-%{release} -Obsoletes: mapserver-perl < %{version}-%{release} +Provides: mapserver-perl = %{version}-%{release} +Obsoletes: mapserver-perl < %{version}-%{release} %description -n perl-mapscript The Perl/Mapscript extension provides full map customization capabilities @@ -147,11 +144,11 @@ within the Perl programming language. %package -n python-mapscript Summary: Python/Mapscript map making extensions to Python Group: Development/Languages/Python -BuildRequires: python-devel +BuildRequires: python-devel Requires: %{libname} = %{version}-%{release} Requires: python-base -Provides: mapserver-python = %{version}-%{release} -Obsoletes: mapserver-python < %{version}-%{release} +Provides: mapserver-python = %{version}-%{release} +Obsoletes: mapserver-python < %{version}-%{release} %description -n python-mapscript The Python/Mapscript extension provides full map customization capabilities @@ -160,21 +157,21 @@ within the Python programming language. %package -n libjavamapscript Summary: Java/Mapscript map making extensions to Java Group: Development/Languages/Java -BuildRequires: java-devel >= 1.6 BuildRequires: java >= 1.6 -BuildRequires: swig +BuildRequires: java-devel >= 1.6 +BuildRequires: swig +Requires: %{libname} = %{version}-%{release} +Requires: java >= 1.6 +Requires: swig +Provides: java-mapscript = %{version}-%{release} +Provides: mapserver-java = %{version}-%{release} +Obsoletes: mapserver-java < %{version}-%{release} +Obsoletes: java-mapscript < %{version}-%{release} %if 0%{?sles_version} == 10 %ifarch i586 BuildRequires: java-1_5_0-ibm-alsa %endif %endif -Requires: %{libname} = %{version}-%{release} -Requires: java >= 1.6 -Requires: swig -Provides: java-mapscript = %{version}-%{release} -Provides: mapserver-java = %{version}-%{release} -Obsoletes: mapserver-java < %{version}-%{release} -Obsoletes: java-mapscript < %{version}-%{release} %description -n libjavamapscript The Java/Mapscript extension provides full map customization capabilities @@ -183,23 +180,23 @@ within the Java programming language. %package -n ruby-mapscript Summary: Ruby/Mapscript map making extensions to Ruby Group: Development/Languages/Ruby -Requires: ruby -BuildRequires: ruby-devel -BuildRequires: ruby-macros +BuildRequires: ruby-devel +BuildRequires: ruby-macros Requires: %{libname} = %{version}-%{release} -Provides: mapserver-ruby = %{version}-%{release} -Obsoletes: mapserver-ruby < %{version}-%{release} +Requires: ruby +Provides: mapserver-ruby = %{version}-%{release} +Obsoletes: mapserver-ruby < %{version}-%{release} %description -n ruby-mapscript The Ruby/Mapscript extension provides full map customization capabilities within the Ruby programming language. -%package devel +%package devel Summary: Mapserver development files Group: Development/Libraries/Other Requires: %{name} = %{version}-%{release} -%description devel +%description devel The Mapserver development package provides necessary files to build against the C Mapserver library. @@ -207,7 +204,9 @@ against the C Mapserver library. %setup -q -n %{name}-%{fileversion} %patch1 -p1 %patch2 -p1 -%patch3 -p1 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 %build -n %{name}-%{fileversion} @@ -217,60 +216,60 @@ cd build #Pre export the PREFIX ( having it on the command line doesn't expand correctly for #dynamic postgresql location export CMAKE_PREFIX_PATH="%{_includedir}:%{_includedir}/fastcgi:%(pg_config --includedir):%(pg_config --includedir-server):%(pg_config --libdir)" -export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" -export CXXFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" +export CFLAGS="%{optflags} -fno-strict-aliasing" +export CXXFLAGS="%{optflags} -fno-strict-aliasing" #specify all options and play with true/false #so we always know which option are included in our build. cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \ - -DCMAKE_SKIP_RPATH=ON \ - -DCMAKE_C_FLAGS_RELEASE="%{optflags} -fno-strict-aliasing" \ - -DCMAKE_CXX_FLAGS_RELEASE="%{optflags} -fno-strict-aliasing" \ - -DCMAKE_VERBOSE_MAKEFILE=ON \ - -DCMAKE_BUILD_TYPE="Release" \ - -DCMAKE_SKIP_INSTALL_RPATH=ON \ - -DCMAKE_SKIP_RPATH=ON \ - -DWITH_CAIRO=TRUE \ - -DWITH_CLIENT_WFS=TRUE \ - -DWITH_CLIENT_WMS=TRUE \ - -DWITH_CURL=TRUE \ - -DWITH_FCGI=TRUE \ - -DWITH_FRIBIDI=TRUE \ - -DWITH_GD=TRUE \ - -DWITH_GDAL=TRUE \ - -DWITH_GEOS=TRUE \ - -DWITH_GIF=TRUE \ - -DWITH_ICONV=TRUE \ - -DWITH_JAVA=TRUE \ - -DWITH_KML=TRUE \ - -DWITH_LIBXML2=TRUE \ - -DWITH_OGR=TRUE \ - -DWITH_MYSQL=TRUE \ - -DWITH_PERL=TRUE \ - -DCUSTOM_PERL_SITE_ARCH_DIR="%{perl_vendorarch}" \ - -DWITH_PHP=TRUE \ - -DWITH_POSTGIS=TRUE \ - -DWITH_PROJ=TRUE \ - -DWITH_PYTHON=TRUE \ - -DWITH_RUBY=TRUE \ - -DWITH_SOS=TRUE \ - -DWITH_THREAD_SAFETY=TRUE \ - -DWITH_WCS=TRUE \ - -DWITH_WMS=TRUE \ - -DWITH_WFS=TRUE \ - -DWITH_XMLMAPFILE=TRUE \ - -DWITH_POINT_Z_M=TRUE \ - -DWITH_APACHE_MODULE=FALSE \ - -DWITH_SVGCAIRO=FALSE \ - -DWITH_MYSQL=FALSE \ - -DWITH_CSHARP=FALSE \ - -DWITH_ORACLESPATIAL=FALSE \ - -DWITH_ORACLE_PLUGIN=FALSE \ - -DWITH_MSSQL2008=FALSE \ - -DWITH_SDE=FALSE \ - -DWITH_SDE_PLUGIN=FALSE \ - -DWITH_EXEMPI=FALSE \ - ../%{name}-%{fileversion}/ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_C_FLAGS_RELEASE="%{optflags} -fno-strict-aliasing" \ + -DCMAKE_CXX_FLAGS_RELEASE="%{optflags} -fno-strict-aliasing" \ + -DCMAKE_VERBOSE_MAKEFILE=ON \ + -DCMAKE_BUILD_TYPE="Release" \ + -DCMAKE_SKIP_INSTALL_RPATH=ON \ + -DCMAKE_SKIP_RPATH=ON \ + -DWITH_CAIRO=TRUE \ + -DWITH_CLIENT_WFS=TRUE \ + -DWITH_CLIENT_WMS=TRUE \ + -DWITH_CURL=TRUE \ + -DWITH_FCGI=TRUE \ + -DWITH_FRIBIDI=TRUE \ + -DWITH_GD=TRUE \ + -DWITH_GDAL=TRUE \ + -DWITH_GEOS=TRUE \ + -DWITH_GIF=TRUE \ + -DWITH_ICONV=TRUE \ + -DWITH_JAVA=TRUE \ + -DWITH_KML=TRUE \ + -DWITH_LIBXML2=TRUE \ + -DWITH_OGR=TRUE \ + -DWITH_MYSQL=TRUE \ + -DWITH_PERL=TRUE \ + -DCUSTOM_PERL_SITE_ARCH_DIR="%{perl_vendorarch}" \ + -DWITH_PHP=TRUE \ + -DWITH_POSTGIS=TRUE \ + -DWITH_PROJ=TRUE \ + -DWITH_PYTHON=TRUE \ + -DWITH_RUBY=TRUE \ + -DWITH_SOS=TRUE \ + -DWITH_THREAD_SAFETY=TRUE \ + -DWITH_WCS=TRUE \ + -DWITH_WMS=TRUE \ + -DWITH_WFS=TRUE \ + -DWITH_XMLMAPFILE=TRUE \ + -DWITH_POINT_Z_M=TRUE \ + -DWITH_APACHE_MODULE=FALSE \ + -DWITH_SVGCAIRO=FALSE \ + -DWITH_MYSQL=FALSE \ + -DWITH_CSHARP=FALSE \ + -DWITH_ORACLESPATIAL=FALSE \ + -DWITH_ORACLE_PLUGIN=FALSE \ + -DWITH_MSSQL2008=FALSE \ + -DWITH_SDE=FALSE \ + -DWITH_SDE_PLUGIN=FALSE \ + -DWITH_EXEMPI=FALSE \ + ../%{name}-%{fileversion}/ ## WARNING !!! using %%{?_smp_mflags} will break build ## This is not anymore true for 6x versions, if it happen then it's a bug :-) @@ -390,12 +389,8 @@ rm -rf %{buildroot} %defattr(-,root,root) %doc mapscript/ruby/README %doc mapscript/ruby/examples -#@todo fix that by using a proper way ? -%ifarch x86_64 -%{_libdir}/ruby/site_ruby/%{rb_ver}/x86_64-linux/mapscript.so -%else -%{_libdir}/ruby/site_ruby/%{rb_ver}/i586-linux/mapscript.so -%endif +%{rb_sitearchdir}/mapscript.so + %files devel %defattr(-,root,root)