diff options
author | Aaron W. Swenson <titanofold@gentoo.org> | 2014-01-27 00:10:33 +0000 |
---|---|---|
committer | Aaron W. Swenson <titanofold@gentoo.org> | 2014-01-27 00:10:33 +0000 |
commit | 50fbf1966302056ecd0b189eefe1f66ee4ac93f5 (patch) | |
tree | 16f54843280561a4aec9c3c036b2e11b4a201735 /sci-libs | |
parent | version bump (diff) | |
download | gentoo-2-50fbf1966302056ecd0b189eefe1f66ee4ac93f5.tar.gz gentoo-2-50fbf1966302056ecd0b189eefe1f66ee4ac93f5.tar.bz2 gentoo-2-50fbf1966302056ecd0b189eefe1f66ee4ac93f5.zip |
Fix bug 493236: Depend on Perl conditionally. Thanks Nikoli.
Fix bug 492338: Version bump. Thanks Stephan Litterst.
Fix bug 483074: Convert to python-r1 to support multiple Pythons. Thanks
Ian Stakenvicius.
Fix bug 466114: Append -lisqlite3 to LIBS. Thanks cmuelle8.
Fix bug 482888: Modify poppler dependency to have a minimum
version (>=0.24.3).
Fix bug 490048: Add dev-libs/libpcre and dev-libs/libxml2 to RDEPEND
Fix bug 489224: Add sub-slot operator to trigger rebuild when poppler or
Perl is updated. Thanks Nikoli.
Fix bug 490046: Resolved by sci-libs/gdal version bump.
Fix bug 474678: Really include the patch this time.
(Portage version: 2.2.7/cvs/Linux x86_64, signed Manifest commit with key D1BBFDA0)
Diffstat (limited to 'sci-libs')
-rw-r--r-- | sci-libs/gdal/ChangeLog | 21 | ||||
-rw-r--r-- | sci-libs/gdal/files/gdal-1.10.0-ruby-makefile.patch | 47 | ||||
-rw-r--r-- | sci-libs/gdal/gdal-1.10.1.ebuild | 340 |
3 files changed, 406 insertions, 2 deletions
diff --git a/sci-libs/gdal/ChangeLog b/sci-libs/gdal/ChangeLog index b7c5bef6ed1c..a99297042271 100644 --- a/sci-libs/gdal/ChangeLog +++ b/sci-libs/gdal/ChangeLog @@ -1,6 +1,23 @@ # ChangeLog for sci-libs/gdal -# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sci-libs/gdal/ChangeLog,v 1.140 2013/06/24 23:48:21 titanofold Exp $ +# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/gdal/ChangeLog,v 1.141 2014/01/27 00:10:33 titanofold Exp $ + +*gdal-1.10.1 (26 Jan 2014) + + 26 Jan 2014; Aaron W. Swenson <titanofold@gentoo.org> + +files/gdal-1.10.0-ruby-makefile.patch, +gdal-1.10.1.ebuild: + Fix bug 493236: Depend on Perl conditionally. Thanks Nikoli. + Fix bug 492338: Version bump. Thanks Stephan Litterst. + Fix bug 483074: Convert to python-r1 to support multiple Pythons. Thanks + Ian Stakenvicius. + Fix bug 466114: Append -lisqlite3 to LIBS. Thanks cmuelle8. + Fix bug 482888: Modify poppler dependency to have a minimum + version (>=0.24.3). + Fix bug 490048: Add dev-libs/libpcre and dev-libs/libxml2 to RDEPEND + Fix bug 489224: Add sub-slot operator to trigger rebuild when poppler or + Perl is updated. Thanks Nikoli. + Fix bug 490046: Resolved by sci-libs/gdal version bump. + Fix bug 474678: Really include the patch this time. *gdal-1.10.0-r1 (24 Jun 2013) diff --git a/sci-libs/gdal/files/gdal-1.10.0-ruby-makefile.patch b/sci-libs/gdal/files/gdal-1.10.0-ruby-makefile.patch new file mode 100644 index 000000000000..cc89200c526d --- /dev/null +++ b/sci-libs/gdal/files/gdal-1.10.0-ruby-makefile.patch @@ -0,0 +1,47 @@ +diff -Naurw gdal-1.10.0.orig/swig/ruby/RubyMakefile.mk gdal-1.10.0/swig/ruby/RubyMakefile.mk +--- gdal-1.10.0.orig/swig/ruby/RubyMakefile.mk 2013-04-24 18:55:26.000000000 +0000 ++++ gdal-1.10.0/swig/ruby/RubyMakefile.mk 2013-06-25 23:58:06.464518830 +0000 +@@ -37,13 +37,13 @@ + + ifeq ("$(shell uname -s)", "Darwin") + RUBY_MODULES=$(RUBY_MODULES_MAC) +-LDFLAGS += -Xcompiler -bundle -L$(RUBY_LIB_DIR) +-RUBY_LIB := -l$(RUBY_SO_NAME) + else + RUBY_MODULES=$(RUBY_MODULES_LIN) +-LDFLAGS += -Xcompiler -shared -L$(RUBY_LIB_DIR) +-RUBY_LIB := -l$(RUBY_SO_NAME) + endif ++LDFLAGS += -fPIC -DPIC -shared -L$(RUBY_LIB_DIR) ++CFLAGS += -fPIC -DPIC ++CXXFLAGS += -fPIC -DPIC ++RUBY_LIB := -l$(RUBY_SO_NAME) + + build: $(RUBY_MODULES) + +@@ -56,10 +56,10 @@ + veryclean: clean + rm -f *_wrap.cpp + +-$(INSTALL_DIR): ++$(DESTDIR)$(INSTALL_DIR): + mkdir -p $(DESTDIR)$(INSTALL_DIR) + +-install: $(INSTALL_DIR) ++install: $(DESTDIR)$(INSTALL_DIR) $(RUBY_MODULES) + for i in $(RUBY_MODULES) ; do $(INSTALL) $$i $(DESTDIR)$(INSTALL_DIR) ; done + + $(RUBY_MODULES_MAC): %.bundle: %_wrap.o +@@ -69,10 +69,10 @@ + $(LD) $(LDFLAGS) $(LIBS) $(GDAL_SLIB_LINK) $(RUBY_LIB) $< -o $@ + + %.o: %.cpp +- $(CXX) $(CFLAGS) $(GDAL_INCLUDE) $(RUBY_INCLUDE) -c $< ++ $(CXX) $(CXXFLAGS) $(GDAL_INCLUDE) $(RUBY_INCLUDE) -c $< + + %.o: %.cxx +- $(CXX) $(CFLAGS) $(GDAL_INCLUDE) $(RUBY_INCLUDE) -c $< ++ $(CXX) $(CXXFLAGS) $(GDAL_INCLUDE) $(RUBY_INCLUDE) -c $< + + %.o: %.c + $(CC) $(CFLAGS) $(GDAL_INCLUDE) $(RUBY_INCLUDE) -c $< diff --git a/sci-libs/gdal/gdal-1.10.1.ebuild b/sci-libs/gdal/gdal-1.10.1.ebuild new file mode 100644 index 000000000000..d4c089b61268 --- /dev/null +++ b/sci-libs/gdal/gdal-1.10.1.ebuild @@ -0,0 +1,340 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-libs/gdal/gdal-1.10.1.ebuild,v 1.1 2014/01/27 00:10:33 titanofold Exp $ + +EAPI=5 + +WANT_AUTOCONF="2.5" + +GENTOO_DEPEND_ON_PERL="no" +PYTHON_COMPAT=( python2_{5..7} python3_{1..3} ) +DISTUTILS_OPTIONAL=1 + +inherit autotools eutils libtool perl-module distutils-r1 python-r1 toolchain-funcs java-pkg-opt-2 + +DESCRIPTION="Translator library for raster geospatial data formats (includes OGR support)" +HOMEPAGE="http://www.gdal.org/" +SRC_URI="http://download.osgeo.org/${PN}/${PV}/${P}.tar.gz" + +SLOT="0" +LICENSE="MIT" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" +IUSE="armadillo +aux_xml curl debug doc ecwj2k fits geos gif gml hdf5 java jpeg jpeg2k mdb mysql netcdf odbc opencl ogdi pdf perl png postgres python ruby spatialite sqlite threads xls" + +RDEPEND=" + dev-libs/expat + dev-libs/libpcre + dev-libs/libxml2 + media-libs/tiff + sci-libs/libgeotiff + sys-libs/zlib[minizip(+)] + armadillo? ( sci-libs/armadillo[lapack] ) + curl? ( net-misc/curl ) + ecwj2k? ( sci-libs/libecwj2 ) + fits? ( sci-libs/cfitsio ) + geos? ( >=sci-libs/geos-2.2.1 ) + gif? ( media-libs/giflib ) + gml? ( >=dev-libs/xerces-c-3 ) + hdf5? ( >=sci-libs/hdf5-1.6.4[szip] ) + java? ( >=virtual/jre-1.6 ) + jpeg? ( virtual/jpeg ) + jpeg2k? ( media-libs/jasper ) + mysql? ( virtual/mysql ) + netcdf? ( sci-libs/netcdf ) + odbc? ( dev-db/unixODBC ) + ogdi? ( sci-libs/ogdi ) + opencl? ( virtual/opencl ) + pdf? ( >=app-text/poppler-0.24.3:= ) + perl? ( dev-lang/perl:= ) + png? ( media-libs/libpng ) + postgres? ( >=dev-db/postgresql-base-8.4 ) + python? ( + ${PYTHON_DEPS} + dev-python/setuptools[${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + ) + ruby? ( dev-lang/ruby:1.9 ) + sqlite? ( dev-db/sqlite:3 ) + spatialite? ( dev-db/spatialite ) + xls? ( dev-libs/freexl ) +" + +SWIG_DEP=">=dev-lang/swig-2.0.2" +DEPEND="${RDEPEND} + doc? ( app-doc/doxygen ) + java? ( >=virtual/jdk-1.6 ) + perl? ( ${SWIG_DEP} ) + python? ( ${SWIG_DEP} ) + ruby? ( ${SWIG_DEP} )" + +AT_M4DIR="${S}/m4" + +REQUIRED_USE=" + spatialite? ( sqlite ) + mdb? ( java ) +" + +pkg_setup() { + java-pkg-opt-2_pkg_setup +} + +src_prepare() { + java-pkg-opt-2_src_prepare + + # fix datadir and docdir placement + sed -i \ + -e "s:@datadir@:@datadir@/gdal:" \ + -e "s:@exec_prefix@/doc:@exec_prefix@/share/doc/${PF}/html:g" \ + "${S}"/GDALmake.opt.in || die + + # the second sed expression should fix bug 371075 + sed -i \ + -e "s:setup.py install:setup.py install --root=\$(DESTDIR):" \ + -e "s:--prefix=\$(DESTDIR):--prefix=:" \ + "${S}"/swig/python/GNUmakefile || die + + epatch "${FILESDIR}"/${PN}-1.10.0-ruby-makefile.patch + + # -soname is only accepted by GNU ld/ELF + [[ ${CHOST} == *-darwin* ]] \ + && epatch "${FILESDIR}"/${PN}-1.5.0-install_name.patch \ + || epatch "${FILESDIR}"/${PN}-1.5.0-soname.patch + + # Fix spatialite/sqlite include issue + sed -i \ + -e 's:spatialite/sqlite3.h:sqlite3.h:g' \ + ogr/ogrsf_frmts/sqlite/ogr_sqlite.h || die + + # Fix freexl configure check + sed -i \ + -e 's:FREEXL_LIBS=missing):FREEXL_LIBS=missing,-lm):g' \ + configure.in || die + + sed \ + -e "s: /usr/: \"${EPREFIX}\"/usr/:g" \ + -i configure.in || die + + sed \ + -e 's:^ar:$(AR):g' \ + -i ogr/ogrsf_frmts/sdts/install-libs.sh || die + + tc-export AR RANLIB + + eautoreconf + + prepare_python() { + mkdir -p "${BUILD_DIR}" || die + find "${S}" -type d -maxdepth 1 -exec ln -s {} "${BUILD_DIR}"/ \; ||die + find "${S}" -type f -maxdepth 1 -exec cp --target="${BUILD_DIR}"/ {} + ||die +# mkdir -p "${BUILD_DIR}"/swig/python || die +# mkdir -p "${BUILD_DIR}"/apps || die +# cp -dpR --target="${BUILD_DIR}"/swig/ \ +# "${S}"/swig/{python,SWIGmake.base,GNUmakefile} || die +# ln -s "${S}"/swig/include "${BUILD_DIR}"/swig/ || die +# ln -s "${S}"/apps/gdal-config "${BUILD_DIR}"/apps/ || die +# ln -s "${S}"/port "${BUILD_DIR}"/ || die + } + if use python; then + python_foreach_impl prepare_python + fi +} + +gdal_src_configure() { + local myopts="" + + if use ruby; then + RUBY_MOD_DIR="$(ruby19 -r rbconfig -e 'print RbConfig::CONFIG["sitearchdir"]')" + echo "Ruby module dir is: $RUBY_MOD_DIR" + fi + + if use java; then + myopts+=" + --with-java=$(java-config --jdk-home 2>/dev/null) + $(use_with mdb)" + else + myopts+=" --without-java --without-mdb" + use mdb && ewarn "mdb requires java use enabled. disabling" + fi + + if use sqlite; then + myopts+=" LIBS=-lsqlite3" + fi + + # pcidsk is internal, because there is no such library yet released + # also that thing is developed by the gdal people + # kakadu, mrsid jp2mrsid - another jpeg2k stuff, ignore + # bsb - legal issues + # oracle - disabled, i dont have and can't test + # ingres - same story as oracle oci + # podofo - we use poppler instead they are exclusive for each other + # tiff is a hard dep + ECONF_SOURCE="${S}" econf \ + --disable-static \ + --enable-shared \ + --with-expat \ + --with-geotiff \ + --with-grib \ + --with-libtiff \ + --with-libz="${EPREFIX}/usr/" \ + --with-ogr \ + --without-bsb \ + --without-dods-root \ + --without-dwgdirect \ + --without-epsilon \ + --without-fme \ + --without-grass \ + --without-hdf4 \ + --without-idb \ + --without-ingres \ + --without-jp2mrsid \ + --without-kakadu \ + --without-libtool \ + --without-mrsid \ + --without-msg \ + --without-oci \ + --without-pcraster \ + --without-podofo \ + --without-sde \ + $(use_enable debug) \ + $(use_with armadillo) \ + $(use_with aux_xml pam) \ + $(use_with curl) \ + $(use_with ecwj2k ecw) \ + $(use_with fits cfitsio) \ + $(use_with geos) \ + $(use_with gif) \ + $(use_with gml xerces) \ + $(use_with hdf5) \ + $(use_with jpeg pcidsk) \ + $(use_with jpeg) \ + $(use_with jpeg2k jasper) \ + $(use_with mysql mysql "${EPREFIX}"/usr/bin/mysql_config) \ + $(use_with netcdf) \ + $(use_with odbc) \ + $(use_with ogdi ogdi "${EPREFIX}"/usr) \ + $(use_with opencl) \ + $(use_with pdf poppler) \ + $(use_with perl) \ + $(use_with png) \ + $(use_with postgres pg) \ + $(use_with python) \ + $(use_with ruby) \ + $(use_with spatialite) \ + $(use_with sqlite sqlite3 "${EPREFIX}"/usr) \ + $(use_with threads) \ + $(use_with xls freexl) \ + ${myopts} + + # mysql-config puts this in (and boy is it a PITA to get it out) + if use mysql; then + sed -i \ + -e "s: -rdynamic : :" \ + GDALmake.opt || die "sed LIBS failed" + fi + + if [[ -n $use_python ]]; then + # updated for newer swig (must specify the path to input files) + sed -i \ + -e "s: gdal_array.i: ../include/gdal_array.i:" \ + -e "s:\$(DESTDIR)\$(prefix):\$(DESTDIR)\$(INST_PREFIX):g" \ + swig/python/GNUmakefile || die "sed python makefile failed" + sed -i \ + -e "s:library_dirs = :library_dirs = /usr/$(get_libdir):g" \ + swig/python/setup.cfg || die "sed python setup.cfg failed" +# -e "s:gdal_config=.*$:gdal_config=../../../apps/gdal-config:g" \ + fi +} + +src_configure() { + local use_python="" + + gdal_src_configure + + if use python; then + use_python="yes" + python_foreach_impl run_in_build_dir gdal_src_configure + fi +} + +src_compile() { + local i + for i in perl ruby; do + if use $i; then + rm "${S}"/swig/$i/*_wrap.cpp + emake -C "${S}"/swig/$i generate + fi + done + + default + + if use perl ; then + pushd "${S}"/swig/perl > /dev/null + perl-module_src_prep + perl-module_src_compile + popd > /dev/null + fi + + use doc && emake docs + + compile_python() { + rm -f swig/python/*_wrap.cpp + emake -C swig/python generate + emake -C swig/python build + } + if use python; then + python_foreach_impl run_in_build_dir compile_python + fi +} + +src_install() { + if use perl ; then + pushd "${S}"/swig/perl > /dev/null + perl-module_src_install + popd > /dev/null + sed -i \ + -e "s:BINDINGS = python ruby perl:BINDINGS = python ruby:g" \ + GDALmake.opt || die + fi + + default + + if use ruby ; then + # weird reinstall collision; needs manual intervention... + pushd "${S}"/swig/ruby > /dev/null + rm -rf "${D}"${RUBY_MOD_DIR}/gdal + exeinto ${RUBY_MOD_DIR}/gdal + doexe *.so || die "doins ruby modules failed" + popd > /dev/null + fi + + use perl && fixlocalpod + + dodoc Doxyfile HOWTO-RELEASE NEWS + + if use doc ; then + dohtml html/* + docinto ogr + dohtml ogr/html/* + fi + + install_python() { + emake -C swig/python DESTDIR="${D}" install + } + if use python; then + python_foreach_impl run_in_build_dir install_python + newdoc swig/python/README.txt README-python.txt + insinto /usr/share/${PN}/samples + doins swig/python/samples/* + fi + + pushd man/man1 > /dev/null + for i in * ; do + newman ${i} ${i} + done + popd > /dev/null +} + +pkg_postinst() { + elog "Check available image and data formats after building with" + elog "gdalinfo and ogrinfo (using the --formats switch)." +} |