From ba181548bca566d320899f7b78e5b753c0dba611 Mon Sep 17 00:00:00 2001 From: ssrlive <30760636+ssrlive@users.noreply.github.com> Date: Tue, 2 Mar 2021 14:27:40 +0800 Subject: [PATCH] To avoid target exe file export JSON functions. --- CMakeLists.txt | 4 ++++ debug.h | 2 +- json_c_version.h | 2 +- json_types.h | 2 +- printbuf.h | 2 +- 5 files changed, 8 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 79038aa390..60fa7e10d8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -79,6 +79,10 @@ include(CMakePackageConfigHelpers) option(BUILD_SHARED_LIBS "Default to building shared libraries" ON) option(BUILD_STATIC_LIBS "Default to building static libraries" ON) +if (BUILD_SHARED_LIBS) + add_definitions(-D JSON_C_DLL) +endif() + # Generate a release merge and test it to verify the correctness of republishing the package. ADD_CUSTOM_TARGET(distcheck COMMAND make package_source diff --git a/debug.h b/debug.h index a24136b818..7463f863e3 100644 --- a/debug.h +++ b/debug.h @@ -24,7 +24,7 @@ extern "C" { #endif #ifndef JSON_EXPORT -#if defined(_MSC_VER) +#if defined(_MSC_VER) && defined(JSON_C_DLL) #define JSON_EXPORT __declspec(dllexport) #else #define JSON_EXPORT extern diff --git a/json_c_version.h b/json_c_version.h index 00de4b3ff1..d15ad64cb5 100644 --- a/json_c_version.h +++ b/json_c_version.h @@ -24,7 +24,7 @@ extern "C" { #define JSON_C_VERSION "0.15" #ifndef JSON_EXPORT -#if defined(_MSC_VER) +#if defined(_MSC_VER) && defined(JSON_C_DLL) #define JSON_EXPORT __declspec(dllexport) #else #define JSON_EXPORT extern diff --git a/json_types.h b/json_types.h index 67f4497f60..b7e55ada89 100644 --- a/json_types.h +++ b/json_types.h @@ -18,7 +18,7 @@ extern "C" { #endif #ifndef JSON_EXPORT -#if defined(_MSC_VER) +#if defined(_MSC_VER) && defined(JSON_C_DLL) #define JSON_EXPORT __declspec(dllexport) #else #define JSON_EXPORT extern diff --git a/printbuf.h b/printbuf.h index bfcbd2b266..a0da668e6e 100644 --- a/printbuf.h +++ b/printbuf.h @@ -24,7 +24,7 @@ #define _printbuf_h_ #ifndef JSON_EXPORT -#if defined(_MSC_VER) +#if defined(_MSC_VER) && defined(JSON_C_DLL) #define JSON_EXPORT __declspec(dllexport) #else #define JSON_EXPORT extern