Author: ivanovic
Date: Tue Mar 24 15:28:52 2009
New Revision: 34090
URL: http://svn.gna.org/viewcvs/wesnoth?rev=34090&view=rev
Log:
port over r34089 from branches/1.6, commit message was:
add the searching for sendfile/round to the cmake recipe
now a file for the defines is created automatically...
Added:
trunk/cmake/SearchForStuff.cmake
trunk/config.h.cmake
Modified:
trunk/CMakeLists.txt
Modified: trunk/CMakeLists.txt
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/CMakeLists.txt?rev=34090&r1=34089&r2=34090&view=diff
==============================================================================
--- trunk/CMakeLists.txt (original)
+++ trunk/CMakeLists.txt Tue Mar 24 15:28:52 2009
@@ -2,10 +2,6 @@
# what is not working so far:
# * some other smaller stuff
# * nice INSTALL howto
-# * check for poll(2) and select(2) as in SConstruct line 183 and if found,
define same
-# symbols as autoconf would. See also
-# http://svn.gna.org/viewcvs/wesnoth?rev=33522&view=rev
-# http://svn.gna.org/viewcvs/wesnoth?rev=33523&view=rev
# * Detect Python and install Python tools
# * Rewrite the pot-update
# * Test everything
@@ -37,6 +33,9 @@
set(SDL_CONFIG "sdl-config" CACHE STRING "Path to sdl-config script")
exec_program(${SDL_CONFIG} ARGS "--cflags" OUTPUT_VARIABLE SDL_CFLAGS)
add_definitions(${SDL_CFLAGS})
+
+#check for some compiler/arch specific things and export defines accordingly...
+INCLUDE (SearchForStuff)
#
# Options
Added: trunk/cmake/SearchForStuff.cmake
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/cmake/SearchForStuff.cmake?rev=34090&view=auto
==============================================================================
--- trunk/cmake/SearchForStuff.cmake (added)
+++ trunk/cmake/SearchForStuff.cmake Tue Mar 24 15:28:52 2009
@@ -1,0 +1,33 @@
+#check for some playtform specific things and export defines accordingly...
+#done basically the same was as AC_CHECK_HEADERS and AC_CHECK_FUNCS in
configure.ac
+#the file is basically built upon the info available at
+#http://www.vtk.org/Wiki/CMake_HowToDoPlatformChecks
+INCLUDE(CheckIncludeFiles)
+INCLUDE(CheckFunctionExists)
+INCLUDE(CheckLibraryExists)
+
+#the two includes below seem to not be required, those headers are checked for
+#anyway, including them here, too...
+CHECK_INCLUDE_FILES(stdlib.h HAVE_STDLIB_H)
+CHECK_INCLUDE_FILES(unistd.h HAVE_UNISTD_H)
+
+#sendfile should be in one of the headers checked for here, so first check if
+#one of the headers is available and then check for 'sendfile'
+CHECK_INCLUDE_FILES(poll.h HAVE_POLL_H)
+CHECK_INCLUDE_FILES(sys/poll.h HAVE_SYS_POLL_H)
+CHECK_INCLUDE_FILES(sys/select.h HAVE_SYS_SELECT_H)
+if(HAVE_POLL_H OR HAVE_SYS_POLL_H OR HAVE_SYS_SELECT_H)
+ CHECK_FUNCTION_EXISTS(sendfile HAVE_SENDFILE)
+endif(HAVE_POLL_H OR HAVE_SYS_POLL_H OR HAVE_SYS_SELECT_H)
+
+#in configure.ac it is not explicitly tested, if it is in 'm', instead the
first
+#test is if "floor" is available in m and later on it is checked if round,
+#sendfile and others do exist (with the 'm' lib linked), regarding our sources
+#we *only* want round from 'm'
+CHECK_LIBRARY_EXISTS(m round "" HAVE_ROUND)
+
+#use config.h.cmake to create a list of #defines comparable to the one
configure
+#does, this file is created in the dir where cmake is run from
+CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/config.h.cmake
${CMAKE_CURRENT_BINARY_DIR}/src/config.h)
+#to make the compiler actually use the generated config.h
+add_definitions(-DHAVE_CONFIG_H)
Added: trunk/config.h.cmake
URL: http://svn.gna.org/viewcvs/wesnoth/trunk/config.h.cmake?rev=34090&view=auto
==============================================================================
--- trunk/config.h.cmake (added)
+++ trunk/config.h.cmake Tue Mar 24 15:28:52 2009
@@ -1,0 +1,8 @@
+/*this file is used to automatically set some defines and is used in the CMake
recipe*/
+#cmakedefine HAVE_STDLIB_H 1
+#cmakedefine HAVE_UNISTD_H 1
+#cmakedefine HAVE_POLL_H 1
+#cmakedefine HAVE_SYS_POLL_H 1
+#cmakedefine HAVE_SYS_SELECT_H 1
+#cmakedefine HAVE_SENDFILE 1
+#cmakedefine HAVE_ROUND 1
_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits