# Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ EAPI="3" inherit eutils java-pkg-2 java-ant-2 java-pkg-simple MY_PN="SweetHome3D" DESCRIPTION="Sweet Home 3D is a free interior design application." HOMEPAGE="http://www.sweethome3d.com/" SRC_URI="mirror://sourceforge/${PN}/${MY_PN}-${PV}-src.zip http://dev.gentoo.org/~fordfrog/distfiles/${PN}.png https://github.com/fpsunflower/sunflow/archive/15fa9c6cc6729934181bb877e67f1d1c13679f89.zip -> sunflow-0.07.3.zip" LICENSE="GPL-3" IUSE="" SLOT="0" KEYWORDS="~amd64 ~x86" COMMON_DEPEND=" =dev-java/freehep-graphics2d-2.1.1 =dev-java/freehep-graphicsio-2.1.1 =dev-java/freehep-graphicsio-emf-2.1.1 =dev-java/freehep-graphicsio-pdf-2.1.1 =dev-java/freehep-graphicsio-ps-2.1.1 =dev-java/freehep-graphicsio-svg-2.1.1 =dev-java/freehep-util-2.0.2 dev-java/freehep-util dev-java/gnu-regexp:1 dev-java/itext:2.1 dev-java/batik:1.7 dev-java/j3d-core:1.6 dev-java/jdepend:0 dev-java/jdom:1.0 dev-java/jmf-bin:0 dev-java/jnlp-api dev-java/vecmath:1.6 dev-java/janino:0" DEPEND=">=virtual/jdk-1.6 app-arch/unzip ${COMMON_DEPEND}" RDEPEND=">=virtual/jre-1.6 ${COMMON_DEPEND}" S="${WORKDIR}/${MY_PN}-${PV}-src" SUNFLOW_PATCH="sunflow-0.07.3i" FREEHEP_PATCH="freehep-vectorgraphics-svg-2.1.1b" # sunflow variables JAVA_GENTOO_CLASSPATH="janino" JAVA_SRC_DIR="${WORKDIR}/${SUNFLOW_PATCH}/src" # sweethome variables EANT_BUILD_TARGET="build furniture textures help" EANT_BUILD_XML="${S}/build.xml" src_unpack() { unpack ${MY_PN}-${PV}-src.zip mkdir ${SUNFLOW_PATCH}-src-diff || die pushd ${SUNFLOW_PATCH}-src-diff >/dev/null || die unpack sunflow-0.07.3.zip mv sunflow-15fa9c6cc6729934181bb877e67f1d1c13679f89/* ./ popd >/dev/null || die unpack ./${MY_PN}-${PV}-src/${SUNFLOW_PATCH}-src-diff.zip mkdir ${FREEHEP_PATCH}-src-diff || die unpack ./${MY_PN}-${PV}-src/${FREEHEP_PATCH}-src-diff.zip einfo "Removing bundled so & jars..." # except AppleJavaExtensions.jar because its anyway binary (and outdated) mv ${S}/libtest/AppleJavaExtensions.jar ${S}/libtest/AppleJavaExtensions.jar.bak find -name "*.jar" -type f | xargs rm -v find -name "*.so" -type f | xargs rm -v mv ${S}/libtest/AppleJavaExtensions.jar.bak ${S}/libtest/AppleJavaExtensions.jar } java_prepare() { # add dependencies into the lib dir pushd "${S}/lib" >/dev/null || die java-pkg_jar-from j3d-core-1.6 java-pkg_jar-from jmf-bin jmf.jar java-pkg_jar-from batik-1.7 batik-all.jar batik-svgpathparser-1.7.jar java-pkg_jar-from vecmath-1.6 java-pkg_jar-from itext-2.1 popd >/dev/null || die pushd "${S}/libtest" >/dev/null || die java-pkg_jar-from jnlp-api jnlp-api.jar jnlp.jar popd >/dev/null || die pushd ${WORKDIR}/${FREEHEP_PATCH}-src-diff >/dev/null || die java-pkg_jar-from --virtual freehep-graphics2d java-pkg_jar-from --virtual freehep-graphicsio java-pkg_jar-from --virtual freehep-graphicsio-emf java-pkg_jar-from --virtual freehep-graphicsio-pdf java-pkg_jar-from --virtual freehep-graphicsio-ps java-pkg_jar-from --virtual freehep-graphicsio-svg # as long as freehep-util-2.1 depends on undocumented # netbeans.util version, we stick to freehep-util-2.0 java-pkg_jar-from --virtual freehep-util popd >/dev/null || die } src_compile() { # create sunflower.jar einfo compile sunflower changes # sunflower changes pushd ${WORKDIR}/${SUNFLOW_PATCH}-src-diff >/dev/null || die JAVA_GENTOO_CLASSPATH="janino" JAVA_SRC_DIR="src" JAVA_JAR_FILENAME=${S}/lib/${SUNFLOW_PATCH}.jar java-pkg-simple_src_compile popd >/dev/null || die #create freehep-vectorgraphics-svg.jar einfo compile freehep-vectorgraphics-svg # freehep-vectorgraphics-svg changes pushd ${WORKDIR}/${FREEHEP_PATCH}-src-diff >/dev/null || die pwd JAVA_CLASSPATH_EXTRA="target/classes" JAVA_SRC_DIR=src JAVA_JAR_FILENAME=${S}/lib/${FREEHEP_PATCH}.jar mkdir -p target/classes cd target/classes for jarFile in $(ls ../../*.jar); do echo ${jarFile} jar xf ${jarFile} done cd ../../ java-pkg-simple_src_compile popd >/dev/null || die # create SweetHome3d # EANT_GENTOO_CLASSPATH="apple-java-extensions-bin" java-pkg-2_src_compile } src_install() { java-pkg_dojar ${S}/build/*.jar # java-pkg_dojar ${S}/lib/*.jar # java-pkg_dojar ${S}/libtest/*.jar # java-pkg_doso ./lib/linux/i386/*.so # java-pkg_dojar ${S}/lib/${FREEHEP_PATCH}.jar # java-pkg_dojar ${S}/lib/${SUNFLOW_PATCH}.jar # create SweetHome3D wrapper script java-pkg_dolauncher ${MY_PN} --main com.eteks.sweethome3d.SweetHome3D \ -Djava.library.path=/usr/$(get_libdir)/${PN} -Xmx1024m doicon deploy/SweetHome3DIcon*.png || die make_desktop_entry SweetHome3D "Sweet Home 3D" ${PN} Graphics }