diff options
author | Tiziano Müller <dev-zero@gentoo.org> | 2008-06-28 19:27:43 +0000 |
---|---|---|
committer | Tiziano Müller <dev-zero@gentoo.org> | 2008-06-28 19:27:43 +0000 |
commit | ef19e4e5cf24b6d07f22286b5600d14e7c846e30 (patch) | |
tree | d8aca4d12ac49a3a5fd21800399292ec051ff6be /dev-libs/dbxml/dbxml-2.4.13.2.ebuild | |
parent | version bump - bug #207306 - thanks Florian (diff) | |
download | gentoo-2-ef19e4e5cf24b6d07f22286b5600d14e7c846e30.tar.gz gentoo-2-ef19e4e5cf24b6d07f22286b5600d14e7c846e30.tar.bz2 gentoo-2-ef19e4e5cf24b6d07f22286b5600d14e7c846e30.zip |
Moved to the tree (with a lot of changes)
(Portage version: 2.2_rc1/cvs/Linux 2.6.24-gentoo-r8 x86_64)
Diffstat (limited to 'dev-libs/dbxml/dbxml-2.4.13.2.ebuild')
-rw-r--r-- | dev-libs/dbxml/dbxml-2.4.13.2.ebuild | 188 |
1 files changed, 188 insertions, 0 deletions
diff --git a/dev-libs/dbxml/dbxml-2.4.13.2.ebuild b/dev-libs/dbxml/dbxml-2.4.13.2.ebuild new file mode 100644 index 000000000000..8c2086f2edde --- /dev/null +++ b/dev-libs/dbxml/dbxml-2.4.13.2.ebuild @@ -0,0 +1,188 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/dbxml/dbxml-2.4.13.2.ebuild,v 1.1 2008/06/28 19:27:42 dev-zero Exp $ + +EAPI="1" + +inherit flag-o-matic perl-app python eutils versionator multilib java-pkg-opt-2 + +MY_PV="$(get_version_component_range 1-3)" +MY_P="${PN}-${MY_PV}" +PATCH_V="$(get_version_component_range 4)" +PATCH_V="${PATCH_V:-0}" + +DESCRIPTION="BerkeleyDB XML, a native XML database from the BerkeleyDB team" +HOMEPAGE="http://www.oracle.com/database/berkeley-db/xml/index.html" +SRC_URI="http://download-east.oracle.com/berkeley-db/${MY_P}.tar.gz + http://download-west.oracle.com/berkeley-db/${MY_P}.tar.gz + http://download-uk.oracle.com/berkeley-db/${MY_P}.tar.gz" +LICENSE="OracleDB Apache-1.1 BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="doc examples java perl python tcl" + +RDEPEND="sys-libs/db:4.6 + =dev-libs/xerces-c-2.8* + >=dev-libs/xqilla-2.1.2 + perl? ( dev-lang/perl ) + python? ( + dev-lang/python:2.5 + >=dev-python/bsddb3-4.5.0 ) + tcl? ( dev-lang/tcl ) + java? ( >=virtual/jre-1.5 )" +DEPEND="${RDEPEND} + java? ( >=virtual/jdk-1.5 )" + +get_patches() { + local patches="" + local patch_v=1 + while [ ${patch_v} -le ${PATCH_V} ] ; do + patches="${patches} patch.${MY_PV}.${patch_v}" + let "patch_v = ${patch_v} + 1" + done + echo ${patches} +} + +for patch in $(get_patches) ; do + SRC_URI="${SRC_URI} + http://www.oracle.com/technology/products/berkeley-db/xml/update/${MY_PV}/${patch}" +done + +S="${WORKDIR}/${MY_P}/dbxml" + +DB_VER="4.6" + +pkg_setup() { + if built_with_use sys-libs/db:${DB_VER} nocxx ; then + eerror "dev-libs/db:${DB_VER} must be built without nocxx USE-flag" + die "dev-libs/db:${DB_VER} must be built without nocxx USE-flag" + fi + if use java && ! built_with_use sys-libs/db:${DB_VER} java ; then + eerror "dev-libs/db:${DB_VER} must be built with java USE-flag" + die "dev-libs/db:${DB_VER} must be built with java USE-flag" + fi + java-pkg-opt-2_pkg_setup +} + +src_unpack() { + unpack ${MY_P}.tar.gz + cd "${S}" + + for patch in $(get_patches) ; do + epatch "${DISTDIR}/${patch}" + done + + epatch "${FILESDIR}/${MY_PV}-as_needed.patch" + + # sys-libs/db is slotted on Gentoo + sed -i \ + -e "s:db_version=.*:db_version=4.6:" \ + dist/configure || die "sed failed" + if use java ; then + sed -i \ + -e "s|\$with_berkeleydb/lib/db.jar|$(java-pkg_getjars db-${DB_VER})|" \ + dist/configure || die "sed failed" + fi + + # * Fix libraries to link + # * Strip "../../build_unix/.libs" from LIBPATH or it'll + # show up in the RPATH entry + sed -i \ + -e "s|dbxml-2|dbxml-$(get_version_component_range 1-2)|" \ + -e "s|db_cxx-4|db_cxx-${DB_VER}|" \ + -e 's|"../../build_unix/.libs",||' \ + src/python/setup.py.in || die "sed failed" + + sed -i \ + -e "s|dbxml-2|dbxml-$(get_version_component_range 1-2)|" \ + -e "s|db_cxx-4|db_cxx-${DB_VER}|" \ + -e "s|@DB_DIR@/lib|/usr/$(get_libdir)|" \ + -e "s|@DB_DIR@/include|/usr/include/db${DB_VER}|" \ + -e "s|@XERCES_DIR@/lib|/usr/$(get_libdir)|" \ + -e "s|@XQILLA_DIR@/lib|/usr/$(get_libdir)|" \ + src/perl/config.in || die "sed failed" +} + +src_compile() { + cd "${S}/build_unix" + + #Needed despite db_version stuff above + append-flags -I/usr/include/db4.6 + + local myconf="" + + # use_enable doesn't work here due to a different syntax + use java && myconf="${myconf} --enable-java" + use tcl && myconf="${myconf} --enable-tcl --with-tcl=/usr/$(get_libdir)" + + ECONF_SOURCE=../dist + export ac_cv_prog_path_strip="missing_strip" + JAVAPREFIX="${JAVA_HOME}" \ + econf \ + --with-berkeleydb=/usr \ + --with-xqilla=/usr \ + --with-xerces=/usr \ + ${myconf}|| die "econf failed" + ECONF_SOURCE= + emake -j1 || die "emake failed" + + if use python ; then + einfo "Compiling python extension" + cd "${S}/src/python" + append-ldflags "-L../../build_unix/.libs" + python_version + "${python}" setup.py build || die "python build failed" + fi + + if use perl ; then + cd "${S}/src/perl" + perl-app_src_prep + perl-app_src_compile + fi +} + +src_install() { + cd "${S}/build_unix" + + # somewhat broken build system + einstall || die "einstall failed" + + use doc && dohtml -A pdf -r "${D}"/usr/docs/* + rm -rf "${D}/usr/docs" + + if use java ; then + java-pkg_dojar "${D}/usr/$(get_libdir)/dbxml.jar" + rm "${D}/usr/$(get_libdir)/dbxml.jar" + fi + + if use python ; then + cd "${S}/src/python" + python_version + "${python}" setup.py install --root="${D}" --no-compile || die "python install failed" + fi + + if use perl ; then + cd "${S}/src/perl" + emake DESTDIR="${D}" install || die "emake install perl module failed" + fi + + if use examples ; then + insinto /usr/share/doc/${PF} + doins -r "${S}/examples" + fi + +} + +pkg_postinst() { + if use python ; then + python_version + python_mod_optimize /usr/$(get_libdir)/python${PYVER}/site-packages + fi +} + +pkg_postrm() { + if use python ; then + python_version + python_mod_cleanup /usr/$(get_libdir)/python${PYVER}/site-packages + fi +} |