diff options
author | Thierry Thomas <thierry@FreeBSD.org> | 2010-05-15 15:58:38 +0000 |
---|---|---|
committer | Thierry Thomas <thierry@FreeBSD.org> | 2010-05-15 15:58:38 +0000 |
commit | d4dd342b6d35c9b61a0e45cb3eeea79443472630 (patch) | |
tree | dd62c0ab795007bdc3f1ba8d726a76db145e80b5 /cad/salome | |
parent | 09f4731167d69923f3026827a29fd603242a2aa3 (diff) | |
download | ports-d4dd342b6d35c9b61a0e45cb3eeea79443472630.tar.gz ports-d4dd342b6d35c9b61a0e45cb3eeea79443472630.zip |
Notes
Diffstat (limited to 'cad/salome')
-rw-r--r-- | cad/salome/Makefile | 33 | ||||
-rw-r--r-- | cad/salome/Makefile.ext | 138 | ||||
-rw-r--r-- | cad/salome/files/pkg-message.in | 8 | ||||
-rw-r--r-- | cad/salome/files/runSalome.csh.in | 34 |
4 files changed, 155 insertions, 58 deletions
diff --git a/cad/salome/Makefile b/cad/salome/Makefile index 77f192d32443..975bbadb3638 100644 --- a/cad/salome/Makefile +++ b/cad/salome/Makefile @@ -17,21 +17,25 @@ EXTRACT_ONLY= #none MAINTAINER= devel@stasyan.com -OPTIONS= \ - GEOM "GEOM module" on \ - MED "MED module" on \ +OPTIONS= \ + GEOM "GEOM module" on \ + MED "MED module" on \ SMESH "SMESH module (require MED & GEOM)" on \ - VISU "VISU module (require MED)" on \ - LIGHT "LIGHT module" on \ - YACS "Yacs module" on \ - MULTIPR "Multipr module" on \ - RANDOMIZER "Randomizer module" on \ - SIERPINSKY "Sierpinsky module" on \ + VISU "VISU module (require MED)" on \ + LIGHT "LIGHT module" on \ + YACS "Yacs module" on \ + MULTIPR "Multipr module" on \ + RANDOMIZER "Randomizer module" on \ + SIERPINSKY "Sierpinsky module" on \ CPPUNIT "build with C++ unit testing framework" off \ - MPI "build with support parrallel calculation" off + MPI "build with support parrallel calculation" off RESOURCEDIR= ${DATADIR}/resources +SLAVEDIRS= cad/salome-kernel cad/salome-gui cad/salome-geom cad/salome-light \ + cad/salome-yacs cad/salome-randomizer cad/salome-visu cad/salome-med \ + cad/salome-sierpinsky cad/salome-smesh cad/salome-multipr + .include <bsd.port.options.mk> .if !defined(PKGNAMESUFFIX) @@ -72,8 +76,15 @@ RUN_DEPENDS+= ${RESOURCEDIR}/smesh:${PORTSDIR}/cad/salome-smesh RUN_DEPENDS+= ${RESOURCEDIR}/multipr:${PORTSDIR}/cad/salome-multipr .endif +SUB_LIST= PREFIX=${PREFIX} +SUB_FILES= pkg-message runSalome.csh +PLIST_FILES= bin/runSalome.csh + do-install: - ${DO_NADA} + @${INSTALL_SCRIPT} ${WRKDIR}/runSalome.csh ${PREFIX}/bin/runSalome.csh + +post-install: + @${CAT} ${PKGMESSAGE} .include <bsd.port.post.mk> .else diff --git a/cad/salome/Makefile.ext b/cad/salome/Makefile.ext index 08a0c0a45faf..8d62fb11fa8c 100644 --- a/cad/salome/Makefile.ext +++ b/cad/salome/Makefile.ext @@ -4,13 +4,8 @@ USE_PYTHON= 2.4+ USE_GMAKE= yes USE_LDCONFIG= yes SAL_MODULE= ${PKGNAMESUFFIX:S/-//} -#.if ${SAL_MODULE} == "med" || ${SAL_MODULE} == "smesh" || ${SAL_MODULE} == "visu" || ${SAL_MODULE} == "sierpinsky" || ${SAL_MODULE} == "multipr" -.if !${SAL_MODULE} == "gui" USE_FORTRAN=yes USE_GCC= 4.4 -.else -USE_GCC= 4.5 -.endif #SAL_MODULE_UPPER= `${ECHO} ${SAL_MODULE} | ${AWK} '{ print(toupper($$1)); }'` #SAL_MODULE_UPPER= YACS @@ -37,9 +32,8 @@ HAS_CONFIGURE= yes CONFIGURE_ARGS+= --prefix=${PREFIX} CONFIGURE_ARGS+= --enable-debug CONFIGURE_ENV+= MACHINE=${OPSYS:U} -#CXXFLAGS+= -L${LOCALBASE}/lib -I/usr/include -I${LOCALBASE}/include -D__freebsd__ -DFREEBSD -DHAVE_IOSTREAM -DHAVE_LIMITS_H -DHAVE_IOMANIP -DMPICH_IGNORE_CXX_SEEK CPPFLAGS+= -L${LOCALBASE}/lib -I/usr/include -I${LOCALBASE}/include -D__freebsd__ -DFREEBSD -DHAVE_IOSTREAM -DHAVE_LIMITS_H -DHAVE_IOMANIP -DMPICH_IGNORE_CXX_SEEK -CXXFLAGS+= -ffriend-injection -fno-inline -fpermissive -L${LOCALBASE}/lib -L${LOCALBASE}/lib/salome +CXXFLAGS+= -ffriend-injection -fno-inline -fpermissive -fPIC -L${LOCALBASE}/lib -L${LOCALBASE}/lib/salome CONFIGURE_SCRIPT= ../configure PATCH_WRKSRC= ${WRKDIR}/${DISTNAME}/${SAL_MODULE_UPPER}_SRC_${RELEASENAME} WRKSRC= ${PATCH_WRKSRC} @@ -53,6 +47,7 @@ PATCHDIR= ${MASTERDIR}/../salome-${SAL_MODULE}/files/ .if !${SAL_MODULE} == "kernel" .for D in ${${SAL_MODULE_UPPER}_DEPEND} CONFIGURE_ENV+= ${D}_ROOT_DIR=${LOCALBASE} + AUTOTOOLS_ENV+= ${D}_ROOT_DIR=${LOCALBASE} CPPFLAGS+= -L${LOCALBASE}/lib/salome .endfor .endif @@ -74,6 +69,7 @@ RUN_DEPENDS+= ${RESOURCEDIR}/gui:${PORTSDIR}/cad/salome-gui .if ${SAL_MODULE} == "smesh" || ${SAL_MODULE} == "sierpinsky" || ${SAL_MODULE} == "multipr" || ${SAL_MODULE} == "visu" BUILD_DEPENDS+= ${RESOURCEDIR}/med:${PORTSDIR}/cad/salome-med RUN_DEPENDS+= ${RESOURCEDIR}/med:${PORTSDIR}/cad/salome-med +AUTOTOOLS_ENV+= MED2HOME=${LOCALBASE} .endif #Depndency from GEOM module @@ -90,17 +86,33 @@ RUN_DEPENDS+= ${RESOURCEDIR}/visu:${PORTSDIR}/cad/salome-visu \ ${RESOURCEDIR}/randomizer:${PORTSDIR}/cad/salome-randomizer .endif - ########################################################################### #Dependency from other ports ########################################################################### #Dependency from autotools -USE_AUTOTOOLS= autoconf:262 automake:15 libtool:22 +USE_AUTOTOOLS= autoconf:262 automake:15 libtool:22 aclocal:19 +.if ${SAL_MODULE} == "kernel" + ACLOCAL_ARGS= -I salome_adm/unix/config_files +.else +. if ${SAL_MODULE} == "yacs" + ACLOCAL_ARGS= -I adm/unix/config_files + USE_AUTOTOOLS+= autoheader:262 + AUTOHEADER_ARGS= -I adm/unix/config_files +. else + ACLOCAL_ARGS= -I adm_local/unix/config_files -I ${LOCALBASE}/salome_adm/unix/config_files +. if ${SAL_MODULE} != "gui" + ACLOCAL_ARGS+= -I ${LOCALBASE}/adm_local/unix/config_files +. endif +. endif +.endif +LIBTOOLFLAGS=--force --copy --automake +AUTOMAKE_ARGS=--add-missing --copy --gnu #Dependency from HDF5 .if !${SAL_MODULE} == "randomizer" && !${SAL_MODULE} == "yacs" && !${SAL_MODULE} == "hello" && !${SAL_MODULE} == "pyhello" LIB_DEPENDS+= hdf5.0:${PORTSDIR}/science/hdf5 CONFIGURE_ARGS+= --with-hdf5=${LOCALBASE} +AUTOTOOLS_ENV+= HDF5HOME=${LOCALBASE} .endif #Dependency from Opencascade @@ -108,6 +120,7 @@ CONFIGURE_ARGS+= --with-hdf5=${LOCALBASE} LIB_DEPENDS+= TKernel.0:${PORTSDIR}/cad/opencascade CASROOT= ${LOCALBASE}/OpenCAS/ros CONFIGURE_ENV+= CASROOT=${CASROOT} +AUTOTOOLS_ENV+= CASROOT=${CASROOT} #CXXFLAGS+= -I${CASROOT}/inc .endif @@ -116,9 +129,6 @@ CONFIGURE_ENV+= CASROOT=${CASROOT} BUILD_DEPENDS+= swig:${PORTSDIR}/devel/swig13 .endif -#Dependency from doxygen -BUILD_DEPENDS+= doxygen:${PORTSDIR}/devel/doxygen - #Dependency from libxml2 .if ${SAL_MODULE} == "gui" || ${SAL_MODULE} == "kernel" || ${SAL_MODULE} == "med" || ${SAL_MODULE} == "yacs" LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2 @@ -141,6 +151,7 @@ USE_QT_VER= 4 CONFIGURE_ENV+= QTDIR=${LOCALBASE} QTFLAGS+= -I${LOCALBASE}/include/qt4 -L${LOCALBASE}/lib/qt4 QT_COMPONENTS= gui opengl svg xml qmake_build moc_build rcc_build uic_build linguist +AUTOTOOLS_ENV+= QTDIR=${LOCALBASE} .endif #Dependency from qscintilla2 @@ -153,7 +164,7 @@ CONFIGURE_ARGS+= --with-qsci4-libraries=${QT_LIBDIR} --with-qsci4-includes=${QT_ #Dependency from vtk .if !${SAL_MODULE} == "kernel" && !${SAL_MODULE} == "randomizer" LIB_DEPENDS+= vtkCommon.5:${PORTSDIR}/math/vtk5 -CONFIGURE_ENV+= VTKHOME=${LOCALBASE} +CONFIGURE_ENV+= VTKHOME=${LOCALBASE} VTKSUFFIX=-5.4 .endif #Dependency from qwt5 @@ -162,6 +173,7 @@ LIB_DEPENDS+= qwt.5:${PORTSDIR}/x11-toolkits/qwt5 #CONFIGURE_ENV+= QWTHOME=${LOCALBASE} CONFIGURE_ARGS+= --with-qwt=${LOCALBASE} CPPFLAGS+= -I/${LOCALBASE}/include/qwt/ +AUTOTOOLS_ENV+= QWTHOME=${LOCALBASE} .endif #Dependency from omniORB & py-omniorb @@ -169,6 +181,7 @@ CPPFLAGS+= -I/${LOCALBASE}/include/qwt/ LIB_DEPENDS+= omniORB4.1:${PORTSDIR}/devel/omniORB RUN_DEPENDS+= ${LOCALBASE}/include/omniORBpy.h:${PORTSDIR}/devel/py-omniorb RUN_DEPENDS+= notifd:${PORTSDIR}/devel/omniNotify +AUTOTOOLS_ENV+= OMNIORBDIR=${LOCALBASE} .endif #Dependency from sip @@ -196,18 +209,21 @@ CONFIGURE_ENV+= METISDIR=${LOCALBASE} SCOTCHDIR=${LOCALBASE} CPPFLAGS+= -I${LOCALBASE}/include/metis .endif -#Dependency from graphviz -BUILD_DEPENDS+= gvgen:${PORTSDIR}/graphics/graphviz - #Dependency from MED .if ${SAL_MODULE} == "med" LIB_DEPENDS+= med.2:${PORTSDIR}/french/med CONFIGURE_ENV+= MED2HOME=${LOCALBASE} .endif +#Dependency from gd +.if ${SAL_MODULE} == "sierpinsky" +LIB_DEPENDS+= gd.4:${PORTSDIR}/graphics/gd +.endif + .if ${SAL_MODULE} == "yacs" LIB_DEPENDS+= argp.0:${PORTSDIR}/devel/argp-standalone LIB_DEPENDS+= expat.6:${PORTSDIR}/textproc/expat2 +LIB_DEPENDS+= gvc.5:${PORTSDIR}/graphics/graphviz LDFLAGS+= -largp .endif @@ -228,10 +244,10 @@ PLIST_SUB+= CPPUNIT="@comment " .endif .endif +#optionally dependency from mpich2 .if ${SAL_MODULE} == "kernel" || ${SAL_MODULE} == "med" .if defined(WITH_MPI) -BUILD_DEPENDS+= ${LOCALBASE}/mpich2/bin/mpicc:${PORTSDIR}/net/mpich2 -RUN_DEPENDS+= ${LOCALBASE}/mpich2/lib/libmpich.so:${PORTSDIR}/net/mpich2 +LIB_DEPENDS+= mpich.1:${PORTSDIR}/net/mpich2 CONFIGURE_ARGS+= --with-mpich=${LOCALBASE}/mpich2 --with-mpi=${LOCALBASE}/mpich2 PLIST_SUB+= MPI="" . else @@ -247,12 +263,29 @@ CONFIGURE_ENV+= LDFLAGS="${LDFLAGS}" CXXFLAGS="${QSCIFLAGS} ${QTFLAGS} ${CXXFLA #MAKE_JOBS_SAFE= yes .if ${SAL_MODULE} == "kernel" -. if ${PYTHON_REL} > 260 post-patch: - ${REINPLACE_CMD} 's|fromlist=None)|fromlist=None, level=-1)|g' ${WRKSRC}/src/KERNEL_PY/import_hook.py -. endif +. if ${PYTHON_REL} > 260 + ${REINPLACE_CMD} 's|fromlist=None)|fromlist=None, level=-1)|g' ${WRKSRC}/src/KERNEL_PY/import_hook.py +. endif + ${REINPLACE_CMD} 's|/bin/bash|${LOCALBASE}/bin/bash|g' ${WRKSRC}/bin/appli_clean.sh ${WRKSRC}/bin/runSalome +.endif + +.if ${SAL_MODULE} == "gui" + post-patch: + ${REINPLACE_CMD} 's|/bin/bash|${LOCALBASE}/bin/bash|g' ${WRKSRC}/bin/runLightSalome.sh +.endif + +.if ${SAL_MODULE} == "yacs" + post-patch: + ${CP} ${WRKSRC}/configure.in.base ${WRKSRC}/configure.in +.endif + +.if ${SAL_MODULE} == "med" + post-install: + ${MV} ${PREFIX}/include/salome/Node.hxx ${PREFIX}/include/salome/MEDNode.hxx .endif + .if ${SAL_MODULE} == "kernel" pre-patch: ${MKDIR} ${WRKSRC}/src/Communication/rpc @@ -260,32 +293,43 @@ CONFIGURE_ENV+= LDFLAGS="${LDFLAGS}" CXXFLAGS="${QSCIFLAGS} ${QTFLAGS} ${CXXFLA ${REINPLACE_CMD} 's|__rpc_xdr|XDR|g' ${WRKSRC}/src/Communication/rpc/xdr.h .endif +MMDEPENDS=${SAL_MODULE_UPPER}_DEPEND +AUTOTOOLS_ENV+= ${SAL_MODULE_UPPER}_ROOT_DIR=${PREFIX} + +.for D in ${MMDEPENDS} + AUTOTOOLS_ENV+=${D}_ROOT_DIR=${LOCALBASE} +.endfor + +run-autotools-aclocal: + echo "Start of aclocal" + @(cd ${PATCH_WRKSRC} && ${SETENV} ${AUTOTOOLS_ENV} ${ACLOCAL} \ + ${ACLOCAL_ARGS}) + echo "End of aclocal" + +run-autotools-autoconf: + echo "Start of autoconf" + @(cd ${PATCH_WRKSRC} && ${SETENV} ${AUTOTOOLS_ENV} ${AUTOCONF} \ + ${AUTOCONF_ARGS}) + echo "End of autotools" + +run-autotools-automake: + echo "Start of automake" + @(cd ${PATCH_WRKSRC} && ${SETENV} ${AUTOTOOLS_ENV} ${AUTOMAKE} \ + ${AUTOMAKE_ARGS}) + echo "End of automake" + +.if ${SAL_MODULE} == "yacs" +run-autotools-autoheader: + echo "Start of autoheader" + @(cd ${PATCH_WRKSRC} && ${SETENV} ${AUTOTOOLS_ENV} ${AUTOHEADER} \ + ${AUTOHEADER_ARGS}) + echo "End of autoheader" +.endif + +patch-autotools: + @(cd ${PATCH_WRKSRC}; ${LIBTOOLIZE} --force;) - pre-configure: -# SAL_MODULE_UPPER=`${ECHO} ${SAL_MODULE} | ${AWK} '{ print(toupper($1)); }'`; \ - MMDEPENDS="${${SAL_MODULE_UPPER}_DEPEND}"; \ - for D in $${MMDEPENDS}; do \ - export "$$D"_ROOT_DIR=${LOCALBASE}; \ - if test "$$D"="MED2"; then \ - export MED2HOME=${LOCALBASE}; \ - fi; \ - if test "$$D"="QWT"; then \ - export QWTHOME=${LOCALBASE}; \ - fi; \ - if test "$$D"="HDF5HOME"; then \ - export HDF5HOME=${LOCALBASE}; \ - fi; \ - if test "$$D"="CASROOT"; then \ - export CASROOT=${CASROOT}; \ - fi; \ - if test "$$D"="QT"; then \ - export QTDIR=${LOCALBASE}; \ - fi; \ - if test "$$D"="OMNIORB"; then \ - export OMNIORBDIR=${LOCALBASE}; \ - fi; \ - echo "$$D"_ROOT_DIR; \ - done; \ - MACHINE=${OPSYS:U}; export MACHINE; set ${SAL_MODULE_UPPER}_ROOT_DIR ${PREFIX}; export ${SAL_MODULE_UPPER}_ROOT_DIR; cd ${WRKSRC}; ${MKDIR} ${BUILD_WRKSRC}; ${SH} ./build_configure +pre-configure: + ${MKDIR} ${BUILD_WRKSRC} .include <bsd.port.post.mk> diff --git a/cad/salome/files/pkg-message.in b/cad/salome/files/pkg-message.in new file mode 100644 index 000000000000..421bc2633c17 --- /dev/null +++ b/cad/salome/files/pkg-message.in @@ -0,0 +1,8 @@ +WARNING !! + +This port require gcc 4.4 build 20090512 or _EARLIER_ for successful _run_. +Please downgrade your gcc via ports-mgmt/portdowngrade or +you'll catch SIGSEGV at SALOME_Session_server. +This bug may be fixed in the future. + +To run salome, type "runSalome.csh" at command line. diff --git a/cad/salome/files/runSalome.csh.in b/cad/salome/files/runSalome.csh.in new file mode 100644 index 000000000000..33ab7189c75a --- /dev/null +++ b/cad/salome/files/runSalome.csh.in @@ -0,0 +1,34 @@ +#!/bin/csh -f +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +setenv PATH ${PATH}:%%PREFIX%%/bin/salome +setenv KERNEL_ROOT_DIR %%PREFIX%% +setenv GEOM_ROOT_DIR %%PREFIX%% +setenv MED_ROOT_DIR %%PREFIX%% +setenv LIGHT_ROOT_DIR %%PREFIX%% +setenv SMESH_ROOT_DIR %%PREFIX%% +setenv VISU_ROOT_DIR %%PREFIX%% +setenv GUI_ROOT_DIR %%PREFIX%% +setenv YACS_ROOT_DIR %%PREFIX%% +setenv CASROOT %%PREFIX%%/OpenCAS/ros + +runSalome --gui --modules=GUI,MED,GEOM,LIGHT,SMESH,VISU,YACS --killall |