diff options
author | danieltourde <danieltourde@32389bae-6d03-0410-99cf-db05cde120eb> | 2009-01-05 18:08:50 +0000 |
---|---|---|
committer | danieltourde <danieltourde@32389bae-6d03-0410-99cf-db05cde120eb> | 2009-01-05 18:08:50 +0000 |
commit | 319a3e9767b601f2628d04b8addb25a3fa0ab5a8 (patch) | |
tree | 3c04aaff7d17daa724757a5cc963c94c1d128610 /sci-libs/opencascade | |
parent | version bump (diff) | |
download | sci-319a3e9767b601f2628d04b8addb25a3fa0ab5a8.tar.gz sci-319a3e9767b601f2628d04b8addb25a3fa0ab5a8.tar.bz2 sci-319a3e9767b601f2628d04b8addb25a3fa0ab5a8.zip |
Bump to OpenCascade 6.3 Needs testing...
git-svn-id: http://overlays.gentoo.org/svn/proj/science/overlay@1365 32389bae-6d03-0410-99cf-db05cde120eb
Diffstat (limited to 'sci-libs/opencascade')
-rw-r--r-- | sci-libs/opencascade/ChangeLog | 6 | ||||
-rw-r--r-- | sci-libs/opencascade/Manifest | 6 | ||||
-rw-r--r-- | sci-libs/opencascade/opencascade-6.2-r1.ebuild | 2 | ||||
-rw-r--r-- | sci-libs/opencascade/opencascade-6.3.ebuild | 226 |
4 files changed, 237 insertions, 3 deletions
diff --git a/sci-libs/opencascade/ChangeLog b/sci-libs/opencascade/ChangeLog index 1692040f9..922a3b043 100644 --- a/sci-libs/opencascade/ChangeLog +++ b/sci-libs/opencascade/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for sci-libs/opencascade -# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 +# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 # $Header: $ + 05 January 2009; Daniel Tourde <daniel.tourde@caelae.se> + Added EAPI=1 in opencascade-6.2-r1.ebuild + +opencascade-6.3.ebuild + 27 May 2008; Daniel Tourde <daniel.tourde@caelae.se> Corrected bugs in the way the --with-include and --with-library were handled (OpenGL, X). A big thank to Richard Westwell <garlicbread@ntlworld.com> for having discovered and corrected the issue. diff --git a/sci-libs/opencascade/Manifest b/sci-libs/opencascade/Manifest index 1f4eff11a..8ecd781c3 100644 --- a/sci-libs/opencascade/Manifest +++ b/sci-libs/opencascade/Manifest @@ -2,9 +2,11 @@ AUX env.ksh.template 1412 RMD160 aaf7c74e1aef841d669cf44c279e747cb336fd2b SHA1 e AUX opencascade-6.2-gcc4.patch 9123 RMD160 1dc00703945d1e08af768b33f3af070e8a968fb0 SHA1 610e003897cc0bd08308b374fef5f01e18576902 SHA256 221f728c17139f20731941265d0fa09a95f8868eaf50120ae64822cba030ad35 AUX opencascade-6.2-malloc.patch 325 RMD160 44d691df74c4fa197fbc67efe006db6ef22f017c SHA1 9a4b11781b3ee1e8b9c7a63de9fee1dddbae7684 SHA256 e7bf123ee9ad7a883bb24b4dd46189546145aa3e8bb46bbf2b4fca065bf11327 DIST opencascade-6.2.tar.bz2 48068224 RMD160 750d80fec0a3c4d9c26613f93ed819a649be934a SHA1 a0135da031095e081ec739dc9c40f6826d5811f6 SHA256 bacc9c90d4d2b09b43010001669c684c9479223f7d30c9ac1152daeffed2b0b4 +DIST opencascade-6.3.tar.bz2 78534561 RMD160 0654f90ba93c60b7cc7f61b63a040e1ca828e9b4 SHA1 b908619b0142fb4c3ffc10962c8321103bcfb4cf SHA256 e4c3cb7e47306308dddfb73d6cbc29b79153459fe94e4d75741cf903cc30f48b DIST opencascade-samples-java-6.2.tar.bz2 538012 RMD160 2b570eee63c9eff2f370b7973e1d12bb9718332c SHA1 9bd8d7596e882a6608781d4967453cc002efdd8d SHA256 636dbda1a0584e00aca243546a3e14b8891ffebeca7d3e3dc940b4f0f6c6a30a DIST opencascade-samples-qt-6.2.tar.bz2 42553 RMD160 3cec392ef9973ab74c1cd404bdc35d5a4e652807 SHA1 46515926973f09dcf3e2347cecfe025ee8621735 SHA256 45b8ab70f06377196a6f3f3170cafcabb8520d091030400346006a0c2521dc1d DIST opencascade-tutorial-6.2.tar.bz2 40245 RMD160 638c86493a67aeea97870ca1d38a91d403eb0661 SHA1 c2cc31fafcdaecda60c51b351339de9910fe2b7e SHA256 d5d7dae21a61f0944af7ff4987b5274c48308a670e94350d2477c499720d1784 -EBUILD opencascade-6.2-r1.ebuild 7696 RMD160 ae0b68a466b2aaf58e8e41fb953f388cc193b985 SHA1 0f8674fe1382788ef3a224f2795d974686dc700f SHA256 7782735cd601890dba981d4ad27e34abe58b0bfab5b65168cc8a5b78d1fb118d -MISC ChangeLog 1361 RMD160 9fbfa1d103ec8fb95c5112ac99c2f093994841d2 SHA1 0b47634abbfc8772edababf6a44a972aee1547c9 SHA256 7499613ca92d07894996d95b768753664715a3f98b46e2ec5faae309f7795b48 +EBUILD opencascade-6.2-r1.ebuild 7706 RMD160 4e1938100555cd1441c1a8f58dad96dbe7c0c1e0 SHA1 8c7d9c5b0d714f6cacc7e7243d61be366186a38e SHA256 c96f9790b39182997dbbf3a0dbcae1cecffca923ea6284b52f6fa4071ee20b73 +EBUILD opencascade-6.3.ebuild 7189 RMD160 dbdf58af47a8333927357b57462140596f993b13 SHA1 8565095605f5cc71220ccea76693c159bcf7e916 SHA256 d07923a7af4aa5c4cbb1e6255198089c18b5662560d2d021b6c32a7fc031b9de +MISC ChangeLog 1492 RMD160 72d8d90785baf65f75e43876669b63c7d16bce7f SHA1 7c73c27dceec135e892e147ebadcf6c1d10b6853 SHA256 f868d78a58192d1a349bb54417f60f5809a21479d63180bfdb7e82e537e2aed9 MISC metadata.xml 157 RMD160 ed43b99e7bf8bbf62cf4e46152138ab42d3a88c5 SHA1 2182a6de0b10959aad51af2990f1a6c69e34dd97 SHA256 750cb9e46ac2b77e1adf73de43c186a8c2d2234a9c6a89d9358d0969dc5cf8ac diff --git a/sci-libs/opencascade/opencascade-6.2-r1.ebuild b/sci-libs/opencascade/opencascade-6.2-r1.ebuild index 39f86f32c..ddfb47d7e 100644 --- a/sci-libs/opencascade/opencascade-6.2-r1.ebuild +++ b/sci-libs/opencascade/opencascade-6.2-r1.ebuild @@ -2,6 +2,8 @@ # Distributed under the terms of the GNU General Public License v2 # $Header: $ +EAPI="1" + inherit autotools eutils flag-o-matic qt3 check-reqs multilib toolchain-funcs versionator DESCRIPTION="Software development platform for CAD/CAE, 3D surface/solid modeling and data exchange." diff --git a/sci-libs/opencascade/opencascade-6.3.ebuild b/sci-libs/opencascade/opencascade-6.3.ebuild new file mode 100644 index 000000000..c3ff4d1f6 --- /dev/null +++ b/sci-libs/opencascade/opencascade-6.3.ebuild @@ -0,0 +1,226 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="1" + +inherit autotools eutils flag-o-matic qt3 check-reqs multilib toolchain-funcs versionator + +DESCRIPTION="Software development platform for CAD/CAE, 3D surface/solid modeling and data exchange." +HOMEPAGE="http://www.opencascade.org" +SRC_URI="ftp://ftp.freebsd.org/pub/FreeBSD/ports/local-distfiles/thierry/${P}.tar.bz2" + +# NOTES +# The source code here is not in the same form than the one distributed on www.opencascade.org +# The source available on www.opencascade.org requires a Java installation procedure that does not +# always work on Gentoo. The source code can however be extracted 'by hand' using +# 'java -cp ./Linux/setup.jar' +# and removing 'by hand' all the existing Linux binaries. The source code extracted using this +# method is currently available on the FreeBSD ftp server. +# It could be possible to download the Salome binary for linux (500Mb...) and to extract the source from there. + + +LICENSE="Open-CASCADE-Technology-Public-License" +SLOT="0" +KEYWORDS="~x86 ~amd64" +IUSE="debug doc java opengl qt3 stlport X" +DEPEND="java? ( virtual/jdk ) + opengl? ( virtual/opengl + virtual/glu ) + X? ( x11-libs/libXmu + app-text/dgs ) + >=dev-lang/tcl-8.4 + >=dev-lang/tk-8.4 + >=dev-tcltk/itcl-3.2 + >=dev-tcltk/itk-3.2 + x86? ( >=dev-tcltk/tix-8.1 ) + amd64? ( >=dev-tcltk/tix-8.4.2 ) + qt3? ( x11-libs/qt:3 ) + stlport? ( dev-libs/STLport )" + +MY_S=${WORKDIR}/OpenCASCADE6.3.0 +INSTALL_DIR="/opt/${P}/ros/lin" + + +pkg_setup() { + # Determine itk, itcl, tix, tk and tcl versions + itk_version=$(grep ITK_VER /usr/include/itk.h | sed 's/^.*"\(.*\)".*/\1/') + itcl_version=$(grep ITCL_VER /usr/include/itcl.h | sed 's/^.*"\(.*\)".*/\1/') + tix_version=$(grep TIX_VER /usr/include/tix.h | sed 's/^.*"\(.*\)".*/\1/') + tk_version=$(grep TK_VER /usr/include/tk.h | sed 's/^.*"\(.*\)".*/\1/') + tcl_version=$(grep TCL_VER /usr/include/tcl.h | sed 's/^.*"\(.*\)".*/\1/') + + ewarn + ewarn " It is important to note that OpenCascade is a very large package. " + ewarn " Please note that building OpenCascade takes a lot of time and " + ewarn " hardware ressources: 3.5-4 GB free diskspace and 256 MB RAM are " + ewarn " the minimum requirements. " + ewarn + + # Check if we have enough RAM and free diskspace to build this beast + CHECKREQS_MEMORY="256" + CHECKREQS_DISK_BUILD="3584" + check_reqs +} + + +src_unpack() { + unpack ${A} + + # Substitute with our ready-made env.ksh script + cp -f "${FILESDIR}"/env.ksh.template ${MY_S}/ros/env.ksh + + # Feed environment variables used by Opencascade compilation + cd ${MY_S}/ros + sed -i \ + -e "s:VAR_CASROOT:${MY_S}/ros:g" \ + -e 's:VAR_SYS_BIN:/usr/bin:g' \ + -e "s:VAR_SYS_LIB:/usr/$(get_libdir):g" env.ksh \ + || die "Environment variables feed in env.ksh failed!" + + # Tweak itk, itcl, tix, tk and tcl versions + sed -i \ + -e "s:VAR_ITK:itk${itk_version}:g" \ + -e "s:VAR_ITCL:itcl${itcl_version}:g" \ + -e "s:VAR_TIX:tix${tix_version}:g" \ + -e "s:VAR_TK:tk${tk_version}:g" \ + -e "s:VAR_TCL:tcl${tcl_version}:g" env.ksh \ + || die "itk, itcl, tix, tk and tcl version tweaking failed!" + + chmod u+x configure + + # Autotools version update + source env.ksh + eaclocal || die "eaclocal failed" + eautoheader || die "eautoheader failed" + eautomake -a -c -f + _elibtoolize --force --copy || die "elibtoolize failed" + eautoconf || die "eautoconf failed" +} + +src_compile() { + cd ${MY_S}/ros + + # Add the configure options + local confargs="--prefix=${INSTALL_DIR} --with-tcl=/usr/$(get_libdir) --with-tk=/usr/$(get_libdir)" + + if use X ; then + confargs="${confargs} --with-dps-include=/usr/include --with-dps-library=/usr/$(get_libdir)" + confargs="${confargs} --with-xmu-include=/usr/include --with-xmu-library=/usr/$(get_libdir)" + if use !opengl; then + ewarn "Activate OpenGL if you want to be able to visualize geometry. Set "opengl" USE flag." + else + confargs="${confargs} --with-gl-include=/usr/include --with-gl-library=/usr/$(get_libdir)" + fi + else + if use opengl; then + die "OpenGL imply X support! Add "X" USE flag." + else + ewarn "Activate X and OpenGL if you want to be able to visualize geometry. Set "X" and "opengl" USE flags." + fi + fi + + if use java ; then + local java_path + java_path=`java-config -O` + confargs="${confargs} --with-java-include=${java_path}/include/linux" + else + ewarn "Java wrapping is not going to be compiled. USE flag: "java"" + fi + +# NOTES: To clearly state --with-stlport-include and --with-stlport-library cause troubles. I don't know why.... + + if use stlport ; then + confargs="${confargs} --with-stlport-libname=stlport_gcc" + #confargs="${confargs} --with-stlport-include=/usr/include --with-stlport-library=/usr/$(get_libdir)" + fi + + # Compiler and linker flags + if use amd64 ; then + append-flags -m64 + fi + append-ldflags -lpthread + + econf ${confargs} \ + $(use_with X x ) \ + $(use_enable debug ) \ + $(use_enable !debug production ) \ + || die "Configuration failed" + + emake || die "Compilation failed" +} + + +src_install() { + cd ${MY_S}/ros + rm *~ + emake prefix="${D}/${INSTALL_DIR}" install \ + || die "Installation failed" + + # Symlinks for keeping original OpenCascade folder structure and + # add a link lib to lib64 in ros/Linux if we are on amd64 + dosym /opt/${P}/ros/lin /opt/${P}/ros/Linux + if use amd64 ; then + dosym ${INSTALL_DIR}/lib64 ${INSTALL_DIR}/lib + fi + + # Tweak the environment variables script + cp "${FILESDIR}"/env.ksh.template env.ksh + sed -i "s:VAR_CASROOT:/opt/${P}/ros:g" env.ksh + + # Build the env.d environment variables + cp "${FILESDIR}"/env.ksh.template 50${PN} + sed -i \ + -e 's:export ::g' \ + -e "s:VAR_CASROOT:/opt/${P}/ros:g" \ + -e '1,2d' \ + -e '4,14d' \ + -e "s:ros/Linux/lib/:ros/Linux/$(get_libdir)/:g" ./50${PN} \ + || die "Creation of the /etc/env.d/50opencascade failed!" + sed -i "2i\PATH=/opt/${P}/ros/Linux/bin/\nLDPATH=/opt/${P}/ros/Linux/$(get_libdir)" ./50${PN} \ + || die "Creation of the /etc/env.d/50opencascade failed!" + + # Update both env.d and script with the libraries variables + sed -i \ + -e 's:VAR_SYS_BIN:/usr/bin:g' \ + -e "s:VAR_SYS_LIB:/usr/$(get_libdir):g" \ + -e "s:VAR_ITK:itk${itk_version}:g" \ + -e "s:VAR_ITCL:itcl${itcl_version}:g" \ + -e "s:VAR_TIX:tix${tix_version}:g" \ + -e "s:VAR_TK:tk${tk_version}:g" \ + -e "s:VAR_TCL:tcl${tcl_version}:g" env.ksh 50${PN} \ + || die "Tweaking of the Tcl/Tk libraries location in env.ksh and 50opencascade failed!" + + # Install the env.d variables file + doenvd 50${PN} + rm 50${PN} env.csh + + # Clean before copying everything + cd ${MY_S}/ros + emake clean || die "emake clean failed" + + # Install folders + cd ${MY_S} + insinto /opt/${P} + doins -r data ros + insinto /opt/${P}/samples + doins -r samples/tutorial + if use java ; then + insinto /opt/${P}/samples/standard + doins -r samples/standard/java + fi + if use qt3 ; then + insinto /opt/${P}/samples/standard + doins -r samples/standard/qt + fi + + # Install the documentation + if use doc ; then + cd ${MY_S}/doc + dodoc -r Overview ReferenceDocumentation ../LICENSE || die "dodoc failed" + fi +} + +pkg_postinst() { + einfo "Open CASCADE ebuild needs further development. Please inform any problems or improvements in http://bugs.gentoo.org/show_bug.cgi?id=118656" +} |