Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRay Molenkamp <github@lazydodo.com>2020-09-15 22:16:37 +0300
committerRay Molenkamp <github@lazydodo.com>2020-09-15 22:16:37 +0300
commit2eec6ec793386cef522193f69e2790a4bd301391 (patch)
treed08ad928130ffbb80102ae8747c52dc974b99020 /build_files/cmake/Modules/FindPotrace.cmake
parent7b3d38a72d367e155ad3c417882fa3dfcff2fcb9 (diff)
Deps: Add potrace as a new library dependency
For work the GP team plans to land soon (T79877) potrace was taken on as an additional optional dependency. This diff adds building the library to the deps builder and takes care of the integration into the build-system with the `WITH_POTRACE` cmake switch. Differential Revision: https://developer.blender.org/D8662 Reviewed by: brecht, sergey
Diffstat (limited to 'build_files/cmake/Modules/FindPotrace.cmake')
-rw-r--r--build_files/cmake/Modules/FindPotrace.cmake65
1 files changed, 65 insertions, 0 deletions
diff --git a/build_files/cmake/Modules/FindPotrace.cmake b/build_files/cmake/Modules/FindPotrace.cmake
new file mode 100644
index 00000000000..5b6e68b7f5c
--- /dev/null
+++ b/build_files/cmake/Modules/FindPotrace.cmake
@@ -0,0 +1,65 @@
+# - Find potrace library
+# Find the potrace include and library
+# This module defines
+# POTRACE_INCLUDE_DIRS, where to find potracelib.h, Set when
+# POTRACE is found.
+# POTRACE_LIBRARIES, libraries to link against to use POTRACE.
+# POTRACE_ROOT_DIR, The base directory to search for POTRACE.
+# This can also be an environment variable.
+# POTRACE_FOUND, If false, do not try to use POTRACE.
+#
+# also defined, but not for general use are
+# POTRACE_LIBRARY, where to find the POTRACE library.
+
+#=============================================================================
+# Copyright 2020 Blender Foundation.
+#
+# Distributed under the OSI-approved BSD 3-Clause License,
+# see accompanying file BSD-3-Clause-license.txt for details.
+#=============================================================================
+
+# If POTRACE_ROOT_DIR was defined in the environment, use it.
+IF(NOT POTRACE_ROOT_DIR AND NOT $ENV{POTRACE_ROOT_DIR} STREQUAL "")
+ SET(POTRACE_ROOT_DIR $ENV{POTRACE_ROOT_DIR})
+ENDIF()
+
+SET(_potrace_SEARCH_DIRS
+ ${POTRACE_ROOT_DIR}
+ /opt/lib/potrace
+ /usr/include
+ /usr/local/include
+)
+
+FIND_PATH(POTRACE_INCLUDE_DIR
+ NAMES
+ potracelib.h
+ HINTS
+ ${_potrace_SEARCH_DIRS}
+ PATH_SUFFIXES
+ include
+)
+
+FIND_LIBRARY(POTRACE_LIBRARY
+ NAMES
+ potrace
+ HINTS
+ ${_potrace_SEARCH_DIRS}
+ PATH_SUFFIXES
+ lib64 lib
+ )
+
+# handle the QUIETLY and REQUIRED arguments and set POTRACE_FOUND to TRUE if
+# all listed variables are TRUE
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(POTRACE DEFAULT_MSG
+ POTRACE_LIBRARY POTRACE_INCLUDE_DIR)
+
+IF(POTRACE_FOUND)
+ SET(POTRACE_LIBRARIES ${POTRACE_LIBRARY})
+ SET(POTRACE_INCLUDE_DIRS ${POTRACE_INCLUDE_DIR})
+ENDIF()
+
+MARK_AS_ADVANCED(
+ POTRACE_INCLUDE_DIR
+ POTRACE_LIBRARY
+)