diff options
5 files changed, 251 insertions, 0 deletions
diff --git a/sci-geosciences/mapserver/Manifest b/sci-geosciences/mapserver/Manifest index 47f5601db650..3a462cc37764 100644 --- a/sci-geosciences/mapserver/Manifest +++ b/sci-geosciences/mapserver/Manifest @@ -1 +1,2 @@ DIST mapserver-7.0.5.tar.gz 2631454 BLAKE2B 88467d7d8ae90be73d6629619410f114081588d214eea3cd1752f0f97a5d934aa8e39bc2ce6a59ab969a4ac5eb2df15b60bd78f34c18356befb490a211de830f SHA512 18485ace6e3b198e19acc3dda2ba44b136c55c4a783e472cb4c8f7a0615ed676b9bcdcaedc348227a7929d0ccf6199c90aead572bf8243e7902a5a2051a20753 +DIST mapserver-7.0.7.tar.gz 2634698 BLAKE2B fadde68803d7f74b116aa23c05c25f9c52c67e0a8ea69eace2c865843d7f223c24d8c42cbed54578f2eb631cb58bae3652075872f76e9b88238d76e044d4314b SHA512 94225dbe64edf6623bb5e92649d505809f70f86c24ca06675f6277ac4a161c40c369fd1973db649e6c864fa5e2e4a8a93cbd36d1524297a0e47b96ab59c0941c diff --git a/sci-geosciences/mapserver/files/mapserver-7.0.0-missing-nzz18.patch b/sci-geosciences/mapserver/files/mapserver-7.0.0-missing-nzz18.patch new file mode 100644 index 000000000000..a22fcf4de6aa --- /dev/null +++ b/sci-geosciences/mapserver/files/mapserver-7.0.0-missing-nzz18.patch @@ -0,0 +1,13 @@ +diff --git a/cmake/FindOracle.cmake b/cmake/FindOracle.cmake +index 18055f7..2568b5e 100644 +--- a/cmake/FindOracle.cmake ++++ b/cmake/FindOracle.cmake +@@ -37,7 +37,7 @@ if(DEFINED ENV{ORACLE_HOME}) + ${ORACLE_HOME}/OCI/include) # Oracle XE on Windows + + set(ORACLE_OCI_NAMES clntsh libclntsh oci) +- set(ORACLE_NNZ_NAMES nnz10 libnnz10 nnz11 libnnz11 nnz12 libnnz12 ociw32) ++ set(ORACLE_NNZ_NAMES nnz10 libnnz10 nnz11 libnnz11 nnz12 libnnz12 nnz18 libnnz18 ociw32) + set(ORACLE_OCCI_NAMES libocci occi oraocci10 oraocci11 oraocci12) + + set(ORACLE_LIB_DIR diff --git a/sci-geosciences/mapserver/files/mapserver-7.0.7-missing-macro.patch b/sci-geosciences/mapserver/files/mapserver-7.0.7-missing-macro.patch new file mode 100644 index 000000000000..daf5ab1ebc7c --- /dev/null +++ b/sci-geosciences/mapserver/files/mapserver-7.0.7-missing-macro.patch @@ -0,0 +1,19 @@ +diff --git a/mapserver.h b/mapserver.h +index df7eeb9..9516a6c 100644 +--- a/mapserver.h ++++ b/mapserver.h +@@ -55,6 +55,14 @@ + #include <unistd.h> + #endif + ++#ifndef TRUE ++#define TRUE 1 ++#endif ++ ++#ifndef FALSE ++#define FALSE 0 ++#endif ++ + #if defined(_WIN32) && !defined(__CYGWIN__) + # define MS_DLL_EXPORT __declspec(dllexport) + #define USE_MSFREE diff --git a/sci-geosciences/mapserver/mapserver-7.0.7.ebuild b/sci-geosciences/mapserver/mapserver-7.0.7.ebuild new file mode 100644 index 000000000000..3d9b414957ef --- /dev/null +++ b/sci-geosciences/mapserver/mapserver-7.0.7.ebuild @@ -0,0 +1,217 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +MY_P="${PN}-${PV/_/-}" + +PHP_EXT_OPTIONAL_USE="php" +PHP_EXT_NAME="php_mapscript" +PHP_EXT_S="${WORKDIR}/${MY_P}/mapscript/php/" +PHP_EXT_SKIP_PHPIZE="no" +USE_PHP="php5-6" + +PYTHON_COMPAT=( python2_7 ) + +#USE_RUBY="ruby18 ruby19" +#RUBY_OPTIONAL="yes" + +WEBAPP_MANUAL_SLOT=yes +WEBAPP_OPTIONAL=yes + +inherit cmake-utils depend.apache distutils-r1 eutils flag-o-matic multilib perl-module php-ext-source-r3 webapp # ruby-ng + +DESCRIPTION="Development environment for building spatially enabled webapps" +HOMEPAGE="https://mapserver.org/" +SRC_URI="https://download.osgeo.org/mapserver/${MY_P}.tar.gz" + +LICENSE="MIT" +KEYWORDS="~amd64 ~x86" +SLOT="0" +IUSE="apache bidi cairo gdal geos mysql opengl oracle perl php postgis proj python threads tiff xml xslt" # ruby php tcl + +REQUIRED_USE=" + php? ( php_targets_php5-6 ) + xslt? ( xml )" + +RDEPEND=" + dev-libs/expat + >=media-libs/gd-2.0.12[truetype,jpeg,png,zlib] + media-libs/giflib + net-misc/curl + virtual/jpeg:= + virtual/libiconv + x11-libs/agg + apache? ( + dev-libs/fcgi + app-admin/webapp-config + ) + bidi? ( dev-libs/fribidi + media-libs/harfbuzz ) + cairo? ( x11-libs/cairo ) + gdal? ( sci-libs/gdal:=[oracle?] ) + geos? ( sci-libs/geos ) + mysql? ( virtual/mysql ) + opengl? ( + media-libs/ftgl + media-libs/mesa + ) + oracle? ( + dev-db/oracle-instantclient:= + ) + perl? ( dev-lang/perl:= ) + postgis? ( dev-db/postgis ) + proj? ( sci-libs/proj net-misc/curl ) + tiff? ( + media-libs/tiff:= + sci-libs/libgeotiff + ) + xml? ( dev-libs/libxml2:2 ) + xslt? ( dev-libs/libxslt[crypt] ) +" +DEPEND="${RDEPEND} + perl? ( >=dev-lang/swig-2.0 ) + python? ( >=dev-lang/swig-2.0 )" + +want_apache2 apache + +PATCHES=( + "${FILESDIR}/${PN}-7.0.0-sec-format.patch" # see https://github.com/mapserver/mapserver/pull/5248 + "${FILESDIR}/${PN}-7.0.0-no-applicable-code.patch" + "${FILESDIR}/${PN}-7.0.0-missing-nzz18.patch" + "${FILESDIR}/${P}-missing-macro.patch" +) + +S=${WORKDIR}/${MY_P} + +pkg_setup() { + if use apache ; then + webapp_pkg_setup + fi + use perl && perl_set_version + #use ruby && ruby-ng_pkg_setup +} + +src_unpack() { + default + # HACK: Make symlinks for php targets + local slot + for slot in $(php_get_slots); do + ln -s "${PHP_EXT_S}" "${WORKDIR}/${slot}" || die + done +} + +src_prepare() { + local glibdir="${EPREFIX}/usr/include/glib-2.0" + local usrglibdir="${EPREFIX}/usr/$(get_libdir)/glib-2.0/include" + + sed -e "s:^include_directories(:&${glibdir})\ninclude_directories(:" \ + -i "${S}/CMakeLists.txt" || die + sed -e "s:include_directories(:&${usrglibdir})\ninclude_directories(:" \ + -i "${S}/CMakeLists.txt" || die + + # For enable compilation with proj-6 + if use proj ; then + append-cppflags -DACCEPT_USE_OF_DEPRECATED_PROJ_API_H=1 + fi + + cmake-utils_src_prepare +} + +src_configure() { + local mycmakeargs=( + "-DCMAKE_SKIP_RPATH=ON" + "-DWITH_SDE=OFF" + "-DWITH_ICONV=ON" + "-DWITH_GD=ON" + "-DWITH_GIF=ON" + "-DWITH_CURL=ON" + "-DINSTALL_LIB_DIR=${ROOT}usr/$(get_libdir)" + "-DWITH_APACHE_MODULE=$(usex apache ON OFF)" + "-DWITH_PROJ=$(usex proj ON OFF)" + "-DWITH_WMS=$(usex proj ON OFF)" + "-DWITH_KML=$(usex xml ON OFF)" + "-DWITH_FCGI=$(usex apache ON OFF)" + "-DWITH_GEOS=$(usex geos ON OFF)" + "-DWITH_GDAL=$(usex gdal ON OFF)" + "-DWITH_OGR=$(usex gdal ON OFF)" + "-DWITH_ORACLESPATIAL=$(usex oracle ON OFF)" + "-DWITH_POSTGIS=$(usex postgis ON OFF)" + "-DWITH_MYSQL=$(usex mysql ON OFF)" + "-DWITH_LIBXML2=$(usex xml ON OFF)" + "-DWITH_XMLMAPFILE=$(usex xslt ON OFF)" + "-DWITH_FRIBIDI=$(usex bidi ON OFF)" + "-DWITH_HARFBUZZ=$(usex bidi ON OFF)" + "-DWITH_CAIRO=$(usex cairo ON OFF)" + "-DWITH_PHP=$(usex php ON OFF)" + "-DWITH_PYTHON=$(usex python ON OFF)" + "-DWITH_PERL=$(usex perl ON OFF)" + ) + + if use gdal && use proj ; then + mycmakeargs+=( "-DWITH_WFS=ON" + "-DWITH_WCS=ON" + "-DWITH_CLIENT_WMS=ON" + "-DWITH_CLIENT_WFS=ON" + "-DWITH_SOS=$(usex xml ON OFF)" + ) + else + mycmakeargs+=( "-DWITH_WFS=OFF" + "-DWITH_WCS=OFF" + "-DWITH_CLIENT_WMS=OFF" + "-DWITH_CLIENT_WFS=OFF" + "-DWITH_SOS=OFF" + ) + fi + + if use php ; then + local slot + for slot in $(php_get_slots); do + local php_config="${EPREFIX}/usr/$(get_libdir)/${slot}/bin/php-config" + [[ -x ${php_config} ]] \ + || die "php-config '${php_config}' not valid or not executable" + + local php_include_dir=$(${php_config} --include-dir) + [[ -d ${php_include_dir} ]] || die "PHP Include dir not found or not valid" + + mycmakeargs+=( + -DPHP5_CONFIG_EXECUTABLE="${php_config}" + -DPHP5_INCLUDES="${php_include_dir}" + ) + done + fi + + cmake-utils_src_configure +} + +src_compile() { + cmake-utils_src_compile +} + +src_install() { + if use apache ; then + webapp_src_preinst + fi + + cmake-utils_src_install + + if use php ; then + php-ext-source-r3_createinifiles + fi + + if use apache ; then + webapp_src_install + fi +} + +pkg_postinst() { + if use apache ; then + webapp_pkg_postinst + fi +} + +pkg_prerm() { + if use apache ; then + webapp_pkg_prerm + fi +} diff --git a/sci-geosciences/mapserver/metadata.xml b/sci-geosciences/mapserver/metadata.xml index c7d7490388ea..bc9652c1add9 100644 --- a/sci-geosciences/mapserver/metadata.xml +++ b/sci-geosciences/mapserver/metadata.xml @@ -6,6 +6,7 @@ <name>Gentoo Geosciences Project</name> </maintainer> <use> + <flag name="apache">Enable mapserver to run under apache</flag> <flag name="gdal">Enable <pkg>sci-libs/gdal</pkg> library support</flag> <flag name="geos">Enable <pkg>sci-libs/geos</pkg> library support</flag> <flag name="postgis">Enable <pkg>dev-db/postgis</pkg> support</flag> |