[Buildroot] [PATCH v3 3/3] package/solarus: new package
Romain Naour
romain.naour at gmail.com
Thu Jul 13 13:04:45 UTC 2017
Sample quest and testing quest are not included in SOLARUS_LICENSE
since it's notinstalled by default.
Remove Werror when building with debugging symbols.
Signed-off-by: Romain Naour <romain.naour at gmail.com>
---
v2: add DEVELOPERS entry
Add a note in help text about Salarus games
Add license hash.
---
DEVELOPERS | 1 +
package/Config.in | 1 +
package/solarus/0001-cmake-remove-Werror.patch | 27 ++++++++++++++++++++
package/solarus/Config.in | 34 ++++++++++++++++++++++++++
package/solarus/solarus.hash | 5 ++++
package/solarus/solarus.mk | 23 +++++++++++++++++
6 files changed, 91 insertions(+)
create mode 100644 package/solarus/0001-cmake-remove-Werror.patch
create mode 100644 package/solarus/Config.in
create mode 100644 package/solarus/solarus.hash
create mode 100644 package/solarus/solarus.mk
diff --git a/DEVELOPERS b/DEVELOPERS
index 80c3dd2..57ba028 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1440,6 +1440,7 @@ F: package/mcelog/
F: package/openpowerlink/
F: package/physfs/
F: package/stress-ng/
+F: package/solarus/
F: package/supertux/
F: package/terminology/
F: package/upower/
diff --git a/package/Config.in b/package/Config.in
index b48ab5e..78a9b0d 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -233,6 +233,7 @@ menu "Games"
source "package/prboom/Config.in"
source "package/rubix/Config.in"
source "package/sl/Config.in"
+ source "package/solarus/Config.in"
source "package/stella/Config.in"
source "package/supertux/Config.in"
source "package/supertuxkart/Config.in"
diff --git a/package/solarus/0001-cmake-remove-Werror.patch b/package/solarus/0001-cmake-remove-Werror.patch
new file mode 100644
index 0000000..b27908c
--- /dev/null
+++ b/package/solarus/0001-cmake-remove-Werror.patch
@@ -0,0 +1,27 @@
+From 4d315359d15e1221f3463b77a960a60093aac893 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour at gmail.com>
+Date: Thu, 22 Jun 2017 00:19:56 +0200
+Subject: [PATCH] cmake: remove Werror
+
+Signed-off-by: Romain Naour <romain.naour at gmail.com>
+---
+ cmake/AddCompilationFlags.cmake | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/cmake/AddCompilationFlags.cmake b/cmake/AddCompilationFlags.cmake
+index 5159ff9..a506033 100644
+--- a/cmake/AddCompilationFlags.cmake
++++ b/cmake/AddCompilationFlags.cmake
+@@ -24,9 +24,6 @@ endif()
+ # Be less pedantic in release builds for users.
+ set(CMAKE_CXX_FLAGS_RELEASE "-Wno-error -Wall -Wextra -Wno-unknown-pragmas -Wno-fatal-errors ${CMAKE_CXX_FLAGS_RELEASE}")
+
+-# Be more pedantic in debug mode for developers.
+-set(CMAKE_CXX_FLAGS_DEBUG "-Werror -Wall -Wextra -pedantic ${CMAKE_CXX_FLAGS_DEBUG}")
+-
+ # Platform-specific flags.
+ if(WIN32)
+ # MinGW: disable the console by default.
+--
+2.9.4
+
diff --git a/package/solarus/Config.in b/package/solarus/Config.in
new file mode 100644
index 0000000..0307ff0
--- /dev/null
+++ b/package/solarus/Config.in
@@ -0,0 +1,34 @@
+config BR2_PACKAGE_SOLARUS
+ bool "solarus"
+ depends on BR2_INSTALL_LIBSTDCPP
+ depends on BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS
+ depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
+ depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # openal
+ depends on !BR2_STATIC_LIBS # SDL2
+ select BR2_PACKAGE_LIBMODPLUG
+ select BR2_PACKAGE_LIBOGG
+ select BR2_PACKAGE_LIBVORBIS
+ select BR2_PACKAGE_LUAJIT
+ select BR2_PACKAGE_OPENAL
+ select BR2_PACKAGE_PHYSFS
+ select BR2_PACKAGE_SDL2
+ select BR2_PACKAGE_SDL2_IMAGE
+ select BR2_PACKAGE_SDL2_TTF
+ help
+ Solarus is an open-source Zelda-like 2D game engine written
+ in C++. It can run games scripted in Lua. This engine is used
+ by Solarus Zelda fangames.
+
+ Note: This package doesn't contain any game data file in it.
+ The user should provide these data files using an rootfs
+ overlay or using an custom external package.
+
+ http://www.solarus-games.org
+ https://github.com/solarus-games/solarus
+
+comment "solarus needs a toolchain w/ C++, gcc >= 4.8, NPTL, dynamic library"
+ depends on BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS
+ depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 \
+ || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS
diff --git a/package/solarus/solarus.hash b/package/solarus/solarus.hash
new file mode 100644
index 0000000..8ed5caf
--- /dev/null
+++ b/package/solarus/solarus.hash
@@ -0,0 +1,5 @@
+# Locally calculated
+sha256 5930584e7c333089a2c1bf372ccc25ad3fb5c1d973189d2bf67f2308189af94d solarus-v1.5.3.tar.gz
+
+sha256 09cb24006b6a3f2698d8851dc5df4f413c1a98e20d4008bffd76ec236f14244d license.txt
+sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 license_gpl.txt
diff --git a/package/solarus/solarus.mk b/package/solarus/solarus.mk
new file mode 100644
index 0000000..af37f81
--- /dev/null
+++ b/package/solarus/solarus.mk
@@ -0,0 +1,23 @@
+################################################################################
+#
+# solarus
+#
+################################################################################
+
+SOLARUS_VERSION = v1.5.3
+SOLARUS_SITE = $(call github,solarus-games,solarus,$(SOLARUS_VERSION))
+
+SOLARUS_LICENSE = GPL-3.0 (code), CC-BY-SA-4.0 (Solarus logos and icons), \
+ CC-BY-SA-3.0 (GUI icons)
+SOLARUS_LICENSE_FILES = license.txt license_gpl.txt
+
+# Install libsolarus.so
+SOLARUS_INSTALL_STAGING = YES
+
+SOLARUS_DEPENDENCIES = libmodplug libogg libvorbis luajit openal physfs sdl2 \
+ sdl2_image sdl2_ttf
+
+# Disable launcher GUI (requires Qt5)
+SOLARUS_CONF_OPTS = -DSOLARUS_GUI=OFF
+
+$(eval $(cmake-package))
--
2.9.4
More information about the buildroot
mailing list