summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOBATA Akio <obache@wizdas.com>2019-08-15 17:52:34 +0900
committerTDE Gitea <gitea@mirror.git.trinitydesktop.org>2019-08-15 20:31:09 +0000
commit0031121f7ea2a9fc177c1d41785eda78442eeb2e (patch)
tree95b1c56dabe323be0dd2af79e8632d7ae0a782eb
parent0009cb8171f141e113777e7f6557a0cfa1542d5a (diff)
downloadtdepim-0031121f7ea2a9fc177c1d41785eda78442eeb2e.tar.gz
tdepim-0031121f7ea2a9fc177c1d41785eda78442eeb2e.zip
Declare supplement prototypes conditionally
It should be declared for the case missing, or may be mismatched with builtin. Signed-off-by: OBATA Akio <obache@wizdas.com>
-rw-r--r--ConfigureChecks.cmake2
-rw-r--r--config.h.cmake8
2 files changed, 10 insertions, 0 deletions
diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake
index 7fe40e2c..2382d6dc 100644
--- a/ConfigureChecks.cmake
+++ b/ConfigureChecks.cmake
@@ -16,6 +16,8 @@ test_big_endian(WORDS_BIGENDIAN)
tde_setup_largefiles( )
+check_symbol_exists( strlcpy "string.h" HAVE_STRLCPY_PROTO )
+check_symbol_exists( strlcat "string.h" HAVE_STRLCAT_PROTO )
##### check for gcc visibility support #########
diff --git a/config.h.cmake b/config.h.cmake
index eb51aa52..6a53137b 100644
--- a/config.h.cmake
+++ b/config.h.cmake
@@ -49,6 +49,11 @@
#cmakedefine HAVE_LIBXSS 1
// mimelib
+#cmakedefine HAVE_STRLCPY_PROTO
+
+#cmakedefine HAVE_STRLCAT_PROTO
+
+#if !defined(HAVE_STRLCPY_PROTO)
#ifdef __cplusplus
extern "C" {
#endif
@@ -56,7 +61,9 @@ unsigned long strlcpy(char*, const char*, unsigned long);
#ifdef __cplusplus
}
#endif
+#endif
+#if !defined(HAVE_STRLCAT_PROTO)
#ifdef __cplusplus
extern "C" {
#endif
@@ -64,3 +71,4 @@ unsigned long strlcat(char*, const char*, unsigned long);
#ifdef __cplusplus
}
#endif
+#endif