kumquat-buildroot/package/supertux/Config.in

43 lines
1.5 KiB
Plaintext
Raw Normal View History

config BR2_PACKAGE_SUPERTUX
bool "supertux"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_PACKAGE_HAS_LIBGL # libglew
depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS
depends on BR2_PACKAGE_XORG7 # libglew, SDL2 OpenGL (GLX)
package/supertux: needs gcc >= 6 The initial build issue [1] has been fixed upstream but the supertux fail to link with boost libraries when using gcc 5 (which use C++11 by default): libsupertux2_lib.a(main.cpp.o): In function `boost::system::error_category::std_category::equivalent(std::error_code const&, int) const': main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei[_ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei]+0x32): undefined reference to `boost::system::detail::generic_category_instance' main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei[_ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei]+0x47): undefined reference to `boost::system::detail::generic_category_instance' main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei[_ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei]+0x99): undefined reference to `boost::system::detail::generic_category_instance' libsupertux2_lib.a(main.cpp.o): In function `boost::system::error_category::std_category::equivalent(int, std::error_condition const&) const': main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition[_ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition]+0x33): undefined reference to `boost::system::detail::generic_category_instance' main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition[_ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition]+0x48): undefined reference to `boost::system::detail::generic_category_instance' collect2: error: ld returned 1 exit status This is a similar issue as the one reported by [2]. With gcc 5, boost libraries are compiled using C++11 but supertux2_lib.a is using C++14 standard. To fix the issue, boost libraries should be build using C++14 standard but we currently don't have an option to "force" the default C++ standard used by the compiler. So bump the minimum gcc version to gcc 6 since the C++14 is used by default. [1] https://github.com/SuperTux/supertux/issues/1014 [2] https://github.com/boostorg/system/issues/26 Fixes: http://autobuild.buildroot.net/results/5b4/5b452c155917d783b3d8167fde48c2c938a74b95 Signed-off-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-12-29 13:31:20 +01:00
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_6 # C++14
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # openal
depends on BR2_USE_MMU # SDL2 OpenGL (GLX)
depends on !BR2_STATIC_LIBS # SDL2
depends on BR2_USE_WCHAR # Boost
select BR2_PACKAGE_BOOST
select BR2_PACKAGE_BOOST_DATE_TIME
select BR2_PACKAGE_BOOST_FILESYSTEM
select BR2_PACKAGE_BOOST_LOCALE
select BR2_PACKAGE_BOOST_SYSTEM
select BR2_PACKAGE_FREETYPE
select BR2_PACKAGE_LIBCURL
select BR2_PACKAGE_LIBGLEW
select BR2_PACKAGE_LIBGLU # GL/glu.h
select BR2_PACKAGE_LIBOGG
select BR2_PACKAGE_LIBPNG
select BR2_PACKAGE_LIBVORBIS
select BR2_PACKAGE_OPENAL
select BR2_PACKAGE_PHYSFS
select BR2_PACKAGE_SDL2
select BR2_PACKAGE_SDL2_IMAGE
select BR2_PACKAGE_SDL2_OPENGL
help
SuperTux is a free classic 2D jump'n run sidescroller game in
a style similar to the original Super Mario games covered
under the GNU GPL.
http://supertux.github.io/
package/supertux: needs gcc >= 6 The initial build issue [1] has been fixed upstream but the supertux fail to link with boost libraries when using gcc 5 (which use C++11 by default): libsupertux2_lib.a(main.cpp.o): In function `boost::system::error_category::std_category::equivalent(std::error_code const&, int) const': main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei[_ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei]+0x32): undefined reference to `boost::system::detail::generic_category_instance' main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei[_ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei]+0x47): undefined reference to `boost::system::detail::generic_category_instance' main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei[_ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei]+0x99): undefined reference to `boost::system::detail::generic_category_instance' libsupertux2_lib.a(main.cpp.o): In function `boost::system::error_category::std_category::equivalent(int, std::error_condition const&) const': main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition[_ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition]+0x33): undefined reference to `boost::system::detail::generic_category_instance' main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition[_ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition]+0x48): undefined reference to `boost::system::detail::generic_category_instance' collect2: error: ld returned 1 exit status This is a similar issue as the one reported by [2]. With gcc 5, boost libraries are compiled using C++11 but supertux2_lib.a is using C++14 standard. To fix the issue, boost libraries should be build using C++14 standard but we currently don't have an option to "force" the default C++ standard used by the compiler. So bump the minimum gcc version to gcc 6 since the C++14 is used by default. [1] https://github.com/SuperTux/supertux/issues/1014 [2] https://github.com/boostorg/system/issues/26 Fixes: http://autobuild.buildroot.net/results/5b4/5b452c155917d783b3d8167fde48c2c938a74b95 Signed-off-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-12-29 13:31:20 +01:00
comment "supertux needs OpenGL and a toolchain w/ C++, gcc >= 6, NPTL, dynamic library, wchar"
depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS
depends on BR2_PACKAGE_XORG7
depends on BR2_USE_MMU
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_PACKAGE_HAS_LIBGL || \
package/supertux: needs gcc >= 6 The initial build issue [1] has been fixed upstream but the supertux fail to link with boost libraries when using gcc 5 (which use C++11 by default): libsupertux2_lib.a(main.cpp.o): In function `boost::system::error_category::std_category::equivalent(std::error_code const&, int) const': main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei[_ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei]+0x32): undefined reference to `boost::system::detail::generic_category_instance' main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei[_ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei]+0x47): undefined reference to `boost::system::detail::generic_category_instance' main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei[_ZNK5boost6system14error_category12std_category10equivalentERKSt10error_codei]+0x99): undefined reference to `boost::system::detail::generic_category_instance' libsupertux2_lib.a(main.cpp.o): In function `boost::system::error_category::std_category::equivalent(int, std::error_condition const&) const': main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition[_ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition]+0x33): undefined reference to `boost::system::detail::generic_category_instance' main.cpp:(.text._ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition[_ZNK5boost6system14error_category12std_category10equivalentEiRKSt15error_condition]+0x48): undefined reference to `boost::system::detail::generic_category_instance' collect2: error: ld returned 1 exit status This is a similar issue as the one reported by [2]. With gcc 5, boost libraries are compiled using C++11 but supertux2_lib.a is using C++14 standard. To fix the issue, boost libraries should be build using C++14 standard but we currently don't have an option to "force" the default C++ standard used by the compiler. So bump the minimum gcc version to gcc 6 since the C++14 is used by default. [1] https://github.com/SuperTux/supertux/issues/1014 [2] https://github.com/boostorg/system/issues/26 Fixes: http://autobuild.buildroot.net/results/5b4/5b452c155917d783b3d8167fde48c2c938a74b95 Signed-off-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-12-29 13:31:20 +01:00
!BR2_TOOLCHAIN_GCC_AT_LEAST_6 || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
BR2_STATIC_LIBS || !BR2_USE_WCHAR