diff --git a/disabled-packages/widelands/CMakeLists.txt.patch b/disabled-packages/widelands/CMakeLists.txt.patch new file mode 100644 index 000000000..b4d7f251f --- /dev/null +++ b/disabled-packages/widelands/CMakeLists.txt.patch @@ -0,0 +1,37 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -232,7 +232,7 @@ + endif() + + if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") +- wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Weverything") ++ wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wall") + + # Disabled warnings that are overly verbose right now or just do not make sense. + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-c++98-compat") +@@ -255,8 +255,8 @@ + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-unreachable-code") + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wno-documentation") + +- wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Werror=deprecated") +- wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Werror=non-pod-varargs") ++ wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wdeprecated") ++ wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wnon-pod-varargs") + + wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Qunused-arguments") + +@@ -311,10 +311,10 @@ + + if(NOT MSVC) + # Turn some warnings into errors. +- wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Werror=format-security") +- wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Werror=return-type") +- wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Werror=shadow") +- wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Werror=uninitialized") ++ wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wformat-security") ++ wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wreturn-type") ++ wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wshadow") ++ wl_add_flag(WL_COMPILE_DIAGNOSTICS "-Wuninitialized") + + wl_add_flag(WL_GENERIC_CXX_FLAGS "-std=c++11") + endif() diff --git a/disabled-packages/widelands/build.sh b/disabled-packages/widelands/build.sh new file mode 100644 index 000000000..2e8af53d8 --- /dev/null +++ b/disabled-packages/widelands/build.sh @@ -0,0 +1,21 @@ +# x11-packages +TERMUX_PKG_HOMEPAGE=https://www.widelands.org/ +TERMUX_PKG_DESCRIPTION="A free, open source real-time strategy game with singleplayer campaigns and a multiplayer mode" +TERMUX_PKG_LICENSE="GPL-2.0" +TERMUX_PKG_MAINTAINER="@termux" +TERMUX_PKG_VERSION=1.0 +TERMUX_PKG_SRCURL=https://github.com/widelands/widelands/archive/refs/tags/v${TERMUX_PKG_VERSION}.tar.gz +TERMUX_PKG_SHA256=1dab0c4062873cc72c5e0558f9e9620b0ef185f1a78923a77c4ce5b9ed76031a +TERMUX_PKG_DEPENDS="glew, libandroid-execinfo, libandroid-glob, libcurl, libicu, libpng, mesa, sdl2, sdl2-image, sdl2-mixer, sdl2-ttf, widelands-data" +TERMUX_PKG_BUILD_DEPENDS="boost, boost-headers" +TERMUX_PKG_EXTRA_CONFIGURE_ARGS=" +-DCMAKE_INSTALL_PREFIX=$TERMUX_PREFIX/bin +-DWL_INSTALL_BASEDIR=$TERMUX_PREFIX/share/doc/$TERMUX_PKG_NAME +-DWL_INSTALL_DATADIR=$TERMUX_PREFIX/share/$TERMUX_PKG_NAME +-DGTK_UPDATE_ICON_CACHE=OFF +-DOPTION_BUILD_TESTS=OFF +" + +termux_step_pre_configure() { + LDFLAGS+=" -landroid-glob -landroid-execinfo" +} diff --git a/disabled-packages/widelands/src-base-i18n.cc.patch b/disabled-packages/widelands/src-base-i18n.cc.patch new file mode 100644 index 000000000..f4e706921 --- /dev/null +++ b/disabled-packages/widelands/src-base-i18n.cc.patch @@ -0,0 +1,31 @@ +--- a/src/base/i18n.cc ++++ b/src/base/i18n.cc +@@ -39,14 +39,16 @@ + #define SETLOCALE libintl_setlocale + #endif // LIBINTL_VERSION + #else // __APPLE__ +-#if defined _WIN32 ++#if defined _WIN32 || defined __ANDROID__ + #define SETLOCALE setlocale + #else + #define SETLOCALE std::setlocale + #endif + #endif + ++#ifndef __ANDROID__ + extern int _nl_msg_cat_cntr; ++#endif + + namespace i18n { + +@@ -335,8 +337,10 @@ + } + + /* Finally make changes known. */ ++#ifndef __ANDROID__ + ++_nl_msg_cat_cntr; + #endif ++#endif + + SETLOCALE(LC_ALL, ""); // call to libintl + diff --git a/disabled-packages/widelands/src-network-bufferedconnection.h.patch b/disabled-packages/widelands/src-network-bufferedconnection.h.patch new file mode 100644 index 000000000..f6572cda5 --- /dev/null +++ b/disabled-packages/widelands/src-network-bufferedconnection.h.patch @@ -0,0 +1,10 @@ +--- a/src/network/bufferedconnection.h ++++ b/src/network/bufferedconnection.h +@@ -20,6 +20,7 @@ + #ifndef WL_NETWORK_BUFFEREDCONNECTION_H + #define WL_NETWORK_BUFFEREDCONNECTION_H + ++#include + #include + #include + #include diff --git a/disabled-packages/widelands/src-network-net_addons.cc.patch b/disabled-packages/widelands/src-network-net_addons.cc.patch new file mode 100644 index 000000000..ab976fdd5 --- /dev/null +++ b/disabled-packages/widelands/src-network-net_addons.cc.patch @@ -0,0 +1,11 @@ +--- a/src/network/net_addons.cc ++++ b/src/network/net_addons.cc +@@ -180,7 +180,7 @@ + const std::string msg = next_word(output); + const std::string v = next_word(output); + const uint32_t t = next_number(output); +- info.user_comments.push_back(AddOnComment{name, msg, string_to_version(v), t}); ++ info.user_comments.push_back(AddOnComment{name, msg, string_to_version(v), static_cast(t)}); + } + + info.version = string_to_version(next_word(output)); diff --git a/disabled-packages/widelands/src-third_party-gettext-gettext.h.patch b/disabled-packages/widelands/src-third_party-gettext-gettext.h.patch new file mode 100644 index 000000000..da4d9a6ca --- /dev/null +++ b/disabled-packages/widelands/src-third_party-gettext-gettext.h.patch @@ -0,0 +1,12 @@ +--- a/src/third_party/gettext/gettext.h ++++ b/src/third_party/gettext/gettext.h +@@ -49,6 +49,9 @@ + #include + CLANG_DIAG_ON("-Wreserved-id-macro") + #else ++#ifdef __ANDROID__ ++#include ++#endif + #include + #endif + diff --git a/disabled-packages/widelands/widelands-data.subpackage.sh b/disabled-packages/widelands/widelands-data.subpackage.sh new file mode 100644 index 000000000..dc333f935 --- /dev/null +++ b/disabled-packages/widelands/widelands-data.subpackage.sh @@ -0,0 +1,3 @@ +TERMUX_SUBPKG_DESCRIPTION="Platform-independent data for widelands" +TERMUX_SUBPKG_PLATFORM_INDEPENDENT=true +TERMUX_SUBPKG_INCLUDE="share/$TERMUX_PKG_NAME/"