aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLadislav Zezula <zezula@volny.cz>2021-05-15 19:56:19 +0200
committerGitHub <noreply@github.com>2021-05-15 19:56:19 +0200
commita7ebfbccb7eb16f4852a7fd3bd6a738ecb7db423 (patch)
tree19266c6af697656321e84eb3ac28adc5829eb68a
parent1e9f1cb3218b3ce8cca7683966234bc19647ef6d (diff)
parent05d3a57b8a1ac88e22657290396a9b334a2bee1a (diff)
Merge pull request #223 from ladislav-zezula/CLANG_12_MAC
Clang 12 mac
-rw-r--r--CMakeLists.txt11
-rw-r--r--src/StormPort.h45
-rw-r--r--src/libtomcrypt/src/headers/tomcrypt_cfg.h12
-rw-r--r--src/libtomcrypt/src/headers/tomcrypt_custom.h8
4 files changed, 33 insertions, 43 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index bd8d336..a44170c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -2,6 +2,9 @@ project(StormLib)
cmake_minimum_required(VERSION 2.8.12)
set(LIBRARY_NAME storm)
+set(CMAKE_CXX_STANDARD 11)
+set(CMAKE_CXX_EXTENSIONS OFF)
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
include(CMakeDependentOption)
@@ -330,10 +333,10 @@ else()
endif()
if (NOT STORM_SKIP_INSTALL)
- install(TARGETS ${LIBRARY_NAME}
- RUNTIME DESTINATION bin
- LIBRARY DESTINATION lib
- ARCHIVE DESTINATION lib
+ install(TARGETS ${LIBRARY_NAME}
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib
FRAMEWORK DESTINATION /Library/Frameworks
PUBLIC_HEADER DESTINATION include
INCLUDES DESTINATION include)
diff --git a/src/StormPort.h b/src/StormPort.h
index ba78d7f..d386414 100644
--- a/src/StormPort.h
+++ b/src/StormPort.h
@@ -94,8 +94,14 @@
#endif
#define PKEXPORT
- #define __SYS_ZLIB
- #define __SYS_BZLIB
+
+ #ifndef __SYS_ZLIB
+ #define __SYS_ZLIB
+ #endif
+
+ #ifndef __SYS_BZLIB
+ #define __SYS_BZLIB
+ #endif
#ifndef __BIG_ENDIAN__
#define STORMLIB_LITTLE_ENDIAN
@@ -271,14 +277,13 @@
#define STORMLIB_LITTLE_ENDIAN
#endif
- #define STORMLIB_LINUX
-
// Platforms with mmap support
#if defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__DragonFly__)
#include <sys/mman.h>
#define STORMLIB_HAS_MMAP
#endif
+ #define STORMLIB_LINUX
#define STORMLIB_PLATFORM_DEFINED
#endif
@@ -363,8 +368,8 @@
#define O_LARGEFILE 0
#endif
-// Platform-specific error codes for UNIX-based platforms
-#if defined(STORMLIB_MAC) || defined(STORMLIB_LINUX)
+// Platform-specific error codes for non-Windows platforms
+#ifndef ERROR_SUCCESS
#define ERROR_SUCCESS 0
#define ERROR_FILE_NOT_FOUND ENOENT
#define ERROR_ACCESS_DENIED EPERM
@@ -383,6 +388,7 @@
#define ERROR_FILE_CORRUPT 1004 // No such error code under Linux
#endif
+// Macros that can sometimes be missing
#ifndef _countof
#define _countof(x) (sizeof(x) / sizeof(x[0]))
#endif
@@ -436,31 +442,4 @@
#define BSWAP_TMPKHEADER(a) ConvertTMPKHeader((a))
#endif
-//-----------------------------------------------------------------------------
-// Macro for deprecated symbols
-
-/*
-#ifdef _MSC_VER
- #if _MSC_FULL_VER >= 140050320
- #define STORMLIB_DEPRECATED(_Text) __declspec(deprecated(_Text))
- #else
- #define STORMLIB_DEPRECATED(_Text) __declspec(deprecated)
- #endif
-#else
- #ifdef __GNUC__
- #define STORMLIB_DEPRECATED(_Text) __attribute__((deprecated))
- #else
- #define STORMLIB_DEPRECATED(_Text) __attribute__((deprecated(_Text)))
- #endif
-#endif
-
-// When a flag is deprecated, use this macro
-#ifndef _STORMLIB_NO_DEPRECATE
- #define STORMLIB_DEPRECATED_FLAG(type, oldflag, newflag) \
- const STORMLIB_DEPRECATED(#oldflag " is deprecated. Use " #newflag ". To supress this warning, define _STORMLIB_NO_DEPRECATE") static type oldflag = (type)newflag;
-#else
-#define STORMLIB_DEPRECATED_FLAG(type, oldflag, newflag) static type oldflag = (type)newflag;
-#endif
-*/
-
#endif // __STORMPORT_H__
diff --git a/src/libtomcrypt/src/headers/tomcrypt_cfg.h b/src/libtomcrypt/src/headers/tomcrypt_cfg.h
index e266a49..335d55f 100644
--- a/src/libtomcrypt/src/headers/tomcrypt_cfg.h
+++ b/src/libtomcrypt/src/headers/tomcrypt_cfg.h
@@ -30,17 +30,25 @@ LTC_EXPORT void LTC_CALL XFREE(void *p);
LTC_EXPORT void LTC_CALL XQSORT(void *base, size_t nmemb, size_t size, int(LTC_CALL * compar)(const void *, const void *));
-
/* change the clock function too */
LTC_EXPORT clock_t LTC_CALL XCLOCK(void);
+#endif // LTC_NO_PROTOTYPES
/* various other functions */
+#ifndef LTC_NO_PROTOTYPES_MEMCPY
LTC_EXPORT void * LTC_CALL XMEMCPY(void *dest, const void *src, size_t n);
+#endif
+
+#ifndef LTC_NO_PROTOTYPES_MEMCMP
LTC_EXPORT int LTC_CALL XMEMCMP(const void *s1, const void *s2, size_t n);
+#endif
+
+#ifndef LTC_NO_PROTOTYPES_MEMSET
LTC_EXPORT void * LTC_CALL XMEMSET(void *s, int c, size_t n);
+#endif
+#ifndef LTC_NO_PROTOTYPES_STRCMP
LTC_EXPORT int LTC_CALL XSTRCMP(const char *s1, const char *s2);
-
#endif
/* type of argument checking, 0=default, 1=fatal and 2=error+continue, 3=nothing */
diff --git a/src/libtomcrypt/src/headers/tomcrypt_custom.h b/src/libtomcrypt/src/headers/tomcrypt_custom.h
index 88ec8f9..312a4c2 100644
--- a/src/libtomcrypt/src/headers/tomcrypt_custom.h
+++ b/src/libtomcrypt/src/headers/tomcrypt_custom.h
@@ -47,25 +47,25 @@
#ifndef XMEMSET
#ifdef memset
- #define LTC_NO_PROTOTYPES
+ #define LTC_NO_PROTOTYPES_MEMSET
#endif
#define XMEMSET memset
#endif
#ifndef XMEMCPY
#ifdef memcpy
- #define LTC_NO_PROTOTYPES
+ #define LTC_NO_PROTOTYPES_MEMCPY
#endif
#define XMEMCPY memcpy
#endif
#ifndef XMEMCMP
#ifdef memcmp
- #define LTC_NO_PROTOTYPES
+ #define LTC_NO_PROTOTYPES_MEMCMP
#endif
#define XMEMCMP memcmp
#endif
#ifndef XSTRCMP
#ifdef strcmp
- #define LTC_NO_PROTOTYPES
+ #define LTC_NO_PROTOTYPES_STRCMP
#endif
#define XSTRCMP strcmp
#endif