summaryrefslogtreecommitdiffstats
path: root/package/prboom
diff options
context:
space:
mode:
authorPeter Korsgaard <jacmet@sunsite.dk>2012-11-05 08:23:06 +0100
committerPeter Korsgaard <jacmet@sunsite.dk>2012-11-05 08:23:06 +0100
commit9b809e1a6ad2a82bfe0d2383f69f45ae8c6283bb (patch)
tree637617fcd0b2e5097f62e588b4d1d51c84be2740 /package/prboom
parent7c992ac3410e6694d8697b770eb3b0463b80a0a4 (diff)
downloadbuildroot-novena-9b809e1a6ad2a82bfe0d2383f69f45ae8c6283bb.tar.gz
buildroot-novena-9b809e1a6ad2a82bfe0d2383f69f45ae8c6283bb.zip
package: drop games/ subdir
As discussed during the dev day. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Diffstat (limited to 'package/prboom')
-rw-r--r--package/prboom/Config.in11
-rw-r--r--package/prboom/prboom-2.5.0-libpng-1.4.patch32
-rw-r--r--package/prboom/prboom.mk45
3 files changed, 88 insertions, 0 deletions
diff --git a/package/prboom/Config.in b/package/prboom/Config.in
new file mode 100644
index 000000000..2835929ca
--- /dev/null
+++ b/package/prboom/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_PRBOOM
+ bool "PrBoom"
+ select BR2_PACKAGE_SDL
+ select BR2_PACKAGE_SDL_MIXER
+ select BR2_PACKAGE_SDL_NET
+ help
+ PrBoom is a Doom client which allows you to play the good old game on
+ newer hardware. It even supports higher resolution and better
+ rendring, while still keeping the old style alive.
+
+ http://prboom.sourceforge.net/
diff --git a/package/prboom/prboom-2.5.0-libpng-1.4.patch b/package/prboom/prboom-2.5.0-libpng-1.4.patch
new file mode 100644
index 000000000..0d2a3a5ba
--- /dev/null
+++ b/package/prboom/prboom-2.5.0-libpng-1.4.patch
@@ -0,0 +1,32 @@
+[PATCH] fix build with libpng 1.4.x
+
+In 1.4.x the png_*_NULL defines are gone. Replace them with a normal
+NULL instead.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ src/SDL/i_sshot.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: prboom-2.5.0/src/SDL/i_sshot.c
+===================================================================
+--- prboom-2.5.0.orig/src/SDL/i_sshot.c
++++ prboom-2.5.0/src/SDL/i_sshot.c
+@@ -231,7 +231,7 @@ int I_ScreenShot (const char *fname)
+ if (fp)
+ {
+ png_struct *png_ptr = png_create_write_struct(
+- PNG_LIBPNG_VER_STRING, png_error_ptr_NULL, error_fn, warning_fn);
++ PNG_LIBPNG_VER_STRING, NULL, error_fn, warning_fn);
+
+ if (png_ptr)
+ {
+@@ -279,7 +279,7 @@ int I_ScreenShot (const char *fname)
+ break;
+ }
+ }
+- png_destroy_write_struct(&png_ptr, png_infopp_NULL);
++ png_destroy_write_struct(&png_ptr, NULL);
+ }
+ fclose(fp);
+ }
diff --git a/package/prboom/prboom.mk b/package/prboom/prboom.mk
new file mode 100644
index 000000000..1f5c3ddc6
--- /dev/null
+++ b/package/prboom/prboom.mk
@@ -0,0 +1,45 @@
+#############################################################
+#
+# PrBoom
+#
+#############################################################
+PRBOOM_VERSION = 2.5.0
+PRBOOM_SITE = http://downloads.sourceforge.net/project/prboom/prboom%20stable/$(PRBOOM_VERSION)
+PRBOOM_CONF_ENV = ac_cv_type_uid_t=yes
+PRBOOM_DEPENDENCIES = sdl sdl_net sdl_mixer
+
+ifeq ($(BR2_PACKAGE_LIBPNG),y)
+PRBOOM_DEPENDENCIES += libpng
+endif
+
+PRBOOM_CONF_OPT = \
+ --oldincludedir=$(STAGING_DIR)/usr/include \
+ --with-sdl-prefix=$(STAGING_DIR)/usr \
+ --with-sdl-exec-prefix=$(STAGING_DIR)/usr \
+ --disable-cpu-opt \
+ --disable-sdltest \
+ --disable-gl
+
+# endianness detection isn't used when cross compiling
+define PRBOOM_BIG_ENDIAN_FIXUP
+ $(SED) 's,.*#undef WORDS_BIGENDIAN.*,#define WORDS_BIGENDIAN 1,g' \
+ $(PRBOOM_DIR)/config.h
+endef
+
+ifeq ($(BR2_ENDIAN),"BIG")
+PRBOOM_POST_CONFIGURE_HOOKS += PRBOOM_BIG_ENDIAN_FIXUP
+endif
+
+define PRBOOM_INSTALL_TARGET_CMDS
+ $(INSTALL) -D $(@D)/src/prboom $(TARGET_DIR)/usr/games/prboom
+ $(INSTALL) -D $(@D)/src/prboom-game-server $(TARGET_DIR)/usr/games/prboom-game-server
+ $(INSTALL) -D $(@D)/data/prboom.wad $(TARGET_DIR)/usr/share/games/doom/prboom.wad
+endef
+
+define PRBOOM_UINSTALL_TARGET_CMDS
+ rm -rf $(TARGET_DIR)/usr/share/games/doom/prboom.wad \
+ $(TARGET_DIR)/usr/games/prboom-game-server \
+ $(TARGET_DIR)/usr/games/prboom
+endef
+
+$(eval $(autotools-package))