diff --git a/CMakeLists.txt b/CMakeLists.txt index 11a25580..25909437 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -343,7 +343,9 @@ if(APPLE OR CMAKE_SYSTEM_NAME MATCHES "DragonFly|FreeBSD|Linux|NetBSD|OpenBSD") endif() add_library(uv SHARED ${uv_sources}) -target_compile_definitions(uv PRIVATE ${uv_defines} BUILDING_UV_SHARED=1) +target_compile_definitions(uv + INTERFACE USING_UV_SHARED=1 + PRIVATE ${uv_defines} BUILDING_UV_SHARED=1) target_compile_options(uv PRIVATE ${uv_cflags}) target_include_directories(uv PUBLIC include PRIVATE src) target_link_libraries(uv ${uv_libraries}) diff --git a/include/uv.h b/include/uv.h index ee94397a..ee45bcae 100644 --- a/include/uv.h +++ b/include/uv.h @@ -27,6 +27,10 @@ extern "C" { #endif +#if defined(BUILDING_UV_SHARED) && defined(USING_UV_SHARED) +#error "Define either BUILDING_UV_SHARED or USING_UV_SHARED, not both." +#endif + #ifdef _WIN32 /* Windows - set up dll import/export decorators. */ # if defined(BUILDING_UV_SHARED)