57 lines
1.7 KiB
CMake
57 lines
1.7 KiB
CMake
# Finddraco
|
|
#
|
|
# Locates draco and sets the following variables:
|
|
#
|
|
# draco_FOUND draco_INCLUDE_DIRS draco_LIBARY_DIRS draco_LIBRARIES
|
|
# draco_VERSION_STRING
|
|
#
|
|
# draco_FOUND is set to YES only when all other variables are successfully
|
|
# configured.
|
|
|
|
unset(draco_FOUND)
|
|
unset(draco_INCLUDE_DIRS)
|
|
unset(draco_LIBRARY_DIRS)
|
|
unset(draco_LIBRARIES)
|
|
unset(draco_VERSION_STRING)
|
|
|
|
mark_as_advanced(draco_FOUND)
|
|
mark_as_advanced(draco_INCLUDE_DIRS)
|
|
mark_as_advanced(draco_LIBRARY_DIRS)
|
|
mark_as_advanced(draco_LIBRARIES)
|
|
mark_as_advanced(draco_VERSION_STRING)
|
|
|
|
set(draco_version_file_no_prefix "draco/src/draco/core/draco_version.h")
|
|
|
|
# Set draco_INCLUDE_DIRS
|
|
find_path(draco_INCLUDE_DIRS NAMES "${draco_version_file_no_prefix}")
|
|
|
|
# Extract the version string from draco_version.h.
|
|
if(draco_INCLUDE_DIRS)
|
|
set(draco_version_file
|
|
"${draco_INCLUDE_DIRS}/draco/src/draco/core/draco_version.h")
|
|
file(STRINGS "${draco_version_file}" draco_version REGEX "kdracoVersion")
|
|
list(GET draco_version 0 draco_version)
|
|
string(REPLACE "static const char kdracoVersion[] = " "" draco_version
|
|
"${draco_version}")
|
|
string(REPLACE ";" "" draco_version "${draco_version}")
|
|
string(REPLACE "\"" "" draco_version "${draco_version}")
|
|
set(draco_VERSION_STRING ${draco_version})
|
|
endif()
|
|
|
|
# Find the library.
|
|
if(BUILD_SHARED_LIBS)
|
|
find_library(draco_LIBRARIES NAMES draco.dll libdraco.dylib libdraco.so)
|
|
else()
|
|
find_library(draco_LIBRARIES NAMES draco.lib libdraco.a)
|
|
endif()
|
|
|
|
# Store path to library.
|
|
get_filename_component(draco_LIBRARY_DIRS ${draco_LIBRARIES} DIRECTORY)
|
|
|
|
if(draco_INCLUDE_DIRS
|
|
AND draco_LIBRARY_DIRS
|
|
AND draco_LIBRARIES
|
|
AND draco_VERSION_STRING)
|
|
set(draco_FOUND YES)
|
|
endif()
|