Files
Hoops_Exchange/cmake/FindParasolid.cmake
2025-12-15 23:22:33 +08:00

54 lines
1.6 KiB
CMake

#[=======================================================================[
FindParasolid.cmake
----------------
CMake module to find Parasolid library and include directories.
Usage
-----
find_package(Parasolid)
Variables
---------
Parasolid_FOUND: Boolean indicating if Parasolid was found
Parasolid_INCLUDE_DIRS: List of include directories
Parasolid_LIBRARIES: List of libraries
Author
------
TechSoft3D
#]=======================================================================]
find_library(Parasolid_LIBRARY
NAMES "pskernel"
PATHS
${PARASOLID_INSTALL_DIR}/shared_object
$ENV{PARASOLID_INSTALL_DIR}/shared_object
${PARASOLID_INSTALL_DIR}/dll
$ENV{PARASOLID_INSTALL_DIR}/dll
)
find_path(Parasolid_INCLUDE_DIR
NAMES "parasolid_kernel.h"
PATHS
${PARASOLID_INSTALL_DIR}
$ENV{PARASOLID_INSTALL_DIR}
)
if(Parasolid_INCLUDE_DIR AND Parasolid_LIBRARY)
set(Parasolid_FOUND TRUE)
set(Parasolid_INCLUDE_DIRS ${Parasolid_INCLUDE_DIR})
set(Parasolid_LIBRARIES ${Parasolid_LIBRARY})
message(STATUS "Parasolid found at ${Parasolid_INCLUDE_DIRS}, ${Parasolid_LIBRARIES}")
else()
set(Parasolid_FOUND FALSE)
if(Parasolid_FIND_REQUIRED)
message(FATAL_ERROR "Parasolid not found (required): ${Parasolid_INCLUDE_DIR}, ${Parasolid_LIBRARY}; set PARASOLID_INSTALL_DIR variable")
else()
message(WARNING "Parasolid not found: ${Parasolid_INCLUDE_DIR}, ${Parasolid_LIBRARY}; set PARASOLID_INSTALL_DIR variable")
endif()
endif()
mark_as_advanced(Parasolid_INCLUDE_DIR Parasolid_LIBRARY)