|
@@ -52,29 +52,24 @@
|
|
#endif
|
|
#endif
|
|
|
|
|
|
// Function specifiers definition
|
|
// Function specifiers definition
|
|
-#ifndef RMAPI
|
|
|
|
- #if defined(RAYMATH_IMPLEMENTATION)
|
|
|
|
- #define RMAPI extern inline // Functions defined as 'extern inline' by default
|
|
|
|
-
|
|
|
|
- // Function specifiers in case library is build/used as a shared library (Windows)
|
|
|
|
- // NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll
|
|
|
|
- #if defined(_WIN32)
|
|
|
|
- #if defined(BUILD_LIBTYPE_SHARED)
|
|
|
|
- #define RMAPI __declspec(dllexport) // We are building the library as a Win32 shared library (.dll)
|
|
|
|
- #elif defined(USE_LIBTYPE_SHARED)
|
|
|
|
- #define RMAPI __declspec(dllimport) // We are using the library as a Win32 shared library (.dll)
|
|
|
|
- #endif
|
|
|
|
- #endif
|
|
|
|
- #elif defined(RAYMATH_STATIC_INLINE)
|
|
|
|
- #define RMAPI static inline // Functions may be inlined, no external out-of-line definition
|
|
|
|
|
|
+#if defined(RAYMATH_IMPLEMENTATION)
|
|
|
|
+ #if defined(_WIN32) && defined(BUILD_LIBTYPE_SHARED)
|
|
|
|
+ #define RMAPI __declspec(dllexport) extern inline // We are building raylib as a Win32 shared library (.dll).
|
|
|
|
+ #elif defined(_WIN32) && defined(USE_LIBTYPE_SHARED)
|
|
|
|
+ #define RMAPI __declspec(dllimport) // We are using raylib as a Win32 shared library (.dll)
|
|
#else
|
|
#else
|
|
- #if defined(__TINYC__)
|
|
|
|
- #define RMAPI static inline // WARNING: Plain inline not supported by tinycc (See issue #435)
|
|
|
|
- #else
|
|
|
|
- #define RMAPI inline
|
|
|
|
- #endif
|
|
|
|
|
|
+ #define RMAPI extern inline // Provide external definition
|
|
|
|
+ #endif
|
|
|
|
+#elif defined(RAYMATH_STATIC_INLINE)
|
|
|
|
+ #define RMAPI static inline // Functions may be inlined, no external out-of-line definition
|
|
|
|
+#else
|
|
|
|
+ #if defined(__TINYC__)
|
|
|
|
+ #define RMAPI static inline // plain inline not supported by tinycc (See issue #435)
|
|
|
|
+ #else
|
|
|
|
+ #define RMAPI inline // Functions may be inlined or external definition used
|
|
#endif
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
+
|
|
|
|
|
|
//----------------------------------------------------------------------------------
|
|
//----------------------------------------------------------------------------------
|
|
// Defines and Macros
|
|
// Defines and Macros
|