mirror of
https://github.com/Q3Rally-Team/q3rally.git
synced 2024-11-26 05:41:46 +00:00
22a0949a26
Upgrade to build and run from VS2019 Upgrades to Xcode project and Apple Silicon support Update SDL2 to 2.0.14 Updated SDL2 include files to fix Mac build in GitHub Actions Added another mention of arm64 to command line help Restored original opus sse files, excluded from Xcode Added arm64 to the post-build symlinking step Merge branch 'main' into xcode Merge branch 'main' into vs2019 Added shell script to compile Universal 2 binary (x86_64+arm64) Reverting alert style to deprecated methods Upgrades to Xcode project and Apple Silicon support Update SDL2 to 2.0.14 Added another mention of arm64 to command line help Restored original opus sse files, excluded from Xcode Added arm64 to the post-build symlinking step Added shell script to compile Universal 2 binary (x86_64+arm64) Reverting alert style to deprecated methods Merge branch 'xcode' of https://github.com/tomkidd/ioq3 into xcode Removed signature from SDL dylib, enabled dark mode on macOS. spaces > tabs Ad-hoc signed libSDL2-2.0.0.dylib Fix compiling against SDL 2.0.17 UB2 now signs and notarizes, upgraded to SDL 2.0.16 Architectures in libSDL2 restored for ppc and i386 Merge remote-tracking branch 'upstream/main' into vs2019 Update SDL2 to 2.0.16 Added rudimentary support for automatically finding Microsoft Store version of Quake 3 GHA deprecated Ubuntu 16.04 - update to 18.04 qsort cannot be called with NULL Merge remote-tracking branch 'upstream/main' into vs2019 Addressed string concatenation issue and added dummy method for Mac/Linux Added missing variable. Merge remote-tracking branch 'upstream/main' into xcode Updated SDL 2.0.16 headers and Mac version of libraries to fix GitHub actions Addressed PR suggestions Modified MS Store path handling to better follow the pattern of Steam/GOG Merge pull request #481 from tomkidd/xcode Merge pull request #482 from tomkidd/vs2019 OpenGL2: Fix r_grayscale 1 making everything solid black Print full GL_EXTENSIONS list for OpenGL contexts before 3.0 Fix being unable to enter Team Arena CD key OpenGL2: GL_DEPTH_TEXTURE_MODE was removed from OpenGL 3.0/Core Improve setting Microsoft Store path Update building for macOS in README Make macOS arm64 default to target macOS 11 in Makefile Fix error when cross-compiling for macOS arm64 using Makefile Fix passing arguments to VM dylib on Apple M1 Fix compiling on older macOS Fix memory corruption in S_TransferPaintBuffer Fix memset Fix hex digit Fix uninitialized variable some old URL and doc updates Update README.md Update FUNDING.yml code/curl: update ifdef condition for MCST-LCC compiler in mcst-lcc compiler => 1.25 added a new macro definition to determine compiler Revert "code/curl: update ifdef condition for MCST-LCC compiler" Revert "E2K: fixed build by MCST lcc compiler when using USE_CURL=1 option" More predictable mesh normals generation vm_x86.c: Add `defined(_M_IX86) || defined(_M_X64)` (fix for VS2019) Add keys for SDL 2.0.14's new gamepad buttons Fix in_availableJoysticks cvar not updating Fix (disabled) Wavelet sound decompression Update to SDL 2.24.0 and add separate macOS UB2 dylib Update macOS UB1 to SDL 2.0.22 Fix running make-macosx{,-ub2}.sh on Linux Update MSVC .lib files to SDL 2.24.0
235 lines
5.9 KiB
C
235 lines
5.9 KiB
C
/*
|
|
Simple DirectMedia Layer
|
|
Copyright (C) 1997-2022 Sam Lantinga <slouken@libsdl.org>
|
|
|
|
This software is provided 'as-is', without any express or implied
|
|
warranty. In no event will the authors be held liable for any damages
|
|
arising from the use of this software.
|
|
|
|
Permission is granted to anyone to use this software for any purpose,
|
|
including commercial applications, and to alter it and redistribute it
|
|
freely, subject to the following restrictions:
|
|
|
|
1. The origin of this software must not be misrepresented; you must not
|
|
claim that you wrote the original software. If you use this software
|
|
in a product, an acknowledgment in the product documentation would be
|
|
appreciated but is not required.
|
|
2. Altered source versions must be plainly marked as such, and must not be
|
|
misrepresented as being the original software.
|
|
3. This notice may not be removed or altered from any source distribution.
|
|
*/
|
|
|
|
/**
|
|
* \file SDL_platform.h
|
|
*
|
|
* Try to get a standard set of platform defines.
|
|
*/
|
|
|
|
#ifndef SDL_platform_h_
|
|
#define SDL_platform_h_
|
|
|
|
#if defined(_AIX)
|
|
#undef __AIX__
|
|
#define __AIX__ 1
|
|
#endif
|
|
#if defined(__HAIKU__)
|
|
#undef __HAIKU__
|
|
#define __HAIKU__ 1
|
|
#endif
|
|
#if defined(bsdi) || defined(__bsdi) || defined(__bsdi__)
|
|
#undef __BSDI__
|
|
#define __BSDI__ 1
|
|
#endif
|
|
#if defined(_arch_dreamcast)
|
|
#undef __DREAMCAST__
|
|
#define __DREAMCAST__ 1
|
|
#endif
|
|
#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__)
|
|
#undef __FREEBSD__
|
|
#define __FREEBSD__ 1
|
|
#endif
|
|
#if defined(hpux) || defined(__hpux) || defined(__hpux__)
|
|
#undef __HPUX__
|
|
#define __HPUX__ 1
|
|
#endif
|
|
#if defined(sgi) || defined(__sgi) || defined(__sgi__) || defined(_SGI_SOURCE)
|
|
#undef __IRIX__
|
|
#define __IRIX__ 1
|
|
#endif
|
|
#if (defined(linux) || defined(__linux) || defined(__linux__))
|
|
#undef __LINUX__
|
|
#define __LINUX__ 1
|
|
#endif
|
|
#if defined(ANDROID) || defined(__ANDROID__)
|
|
#undef __ANDROID__
|
|
#undef __LINUX__ /* do we need to do this? */
|
|
#define __ANDROID__ 1
|
|
#endif
|
|
|
|
#if defined(__APPLE__)
|
|
/* lets us know what version of Mac OS X we're compiling on */
|
|
#include "AvailabilityMacros.h"
|
|
#include "TargetConditionals.h"
|
|
|
|
/* Fix building with older SDKs that don't define these
|
|
See this for more information:
|
|
https://stackoverflow.com/questions/12132933/preprocessor-macro-for-os-x-targets
|
|
*/
|
|
#ifndef TARGET_OS_MACCATALYST
|
|
#define TARGET_OS_MACCATALYST 0
|
|
#endif
|
|
#ifndef TARGET_OS_IOS
|
|
#define TARGET_OS_IOS 0
|
|
#endif
|
|
#ifndef TARGET_OS_IPHONE
|
|
#define TARGET_OS_IPHONE 0
|
|
#endif
|
|
#ifndef TARGET_OS_TV
|
|
#define TARGET_OS_TV 0
|
|
#endif
|
|
#ifndef TARGET_OS_SIMULATOR
|
|
#define TARGET_OS_SIMULATOR 0
|
|
#endif
|
|
|
|
#if TARGET_OS_TV
|
|
#undef __TVOS__
|
|
#define __TVOS__ 1
|
|
#endif
|
|
#if TARGET_OS_IPHONE
|
|
/* if compiling for iOS */
|
|
#undef __IPHONEOS__
|
|
#define __IPHONEOS__ 1
|
|
#undef __MACOSX__
|
|
#else
|
|
/* if not compiling for iOS */
|
|
#undef __MACOSX__
|
|
#define __MACOSX__ 1
|
|
#if MAC_OS_X_VERSION_MIN_REQUIRED < 1060
|
|
# error SDL for Mac OS X only supports deploying on 10.6 and above.
|
|
#endif /* MAC_OS_X_VERSION_MIN_REQUIRED < 1060 */
|
|
#endif /* TARGET_OS_IPHONE */
|
|
#endif /* defined(__APPLE__) */
|
|
|
|
#if defined(__NetBSD__)
|
|
#undef __NETBSD__
|
|
#define __NETBSD__ 1
|
|
#endif
|
|
#if defined(__OpenBSD__)
|
|
#undef __OPENBSD__
|
|
#define __OPENBSD__ 1
|
|
#endif
|
|
#if defined(__OS2__) || defined(__EMX__)
|
|
#undef __OS2__
|
|
#define __OS2__ 1
|
|
#endif
|
|
#if defined(osf) || defined(__osf) || defined(__osf__) || defined(_OSF_SOURCE)
|
|
#undef __OSF__
|
|
#define __OSF__ 1
|
|
#endif
|
|
#if defined(__QNXNTO__)
|
|
#undef __QNXNTO__
|
|
#define __QNXNTO__ 1
|
|
#endif
|
|
#if defined(riscos) || defined(__riscos) || defined(__riscos__)
|
|
#undef __RISCOS__
|
|
#define __RISCOS__ 1
|
|
#endif
|
|
#if defined(__sun) && defined(__SVR4)
|
|
#undef __SOLARIS__
|
|
#define __SOLARIS__ 1
|
|
#endif
|
|
|
|
#if defined(WIN32) || defined(_WIN32) || defined(__CYGWIN__) || defined(__MINGW32__)
|
|
/* Try to find out if we're compiling for WinRT or non-WinRT */
|
|
#if defined(_MSC_VER) && defined(__has_include)
|
|
#if __has_include(<winapifamily.h>)
|
|
#define HAVE_WINAPIFAMILY_H 1
|
|
#else
|
|
#define HAVE_WINAPIFAMILY_H 0
|
|
#endif
|
|
|
|
/* If _USING_V110_SDK71_ is defined it means we are using the Windows XP toolset. */
|
|
#elif defined(_MSC_VER) && (_MSC_VER >= 1700 && !_USING_V110_SDK71_) /* _MSC_VER == 1700 for Visual Studio 2012 */
|
|
#define HAVE_WINAPIFAMILY_H 1
|
|
#else
|
|
#define HAVE_WINAPIFAMILY_H 0
|
|
#endif
|
|
|
|
#if HAVE_WINAPIFAMILY_H
|
|
#include <winapifamily.h>
|
|
#define WINAPI_FAMILY_WINRT (!WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) && WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP))
|
|
#else
|
|
#define WINAPI_FAMILY_WINRT 0
|
|
#endif /* HAVE_WINAPIFAMILY_H */
|
|
|
|
#if WINAPI_FAMILY_WINRT
|
|
#undef __WINRT__
|
|
#define __WINRT__ 1
|
|
#else
|
|
#undef __WINDOWS__
|
|
#define __WINDOWS__ 1
|
|
#endif
|
|
#endif /* defined(WIN32) || defined(_WIN32) || defined(__CYGWIN__) */
|
|
|
|
#if defined(__WINDOWS__)
|
|
#undef __WIN32__
|
|
#define __WIN32__ 1
|
|
#endif
|
|
#if defined(__PSP__)
|
|
#undef __PSP__
|
|
#define __PSP__ 1
|
|
#endif
|
|
|
|
/* The NACL compiler defines __native_client__ and __pnacl__
|
|
* Ref: http://www.chromium.org/nativeclient/pnacl/stability-of-the-pnacl-bitcode-abi
|
|
*/
|
|
#if defined(__native_client__)
|
|
#undef __LINUX__
|
|
#undef __NACL__
|
|
#define __NACL__ 1
|
|
#endif
|
|
#if defined(__pnacl__)
|
|
#undef __LINUX__
|
|
#undef __PNACL__
|
|
#define __PNACL__ 1
|
|
/* PNACL with newlib supports static linking only */
|
|
#define __SDL_NOGETPROCADDR__
|
|
#endif
|
|
|
|
#if defined(__vita__)
|
|
#define __VITA__ 1
|
|
#endif
|
|
|
|
#include "begin_code.h"
|
|
/* Set up for C function definitions, even when using C++ */
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/**
|
|
* Get the name of the platform.
|
|
*
|
|
* Here are the names returned for some (but not all) supported platforms:
|
|
*
|
|
* - "Windows"
|
|
* - "Mac OS X"
|
|
* - "Linux"
|
|
* - "iOS"
|
|
* - "Android"
|
|
*
|
|
* \returns the name of the platform. If the correct platform name is not
|
|
* available, returns a string beginning with the text "Unknown".
|
|
*
|
|
* \since This function is available since SDL 2.0.0.
|
|
*/
|
|
extern DECLSPEC const char * SDLCALL SDL_GetPlatform (void);
|
|
|
|
/* Ends C function definitions when using C++ */
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#include "close_code.h"
|
|
|
|
#endif /* SDL_platform_h_ */
|
|
|
|
/* vi: set ts=4 sw=4 expandtab: */
|