diff options
| author | Jean-Philippe Bruyère <jp_bruyere@hotmail.com> | 2026-09-03 23:00:40 +0200 |
|---|---|---|
| committer | Jean-Philippe Bruyère <jp_bruyere@hotmail.com> | 2026-09-04 11:11:43 +0200 |
| commit | 627f7e6139853f766e88258cd651fb8e5a4cf516 (patch) | |
| tree | 255ad1bcaa69087c7a28079101870acc31db9933 | |
| parent | 9ba0c9f66c9d3b8dc9a241991d1759c08a908f17 (diff) | |
refactor visibility and linking
| -rw-r--r-- | CMakeLists.txt | 26 | ||||
| m--------- | external/glutess | 0 | ||||
| -rw-r--r-- | gunit_tests/drawTestBase.cpp | 6 | ||||
| -rw-r--r-- | include/vkvg.h | 4 | ||||
| -rw-r--r-- | samples/CMakeLists.txt | 1 | ||||
| -rw-r--r-- | tests/CMakeLists.txt | 2 | ||||
| m--------- | vkh | 0 |
7 files changed, 18 insertions, 21 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 9e92cb1..cb4a7db 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,13 +4,6 @@ SET(LANG "C") SET(CMAKE_${LANG}_STANDARD 11) SET(CMAKE_${LANG}_EXTENSIONS on) -set(CMAKE_C_VISIBILITY_PRESET hidden) -set(CMAKE_CXX_VISIBILITY_PRESET hidden) -set(CMAKE_VISIBILITY_INLINES_HIDDEN ON) - -#OPTION (VKVG_BUILD_SHARED_LIB "Build using shared libraries" OFF) -#SET(BUILD_SHARED_LIBS ${VKVG_BUILD_SHARED_LIB}) - PROJECT(vkvg VERSION 0.3.0 DESCRIPTION "Vulkan Vector Graphic" LANGUAGES C CXX) ADD_COMPILE_DEFINITIONS( @@ -30,13 +23,8 @@ IF(NOT CMAKE_BUILD_TYPE) SET(CMAKE_BUILD_TYPE Release) ENDIF() - -IF (UNIX) - ADD_COMPILE_OPTIONS(-lm) - IF (BUILD_SHARED_LIBS) - #force PIC for all subproject, even static libs - ADD_COMPILE_OPTIONS(-fPIC) - ENDIF() +IF(BUILD_SHARED_LIBS) + ADD_DEFINITIONS (-DVKVG_SHARED_BUILD) ENDIF() OPTION(ENABLE_PROFILING "compile with the -pg options..." OFF) @@ -281,8 +269,13 @@ SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES C_STANDARD 11 C_STANDARD_REQUIRED ON C_EXTENSIONS OFF - LINKER_LANGUAGE C + + POSITION_INDEPENDENT_CODE ${BUILD_SHARED_LIBS} + PUBLIC_HEADER "${VKVG_PUBLIC_HEADERS}" + + C_VISIBILITY_PRESET hidden + VISIBILITY_INLINES_HIDDEN ON ) TARGET_INCLUDE_DIRECTORIES("${PROJECT_NAME}" @@ -319,9 +312,10 @@ IF(VKVG_USE_GLUTESS) ENDIF() TARGET_LINK_LIBRARIES("${PROJECT_NAME}" + PRIVATE + vkh PUBLIC ${Vulkan_LIBRARIES} - vkh ) IF (SHADERS_H) ADD_DEPENDENCIES("${PROJECT_NAME}" BuildShadersHeader) diff --git a/external/glutess b/external/glutess -Subproject 28098202d43453598441f5fbf5c74a6ded11ae1 +Subproject ac7275124d5f6fb5b3127528e2d151e80f9c66b diff --git a/gunit_tests/drawTestBase.cpp b/gunit_tests/drawTestBase.cpp index 61ffea3..a91b3b9 100644 --- a/gunit_tests/drawTestBase.cpp +++ b/gunit_tests/drawTestBase.cpp @@ -1,8 +1,10 @@ #include "drawTestBase.h" -// #define STB_IMAGE_IMPLEMENTATION +#define STBI_ASSERT(x) ((void)0) +#define STBIW_ASSERT(x) ((void)0) +#define STB_IMAGE_IMPLEMENTATION #include "stb_image.h" -// #define STB_IMAGE_WRITE_IMPLEMENTATION +#define STB_IMAGE_WRITE_IMPLEMENTATION #include "stb_image_write.h" DrawTestBase::DrawTestBase() { diff --git a/include/vkvg.h b/include/vkvg.h index fd2226b..4deef25 100644 --- a/include/vkvg.h +++ b/include/vkvg.h @@ -104,7 +104,7 @@ extern "C" { #define VKVG_LOG_INFO 0x00008000 //(VKVG_LOG_INFO_PTS|VKVG_LOG_INFO_PATH|VKVG_LOG_INFO_CMD|VKVG_LOG_INFO_VAO) #ifdef DEBUG -extern uint32_t vkvg_log_level; +vkvg_public extern uint32_t vkvg_log_level; #ifdef VKVG_WIRED_DEBUG typedef enum { vkvg_wired_debug_mode_normal = 0x01, @@ -113,7 +113,7 @@ typedef enum { vkvg_wired_debug_mode_both = vkvg_wired_debug_mode_points | vkvg_wired_debug_mode_lines, vkvg_wired_debug_mode_all = 0xFFFFFFFF } vkvg_wired_debug_mode; -extern vkvg_wired_debug_mode vkvg_wired_debug; +vkvg_public extern vkvg_wired_debug_mode vkvg_wired_debug; #endif #endif diff --git a/samples/CMakeLists.txt b/samples/CMakeLists.txt index ab4f883..0bb888a 100644 --- a/samples/CMakeLists.txt +++ b/samples/CMakeLists.txt @@ -35,6 +35,7 @@ target_include_directories("${PROJECT_NAME}" PRIVATE ) target_link_libraries("${PROJECT_NAME}" PRIVATE vkvg + vkh ${Vulkan_LIBRARIES} ${GLFW3_LIBRARY} argparse diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 20124e9..315a001 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -37,7 +37,7 @@ FUNCTION (buildtest TEST_FILE) ${GLFW3_LIBRARY} Threads::Threads ) - TARGET_LINK_LIBRARIES(${TEST_NAME} PRIVATE vkvg) + TARGET_LINK_LIBRARIES(${TEST_NAME} PRIVATE vkvg vkh) ENDFUNCTION (buildtest) diff --git a/vkh b/vkh -Subproject 01fa911d6a07c3048ac6e10b199b6c67156d841 +Subproject ba02c80d67bd98ed2186fd618d24a8c300189b8 |