X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2FCMakeLists.txt;h=107f580cef7dff96adf1203a2bb04e7306d3187f;hb=05b58501f24ea0bcb6072f66f4ba3aa3ba907ab9;hp=261c8eeca4d9618d3873f78535e1f673c69e26c5;hpb=2cd5addc0c6d5712d4c365101338bfc10ab71615;p=oweals%2Fminetest.git diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 261c8eeca..107f580ce 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,15 +1,26 @@ project(minetest) cmake_minimum_required( VERSION 2.6 ) -if(RUN_IN_PLACE) - add_definitions ( -DRUN_IN_PLACE ) -endif(RUN_IN_PLACE) - # Set some random things default to not being visible in the GUI mark_as_advanced(EXECUTABLE_OUTPUT_PATH LIBRARY_OUTPUT_PATH) mark_as_advanced(JTHREAD_INCLUDE_DIR JTHREAD_LIBRARY) mark_as_advanced(SQLITE3_INCLUDE_DIR SQLITE3_LIBRARY) +option(ENABLE_CURL "Enable cURL support for fetching media" 1) + +if (NOT ENABLE_CURL) + mark_as_advanced(CLEAR CURL_LIBRARY CURL_INCLUDE_DIR) +endif(NOT ENABLE_CURL) + +if( ENABLE_CURL ) + find_package(CURL) +endif( ENABLE_CURL ) +set(USE_CURL 0) +if (CURL_FOUND AND ENABLE_CURL) + message(STATUS "cURL support enabled") + set(USE_CURL 1) +endif(CURL_FOUND AND ENABLE_CURL) + # user-visible option to enable/disable gettext usage OPTION(ENABLE_GETTEXT "Use GetText for internationalization" 0) @@ -106,6 +117,8 @@ if(WIN32) CACHE FILEPATH "Path to zlibwapi.dll (for installation)") set(IRRLICHT_SOURCE_DIR "${PROJECT_SOURCE_DIR}/../../irrlicht-1.7.2" CACHE PATH "irrlicht dir") + set(MINGWM10_DLL "" + CACHE FILEPATH "Path to mingwm10.dll (for installation)") if(ENABLE_SOUND) set(OPENAL_DLL "" CACHE FILEPATH "Path to OpenAL32.dll for installation (optional)") set(OGG_DLL "" CACHE FILEPATH "Path to libogg.dll for installation (optional)") @@ -137,13 +150,15 @@ else() #set(CLIENT_PLATFORM_LIBS -lXxf86vm) # This way Xxf86vm is found on OpenBSD too find_library(XXF86VM_LIBRARY Xxf86vm) + mark_as_advanced(XXF86VM_LIBRARY) set(CLIENT_PLATFORM_LIBS ${CLIENT_PLATFORM_LIBS} ${XXF86VM_LIBRARY}) endif() find_package(Jthread REQUIRED) find_package(Sqlite3 REQUIRED) -# TODO: Create proper find script for Lua +# Do not use system-wide installation of Lua, because it'll likely be a +# different version and/or has different build options. set(LUA_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/lua/src") set(LUA_LIBRARY "lua") @@ -153,6 +168,8 @@ configure_file( ) set(common_SRCS + rollback_interface.cpp + rollback.cpp genericobject.cpp voxelalgorithms.cpp sound.cpp @@ -175,6 +192,7 @@ set(common_SRCS content_mapnode.cpp collision.cpp nodemetadata.cpp + nodetimer.cpp serverobject.cpp noise.cpp porting.cpp @@ -190,17 +208,23 @@ set(common_SRCS connection.cpp environment.cpp server.cpp - servercommand.cpp socket.cpp mapblock.cpp mapsector.cpp map.cpp player.cpp - utility.cpp test.cpp sha1.cpp base64.cpp ban.cpp + clientserver.cpp + staticobject.cpp + util/serialize.cpp + util/directiontables.cpp + util/numeric.cpp + util/pointedthing.cpp + util/string.cpp + util/timetaker.cpp ) # This gives us the icon @@ -243,7 +267,7 @@ set(minetest_SRCS guiKeyChangeMenu.cpp guiMessageMenu.cpp guiTextInputMenu.cpp - guiInventoryMenu.cpp + guiFormSpecMenu.cpp guiPauseMenu.cpp guiPasswordChange.cpp guiDeathScreen.cpp @@ -253,6 +277,7 @@ set(minetest_SRCS client.cpp filecache.cpp tile.cpp + shader.cpp game.cpp main.cpp ) @@ -297,6 +322,16 @@ if(BUILD_CLIENT) ${PLATFORM_LIBS} ${CLIENT_PLATFORM_LIBS} ) + + if(USE_CURL) + target_link_libraries( + ${PROJECT_NAME} + ${CURL_LIBRARY} + ) + include_directories( + ${CURL_INCLUDE_DIR} + ) + endif(USE_CURL) endif(BUILD_CLIENT) if(BUILD_SERVER) @@ -384,6 +419,9 @@ endif() # Installation # if(WIN32) + if(MINGWM10_DLL) + install(FILES ${MINGWM10_DLL} DESTINATION ${BINDIR}) + endif() if(DEFINED ZLIB_DLL) install(FILES ${ZLIB_DLL} DESTINATION ${BINDIR}) endif() @@ -400,6 +438,9 @@ if(WIN32) if(VORBISFILE_DLL) install(FILES ${VORBISFILE_DLL} DESTINATION ${BINDIR}) endif() + if(CURL_DLL) + install(FILES ${CURL_DLL} DESTINATION ${BINDIR}) + endif() endif() endif()