configure: Force #undef of 'near' and 'far' on Windows

This adds an extra header that gets included from config.h where we
can add configuration defines. This is used to #undef 'near' and 'far'
when building for Windows so that we don't have to avoid using them as
variable names in the Cogl code.
This commit is contained in:
Neil Roberts 2011-06-13 13:09:47 +01:00
parent 5dc42284a5
commit 01e1260aa0
3 changed files with 39 additions and 1 deletions

View File

@ -8,4 +8,6 @@ SUBDIRS += examples doc po
ACLOCAL_AMFLAGS = -I build/autotools ${ACLOCAL_FLAGS}
EXTRA_DIST = README.in
EXTRA_DIST = \
README.in \
config-custom.h

35
config-custom.h Normal file
View File

@ -0,0 +1,35 @@
/*
* Cogl
*
* An object oriented GL/GLES Abstraction/Utility Layer
*
* Copyright (C) 2011 Intel Corporation.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
/* The contents of this file get #included by config.h so it is
intended for extra configuration that needs to be included by all
Cogl source files. */
/* The windows headers #define 'near' and 'far' to be blank. We
commonly want to use these variable names for doing perspective
transformation so rather than having to workaround this mis-feature
in Windows in the code we just #undef them here. We need to do this
after including windows.h */
#ifdef _WIN32
#include <windows.h>
#undef near
#undef far
#endif /* _WIN32 */

View File

@ -100,6 +100,7 @@ AM_INIT_AUTOMAKE([1.11 foreign -Wno-portability no-define no-dist-gzip
dist-bzip2])
AM_SILENT_RULES([yes])
AH_BOTTOM([#include "config-custom.h"])
dnl ================================================================
dnl Export the API versioning