← Back to team overview

widelands-dev team mailing list archive

[Merge] lp:~widelands-dev/widelands/cmake-reworked into lp:widelands

 

Hans Joachim Desserud has proposed merging lp:~widelands-dev/widelands/cmake-reworked into lp:widelands.

Requested reviews:
  Widelands Developers (widelands-dev)

For more details, see:
https://code.launchpad.net/~widelands-dev/widelands/cmake-reworked/+merge/222455

As we discussed earlier, the whole rework will be quite substantial so we should merge the first part, and then do incremental changes as we get things organized/cut cyclic dependencies.

There's a couple of things which should still be looked at before we merge this though:
1. Codecheck used to have a really nice feature where it would only look at files which have been changed (are compiled) and files which have codecheck issues the last time. Thus, if you ran update.sh without any changes, it would codecheck the files which had issues the last time. This has been lost somehow along the way, because now it seems to always codecheck everything. This leads to a lot of noise and makes it harder to spot issues reported. It also seems a waste of resources to codecheck files which didn't have issues and haven't changed. I am not sure how this feature really worked, so I don't quite know where to start digging to find out what broke it.
2. When I created a function for building the testsuites, I converted the ones for io and economy. The scripting tests were left alone because it triggered a build failure. It is really not clear to me what goes wrong, because it seems identical to how the other suites are built now. So it would be nice to have all test suites built in the same way when we land this.
3. There's various TODOs marked with code review which should ideally be dealt with before this land, but not all of them are critical. (On the other hand, the non-critical ones are probably the easiest ones to fix)

Testing is of course required to make sure things still works across platforms. :)

PS. I also wanted a squashed view of all the changes combined.
-- 
https://code.launchpad.net/~widelands-dev/widelands/cmake-reworked/+merge/222455
Your team Widelands Developers is requested to review the proposed merge of lp:~widelands-dev/widelands/cmake-reworked into lp:widelands.
=== modified file 'CMakeLists.txt'
--- CMakeLists.txt	2014-05-18 14:29:25 +0000
+++ CMakeLists.txt	2014-06-08 10:39:37 +0000
@@ -153,6 +153,16 @@
     REQUIRED)
 endif (WL_UNIT_TESTS)
 
+#TODO: (code review):
+#Would anyone miss this option if I removed it?
+#Back when I added more warnings we discussed -Werror briefly, but found that
+#it is not really feasible due to the number of configurations and combinations
+#of operating systems and compiler versions people might use. Also, it seems a
+#bit odd that some warnings are manually ignored.
+#And the last additional option passed to the compiler seem to have been
+#reversed and enabled by default, so it shouldn't be necessary. Compare
+#https://gcc.gnu.org/onlinedocs/gcc-4.5.0/gcc/Language-Independent-Options.html
+#https://gcc.gnu.org/onlinedocs/gcc-4.6.0/gcc/Language-Independent-Options.html
 option (WL_STRICT "If strict compilation mode is requested (almost every warning is an error)" OFF)
 
 set (PARAMETER_COMPILERFLAG_BOOST_INCLUDE_DIR "-isystem ${Boost_INCLUDE_DIR}")
@@ -284,6 +294,8 @@
   endif (NOT CMAKE_SYSTEM_NAME MATCHES "kFreeBSD")
 endif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
 
+# We use python here and there.
+find_package (PythonInterp REQUIRED)
 
 # Check for opengl
 # TODO Check for SDL_opengl.h and add to include path

=== modified file 'cmake/codecheck/rules/const_qualifier_for_parameter_passed_by_value'
--- cmake/codecheck/rules/const_qualifier_for_parameter_passed_by_value	2010-02-05 01:13:20 +0000
+++ cmake/codecheck/rules/const_qualifier_for_parameter_passed_by_value	2014-06-08 10:39:37 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python 
+#!/usr/bin/python
 
 """
 This catches const qualifiers for parameters passed by value to functions, in
@@ -9,7 +9,7 @@
 * qualifiers
 """
 
-error_msg = "'const' for a literal parameter makes no sense. Remove the const."
+error_msg = "'const' for a literal parameter is an implementation detail. Remove the const from the interface definition."
 
 regexp = r"""^\s*(?:(static|virtual) +)?(?:const +)?(?:[_a-zA-Z][_a-zA-Z0-9]*::)*[_a-zA-Z][_a-zA-Z0-9]*(?: +const)?(?: *(?:\*(?: *const)?|&))* +[_a-zA-Z][_a-zA-Z0-9]* *\((?:(const +)?(?:[_a-zA-Z][_a-zA-Z0-9]*::)*[_a-zA-Z][_a-zA-Z0-9]*(?: +const)?(?: *(?:\*(?: *const)?|&))*(?: +[_a-zA-Z][_a-zA-Z0-9]*)?, *)*(?:const +(?:[_a-zA-Z][_a-zA-Z0-9]*::)*[_a-zA-Z][_a-zA-Z0-9]*|(?:[_a-zA-Z][_a-zA-Z0-9]*::)*[_a-zA-Z][_a-zA-Z0-9]* +const)(?: +[_a-zA-Z][_a-zA-Z0-9]*)?(?:, *(?:const +)?(?:[_a-zA-Z][_a-zA-Z0-9]*::)*[_a-zA-Z][_a-zA-Z0-9]*(?: +const)?(?: *(?:\*(?: *const)?|&))*)*(?: +[_a-zA-Z][_a-zA-Z0-9]*)?(?:\)(?: *const)?(?: throw *\(.*\))?;|,$)"""
 
@@ -135,5 +135,5 @@
     "void func(std::string * const & * ngi, Some_Type abc, std::string * const & * foo) const;",
     " virtual void func(Some_Type,",
     " virtual void * func(Some_Type,",
-    "  virtual std::string & func(Some_Type,", 
+    "  virtual std::string & func(Some_Type,",
 ]

=== modified file 'src/CMakeLists.txt'
--- src/CMakeLists.txt	2014-04-16 06:51:52 +0000
+++ src/CMakeLists.txt	2014-06-08 10:39:37 +0000
@@ -1,150 +1,934 @@
-configure_file (${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h)
-configure_file (${CMAKE_CURRENT_SOURCE_DIR}/build_info.cc.cmake ${CMAKE_CURRENT_BINARY_DIR}/build_info.cc)
-
-IF (WIN32)
-  configure_file (${CMAKE_CURRENT_SOURCE_DIR}/../utils/win32/msvc/widelands.rc.cmake ${CMAKE_CURRENT_BINARY_DIR}/widelands.rc)
-  if (NOT WL_VERSION_MAJOR OR WL_VERSION_MAJOR STREQUAL "")
-    set (WL_VERSION_MAJOR 0)
-  endif (NOT WL_VERSION_MAJOR OR WL_VERSION_MAJOR STREQUAL "")
-  if (NOT WL_VERSION_MINOR OR WL_VERSION_MINOR STREQUAL "")
-    set (WL_VERSION_MINOR 15)
-  endif (NOT WL_VERSION_MINOR OR WL_VERSION_MINOR STREQUAL "")
-  if (NOT WL_VERSION_PATCH OR WL_VERSION_PATCH STREQUAL "")
-    set (WL_VERSION_PATCH 1)
-  endif (NOT WL_VERSION_PATCH OR WL_VERSION_PATCH STREQUAL "")
-  configure_file (${CMAKE_CURRENT_SOURCE_DIR}/../utils/win32/msvc/Widelands-msvc.iss.cmake ${CMAKE_CURRENT_BINARY_DIR}/Widelands-msvc.iss)
-  IF (MINGW)
-	set(WIN32_ICON_O ${CMAKE_CURRENT_BINARY_DIR}/wl_icon.o)
-	ADD_CUSTOM_COMMAND( OUTPUT ${WIN32_ICON_O}
-		COMMAND ${MINGW_PREFIX}windres
-			-o${WIN32_ICON_O}
-			-i${CMAKE_CURRENT_BINARY_DIR}/widelands.rc
-		)
-	ENDIF (MINGW)
-endif (WIN32)
-
-file(GLOB_RECURSE WL_SRCS_CC *.cc)
-file(GLOB_RECURSE WL_SRCS_H *.h)
-file(GLOB_RECURSE WL_SRCS_CPP *.cpp)
-
-#convention: any directory called "test" contains test sources, including subdirectories
-set(WL_TEST_SRCS "")
-set(WL_CODECHECK_SRCS "")
-foreach (sourcefile ${WL_SRCS_CC} ${WL_SRCS_H})
-  if (${sourcefile} MATCHES ".*/test/.*")
-    list (APPEND WL_TEST_SRCS ${sourcefile})
-    list (REMOVE_ITEM WL_SRCS_CC ${sourcefile})
-    list (REMOVE_ITEM WL_SRCS_H ${sourcefile})
-  endif (${sourcefile} MATCHES ".*/test/.*")
-  # exclude test sources from Codecheck, as well as the scripting/eris sources from lua and minizip
-  if (NOT ${sourcefile} MATCHES ".*/scripting/eris/.*" AND NOT ${sourcefile} MATCHES ".*/test/.*" AND NOT ${sourcefile} MATCHES ".*/minizip/.*")
-    list (APPEND WL_CODECHECK_SRCS ${sourcefile})
-  endif (NOT ${sourcefile} MATCHES ".*/scripting/eris/.*" AND NOT ${sourcefile} MATCHES ".*/test/.*" AND NOT ${sourcefile} MATCHES ".*/minizip/.*")
-endforeach (sourcefile ${WL_SRCS_CC} ${WL_SRCS_H})
-foreach (sourcefile ${WL_SRCS_CPP})
-  list (APPEND WL_CODECHECK_SRCS ${sourcefile})
-endforeach (sourcefile ${WL_SRCS_CPP})
-#convention: main.cc should be removed from all lists
-list (REMOVE_ITEM WL_SRCS_CC "${CMAKE_CURRENT_SOURCE_DIR}/main.cc")
-
-IF (DEFINED MSVC)
-  add_executable (widelands ${GUI_TYPE} main.cc build_info.cc widelands.rc)
-else (DEFINED MSVC)
-  if (DEFINED MINGW)
-    add_executable (widelands ${GUI_TYPE} main.cc build_info.cc ${WIN32_ICON_O})
-  else (DEFINED MINGW)
-    add_executable (widelands ${GUI_TYPE} main.cc build_info.cc)
-  endif (DEFINED MINGW)
-endif (DEFINED MSVC)
-
-add_library (widelands_all STATIC ${WL_SRCS_CC} ${WL_SRCS_H})
-
-set (WL_SOURCES_ROOT ${CMAKE_CURRENT_SOURCE_DIR})
-set (WL_SOURCES_BINARY_ROOT ${CMAKE_CURRENT_BINARY_DIR})
-
-if (CMAKE_BUILD_TYPE STREQUAL Debug)
-  find_package (PythonInterp REQUIRED)
-  set (commands "")
-  foreach(sourcefile ${WL_CODECHECK_SRCS})
-    string(REPLACE "${CMAKE_SOURCE_DIR}/src/" "" sourcewithoutpath ${sourcefile})
-    string(REGEX REPLACE "\\.|\\/" "_" sourcenoslash ${sourcewithoutpath})
-    if (WIN32)
-      string(REGEX REPLACE "^.*:" "" sourcenoslash ${sourcenoslash})
-    endif (WIN32)
-    get_filename_component(sourcename ${sourcefile} NAME)
-    set(stamp ${sourcename}_)
-    add_custom_command(
-      OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/codecheck_${sourcenoslash}"
-      COMMAND ${CMAKE_COMMAND} -DPYTHON_EXECUTABLE=${PYTHON_EXECUTABLE} -DWL_SOURCE_CHECKER=${CMAKE_SOURCE_DIR}/cmake/codecheck/CodeCheck.py -Dsourcefile=${sourcefile} -DCMAKE_CURRENT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR} -Dstamp=codecheck_${sourcenoslash} -P ${CMAKE_SOURCE_DIR}/src/CodeCheck.cmake
-      DEPENDS ${sourcefile}
-      COMMENT "Checking ${sourcewithoutpath} with CodeCheck"
-    )
-    list(APPEND commands ${CMAKE_CURRENT_BINARY_DIR}/codecheck_${sourcenoslash})
-  endforeach(sourcefile ${WL_CODECHECK_SRCS})
-  add_custom_target(codecheck DEPENDS ${commands})
-  add_dependencies(widelands codecheck)
-endif (CMAKE_BUILD_TYPE STREQUAL Debug)
-
-#the subdirectories are only used for test definition
-#temporarily disabled the 'old' tests due to incompatibility
-if (WL_UNIT_TESTS)
-  # Tests need to link with SDL library without main
-  set(TEST_EXTRA_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/build_info.cc)
-  set(TEST_EXTRA_LIBS ${SDL_LIBRARY} )
-  list(REMOVE_ITEM TEST_EXTRA_LIBS  ${SDLMAIN_LIBRARY})
-
-  add_subdirectory(economy)
-  add_subdirectory(io)
-endif (WL_UNIT_TESTS)
-
-add_subdirectory(scripting)
-
-if (NOT MINIZIP_FOUND)
-  add_subdirectory(minizip)
-  target_link_libraries(widelands_all wl_minizip)
-endif (NOT MINIZIP_FOUND)
-
-target_link_libraries(widelands_all eris)
-target_link_libraries(widelands_all ${SDLIMAGE_LIBRARY})
-target_link_libraries(widelands_all ${SDLMIXER_LIBRARY})
-target_link_libraries(widelands_all ${SDLNET_LIBRARY})
-target_link_libraries(widelands_all ${SDLTTF_LIBRARY})
-target_link_libraries(widelands_all ${SDLGFX_LIBRARY})
-target_link_libraries(widelands_all ${PNG_LIBRARY})
-target_link_libraries(widelands_all ${ZLIB_LIBRARY})
-target_link_libraries(widelands_all ${OPENGL_gl_LIBRARY})
-target_link_libraries(widelands_all ${GLEW_LIBRARY})
-target_link_libraries(widelands_all ${Boost_LIBRARIES})
-
-if (MINIZIP_FOUND)
-  target_link_libraries(widelands_all ${MINIZIP_LIBRARY})
-endif (MINIZIP_FOUND)
-if (CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
-  target_link_libraries(widelands_all ${EXECINFO_LIBRARY})
-endif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
-
-if (DEFINED WL_EXTRA_LINK_LIBRARIES)
-  target_link_libraries(widelands_all ${WL_EXTRA_LINK_LIBRARIES})
-endif (DEFINED WL_EXTRA_LINK_LIBRARIES)
-
-target_link_libraries(widelands widelands_all)
-target_link_libraries(widelands ${SDL_LIBRARY})
-
-if (APPLE OR WIN32 OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
-  target_link_libraries(widelands_all ${INTL_LIBRARY})
-endif (APPLE OR WIN32 OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
-
-if (WIN32)
-  if (DEFINED MSVC)
-    target_link_libraries(widelands_all ws2_32)
-
-    #gettext on MSVC using 3rdparty bundle needs iconv library
-    find_library(ICONV_LIBRARY iconv libiconv REQUIRED)
-    target_link_libraries(widelands_all ${ICONV_LIBRARY})
-
-  else (DEFINED MSVC)
-    target_link_libraries(widelands_all wsock32)
-  endif (DEFINED MSVC)
-endif (WIN32)
-
-install(TARGETS widelands DESTINATION ${WL_INSTALL_BINDIR} COMPONENT ExecutableFiles)
+configure_file (${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h)
+configure_file (${CMAKE_CURRENT_SOURCE_DIR}/build_info.cc.cmake ${CMAKE_CURRENT_BINARY_DIR}/build_info.cc)
+
+# Catchall target to codecheck all files.
+add_custom_target(codecheck)
+
+# See
+# http://www.cmake.org/cmake/help/v3.0/module/CMakeParseArguments.html
+function(wl_library NAME)
+  # TODO(sirver): add OPTIONS for the other external libraries we
+  # use
+  set(OPTIONS USES_MINIZIP)
+  set(ONE_VALUE_ARG )
+  set(MULTI_VALUE_ARGS SRCS DEPENDS)
+  cmake_parse_arguments(ARG "${OPTIONS}" "${ONE_VALUE_ARG}" "${MULTI_VALUE_ARGS}"
+    ${ARGN}
+  )
+
+  # TODO(sirver): I do not get any unresolved dependency errors
+  # when building a STATIC library, only for SHARED. We should
+  # always gets those errors to track down cyclic dependencies.
+  add_library(${NAME} STATIC
+    ${ARG_SRCS}
+  )
+
+  foreach(SRC ${ARG_SRCS})
+    run_codecheck(${NAME} ${SRC})
+  endforeach(SRC)
+
+  if(ARG_USES_MINIZIP)
+    # TODO(sirver): always use the one we bundle and never search
+    # for a system one.
+    if(NOT MINIZIP_FOUND)
+      target_link_libraries(${NAME} wl_minizip)
+    else(NOT MINIZIP_FOUND)
+      target_link_libraries(${NAME} ${MINIZIP_LIBRARY})
+    endif(NOT MINIZIP_FOUND)
+  endif(ARG_USES_MINIZIP)
+
+  foreach(DEPENDENCY ${ARG_DEPENDS})
+    target_link_libraries(${NAME} ${DEPENDENCY})
+  endforeach(DEPENDENCY)
+endfunction(wl_library)
+
+function(wl_testsuite NAME)
+  set(OPTIONS)
+  set(ONE_VALUE_ARG)
+  set(MULTI_VALUE_ARGS SRCS DEPENDS)
+  cmake_parse_arguments(ARG "${OPTIONS}" "${ONE_VALUE_ARG}" "${MULTI_VALUE_ARGS}"
+    ${ARGN}
+  )
+
+  if (WL_UNIT_TESTS)
+    add_executable(${NAME} ${ARG_SRCS} ${TEST_EXTRA_SOURCES})
+
+    foreach(SRC ${ARG_SRCS})
+      run_codecheck(${NAME} ${SRC})
+    endforeach(SRC)
+
+    foreach(DEPENDENCY ${ARG_DEPENDS})
+      target_link_libraries(${NAME} ${DEPENDENCY})
+    endforeach()
+
+    add_test(${NAME} ${NAME})
+  endif()
+endfunction()
+
+# Checks a single 'SRC' file using Codecheck and writes a file named
+# codecheck_<shasum of input> if the codecheck did not yield anything.
+# The target for the codecheck will be added as a dependency to 'NAME' for
+# debug builds, but always for the target 'codecheck', so that make codecheck
+# checks all source code.
+function(run_codecheck NAME SRC)
+  get_filename_component(ABSOLUTE_SRC ${SRC} ABSOLUTE)
+
+  # If the file does not exist, it is probably auto-generated. In that case, it
+  # makes no sense to codecheck it.
+  if(EXISTS ${ABSOLUTE_SRC})
+    file(SHA1 ${ABSOLUTE_SRC} CHECKSUM)
+
+    set(OUTPUT_FILE "${CMAKE_CURRENT_BINARY_DIR}/codecheck_${CHECKSUM}")
+    add_custom_command(
+      OUTPUT
+        ${OUTPUT_FILE}
+      COMMAND
+        ${CMAKE_COMMAND}
+        -DPYTHON_EXECUTABLE=${PYTHON_EXECUTABLE}
+        -DWL_SOURCE_CHECKER=${CMAKE_SOURCE_DIR}/cmake/codecheck/CodeCheck.py
+        -DSRC=${ABSOLUTE_SRC}
+        -DOUTPUT_FILE=${OUTPUT_FILE}
+        -DCMAKE_CURRENT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}
+        -P ${CMAKE_SOURCE_DIR}/src/CodeCheck.cmake
+      DEPENDS ${ABSOLUTE_SRC}
+      COMMENT "Checking ${SRC} with CodeCheck"
+    )
+    add_custom_target(run_codecheck_for_${CHECKSUM} DEPENDS ${OUTPUT_FILE})
+    add_dependencies(codecheck run_codecheck_for_${CHECKSUM})
+
+    if(CMAKE_BUILD_TYPE STREQUAL Debug)
+      add_dependencies(${NAME} run_codecheck_for_${CHECKSUM})
+    endif(CMAKE_BUILD_TYPE STREQUAL Debug)
+  endif(EXISTS ${ABSOLUTE_SRC})
+endfunction(run_codecheck)
+
+wl_library(build_info
+  SRCS
+    build_info.cc
+    build_info.h
+)
+
+# TODO(sirver): This seems to introduce another notion of version that needs to
+# be kept updated manually.
+IF (WIN32)
+  configure_file (${CMAKE_CURRENT_SOURCE_DIR}/../utils/win32/msvc/widelands.rc.cmake ${CMAKE_CURRENT_BINARY_DIR}/widelands.rc)
+  if (NOT WL_VERSION_MAJOR OR WL_VERSION_MAJOR STREQUAL "")
+    set (WL_VERSION_MAJOR 0)
+  endif (NOT WL_VERSION_MAJOR OR WL_VERSION_MAJOR STREQUAL "")
+  if (NOT WL_VERSION_MINOR OR WL_VERSION_MINOR STREQUAL "")
+    set (WL_VERSION_MINOR 15)
+  endif (NOT WL_VERSION_MINOR OR WL_VERSION_MINOR STREQUAL "")
+  if (NOT WL_VERSION_PATCH OR WL_VERSION_PATCH STREQUAL "")
+    set (WL_VERSION_PATCH 1)
+  endif (NOT WL_VERSION_PATCH OR WL_VERSION_PATCH STREQUAL "")
+  configure_file (${CMAKE_CURRENT_SOURCE_DIR}/../utils/win32/msvc/Widelands-msvc.iss.cmake ${CMAKE_CURRENT_BINARY_DIR}/Widelands-msvc.iss)
+  IF (MINGW)
+	set(WIN32_ICON_O ${CMAKE_CURRENT_BINARY_DIR}/wl_icon.o)
+	ADD_CUSTOM_COMMAND( OUTPUT ${WIN32_ICON_O}
+		COMMAND ${MINGW_PREFIX}windres
+			-o${WIN32_ICON_O}
+			-i${CMAKE_CURRENT_BINARY_DIR}/widelands.rc
+		)
+	ENDIF (MINGW)
+endif (WIN32)
+
+set(WL_SRCS
+	ai/ai_help_structs.cc
+	ai/ai_hints.cc
+	ai/defaultai.cc
+	campvis.cc
+	chat.cc
+	computer_player.cc
+	economy/cmd_call_economy_balance.cc
+	economy/economy.cc
+	economy/economy_data_packet.cc
+	economy/flag.cc
+	economy/fleet.cc
+	economy/idleworkersupply.cc
+	economy/portdock.cc
+	economy/request.cc
+	economy/road.cc
+	economy/route.cc
+	economy/routeastar.cc
+	economy/router.cc
+	economy/shippingitem.cc
+	economy/supply_list.cc
+	economy/transfer.cc
+	economy/ware_instance.cc
+	economy/wares_queue.cc
+	editor/editorinteractive.cc
+	editor/tools/editor_decrease_height_tool.cc
+	editor/tools/editor_decrease_resources_tool.cc
+	editor/tools/editor_delete_bob_tool.cc
+	editor/tools/editor_delete_immovable_tool.cc
+	editor/tools/editor_draw_tool.cc
+	editor/tools/editor_history.cc
+	editor/tools/editor_increase_height_tool.cc
+	editor/tools/editor_increase_resources_tool.cc
+	editor/tools/editor_info_tool.cc
+	editor/tools/editor_make_infrastructure_tool.cc
+	editor/tools/editor_noise_height_tool.cc
+	editor/tools/editor_place_bob_tool.cc
+	editor/tools/editor_place_immovable_tool.cc
+	editor/tools/editor_set_height_tool.cc
+	editor/tools/editor_set_origin_tool.cc
+	editor/tools/editor_set_port_space_tool.cc
+	editor/tools/editor_set_resources_tool.cc
+	editor/tools/editor_set_starting_pos_tool.cc
+	editor/tools/editor_set_terrain_tool.cc
+	editor/ui_menus/editor_main_menu.cc
+	editor/ui_menus/editor_main_menu_load_map.cc
+	editor/ui_menus/editor_main_menu_map_options.cc
+	editor/ui_menus/editor_main_menu_new_map.cc
+	editor/ui_menus/editor_main_menu_random_map.cc
+	editor/ui_menus/editor_main_menu_save_map.cc
+	editor/ui_menus/editor_main_menu_save_map_make_directory.cc
+	editor/ui_menus/editor_player_menu.cc
+	editor/ui_menus/editor_player_menu_allowed_buildings_menu.cc
+	editor/ui_menus/editor_tool_change_height_options_menu.cc
+	editor/ui_menus/editor_tool_change_resources_options_menu.cc
+	editor/ui_menus/editor_tool_menu.cc
+	editor/ui_menus/editor_tool_noise_height_options_menu.cc
+	editor/ui_menus/editor_tool_options_menu.cc
+	editor/ui_menus/editor_tool_place_bob_options_menu.cc
+	editor/ui_menus/editor_tool_place_immovable_options_menu.cc
+	editor/ui_menus/editor_tool_set_terrain_options_menu.cc
+	editor/ui_menus/editor_toolsize_menu.cc
+	game_io/game_cmd_queue_data_packet.cc
+	game_io/game_game_class_data_packet.cc
+	game_io/game_interactive_player_data_packet.cc
+	game_io/game_loader.cc
+	game_io/game_map_data_packet.cc
+	game_io/game_player_economies_data_packet.cc
+	game_io/game_player_info_data_packet.cc
+	game_io/game_preload_data_packet.cc
+	game_io/game_saver.cc
+	graphic/align.cc
+	graphic/animation.cc
+	graphic/colormap.cc
+	graphic/font.cc
+	graphic/font_handler.cc
+	graphic/font_handler1.cc
+	graphic/graphic.cc
+	graphic/image_cache.cc
+	graphic/image_loader_impl.cc
+	graphic/image_transformations.cc
+	graphic/in_memory_image.cc
+	graphic/render/gamerenderer.cc
+	graphic/render/gamerenderer_gl.cc
+	graphic/render/gamerenderer_sdl.cc
+	graphic/render/gl_surface.cc
+	graphic/render/gl_surface_screen.cc
+	graphic/render/gl_surface_texture.cc
+	graphic/render/gl_utils.cc
+	graphic/render/minimaprenderer.cc
+	graphic/render/sdl_helper.cc
+	graphic/render/sdl_surface.cc
+	graphic/render/terrain_sdl.cc
+	graphic/rendertarget.cc
+	graphic/richtext.cc
+	graphic/surface.cc
+	graphic/surface_cache.cc
+	graphic/text/rt_parse.cc
+	graphic/text/rt_render.cc
+	graphic/text/sdl_ttf_font_impl.cc
+	graphic/text/sdl_ttf_font_loader_from_file.cc
+	graphic/text/sdl_ttf_font_loader_from_filesystem.cc
+	graphic/text/textstream.cc
+	graphic/text_parser.cc
+	graphic/texture.cc
+	graphic/wordwrap.cc
+	helper.cc
+	i18n.cc
+	logic/backtrace.cc
+	logic/battle.cc
+	logic/bob.cc
+	logic/buildcost.cc
+	logic/building.cc
+	logic/carrier.cc
+	logic/checkstep.cc
+	logic/cmd_calculate_statistics.cc
+	logic/cmd_expire_message.cc
+	logic/cmd_incorporate.cc
+	logic/cmd_luacoroutine.cc
+	logic/cmd_luascript.cc
+	logic/cmd_queue.cc
+	logic/constructionsite.cc
+	logic/critter_bob.cc
+	logic/dismantlesite.cc
+	logic/editor_game_base.cc
+	logic/expedition_bootstrap.cc
+	logic/field.cc
+	logic/findbob.cc
+	logic/findimmovable.cc
+	logic/findnode.cc
+	logic/game.cc
+	logic/game_data_error.cc
+	logic/immovable.cc
+	logic/instances.cc
+	logic/map.cc
+	logic/map_revision.cc
+	logic/mapastar.cc
+	logic/mapdifferenceregion.cc
+	logic/mapfringeregion.cc
+	logic/maphollowregion.cc
+	logic/maptriangleregion.cc
+	logic/military_data.cc
+	logic/militarysite.cc
+	logic/partially_finished_building.cc
+	logic/path.cc
+	logic/pathfield.cc
+	logic/player.cc
+	logic/playercommand.cc
+	logic/playersmanager.cc
+	logic/production_program.cc
+	logic/productionsite.cc
+	logic/queue_cmd_factory.cc
+	logic/replay.cc
+	logic/requirements.cc
+	logic/ship.cc
+	logic/soldier.cc
+	logic/trainingsite.cc
+	logic/tribe.cc
+	logic/walkingdir.cc
+	logic/ware_descr.cc
+	logic/warehouse.cc
+	logic/warelist.cc
+	logic/widelands_geometry_io.cc
+	logic/worker.cc
+	logic/worker_descr.cc
+	logic/worker_program.cc
+	logic/world.cc
+	map_generator.cc
+	map_io/widelands_map_allowed_building_types_data_packet.cc
+	map_io/widelands_map_allowed_worker_types_data_packet.cc
+	map_io/widelands_map_building_data_packet.cc
+	map_io/widelands_map_buildingdata_data_packet.cc
+	map_io/widelands_map_elemental_data_packet.cc
+	map_io/widelands_map_exploration_data_packet.cc
+	map_io/widelands_map_extradata_data_packet.cc
+	map_io/widelands_map_flag_data_packet.cc
+	map_io/widelands_map_flagdata_data_packet.cc
+	map_io/widelands_map_heights_data_packet.cc
+	map_io/widelands_map_loader.cc
+	map_io/widelands_map_map_object_loader.cc
+	map_io/widelands_map_map_object_saver.cc
+	map_io/widelands_map_node_ownership_data_packet.cc
+	map_io/widelands_map_object_packet.cc
+	map_io/widelands_map_objective_data_packet.cc
+	map_io/widelands_map_player_names_and_tribes_data_packet.cc
+	map_io/widelands_map_player_position_data_packet.cc
+	map_io/widelands_map_players_messages_data_packet.cc
+	map_io/widelands_map_players_view_data_packet.cc
+	map_io/widelands_map_port_spaces_data_packet.cc
+	map_io/widelands_map_resources_data_packet.cc
+	map_io/widelands_map_road_data_packet.cc
+	map_io/widelands_map_roaddata_data_packet.cc
+	map_io/widelands_map_saver.cc
+	map_io/widelands_map_scripting_data_packet.cc
+	map_io/widelands_map_terrain_data_packet.cc
+	map_io/widelands_map_version_data_packet.cc
+	md5.cc
+	network/internet_gaming.cc
+	network/internet_gaming_messages.cc
+	network/netclient.cc
+	network/nethost.cc
+	network/network.cc
+	network/network_gaming_messages.cc
+	network/network_lan_promotion.cc
+	network/network_player_settings_backend.cc
+	profile/profile.cc
+	random.cc
+	replay_game_controller.cc
+	s2map.cc
+	save_handler.cc
+	scoped_timer.cc
+	scripting/c_utils.cc
+	scripting/factory.cc
+	scripting/lua_bases.cc
+	scripting/lua_coroutine.cc
+	scripting/lua_editor.cc
+	scripting/lua_game.cc
+	scripting/lua_globals.cc
+	scripting/lua_map.cc
+	scripting/lua_root.cc
+	scripting/lua_table.cc
+	scripting/lua_ui.cc
+	scripting/luna_impl.cc
+	scripting/persistence.cc
+	scripting/scripting.cc
+	single_player_game_controller.cc
+	single_player_game_settings_provider.cc
+	text_layout.cc
+	timestring.cc
+	ui_basic/box.cc
+	ui_basic/button.cc
+	ui_basic/checkbox.cc
+	ui_basic/editbox.cc
+	ui_basic/helpwindow.cc
+	ui_basic/icon.cc
+	ui_basic/icongrid.cc
+	ui_basic/listselect.cc
+	ui_basic/messagebox.cc
+	ui_basic/multilineeditbox.cc
+	ui_basic/multilinetextarea.cc
+	ui_basic/panel.cc
+	ui_basic/progressbar.cc
+	ui_basic/progresswindow.cc
+	ui_basic/radiobutton.cc
+	ui_basic/scrollbar.cc
+	ui_basic/slider.cc
+	ui_basic/spinbox.cc
+	ui_basic/table.cc
+	ui_basic/tabpanel.cc
+	ui_basic/textarea.cc
+	ui_basic/unique_window.cc
+	ui_basic/window.cc
+	ui_fsmenu/base.cc
+	ui_fsmenu/campaign_select.cc
+	ui_fsmenu/editor.cc
+	ui_fsmenu/editor_mapselect.cc
+	ui_fsmenu/fileview.cc
+	ui_fsmenu/internet_lobby.cc
+	ui_fsmenu/intro.cc
+	ui_fsmenu/launchMPG.cc
+	ui_fsmenu/launchSPG.cc
+	ui_fsmenu/loadgame.cc
+	ui_fsmenu/loadreplay.cc
+	ui_fsmenu/main.cc
+	ui_fsmenu/mapselect.cc
+	ui_fsmenu/multiplayer.cc
+	ui_fsmenu/netsetup_lan.cc
+	ui_fsmenu/options.cc
+	ui_fsmenu/singleplayer.cc
+	wlapplication.cc
+	wui/actionconfirm.cc
+	wui/attack_box.cc
+	wui/building_statistics_menu.cc
+	wui/building_ui.cc
+	wui/buildingwindow.cc
+	wui/chatoverlay.cc
+	wui/constructionsitewindow.cc
+	wui/debugconsole.cc
+	wui/dismantlesitewindow.cc
+	wui/encyclopedia_window.cc
+	wui/fieldaction.cc
+	wui/game_chat_menu.cc
+	wui/game_debug_ui.cc
+	wui/game_main_menu.cc
+	wui/game_main_menu_save_game.cc
+	wui/game_message_menu.cc
+	wui/game_objectives_menu.cc
+	wui/game_options_menu.cc
+	wui/game_options_sound_menu.cc
+	wui/game_summary.cc
+	wui/game_tips.cc
+	wui/gamechatpanel.cc
+	wui/general_statistics_menu.cc
+	wui/interactive_base.cc
+	wui/interactive_gamebase.cc
+	wui/interactive_player.cc
+	wui/interactive_spectator.cc
+	wui/itemwaresdisplay.cc
+	wui/login_box.cc
+	wui/mapview.cc
+	wui/mapviewpixelfunctions.cc
+	wui/military_box.cc
+	wui/militarysitewindow.cc
+	wui/minimap.cc
+	wui/multiplayersetupgroup.cc
+	wui/overlay_manager.cc
+	wui/playerdescrgroup.cc
+	wui/plot_area.cc
+	wui/portdockwaresdisplay.cc
+	wui/productionsitewindow.cc
+	wui/quicknavigation.cc
+	wui/shipwindow.cc
+	wui/soldiercapacitycontrol.cc
+	wui/soldierlist.cc
+	wui/stock_menu.cc
+	wui/story_message_box.cc
+	wui/trainingsitewindow.cc
+	wui/transport_draw.cc
+	wui/transport_ui.cc
+	wui/unique_window_handler.cc
+	wui/ware_statistics_menu.cc
+	wui/warehousewindow.cc
+	wui/waresdisplay.cc
+	wui/waresqueuedisplay.cc
+	wui/watchwindow.cc
+  TribeBasicInfo.h
+  ai/ai_help_structs.h
+  ai/ai_hints.h
+  ai/defaultai.h
+  campvis.h
+  chat.h
+  compile_diagnostics.h
+  computer_player.h
+  constants.h
+  container_iterate.h
+  cookie_priority_queue.h
+  economy/cmd_call_economy_balance.h
+  economy/economy.h
+  economy/economy_data_packet.h
+  economy/flag.h
+  economy/fleet.h
+  economy/idleworkersupply.h
+  economy/iroute.h
+  economy/itransport_cost_calculator.h
+  economy/portdock.h
+  economy/request.h
+  economy/road.h
+  economy/route.h
+  economy/routeastar.h
+  economy/router.h
+  economy/routing_node.h
+  economy/shippingitem.h
+  economy/supply.h
+  economy/supply_list.h
+  economy/transfer.h
+  economy/ware_instance.h
+  economy/warehousesupply.h
+  economy/wares_queue.h
+  editor/editorinteractive.h
+  editor/tools/editor_action_args.h
+  editor/tools/editor_decrease_height_tool.h
+  editor/tools/editor_decrease_resources_tool.h
+  editor/tools/editor_delete_bob_tool.h
+  editor/tools/editor_delete_immovable_tool.h
+  editor/tools/editor_draw_tool.h
+  editor/tools/editor_history.h
+  editor/tools/editor_increase_height_tool.h
+  editor/tools/editor_increase_resources_tool.h
+  editor/tools/editor_info_tool.h
+  editor/tools/editor_make_infrastructure_tool.h
+  editor/tools/editor_noise_height_tool.h
+  editor/tools/editor_place_bob_tool.h
+  editor/tools/editor_place_immovable_tool.h
+  editor/tools/editor_set_height_tool.h
+  editor/tools/editor_set_origin_tool.h
+  editor/tools/editor_set_port_space_tool.h
+  editor/tools/editor_set_resources_tool.h
+  editor/tools/editor_set_starting_pos_tool.h
+  editor/tools/editor_set_terrain_tool.h
+  editor/tools/editor_tool.h
+  editor/tools/editor_tool_action.h
+  editor/tools/multi_select.h
+  editor/ui_menus/editor_main_menu.h
+  editor/ui_menus/editor_main_menu_load_map.h
+  editor/ui_menus/editor_main_menu_map_options.h
+  editor/ui_menus/editor_main_menu_new_map.h
+  editor/ui_menus/editor_main_menu_random_map.h
+  editor/ui_menus/editor_main_menu_save_map.h
+  editor/ui_menus/editor_main_menu_save_map_make_directory.h
+  editor/ui_menus/editor_player_menu.h
+  editor/ui_menus/editor_player_menu_allowed_buildings_menu.h
+  editor/ui_menus/editor_tool_change_height_options_menu.h
+  editor/ui_menus/editor_tool_change_resources_options_menu.h
+  editor/ui_menus/editor_tool_menu.h
+  editor/ui_menus/editor_tool_noise_height_options_menu.h
+  editor/ui_menus/editor_tool_options_menu.h
+  editor/ui_menus/editor_tool_place_bob_options_menu.h
+  editor/ui_menus/editor_tool_place_immovable_options_menu.h
+  editor/ui_menus/editor_tool_set_terrain_options_menu.h
+  editor/ui_menus/editor_toolsize_menu.h
+  game_io/game_cmd_queue_data_packet.h
+  game_io/game_data_packet.h
+  game_io/game_game_class_data_packet.h
+  game_io/game_interactive_player_data_packet.h
+  game_io/game_loader.h
+  game_io/game_map_data_packet.h
+  game_io/game_player_economies_data_packet.h
+  game_io/game_player_info_data_packet.h
+  game_io/game_preload_data_packet.h
+  game_io/game_saver.h
+  gamecontroller.h
+  gamesettings.h
+  graphic/align.h
+  graphic/animation.h
+  graphic/colormap.h
+  graphic/compositemode.h
+  graphic/diranimations.h
+  graphic/font.h
+  graphic/font_handler.h
+  graphic/font_handler1.h
+  graphic/graphic.h
+  graphic/image.h
+  graphic/image_cache.h
+  graphic/image_loader.h
+  graphic/image_loader_impl.h
+  graphic/image_transformations.h
+  graphic/in_memory_image.h
+  graphic/rect.h
+  graphic/render/gamerenderer.h
+  graphic/render/gamerenderer_gl.h
+  graphic/render/gamerenderer_sdl.h
+  graphic/render/gl_surface.h
+  graphic/render/gl_surface_screen.h
+  graphic/render/gl_surface_texture.h
+  graphic/render/gl_utils.h
+  graphic/render/minimaprenderer.h
+  graphic/render/sdl_helper.h
+  graphic/render/sdl_surface.h
+  graphic/render/terrain_sdl.h
+  graphic/render/vertex.h
+  graphic/rendertarget.h
+  graphic/richtext.h
+  graphic/surface.h
+  graphic/surface_cache.h
+  graphic/text/rt_errors.h
+  graphic/text/rt_errors_impl.h
+  graphic/text/rt_parse.h
+  graphic/text/rt_render.h
+  graphic/text/sdl_ttf_font.h
+  graphic/text/sdl_ttf_font_impl.h
+  graphic/text/textstream.h
+  graphic/text_parser.h
+  graphic/texture.h
+  graphic/wordwrap.h
+  helper.h
+  i18n.h
+  interval.h
+  logic/attackable.h
+  logic/backtrace.h
+  logic/battle.h
+  logic/bill_of_materials.h
+  logic/bob.h
+  logic/buildcost.h
+  logic/building.h
+  logic/carrier.h
+  logic/checkstep.h
+  logic/cmd_calculate_statistics.h
+  logic/cmd_expire_message.h
+  logic/cmd_incorporate.h
+  logic/cmd_luacoroutine.h
+  logic/cmd_luascript.h
+  logic/cmd_queue.h
+  logic/constructionsite.h
+  logic/critter_bob.h
+  logic/critter_bob_program.h
+  logic/description_maintainer.h
+  logic/dismantlesite.h
+  logic/editor_game_base.h
+  logic/expedition_bootstrap.h
+  logic/field.h
+  logic/findbob.h
+  logic/findimmovable.h
+  logic/findnode.h
+  logic/game.h
+  logic/game_data_error.h
+  logic/immovable.h
+  logic/immovable_program.h
+  logic/instances.h
+  logic/map.h
+  logic/map_revision.h
+  logic/mapastar.h
+  logic/mapdifferenceregion.h
+  logic/mapfringeregion.h
+  logic/maphollowregion.h
+  logic/mapregion.h
+  logic/maptriangleregion.h
+  logic/message.h
+  logic/message_id.h
+  logic/message_queue.h
+  logic/military_data.h
+  logic/militarysite.h
+  logic/nodecaps.h
+  logic/notification.h
+  logic/objective.h
+  logic/parse_map_object_types.h
+  logic/partially_finished_building.h
+  logic/path.h
+  logic/pathfield.h
+  logic/player.h
+  logic/player_area.h
+  logic/playercommand.h
+  logic/playersmanager.h
+  logic/production_program.h
+  logic/productionsite.h
+  logic/program_result.h
+  logic/queue_cmd_factory.h
+  logic/queue_cmd_ids.h
+  logic/replay.h
+  logic/requirements.h
+  logic/roadtype.h
+  logic/ship.h
+  logic/soldier.h
+  logic/soldier_counts.h
+  logic/soldiercontrol.h
+  logic/tattribute.h
+  logic/trainingsite.h
+  logic/tribe.h
+  logic/walkingdir.h
+  logic/ware_descr.h
+  logic/warehouse.h
+  logic/warelist.h
+  logic/wareworker.h
+  logic/widelands.h
+  logic/widelands_geometry.h
+  logic/widelands_geometry_io.h
+  logic/workarea_info.h
+  logic/worker.h
+  logic/worker_descr.h
+  logic/worker_program.h
+  logic/world.h
+  logic/worlddata.h
+  machdep.h
+  map_generator.h
+  map_io/map_loader.h
+  map_io/widelands_map_allowed_building_types_data_packet.h
+  map_io/widelands_map_allowed_worker_types_data_packet.h
+  map_io/widelands_map_building_data_packet.h
+  map_io/widelands_map_buildingdata_data_packet.h
+  map_io/widelands_map_data_packet.h
+  map_io/widelands_map_elemental_data_packet.h
+  map_io/widelands_map_exploration_data_packet.h
+  map_io/widelands_map_extradata_data_packet.h
+  map_io/widelands_map_flag_data_packet.h
+  map_io/widelands_map_flagdata_data_packet.h
+  map_io/widelands_map_heights_data_packet.h
+  map_io/widelands_map_loader.h
+  map_io/widelands_map_map_object_loader.h
+  map_io/widelands_map_map_object_saver.h
+  map_io/widelands_map_message_saver.h
+  map_io/widelands_map_node_ownership_data_packet.h
+  map_io/widelands_map_object_packet.h
+  map_io/widelands_map_objective_data_packet.h
+  map_io/widelands_map_player_names_and_tribes_data_packet.h
+  map_io/widelands_map_player_position_data_packet.h
+  map_io/widelands_map_players_messages_data_packet.h
+  map_io/widelands_map_players_view_data_packet.h
+  map_io/widelands_map_port_spaces_data_packet.h
+  map_io/widelands_map_resources_data_packet.h
+  map_io/widelands_map_road_data_packet.h
+  map_io/widelands_map_roaddata_data_packet.h
+  map_io/widelands_map_saver.h
+  map_io/widelands_map_scripting_data_packet.h
+  map_io/widelands_map_terrain_data_packet.h
+  map_io/widelands_map_version_data_packet.h
+  md5.h
+  network/internet_gaming.h
+  network/internet_gaming_messages.h
+  network/internet_gaming_protocol.h
+  network/netclient.h
+  network/nethost.h
+  network/network.h
+  network/network_gaming_messages.h
+  network/network_lan_promotion.h
+  network/network_player_settings_backend.h
+  network/network_protocol.h
+  network/network_system.h
+  point.h
+  profile/profile.h
+  random.h
+  ref_cast.h
+  replay_game_controller.h
+  rgbcolor.h
+  s2map.h
+  save_handler.h
+  scoped_timer.h
+  scripting/c_utils.h
+  scripting/factory.h
+  scripting/lua_bases.h
+  scripting/lua_coroutine.h
+  scripting/lua_editor.h
+  scripting/lua_errors.h
+  scripting/lua_game.h
+  scripting/lua_globals.h
+  scripting/lua_map.h
+  scripting/lua_root.h
+  scripting/lua_table.h
+  scripting/lua_ui.h
+  scripting/luna.h
+  scripting/luna_impl.h
+  scripting/persistence.h
+  scripting/scripting.h
+  single_player_game_controller.h
+  single_player_game_settings_provider.h
+  text_layout.h
+  timestring.h
+  trackptr.h
+  ui_basic/box.h
+  ui_basic/button.h
+  ui_basic/checkbox.h
+  ui_basic/editbox.h
+  ui_basic/helpwindow.h
+  ui_basic/icon.h
+  ui_basic/icongrid.h
+  ui_basic/listselect.h
+  ui_basic/messagebox.h
+  ui_basic/mouse_constants.h
+  ui_basic/multilineeditbox.h
+  ui_basic/multilinetextarea.h
+  ui_basic/panel.h
+  ui_basic/progressbar.h
+  ui_basic/progresswindow.h
+  ui_basic/radiobutton.h
+  ui_basic/scrollbar.h
+  ui_basic/slider.h
+  ui_basic/spinbox.h
+  ui_basic/table.h
+  ui_basic/tabpanel.h
+  ui_basic/textarea.h
+  ui_basic/unique_window.h
+  ui_basic/window.h
+  ui_fsmenu/base.h
+  ui_fsmenu/campaign_select.h
+  ui_fsmenu/editor.h
+  ui_fsmenu/editor_mapselect.h
+  ui_fsmenu/fileview.h
+  ui_fsmenu/internet_lobby.h
+  ui_fsmenu/intro.h
+  ui_fsmenu/launchMPG.h
+  ui_fsmenu/launchSPG.h
+  ui_fsmenu/loadgame.h
+  ui_fsmenu/loadreplay.h
+  ui_fsmenu/main.h
+  ui_fsmenu/mapselect.h
+  ui_fsmenu/multiplayer.h
+  ui_fsmenu/netsetup_lan.h
+  ui_fsmenu/options.h
+  ui_fsmenu/singleplayer.h
+  upcast.h
+  utf8.h
+  vector.h
+  wlapplication.h
+  wui/actionconfirm.h
+  wui/attack_box.h
+  wui/building_statistics_menu.h
+  wui/buildingwindow.h
+  wui/chatoverlay.h
+  wui/debugconsole.h
+  wui/encyclopedia_window.h
+  wui/fieldaction.h
+  wui/game_chat_menu.h
+  wui/game_debug_ui.h
+  wui/game_main_menu.h
+  wui/game_main_menu_save_game.h
+  wui/game_message_menu.h
+  wui/game_objectives_menu.h
+  wui/game_options_menu.h
+  wui/game_options_sound_menu.h
+  wui/game_summary.h
+  wui/game_tips.h
+  wui/gamechatpanel.h
+  wui/general_statistics_menu.h
+  wui/interactive_base.h
+  wui/interactive_gamebase.h
+  wui/interactive_player.h
+  wui/interactive_spectator.h
+  wui/itemwaresdisplay.h
+  wui/login_box.h
+  wui/logmessage.h
+  wui/mapview.h
+  wui/mapviewpixelconstants.h
+  wui/mapviewpixelfunctions.h
+  wui/military_box.h
+  wui/minimap.h
+  wui/multiplayersetupgroup.h
+  wui/overlay_manager.h
+  wui/playerdescrgroup.h
+  wui/plot_area.h
+  wui/portdockwaresdisplay.h
+  wui/productionsitewindow.h
+  wui/quicknavigation.h
+  wui/soldiercapacitycontrol.h
+  wui/soldierlist.h
+  wui/stock_menu.h
+  wui/story_message_box.h
+  wui/unique_window_handler.h
+  wui/ware_statistics_menu.h
+  wui/waresdisplay.h
+  wui/waresqueuedisplay.h
+  wui/watchwindow.h
+)
+
+IF (DEFINED MSVC)
+  add_executable (widelands ${GUI_TYPE} main.cc build_info.cc widelands.rc)
+else (DEFINED MSVC)
+  if (DEFINED MINGW)
+    add_executable (widelands ${GUI_TYPE} main.cc build_info.cc ${WIN32_ICON_O})
+  else (DEFINED MINGW)
+    add_executable (widelands ${GUI_TYPE} main.cc build_info.cc)
+  endif (DEFINED MINGW)
+endif (DEFINED MSVC)
+
+add_library (widelands_all STATIC ${WL_SRCS})
+# TODO: This will ultimately be dealt with when the sources in equestions are passed into wl_library
+# but in the meantime we pass in the remainder here to check the rest of the code.
+foreach(SRC ${WL_SRCS})
+  run_codecheck(widelands_all ${SRC})
+endforeach(SRC)
+
+add_subdirectory(base)
+add_subdirectory(io)
+add_subdirectory(sound)
+add_subdirectory(scripting)
+
+#TODO (code review): The comment below???
+#temporarily disabled the 'old' tests due to incompatibility
+if (WL_UNIT_TESTS)
+  # Tests need to link with SDL library without main
+  set(TEST_EXTRA_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/build_info.cc)
+  set(TEST_EXTRA_LIBS ${SDL_LIBRARY} )
+  list(REMOVE_ITEM TEST_EXTRA_LIBS  ${SDLMAIN_LIBRARY})
+endif (WL_UNIT_TESTS)
+
+add_subdirectory(economy)
+
+#TODO: It looks like various things have cyclic dependencies
+#in all directions. Ideally this core shouldn't exist(?) or at least
+#be a limited set of header files needed to boostrap the other
+#parts. For now it is absolutely everything to make things build :(
+add_library(widelands_ball_of_mud STATIC
+  ${WL_SRCS}
+)
+
+# TODO(sirver): add a third_party directory and put stuff like minizip, eris in there.
+if (MINIZIP_FOUND)
+  target_link_libraries(widelands_ball_of_mud ${MINIZIP_LIBRARY})
+else ()
+  add_subdirectory(minizip)
+  target_link_libraries(widelands_ball_of_mud wl_minizip)
+endif ()
+
+target_link_libraries(widelands_all eris)
+target_link_libraries(widelands_all io_filesystem)
+target_link_libraries(widelands_all io_dedicated_log)
+target_link_libraries(widelands_all sound)
+target_link_libraries(widelands_all ${SDLIMAGE_LIBRARY})
+target_link_libraries(widelands_all ${SDLMIXER_LIBRARY})
+target_link_libraries(widelands_all ${SDLNET_LIBRARY})
+target_link_libraries(widelands_all ${SDLTTF_LIBRARY})
+target_link_libraries(widelands_all ${SDLGFX_LIBRARY})
+target_link_libraries(widelands_all ${PNG_LIBRARY})
+target_link_libraries(widelands_all ${ZLIB_LIBRARY})
+target_link_libraries(widelands_all ${OPENGL_gl_LIBRARY})
+target_link_libraries(widelands_all ${GLEW_LIBRARY})
+target_link_libraries(widelands_all ${Boost_LIBRARIES})
+
+if (CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
+  target_link_libraries(widelands_all ${EXECINFO_LIBRARY})
+endif (CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
+
+if (APPLE OR WIN32 OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
+  target_link_libraries(widelands_all ${INTL_LIBRARY})
+endif (APPLE OR WIN32 OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
+
+target_link_libraries(widelands widelands_all)
+target_link_libraries(widelands ${SDL_LIBRARY})
+
+if (WIN32)
+  if (DEFINED MSVC)
+    target_link_libraries(widelands_all ws2_32)
+
+    #gettext on MSVC using 3rdparty bundle needs iconv library
+    find_library(ICONV_LIBRARY iconv libiconv REQUIRED)
+    target_link_libraries(widelands_all ${ICONV_LIBRARY})
+
+  else (DEFINED MSVC)
+    target_link_libraries(widelands_all wsock32)
+  endif (DEFINED MSVC)
+endif (WIN32)
+
+install(TARGETS widelands DESTINATION ${WL_INSTALL_BINDIR} COMPONENT ExecutableFiles)

=== modified file 'src/CodeCheck.cmake'
--- src/CodeCheck.cmake	2011-09-23 08:49:44 +0000
+++ src/CodeCheck.cmake	2014-06-08 10:39:37 +0000
@@ -1,22 +1,12 @@
-if (WIN32)
-  execute_process(
-    COMMAND "${PYTHON_EXECUTABLE}" "${WL_SOURCE_CHECKER}" -c "${sourcefile}"
-    OUTPUT_VARIABLE checkresult
-#   OUTPUT_FILE ${CMAKE_CURRENT_BINARY_DIR}/codecheck-stamps/${stamp}
-    OUTPUT_STRIP_TRAILING_WHITESPACE
-  )
-else (WIN32)
-  execute_process(
-    COMMAND "${WL_SOURCE_CHECKER}" -c "${sourcefile}"
-    OUTPUT_VARIABLE checkresult
-#   OUTPUT_FILE ${CMAKE_CURRENT_BINARY_DIR}/codecheck-stamps/${stamp}
-    OUTPUT_STRIP_TRAILING_WHITESPACE
-  )
-endif (WIN32)
+execute_process(
+  COMMAND "${PYTHON_EXECUTABLE}" "${WL_SOURCE_CHECKER}" -c "${SRC}"
+  OUTPUT_VARIABLE checkresult
+  OUTPUT_STRIP_TRAILING_WHITESPACE
+)
 
 if (checkresult STREQUAL "")
   execute_process(
-    COMMAND cmake -E touch ${CMAKE_CURRENT_BINARY_DIR}/${stamp}
+    COMMAND cmake -E touch ${OUTPUT_FILE}
   )
 else (checkresult STREQUAL "")
   message ("${checkresult}")

=== modified file 'src/ai/defaultai.cc'
--- src/ai/defaultai.cc	2014-04-29 18:39:52 +0000
+++ src/ai/defaultai.cc	2014-06-08 10:39:37 +0000
@@ -28,10 +28,10 @@
 #include <typeinfo>
 
 #include "ai/ai_hints.h"
+#include "base/log.h"
 #include "economy/economy.h"
 #include "economy/flag.h"
 #include "economy/road.h"
-#include "log.h"
 #include "logic/constructionsite.h"
 #include "logic/findimmovable.h"
 #include "logic/findnode.h"

=== added directory 'src/base'
=== added file 'src/base/CMakeLists.txt'
--- src/base/CMakeLists.txt	1970-01-01 00:00:00 +0000
+++ src/base/CMakeLists.txt	2014-06-08 10:39:37 +0000
@@ -0,0 +1,12 @@
+wl_library(base_log
+  SRCS
+    log.cc
+    log.h
+)
+
+wl_library(base_exceptions
+  SRCS
+    exceptions.cc
+    warning.h
+    wexception.h
+)

=== renamed file 'src/exceptions.cc' => 'src/base/exceptions.cc'
--- src/exceptions.cc	2013-10-08 21:20:32 +0000
+++ src/base/exceptions.cc	2014-06-08 10:39:37 +0000
@@ -17,8 +17,8 @@
  *
  */
 
-#include "warning.h"
-#include "wexception.h"
+#include "base/warning.h"
+#include "base/wexception.h"
 
 #include <cstdarg>
 #include <cstdio>

=== renamed file 'src/log.cc' => 'src/base/log.cc'
--- src/log.cc	2013-07-26 05:57:03 +0000
+++ src/base/log.cc	2014-06-08 10:39:37 +0000
@@ -17,21 +17,19 @@
  *
  */
 
-#include "log.h"
+#include "base/log.h"
 
 #include <cstdarg>
 #include <cstdio>
 #include <iostream>
 
-#include "io/dedicated_log.h"
-
 // Default to stdout for logging.
 std::ostream & wout = std::cout;
 
 bool g_verbose = false;
 
 void log(const char * const fmt, ...) {
-	char buffer[2048];
+ char buffer[2048];
 	va_list va;
 
 	va_start(va, fmt);
@@ -41,5 +39,3 @@
 	wout << buffer;
 	wout.flush();
 }
-
-

=== renamed file 'src/log.h' => 'src/base/log.h'
=== renamed file 'src/port.h' => 'src/base/port.h'
=== renamed file 'src/warning.h' => 'src/base/warning.h'
--- src/warning.h	2014-02-22 18:04:02 +0000
+++ src/base/warning.h	2014-06-08 10:39:37 +0000
@@ -26,7 +26,7 @@
 
 #include <stdint.h>
 
-#include "port.h"
+#include "base/port.h"
 
 #ifndef PRINTF_FORMAT
 #ifdef __GNUC__

=== renamed file 'src/wexception.h' => 'src/base/wexception.h'
--- src/wexception.h	2014-02-22 18:04:02 +0000
+++ src/base/wexception.h	2014-06-08 10:39:37 +0000
@@ -26,7 +26,7 @@
 
 #include <stdint.h>
 
-#include "port.h"
+#include "base/port.h"
 
 #ifndef PRINTF_FORMAT
 #ifdef __GNUC__

=== modified file 'src/campvis.cc'
--- src/campvis.cc	2013-07-26 19:16:51 +0000
+++ src/campvis.cc	2014-06-08 10:39:37 +0000
@@ -24,9 +24,9 @@
 
 #include <sys/stat.h>
 
+#include "base/wexception.h"
 #include "io/filesystem/filesystem.h"
 #include "profile/profile.h"
-#include "wexception.h"
 
 /**
  * Get the path of campaign visibility save-file

=== modified file 'src/economy/cmd_call_economy_balance.cc'
--- src/economy/cmd_call_economy_balance.cc	2014-05-11 07:38:01 +0000
+++ src/economy/cmd_call_economy_balance.cc	2014-06-08 10:39:37 +0000
@@ -19,6 +19,7 @@
 
 #include "economy/cmd_call_economy_balance.h"
 
+#include "base/wexception.h"
 #include "economy/economy.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
@@ -26,7 +27,6 @@
 #include "logic/player.h"
 #include "map_io/widelands_map_map_object_loader.h"
 #include "map_io/widelands_map_map_object_saver.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/economy/economy.cc'
--- src/economy/economy.cc	2014-05-04 17:24:41 +0000
+++ src/economy/economy.cc	2014-06-08 10:39:37 +0000
@@ -21,6 +21,7 @@
 
 #include <boost/bind.hpp>
 
+#include "base/wexception.h"
 #include "economy/cmd_call_economy_balance.h"
 #include "economy/flag.h"
 #include "economy/request.h"
@@ -34,7 +35,6 @@
 #include "logic/tribe.h"
 #include "logic/warehouse.h"
 #include "upcast.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/economy/flag.cc'
--- src/economy/flag.cc	2014-04-21 10:27:29 +0000
+++ src/economy/flag.cc	2014-06-08 10:39:37 +0000
@@ -19,6 +19,7 @@
 
 #include "economy/flag.h"
 
+#include "base/wexception.h"
 #include "container_iterate.h"
 #include "economy/economy.h"
 #include "economy/portdock.h"
@@ -34,7 +35,6 @@
 #include "logic/warehouse.h"
 #include "logic/worker.h"
 #include "upcast.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/economy/idleworkersupply.cc'
--- src/economy/idleworkersupply.cc	2014-02-22 18:04:02 +0000
+++ src/economy/idleworkersupply.cc	2014-06-08 10:39:37 +0000
@@ -19,6 +19,7 @@
 
 #include "economy/idleworkersupply.h"
 
+#include "base/wexception.h"
 #include "economy/economy.h"
 #include "economy/request.h"
 #include "logic/game.h"
@@ -28,7 +29,6 @@
 #include "logic/tribe.h"
 #include "logic/warehouse.h"
 #include "logic/worker.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/economy/portdock.cc'
--- src/economy/portdock.cc	2014-05-11 07:38:01 +0000
+++ src/economy/portdock.cc	2014-06-08 10:39:37 +0000
@@ -19,12 +19,12 @@
 
 #include "economy/portdock.h"
 
+#include "base/log.h"
 #include "container_iterate.h"
 #include "economy/fleet.h"
 #include "economy/ware_instance.h"
 #include "economy/wares_queue.h"
 #include "io/filewrite.h"
-#include "log.h"
 #include "logic/expedition_bootstrap.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"

=== modified file 'src/economy/supply_list.cc'
--- src/economy/supply_list.cc	2013-07-26 20:19:36 +0000
+++ src/economy/supply_list.cc	2014-06-08 10:39:37 +0000
@@ -19,10 +19,10 @@
 
 #include "economy/supply_list.h"
 
+#include "base/wexception.h"
 #include "container_iterate.h"
 #include "economy/request.h"
 #include "economy/supply.h"
-#include "wexception.h"
 
 namespace Widelands {
 
@@ -62,4 +62,3 @@
 }
 
 }
-

=== modified file 'src/economy/test/CMakeLists.txt'
--- src/economy/test/CMakeLists.txt	2012-04-18 20:09:45 +0000
+++ src/economy/test/CMakeLists.txt	2014-06-08 10:39:37 +0000
@@ -1,9 +1,12 @@
-file(GLOB WL_TEST_ECONOMY_SRCS *.cc)
-
-add_executable(test_economy ${WL_TEST_ECONOMY_SRCS} ${TEST_EXTRA_SOURCES})
-
-target_link_libraries(test_economy widelands_all)
-target_link_libraries(test_economy ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY})
-target_link_libraries(test_economy ${TEST_EXTRA_LIBS})
-
-add_test(test_economy test_economy)
+wl_testsuite(test_economy
+  SRCS 
+    ./economy_test_main.cc
+    #TODO: (code review): are these three tests all run even though we only add one test at the end?
+    ./test_economy.cc
+    ./test_road.cc
+    ./test_routing.cc
+  DEPENDS
+    widelands_all
+    ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY}
+    ${TEST_EXTRA_LIBS}
+)

=== modified file 'src/economy/ware_instance.cc'
--- src/economy/ware_instance.cc	2014-05-11 07:38:01 +0000
+++ src/economy/ware_instance.cc	2014-06-08 10:39:37 +0000
@@ -19,6 +19,7 @@
 
 #include "economy/ware_instance.h"
 
+#include "base/wexception.h"
 #include "economy/economy.h"
 #include "economy/flag.h"
 #include "economy/fleet.h"
@@ -35,7 +36,6 @@
 #include "map_io/widelands_map_map_object_loader.h"
 #include "map_io/widelands_map_map_object_saver.h"
 #include "upcast.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/economy/wares_queue.cc'
--- src/economy/wares_queue.cc	2014-05-11 07:38:01 +0000
+++ src/economy/wares_queue.cc	2014-06-08 10:39:37 +0000
@@ -19,6 +19,7 @@
 
 #include "economy/wares_queue.h"
 
+#include "base/wexception.h"
 #include "economy/economy.h"
 #include "economy/request.h"
 #include "io/fileread.h"
@@ -29,7 +30,6 @@
 #include "logic/tribe.h"
 #include "map_io/widelands_map_map_object_loader.h"
 #include "map_io/widelands_map_map_object_saver.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/editor/editorinteractive.cc'
--- src/editor/editorinteractive.cc	2014-05-27 11:01:15 +0000
+++ src/editor/editorinteractive.cc	2014-06-08 10:39:37 +0000
@@ -25,6 +25,7 @@
 #include <SDL_keysym.h>
 #include <boost/format.hpp>
 
+#include "base/warning.h"
 #include "editor/tools/editor_delete_immovable_tool.h"
 #include "editor/ui_menus/editor_main_menu.h"
 #include "editor/ui_menus/editor_main_menu_load_map.h"
@@ -44,7 +45,6 @@
 #include "scripting/scripting.h"
 #include "ui_basic/messagebox.h"
 #include "ui_basic/progresswindow.h"
-#include "warning.h"
 #include "wlapplication.h"
 #include "wui/game_tips.h"
 #include "wui/interactive_base.h"

=== modified file 'src/editor/ui_menus/editor_main_menu_load_map.cc'
--- src/editor/ui_menus/editor_main_menu_load_map.cc	2014-04-06 16:58:10 +0000
+++ src/editor/ui_menus/editor_main_menu_load_map.cc	2014-06-08 10:39:37 +0000
@@ -23,6 +23,7 @@
 
 #include <boost/format.hpp>
 
+#include "base/wexception.h"
 #include "editor/editorinteractive.h"
 #include "editor/tools/editor_set_starting_pos_tool.h"
 #include "graphic/graphic.h"
@@ -40,7 +41,6 @@
 #include "ui_basic/multilinetextarea.h"
 #include "ui_basic/progresswindow.h"
 #include "ui_basic/textarea.h"
-#include "wexception.h"
 #include "wui/overlay_manager.h"
 
 using Widelands::WL_Map_Loader;

=== modified file 'src/editor/ui_menus/editor_main_menu_save_map.cc'
--- src/editor/ui_menus/editor_main_menu_save_map.cc	2014-03-25 08:22:48 +0000
+++ src/editor/ui_menus/editor_main_menu_save_map.cc	2014-06-08 10:39:37 +0000
@@ -25,6 +25,7 @@
 
 #include <boost/format.hpp>
 
+#include "base/wexception.h"
 #include "constants.h"
 #include "editor/editorinteractive.h"
 #include "editor/ui_menus/editor_main_menu_save_map_make_directory.h"
@@ -43,7 +44,6 @@
 #include "ui_basic/multilinetextarea.h"
 #include "ui_basic/textarea.h"
 #include "upcast.h"
-#include "wexception.h"
 
 inline Editor_Interactive & Main_Menu_Save_Map::eia() {
 	return ref_cast<Editor_Interactive, UI::Panel>(*get_parent());

=== modified file 'src/editor/ui_menus/editor_player_menu.cc'
--- src/editor/ui_menus/editor_player_menu.cc	2014-05-27 11:01:15 +0000
+++ src/editor/ui_menus/editor_player_menu.cc	2014-06-08 10:39:37 +0000
@@ -21,6 +21,7 @@
 
 #include <boost/format.hpp>
 
+#include "base/wexception.h"
 #include "editor/editorinteractive.h"
 #include "editor/tools/editor_set_starting_pos_tool.h"
 #include "graphic/graphic.h"
@@ -32,7 +33,6 @@
 #include "ui_basic/editbox.h"
 #include "ui_basic/messagebox.h"
 #include "ui_basic/textarea.h"
-#include "wexception.h"
 #include "wui/overlay_manager.h"
 
 #define UNDEFINED_TRIBE_NAME "<undefined>"

=== modified file 'src/game_io/game_data_packet.h'
--- src/game_io/game_data_packet.h	2014-03-24 21:47:08 +0000
+++ src/game_io/game_data_packet.h	2014-06-08 10:39:37 +0000
@@ -20,7 +20,7 @@
 #ifndef GAME_DATA_PACKET_H
 #define GAME_DATA_PACKET_H
 
-#include "wexception.h"
+#include "base/wexception.h"
 
 class FileSystem;
 

=== modified file 'src/game_io/game_loader.cc'
--- src/game_io/game_loader.cc	2014-02-22 18:04:02 +0000
+++ src/game_io/game_loader.cc	2014-06-08 10:39:37 +0000
@@ -22,6 +22,7 @@
 #include <boost/bind.hpp>
 #include <boost/signals2.hpp>
 
+#include "base/log.h"
 #include "game_io/game_cmd_queue_data_packet.h"
 #include "game_io/game_game_class_data_packet.h"
 #include "game_io/game_interactive_player_data_packet.h"
@@ -30,7 +31,6 @@
 #include "game_io/game_player_info_data_packet.h"
 #include "game_io/game_preload_data_packet.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 #include "logic/cmd_expire_message.h"
 #include "logic/game.h"
 #include "logic/player.h"

=== modified file 'src/game_io/game_saver.cc'
--- src/game_io/game_saver.cc	2014-02-22 18:04:02 +0000
+++ src/game_io/game_saver.cc	2014-06-08 10:39:37 +0000
@@ -19,6 +19,7 @@
 
 #include "game_io/game_saver.h"
 
+#include "base/log.h"
 #include "game_io/game_cmd_queue_data_packet.h"
 #include "game_io/game_game_class_data_packet.h"
 #include "game_io/game_interactive_player_data_packet.h"
@@ -27,7 +28,6 @@
 #include "game_io/game_player_info_data_packet.h"
 #include "game_io/game_preload_data_packet.h"
 #include "io/filesystem/filesystem.h"
-#include "log.h"
 #include "logic/game.h"
 #include "scoped_timer.h"
 

=== modified file 'src/game_io/game_saver.h'
--- src/game_io/game_saver.h	2013-09-22 18:01:36 +0000
+++ src/game_io/game_saver.h	2014-06-08 10:39:37 +0000
@@ -20,7 +20,7 @@
 #ifndef GAME_SAVER_H
 #define GAME_SAVER_H
 
-#include "wexception.h"
+#include "base/wexception.h"
 
 class FileSystem;
 

=== renamed file 'src/align.cc' => 'src/graphic/align.cc'
--- src/align.cc	2013-02-10 14:55:10 +0000
+++ src/graphic/align.cc	2014-06-08 10:39:37 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "align.h"
+#include "graphic/align.h"
 
 namespace UI {
 

=== renamed file 'src/align.h' => 'src/graphic/align.h'
=== modified file 'src/graphic/animation.cc'
--- src/graphic/animation.cc	2014-04-21 10:47:03 +0000
+++ src/graphic/animation.cc	2014-06-08 10:39:37 +0000
@@ -29,6 +29,8 @@
 #include <boost/format.hpp>
 #include <boost/lexical_cast.hpp>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "constants.h"
 #include "container_iterate.h"
 #include "graphic/diranimations.h"
@@ -41,12 +43,10 @@
 #include "helper.h"
 #include "i18n.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 #include "logic/bob.h"
 #include "logic/instances.h"  // For Map_Object_Descr.
 #include "profile/profile.h"
 #include "sound/sound_handler.h"
-#include "wexception.h"
 
 
 using namespace std;

=== modified file 'src/graphic/animation.h'
--- src/graphic/animation.h	2014-04-06 15:46:29 +0000
+++ src/graphic/animation.h	2014-06-08 10:39:37 +0000
@@ -27,8 +27,8 @@
 
 #include <boost/utility.hpp>
 
+#include "graphic/rect.h"
 #include "point.h"
-#include "rect.h"
 
 class Image;
 class Surface;

=== modified file 'src/graphic/font_handler.cc'
--- src/graphic/font_handler.cc	2014-02-22 18:04:02 +0000
+++ src/graphic/font_handler.cc	2014-06-08 10:39:37 +0000
@@ -26,13 +26,13 @@
 #include <SDL_ttf.h>
 #include <boost/algorithm/string.hpp>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "graphic/graphic.h"
 #include "graphic/in_memory_image.h"
 #include "graphic/rendertarget.h"
 #include "graphic/surface.h"
 #include "graphic/wordwrap.h"
-#include "log.h"
-#include "wexception.h"
 
 namespace UI {
 

=== modified file 'src/graphic/font_handler.h'
--- src/graphic/font_handler.h	2013-07-26 19:16:51 +0000
+++ src/graphic/font_handler.h	2014-06-08 10:39:37 +0000
@@ -23,7 +23,7 @@
 #include <memory>
 #include <string>
 
-#include "align.h"
+#include "graphic/align.h"
 #include "point.h"
 
 class RenderTarget;

=== modified file 'src/graphic/font_handler1.cc'
--- src/graphic/font_handler1.cc	2014-02-22 18:04:02 +0000
+++ src/graphic/font_handler1.cc	2014-06-08 10:39:37 +0000
@@ -22,6 +22,7 @@
 #include <boost/lexical_cast.hpp>
 #include <boost/utility.hpp>
 
+#include "base/wexception.h"
 #include "graphic/graphic.h"
 #include "graphic/image.h"
 #include "graphic/image_cache.h"
@@ -32,7 +33,6 @@
 #include "graphic/text/rt_render.h"
 #include "graphic/text/sdl_ttf_font.h"
 #include "io/filesystem/filesystem.h"
-#include "wexception.h"
 
 
 using namespace std;

=== modified file 'src/graphic/font_handler1.h'
--- src/graphic/font_handler1.h	2013-07-25 21:05:20 +0000
+++ src/graphic/font_handler1.h	2014-06-08 10:39:37 +0000
@@ -24,7 +24,7 @@
 
 #include <boost/noncopyable.hpp>
 
-#include "align.h"
+#include "graphic/align.h"
 #include "point.h"
 
 class FileSystem;

=== modified file 'src/graphic/graphic.cc'
--- src/graphic/graphic.cc	2014-05-10 16:56:38 +0000
+++ src/graphic/graphic.cc	2014-06-08 10:39:37 +0000
@@ -25,6 +25,8 @@
 #include <SDL_image.h>
 #include <config.h>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "build_info.h"
 #include "compile_diagnostics.h"
 #include "constants.h"
@@ -44,11 +46,9 @@
 #include "io/fileread.h"
 #include "io/filesystem/layered_filesystem.h"
 #include "io/streamwrite.h"
-#include "log.h"
 #include "logic/roadtype.h"
 #include "ui_basic/progresswindow.h"
 #include "upcast.h"
-#include "wexception.h"
 
 using namespace std;
 

=== modified file 'src/graphic/graphic.h'
--- src/graphic/graphic.h	2014-03-16 20:55:15 +0000
+++ src/graphic/graphic.h	2014-06-08 10:39:37 +0000
@@ -28,7 +28,7 @@
 #include <png.h>
 
 #include "graphic/image_cache.h"
-#include "rect.h"
+#include "graphic/rect.h"
 
 #define MAX_RECTS 20
 

=== modified file 'src/graphic/image_cache.cc'
--- src/graphic/image_cache.cc	2014-04-21 10:47:03 +0000
+++ src/graphic/image_cache.cc	2014-06-08 10:39:37 +0000
@@ -23,11 +23,11 @@
 #include <map>
 #include <string>
 
+#include "base/log.h"
 #include "graphic/image.h"
 #include "graphic/image_loader.h"
 #include "graphic/surface.h"
 #include "graphic/surface_cache.h"
-#include "log.h"
 
 
 using namespace std;

=== modified file 'src/graphic/image_loader_impl.cc'
--- src/graphic/image_loader_impl.cc	2014-05-10 17:07:11 +0000
+++ src/graphic/image_loader_impl.cc	2014-06-08 10:39:37 +0000
@@ -22,11 +22,11 @@
 #include <SDL.h>
 #include <SDL_image.h>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "graphic/surface.h"
 #include "io/fileread.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
-#include "wexception.h"
 
 using namespace std;
 

=== renamed file 'src/rect.h' => 'src/graphic/rect.h'
=== modified file 'src/graphic/render/gamerenderer_gl.h'
--- src/graphic/render/gamerenderer_gl.h	2014-02-22 18:04:02 +0000
+++ src/graphic/render/gamerenderer_gl.h	2014-06-08 10:39:37 +0000
@@ -23,9 +23,9 @@
 #include <memory>
 #include <vector>
 
+#include "graphic/rect.h"
 #include "graphic/render/gamerenderer.h"
 #include "logic/widelands.h"
-#include "rect.h"
 
 namespace Widelands {
 struct Coords;

=== modified file 'src/graphic/render/gl_surface_texture.cc'
--- src/graphic/render/gl_surface_texture.cc	2014-02-22 18:04:02 +0000
+++ src/graphic/render/gl_surface_texture.cc	2014-06-08 10:39:37 +0000
@@ -20,10 +20,10 @@
 
 #include <cassert>
 
+#include "base/wexception.h"
 #include "gl_surface.h"  // for glew.h
 #include "graphic/graphic.h"
 #include "graphic/render/gl_utils.h"
-#include "wexception.h"
 
 GLuint GLSurfaceTexture::gl_framebuffer_id_;
 bool use_arb_;

=== modified file 'src/graphic/render/gl_utils.cc'
--- src/graphic/render/gl_utils.cc	2013-07-26 20:19:36 +0000
+++ src/graphic/render/gl_utils.cc	2014-06-08 10:39:37 +0000
@@ -20,7 +20,7 @@
 
 #include <SDL_video.h>
 
-#include "log.h"
+#include "base/log.h"
 
 /**
  * Return the smallest power of two greater than or equal to \p x.

=== modified file 'src/graphic/render/sdl_surface.h'
--- src/graphic/render/sdl_surface.h	2014-02-22 18:04:02 +0000
+++ src/graphic/render/sdl_surface.h	2014-06-08 10:39:37 +0000
@@ -20,8 +20,8 @@
 #ifndef SDL_SURFACE_H
 #define SDL_SURFACE_H
 
+#include "graphic/rect.h"
 #include "graphic/surface.h"
-#include "rect.h"
 #include "rgbcolor.h"
 
 /**

=== modified file 'src/graphic/render/terrain_sdl.h'
--- src/graphic/render/terrain_sdl.h	2013-07-26 20:19:36 +0000
+++ src/graphic/render/terrain_sdl.h	2014-06-08 10:39:37 +0000
@@ -22,15 +22,15 @@
 
 #include <cassert>
 
+#include "base/log.h"
 #include "constants.h"
 #include "graphic/graphic.h"
+#include "graphic/render/sdl_surface.h"
+#include "graphic/render/vertex.h"
 #include "graphic/texture.h"
-#include "log.h"
 #include "logic/roadtype.h"
 #include "random.h"
-#include "graphic/render/sdl_surface.h"
 #include "upcast.h"
-#include "vertex.h"
 #include "wui/mapviewpixelconstants.h"
 
 ///Must be a power of two

=== renamed file 'src/vertex.h' => 'src/graphic/render/vertex.h'
=== modified file 'src/graphic/rendertarget.cc'
--- src/graphic/rendertarget.cc	2014-03-18 18:18:37 +0000
+++ src/graphic/rendertarget.cc	2014-06-08 10:39:37 +0000
@@ -19,11 +19,11 @@
 
 #include "graphic/rendertarget.h"
 
+#include "base/log.h"
 #include "graphic/animation.h"
 #include "graphic/graphic.h"
 #include "graphic/image_transformations.h"
 #include "graphic/surface.h"
-#include "log.h"
 #include "logic/player.h"
 #include "logic/tribe.h"
 #include "upcast.h"

=== modified file 'src/graphic/rendertarget.h'
--- src/graphic/rendertarget.h	2014-03-16 20:55:15 +0000
+++ src/graphic/rendertarget.h	2014-06-08 10:39:37 +0000
@@ -22,10 +22,10 @@
 
 #include <vector>
 
-#include "align.h"
+#include "graphic/align.h"
 #include "graphic/compositemode.h"
 #include "graphic/image.h"
-#include "rect.h"
+#include "graphic/rect.h"
 #include "rgbcolor.h"
 
 class Surface;

=== modified file 'src/graphic/richtext.cc'
--- src/graphic/richtext.cc	2014-02-22 18:04:02 +0000
+++ src/graphic/richtext.cc	2014-06-08 10:39:37 +0000
@@ -23,9 +23,9 @@
 #include "graphic/font_handler.h"
 #include "graphic/graphic.h"
 #include "graphic/image.h"
+#include "graphic/rect.h"
 #include "graphic/rendertarget.h"
-#include "rect.h"
-#include "text_parser.h"
+#include "graphic/text_parser.h"
 
 namespace UI {
 

=== modified file 'src/graphic/surface.h'
--- src/graphic/surface.h	2013-07-26 20:19:36 +0000
+++ src/graphic/surface.h	2014-06-08 10:39:37 +0000
@@ -23,7 +23,7 @@
 #include <boost/noncopyable.hpp>
 
 #include "graphic/compositemode.h"
-#include "rect.h"
+#include "graphic/rect.h"
 #include "rgbcolor.h"
 
 /**

=== modified file 'src/graphic/text/rt_render.cc'
--- src/graphic/text/rt_render.cc	2014-04-21 10:47:03 +0000
+++ src/graphic/text/rt_render.cc	2014-06-08 10:39:37 +0000
@@ -28,10 +28,10 @@
 #include <boost/lexical_cast.hpp>
 
 #include "graphic/image_cache.h"
+#include "graphic/rect.h"
 #include "graphic/surface.h"
 #include "graphic/text/rt_parse.h"
 #include "graphic/text/textstream.h"
-#include "rect.h"
 
 
 using namespace std;

=== renamed file 'src/text_parser.cc' => 'src/graphic/text_parser.cc'
--- src/text_parser.cc	2013-12-07 12:21:00 +0000
+++ src/graphic/text_parser.cc	2014-06-08 10:39:37 +0000
@@ -17,17 +17,17 @@
  *
  */
 
-#include "text_parser.h"
+#include "graphic/text_parser.h"
 
 #include <algorithm>
 #include <cstring>
 #include <string>
 #include <vector>
 
+#include "base/log.h"
 #include "constants.h"
 #include "container_iterate.h"
 #include "helper.h"
-#include "log.h"
 
 namespace UI {
 

=== renamed file 'src/text_parser.h' => 'src/graphic/text_parser.h'
--- src/text_parser.h	2013-09-23 18:47:02 +0000
+++ src/graphic/text_parser.h	2014-06-08 10:39:37 +0000
@@ -23,7 +23,7 @@
 #include <string>
 #include <vector>
 
-#include "align.h"
+#include "graphic/align.h"
 #include "rgbcolor.h"
 
 namespace UI {

=== modified file 'src/graphic/texture.cc'
--- src/graphic/texture.cc	2014-05-10 16:56:38 +0000
+++ src/graphic/texture.cc	2014-06-08 10:39:37 +0000
@@ -21,12 +21,12 @@
 
 #include <SDL_image.h>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "constants.h"
 #include "container_iterate.h"
 #include "io/fileread.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
-#include "wexception.h"
 
 extern bool g_opengl;
 

=== modified file 'src/graphic/wordwrap.cc'
--- src/graphic/wordwrap.cc	2013-07-26 20:19:36 +0000
+++ src/graphic/wordwrap.cc	2014-06-08 10:39:37 +0000
@@ -23,9 +23,9 @@
 
 #include "graphic/wordwrap.h"
 
+#include "base/log.h"
 #include "graphic/font_handler.h"
 #include "graphic/rendertarget.h"
-#include "log.h"
 
 namespace UI {
 

=== modified file 'src/graphic/wordwrap.h'
--- src/graphic/wordwrap.h	2013-07-26 20:19:36 +0000
+++ src/graphic/wordwrap.h	2014-06-08 10:39:37 +0000
@@ -21,7 +21,7 @@
 
 #include <string>
 
-#include "align.h"
+#include "graphic/align.h"
 #include "graphic/font.h"
 #include "point.h"
 

=== modified file 'src/helper.h'
--- src/helper.h	2014-03-26 07:24:34 +0000
+++ src/helper.h	2014-06-08 10:39:37 +0000
@@ -29,7 +29,7 @@
 #include <SDL_keyboard.h>
 #include <boost/utility.hpp>
 
-#include "wexception.h"
+#include "base/wexception.h"
 
 /// Matches the string that candidate points to against the string that
 /// template points to. Stops at when reaching a null character or the

=== modified file 'src/i18n.cc'
--- src/i18n.cc	2013-07-26 19:16:51 +0000
+++ src/i18n.cc	2014-06-08 10:39:37 +0000
@@ -25,7 +25,7 @@
 #include <config.h>
 #include <libintl.h>
 
-#include "log.h"
+#include "base/log.h"
 #include "profile/profile.h"
 
 #ifdef __APPLE__

=== modified file 'src/i18n.h'
--- src/i18n.h	2013-07-26 19:16:51 +0000
+++ src/i18n.h	2014-06-08 10:39:37 +0000
@@ -26,7 +26,7 @@
 
 #include <config.h>
 
-#include "port.h"
+#include "base/port.h"
 
 ///A macro to make i18n more readable and aid in tagging strings for translation
 #define _(str) i18n::translate(str)

=== modified file 'src/io/CMakeLists.txt'
--- src/io/CMakeLists.txt	2010-10-30 18:23:52 +0000
+++ src/io/CMakeLists.txt	2014-06-08 10:39:37 +0000
@@ -1,1 +1,46 @@
 add_subdirectory(filesystem)
+
+wl_library(io_stream
+  SRCS
+    streamread.cc
+    streamread.h
+    streamwrite.cc
+    streamwrite.h
+  DEPENDS
+    base_exceptions
+)
+
+# TODO(sirver): Splitting this into filesystem and fileread.
+wl_library(io_filesystem
+  USES_MINIZIP
+  SRCS
+    fileread.cc
+    fileread.h
+    filewrite.cc
+    filewrite.h
+    filesystem/disk_filesystem.cc
+    filesystem/disk_filesystem.h
+    filesystem/filesystem.cc
+    filesystem/filesystem.h
+    filesystem/filesystem_exceptions.h
+    filesystem/layered_filesystem.cc
+    filesystem/layered_filesystem.h
+    filesystem/zip_exceptions.h
+    filesystem/zip_filesystem.cc
+    filesystem/zip_filesystem.h
+  DEPENDS
+    base_log
+    build_info
+    io_stream
+)
+
+
+# TODO(sirver): This depends on logic, so it should not be here.
+wl_library(io_dedicated_log
+  SRCS
+    dedicated_log.h
+    dedicated_log.cc
+  DEPENDS
+    base_log
+    io_filesystem
+)

=== modified file 'src/io/dedicated_log.cc'
--- src/io/dedicated_log.cc	2014-02-22 18:04:02 +0000
+++ src/io/dedicated_log.cc	2014-06-08 10:39:37 +0000
@@ -21,9 +21,9 @@
 
 #include <boost/format.hpp>
 
+#include "base/log.h"
 #include "i18n.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 
 /// The dedicated server logger
 static DedicatedLog * logger;

=== modified file 'src/io/dedicated_log.h'
--- src/io/dedicated_log.h	2013-07-26 20:19:36 +0000
+++ src/io/dedicated_log.h	2014-06-08 10:39:37 +0000
@@ -20,10 +20,10 @@
 #ifndef DEDICATED_LOG_H
 #define DEDICATED_LOG_H
 
+#include "base/log.h"
 #include "chat.h"
 #include "io/filesystem/disk_filesystem.h"
 #include "io/filewrite.h"
-#include "log.h"
 
 void dedicatedlog(const char *, ...) PRINTF_FORMAT(1, 2);
 

=== modified file 'src/io/filesystem/disk_filesystem.cc'
--- src/io/filesystem/disk_filesystem.cc	2014-05-10 16:56:38 +0000
+++ src/io/filesystem/disk_filesystem.cc	2014-06-08 10:39:37 +0000
@@ -40,13 +40,13 @@
 #include <sys/types.h>
 #endif
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "compile_diagnostics.h"
 #include "io/filesystem/filesystem_exceptions.h"
 #include "io/filesystem/zip_filesystem.h"
 #include "io/streamread.h"
 #include "io/streamwrite.h"
-#include "log.h"
-#include "wexception.h"
 
 struct FileSystemPath: public std::string
 {

=== modified file 'src/io/filesystem/filesystem.cc'
--- src/io/filesystem/filesystem.cc	2014-03-26 07:24:34 +0000
+++ src/io/filesystem/filesystem.cc	2014-06-08 10:39:37 +0000
@@ -44,11 +44,11 @@
 #include <sys/stat.h>
 #include <unistd.h>
 
+#include "base/log.h"
 #include "io/filesystem/disk_filesystem.h"
 #include "io/filesystem/layered_filesystem.h"
 #include "io/filesystem/zip_exceptions.h"
 #include "io/filesystem/zip_filesystem.h"
-#include "log.h"
 
 #ifdef _WIN32
 #define stat _stat

=== modified file 'src/io/filesystem/layered_filesystem.cc'
--- src/io/filesystem/layered_filesystem.cc	2014-05-10 16:56:38 +0000
+++ src/io/filesystem/layered_filesystem.cc	2014-06-08 10:39:37 +0000
@@ -22,12 +22,12 @@
 #include <cstdio>
 #include <memory>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "build_info.h"
 #include "container_iterate.h"
 #include "io/fileread.h"
 #include "io/streamread.h"
-#include "log.h"
-#include "wexception.h"
 
 LayeredFileSystem * g_fs;
 

=== modified file 'src/io/filesystem/test/CMakeLists.txt'
--- src/io/filesystem/test/CMakeLists.txt	2012-04-18 20:09:45 +0000
+++ src/io/filesystem/test/CMakeLists.txt	2014-06-08 10:39:37 +0000
@@ -1,9 +1,9 @@
-file(GLOB WL_TEST_IO_FILESYSTEM_SRCS *.cc)
-
-add_executable(test_io_filesystem ${WL_TEST_IO_FILESYSTEM_SRCS} ${TEST_EXTRA_SOURCES})
-
-target_link_libraries(test_io_filesystem widelands_all)
-target_link_libraries(test_io_filesystem ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY})
-target_link_libraries(test_io_filesystem ${TEST_EXTRA_LIBS})
-
-add_test(test_io_filesystem test_io_filesystem)
+wl_testsuite(test_io_filesystem
+  SRCS
+    ./filesystem_test_main.cc
+    ./test_filesystem.cc
+  DEPENDS
+    io_filesystem
+    ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY}
+    ${TEST_EXTRA_LIBS}
+)

=== modified file 'src/io/filesystem/zip_filesystem.cc'
--- src/io/filesystem/zip_filesystem.cc	2014-05-10 16:56:38 +0000
+++ src/io/filesystem/zip_filesystem.cc	2014-06-08 10:39:37 +0000
@@ -27,11 +27,11 @@
 #include <cstring>
 #include <string>
 
+#include "base/wexception.h"
 #include "io/filesystem/filesystem_exceptions.h"
 #include "io/filesystem/zip_exceptions.h"
 #include "io/streamread.h"
 #include "io/streamwrite.h"
-#include "wexception.h"
 
 /**
  * Initialize the real file-system

=== modified file 'src/io/filesystem/zip_filesystem.h'
--- src/io/filesystem/zip_filesystem.h	2014-05-10 16:56:38 +0000
+++ src/io/filesystem/zip_filesystem.h	2014-06-08 10:39:37 +0000
@@ -26,10 +26,10 @@
 #include <minizip/unzip.h>
 #include <minizip/zip.h>
 
+#include "base/port.h"
 #include "io/filesystem/filesystem.h"
 #include "io/streamread.h"
 #include "io/streamwrite.h"
-#include "port.h"
 
 class ZipFilesystem : public FileSystem {
 public:

=== modified file 'src/io/streamread.cc'
--- src/io/streamread.cc	2013-09-23 18:47:02 +0000
+++ src/io/streamread.cc	2014-06-08 10:39:37 +0000
@@ -23,7 +23,7 @@
 #include <cstdarg>
 #include <cstdio>
 
-#include "wexception.h"
+#include "base/wexception.h"
 
 StreamRead::~StreamRead() {}
 

=== modified file 'src/io/streamread.h'
--- src/io/streamread.h	2013-09-23 18:47:02 +0000
+++ src/io/streamread.h	2014-06-08 10:39:37 +0000
@@ -25,8 +25,8 @@
 
 #include <boost/noncopyable.hpp>
 
+#include "base/wexception.h"
 #include "machdep.h"
-#include "wexception.h"
 
 
 /**

=== modified file 'src/io/streamwrite.cc'
--- src/io/streamwrite.cc	2014-02-22 18:04:02 +0000
+++ src/io/streamwrite.cc	2014-06-08 10:39:37 +0000
@@ -21,7 +21,7 @@
 
 #include <cstdarg>
 
-#include "wexception.h"
+#include "base/wexception.h"
 
 StreamWrite::~StreamWrite() {}
 
@@ -66,4 +66,3 @@
 		delete[] heapbuf;
 	}
 }
-

=== modified file 'src/io/streamwrite.h'
--- src/io/streamwrite.h	2013-09-22 18:01:36 +0000
+++ src/io/streamwrite.h	2014-06-08 10:39:37 +0000
@@ -27,8 +27,8 @@
 
 #include <boost/noncopyable.hpp>
 
+#include "base/port.h"
 #include "machdep.h"
-#include "port.h"
 
 /**
  * Abstract base class for stream-like data sinks.

=== renamed file 'src/backtrace.cc' => 'src/logic/backtrace.cc'
--- src/backtrace.cc	2013-07-26 19:16:51 +0000
+++ src/logic/backtrace.cc	2014-06-08 10:39:37 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "backtrace.h"
+#include "logic/backtrace.h"
 
 #ifndef _WIN32
 #ifndef __APPLE__

=== renamed file 'src/backtrace.h' => 'src/logic/backtrace.h'
=== modified file 'src/logic/battle.cc'
--- src/logic/battle.cc	2014-05-11 07:38:01 +0000
+++ src/logic/battle.cc	2014-06-08 10:39:37 +0000
@@ -19,16 +19,16 @@
 
 #include "logic/battle.h"
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "log.h"
 #include "logic/game.h"
 #include "logic/player.h"
 #include "logic/soldier.h"
 #include "map_io/widelands_map_map_object_loader.h"
 #include "map_io/widelands_map_map_object_saver.h"
 #include "upcast.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/bob.cc'
--- src/logic/bob.cc	2014-05-11 07:38:01 +0000
+++ src/logic/bob.cc	2014-06-08 10:39:37 +0000
@@ -21,13 +21,14 @@
 
 #include <cstdlib>
 
-#include "backtrace.h"
+#include "base/wexception.h"
 #include "economy/route.h"
 #include "economy/transfer.h"
 #include "graphic/graphic.h"
 #include "graphic/rendertarget.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
+#include "logic/backtrace.h"
 #include "logic/checkstep.h"
 #include "logic/critter_bob.h"
 #include "logic/findbob.h"
@@ -43,7 +44,6 @@
 #include "map_io/widelands_map_map_object_saver.h"
 #include "profile/profile.h"
 #include "upcast.h"
-#include "wexception.h"
 #include "wui/mapviewpixelconstants.h"
 
 

=== modified file 'src/logic/bob.h'
--- src/logic/bob.h	2014-05-11 07:38:01 +0000
+++ src/logic/bob.h	2014-06-08 10:39:37 +0000
@@ -20,6 +20,7 @@
 #ifndef BOB_H
 #define BOB_H
 
+#include "base/port.h"
 #include "economy/route.h"
 #include "graphic/animation.h"
 #include "graphic/diranimations.h"
@@ -27,7 +28,6 @@
 #include "logic/walkingdir.h"
 #include "logic/widelands_geometry.h"
 #include "point.h"
-#include "port.h"
 
 struct Profile;
 

=== modified file 'src/logic/buildcost.cc'
--- src/logic/buildcost.cc	2014-05-11 07:38:01 +0000
+++ src/logic/buildcost.cc	2014-06-08 10:39:37 +0000
@@ -19,11 +19,11 @@
 
 #include "logic/buildcost.h"
 
+#include "base/wexception.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
 #include "logic/tribe.h"
 #include "profile/profile.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/building.cc'
--- src/logic/building.cc	2014-04-21 10:47:03 +0000
+++ src/logic/building.cc	2014-06-08 10:39:37 +0000
@@ -22,6 +22,7 @@
 #include <cstdio>
 #include <sstream>
 
+#include "base/wexception.h"
 #include "economy/flag.h"
 #include "economy/request.h"
 #include "graphic/font.h"
@@ -43,7 +44,6 @@
 #include "sound/sound_handler.h"
 #include "text_layout.h"
 #include "upcast.h"
-#include "wexception.h"
 #include "wui/interactive_player.h"
 
 namespace Widelands {

=== modified file 'src/logic/building.h'
--- src/logic/building.h	2014-05-11 07:38:01 +0000
+++ src/logic/building.h	2014-06-08 10:39:37 +0000
@@ -33,7 +33,7 @@
 #include "logic/soldier_counts.h"
 #include "logic/wareworker.h"
 #include "logic/widelands.h"
-#include "workarea_info.h"
+#include "logic/workarea_info.h"
 
 namespace UI {class Window;}
 struct BuildingHints;

=== modified file 'src/logic/carrier.cc'
--- src/logic/carrier.cc	2014-05-11 07:38:01 +0000
+++ src/logic/carrier.cc	2014-06-08 10:39:37 +0000
@@ -19,6 +19,7 @@
 
 #include "logic/carrier.h"
 
+#include "base/wexception.h"
 #include "economy/flag.h"
 #include "economy/road.h"
 #include "economy/ware_instance.h"
@@ -27,7 +28,6 @@
 #include "logic/game.h"
 #include "logic/game_data_error.h"
 #include "upcast.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/cmd_incorporate.cc'
--- src/logic/cmd_incorporate.cc	2014-05-11 07:38:01 +0000
+++ src/logic/cmd_incorporate.cc	2014-06-08 10:39:37 +0000
@@ -19,12 +19,12 @@
 
 #include "logic/cmd_incorporate.h"
 
+#include "base/wexception.h"
 #include "i18n.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
 #include "map_io/widelands_map_map_object_loader.h"
 #include "map_io/widelands_map_map_object_saver.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/cmd_luacoroutine.cc'
--- src/logic/cmd_luacoroutine.cc	2014-05-11 07:38:01 +0000
+++ src/logic/cmd_luacoroutine.cc	2014-06-08 10:39:37 +0000
@@ -19,10 +19,10 @@
 
 #include "logic/cmd_luacoroutine.h"
 
+#include "base/log.h"
 #include "gamecontroller.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "log.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
 #include "logic/player.h"

=== modified file 'src/logic/cmd_luascript.cc'
--- src/logic/cmd_luascript.cc	2014-05-11 07:38:01 +0000
+++ src/logic/cmd_luascript.cc	2014-06-08 10:39:37 +0000
@@ -19,9 +19,9 @@
 
 #include "logic/cmd_luascript.h"
 
+#include "base/log.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "log.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
 #include "scripting/lua_table.h"

=== modified file 'src/logic/cmd_queue.cc'
--- src/logic/cmd_queue.cc	2014-05-10 16:47:03 +0000
+++ src/logic/cmd_queue.cc	2014-06-08 10:39:37 +0000
@@ -19,6 +19,7 @@
 
 #include "logic/cmd_queue.h"
 
+#include "base/wexception.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
 #include "logic/game.h"
@@ -29,7 +30,6 @@
 #include "logic/worker.h"
 #include "machdep.h"
 #include "upcast.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/constructionsite.cc'
--- src/logic/constructionsite.cc	2014-04-21 09:19:14 +0000
+++ src/logic/constructionsite.cc	2014-06-08 10:39:37 +0000
@@ -23,6 +23,7 @@
 
 #include <boost/format.hpp>
 
+#include "base/wexception.h"
 #include "economy/wares_queue.h"
 #include "graphic/animation.h"
 #include "graphic/graphic.h"
@@ -35,7 +36,6 @@
 #include "sound/sound_handler.h"
 #include "ui_basic/window.h"
 #include "upcast.h"
-#include "wexception.h"
 #include "wui/interactive_gamebase.h"
 
 namespace Widelands {

=== modified file 'src/logic/critter_bob.cc'
--- src/logic/critter_bob.cc	2014-05-11 07:38:01 +0000
+++ src/logic/critter_bob.cc	2014-06-08 10:39:37 +0000
@@ -21,6 +21,7 @@
 
 #include <cstdio>
 
+#include "base/wexception.h"
 #include "helper.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
@@ -30,7 +31,6 @@
 #include "logic/game_data_error.h"
 #include "logic/tribe.h"
 #include "profile/profile.h"
-#include "wexception.h"
 
 
 namespace Widelands {

=== renamed file 'src/description_maintainer.h' => 'src/logic/description_maintainer.h'
=== modified file 'src/logic/dismantlesite.cc'
--- src/logic/dismantlesite.cc	2014-04-21 10:47:03 +0000
+++ src/logic/dismantlesite.cc	2014-06-08 10:39:37 +0000
@@ -21,6 +21,7 @@
 
 #include <cstdio>
 
+#include "base/wexception.h"
 #include "economy/wares_queue.h"
 #include "graphic/animation.h"
 #include "graphic/graphic.h"
@@ -32,7 +33,6 @@
 #include "logic/worker.h"
 #include "sound/sound_handler.h"
 #include "upcast.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/editor_game_base.cc'
--- src/logic/editor_game_base.cc	2014-04-20 20:02:13 +0000
+++ src/logic/editor_game_base.cc	2014-06-08 10:39:37 +0000
@@ -22,6 +22,7 @@
 #include <algorithm>
 #include <set>
 
+#include "base/wexception.h"
 #include "economy/flag.h"
 #include "economy/road.h"
 #include "graphic/font_handler.h"
@@ -46,7 +47,6 @@
 #include "sound/sound_handler.h"
 #include "ui_basic/progresswindow.h"
 #include "upcast.h"
-#include "wexception.h"
 #include "wui/interactive_base.h"
 #include "wui/interactive_gamebase.h"
 

=== modified file 'src/logic/findnode.cc'
--- src/logic/findnode.cc	2013-08-01 08:33:15 +0000
+++ src/logic/findnode.cc	2014-06-08 10:39:37 +0000
@@ -19,11 +19,11 @@
 
 #include "logic/findnode.h"
 
+#include "base/wexception.h"
 #include "container_iterate.h"
 #include "logic/field.h"
 #include "logic/immovable.h"
 #include "logic/map.h"
-#include "wexception.h"
 
 
 namespace Widelands {

=== modified file 'src/logic/game.cc'
--- src/logic/game.cc	2014-05-11 07:38:01 +0000
+++ src/logic/game.cc	2014-06-08 10:39:37 +0000
@@ -28,6 +28,8 @@
 #include <windows.h>
 #endif
 
+#include "base/log.h"
+#include "base/warning.h"
 #include "computer_player.h"
 #include "economy/economy.h"
 #include "game_io/game_loader.h"
@@ -38,7 +40,6 @@
 #include "io/fileread.h"
 #include "io/filesystem/layered_filesystem.h"
 #include "io/filewrite.h"
-#include "log.h"
 #include "logic/carrier.h"
 #include "logic/cmd_calculate_statistics.h"
 #include "logic/cmd_luacoroutine.h"
@@ -61,7 +62,6 @@
 #include "timestring.h"
 #include "ui_basic/progresswindow.h"
 #include "upcast.h"
-#include "warning.h"
 #include "wlapplication.h"
 #include "wui/game_tips.h"
 #include "wui/interactive_player.h"

=== modified file 'src/logic/game_data_error.h'
--- src/logic/game_data_error.h	2014-02-22 18:04:02 +0000
+++ src/logic/game_data_error.h	2014-06-08 10:39:37 +0000
@@ -20,7 +20,7 @@
 #ifndef GAME_DATA_ERROR_H
 #define GAME_DATA_ERROR_H
 
-#include "wexception.h"
+#include "base/wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/immovable.cc'
--- src/logic/immovable.cc	2014-05-11 07:38:01 +0000
+++ src/logic/immovable.cc	2014-06-08 10:39:37 +0000
@@ -24,6 +24,7 @@
 #include <boost/format.hpp>
 #include <config.h>
 
+#include "base/wexception.h"
 #include "container_iterate.h"
 #include "graphic/font_handler1.h"
 #include "graphic/graphic.h"
@@ -46,7 +47,6 @@
 #include "sound/sound_handler.h"
 #include "text_layout.h"
 #include "upcast.h"
-#include "wexception.h"
 #include "wui/interactive_base.h"
 
 namespace Widelands {

=== modified file 'src/logic/instances.cc'
--- src/logic/instances.cc	2014-05-11 07:38:01 +0000
+++ src/logic/instances.cc	2014-06-08 10:39:37 +0000
@@ -24,16 +24,16 @@
 #include <cstring>
 #include <string>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "container_iterate.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "log.h"
 #include "logic/cmd_queue.h"
 #include "logic/game.h"
 #include "logic/queue_cmd_ids.h"
 #include "map_io/widelands_map_map_object_loader.h"
 #include "map_io/widelands_map_map_object_saver.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/instances.h'
--- src/logic/instances.h	2014-05-11 07:38:01 +0000
+++ src/logic/instances.h	2014-06-08 10:39:37 +0000
@@ -30,11 +30,11 @@
 #include <boost/unordered_map.hpp>
 #include <boost/signals2.hpp>
 
-#include "log.h"
+#include "base/log.h"
+#include "base/port.h"
 #include "logic/cmd_queue.h"
-#include "port.h"
+#include "logic/widelands.h"
 #include "ref_cast.h"
-#include "widelands.h"
 
 class FileRead;
 class RenderTarget;

=== modified file 'src/logic/map.cc'
--- src/logic/map.cc	2014-05-27 11:01:15 +0000
+++ src/logic/map.cc	2014-06-08 10:39:37 +0000
@@ -24,12 +24,13 @@
 #include <boost/algorithm/string.hpp>
 #include <boost/algorithm/string/predicate.hpp>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "build_info.h"
 #include "economy/flag.h"
 #include "economy/road.h"
 #include "editor/tools/editor_increase_resources_tool.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 #include "logic/checkstep.h"
 #include "logic/findimmovable.h"
 #include "logic/findnode.h"
@@ -44,7 +45,6 @@
 #include "map_io/widelands_map_loader.h"
 #include "s2map.h"
 #include "upcast.h"
-#include "wexception.h"
 #include "wui/overlay_manager.h"
 
 

=== modified file 'src/logic/mapastar.h'
--- src/logic/mapastar.h	2013-07-26 20:19:36 +0000
+++ src/logic/mapastar.h	2014-06-08 10:39:37 +0000
@@ -20,7 +20,7 @@
 #ifndef LOGIC_MAPASTAR_H
 #define LOGIC_MAPASTAR_H
 
-#include "log.h"
+#include "base/log.h"
 #include "logic/map.h"
 #include "logic/pathfield.h"
 

=== modified file 'src/logic/message_id.h'
--- src/logic/message_id.h	2013-07-09 05:40:36 +0000
+++ src/logic/message_id.h	2014-06-08 10:39:37 +0000
@@ -22,7 +22,7 @@
 
 #include <stdint.h>
 
-#include "port.h"
+#include "base/port.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/militarysite.cc'
--- src/logic/militarysite.cc	2014-04-21 10:47:03 +0000
+++ src/logic/militarysite.cc	2014-06-08 10:39:37 +0000
@@ -24,10 +24,10 @@
 
 #include <libintl.h>
 
+#include "base/log.h"
 #include "economy/flag.h"
 #include "economy/request.h"
 #include "i18n.h"
-#include "log.h"
 #include "logic/battle.h"
 #include "logic/editor_game_base.h"
 #include "logic/findbob.h"

=== renamed file 'src/parse_map_object_types.h' => 'src/logic/parse_map_object_types.h'
=== modified file 'src/logic/pathfield.cc'
--- src/logic/pathfield.cc	2013-07-26 20:19:36 +0000
+++ src/logic/pathfield.cc	2014-06-08 10:39:37 +0000
@@ -19,8 +19,8 @@
 
 #include "logic/pathfield.h"
 
+#include "base/wexception.h"
 #include "container_iterate.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/player.cc'
--- src/logic/player.cc	2014-05-11 07:38:01 +0000
+++ src/logic/player.cc	2014-06-08 10:39:37 +0000
@@ -22,13 +22,15 @@
 #include <boost/bind.hpp>
 #include <boost/signals2.hpp>
 
+#include "base/log.h"
+#include "base/warning.h"
+#include "base/wexception.h"
 #include "economy/economy.h"
 #include "economy/flag.h"
 #include "economy/road.h"
 #include "i18n.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "log.h"
 #include "logic/building.h"
 #include "logic/checkstep.h"
 #include "logic/cmd_expire_message.h"
@@ -48,8 +50,6 @@
 #include "scripting/scripting.h"
 #include "sound/sound_handler.h"
 #include "upcast.h"
-#include "warning.h"
-#include "wexception.h"
 #include "wui/interactive_player.h"
 
 

=== modified file 'src/logic/playercommand.cc'
--- src/logic/playercommand.cc	2014-05-11 07:38:01 +0000
+++ src/logic/playercommand.cc	2014-06-08 10:39:37 +0000
@@ -19,12 +19,13 @@
 
 #include "logic/playercommand.h"
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "economy/economy.h"
 #include "economy/wares_queue.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
 #include "io/streamwrite.h"
-#include "log.h"
 #include "logic/game.h"
 #include "logic/instances.h"
 #include "logic/militarysite.h"
@@ -36,7 +37,6 @@
 #include "map_io/widelands_map_map_object_loader.h"
 #include "map_io/widelands_map_map_object_saver.h"
 #include "upcast.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/playersmanager.cc'
--- src/logic/playersmanager.cc	2014-02-22 18:04:02 +0000
+++ src/logic/playersmanager.cc	2014-06-08 10:39:37 +0000
@@ -21,10 +21,10 @@
 
 #include <cstring>
 
+#include "base/wexception.h"
 #include "gamesettings.h"
 #include "logic/editor_game_base.h"
 #include "logic/player.h"
-#include "wexception.h"
 #include "wui/interactive_gamebase.h"
 
 namespace Widelands {

=== modified file 'src/logic/production_program.h'
--- src/logic/production_program.h	2014-05-11 07:38:01 +0000
+++ src/logic/production_program.h	2014-06-08 10:39:37 +0000
@@ -29,8 +29,8 @@
 #include <boost/noncopyable.hpp>
 #include <stdint.h>
 
+#include "base/log.h"
 #include "container_iterate.h"
-#include "log.h"
 #include "logic/bill_of_materials.h"
 #include "logic/program_result.h"
 #include "logic/tattribute.h"

=== modified file 'src/logic/productionsite.cc'
--- src/logic/productionsite.cc	2014-04-21 10:00:16 +0000
+++ src/logic/productionsite.cc	2014-06-08 10:39:37 +0000
@@ -23,6 +23,7 @@
 #include <boost/format.hpp>
 #include <libintl.h>
 
+#include "base/wexception.h"
 #include "economy/economy.h"
 #include "economy/request.h"
 #include "economy/ware_instance.h"
@@ -40,7 +41,6 @@
 #include "logic/world.h"
 #include "profile/profile.h"
 #include "upcast.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/queue_cmd_factory.cc'
--- src/logic/queue_cmd_factory.cc	2013-08-05 14:05:21 +0000
+++ src/logic/queue_cmd_factory.cc	2014-06-08 10:39:37 +0000
@@ -19,6 +19,7 @@
 
 #include "logic/queue_cmd_factory.h"
 
+#include "base/wexception.h"
 #include "economy/cmd_call_economy_balance.h"
 #include "logic/cmd_calculate_statistics.h"
 #include "logic/cmd_incorporate.h"
@@ -27,7 +28,6 @@
 #include "logic/instances.h"
 #include "logic/playercommand.h"
 #include "logic/queue_cmd_ids.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/replay.cc'
--- src/logic/replay.cc	2014-05-11 07:38:01 +0000
+++ src/logic/replay.cc	2014-06-08 10:39:37 +0000
@@ -19,19 +19,19 @@
 
 #include "logic/replay.h"
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "game_io/game_loader.h"
 #include "gamecontroller.h"
 #include "io/filesystem/layered_filesystem.h"
 #include "io/streamread.h"
 #include "io/streamwrite.h"
-#include "log.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
 #include "logic/playercommand.h"
 #include "md5.h"
 #include "random.h"
 #include "save_handler.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/soldier.cc'
--- src/logic/soldier.cc	2014-05-11 07:38:01 +0000
+++ src/logic/soldier.cc	2014-06-08 10:39:37 +0000
@@ -22,6 +22,7 @@
 #include <cstdio>
 #include <list>
 
+#include "base/wexception.h"
 #include "economy/economy.h"
 #include "economy/flag.h"
 #include "gamecontroller.h"
@@ -49,7 +50,6 @@
 #include "map_io/widelands_map_map_object_saver.h"
 #include "profile/profile.h"
 #include "upcast.h"
-#include "wexception.h"
 #include "wui/mapviewpixelconstants.h"
 
 namespace Widelands {

=== modified file 'src/logic/tribe.cc'
--- src/logic/tribe.cc	2014-05-10 17:07:11 +0000
+++ src/logic/tribe.cc	2014-06-08 10:39:37 +0000
@@ -38,13 +38,13 @@
 #include "logic/game_data_error.h"
 #include "logic/immovable.h"
 #include "logic/militarysite.h"
+#include "logic/parse_map_object_types.h"
 #include "logic/ship.h"
 #include "logic/soldier.h"
 #include "logic/trainingsite.h"
 #include "logic/warehouse.h"
 #include "logic/worker.h"
 #include "logic/world.h"
-#include "parse_map_object_types.h"
 #include "profile/profile.h"
 #include "scripting/lua_table.h"
 #include "scripting/scripting.h"

=== modified file 'src/logic/tribe.h'
--- src/logic/tribe.h	2014-05-11 07:38:01 +0000
+++ src/logic/tribe.h	2014-06-08 10:39:37 +0000
@@ -24,10 +24,10 @@
 #include <vector>
 
 #include "TribeBasicInfo.h"
-#include "description_maintainer.h"
 #include "graphic/animation.h"
 #include "logic/bob.h"
 #include "logic/building.h"
+#include "logic/description_maintainer.h"
 #include "logic/immovable.h"
 #include "logic/military_data.h"
 #include "logic/ware_descr.h"

=== modified file 'src/logic/warehouse.cc'
--- src/logic/warehouse.cc	2014-04-21 10:47:03 +0000
+++ src/logic/warehouse.cc	2014-06-08 10:39:37 +0000
@@ -21,6 +21,8 @@
 
 #include <algorithm>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "container_iterate.h"
 #include "economy/economy.h"
 #include "economy/flag.h"
@@ -29,7 +31,6 @@
 #include "economy/ware_instance.h"
 #include "economy/warehousesupply.h"
 #include "economy/wares_queue.h"
-#include "log.h"
 #include "logic/battle.h"
 #include "logic/carrier.h"
 #include "logic/editor_game_base.h"
@@ -45,7 +46,6 @@
 #include "logic/worker.h"
 #include "profile/profile.h"
 #include "upcast.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/warehouse.h'
--- src/logic/warehouse.h	2014-05-11 07:38:01 +0000
+++ src/logic/warehouse.h	2014-06-08 10:39:37 +0000
@@ -20,12 +20,12 @@
 #ifndef WAREHOUSE_H
 #define WAREHOUSE_H
 
+#include "base/wexception.h"
 #include "economy/request.h"
 #include "logic/attackable.h"
 #include "logic/building.h"
 #include "logic/soldiercontrol.h"
 #include "logic/wareworker.h"
-#include "wexception.h"
 
 class Interactive_Player;
 struct Profile;

=== modified file 'src/logic/warelist.cc'
--- src/logic/warelist.cc	2014-04-21 09:19:14 +0000
+++ src/logic/warelist.cc	2014-06-08 10:39:37 +0000
@@ -19,7 +19,7 @@
 
 #include "logic/warelist.h"
 
-#include "log.h"
+#include "base/log.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/widelands.h'
--- src/logic/widelands.h	2014-04-21 09:19:14 +0000
+++ src/logic/widelands.h	2014-06-08 10:39:37 +0000
@@ -26,7 +26,7 @@
 
 #include <stdint.h>
 
-#include "port.h"
+#include "base/port.h"
 
 namespace Widelands {
 

=== renamed file 'src/workarea_info.h' => 'src/logic/workarea_info.h'
=== modified file 'src/logic/worker.cc'
--- src/logic/worker.cc	2014-05-11 07:38:01 +0000
+++ src/logic/worker.cc	2014-06-08 10:39:37 +0000
@@ -21,6 +21,7 @@
 
 #include <boost/format.hpp>
 
+#include "base/wexception.h"
 #include "economy/economy.h"
 #include "economy/flag.h"
 #include "economy/portdock.h"
@@ -53,7 +54,6 @@
 #include "profile/profile.h"
 #include "sound/sound_handler.h"
 #include "upcast.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/worker_descr.cc'
--- src/logic/worker_descr.cc	2014-04-21 10:00:16 +0000
+++ src/logic/worker_descr.cc	2014-06-08 10:39:37 +0000
@@ -19,6 +19,7 @@
 
 #include "logic/worker_descr.h"
 
+#include "base/wexception.h"
 #include "graphic/graphic.h"
 #include "helper.h"
 #include "i18n.h"
@@ -31,7 +32,6 @@
 #include "profile/profile.h"
 #include "ref_cast.h"
 #include "sound/sound_handler.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/logic/worker_program.h'
--- src/logic/worker_program.h	2014-02-22 18:04:02 +0000
+++ src/logic/worker_program.h	2014-06-08 10:39:37 +0000
@@ -21,7 +21,7 @@
 #define WORKER_PROGRAM_H
 
 #include "logic/bob.h"
-#include "workarea_info.h"
+#include "logic/workarea_info.h"
 #include "logic/worker.h"
 
 namespace Widelands {

=== modified file 'src/logic/world.cc'
--- src/logic/world.cc	2014-05-11 07:38:01 +0000
+++ src/logic/world.cc	2014-06-08 10:39:37 +0000
@@ -22,6 +22,8 @@
 #include <iostream>
 #include <sstream>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "constants.h"
 #include "container_iterate.h"
 #include "graphic/graphic.h"
@@ -30,13 +32,11 @@
 #include "io/fileread.h"
 #include "io/filesystem/layered_filesystem.h"
 #include "io/filewrite.h"
-#include "log.h"
 #include "logic/critter_bob.h"
 #include "logic/game_data_error.h"
+#include "logic/parse_map_object_types.h"
 #include "logic/worlddata.h"
-#include "parse_map_object_types.h"
 #include "profile/profile.h"
-#include "wexception.h"
 
 using std::cerr;
 using std::endl;

=== modified file 'src/logic/world.h'
--- src/logic/world.h	2014-05-10 16:47:03 +0000
+++ src/logic/world.h	2014-06-08 10:39:37 +0000
@@ -21,7 +21,7 @@
 #define WORLD_H
 
 #include "logic/bob.h"
-#include "description_maintainer.h"
+#include "logic/description_maintainer.h"
 #include "logic/immovable.h"
 #include "logic/widelands.h"
 #include "logic/worlddata.h"

=== modified file 'src/main.cc'
--- src/main.cc	2014-02-22 18:04:02 +0000
+++ src/main.cc	2014-06-08 10:39:37 +0000
@@ -29,8 +29,8 @@
 #endif
 #include <unistd.h>
 
+#include "base/wexception.h"
 #include "build_info.h"
-#include "wexception.h"
 #include "wlapplication.h"
 
 using std::cout;

=== modified file 'src/map_generator.cc'
--- src/map_generator.cc	2014-03-09 18:32:29 +0000
+++ src/map_generator.cc	2014-06-08 10:39:37 +0000
@@ -19,8 +19,8 @@
 
 #include "map_generator.h"
 
+#include "base/log.h"
 #include "editor/tools/editor_increase_resources_tool.h"
-#include "log.h"
 #include "logic/editor_game_base.h"
 #include "logic/findnode.h"
 #include "logic/map.h"

=== modified file 'src/map_io/widelands_map_data_packet.h'
--- src/map_io/widelands_map_data_packet.h	2014-05-11 07:38:01 +0000
+++ src/map_io/widelands_map_data_packet.h	2014-06-08 10:39:37 +0000
@@ -20,7 +20,7 @@
 #ifndef WIDELANDS_MAP_DATA_PACKET_H
 #define WIDELANDS_MAP_DATA_PACKET_H
 
-#include "wexception.h"
+#include "base/wexception.h"
 
 class FileSystem;
 

=== modified file 'src/map_io/widelands_map_exploration_data_packet.cc'
--- src/map_io/widelands_map_exploration_data_packet.cc	2014-05-11 07:38:01 +0000
+++ src/map_io/widelands_map_exploration_data_packet.cc	2014-06-08 10:39:37 +0000
@@ -19,9 +19,9 @@
 
 #include "map_io/widelands_map_exploration_data_packet.h"
 
+#include "base/log.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "log.h"
 #include "logic/editor_game_base.h"
 #include "logic/game_data_error.h"
 #include "logic/map.h"

=== modified file 'src/map_io/widelands_map_loader.cc'
--- src/map_io/widelands_map_loader.cc	2014-04-01 18:15:56 +0000
+++ src/map_io/widelands_map_loader.cc	2014-06-08 10:39:37 +0000
@@ -19,7 +19,8 @@
 
 #include "map_io/widelands_map_loader.h"
 
-#include "log.h"
+#include "base/log.h"
+#include "base/warning.h"
 #include "logic/editor_game_base.h"
 #include "logic/map.h"
 #include "logic/player.h"
@@ -51,7 +52,6 @@
 #include "map_io/widelands_map_terrain_data_packet.h"
 #include "map_io/widelands_map_version_data_packet.h"
 #include "scoped_timer.h"
-#include "warning.h"
 
 namespace Widelands {
 

=== modified file 'src/map_io/widelands_map_map_object_loader.cc'
--- src/map_io/widelands_map_map_object_loader.cc	2013-07-26 20:19:36 +0000
+++ src/map_io/widelands_map_map_object_loader.cc	2014-06-08 10:39:37 +0000
@@ -19,9 +19,9 @@
 
 #include "map_io/widelands_map_map_object_loader.h"
 
+#include "base/wexception.h"
 #include "logic/editor_game_base.h"
 #include "logic/instances.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/map_io/widelands_map_map_object_saver.cc'
--- src/map_io/widelands_map_map_object_saver.cc	2014-04-01 18:15:56 +0000
+++ src/map_io/widelands_map_map_object_saver.cc	2014-06-08 10:39:37 +0000
@@ -19,6 +19,7 @@
 
 #include "map_io/widelands_map_map_object_saver.h"
 
+#include "base/wexception.h"
 #include "container_iterate.h"
 #include "economy/flag.h"
 #include "economy/fleet.h"
@@ -29,7 +30,6 @@
 #include "logic/bob.h"
 #include "logic/building.h"
 #include "logic/ware_descr.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/map_io/widelands_map_object_packet.cc'
--- src/map_io/widelands_map_object_packet.cc	2014-05-11 07:38:01 +0000
+++ src/map_io/widelands_map_object_packet.cc	2014-06-08 10:39:37 +0000
@@ -19,6 +19,7 @@
 
 #include "map_io/widelands_map_object_packet.h"
 
+#include "base/wexception.h"
 #include "economy/fleet.h"
 #include "economy/portdock.h"
 #include "io/fileread.h"
@@ -32,7 +33,6 @@
 #include "logic/worker.h"
 #include "map_io/widelands_map_map_object_loader.h"
 #include "map_io/widelands_map_map_object_saver.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/map_io/widelands_map_players_view_data_packet.cc'
--- src/map_io/widelands_map_players_view_data_packet.cc	2014-05-11 07:38:01 +0000
+++ src/map_io/widelands_map_players_view_data_packet.cc	2014-06-08 10:39:37 +0000
@@ -22,10 +22,10 @@
 #include <iostream>
 #include <typeinfo>
 
+#include "base/log.h"
 #include "economy/road.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "log.h"
 #include "logic/editor_game_base.h"
 #include "logic/field.h"
 #include "logic/game_data_error.h"

=== modified file 'src/map_io/widelands_map_port_spaces_data_packet.cc'
--- src/map_io/widelands_map_port_spaces_data_packet.cc	2014-04-21 10:47:03 +0000
+++ src/map_io/widelands_map_port_spaces_data_packet.cc	2014-06-08 10:39:37 +0000
@@ -21,8 +21,8 @@
 
 #include <boost/algorithm/string.hpp>
 
+#include "base/log.h"
 #include "container_iterate.h"
-#include "log.h"
 #include "logic/editor_game_base.h"
 #include "logic/game_data_error.h"
 #include "logic/map.h"

=== modified file 'src/map_io/widelands_map_resources_data_packet.cc'
--- src/map_io/widelands_map_resources_data_packet.cc	2014-05-11 07:38:01 +0000
+++ src/map_io/widelands_map_resources_data_packet.cc	2014-06-08 10:39:37 +0000
@@ -19,9 +19,9 @@
 
 #include "map_io/widelands_map_resources_data_packet.h"
 
+#include "base/log.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "log.h"
 #include "logic/editor_game_base.h"
 #include "logic/game_data_error.h"
 #include "logic/map.h"

=== modified file 'src/map_io/widelands_map_saver.cc'
--- src/map_io/widelands_map_saver.cc	2014-04-21 09:19:14 +0000
+++ src/map_io/widelands_map_saver.cc	2014-06-08 10:39:37 +0000
@@ -19,7 +19,8 @@
 
 #include "map_io/widelands_map_saver.h"
 
-#include "log.h"
+#include "base/log.h"
+#include "base/wexception.h"
 #include "logic/editor_game_base.h"
 #include "logic/map.h"
 #include "logic/player.h"
@@ -50,7 +51,6 @@
 #include "map_io/widelands_map_terrain_data_packet.h"
 #include "map_io/widelands_map_version_data_packet.h"
 #include "scoped_timer.h"
-#include "wexception.h"
 
 namespace Widelands {
 

=== modified file 'src/map_io/widelands_map_saver.h'
--- src/map_io/widelands_map_saver.h	2013-09-23 18:47:02 +0000
+++ src/map_io/widelands_map_saver.h	2014-06-08 10:39:37 +0000
@@ -20,7 +20,7 @@
 #ifndef WIDELANDS_MAP_SAVER_H
 #define WIDELANDS_MAP_SAVER_H
 
-#include "wexception.h"
+#include "base/wexception.h"
 
 class FileSystem;
 

=== modified file 'src/map_io/widelands_map_terrain_data_packet.cc'
--- src/map_io/widelands_map_terrain_data_packet.cc	2014-05-11 07:38:01 +0000
+++ src/map_io/widelands_map_terrain_data_packet.cc	2014-06-08 10:39:37 +0000
@@ -21,9 +21,9 @@
 
 #include <map>
 
+#include "base/log.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "log.h"
 #include "logic/editor_game_base.h"
 #include "logic/game_data_error.h"
 #include "logic/map.h"

=== modified file 'src/minizip/CMakeLists.txt'
--- src/minizip/CMakeLists.txt	2012-04-07 15:12:06 +0000
+++ src/minizip/CMakeLists.txt	2014-06-08 10:39:37 +0000
@@ -1,3 +1,7 @@
+find_package(ZLIB REQUIRED)
+
 add_library(wl_minizip STATIC EXCLUDE_FROM_ALL "unzip.cc")
+include_directories(${ZLIB_INCLUDE_DIRS})
+target_link_libraries(wl_minizip ${ZLIB_LIBRARIES})
 
 message(WARNING "You are using widelands-bundled minizip sources. Please install your distribution's minizip library or urge your distribution maintainer to include the minizip library in your package repository. Thank you.")

=== modified file 'src/network/internet_gaming.cc'
--- src/network/internet_gaming.cc	2014-05-10 17:07:11 +0000
+++ src/network/internet_gaming.cc	2014-06-08 10:39:37 +0000
@@ -23,14 +23,14 @@
 #include <boost/lexical_cast.hpp>
 #include <libintl.h>
 
+#include "base/log.h"
+#include "base/warning.h"
 #include "compile_diagnostics.h"
 #include "i18n.h"
 #include "io/dedicated_log.h"
 #include "io/fileread.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 #include "network/internet_gaming_messages.h"
-#include "warning.h"
 
 
 

=== modified file 'src/network/netclient.cc'
--- src/network/netclient.cc	2014-05-10 17:07:11 +0000
+++ src/network/netclient.cc	2014-06-08 10:39:37 +0000
@@ -23,6 +23,8 @@
 #include <boost/lexical_cast.hpp>
 #include <config.h>
 
+#include "base/warning.h"
+#include "base/wexception.h"
 #include "build_info.h"
 #include "game_io/game_loader.h"
 #include "helper.h"
@@ -44,8 +46,6 @@
 #include "ui_basic/messagebox.h"
 #include "ui_basic/progresswindow.h"
 #include "ui_fsmenu/launchMPG.h"
-#include "warning.h"
-#include "wexception.h"
 #include "wlapplication.h"
 #include "wui/game_tips.h"
 #include "wui/interactive_player.h"

=== modified file 'src/network/nethost.cc'
--- src/network/nethost.cc	2014-05-10 17:07:11 +0000
+++ src/network/nethost.cc	2014-06-08 10:39:37 +0000
@@ -29,6 +29,7 @@
 #include <unistd.h> // for usleep
 #endif
 
+#include "base/wexception.h"
 #include "build_info.h"
 #include "chat.h"
 #include "computer_player.h"
@@ -56,7 +57,6 @@
 #include "scripting/scripting.h"
 #include "ui_basic/progresswindow.h"
 #include "ui_fsmenu/launchMPG.h"
-#include "wexception.h"
 #include "wlapplication.h"
 #include "wui/game_tips.h"
 #include "wui/interactive_player.h"

=== modified file 'src/network/network.cc'
--- src/network/network.cc	2013-10-08 21:20:32 +0000
+++ src/network/network.cc	2014-06-08 10:39:37 +0000
@@ -19,7 +19,7 @@
 
 #include "network/network.h"
 
-#include "log.h"
+#include "base/log.h"
 #include "wlapplication.h"
 
 

=== modified file 'src/network/network_gaming_messages.cc'
--- src/network/network_gaming_messages.cc	2014-03-09 10:28:39 +0000
+++ src/network/network_gaming_messages.cc	2014-06-08 10:39:37 +0000
@@ -24,8 +24,8 @@
 #include <boost/format.hpp>
 #include <stdint.h>
 
+#include "base/log.h"
 #include "i18n.h"
-#include "log.h"
 
 static std::map <std::string, std::string> ngmessages;
 

=== modified file 'src/network/network_player_settings_backend.cc'
--- src/network/network_player_settings_backend.cc	2013-07-26 20:19:36 +0000
+++ src/network/network_player_settings_backend.cc	2014-06-08 10:39:37 +0000
@@ -19,9 +19,9 @@
 
 #include "network/network_player_settings_backend.h"
 
+#include "base/log.h"
 #include "gamesettings.h"
 #include "i18n.h"
-#include "log.h"
 #include "logic/player.h"
 #include "logic/tribe.h"
 #include "profile/profile.h"

=== modified file 'src/profile/profile.cc'
--- src/profile/profile.cc	2014-04-21 09:19:14 +0000
+++ src/profile/profile.cc	2014-06-08 10:39:37 +0000
@@ -26,14 +26,14 @@
 #include <limits>
 #include <string>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "build_info.h"
 #include "i18n.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "log.h"
 #include "logic/player.h"
 #include "logic/tribe.h"
-#include "wexception.h"
 
 #define TRUE_WORDS 4
 char const * trueWords[TRUE_WORDS] =

=== modified file 'src/profile/profile.h'
--- src/profile/profile.h	2014-03-16 20:55:15 +0000
+++ src/profile/profile.h	2014-06-08 10:39:37 +0000
@@ -25,13 +25,12 @@
 
 #include <boost/noncopyable.hpp>
 
-//TODO: as soon as g_fs is not needed anymore, next include can be changed
-//to ..../filesystem.h
+//TODO: as soon as g_fs is not needed anymore, include "filesystem.h" instead of layered_filesystem.h.
+#include "base/port.h"
 #include "io/filesystem/layered_filesystem.h"
 #include "logic/widelands.h"
 #include "logic/widelands_geometry.h"
 #include "point.h"
-#include "port.h"
 
 
 namespace Widelands {

=== modified file 'src/random.cc'
--- src/random.cc	2013-07-26 19:16:51 +0000
+++ src/random.cc	2014-06-08 10:39:37 +0000
@@ -21,9 +21,9 @@
 
 #include <cstdio>
 
+#include "base/wexception.h"
 #include "io/streamread.h"
 #include "io/streamwrite.h"
-#include "wexception.h"
 
 RNG::RNG () : state0(0), state1(0) {}
 

=== modified file 'src/s2map.cc'
--- src/s2map.cc	2014-05-11 07:38:01 +0000
+++ src/s2map.cc	2014-06-08 10:39:37 +0000
@@ -24,11 +24,12 @@
 
 #include <libintl.h>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "constants.h"
 #include "i18n.h"
 #include "io/fileread.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 #include "logic/editor_game_base.h"
 #include "logic/field.h"
 #include "logic/game.h"
@@ -39,7 +40,6 @@
 #include "logic/world.h"
 #include "map_io/map_loader.h"
 #include "upcast.h"
-#include "wexception.h"
 
 using std::cerr;
 using std::endl;

=== modified file 'src/save_handler.cc'
--- src/save_handler.cc	2013-10-10 04:28:25 +0000
+++ src/save_handler.cc	2014-06-08 10:39:37 +0000
@@ -19,15 +19,15 @@
 
 #include "save_handler.h"
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "chat.h"
 #include "game_io/game_saver.h"
 #include "io/filesystem/filesystem.h"
-#include "log.h"
 #include "logic/game.h"
 #include "profile/profile.h"
 #include "scoped_timer.h"
 #include "upcast.h"
-#include "wexception.h"
 #include "wlapplication.h"
 #include "wui/interactive_base.h"
 

=== modified file 'src/scoped_timer.cc'
--- src/scoped_timer.cc	2013-10-10 04:58:26 +0000
+++ src/scoped_timer.cc	2014-06-08 10:39:37 +0000
@@ -22,7 +22,7 @@
 #include <SDL.h>
 #include <boost/format.hpp>
 
-#include "log.h"
+#include "base/log.h"
 
 ScopedTimer::ScopedTimer(const std::string& message)
 		: message_(message)

=== modified file 'src/scripting/CMakeLists.txt'
--- src/scripting/CMakeLists.txt	2013-10-17 07:53:54 +0000
+++ src/scripting/CMakeLists.txt	2014-06-08 10:39:37 +0000
@@ -1,6 +1,3 @@
-file(GLOB_RECURSE ERIS_SRCS_C *.c)
-file(GLOB_RECURSE ERIS_SRCS_H *.h)
-
 SET(ERIS_SOURCES
   eris/eris.c
   eris/lapi.c
@@ -72,6 +69,4 @@
   ${ERIS_HEADERS}
 )
 
-if (WL_UNIT_TESTS)
-  add_subdirectory(test)
-endif (WL_UNIT_TESTS)
+add_subdirectory(test)

=== modified file 'src/scripting/lua_editor.cc'
--- src/scripting/lua_editor.cc	2014-02-22 18:04:02 +0000
+++ src/scripting/lua_editor.cc	2014-06-08 10:39:37 +0000
@@ -19,7 +19,7 @@
 
 #include "scripting/lua_editor.h"
 
-#include "log.h"
+#include "base/log.h"
 #include "logic/game.h"
 #include "logic/player.h"
 #include "scripting/c_utils.h"

=== modified file 'src/scripting/lua_errors.h'
--- src/scripting/lua_errors.h	2014-03-26 10:20:37 +0000
+++ src/scripting/lua_errors.h	2014-06-08 10:39:37 +0000
@@ -22,7 +22,7 @@
 
 #include <string>
 
-#include "wexception.h"
+#include "base/wexception.h"
 
 class LuaError : public _wexception {
 public:

=== modified file 'src/scripting/lua_map.cc'
--- src/scripting/lua_map.cc	2014-04-21 10:47:03 +0000
+++ src/scripting/lua_map.cc	2014-06-08 10:39:37 +0000
@@ -19,9 +19,9 @@
 
 #include "scripting/lua_map.h"
 
+#include "base/log.h"
 #include "container_iterate.h"
 #include "economy/wares_queue.h"
-#include "log.h"
 #include "logic/carrier.h"
 #include "logic/checkstep.h"
 #include "logic/findimmovable.h"

=== modified file 'src/scripting/lua_root.cc'
--- src/scripting/lua_root.cc	2014-03-24 21:47:08 +0000
+++ src/scripting/lua_root.cc	2014-06-08 10:39:37 +0000
@@ -19,8 +19,8 @@
 
 #include "scripting/lua_root.h"
 
+#include "base/log.h"
 #include "gamecontroller.h"
-#include "log.h"
 #include "logic/cmd_luacoroutine.h"
 #include "logic/findimmovable.h"
 #include "logic/game.h"

=== modified file 'src/scripting/luna_impl.cc'
--- src/scripting/luna_impl.cc	2014-04-15 05:06:05 +0000
+++ src/scripting/luna_impl.cc	2014-06-08 10:39:37 +0000
@@ -21,7 +21,7 @@
 
 #include <string>
 
-#include "log.h"
+#include "base/log.h"
 #include "scripting/c_utils.h"
 #include "scripting/luna.h"
 

=== modified file 'src/scripting/persistence.cc'
--- src/scripting/persistence.cc	2014-05-11 07:38:01 +0000
+++ src/scripting/persistence.cc	2014-06-08 10:39:37 +0000
@@ -21,9 +21,9 @@
 
 #include <memory>
 
+#include "base/log.h"
 #include "io/fileread.h"
 #include "io/filewrite.h"
-#include "log.h"
 #include "scripting/c_utils.h"
 #include "scripting/eris.h"
 #include "scripting/luna_impl.h"

=== modified file 'src/scripting/scripting.cc'
--- src/scripting/scripting.cc	2014-05-11 07:38:01 +0000
+++ src/scripting/scripting.cc	2014-06-08 10:39:37 +0000
@@ -28,8 +28,8 @@
 #endif
 #include <stdint.h>
 
+#include "base/log.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 #include "scripting/c_utils.h"
 #include "scripting/factory.h"
 #include "scripting/lua_bases.h"

=== modified file 'src/scripting/test/CMakeLists.txt'
--- src/scripting/test/CMakeLists.txt	2013-10-17 18:02:40 +0000
+++ src/scripting/test/CMakeLists.txt	2014-06-08 10:39:37 +0000
@@ -1,5 +1,20 @@
+#TODO: Why doesn't this work?
+#wl_testsuite(test_scripting 
+#  SRCS
+#    ./scripting_test_main.cc
+#    ./test_luna.cc
+#  DEPENDS
+#    widelands_all
+#    eris
+#    ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY}
+#    ${TEST_EXTRA_LIBS}
+#)
+
 if (WL_UNIT_TESTS)
-  file(GLOB WL_SCRIPTING_TEST_SRCS *.cc)
+  set(WL_SCRIPTING_TEST_SRCS 
+    ./scripting_test_main.cc
+    ./test_luna.cc
+  )
 
   add_executable(test_widelands_scripting ${WL_SCRIPTING_TEST_SRCS} ${TEST_EXTRA_SOURCES})
 

=== removed file 'src/singleton.h'
--- src/singleton.h	2012-02-15 21:25:34 +0000
+++ src/singleton.h	1970-01-01 00:00:00 +0000
@@ -1,66 +0,0 @@
-/*
- * Copyright (C) 2002, 2008 by the Widelands Development Team
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program 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 General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- *
- */
-
-#ifndef SINGLETON_H
-#define SINGLETON_H
-
-
-#include <cassert>
-
-/* The original code seems to have come from Game Programming Gems I, P. 38
- * but the current version probably doesn't really resemble it any more.
- */
-
-/// Singleton class, to be used in
-///
-/// class SomeClass : public Singleton<SomeClass> {
-///   etc.
-/// };
-///
-/// The singleton must be explicitly instantiated using
-///  new SomeClass;
-/// and explicitly deleted using
-///  delete SomeClass::get_ptsingleton();
-///
-/// \note There is a weakness here because the implementation doesn't
-/// enforce that T equals the derived class. Unfortunately, using dynamic_cast
-/// (or any other kind of RTTI) in the constructor doesn't work.
-template <typename T> class Singleton {
-	static T * ms;
-
-protected:
-	Singleton() {
-		assert(!ms);
-		ms = static_cast<T *>(this);
-	}
-
-	~Singleton() {
-		assert(ms);
-		ms = 0;
-	}
-
-public:
-	static T & get_singleton  () {assert(ms); return *ms;}
-	static T * get_ptsingleton() {assert(ms); return  ms;}
-};
-
-template <typename T> T * Singleton <T>::ms = 0;
-
-
-#endif

=== added file 'src/sound/CMakeLists.txt'
--- src/sound/CMakeLists.txt	1970-01-01 00:00:00 +0000
+++ src/sound/CMakeLists.txt	2014-06-08 10:39:37 +0000
@@ -0,0 +1,14 @@
+wl_library(sound
+  SRCS
+    ./fxset.cc
+    ./fxset.h
+    ./songset.cc
+    ./songset.h
+    #TODO: Has dependencies on graphic, logic, profile and wui... and various things in src root
+    ./sound_handler.cc
+    ./sound_handler.h
+  DEPENDS
+    io_filesystem
+    base_log
+    #TODO: (code review): Oh, and another thing; do we want to specificy dependencies for SDL/Boost/et al for each library? Does this make dependencies clearer and explicit or is it overkill?
+)

=== modified file 'src/sound/songset.cc'
--- src/sound/songset.cc	2014-05-10 17:07:11 +0000
+++ src/sound/songset.cc	2014-06-08 10:39:37 +0000
@@ -21,9 +21,9 @@
 
 #include <utility>
 
+#include "base/log.h"
 #include "io/fileread.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 #include "sound/sound_handler.h"
 
 namespace {

=== modified file 'src/sound/sound_handler.cc'
--- src/sound/sound_handler.cc	2014-04-16 14:10:43 +0000
+++ src/sound/sound_handler.cc	2014-06-08 10:39:37 +0000
@@ -28,12 +28,12 @@
 #include <windows.h>
 #endif
 
+#include "base/log.h"
 #include "graphic/graphic.h"
 #include "helper.h"
 #include "i18n.h"
 #include "io/fileread.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 #include "logic/game.h"
 #include "logic/map.h"
 #include "profile/profile.h"

=== modified file 'src/ui_basic/box.cc'
--- src/ui_basic/box.cc	2014-02-22 18:04:02 +0000
+++ src/ui_basic/box.cc	2014-06-08 10:39:37 +0000
@@ -23,9 +23,9 @@
 
 #include <boost/bind.hpp>
 
+#include "base/wexception.h"
 #include "graphic/graphic.h"
 #include "ui_basic/scrollbar.h"
-#include "wexception.h"
 
 namespace UI {
 /**

=== modified file 'src/ui_basic/button.cc'
--- src/ui_basic/button.cc	2013-07-26 20:19:36 +0000
+++ src/ui_basic/button.cc	2014-06-08 10:39:37 +0000
@@ -19,12 +19,12 @@
 
 #include "ui_basic/button.h"
 
+#include "base/log.h"
 #include "graphic/font.h"
 #include "graphic/font_handler.h"
 #include "graphic/image.h"
 #include "graphic/image_transformations.h"
 #include "graphic/rendertarget.h"
-#include "log.h"
 #include "ui_basic/mouse_constants.h"
 #include "wlapplication.h"
 

=== modified file 'src/ui_basic/editbox.h'
--- src/ui_basic/editbox.h	2014-02-22 18:04:02 +0000
+++ src/ui_basic/editbox.h	2014-06-08 10:39:37 +0000
@@ -23,7 +23,7 @@
 #include <SDL_keyboard.h>
 #include <boost/signals2.hpp>
 
-#include "align.h"
+#include "graphic/align.h"
 #include "ui_basic/button.h"
 #include "graphic/graphic.h"
 

=== modified file 'src/ui_basic/helpwindow.cc'
--- src/ui_basic/helpwindow.cc	2014-04-06 11:58:13 +0000
+++ src/ui_basic/helpwindow.cc	2014-06-08 10:39:37 +0000
@@ -21,13 +21,13 @@
 
 #include <boost/format.hpp>
 
+#include "base/log.h"
 #include "constants.h"
 #include "graphic/font.h"
 #include "graphic/font_handler.h"
 #include "graphic/graphic.h"
 #include "i18n.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 #include "scripting/lua_table.h"
 #include "scripting/scripting.h"
 #include "ui_basic/button.h"

=== modified file 'src/ui_basic/helpwindow.h'
--- src/ui_basic/helpwindow.h	2014-04-06 11:58:13 +0000
+++ src/ui_basic/helpwindow.h	2014-06-08 10:39:37 +0000
@@ -22,7 +22,7 @@
 
 #include <memory>
 
-#include "align.h"
+#include "graphic/align.h"
 #include "ui_basic/multilinetextarea.h"
 #include "ui_basic/unique_window.h"
 #include "ui_basic/window.h"

=== modified file 'src/ui_basic/icongrid.cc'
--- src/ui_basic/icongrid.cc	2014-02-22 18:04:02 +0000
+++ src/ui_basic/icongrid.cc	2014-06-08 10:39:37 +0000
@@ -19,10 +19,10 @@
 
 #include "ui_basic/icongrid.h"
 
+#include "base/log.h"
 #include "constants.h"
 #include "graphic/font_handler.h"
 #include "graphic/rendertarget.h"
-#include "log.h"
 #include "ui_basic/button.h"
 #include "ui_basic/mouse_constants.h"
 

=== modified file 'src/ui_basic/listselect.cc'
--- src/ui_basic/listselect.cc	2013-09-23 18:47:02 +0000
+++ src/ui_basic/listselect.cc	2014-06-08 10:39:37 +0000
@@ -23,13 +23,13 @@
 
 #include <boost/bind.hpp>
 
+#include "base/log.h"
 #include "constants.h"
 #include "container_iterate.h"
 #include "graphic/font.h"
 #include "graphic/font_handler.h"
 #include "graphic/graphic.h"
 #include "graphic/rendertarget.h"
-#include "log.h"
 #include "wlapplication.h"
 
 namespace UI {

=== modified file 'src/ui_basic/listselect.h'
--- src/ui_basic/listselect.h	2014-02-22 18:04:02 +0000
+++ src/ui_basic/listselect.h	2014-06-08 10:39:37 +0000
@@ -26,7 +26,7 @@
 
 #include <boost/signals2.hpp>
 
-#include "align.h"
+#include "graphic/align.h"
 #include "ui_basic/panel.h"
 #include "rgbcolor.h"
 #include "ui_basic/scrollbar.h"

=== modified file 'src/ui_basic/messagebox.h'
--- src/ui_basic/messagebox.h	2014-02-22 18:04:02 +0000
+++ src/ui_basic/messagebox.h	2014-06-08 10:39:37 +0000
@@ -22,7 +22,7 @@
 
 #include <boost/signals2.hpp>
 
-#include "align.h"
+#include "graphic/align.h"
 #include "ui_basic/window.h"
 
 namespace UI {

=== modified file 'src/ui_basic/multilinetextarea.h'
--- src/ui_basic/multilinetextarea.h	2014-02-22 18:04:02 +0000
+++ src/ui_basic/multilinetextarea.h	2014-06-08 10:39:37 +0000
@@ -20,7 +20,7 @@
 #ifndef UI_MULTILINE_TEXTAREA_H
 #define UI_MULTILINE_TEXTAREA_H
 
-#include "align.h"
+#include "graphic/align.h"
 #include "ui_basic/panel.h"
 #include "rgbcolor.h"
 #include "ui_basic/scrollbar.h"

=== modified file 'src/ui_basic/panel.cc'
--- src/ui_basic/panel.cc	2014-04-16 11:19:14 +0000
+++ src/ui_basic/panel.cc	2014-06-08 10:39:37 +0000
@@ -19,6 +19,7 @@
 
 #include "ui_basic/panel.h"
 
+#include "base/log.h"
 #include "constants.h"
 #include "graphic/font_handler.h"
 #include "graphic/font_handler1.h"
@@ -27,7 +28,6 @@
 #include "graphic/surface.h"
 #include "graphic/surface_cache.h"
 #include "helper.h"
-#include "log.h"
 #include "profile/profile.h"
 #include "sound/sound_handler.h"
 #include "text_layout.h"

=== modified file 'src/ui_basic/progresswindow.h'
--- src/ui_basic/progresswindow.h	2013-07-26 19:16:51 +0000
+++ src/ui_basic/progresswindow.h	2014-06-08 10:39:37 +0000
@@ -24,8 +24,8 @@
 #include <string>
 #include <vector>
 
+#include "graphic/rect.h"
 #include "point.h"
-#include "rect.h"
 
 class Image;
 class RenderTarget;

=== modified file 'src/ui_basic/scrollbar.h'
--- src/ui_basic/scrollbar.h	2014-02-22 18:04:02 +0000
+++ src/ui_basic/scrollbar.h	2014-06-08 10:39:37 +0000
@@ -22,8 +22,8 @@
 
 #include <boost/signals2.hpp>
 
+#include "graphic/rect.h"
 #include "ui_basic/panel.h"
-#include "rect.h"
 
 namespace UI {
 /**

=== modified file 'src/ui_basic/spinbox.cc'
--- src/ui_basic/spinbox.cc	2014-02-22 18:04:02 +0000
+++ src/ui_basic/spinbox.cc	2014-06-08 10:39:37 +0000
@@ -21,11 +21,11 @@
 
 #include <vector>
 
+#include "base/wexception.h"
 #include "container_iterate.h"
 #include "i18n.h"
 #include "ui_basic/button.h"
 #include "ui_basic/textarea.h"
-#include "wexception.h"
 
 namespace UI {
 

=== modified file 'src/ui_basic/spinbox.h'
--- src/ui_basic/spinbox.h	2013-07-26 20:19:36 +0000
+++ src/ui_basic/spinbox.h	2014-06-08 10:39:37 +0000
@@ -22,7 +22,7 @@
 
 #include <cstring>
 
-#include "align.h"
+#include "graphic/align.h"
 #include "ui_basic/button.h"
 #include "graphic/graphic.h"
 

=== modified file 'src/ui_basic/table.h'
--- src/ui_basic/table.h	2014-04-06 17:14:28 +0000
+++ src/ui_basic/table.h	2014-06-08 10:39:37 +0000
@@ -27,7 +27,7 @@
 #include <boost/function.hpp>
 #include <boost/signals2.hpp>
 
-#include "align.h"
+#include "graphic/align.h"
 #include "ui_basic/panel.h"
 #include "rgbcolor.h"
 

=== modified file 'src/ui_basic/textarea.h'
--- src/ui_basic/textarea.h	2014-02-22 18:04:02 +0000
+++ src/ui_basic/textarea.h	2014-06-08 10:39:37 +0000
@@ -20,8 +20,8 @@
 #ifndef UI_TEXTAREA_H
 #define UI_TEXTAREA_H
 
-#include "align.h"
 #include "constants.h"
+#include "graphic/align.h"
 #include "graphic/font.h"
 #include "ui_basic/panel.h"
 

=== modified file 'src/ui_basic/window.cc'
--- src/ui_basic/window.cc	2014-02-22 18:04:02 +0000
+++ src/ui_basic/window.cc	2014-06-08 10:39:37 +0000
@@ -21,12 +21,12 @@
 
 #include <SDL_keysym.h>
 
+#include "base/log.h"
 #include "constants.h"
 #include "graphic/font.h"
 #include "graphic/font_handler1.h"
 #include "graphic/graphic.h"
 #include "graphic/rendertarget.h"
-#include "log.h"
 #include "text_layout.h"
 #include "wlapplication.h"
 

=== modified file 'src/ui_fsmenu/base.cc'
--- src/ui_fsmenu/base.cc	2014-02-22 18:04:02 +0000
+++ src/ui_fsmenu/base.cc	2014-06-08 10:39:37 +0000
@@ -21,15 +21,15 @@
 
 #include <cstdio>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "constants.h"
 #include "graphic/font.h"
 #include "graphic/graphic.h"
 #include "graphic/image_transformations.h"
 #include "graphic/rendertarget.h"
 #include "io/filesystem/filesystem.h"
-#include "log.h"
 #include "profile/profile.h"
-#include "wexception.h"
 #include "wlapplication.h"
 
 /*

=== modified file 'src/ui_fsmenu/campaign_select.cc'
--- src/ui_fsmenu/campaign_select.cc	2014-03-29 16:04:47 +0000
+++ src/ui_fsmenu/campaign_select.cc	2014-06-08 10:39:37 +0000
@@ -19,13 +19,13 @@
 
 #include "ui_fsmenu/campaign_select.h"
 
+#include "base/wexception.h"
 #include "campvis.h"
 #include "constants.h"
 #include "graphic/graphic.h"
 #include "i18n.h"
 #include "map_io/widelands_map_loader.h"
 #include "profile/profile.h"
-#include "wexception.h"
 
 
 /*

=== modified file 'src/ui_fsmenu/editor_mapselect.cc'
--- src/ui_fsmenu/editor_mapselect.cc	2014-03-29 16:04:47 +0000
+++ src/ui_fsmenu/editor_mapselect.cc	2014-06-08 10:39:37 +0000
@@ -23,16 +23,16 @@
 
 #include <boost/format.hpp>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "graphic/graphic.h"
 #include "i18n.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 #include "logic/editor_game_base.h"
 #include "logic/map.h"
 #include "map_io/widelands_map_loader.h"
 #include "profile/profile.h"
 #include "s2map.h"
-#include "wexception.h"
 
 using Widelands::WL_Map_Loader;
 

=== modified file 'src/ui_fsmenu/internet_lobby.cc'
--- src/ui_fsmenu/internet_lobby.cc	2014-04-06 16:01:43 +0000
+++ src/ui_fsmenu/internet_lobby.cc	2014-06-08 10:39:37 +0000
@@ -22,11 +22,11 @@
 #include <boost/bind.hpp>
 #include <boost/format.hpp>
 
+#include "base/log.h"
 #include "compile_diagnostics.h"
 #include "constants.h"
 #include "graphic/graphic.h"
 #include "i18n.h"
-#include "log.h"
 #include "network/internet_gaming.h"
 #include "network/netclient.h"
 #include "network/nethost.h"

=== modified file 'src/ui_fsmenu/launchMPG.cc'
--- src/ui_fsmenu/launchMPG.cc	2014-04-18 08:51:53 +0000
+++ src/ui_fsmenu/launchMPG.cc	2014-06-08 10:39:37 +0000
@@ -22,6 +22,7 @@
 #include <boost/format.hpp>
 #include <libintl.h>
 
+#include "base/warning.h"
 #include "gamecontroller.h"
 #include "gamesettings.h"
 #include "graphic/graphic.h"
@@ -38,7 +39,6 @@
 #include "ui_basic/messagebox.h"
 #include "ui_fsmenu/loadgame.h"
 #include "ui_fsmenu/mapselect.h"
-#include "warning.h"
 #include "wui/gamechatpanel.h"
 #include "wui/multiplayersetupgroup.h"
 

=== modified file 'src/ui_fsmenu/launchSPG.cc'
--- src/ui_fsmenu/launchSPG.cc	2014-03-29 16:04:47 +0000
+++ src/ui_fsmenu/launchSPG.cc	2014-06-08 10:39:37 +0000
@@ -21,6 +21,7 @@
 
 #include <boost/algorithm/string/predicate.hpp>
 
+#include "base/warning.h"
 #include "gamecontroller.h"
 #include "gamesettings.h"
 #include "graphic/graphic.h"
@@ -37,7 +38,6 @@
 #include "scripting/scripting.h"
 #include "ui_fsmenu/loadgame.h"
 #include "ui_fsmenu/mapselect.h"
-#include "warning.h"
 #include "wui/playerdescrgroup.h"
 
 Fullscreen_Menu_LaunchSPG::Fullscreen_Menu_LaunchSPG

=== modified file 'src/ui_fsmenu/loadgame.cc'
--- src/ui_fsmenu/loadgame.cc	2014-04-06 10:13:00 +0000
+++ src/ui_fsmenu/loadgame.cc	2014-06-08 10:39:37 +0000
@@ -23,6 +23,7 @@
 
 #include <boost/format.hpp>
 
+#include "base/log.h"
 #include "game_io/game_loader.h"
 #include "game_io/game_preload_data_packet.h"
 #include "gamecontroller.h"
@@ -34,7 +35,6 @@
 #include "graphic/surface.h"
 #include "i18n.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 #include "logic/game.h"
 #include "timestring.h"
 #include "ui_basic/icon.h"

=== modified file 'src/ui_fsmenu/loadreplay.cc'
--- src/ui_fsmenu/loadreplay.cc	2014-03-26 07:24:34 +0000
+++ src/ui_fsmenu/loadreplay.cc	2014-06-08 10:39:37 +0000
@@ -22,13 +22,13 @@
 #include <boost/algorithm/string/predicate.hpp>
 #include <boost/format.hpp>
 
+#include "base/log.h"
 #include "game_io/game_loader.h"
 #include "game_io/game_preload_data_packet.h"
 #include "graphic/graphic.h"
 #include "helper.h"
 #include "i18n.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 #include "logic/game.h"
 #include "logic/replay.h"
 #include "timestring.h"

=== modified file 'src/ui_fsmenu/mapselect.cc'
--- src/ui_fsmenu/mapselect.cc	2014-04-18 08:51:53 +0000
+++ src/ui_fsmenu/mapselect.cc	2014-06-08 10:39:37 +0000
@@ -22,19 +22,19 @@
 
 #include <boost/format.hpp>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "gamecontroller.h"
 #include "gamesettings.h"
 #include "graphic/graphic.h"
 #include "i18n.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 #include "logic/editor_game_base.h"
 #include "map_io/widelands_map_loader.h"
 #include "profile/profile.h"
 #include "s2map.h"
 #include "ui_basic/box.h"
 #include "ui_basic/checkbox.h"
-#include "wexception.h"
 
 
 using Widelands::WL_Map_Loader;

=== modified file 'src/wlapplication.cc'
--- src/wlapplication.cc	2014-04-16 11:19:14 +0000
+++ src/wlapplication.cc	2014-06-08 10:39:37 +0000
@@ -39,6 +39,9 @@
 #include <sys/stat.h>
 #include <sys/types.h>
 
+#include "base/log.h"
+#include "base/warning.h"
+#include "base/wexception.h"
 #include "build_info.h"
 #include "computer_player.h"
 #include "editor/editorinteractive.h"
@@ -50,7 +53,6 @@
 #include "io/dedicated_log.h"
 #include "io/filesystem/disk_filesystem.h"
 #include "io/filesystem/layered_filesystem.h"
-#include "log.h"
 #include "logic/game.h"
 #include "logic/game_data_error.h"
 #include "logic/map.h"
@@ -83,8 +85,6 @@
 #include "ui_fsmenu/netsetup_lan.h"
 #include "ui_fsmenu/options.h"
 #include "ui_fsmenu/singleplayer.h"
-#include "warning.h"
-#include "wexception.h"
 #include "wui/game_tips.h"
 #include "wui/interactive_player.h"
 #include "wui/interactive_spectator.h"

=== modified file 'src/wui/buildingwindow.cc'
--- src/wui/buildingwindow.cc	2014-05-27 11:01:15 +0000
+++ src/wui/buildingwindow.cc	2014-06-08 10:39:37 +0000
@@ -35,11 +35,11 @@
 #include "logic/warehouse.h"
 #include "ui_basic/helpwindow.h"
 #include "ui_basic/tabpanel.h"
-#include "unique_window_handler.h"
 #include "upcast.h"
 #include "wui/actionconfirm.h"
 #include "wui/game_debug_ui.h"
 #include "wui/interactive_player.h"
+#include "wui/unique_window_handler.h"
 #include "wui/waresqueuedisplay.h"
 
 static const char * pic_bulldoze           = "pics/menu_bld_bulldoze.png";

=== modified file 'src/wui/chatoverlay.cc'
--- src/wui/chatoverlay.cc	2014-02-22 18:04:02 +0000
+++ src/wui/chatoverlay.cc	2014-06-08 10:39:37 +0000
@@ -22,8 +22,8 @@
 #include "chat.h"
 #include "graphic/font_handler1.h"
 #include "graphic/rendertarget.h"
-#include "logmessage.h"
 #include "profile/profile.h"
+#include "wui/logmessage.h"
 
 /**
  * Time, in seconds, that chat messages are shown in the overlay.

=== renamed file 'src/debugconsole.cc' => 'src/wui/debugconsole.cc'
--- src/debugconsole.cc	2014-02-22 18:04:02 +0000
+++ src/wui/debugconsole.cc	2014-06-08 10:39:37 +0000
@@ -17,14 +17,14 @@
  *
  */
 
-#include "debugconsole.h"
+#include "wui/debugconsole.h"
 
 #include <map>
 
 #include <boost/bind.hpp>
 
+#include "base/log.h"
 #include "chat.h"
-#include "log.h"
 
 namespace DebugConsole {
 

=== renamed file 'src/debugconsole.h' => 'src/wui/debugconsole.h'
=== modified file 'src/wui/interactive_base.cc'
--- src/wui/interactive_base.cc	2014-05-27 11:01:15 +0000
+++ src/wui/interactive_base.cc	2014-06-08 10:39:37 +0000
@@ -39,7 +39,6 @@
 #include "profile/profile.h"
 #include "scripting/scripting.h"
 #include "text_layout.h"
-#include "unique_window_handler.h"
 #include "upcast.h"
 #include "wlapplication.h"
 #include "wui/game_chat_menu.h"
@@ -50,6 +49,7 @@
 #include "wui/minimap.h"
 #include "wui/overlay_manager.h"
 #include "wui/quicknavigation.h"
+#include "wui/unique_window_handler.h"
 
 using boost::format;
 using Widelands::Area;

=== modified file 'src/wui/interactive_base.h'
--- src/wui/interactive_base.h	2014-05-27 11:01:15 +0000
+++ src/wui/interactive_base.h	2014-06-08 10:39:37 +0000
@@ -22,12 +22,12 @@
 
 #include <SDL_keysym.h>
 
-#include "debugconsole.h"
 #include "logic/editor_game_base.h"
 #include "logic/map.h"
 #include "logic/notification.h"
-#include "logmessage.h"
 #include "wui/chatoverlay.h"
+#include "wui/debugconsole.h"
+#include "wui/logmessage.h"
 #include "wui/mapview.h"
 #include "wui/overlay_manager.h"
 #include "ui_basic/box.h"

=== modified file 'src/wui/interactive_player.cc'
--- src/wui/interactive_player.cc	2014-05-27 11:01:15 +0000
+++ src/wui/interactive_player.cc	2014-06-08 10:39:37 +0000
@@ -27,7 +27,6 @@
 #include <boost/type_traits.hpp>
 #include <libintl.h>
 
-#include "debugconsole.h"
 #include "economy/flag.h"
 #include "game_io/game_loader.h"
 #include "graphic/font_handler.h"
@@ -46,6 +45,7 @@
 #include "ui_basic/unique_window.h"
 #include "upcast.h"
 #include "wui/building_statistics_menu.h"
+#include "wui/debugconsole.h"
 #include "wui/encyclopedia_window.h"
 #include "wui/fieldaction.h"
 #include "wui/game_chat_menu.h"

=== renamed file 'src/logmessage.h' => 'src/wui/logmessage.h'
=== modified file 'src/wui/multiplayersetupgroup.cc'
--- src/wui/multiplayersetupgroup.cc	2014-03-03 20:50:30 +0000
+++ src/wui/multiplayersetupgroup.cc	2014-06-08 10:39:37 +0000
@@ -21,10 +21,11 @@
 
 #include <boost/format.hpp>
 
+#include "base/log.h"
+#include "base/wexception.h"
 #include "gamesettings.h"
 #include "graphic/graphic.h"
 #include "i18n.h"
-#include "log.h"
 #include "logic/game.h"
 #include "logic/player.h"
 #include "logic/tribe.h"
@@ -34,7 +35,6 @@
 #include "ui_basic/icon.h"
 #include "ui_basic/scrollbar.h"
 #include "ui_basic/textarea.h"
-#include "wexception.h"
 
 struct MultiPlayerClientGroup : public UI::Box {
 	MultiPlayerClientGroup

=== modified file 'src/wui/playerdescrgroup.cc'
--- src/wui/playerdescrgroup.cc	2014-03-07 09:22:06 +0000
+++ src/wui/playerdescrgroup.cc	2014-06-08 10:39:37 +0000
@@ -21,6 +21,7 @@
 
 #include <boost/format.hpp>
 
+#include "base/wexception.h"
 #include "constants.h"
 #include "gamesettings.h"
 #include "graphic/graphic.h"
@@ -31,7 +32,6 @@
 #include "ui_basic/button.h"
 #include "ui_basic/checkbox.h"
 #include "ui_basic/textarea.h"
-#include "wexception.h"
 
 
 struct PlayerDescriptionGroupImpl {

=== renamed file 'src/unique_window_handler.cc' => 'src/wui/unique_window_handler.cc'
--- src/unique_window_handler.cc	2014-04-06 11:58:13 +0000
+++ src/wui/unique_window_handler.cc	2014-06-08 10:39:37 +0000
@@ -17,7 +17,7 @@
  *
  */
 
-#include "unique_window_handler.h"
+#include "wui/unique_window_handler.h"
 
 UI::UniqueWindow::Registry& UniqueWindowHandler::get_registry(const std::string& name) {
 	return registries_[name];

=== renamed file 'src/unique_window_handler.h' => 'src/wui/unique_window_handler.h'
=== modified file 'src/wui/waresdisplay.cc'
--- src/wui/waresdisplay.cc	2014-04-21 10:47:03 +0000
+++ src/wui/waresdisplay.cc	2014-06-08 10:39:37 +0000
@@ -23,6 +23,7 @@
 
 #include <boost/lexical_cast.hpp>
 
+#include "base/wexception.h"
 #include "graphic/font.h"
 #include "graphic/font_handler.h"
 #include "graphic/font_handler1.h"
@@ -34,7 +35,6 @@
 #include "logic/tribe.h"
 #include "logic/worker.h"
 #include "text_layout.h"
-#include "wexception.h"
 
 const int WARE_MENU_INFO_SIZE = 12;
 


Follow ups