From 2048c9985294a33aaca275e7a45ba9e77817c0ab Mon Sep 17 00:00:00 2001 From: Silvan Calarco Date: Sat, 6 Jan 2024 08:05:33 +0100 Subject: [PATCH] package created using the webbuild interface [release 7.6.0-1mamba;Sun Jan 23 2022] --- README.md | 2 + occt-7.6.0-cmake.patch | 43 ++++++++++++++ occt.spec | 127 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 172 insertions(+) create mode 100644 occt-7.6.0-cmake.patch create mode 100644 occt.spec diff --git a/README.md b/README.md index 8f42b98..fcdf2d6 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,4 @@ # occt +Open CASCADE Technology (OCCT) full-scale 3D geometry library. + diff --git a/occt-7.6.0-cmake.patch b/occt-7.6.0-cmake.patch new file mode 100644 index 0000000..b52ac04 --- /dev/null +++ b/occt-7.6.0-cmake.patch @@ -0,0 +1,43 @@ +Index: opencascade-7.5.0/CMakeLists.txt +=================================================================== +--- opencascade-7.5.0.orig/CMakeLists.txt ++++ opencascade-7.5.0/CMakeLists.txt +@@ -1156,7 +1156,7 @@ foreach (OCCT_CONFIGURATION ${CMAKE_CONF + endforeach() + # install OpenCASCADE config file with compile definitions and C/C++ flags ONLY for current configuration + install (CODE "string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWER)") +-install (CODE "configure_file(\"${CMAKE_BINARY_DIR}/OpenCASCADECompileDefinitionsAndFlags-\${CMAKE_INSTALL_CONFIG_NAME_LOWER}.cmake\" \"${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADECompileDefinitionsAndFlags-\${CMAKE_INSTALL_CONFIG_NAME_LOWER}.cmake\" COPYONLY)") ++install (CODE "configure_file(\"${CMAKE_BINARY_DIR}/OpenCASCADECompileDefinitionsAndFlags-\${CMAKE_INSTALL_CONFIG_NAME_LOWER}.cmake\" \"$ENV{DESTDIR}/${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADECompileDefinitionsAndFlags-\${CMAKE_INSTALL_CONFIG_NAME_LOWER}.cmake\" COPYONLY)") + + foreach (OCCT_MODULE ${OCCT_MODULES}) + if (BUILD_MODULE_${OCCT_MODULE}) +Index: opencascade-7.5.0/adm/templates/OpenCASCADEConfig.cmake.in +=================================================================== +--- opencascade-7.5.0.orig/adm/templates/OpenCASCADEConfig.cmake.in ++++ opencascade-7.5.0/adm/templates/OpenCASCADEConfig.cmake.in +@@ -27,7 +27,7 @@ get_filename_component (OpenCASCADE_INST + if (OpenCASCADE_INSTALL_PREFIX MATCHES "/cmake$") + get_filename_component (OpenCASCADE_INSTALL_PREFIX "${OpenCASCADE_INSTALL_PREFIX}" PATH) + endif() +-if (OpenCASCADE_INSTALL_PREFIX MATCHES "/lib$") ++if (OpenCASCADE_INSTALL_PREFIX MATCHES "/lib$" OR OpenCASCADE_INSTALL_PREFIX MATCHES "/lib64$") + get_filename_component (OpenCASCADE_INSTALL_PREFIX "${OpenCASCADE_INSTALL_PREFIX}" PATH) + endif() + if (OpenCASCADE_INSTALL_PREFIX MATCHES "/libs/${CMAKE_ANDROID_ARCH_ABI}$") +Index: opencascade-7.5.0/adm/cmake/occt_toolkit.cmake +=================================================================== +--- opencascade-7.5.0.orig/adm/cmake/occt_toolkit.cmake ++++ opencascade-7.5.0/adm/cmake/occt_toolkit.cmake +@@ -244,9 +244,9 @@ else() + + install (TARGETS ${PROJECT_NAME} + EXPORT OpenCASCADE${CURRENT_MODULE}Targets +- RUNTIME DESTINATION "${INSTALL_DIR_BIN}\${OCCT_INSTALL_BIN_LETTER}" +- ARCHIVE DESTINATION "${INSTALL_DIR_LIB}\${OCCT_INSTALL_BIN_LETTER}" +- LIBRARY DESTINATION "${INSTALL_DIR_LIB}\${OCCT_INSTALL_BIN_LETTER}") ++ RUNTIME DESTINATION "${INSTALL_DIR_BIN}" ++ ARCHIVE DESTINATION "${INSTALL_DIR_LIB}" ++ LIBRARY DESTINATION "${INSTALL_DIR_LIB}") + + if (NOT WIN32) + if (BUILD_SHARED_LIBS AND NOT "${BUILD_SHARED_LIBRARY_NAME_POSTFIX}" STREQUAL "") diff --git a/occt.spec b/occt.spec new file mode 100644 index 0000000..8ac00c2 --- /dev/null +++ b/occt.spec @@ -0,0 +1,127 @@ +Name: occt +Version: 7.6.0 +Release: 1mamba +Summary: Open CASCADE Technology (OCCT) full-scale 3D geometry library +Group: System/Libraries +Vendor: openmamba +Distribution: openmamba +Packager: Silvan Calarco +URL: https://dev.opencascade.org/ +Source: https://git.dev.opencascade.org/repos/occt.git/V%{version}/occt-%{version}.tar.bz2 +Patch0: occt-7.6.0-cmake.patch +License: GPL +## AUTOBUILDREQ-BEGIN +BuildRequires: glibc-devel +BuildRequires: libICE-devel +BuildRequires: libSM-devel +BuildRequires: libX11-devel +BuildRequires: libXext-devel +BuildRequires: libXt-devel +BuildRequires: libfontconfig-devel +BuildRequires: libfreetype-devel +BuildRequires: libgcc +BuildRequires: libglvnd-devel +BuildRequires: libstdc++6-devel +BuildRequires: libtbb-devel +BuildRequires: libtcl-devel +BuildRequires: libtk-devel +BuildRequires: libvtk-devel +## AUTOBUILDREQ-END +BuildRequires: cmake +Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release} +Provides: oce +Obsoletes: oce <= 0.17.2 + +%description +Open CASCADE Technology (OCCT) full-scale 3D geometry library. + +%package -n lib%{name} +Group: System/Libraries +Summary: Shared libraries for %{name} +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} +Provides: liboce +Obsoletes: liboce <= 0.17.2 + +%description -n lib%{name} +This package contains shared libraries for %{name}. + +%package -n lib%{name}-devel +Group: Development/Libraries +Summary: Development files for %{name} +Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release} +Provides: liboce-devel +Obsoletes: liboce-devel <= 0.17.2 + +%description -n lib%{name}-devel +This package contains libraries and header files for developing applications that use %{name}. + + +%debug_package + +%prep +%setup -q +#-D -T +#:<< _EOF +%patch0 -p1 -b .cmake + +%build +#:<< _EOF +# cmake uses $ENV{DESTDIR} to create cmake_install file +export DESTDIR=%{buildroot} +%cmake -d build \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DUSE_TBB=True \ + -DUSE_VTK=True \ + -DINSTALL_VTK=False \ + -D3RDPARTY_VTK_LIBRARY_DIR=%{_libdir} \ + -D3RDPARTY_VTK_INCLUDE_DIR=%{_includedir}/vtk-8.2 \ + -DINSTALL_DIR_LIB=%{_lib} \ + -DINSTALL_DIR_CMAKE=%{_lib}/cmake/%{name} + +%make + +%install +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" +%makeinstall -C build + +# Remove license files so they can be included by %%license +rm -rf %{buildroot}%{_datadir}/doc/opencascade + +# Fix non-executable shell scripts +chmod 0755 %{buildroot}%{_bindir}/*.sh + +%clean +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" + +%post -n lib%{name} -p /sbin/ldconfig +%postun -n lib%{name} -p /sbin/ldconfig + +%files +%defattr(-,root,root) +%{_bindir}/DRAWEXE* +%dir %{_datadir}/opencascade +%dir %{_datadir}/opencascade/data +%{_datadir}/opencascade/data/* +%dir %{_datadir}/opencascade/resources +%{_datadir}/opencascade/resources/* +%dir %{_datadir}/opencascade/samples +%{_datadir}/opencascade/samples/* + +%files -n lib%{name} +%defattr(-,root,root) +%{_libdir}/libTK*.so.* +%license LICENSE_LGPL_21.txt OCCT_LGPL_EXCEPTION.txt + +%files -n lib%{name}-devel +%defattr(-,root,root) +%{_bindir}/*.sh +%dir %{_includedir}/opencascade/ +%{_includedir}/opencascade/* +%{_libdir}/libTK*.so +%dir %{_libdir}/cmake/occt +%{_libdir}/cmake/occt/OpenCASCADE*.cmake +%doc README.txt + +%changelog +* Sun Jan 23 2022 Silvan Calarco 7.6.0-1mamba +- package created using the webbuild interface