LaurentGomila/SFML — pull request #574 by jcowgill (2014-04-21 14:18:32+00:00)
Title: Fixed various linux compile errors in EglContext

This is the rebased version of PR #524

These fixes are needed when compiling with SFML_OPENGL_ES on my Debian laptop (after installing ```libgles1-mesa-dev```).

##### CMake output
```
james@angel:~/workspace/SFML/build$ cmake .. -DCMAKE_BUILD_TYPE=Debug -DSFML_OPENGL_ES=Y
-- The C compiler identification is GNU 4.8.2
-- The CXX compiler identification is GNU 4.8.2
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found X11: /usr/lib/x86_64-linux-gnu/libX11.so
-- Found EGL: /usr/lib/x86_64-linux-gnu/libEGL.so
-- Found GLES: /usr/lib/x86_64-linux-gnu/libGLESv1_CM.so
-- Found JPEG: /usr/lib/x86_64-linux-gnu/libjpeg.so
-- Found Freetype: /usr/lib/x86_64-linux-gnu/libfreetype.so
-- Found OpenAL: /usr/lib/x86_64-linux-gnu/libopenal.so
-- Found SNDFILE: /usr/lib/x86_64-linux-gnu/libsndfile.so
-- Configuring done
-- Generating done
-- Build files have been written to: /home/james/workspace/SFML/build
```

##### End of make output
```
[ 34%] Building CXX object src/SFML/Window/CMakeFiles/sfml-window.dir/EglContext.cpp.o
cd /home/james/workspace/SFML/build/src/SFML/Window && /usr/bin/c++ -DGL_GLEXT_PROTOTYPES -DSFML_OPENGL_ES -DSFML_WINDOW_EXPORTS -g -fPIC -I/home/james/workspace/SFML/include -I/home/james/workspace/SFML/src -fvisibility=hidden -o CMakeFiles/sfml-window.dir/EglContext.cpp.o -c /home/james/workspace/SFML/src/SFML/Window/EglContext.cpp
/home/james/workspace/SFML/src/SFML/Window/EglContext.cpp: In constructor ‘sf::priv::EglContext::EglContext(sf::priv::EglContext*, const sf::ContextSettings&, const sf::priv::WindowImpl*, unsigned int)’:
/home/james/workspace/SFML/src/SFML/Window/EglContext.cpp:129:45: error: invalid use of incomplete type ‘const class sf::priv::WindowImpl’
createSurface((EGLNativeWindowType)owner->getSystemHandle());
^
In file included from /home/james/workspace/SFML/src/SFML/Window/EglContext.hpp:34:0,
from /home/james/workspace/SFML/src/SFML/Window/EglContext.cpp:29:
/home/james/workspace/SFML/src/SFML/Window/GlContext.hpp:40:7: error: forward declaration of ‘const class sf::priv::WindowImpl’
class WindowImpl;
^
/home/james/workspace/SFML/src/SFML/Window/EglContext.cpp: In static member function ‘static XVisualInfo sf::priv::EglContext::selectBestVisual(Display*, unsigned int, const sf::ContextSettings&)’:
/home/james/workspace/SFML/src/SFML/Window/EglContext.cpp:282:39: error: ‘XDisplayy’ was not declared in this scope
availableVisuals = XGetVisualInfo(XDisplayy, VisualIDMask, &visualId, &visualCount);
^
/home/james/workspace/SFML/src/SFML/Window/EglContext.cpp:294:5: error: expected ‘;’ before ‘XFree’
XFree(chosenVisualInfo);
^
make[2]: *** [src/SFML/Window/CMakeFiles/sfml-window.dir/EglContext.cpp.o] Error 1
make[2]: Leaving directory `/home/james/workspace/SFML/build'
make[1]: *** [src/SFML/Window/CMakeFiles/sfml-window.dir/all] Error 2
make[1]: Leaving directory `/home/james/workspace/SFML/build'
make: *** [all] Error 2
```