vcpkg/ports/glui/install-one-flavor.patch

71 lines
2.0 KiB
Diff
Raw Normal View History

diff --git a/CMakeLists.txt b/CMakeLists.txt
index c0f7d32..8446f3c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -59,6 +59,22 @@ target_include_directories(glui_obj
# create static *and* shared libraries without double compilation
set_target_properties( glui_obj PROPERTIES POSITION_INDEPENDENT_CODE 1)
+if (MSVC)
+ target_compile_options(glui_obj
+ PRIVATE
+ /D_CRT_SECURE_NO_WARNINGS
+ /wd4244
+ /wd4305
+ )
+endif()
+
+if(BUILD_SHARED_LIBS)
+ if(WIN32)
+ target_compile_definitions(glui_obj
+ PRIVATE GLUI_BUILDING_LIB
+ PUBLIC GLUIDLL
+ )
+ endif()
add_library(glui SHARED $<TARGET_OBJECTS:glui_obj>)
target_include_directories(glui
PUBLIC
@@ -71,7 +87,7 @@ set_target_properties(glui PROPERTIES
DEBUG_POSTFIX "d"
VERSION ${PROJECT_VERSION}
SOVERSION ${PROJECT_VERSION})
-
+else()
add_library(glui_static STATIC $<TARGET_OBJECTS:glui_obj>)
target_include_directories(glui_static
PUBLIC
@@ -81,7 +97,9 @@ target_include_directories(glui_static
${GLUT_INCLUDE_DIR})
target_link_libraries(glui_static PUBLIC ${GLUT_LIBRARIES} ${OPENGL_LIBRARIES})
set_target_properties(glui_static PROPERTIES DEBUG_POSTFIX "d")
+endif()
+if(GLUI_BUILD_EXAMPLES)
add_executable(ppm2array tools/ppm.cpp tools/ppm2array.cpp)
target_link_libraries(ppm2array)
@@ -97,7 +115,7 @@ add_executable(example5 example/example5.cpp)
target_link_libraries(example5 glui_static ${GLUT_LIBRARIES} ${OPENGL_LIBRARIES})
add_executable(example6 example/example6.cpp)
target_link_libraries(example6 glui_static ${GLUT_LIBRARIES} ${OPENGL_LIBRARIES})
-
+endif()
####
@@ -130,8 +148,13 @@ configure_package_config_file(
)
# Targets:
+if(BUILD_SHARED_LIBS)
+ set(glui_target glui)
+else()
+ set(glui_target glui_static)
+endif()
install(
- TARGETS glui_static glui
+ TARGETS ${glui_target}
EXPORT "${targets_export_name}"
LIBRARY DESTINATION "lib"
ARCHIVE DESTINATION "lib"