Klemens Nanni <k...@openbsd.org> wrote: > On Sun, Sep 03, 2023 at 04:32:24PM +0200, Johannes Thyssen Tishman wrote: > > *ping* > > > > Aug 31, 2023 22:58:50 Johannes Thyssen Tishman <li...@thyssentishman.com>: > > You can usually give it a week before pinging, four days is a little hasty, > especially since oce is a monster C++ ports (~5600 files to compile), i.e. > nothing you'd quickly (re)build and test.
Good to know, thanks. Never really know when is a good time to ping and I was afraid it would come off a little pushy, I'm sorry. The list has been quite active lately and I didn't want this patch to get lost. My bad. > The patched .cmake file stlil looks ugly, but should work. Indeed. The cmake script is ugly as is IMO. Took me forever to debug. > My machine is still churning along, I'll take care of the fix once confirmed. Thanks a lot. > Thanks. > > > > > > Hi, > > > > > > The following cmake files installed by cad/oce contain a variable > > > (${OCCT_INSTALL_BIN_LETTER}) that should've been replaced during > > > installation: > > > > > > /usr/local/lib/cmake/opencascade/OpenCASCADEApplicationFrameworkTargets-release.cmake > > > /usr/local/lib/cmake/opencascade/OpenCASCADEDataExchangeTargets-release.cmake > > > /usr/local/lib/cmake/opencascade/OpenCASCADEDrawTargets-release.cmake > > > /usr/local/lib/cmake/opencascade/OpenCASCADEFoundationClassesTargets-release.cmake > > > /usr/local/lib/cmake/opencascade/OpenCASCADEModelingAlgorithmsTargets-release.cmake > > > /usr/local/lib/cmake/opencascade/OpenCASCADEModelingDataTargets-release.cmake > > > /usr/local/lib/cmake/opencascade/OpenCASCADEVisualizationTargets-release.cmake > > > > > > To verify, run the following. You'll notice how the variable is > > > escaped (\${...}): > > > > > > # pkg_add oce > > > $ grep OCCT_INSTALL_BIN_LETTER > > > /usr/local/lib/cmake/opencascade/OpenCASCADE* > > > > > > I'm working on porting FreeCAD (which depends on oce) > > > and I'm getting the following error during the configuration stage: > > > > > >> CMake Error at > > >> /usr/local/lib/cmake/opencascade/OpenCASCADEFoundationClassesTargets.cmake:87 > > >> (message): > > >> The imported target "TKernel" references the file > > >> > > >> "/usr/local/lib${OCCT_INSTALL_BIN_LETTER}/libTKernel.so.1.0" > > >> > > >> but this file does not exist. Possible reasons include: > > >> > > >> * The file was deleted, renamed, or moved to another location. > > >> > > >> * An install or uninstall procedure did not complete successfully. > > >> > > >> * The installation package was faulty and contained > > >> > > >> > > >> "/usr/local/lib/cmake/opencascade/OpenCASCADEFoundationClassesTargets.cmake" > > >> > > >> but not all the files it references. > > > > > > The diff below is based on a patch from the FreeBSD port and should > > > fix this issue. The only consumer is cad/kicad and it built fine. > > > > > > Kind regards, > > > Johannes > > > > > > Index: Makefile > > > =================================================================== > > > RCS file: /cvs/ports/cad/oce/Makefile,v > > > retrieving revision 1.9 > > > diff -u -p -r1.9 Makefile > > > --- Makefile 28 Feb 2023 21:22:28 -0000 1.9 > > > +++ Makefile 31 Aug 2023 19:47:51 -0000 > > > @@ -7,7 +7,7 @@ GH_ACCOUNT = tpaviot > > > GH_PROJECT = oce > > > GH_COMMIT = 98a788062f0f30593880b0df1bcf967408212ba4 > > > DISTNAME = oce-7.6.0 > > > -REVISION = 1 > > > +REVISION = 2 > > > > > > .for LIB in TKBO TKBRep TKBin TKBinL TKBinTObj TKBinXCAF TKBool TKCAF > > > TKCDF \ > > > TKDCAF TKDraw TKFeat TKFillet TKG2d TKG3d TKGeomAlgo TKGeomBase TKHLR > > > \ > > > Index: patches/patch-adm_cmake_occt_macros_cmake > > > =================================================================== > > > RCS file: /cvs/ports/cad/oce/patches/patch-adm_cmake_occt_macros_cmake,v > > > retrieving revision 1.2 > > > diff -u -p -r1.2 patch-adm_cmake_occt_macros_cmake > > > --- patches/patch-adm_cmake_occt_macros_cmake 11 Mar 2022 18:24:30 > > > -0000 1.2 > > > +++ patches/patch-adm_cmake_occt_macros_cmake 31 Aug 2023 19:47:51 -0000 > > > @@ -1,15 +1,12 @@ > > > -Ugly hack on ALL_OCCT_TARGET_FILES: change later > > > - > > > Index: adm/cmake/occt_macros.cmake > > > --- adm/cmake/occt_macros.cmake.orig > > > +++ adm/cmake/occt_macros.cmake > > > -@@ -592,7 +592,8 @@ macro (OCCT_UPDATE_TARGET_FILE) > > > +@@ -592,7 +592,7 @@ macro (OCCT_UPDATE_TARGET_FILE) > > > "cmake_policy(PUSH) > > > cmake_policy(SET CMP0007 NEW) > > > string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" > > > CMAKE_INSTALL_CONFIG_NAME_LOWERCASE) > > > - file (GLOB ALL_OCCT_TARGET_FILES > > > \"${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADE*Targets-\${CMAKE_INSTALL_CONFIG_NAME_LOWERCASE}.cmake\") > > > -+ file (GLOB ALL_OCCT_TARGET_FILES > > > -+ > > > \"${PROJECT_BINARY_DIR}/CMakeFiles/Export/${INSTALL_DIR_CMAKE}/OpenCASCADE*Targets-\${CMAKE_INSTALL_CONFIG_NAME_LOWERCASE}.cmake\") > > > ++ file (GLOB ALL_OCCT_TARGET_FILES > > > \"\$ENV{DESTDIR}${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADE*Targets-\${CMAKE_INSTALL_CONFIG_NAME_LOWERCASE}.cmake\") > > > foreach(TARGET_FILENAME \${ALL_OCCT_TARGET_FILES}) > > > file (STRINGS \"\${TARGET_FILENAME}\" TARGET_FILE_CONTENT) > > > file (REMOVE \"\${TARGET_FILENAME}\") > >