新增 命名空间和动态库控制宏
parent
8d4ed62b67
commit
be0e1e70bd
|
@ -8,6 +8,11 @@ set(MAIN_FILE
|
||||||
${PLUMAGE_RENDER}/render.cpp
|
${PLUMAGE_RENDER}/render.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
|
set(GLTF_MODEL_LOADER
|
||||||
|
"${PLUMAGE_RENDER}/glTFBoundingBox.h"
|
||||||
|
"${PLUMAGE_RENDER}/glTFBoundingBox.cpp"
|
||||||
|
)
|
||||||
|
|
||||||
# wayland requires additional source files
|
# wayland requires additional source files
|
||||||
IF(USE_WAYLAND_WSI)
|
IF(USE_WAYLAND_WSI)
|
||||||
SET(SOURCE ${SOURCE} ${CMAKE_BINARY_DIR}/xdg-shell-client-protocol.h ${CMAKE_BINARY_DIR}/xdg-shell-protocol.c )
|
SET(SOURCE ${SOURCE} ${CMAKE_BINARY_DIR}/xdg-shell-client-protocol.h ${CMAKE_BINARY_DIR}/xdg-shell-protocol.c )
|
||||||
|
@ -37,6 +42,7 @@ include_directories(${lib_base_path})
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
add_executable(${RenderName} WIN32 ${SHADERS_GLSL} ${SHADERS_HLSL}
|
add_executable(${RenderName} WIN32 ${SHADERS_GLSL} ${SHADERS_HLSL}
|
||||||
${MAIN_FILE}
|
${MAIN_FILE}
|
||||||
|
${GLTF_MODEL_LOADER}
|
||||||
"render/glTFModel.h"
|
"render/glTFModel.h"
|
||||||
"render/glTFModel.cpp"
|
"render/glTFModel.cpp"
|
||||||
"render/renderFoundation.h"
|
"render/renderFoundation.h"
|
||||||
|
@ -51,6 +57,12 @@ if(RESOURCE_INSTALL_DIR)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
#if(WIN32)
|
||||||
|
# target_compile_definitions(MyLib PRIVATE MYLIB_EXPORTS)
|
||||||
|
#endif(UNIX AND NOT APPLE) # Linux及类似系统
|
||||||
|
# add_compile_options(-fvisibility=hidden)
|
||||||
|
# add_compile_options(-fvisibility-inlines-hidden)
|
||||||
|
#endif()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,30 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
/// 命名空间宏
|
||||||
|
#define GLTFLOADER_NAMESPACE_BEGIN namespace glTFLoader {
|
||||||
|
#define GLTFLOADER_NAMESPACE_END }
|
||||||
|
|
||||||
|
/// windows 导入导出宏,GLTFLOADER_EXPORTS将在cmake中定义
|
||||||
|
/// unix-like 下提供符号可见性控制
|
||||||
|
#ifdef GLTFLOADER_STATIC_BUILD
|
||||||
|
#define GLTFLOADER_API
|
||||||
|
#define GLTFLOADER_LOCAL
|
||||||
|
#else
|
||||||
|
#ifdef _WIN32
|
||||||
|
#ifdef GLTFLOADER_EXPORTS
|
||||||
|
#define GLTFLOADER_API __declspec(dllexport)
|
||||||
|
#define GLTFLOADER_LOCAL
|
||||||
|
#else
|
||||||
|
#define GLTFLOADER_API __declspec(dllimport)
|
||||||
|
#define GLTFLOADER_LOCAL
|
||||||
|
#endif
|
||||||
|
#else
|
||||||
|
#if __GNUC__ >= 4 || defined(__clang__)
|
||||||
|
#define GLTFLOADER_API __attribute__ ((visibility ("default")))
|
||||||
|
#define GLTFLOADER_LOCAL __attribute__ ((visibility ("hidden")))
|
||||||
|
#else
|
||||||
|
#define GLTFLOADER_API
|
||||||
|
#define GLTFLOADER_LOCAL
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
Loading…
Reference in New Issue