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:
parent
49b9e0f05a
commit
d34a962e78
6 changed files with 34 additions and 12 deletions
|
@ -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;
|
||||||
|
|
||||||
|
|
|
@ -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),)
|
||||||
|
|
|
@ -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)
|
||||||
|
|
|
@ -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__
|
||||||
|
|
|
@ -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})
|
||||||
|
|
|
@ -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.
|
||||||
|
|
Loading…
Add table
Reference in a new issue