mirror of
https://gitlab.com/kicad/code/kicad.git
synced 2025-09-14 10:13:19 +02:00
Fix cmake find of opencascade libraries for occt 7.8
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17654
This commit is contained in:
parent
d82e8ee41a
commit
c8e41dcfe8
@ -27,7 +27,7 @@
|
|||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
|
||||||
# Set the needed libraries
|
# Set the needed libraries
|
||||||
set( OCC_LIBS
|
set( OCC_LIBS_COMMON
|
||||||
TKBinL
|
TKBinL
|
||||||
TKBin
|
TKBin
|
||||||
TKBinTObj
|
TKBinTObj
|
||||||
@ -45,7 +45,6 @@ set( OCC_LIBS
|
|||||||
TKGeomAlgo
|
TKGeomAlgo
|
||||||
TKGeomBase
|
TKGeomBase
|
||||||
TKHLR
|
TKHLR
|
||||||
TKIGES
|
|
||||||
TKLCAF
|
TKLCAF
|
||||||
TKMath
|
TKMath
|
||||||
TKMesh
|
TKMesh
|
||||||
@ -56,18 +55,10 @@ set( OCC_LIBS
|
|||||||
TKRWMesh
|
TKRWMesh
|
||||||
TKService
|
TKService
|
||||||
TKShHealing
|
TKShHealing
|
||||||
TKSTEP209
|
|
||||||
TKSTEPAttr
|
|
||||||
TKSTEPBase
|
|
||||||
TKSTEP
|
|
||||||
TKSTL
|
|
||||||
TKTObj
|
TKTObj
|
||||||
TKTopAlgo
|
TKTopAlgo
|
||||||
TKV3d
|
TKV3d
|
||||||
TKVRML
|
|
||||||
TKXCAF
|
TKXCAF
|
||||||
TKXDEIGES
|
|
||||||
TKXDESTEP
|
|
||||||
TKXMesh
|
TKXMesh
|
||||||
TKXmlL
|
TKXmlL
|
||||||
TKXml
|
TKXml
|
||||||
@ -76,6 +67,26 @@ set( OCC_LIBS
|
|||||||
TKXSBase
|
TKXSBase
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# Libraries valid pre-7.8.0
|
||||||
|
set( OCC_LIBS_PRE_78
|
||||||
|
TKIGES
|
||||||
|
TKSTEP209
|
||||||
|
TKSTEPAttr
|
||||||
|
TKSTEPBase
|
||||||
|
TKSTEP
|
||||||
|
TKSTL
|
||||||
|
TKVRML
|
||||||
|
TKXDEIGES
|
||||||
|
TKXDESTEP
|
||||||
|
)
|
||||||
|
|
||||||
|
# Libraries for versions >= 7.8.0
|
||||||
|
set( OCC_LIBS_POST_78
|
||||||
|
TKDEIGES
|
||||||
|
TKDESTEP
|
||||||
|
TKDESTL
|
||||||
|
)
|
||||||
|
|
||||||
set(OCC_TYPE "OpenCASCADE Standard Edition")
|
set(OCC_TYPE "OpenCASCADE Standard Edition")
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
if(CYGWIN OR MINGW)
|
if(CYGWIN OR MINGW)
|
||||||
@ -178,9 +189,8 @@ endif(OCC_INCLUDE_DIR AND NOT ${OCC_INCLUDE_DIR} STREQUAL "OCC_INCLUDE_DIR-NOTFO
|
|||||||
include(FindPackageHandleStandardArgs)
|
include(FindPackageHandleStandardArgs)
|
||||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(OCC REQUIRED_VARS OCC_INCLUDE_DIR VERSION_VAR OCC_VERSION_STRING)
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(OCC REQUIRED_VARS OCC_INCLUDE_DIR VERSION_VAR OCC_VERSION_STRING)
|
||||||
|
|
||||||
if(OCC_FOUND)
|
function(occ_lib_search SEARCH_LIST)
|
||||||
foreach(lib IN LISTS OCC_LIBS)
|
foreach(lib IN LISTS ${SEARCH_LIST})
|
||||||
|
|
||||||
#Use the specified library location if given
|
#Use the specified library location if given
|
||||||
find_library(OCC_TEMP_LIB ${lib} HINTS ${OCC_LIBRARY_DIR} NO_DEFAULT_PATH)
|
find_library(OCC_TEMP_LIB ${lib} HINTS ${OCC_LIBRARY_DIR} NO_DEFAULT_PATH)
|
||||||
if(${OCC_TEMP_LIB} STREQUAL "OCC_TEMP_LIB-NOTFOUND")
|
if(${OCC_TEMP_LIB} STREQUAL "OCC_TEMP_LIB-NOTFOUND")
|
||||||
@ -197,6 +207,15 @@ if(OCC_FOUND)
|
|||||||
|
|
||||||
unset(OCC_TEMP_LIB CACHE)
|
unset(OCC_TEMP_LIB CACHE)
|
||||||
endforeach(lib)
|
endforeach(lib)
|
||||||
|
endfunction()
|
||||||
|
|
||||||
|
if(OCC_FOUND)
|
||||||
|
occ_lib_search( OCC_LIBS_COMMON )
|
||||||
|
if(OCC_VERSION_STRING VERSION_LESS "7.8.0")
|
||||||
|
occ_lib_search( OCC_LIBS_PRE_78 )
|
||||||
|
else()
|
||||||
|
occ_lib_search( OCC_LIBS_POST_78 )
|
||||||
|
endif()
|
||||||
|
|
||||||
#Convert path names to absolute for cleaner display
|
#Convert path names to absolute for cleaner display
|
||||||
get_filename_component(OCC_INCLUDE_DIR "${OCC_INCLUDE_DIR}" ABSOLUTE)
|
get_filename_component(OCC_INCLUDE_DIR "${OCC_INCLUDE_DIR}" ABSOLUTE)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user