Răsfoiți Sursa

Minor installation adjustments #216

Chlumsky 5 luni în urmă
părinte
comite
03889564a5
2 a modificat fișierele cu 21 adăugiri și 2 ștergeri
  1. 13 0
      CMakeLists.txt
  2. 8 2
      cmake/msdfgenConfig.cmake.in

+ 13 - 0
CMakeLists.txt

@@ -8,6 +8,8 @@ option(MSDFGEN_USE_VCPKG "Use vcpkg package manager to link project dependencies
 option(MSDFGEN_USE_OPENMP "Build with OpenMP support for multithreaded code" OFF)
 option(MSDFGEN_USE_CPP11 "Build with C++11 enabled" ON)
 option(MSDFGEN_USE_SKIA "Build with the Skia library" ON)
+option(MSDFGEN_DISABLE_SVG "Disable SVG support" OFF)
+option(MSDFGEN_DISABLE_PNG "Disable PNG support" OFF)
 option(MSDFGEN_INSTALL "Generate installation target" OFF)
 option(MSDFGEN_DYNAMIC_RUNTIME "Link dynamic runtime library instead of static" OFF)
 option(BUILD_SHARED_LIBS "Generate dynamic library files instead of static" OFF)
@@ -259,6 +261,11 @@ if(MSDFGEN_INSTALL)
     endif()
     configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake/msdfgen-config.h.in" msdfgen-config.h)
 
+    if (NOT MSDFGEN_INSTALL_NO_GLOBAL_INCLUDE)
+        write_file("${CMAKE_CURRENT_BINARY_DIR}/msdfgen.h" "\n#pragma once\n\n#include \"msdfgen/msdfgen.h\"")
+        write_file("${CMAKE_CURRENT_BINARY_DIR}/msdfgen-ext.h" "\n#pragma once\n\n#include \"msdfgen/msdfgen-ext.h\"")
+    endif()
+
     write_basic_package_version_file(
         "${CMAKE_CURRENT_BINARY_DIR}/msdfgenConfigVersion.cmake"
         VERSION ${PROJECT_VERSION}
@@ -288,6 +295,9 @@ if(MSDFGEN_INSTALL)
         PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/msdfgen/core
     )
     install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/msdfgen.h" DESTINATION include/msdfgen)
+    if (NOT MSDFGEN_INSTALL_NO_GLOBAL_INCLUDE)
+        install(FILES "${CMAKE_CURRENT_BINARY_DIR}/msdfgen.h" DESTINATION include)
+    endif()
     if(MSVC AND BUILD_SHARED_LIBS)
         install(FILES $<TARGET_PDB_FILE:msdfgen-core> DESTINATION ${CMAKE_INSTALL_BINDIR} OPTIONAL)
     endif()
@@ -301,6 +311,9 @@ if(MSDFGEN_INSTALL)
             PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/msdfgen/ext
         )
         install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/msdfgen-ext.h" DESTINATION include/msdfgen)
+        if (NOT MSDFGEN_INSTALL_NO_GLOBAL_INCLUDE)
+            install(FILES "${CMAKE_CURRENT_BINARY_DIR}/msdfgen-ext.h" DESTINATION include)
+        endif()
         if(MSVC AND BUILD_SHARED_LIBS)
             install(FILES $<TARGET_PDB_FILE:msdfgen-ext> DESTINATION ${CMAKE_INSTALL_BINDIR} OPTIONAL)
         endif()

+ 8 - 2
cmake/msdfgenConfig.cmake.in

@@ -6,11 +6,17 @@ set(MSDFGEN_USE_VCPKG @MSDFGEN_USE_VCPKG@)
 set(MSDFGEN_USE_OPENMP @MSDFGEN_USE_OPENMP@)
 set(MSDFGEN_USE_SKIA @MSDFGEN_USE_SKIA@)
 set(MSDFGEN_STANDALONE_AVAILABLE @MSDFGEN_BUILD_STANDALONE@)
+set(MSDFGEN_DISABLE_SVG @MSDFGEN_DISABLE_SVG@)
+set(MSDFGEN_DISABLE_PNG @MSDFGEN_DISABLE_PNG@)
 
 if(NOT MSDFGEN_CORE_ONLY)
     find_dependency(Freetype REQUIRED)
-    find_dependency(tinyxml2 REQUIRED)
-    find_dependency(PNG REQUIRED)
+    if(NOT MSDFGEN_DISABLE_SVG)
+        find_dependency(tinyxml2 REQUIRED)
+    endif()
+    if(NOT MSDFGEN_DISABLE_PNG)
+        find_dependency(PNG REQUIRED)
+    endif()
 endif()
 if(MSDFGEN_USE_SKIA)
     find_dependency(Threads REQUIRED)