diff --git a/common/shlibs b/common/shlibs index a09dd0c4e58..05a4ea1fb01 100644 --- a/common/shlibs +++ b/common/shlibs @@ -2485,3 +2485,66 @@ libspnav.so.0 libspnav-0.2.3_1 libsimage.so.20 simage-1.7.0_1 libCoin.so.60 coin3-3.1.3_1 libgl2ps.so.1 gl2ps-1.3.9_1 +libFWOSPlugin.so.10 oce-0.17.1_1 +libPTKernel.so.10 oce-0.17.1_1 +libTKBO.so.10 oce-0.17.1_1 +libTKBRep.so.10 oce-0.17.1_1 +libTKBin.so.10 oce-0.17.1_1 +libTKBinL.so.10 oce-0.17.1_1 +libTKBinTObj.so.10 oce-0.17.1_1 +libTKBinXCAF.so.10 oce-0.17.1_1 +libTKBool.so.10 oce-0.17.1_1 +libTKCAF.so.10 oce-0.17.1_1 +libTKCDF.so.10 oce-0.17.1_1 +libTKDCAF.so.10 oce-0.17.1_1 +libTKDraw.so.10 oce-0.17.1_1 +libTKFeat.so.10 oce-0.17.1_1 +libTKFillet.so.10 oce-0.17.1_1 +libTKG2d.so.10 oce-0.17.1_1 +libTKG3d.so.10 oce-0.17.1_1 +libTKGeomAlgo.so.10 oce-0.17.1_1 +libTKGeomBase.so.10 oce-0.17.1_1 +libTKHLR.so.10 oce-0.17.1_1 +libTKIGES.so.10 oce-0.17.1_1 +libTKLCAF.so.10 oce-0.17.1_1 +libTKMath.so.10 oce-0.17.1_1 +libTKMesh.so.10 oce-0.17.1_1 +libTKMeshVS.so.10 oce-0.17.1_1 +libTKNIS.so.10 oce-0.17.1_1 +libTKOffset.so.10 oce-0.17.1_1 +libTKOpenGl.so.10 oce-0.17.1_1 +libTKPCAF.so.10 oce-0.17.1_1 +libTKPLCAF.so.10 oce-0.17.1_1 +libTKPShape.so.10 oce-0.17.1_1 +libTKPrim.so.10 oce-0.17.1_1 +libTKSTEP.so.10 oce-0.17.1_1 +libTKSTEP209.so.10 oce-0.17.1_1 +libTKSTEPAttr.so.10 oce-0.17.1_1 +libTKSTEPBase.so.10 oce-0.17.1_1 +libTKSTL.so.10 oce-0.17.1_1 +libTKService.so.10 oce-0.17.1_1 +libTKShHealing.so.10 oce-0.17.1_1 +libTKShapeSchema.so.10 oce-0.17.1_1 +libTKStdLSchema.so.10 oce-0.17.1_1 +libTKStdSchema.so.10 oce-0.17.1_1 +libTKTObj.so.10 oce-0.17.1_1 +libTKTObjDRAW.so.10 oce-0.17.1_1 +libTKTopAlgo.so.10 oce-0.17.1_1 +libTKTopTest.so.10 oce-0.17.1_1 +libTKV3d.so.10 oce-0.17.1_1 +libTKVRML.so.10 oce-0.17.1_1 +libTKViewerTest.so.10 oce-0.17.1_1 +libTKVoxel.so.10 oce-0.17.1_1 +libTKXCAF.so.10 oce-0.17.1_1 +libTKXCAFSchema.so.10 oce-0.17.1_1 +libTKXDEDRAW.so.10 oce-0.17.1_1 +libTKXDEIGES.so.10 oce-0.17.1_1 +libTKXDESTEP.so.10 oce-0.17.1_1 +libTKXMesh.so.10 oce-0.17.1_1 +libTKXSBase.so.10 oce-0.17.1_1 +libTKXSDRAW.so.10 oce-0.17.1_1 +libTKXml.so.10 oce-0.17.1_1 +libTKXmlL.so.10 oce-0.17.1_1 +libTKXmlTObj.so.10 oce-0.17.1_1 +libTKXmlXCAF.so.10 oce-0.17.1_1 +libTKernel.so.10 oce-0.17.1_1 diff --git a/srcpkgs/oce-devel b/srcpkgs/oce-devel new file mode 120000 index 00000000000..cf92f4baef1 --- /dev/null +++ b/srcpkgs/oce-devel @@ -0,0 +1 @@ +oce \ No newline at end of file diff --git a/srcpkgs/oce/patches/musl-fenv.patch b/srcpkgs/oce/patches/musl-fenv.patch new file mode 100644 index 00000000000..217e3b12b50 --- /dev/null +++ b/srcpkgs/oce/patches/musl-fenv.patch @@ -0,0 +1,36 @@ +Following srcpkgs/flightgear/patches/musl-fenv.patch: +""" +Simply disabling the code which enables floating point exceptions +is probably wrong, but I don't have a replacement for the +non-posix functions fegetexcept(3) and feenableexcept(3). +""" + +--- src/OSD/OSD_signal.cxx.orig 2016-01-02 06:11:52.000000000 +0100 ++++ src/OSD/OSD_signal.cxx 2016-06-03 13:12:26.271621527 +0200 +@@ -216,7 +216,7 @@ + // cout << "OSD::Handler: signal " << (int) theSignal << " occured inside a try block " << endl ; + if ( ADR_ACT_SIGIO_HANDLER != NULL ) + (*ADR_ACT_SIGIO_HANDLER)() ; +-#ifdef linux ++#if defined(linux) && defined(__GLIBC__) + if (fFltExceptions) + feenableexcept (FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW); + //feenableexcept (FE_INVALID | FE_DIVBYZERO); +@@ -337,7 +337,7 @@ + return; + } + #endif +-#ifdef linux ++#if defined(linux) && defined(__GLIBC__) + if (fFltExceptions) + feenableexcept (FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW); + //feenableexcept (FE_INVALID | FE_DIVBYZERO); +@@ -393,7 +393,7 @@ + cerr << "ieee_handler does not work !!! KO " << endl; + #endif + } +-#elif defined (linux) ++#elif defined(linux) && defined(__GLIBC__) + feenableexcept (FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW); + //feenableexcept (FE_INVALID | FE_DIVBYZERO); + fFltExceptions = Standard_True; diff --git a/srcpkgs/oce/patches/musl-mallinfo.patch b/srcpkgs/oce/patches/musl-mallinfo.patch new file mode 100644 index 00000000000..bb904217de8 --- /dev/null +++ b/srcpkgs/oce/patches/musl-mallinfo.patch @@ -0,0 +1,17 @@ +In musl libc there is no struct mallinfo and no function mallinf() + +--- src/OSD/OSD_MemInfo.cxx.orig 2016-01-02 06:11:52.000000000 +0100 ++++ src/OSD/OSD_MemInfo.cxx 2016-06-03 13:55:56.613147425 +0200 +@@ -144,8 +144,12 @@ + } + aFile.close(); + ++ #if defined(__GLIBC__) + struct mallinfo aMI = mallinfo(); + myCounters[MemHeapUsage] = aMI.uordblks; ++ #else /* XXX not yet coded */ ++ myCounters[MemHeapUsage] = 0; ++ #endif + + #elif (defined(__APPLE__)) + struct task_basic_info aTaskInfo; diff --git a/srcpkgs/oce/patches/musl-xlocate.patch b/srcpkgs/oce/patches/musl-xlocate.patch new file mode 100644 index 00000000000..994b34052e3 --- /dev/null +++ b/srcpkgs/oce/patches/musl-xlocate.patch @@ -0,0 +1,11 @@ +--- src/Standard/Standard_CLocaleSentry.hxx.orig 2016-01-02 06:11:52.000000000 +0100 ++++ src/Standard/Standard_CLocaleSentry.hxx 2016-06-03 14:12:17.399501218 +0200 +@@ -30,7 +30,7 @@ + #endif + + //! We check _GNU_SOURCE for glibc extensions here and it is always defined by g++ compiler. +- #if defined(_GNU_SOURCE) && !defined(__ANDROID__) ++ #if defined(_GNU_SOURCE) && defined(__GLIBC__) && !defined(__ANDROID__) + #define HAVE_XLOCALE_H + #endif + #endif // ifndef HAVE_LOCALE_H diff --git a/srcpkgs/oce/template b/srcpkgs/oce/template new file mode 100644 index 00000000000..f0f7afff8ce --- /dev/null +++ b/srcpkgs/oce/template @@ -0,0 +1,40 @@ +# Template file for 'oce' +pkgname=oce +_majorver=0.17 +version=${_majorver}.1 +revision=1 +wrksrc="${pkgname}-OCE-${version}" +build_style=cmake +configure_args="-DOCE_INSTALL_PREFIX=/usr -DOCE_WITH_FREEIMAGE=ON + -DOCE_WITH_GL2PS=ON -DOCE_MULTITHREAD_LIBRARY=TBB -DOCE_DRAW=ON" +makedepends="freetype-devel glu-devel freeimage-devel gl2ps-devel tbb-devel tcl-devel tk-devel" +short_desc="OpenCASCADE Community Edition" +maintainer="yopito " +license="LGPL-2.1, OCCT" +homepage="https://github.com/tpaviot/oce" +distfiles="https://github.com/tpaviot/oce/archive/OCE-${version}.tar.gz" +checksum=b1ff0cb8cf31339bbb30ac7ed2415d376b9b75810279d2f497e115f08c090928 + +case "${XBPS_TARGET_MACHINE}" in + arm*) + # error on linking with libTKMath.so or libTKMesh.so: + # undefined reference to tbb::internal::allocate_root_proxy::allocate(unsigned int) + broken=https://travis-ci.org/voidlinux/void-packages/jobs/136426588 + ;; +esac + +post_install() { + vlicense OCCT_LGPL_EXCEPTION.txt +} + +oce-devel_package() { + short_desc+=" - development files" + depends="${makedepends} ${sourcepkg}>=${version}_${revision}" + pkg_install() { + vmove usr/include + vmove "usr/lib/*.so" + vmove "usr/lib/oce-${_majorver}/*.cmake" + mkdir -p ${PKGDESTDIR}/usr/share/${pkgname} + vcopy samples usr/share/${pkgname} + } +}