1
0
Fork 0
mirror of https://github.com/AquariaOSE/Aquaria.git synced 2025-02-25 15:33:57 +00:00

fix linux/gcc build

This commit is contained in:
fgenesis 2022-04-07 03:11:24 +02:00
parent 49b9e0f05a
commit d34a962e78
6 changed files with 34 additions and 12 deletions

View file

@ -51,6 +51,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#undef min #undef min
#undef max #undef max
// HACK: Fix this == NULL checks with GCC 6 and up
#if defined(__GNUC__) || defined (__clang__)
#pragma GCC optimize("no-delete-null-pointer-checks")
#endif
// HACK: global because OpenAL has only one listener anyway // HACK: global because OpenAL has only one listener anyway
static FMOD_VECTOR s_listenerPos; static FMOD_VECTOR s_listenerPos;

View file

@ -96,4 +96,4 @@ GL_FUNC(void,glGetTexImage,(GLenum target, GLint level, GLenum format, GLenum ty
//GL_FUNC(void,glTexImage1D,(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels),(target,level,internalFormat,width,border,format,type,pixels),) //GL_FUNC(void,glTexImage1D,(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels),(target,level,internalFormat,width,border,format,type,pixels),)
GL_FUNC(void,glTexImage2D,(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels),(target,level,internalFormat,width,height,border,format,type,pixels),) GL_FUNC(void,glTexImage2D,(GLenum target, GLint level, GLint internalFormat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels),(target,level,internalFormat,width,height,border,format,type,pixels),)
//GL_FUNC(void,glTexImage3D,(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels),(target,level,internalformat,width,height,depth,border,format,type,pixels),) //GL_FUNC(void,glTexImage3D,(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels),(target,level,internalformat,width,height,depth,border,format,type,pixels),)
GL_FUNC(void,glGetTexParameteriv,(GLenum target, GLenum pname, GLint *params),(target,pname,params),); GL_FUNC(void,glGetTexParameteriv,(GLenum target, GLenum pname, GLint *params),(target,pname,params),)

View file

@ -5,6 +5,7 @@ if(AQUARIA_INTERNAL_FTGL)
set(FTGL_INCLUDE_DIRS "${FTGLDIR}/include;${FREETYPE_INCLUDE_DIRS}" CACHE INTERNAL "") set(FTGL_INCLUDE_DIRS "${FTGLDIR}/include;${FREETYPE_INCLUDE_DIRS}" CACHE INTERNAL "")
include(freetype2.cmake) # Nothing else uses freetype2 directly include(freetype2.cmake) # Nothing else uses freetype2 directly
INCLUDE_DIRECTORIES(${FREETYPE_INCLUDE_DIRS}) INCLUDE_DIRECTORIES(${FREETYPE_INCLUDE_DIRS})
INCLUDE_DIRECTORIES(${EXTLIBDIR}) # For <GL/gl.h>
add_subdirectory(FTGL) add_subdirectory(FTGL)
else() else()
find_package(FTGL REQUIRED) find_package(FTGL REQUIRED)

View file

@ -18,10 +18,10 @@ typedef float FTGL_FLOAT;
#define FT_RENDER_MODE_NORMAL ft_render_mode_normal #define FT_RENDER_MODE_NORMAL ft_render_mode_normal
#endif #endif
#ifdef WIN32 #ifdef WIN32
// Under windows avoid including <windows.h> is overrated. // Under windows avoid including <windows.h> is overrated.
// Sure, it can be avoided and "name space pollution" can be // Sure, it can be avoided and "name space pollution" can be
// avoided, but why? It really doesn't make that much difference // avoided, but why? It really doesn't make that much difference
// these days. // these days.
@ -35,7 +35,7 @@ typedef float FTGL_FLOAT;
#else #else
// Non windows platforms - don't require nonsense as seen above :-) // Non windows platforms - don't require nonsense as seen above :-)
#if 1 #if 1
#include "GL/gl.h" #include "GL/gl.h"
//#include "GL/glu.h" //#include "GL/glu.h"
@ -47,12 +47,12 @@ typedef float FTGL_FLOAT;
#else #else
#include <GL/gl.h> #include <GL/gl.h>
#include <GL/glu.h> #include <GL/glu.h>
#endif #endif
#endif #endif
#endif #endif
// Required for compatibility with glext.h style function definitions of // Required for compatibility with glext.h style function definitions of
// OpenGL extensions, such as in src/osg/Point.cpp. // OpenGL extensions, such as in src/osg/Point.cpp.
#ifndef APIENTRY #ifndef APIENTRY
#define APIENTRY #define APIENTRY
@ -60,7 +60,7 @@ typedef float FTGL_FLOAT;
#endif #endif
// Compiler-specific conditional compilation // Compiler-specific conditional compilation
#ifdef _MSC_VER // MS Visual C++ #ifdef _MSC_VER // MS Visual C++
// Disable various warning. // Disable various warning.
// 4786: template name too long // 4786: template name too long
@ -71,21 +71,21 @@ typedef float FTGL_FLOAT;
// The following definitions control how symbols are exported. // The following definitions control how symbols are exported.
// If the target is a static library ensure that FTGL_LIBRARY_STATIC // If the target is a static library ensure that FTGL_LIBRARY_STATIC
// is defined. If building a dynamic library (ie DLL) ensure the // is defined. If building a dynamic library (ie DLL) ensure the
// FTGL_LIBRARY macro is defined, as it will mark symbols for // FTGL_LIBRARY macro is defined, as it will mark symbols for
// export. If compiling a project to _use_ the _dynamic_ library // export. If compiling a project to _use_ the _dynamic_ library
// version of the library, no definition is required. // version of the library, no definition is required.
#ifdef FTGL_LIBRARY_STATIC // static lib - no special export required #ifdef FTGL_LIBRARY_STATIC // static lib - no special export required
# define FTGL_EXPORT # define FTGL_EXPORT
#elif FTGL_LIBRARY // dynamic lib - must export/import symbols appropriately. #elif FTGL_LIBRARY // dynamic lib - must export/import symbols appropriately.
# define FTGL_EXPORT __declspec(dllexport) # define FTGL_EXPORT __declspec(dllexport)
#else #else
# define FTGL_EXPORT __declspec(dllimport) # define FTGL_EXPORT __declspec(dllimport)
#endif #endif
#else #else
// Compiler that is not MS Visual C++. // Compiler that is not MS Visual C++.
// Ensure that the export symbol is defined (and blank) // Ensure that the export symbol is defined (and blank)
#define FTGL_EXPORT #define FTGL_EXPORT
#endif #endif
#endif // __FTGL__ #endif // __FTGL__

View file

@ -61,4 +61,19 @@ set(lua51_src
# Use C++ exceptions instead of setjmp() & longjmp() # Use C++ exceptions instead of setjmp() & longjmp()
set_source_files_properties(${lua51_src} PROPERTIES LANGUAGE CXX) set_source_files_properties(${lua51_src} PROPERTIES LANGUAGE CXX)
# Windows is detected automatically
if(LINUX)
ADD_DEFINITIONS(-DLUA_USE_LINUX)
elseif(APPLE)
ADD_DEFINITIONS(-DLUA_USE_MACOSX)
elseif(POSIX)
ADD_DEFINITIONS(-DLUA_USE_POSIX)
else()
# gcc/ld warns about tmpnam() so we might as well try to get rid of it
CHECK_FUNCTION_EXISTS(mkstemp HAVE_MKSTEMP)
IF(HAVE_MKSTEMP)
ADD_DEFINITIONS(-DLUA_USE_MKSTEMP)
ENDIF()
endif()
add_library(lua51 ${lua51_src}) add_library(lua51 ${lua51_src})

View file

@ -32,6 +32,7 @@ if(AQUARIA_INTERNAL_OGGVORBIS)
${LIBVORBISDIR}/lib/vorbisfile.c ${LIBVORBISDIR}/lib/vorbisfile.c
${LIBVORBISDIR}/lib/window.c ${LIBVORBISDIR}/lib/window.c
) )
target_link_libraries(libvorbis libogg)
else() else()
# CMake doesn't seem to have a module for libogg or libvorbis yet, so # CMake doesn't seem to have a module for libogg or libvorbis yet, so
# we roll our own based on existing find_package modules. # we roll our own based on existing find_package modules.