diff options
Diffstat (limited to 'vcpkg/ports/nanogui/fix-glad-dependence.patch')
| -rw-r--r-- | vcpkg/ports/nanogui/fix-glad-dependence.patch | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/vcpkg/ports/nanogui/fix-glad-dependence.patch b/vcpkg/ports/nanogui/fix-glad-dependence.patch new file mode 100644 index 0000000..03a3475 --- /dev/null +++ b/vcpkg/ports/nanogui/fix-glad-dependence.patch @@ -0,0 +1,101 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 3fe6f5d..22dc16f 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -87,7 +87,7 @@ endif() + + # Shared library mode: add dllimport/dllexport flags to all symbols + if (NANOGUI_BUILD_SHARED) +- list(APPEND NANOGUI_EXTRA_DEFS -DNANOGUI_SHARED -DNVG_SHARED -DGLAD_GLAPI_EXPORT) ++ list(APPEND NANOGUI_EXTRA_DEFS -DNANOGUI_SHARED -DNVG_SHARED) + endif() + + if (MSVC) +@@ -196,21 +196,6 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + endif() + endif() + +-if (NANOGUI_USE_GLAD) +- # Build and include GLAD on Windows +- list(APPEND LIBNANOGUI_EXTRA_SOURCE +- "${CMAKE_CURRENT_SOURCE_DIR}/ext/glad/src/glad.c" +- "${CMAKE_CURRENT_SOURCE_DIR}/ext/glad/include/glad/glad.h" +- "${CMAKE_CURRENT_SOURCE_DIR}/ext/glad/include/KHR/khrplatform.h") +- if (MSVC) +- set_source_files_properties("${CMAKE_CURRENT_SOURCE_DIR}/ext/glad/src/glad.c" +- PROPERTIES COMPILE_FLAGS "/wd4055 ") +- endif() +- include_directories(ext/glad/include) +- list(APPEND NANOGUI_EXTRA_DEFS -DNANOGUI_GLAD) +- list(APPEND NANOGUI_EXTRA_INCS "${CMAKE_CURRENT_SOURCE_DIR}/ext/glad/include") +-endif() +- + list(APPEND NANOGUI_EXTRA_INCS + "${CMAKE_CURRENT_SOURCE_DIR}/ext/glfw/include" + "${CMAKE_CURRENT_SOURCE_DIR}/ext/nanovg/src" +@@ -299,8 +284,6 @@ if (APPLE) + add_compile_options(-fobjc-arc) + endif() + +-add_definitions(${NANOGUI_EXTRA_DEFS}) +- + # Compile main NanoGUI library + add_library(nanogui-obj OBJECT + # Merge NanoVG into the NanoGUI library +@@ -373,6 +356,14 @@ find_package(Eigen3 CONFIG REQUIRED) + find_package(glfw3 CONFIG REQUIRED) + target_link_libraries(nanogui glfw nanovg::nanovg Eigen3::Eigen) + ++if (NANOGUI_USE_GLAD) ++ find_package(glad CONFIG REQUIRED) ++ target_link_libraries(nanogui glad::glad) ++ list(APPEND NANOGUI_EXTRA_DEFS -DNANOGUI_GLAD) ++endif() ++ ++add_definitions(${NANOGUI_EXTRA_DEFS}) ++ + if (NANOGUI_BUILD_SHARED) + set_property(TARGET nanogui-obj PROPERTY POSITION_INDEPENDENT_CODE ON) + endif() +@@ -380,11 +371,6 @@ endif() + # Compile/link flags for NanoGUI + set_property(TARGET nanogui-obj APPEND PROPERTY COMPILE_DEFINITIONS "NANOGUI_BUILD;NVG_BUILD") + +-if (NANOGUI_USE_GLAD AND NANOGUI_BUILD_SHARED) +- set_property(TARGET nanogui-obj APPEND PROPERTY COMPILE_DEFINITIONS +- "GLAD_GLAPI_EXPORT;GLAD_GLAPI_EXPORT_BUILD") +-endif() +- + if (NANOGUI_BUILD_SHARED) + target_link_libraries(nanogui ${NANOGUI_EXTRA_LIBS}) + endif() +diff --git a/include/nanogui/opengl.h b/include/nanogui/opengl.h +index f5abcb2..1c20653 100644 +--- a/include/nanogui/opengl.h ++++ b/include/nanogui/opengl.h +@@ -17,10 +17,6 @@ + + #ifndef DOXYGEN_SHOULD_SKIP_THIS + #if defined(NANOGUI_GLAD) +- #if defined(NANOGUI_SHARED) && !defined(GLAD_GLAPI_EXPORT) +- #define GLAD_GLAPI_EXPORT +- #endif +- + #include <glad/glad.h> + #else + #if defined(__APPLE__) +diff --git a/src/example3.cpp b/src/example3.cpp +index 3d2ecfa..72deaa8 100644 +--- a/src/example3.cpp ++++ b/src/example3.cpp +@@ -14,10 +14,6 @@ + // GLFW + // + #if defined(NANOGUI_GLAD) +- #if defined(NANOGUI_SHARED) && !defined(GLAD_GLAPI_EXPORT) +- #define GLAD_GLAPI_EXPORT +- #endif +- + #include <glad/glad.h> + #else + #if defined(__APPLE__) |