diff --git a/mingw-w64-opencascade/PKGBUILD b/mingw-w64-opencascade/PKGBUILD index d1df7b06aa..45fd580358 100644 --- a/mingw-w64-opencascade/PKGBUILD +++ b/mingw-w64-opencascade/PKGBUILD @@ -4,11 +4,14 @@ _realname=opencascade pkgbase=mingw-w64-${_realname} pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}") pkgver=7.8.1 -_pkgver2=V${pkgver//./_} -pkgrel=1 +_pkgver=${pkgver//./_} +pkgrel=2 pkgdesc='Open CASCADE Technology, 3D modeling & numerical simulation (mingw-w64)' arch=('any') mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64') +url='https://dev.opencascade.org' +msys2_repository_url="https://github.com/Open-Cascade-SAS/OCCT" +license=('spdx:LGPL-2.1-or-later WITH OCCT-exception-1.0') depends=("${MINGW_PACKAGE_PREFIX}-ffmpeg4.4" "${MINGW_PACKAGE_PREFIX}-freeimage" "${MINGW_PACKAGE_PREFIX}-freetype" @@ -16,37 +19,28 @@ depends=("${MINGW_PACKAGE_PREFIX}-ffmpeg4.4" "${MINGW_PACKAGE_PREFIX}-openvr" "${MINGW_PACKAGE_PREFIX}-tcl" "${MINGW_PACKAGE_PREFIX}-tk" - $([[ ${CARCH} == i686 ]] || echo "${MINGW_PACKAGE_PREFIX}-vtk")) + "${MINGW_PACKAGE_PREFIX}-vtk") makedepends=("${MINGW_PACKAGE_PREFIX}-cc" "${MINGW_PACKAGE_PREFIX}-cmake" "${MINGW_PACKAGE_PREFIX}-ninja" "${MINGW_PACKAGE_PREFIX}-doxygen" "${MINGW_PACKAGE_PREFIX}-qt5-base" - "${MINGW_PACKAGE_PREFIX}-rapidjson") -license=('spdx:LGPL-2.1-or-later WITH OCCT-exception-1.0') -url='https://dev.opencascade.org' -msys2_repository_url="https://git.dev.opencascade.org/gitweb/?p=occt.git" -source=("opencascade-${pkgver}.tgz::https://git.dev.opencascade.org/gitweb/?p=occt.git;a=snapshot;h=${_pkgver2};sf=tgz" + "${MINGW_PACKAGE_PREFIX}-rapidjson" + "${MINGW_PACKAGE_PREFIX}-nlohmann-json") +source=("https://github.com/Open-Cascade-SAS/OCCT/archive/refs/tags/V${_pkgver}/${_realname}-${pkgver}.tar.gz" "0001-fix-compile-openvr.patch" - # The following patches are ported from the Debian Science Team # https://salsa.debian.org/science-team/opencascade/-/tree/master/debian/patches - # Source: https://salsa.debian.org/science-team/opencascade/-/blob/master/debian/patches/0002-GeomPlate_BuildAveragePlane-BasePlan-Don-t-set-yvect.patch "0002-GeomPlate_BuildAveragePlane-BasePlan-Don-t-set-yvect.patch" - # Source: https://salsa.debian.org/science-team/opencascade/-/blob/master/debian/patches/0003-BRepFill_Filling-WireFromList-We-can-t-assume-that-a.patch "0003-BRepFill_Filling-WireFromList-We-can-t-assume-that-a.patch" - # Source: https://salsa.debian.org/science-team/opencascade/-/blob/master/debian/patches/0004-BRepFill_Filling-Curve-constraints-confused-by-impli.patch "0004-BRepFill_Filling-Curve-constraints-confused-by-impli.patch" - # Source: https://salsa.debian.org/science-team/opencascade/-/blob/master/debian/patches/0005-BRepFill_Filling-Don-t-even-attempt-to-build-with-em.patch "0005-BRepFill_Filling-Don-t-even-attempt-to-build-with-em.patch" - # Source: https://salsa.debian.org/science-team/opencascade/-/blob/master/debian/patches/0006-BRepOffset_Tool-TryProject-Check-return-of-BRepLib-B.patch "0006-BRepOffset_Tool-TryProject-Check-return-of-BRepLib-B.patch" - "0007-static-build.patch" "0008-clang-dllexport-attributes.patch" "0009-SSE2-detection-gcc.patch" @@ -55,8 +49,7 @@ source=("opencascade-${pkgver}.tgz::https://git.dev.opencascade.org/gitweb/?p=oc "0012-Avoid-invalid-conversion-error.patch" "0013-ExpToCasExe-Fix-building-static.patch" "0014-aarch64-mm_alloc.patch") - -sha256sums=('33f2bdb67e3f6ae469f3fa816cfba34529a23a9cb736bf98a32b203d8531c523' +sha256sums=('7321af48c34dc253bf8aae3f0430e8cb10976961d534d8509e72516978aa82f5' '0bbba5858e3e478759dac3d4802f821ec633304a63aeef542e0e4e0e0674e205' '9e72d389359899d959fa66b131c9871c15a136bb600c246fcf7e05910d277335' 'f126465de547d606c4af2e95bd550ba7d5528d53a9b73693078952f9a40b3cae' @@ -82,7 +75,7 @@ apply_patch_with_msg() { } prepare() { - cd "${srcdir}"/occt-${_pkgver2} + cd "${srcdir}"/OCCT-${_pkgver} apply_patch_with_msg \ 0001-fix-compile-openvr.patch \ 0002-GeomPlate_BuildAveragePlane-BasePlan-Don-t-set-yvect.patch \ @@ -105,7 +98,6 @@ prepare() { build() { local common_config common_config=( - -DOpenCASCADE_ALREADY_INCLUDED=ON -DUSE_D3D=1 -D3RDPARTY_DIR="${MINGW_PREFIX}" -D3RDPARTY_TK_DIR="${MINGW_PREFIX}" @@ -151,24 +143,16 @@ build() { -D3RDPARTY_FREEIMAGE_LIBRARY_DIR_freeimage="${MINGW_PREFIX}/lib/" -DUSE_TBB=1 -D3RDPARTY_TBB_DLL_DIR="${MINGW_PREFIX}/bin/" - -D3RDPARTY_TBB_DLL="${MINGW_PREFIX}/bin/libtbb12.dll" -D3RDPARTY_TBB_LIBRARY_DIR="${MINGW_PREFIX}/lib/" -D3RDPARTY_TBB_LIBRARY="${MINGW_PREFIX}/lib/libtbb12.dll.a" - -D3RDPARTY_TBBMALLOC_DLL_DIR="${MINGW_PREFIX}/bin/" - -D3RDPARTY_TBBMALLOC_DLL="${MINGW_PREFIX}/bin/libtbbmalloc.dll" -D3RDPARTY_TBBMALLOC_LIBRARY_DIR="${MINGW_PREFIX}/lib/" -D3RDPARTY_TBBMALLOC_LIBRARY="${MINGW_PREFIX}/lib/libtbbmalloc.dll.a" + -DUSE_VTK=ON + -D3RDPARTY_VTK_DLL_DIR="${MINGW_PREFIX}/bin/" + -D3RDPARTY_VTK_LIBRARY_DIR="${MINGW_PREFIX}/lib/" + -D3RDPARTY_VTK_INCLUDE_DIR="${MINGW_PREFIX}/include/vtk" ) - if [[ ${CARCH} != i686 ]]; then - common_config+=( - -DUSE_VTK=ON - -D3RDPARTY_VTK_DLL_DIR="${MINGW_PREFIX}/bin/" - -D3RDPARTY_VTK_LIBRARY_DIR="${MINGW_PREFIX}/lib/" - -D3RDPARTY_VTK_INCLUDE_DIR="${MINGW_PREFIX}/include/vtk" - ) - fi - declare -a _extra_config if check_option "debug" "n"; then _extra_config+=("-DCMAKE_BUILD_TYPE=Release") @@ -176,40 +160,13 @@ build() { _extra_config+=("-DCMAKE_BUILD_TYPE=Debug") fi - if [[ "${MSYSTEM}" == "MINGW64" ]]; then - - msg2 "Building static libraries" - mkdir -p "${srcdir}/build-${MSYSTEM}-static" && cd "${srcdir}/build-${MSYSTEM}-static" - - MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \ - ${MINGW_PREFIX}/bin/cmake -Wno-dev \ - -DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \ - -GNinja \ - "${_extra_config[@]}" \ - -DINSTALL_DIR_LAYOUT="Unix" \ - -DBUILD_LIBRARY_TYPE="Static" \ - "${common_config[@]}" \ - -D3RDPARTY_FREETYPE_LIBRARY="${MINGW_PREFIX}/lib/libfreetype.a" \ - -D3RDPARTY_FFMPEG_LIBRARY_avformat="${MINGW_PREFIX}/lib/ffmpeg4.4/libavformat.a" \ - -D3RDPARTY_FFMPEG_LIBRARY_avutil="${MINGW_PREFIX}/lib/ffmpeg4.4/libavutil.a" \ - -D3RDPARTY_FFMPEG_LIBRARY_avcodec="${MINGW_PREFIX}/lib/ffmpeg4.4/libavcodec.a" \ - -D3RDPARTY_FFMPEG_LIBRARY_swscale="${MINGW_PREFIX}/lib/ffmpeg4.4/libswscale.a" \ - -D3RDPARTY_FREEIMAGE_LIBRARY="${MINGW_PREFIX}/lib/libfreeimage.a" \ - -D3RDPARTY_OPENVR_LIBRARY_openvr_api="${MINGW_PREFIX}/lib/libopenvr_api.a" \ - -DOPENVDB_USE_STATIC_LIBS=ON \ - ../occt-${_pkgver2} - - ${MINGW_PREFIX}/bin/cmake --build . - - msg2 "Building shared libraries" - - fi - + msg2 "Building shared libraries" mkdir -p "${srcdir}/build-${MSYSTEM}-shared" && cd "${srcdir}/build-${MSYSTEM}-shared" MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \ ${MINGW_PREFIX}/bin/cmake \ -DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \ + -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \ -GNinja \ "${_extra_config[@]}" \ -DINSTALL_DIR_LAYOUT="Unix" \ @@ -222,24 +179,20 @@ build() { -D3RDPARTY_FFMPEG_LIBRARY_swscale="${MINGW_PREFIX}/lib/ffmpeg4.4/libswscale.dll.a" \ -D3RDPARTY_FREEIMAGE_LIBRARY="${MINGW_PREFIX}/lib/libfreeimage.dll.a" \ -D3RDPARTY_OPENVR_LIBRARY_openvr_api="${MINGW_PREFIX}/lib/libopenvr_api.dll.a" \ - ../occt-${_pkgver2} + ../OCCT-${_pkgver} ${MINGW_PREFIX}/bin/cmake --build . } package() { - if [[ "${MSYSTEM}" == "MINGW64" ]]; then - # Static Install - cd "${srcdir}/build-${MSYSTEM}-static" - DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --install . - fi - # Shared Install cd "${srcdir}/build-${MSYSTEM}-shared" DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake --install . - install -Dm644 "${srcdir}/occt-${_pkgver2}/LICENSE_LGPL_21.txt" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE_LGPL_21.txt" - install -Dm644 "${srcdir}/occt-${_pkgver2}/OCCT_LGPL_EXCEPTION.txt" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/OCCT_LGPL_EXCEPTION.txt" + install -Dm644 "${srcdir}"/OCCT-${_pkgver}/LICENSE_LGPL_21.txt \ + "${pkgdir}"${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE_LGPL_21.txt + install -Dm644 "${srcdir}"/OCCT-${_pkgver}/OCCT_LGPL_EXCEPTION.txt \ + "${pkgdir}"${MINGW_PREFIX}/share/licenses/${_realname}/OCCT_LGPL_EXCEPTION.txt # Remove unnecessary batch scripts (#16304) rm -v "${pkgdir}${MINGW_PREFIX}/bin/"*.bat