Merge pull request #223 from ladislav-zezula/CLANG_12_MAC

Clang 12 mac
This commit is contained in:
Ladislav Zezula
2021-05-15 19:56:19 +02:00
committed by GitHub
4 changed files with 33 additions and 43 deletions

View File

@@ -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)

View File

@@ -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__

View File

@@ -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 */

View File

@@ -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