GH #56: Need a way to disable *_API macros with GCC
@@ -90,7 +90,7 @@ enum RSAPaddingMode
#if !defined(Crypto_API)
- #if defined (__GNUC__) && (__GNUC__ >= 4)
+ #if !defined(POCO_NO_GCC_API_ATTRIBUTE) && defined (__GNUC__) && (__GNUC__ >= 4)
#define Crypto_API __attribute__ ((visibility ("default")))
#else
#define Crypto_API
@@ -61,7 +61,7 @@
#if !defined(MySQL_API)
#define MySQL_API __attribute__ ((visibility ("default")))
#define MySQL_API
@@ -66,7 +66,7 @@
#if !defined(ODBC_API)
#define ODBC_API __attribute__ ((visibility ("default")))
#define ODBC_API
@@ -63,7 +63,7 @@
#if !defined(SQLite_API)
#define SQLite_API __attribute__ ((visibility ("default")))
#define SQLite_API
#if !defined(Data_API)
#define Data_API __attribute__ ((visibility ("default")))
#define Data_API
@@ -76,7 +76,7 @@
#if !defined(Foundation_API)
#define Foundation_API __attribute__ ((visibility ("default")))
#define Foundation_API
#if !defined(JSON_API)
#define JSON_API __attribute__ ((visibility ("default")))
#define JSON_API
#if !defined(Net_API)
#define Net_API __attribute__ ((visibility ("default")))
#define Net_API
#if !defined(NetSSL_API)
#define NetSSL_API __attribute__ ((visibility ("default")))
#define NetSSL_API
@@ -35,18 +35,7 @@
-D_DEBUG,
-E,
-C,
- -DFoundation_API=,
- -DXML_API=,
- -DJSON_API=,
- -DUtil_API=,
- -DNet_API=,
- -DCrypto_API=,
- -DNetSSL_API=,
- -DZip_API=,
- -DData_API=,
- -DSQLite_API=,
- -DMySQL_API=,
- -DODBC_API=
+ -DPOCO_NO_GCC_API_ATTRIBUTE
</options>
<path></path>
<usePipe>true</usePipe>
@@ -37,18 +37,7 @@
#if !defined(Util_API)
#define Util_API __attribute__ ((visibility ("default")))
#define Util_API
#if !defined(XML_API)
#define XML_API __attribute__ ((visibility ("default")))
#define XML_API
#if !defined(Zip_API)
#define Zip_API __attribute__ ((visibility ("default")))
#define Zip_API