# Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=4 PYTHON_DEPEND=2 inherit base multilib fortran-2 flag-o-matic python cmake-utils MY_P="freecad-${PV}" DESCRIPTION="QT based Computer Aided Design application" HOMEPAGE="http://sourceforge.net/apps/mediawiki/free-cad/" SRC_URI="mirror://sourceforge/free-cad/${MY_P}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="collada matplot spacenav" RDEPEND=" dev-cpp/eigen:3 dev-games/ode dev-libs/boost dev-libs/libf2c dev-libs/xerces-c dev-python/pivy dev-python/pyopencl dev-python/PyQt4[svg] media-libs/coin media-libs/SoQt >=sci-libs/opencascade-6.5 sci-libs/gts sys-libs/zlib virtual/glu dev-qt/qtgui:4 dev-qt/qtopengl:4 dev-qt/qtsvg:4 dev-qt/qtwebkit:4 dev-qt/qtxmlpatterns:4 spacenav? ( >=dev-libs/libspnav-0.2.2[X] ) matplot? ( dev-python/matplotlib ) collada? ( dev-python/pycollada )" DEPEND="${RDEPEND} >=dev-lang/swig-2.0.4-r1" RESTRICT="bindist mirror" # http://bugs.gentoo.org/show_bug.cgi?id=352435 # http://www.gentoo.org/foundation/en/minutes/2011/20110220_trustees.meeting_log.txt PATCHES=( # removes the Qt3 function qPixmapFromMimeSource from ui templates. "${FILESDIR}/${P}-removeqt3support.patch" ) #MAKEOPTS="${MAKEOPTS} -j1" pkg_setup() { fortran-2_pkg_setup python_set_active_version 2 } src_prepare() { base_src_prepare append-cxxflags -fpermissive use amd64 && append-cppflags "-D_OCC64" append-ldflags "$(no-as-needed)" append-ldflags "-L${EPREFIX}/usr/lib" append-ldflags "-L${EPREFIX}/usr/local/lib" append-ldflags "-L${EPREFIX}${CASROOT}/$(get_libdir)" append-ldflags "-L${EPREFIX}/usr/share/${PN}/$(get_libdir)" #append-flags "-DBOOST_FILESYSTEM_VERSION=3" } src_configure() { strip-flags if test -f $ROOT/etc/env.d/50opencascade; then einfo "Read Opencascade environment from $ROOT/etc/env.d/50opencascade file" source $ROOT/etc/env.d/50opencascade fi _check_build_dir local mycmakeargs=( -DOCC_INCLUDE_DIR=${CASROOT}/inc -DOCC_INCLUDE_PATH=${CASROOT}/inc -DOCC_LIBRARY=${CASROOT}/$(get_libdir)/libTKernel.so -DOCC_LIBRARY_DIR=${CASROOT}/$(get_libdir) -DOCC_LIB_PATH=${CASROOT}/$(get_libdir) -DCOIN3D_INCLUDE_DIR=${EPREFIX}/usr/include/coin -DCOIN3D_LIBRARY=${EPREFIX}/usr/$(get_libdir)/libCoin.so -DSOQT_LIBRARY=${EPREFIX}/usr/$(get_libdir)/libSoQt.so -DSOQT_INCLUDE_PATH=${EPREFIX}/usr/include/coin -DCOIN3D_INCLUDE_DIR=${EPREFIX}/usr/include/coin -DCMAKE_INSTALL_DO_STRIP=1 -DCMAKE_INSTALL_PREFIX:PATH=${EPREFIX}/usr/share/${PN} -DCMAKE_INSTALL_LIBDIR:PATH=${EPREFIX}/$(get_libdir) -DRESOURCEDIR=${EPREFIX}/usr/share/${PN} -DDOCDIR=${EPREFIX}/usr/share/${P}/doc -DCMAKE_PLATFORM_REQUIRED_RUNTIME_PATH:STATIC="${EPREFIX}/usr/share/${PN}/lib;${CASROOT}/$(get_libdir);${EPREFIX}/usr/${CHOST}/lib/gcc;${EPREFIX}/usr/${CHOST}/lib;${EPREFIX}/usr/$(get_libdir);${EPREFIX}/$(get_libdir)" -DCMAKE_COLOR_MAKEFILE=ON -DCMAKE_MODULE_LINKER_FLAGS="${LDFLAGS} -Wl,-z,now -Wl,-rpath -Wl,${EPREFIX}/usr/share/${PN}/$(get_libdir)" -DCMAKE_SHARED_LINKER_FLAGS="${LDFLAGS} -Wl,-z,now -Wl,-rpath -Wl,${EPREFIX}/usr/share/${PN}/$(get_libdir)" -DFREECAD_BUILD_CAM:BOOL=OFF -DFREECAD_USE_EXTERNAL_PIVY:BOOL=ON -DFREECAD_USE_EXTERNAL_ZIPIOS:BOOL=OFF ) cmake-utils_src_configure find ${WORKDIR}/freecad-${PV} -type f -exec sed -i 's:\x0D$::' {} + } src_install() { cmake-utils_src_install dodir /usr/share/${PN} dodir /usr/share/${PN}/Mod/Start cp -r "${CMAKE_BUILD_DIR}"/Mod/Start/StartPage ${D}/usr/share/${PN}/Mod/Start/StartPage || die "copy StartPage" cp "${S}"/src/Mod/Part/Gui/Resources/icons/*.{xpm,svg} ${D}/usr/share/${PN} || die "copy Icons" find "${D}" -name "*.la" -exec rm {} + insinto /usr/share/pixmaps doins ${S}/src/Gui/Icons/freecad.svg insinto /usr/share/${PN} doins ${S}/src/Gui/Icons/freecadsplash.png make_desktop_entry FreeCAD FreeCAD /usr/share/pixmaps/freecad.svg sed -i "s:Exec=:&${EPREFIX}/usr/share/${PN}/bin/:" ${D}/usr/share/applications/*.desktop dodoc README.Linux ChangeLog.txt }