Set cxx visibility hidden and update symbols

This commit is contained in:
handsome_feng 2024-02-17 15:19:23 +08:00
parent 65b76f474c
commit 639c922ac7
10 changed files with 43 additions and 14 deletions

View File

@ -20,6 +20,14 @@ libkydiagnostics.so.1 libkysdk-base #MINVER#
_ZN3kdk11BuriedPointD1Ev@Base 2.2.0.1 _ZN3kdk11BuriedPointD1Ev@Base 2.2.0.1
_ZN3kdk11BuriedPointD2Ev@Base 2.2.0.1 _ZN3kdk11BuriedPointD2Ev@Base 2.2.0.1
kdk_buried_point@Base 2.2.0.1 kdk_buried_point@Base 2.2.0.1
(optional)_ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIS5_ESaIS8_EE24_M_get_insert_unique_posERS7_@Base 2.2.0.1
(optional)_ZNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIS5_ESaIS8_EE29_M_get_insert_hint_unique_posESt23_Rb_tree_const_iteratorIS8_ERS7_@Base 2.2.0.1
(optional)_ZTISt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE2EE@Base 2.2.0.1
(optional)_ZTISt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE@Base 2.2.0.1
(optional)_ZTSSt11_Mutex_baseILN9__gnu_cxx12_Lock_policyE2EE@Base 2.2.0.1
(optional)_ZTSSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE@Base 2.2.0.1
(optional)_ZTSSt19_Sp_make_shared_tag@Base 2.2.0.1
(optional)_ZZNSt19_Sp_make_shared_tag5_S_tiEvE5__tag@Base 2.2.0.1
libkysdk-config.so.1 libkysdk-base #MINVER# libkysdk-config.so.1 libkysdk-base #MINVER#
* Build-Depends-Package: libkysdk-base-dev * Build-Depends-Package: libkysdk-base-dev
S_destroyParse@Base 2.2.0.0 S_destroyParse@Base 2.2.0.0

View File

@ -3,8 +3,12 @@ cmake_minimum_required(VERSION 3.5)
project(kydiagnostics LANGUAGES CXX) project(kydiagnostics LANGUAGES CXX)
set(DIAGNOSTICS_TOP_DIR ${CMAKE_CURRENT_LIST_DIR}) set(DIAGNOSTICS_TOP_DIR ${CMAKE_CURRENT_LIST_DIR})
set(CMAKE_CXX_VISIBILITY_PRESET hidden)
set(CMAKE_VISIBILITY_INLINES_HIDDEN 1)
add_library(${PROJECT_NAME} SHARED) add_library(${PROJECT_NAME} SHARED)
include(GenerateExportHeader)
generate_export_header(kydiagnostics)
set_target_properties(kydiagnostics PROPERTIES VERSION 2.0.0 SOVERSION 1) set_target_properties(kydiagnostics PROPERTIES VERSION 2.0.0 SOVERSION 1)
target_compile_options(${PROJECT_NAME} PRIVATE -Wall -g) target_compile_options(${PROJECT_NAME} PRIVATE -Wall -g)
@ -32,5 +36,8 @@ target_sources(${PROJECT_NAME} PRIVATE ${SRCS})
install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR}) install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR})
install(FILES libkydiagnostics.h target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
install(FILES
libkydiagnostics.h
${CMAKE_CURRENT_BINARY_DIR}/kydiagnostics_export.h
DESTINATION include/kysdk/kysdk-base) DESTINATION include/kysdk/kysdk-base)

View File

@ -21,13 +21,15 @@
#ifndef BURIEDPOINT_H_ #ifndef BURIEDPOINT_H_
#define BURIEDPOINT_H_ #define BURIEDPOINT_H_
#include "kydiagnostics_export.h"
#include <string> #include <string>
#include <map> #include <map>
namespace kdk namespace kdk
{ {
class BuriedPoint class KYDIAGNOSTICS_EXPORT BuriedPoint
{ {
public: public:
BuriedPoint(); BuriedPoint();

View File

@ -21,7 +21,7 @@
#include "buriedpoint.h" #include "buriedpoint.h"
#include "libkydiagnostics.h" #include "libkydiagnostics.h"
int kdk_buried_point(char *appName , char *messageType , KBuriedPoint *data , int length) KYDIAGNOSTICS_EXPORT int kdk_buried_point(char *appName , char *messageType , KBuriedPoint *data , int length)
{ {
std::map<std::string , std::string> uploadData; std::map<std::string , std::string> uploadData;
for (int i = 0 ; i < length ; i++) { for (int i = 0 ; i < length ; i++) {

View File

@ -16,12 +16,14 @@
#include <nlohmann/detail/meta/identity_tag.hpp> #include <nlohmann/detail/meta/identity_tag.hpp>
#include <nlohmann/detail/meta/type_traits.hpp> #include <nlohmann/detail/meta/type_traits.hpp>
#include "kydiagnostics_export.h"
namespace nlohmann namespace nlohmann
{ {
/// @sa https://json.nlohmann.me/api/adl_serializer/ /// @sa https://json.nlohmann.me/api/adl_serializer/
template<typename ValueType, typename> template<typename ValueType, typename>
struct adl_serializer struct KYDIAGNOSTICS_NO_EXPORT adl_serializer
{ {
/// @brief convert a JSON value to any value type /// @brief convert a JSON value to any value type
/// @sa https://json.nlohmann.me/api/adl_serializer/from_json/ /// @sa https://json.nlohmann.me/api/adl_serializer/from_json/

View File

@ -12,13 +12,15 @@
#include <tuple> // tie #include <tuple> // tie
#include <utility> // move #include <utility> // move
#include "kydiagnostics_export.h"
namespace nlohmann namespace nlohmann
{ {
/// @brief an internal type for a backed binary type /// @brief an internal type for a backed binary type
/// @sa https://json.nlohmann.me/api/byte_container_with_subtype/ /// @sa https://json.nlohmann.me/api/byte_container_with_subtype/
template<typename BinaryType> template<typename BinaryType>
class byte_container_with_subtype : public BinaryType class KYDIAGNOSTICS_NO_EXPORT byte_container_with_subtype : public BinaryType
{ {
public: public:
using container_type = BinaryType; using container_type = BinaryType;

View File

@ -18,6 +18,8 @@
#include <nlohmann/detail/input/position_t.hpp> #include <nlohmann/detail/input/position_t.hpp>
#include <nlohmann/detail/macro_scope.hpp> #include <nlohmann/detail/macro_scope.hpp>
#include "kydiagnostics_export.h"
namespace nlohmann namespace nlohmann
{ {
namespace detail namespace detail
@ -28,7 +30,7 @@ namespace detail
/// @brief general exception of the @ref basic_json class /// @brief general exception of the @ref basic_json class
/// @sa https://json.nlohmann.me/api/basic_json/exception/ /// @sa https://json.nlohmann.me/api/basic_json/exception/
class exception : public std::exception class KYDIAGNOSTICS_NO_EXPORT exception : public std::exception
{ {
public: public:
/// returns the explanatory string /// returns the explanatory string
@ -120,7 +122,7 @@ class exception : public std::exception
/// @brief exception indicating a parse error /// @brief exception indicating a parse error
/// @sa https://json.nlohmann.me/api/basic_json/parse_error/ /// @sa https://json.nlohmann.me/api/basic_json/parse_error/
class parse_error : public exception class KYDIAGNOSTICS_NO_EXPORT parse_error : public exception
{ {
public: public:
/*! /*!
@ -173,7 +175,7 @@ class parse_error : public exception
/// @brief exception indicating errors with iterators /// @brief exception indicating errors with iterators
/// @sa https://json.nlohmann.me/api/basic_json/invalid_iterator/ /// @sa https://json.nlohmann.me/api/basic_json/invalid_iterator/
class invalid_iterator : public exception class KYDIAGNOSTICS_NO_EXPORT invalid_iterator : public exception
{ {
public: public:
template<typename BasicJsonType> template<typename BasicJsonType>
@ -191,7 +193,7 @@ class invalid_iterator : public exception
/// @brief exception indicating executing a member function with a wrong type /// @brief exception indicating executing a member function with a wrong type
/// @sa https://json.nlohmann.me/api/basic_json/type_error/ /// @sa https://json.nlohmann.me/api/basic_json/type_error/
class type_error : public exception class KYDIAGNOSTICS_NO_EXPORT type_error : public exception
{ {
public: public:
template<typename BasicJsonType> template<typename BasicJsonType>
@ -208,7 +210,7 @@ class type_error : public exception
/// @brief exception indicating access out of the defined range /// @brief exception indicating access out of the defined range
/// @sa https://json.nlohmann.me/api/basic_json/out_of_range/ /// @sa https://json.nlohmann.me/api/basic_json/out_of_range/
class out_of_range : public exception class KYDIAGNOSTICS_NO_EXPORT out_of_range : public exception
{ {
public: public:
template<typename BasicJsonType> template<typename BasicJsonType>
@ -225,7 +227,7 @@ class out_of_range : public exception
/// @brief exception indicating other library errors /// @brief exception indicating other library errors
/// @sa https://json.nlohmann.me/api/basic_json/other_error/ /// @sa https://json.nlohmann.me/api/basic_json/other_error/
class other_error : public exception class KYDIAGNOSTICS_NO_EXPORT other_error : public exception
{ {
public: public:
template<typename BasicJsonType> template<typename BasicJsonType>

View File

@ -21,13 +21,15 @@
#include <nlohmann/detail/string_escape.hpp> #include <nlohmann/detail/string_escape.hpp>
#include <nlohmann/detail/value_t.hpp> #include <nlohmann/detail/value_t.hpp>
#include "kydiagnostics_export.h"
namespace nlohmann namespace nlohmann
{ {
/// @brief JSON Pointer defines a string syntax for identifying a specific value within a JSON document /// @brief JSON Pointer defines a string syntax for identifying a specific value within a JSON document
/// @sa https://json.nlohmann.me/api/json_pointer/ /// @sa https://json.nlohmann.me/api/json_pointer/
template<typename BasicJsonType> template<typename BasicJsonType>
class json_pointer class KYDIAGNOSTICS_NO_EXPORT json_pointer
{ {
// allow basic_json to access private members // allow basic_json to access private members
NLOHMANN_BASIC_JSON_TPL_DECLARATION NLOHMANN_BASIC_JSON_TPL_DECLARATION

View File

@ -13,12 +13,14 @@
#include <nlohmann/detail/meta/type_traits.hpp> #include <nlohmann/detail/meta/type_traits.hpp>
#include "kydiagnostics_export.h"
namespace nlohmann namespace nlohmann
{ {
namespace detail namespace detail
{ {
template<typename BasicJsonType> template<typename BasicJsonType>
class json_ref class KYDIAGNOSTICS_NO_EXPORT json_ref
{ {
public: public:
using value_type = BasicJsonType; using value_type = BasicJsonType;

View File

@ -68,6 +68,8 @@
#include <string_view> #include <string_view>
#endif #endif
#include "kydiagnostics_export.h"
/*! /*!
@brief namespace for Niels Lohmann @brief namespace for Niels Lohmann
@see https://github.com/nlohmann @see https://github.com/nlohmann
@ -95,7 +97,7 @@ The invariants are checked by member function assert_invariant().
@nosubgrouping @nosubgrouping
*/ */
NLOHMANN_BASIC_JSON_TPL_DECLARATION NLOHMANN_BASIC_JSON_TPL_DECLARATION
class basic_json // NOLINT(cppcoreguidelines-special-member-functions,hicpp-special-member-functions) class KYDIAGNOSTICS_NO_EXPORT basic_json // NOLINT(cppcoreguidelines-special-member-functions,hicpp-special-member-functions)
{ {
private: private:
template<detail::value_t> friend struct detail::external_constructor; template<detail::value_t> friend struct detail::external_constructor;