# Copyright 1999-2007 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 inherit autotools distutils eutils flag-o-matic toolchain-funcs versionator python multilib DESCRIPTION="SALOME : The Open Source Integration Platform for Numerical Simulation. KERNEL Component" HOMEPAGE="http://www.salome-platform.org" SRC_URI="salome-3.2.6.tar.gz" LICENSE="GPL-2" KEYWORDS="~amd64 ~x86" SLOT="0" IUSE="doc corba opengl openpbs mpi debug X" RESTRICT="fetch" RDEPEND="opengl? ( virtual/opengl ) mpi? ( sys-cluster/mpich2 ) debug? ( dev-util/cppunit ) openpbs? ( sys-cluster/torque ) corba? ( <=dev-python/omniorbpy-2.6 <=net-misc/omniORB-4.1 )" DEPEND="${RDEPEND} app-doc/doxygen media-gfx/graphviz dev-libs/boost dev-lang/python:2.4 >=dev-python/PyQt-3.13 >=dev-python/sip-4.1.3 dev-python/numeric dev-python/docutils dev-lang/swig x11-libs/qwt:0 >=x11-libs/qt-3.3.3 dev-lang/tk dev-lang/tcl sci-libs/hdf5 >=sci-libs/vtk-5.0.0 >=sci-libs/opencascade-6.2" MODULE_NAME="KERNEL" MY_S="${WORKDIR}/src${PV}/${MODULE_NAME}_SRC_${PV}" INSTALL_DIR="/opt/salome-${PV}/${MODULE_NAME}" KERNEL_ROOT_DIR="/opt/salome-${PV}/${MODULE_NAME}" export OPENPBS="/usr" pkg_nofetch() { einfo "You have to download manually the source code. You can download it from :" einfo " http://www.salome-platform.org/download/dl326" einfo "" einfo "Put the archive in the \"/usr/portage/distfile\" directory and rename it \"salome-3.2.6.tar.gz\"" } src_unpack() { python_version distutils_python_version ewarn "Python 2.4 is highly recommended for Salome..." if ! built_with_use sci-libs/vtk python ; then die "You must rebuild sci-libs/vtk with python USE flag" fi unpack ${A} cd ${MY_S} epatch ${FILESDIR}/salome-kernel-3.2.6_openpbs.patch epatch ${FILESDIR}/${P}-Batch_Couple.patch # If Python 2.5 is planned to be used, the following patch must be applied. This, however, needs # to be thoroughly tested! #epatch ${FILESDIR}/${P}-pyobject.patch # Correct the Salome version number sed -i "s:3.2.5:3.2.6:g" configure.ac ./clean_configure ./build_configure } src_compile() { cd ${MY_S} local myconf="--with-tcl=/usr/lib/ --with-tk=/usr/lib/" if use !X; then ewarn "Salome functionnalities imply X support! Check your USE flags configuration." die fi # Compiler and linker flags if use amd64 ; then append-flags -m64 fi # CXXFLAGS are slightly modified to allow the compilation of # salome-kernel with OpenCascade and gcc-4.1.x if version_is_at_least "4.1" $(gcc-version) then append-flags -ffriend-injection -fpermissive fi if use mpi; then myconf="${myconf} --without-mpi --with-mpich" else myconf="${myconf} --without-mpi --without-mpich" fi # Configuration econf --prefix=${INSTALL_DIR} \ --docdir=${INSTALL_DIR}/share/doc/salome \ --infodir=${INSTALL_DIR}/share/info \ --datadir=${INSTALL_DIR}/share/salome \ --libdir=${INSTALL_DIR}/$(get_libdir)/salome \ "${myconf}" \ $(use_enable debug ) \ $(use_enable !debug production ) \ $(use_with debug cppunit /usr ) \ $(use_with opengl ) \ $(use_with openpbs ) \ $(use_enable corba corba-gen) \ || die "configuration failed" # Compilation emake || die "compilation failed" } src_install() { cd ${MY_S} # Installation emake prefix="${D}/${INSTALL_DIR}" \ docdir="${D}/${INSTALL_DIR}/share/doc/salome" \ infodir="${D}/${INSTALL_DIR}/share/info" \ datadir="${D}/${INSTALL_DIR}/share/salome" \ libdir="${D}/${INSTALL_DIR}/$(get_libdir)/salome" install \ || die "emake install failed" echo "KERNEL_ROOT_DIR=${INSTALL_DIR}" > ./90${P} echo "LDPATH=${INSTALL_DIR}/$(get_libdir)/salome" >> ./90${P} echo "PATH=${INSTALL_DIR}/bin/salome" >> ./90${P} echo "PYTHONPATH=${INSTALL_DIR}/lib/python${PYVER}/site-packages/salome" >> ./90${P} doenvd 90${P} if use doc; then dodoc AUTHORS ChangeLog COPYING INSTALL LICENCE NEWS README README.FIRST.txt fi # If use omniORB as corba if use corba; then sed -i 's@import CORBA@from omniORB import CORBA@' ${D}/${INSTALL_DIR}/bin/salome/runSalome.py fi }