Browse Source

Fixed cmake_eclipse.sh to remove CMakeCache.txt. Fixed 64-bit compilation issue against newer X11 development library.

Wei Tjong Yao 12 years ago
parent
commit
5dcdbe453b
3 changed files with 14 additions and 0 deletions
  1. 7 0
      ThirdParty/SDL/CMakeLists.txt
  2. 4 0
      ThirdParty/SDL/src/video/x11/SDL_x11sym.h
  3. 3 0
      cmake_eclipse.sh

+ 7 - 0
ThirdParty/SDL/CMakeLists.txt

@@ -44,6 +44,13 @@ else ()
     if (HAVE_CONST_XEXT_ADDDISPLAY)
         add_definitions (-DSDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY)
     endif ()
+    check_c_source_compiles("
+        #include <X11/Xlibint.h>
+        extern int _XData32(Display *dpy,register _Xconst long *data,unsigned len);
+        int main(int argc, char **argv) {}" HAVE_CONST_XDATA32)
+    if (HAVE_CONST_XDATA32)
+        add_definitions (-DSDL_VIDEO_DRIVER_X11_CONST_PARAM_XDATA32)
+    endif ()
     set(CMAKE_REQUIRED_LIBRARIES)
 
     file (GLOB SYS_C_FILES

+ 4 - 0
ThirdParty/SDL/src/video/x11/SDL_x11sym.h

@@ -162,7 +162,11 @@ SDL_X11_SYM(Bool,XShmQueryExtension,(Display* a),(a),return)
  */
 #ifdef LONG64
 SDL_X11_MODULE(IO_32BIT)
+#if SDL_VIDEO_DRIVER_X11_CONST_PARAM_XDATA32
+SDL_X11_SYM(int,_XData32,(Display *dpy,register _Xconst long *data,unsigned len),(dpy,data,len),return)
+#else
 SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)
+#endif
 SDL_X11_SYM(void,_XRead32,(Display *dpy,register long *data,long len),(dpy,data,len),)
 #endif
 

+ 3 - 0
cmake_eclipse.sh

@@ -1,6 +1,9 @@
 rm -f CMakeCache.txt
 proj=`pwd`
 mkdir -p ../Urho3D-Eclipse-build/Release ../Urho3D-Eclipse-build/Debug ../Urho3D-Eclipse-build/RelWithDebInfo
+cmake -E chdir ../Urho3D-Eclipse-build/Release rm -f CMakeCache.txt
+cmake -E chdir ../Urho3D-Eclipse-build/Debug rm -f CMakeCache.txt
+cmake -E chdir ../Urho3D-Eclipse-build/RelWithDebInfo rm -f CMakeCache.txt
 cmake -E chdir ../Urho3D-Eclipse-build/Release cmake -G"Eclipse CDT4 - Unix Makefiles" -DCMAKE_BUILD_TYPE=Release $proj $@
 cmake -E chdir ../Urho3D-Eclipse-build/Debug cmake -G"Eclipse CDT4 - Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug $proj $@
 cmake -E chdir ../Urho3D-Eclipse-build/RelWithDebInfo cmake -G"Eclipse CDT4 - Unix Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo $proj $@