[Buildroot] [RFC PATCH] Add OpenTyrian package (SDL game)
julien.boibessot at free.fr
julien.boibessot at free.fr
Wed Feb 5 18:17:23 UTC 2014
From: Julien Boibessot <julien.boibessot at armadeus.com>
Signed-off-by: Julien Boibessot <julien.boibessot at armadeus.com>
---
Comments are welcome on why DOWNLOAD macro fails to get data and if it's
the good way to do !!
package/Config.in | 1 +
package/opentyrian/Config.in | 25 +++++++++++++++++
package/opentyrian/opentyrian.mk | 55 ++++++++++++++++++++++++++++++++++++++
3 files changed, 81 insertions(+), 0 deletions(-)
create mode 100644 package/opentyrian/Config.in
create mode 100644 package/opentyrian/opentyrian.mk
diff --git a/package/Config.in b/package/Config.in
index 631d8b2..b8a67f3 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -159,6 +159,7 @@ source "package/doom-wad/Config.in"
source "package/gnuchess/Config.in"
source "package/lbreakout2/Config.in"
source "package/ltris/Config.in"
+source "package/opentyrian/Config.in"
source "package/prboom/Config.in"
source "package/rubix/Config.in"
endmenu
diff --git a/package/opentyrian/Config.in b/package/opentyrian/Config.in
new file mode 100644
index 0000000..81050bd
--- /dev/null
+++ b/package/opentyrian/Config.in
@@ -0,0 +1,25 @@
+config BR2_PACKAGE_OPENTYRIAN
+ bool "OpenTyrian"
+ select BR2_PACKAGE_SDL
+ select BR2_PACKAGE_SDL_NET
+ help
+ OpenTyrian is a port of the DOS shoot-em-up Tyrian. It uses SDL,
+ making it easily cross-platform.
+ The original Tyrian data files, that have since been released as
+ Freeware, will be installed.
+ A display with minimum 640x480 resolution and a keyboard are needed
+ to play the game.
+ If you want some sound, activate ALSA with OSS emulation.
+
+ http://code.google.com/p/opentyrian/
+
+if BR2_PACKAGE_OPENTYRIAN
+
+config BR2_PACKAGE_OPENTYRIAN_NET
+ bool "network support"
+ default y
+ select BR2_PACKAGE_SDL_NET
+ help
+ Activates network support in OpenTyrian. Will add SDL_net.
+
+endif
diff --git a/package/opentyrian/opentyrian.mk b/package/opentyrian/opentyrian.mk
new file mode 100644
index 0000000..f0a635d
--- /dev/null
+++ b/package/opentyrian/opentyrian.mk
@@ -0,0 +1,55 @@
+###############################################################################
+#
+# OpenTyrian
+#
+###############################################################################
+
+OPENTYRIAN_VERSION = 2.1.20130907
+OPENTYRIAN_SITE = http://www.camanis.net/opentyrian/releases/
+OPENTYRIAN_SOURCE = opentyrian-$(OPENTYRIAN_VERSION)-src.tar.gz
+OPENTYRIAN_LICENSE = GPLv2+ Freeware
+OPENTYRIAN_LICENSE_FILES = COPYING README
+
+OPENTYRIAN_DEPENDENCIES = sdl
+
+ifeq ($(BR2_PACKAGE_OPENTYRIAN_NET),y)
+OPENTYRIAN_DEPENDENCIES += sdl_net
+OPENTYRIAN_NETWORK = true
+else
+OPENTYRIAN_NETWORK = false
+endif
+
+OPENTYRIAN_DATA = tyrian21.zip
+OPENTYRIAN_DATA_SITE = http://sites.google.com/a/camanis.net/opentyrian/tyrian/
+
+define OPENTYRIAN_DOWNLOAD_DATA
+ @$(call MESSAGE,Downloading data)
+# @$(call DOWNLOAD,$(OPENTYRIAN_DATA_SITE),$(OPENTYRIAN_DATA)) << doesn't work !!
+ cd $(DL_DIR); $(WGET) -nc $(OPENTYRIAN_DATA_SITE)/$(OPENTYRIAN_DATA)
+endef
+OPENTYRIAN_POST_DOWNLOAD_HOOKS += OPENTYRIAN_DOWNLOAD_DATA
+
+define OPENTYRIAN_EXTRACT_DATA
+ unzip $(DL_DIR)/$(OPENTYRIAN_DATA) -d $(@D)
+endef
+OPENTYRIAN_POST_EXTRACT_HOOKS += OPENTYRIAN_EXTRACT_DATA
+
+define OPENTYRIAN_BUILD_CMDS
+ $(MAKE) PLATFORM=UNIX \
+ CC="$(TARGET_CC)" \
+ STRIP="$(STRIPCMD) $(STRIP_STRIP_UNNEEDED)" \
+ SDL_CONFIG="$(STAGING_DIR)/usr/bin/sdl-config" \
+ LDFLAGS="-lm" \
+ WITH_NETWORK="$(OPENTYRIAN_NETWORK)" \
+ -C $(@D) release
+endef
+
+define OPENTYRIAN_INSTALL_TARGET_CMDS
+ $(INSTALL) -D -m 0755 $(@D)/opentyrian $(TARGET_DIR)/usr/games/opentyrian
+ mkdir -p $(TARGET_DIR)/usr/share/opentyrian/data/
+ cp $(@D)/tyrian21/* $(TARGET_DIR)/usr/share/opentyrian/data/
+ rm -f $(TARGET_DIR)/usr/share/opentyrian/data/*.doc
+ rm -f $(TARGET_DIR)/usr/share/opentyrian/data/*.exe
+endef
+
+$(eval $(generic-package))
--
1.7.5.4
More information about the buildroot
mailing list