summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /games-strategy/openra/files
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'games-strategy/openra/files')
-rw-r--r--games-strategy/openra/files/README.gentoo111
-rw-r--r--games-strategy/openra/files/openra-20120630-sound.patch18
-rw-r--r--games-strategy/openra/files/openra-20130514-makefile.patch382
-rw-r--r--games-strategy/openra/files/openra-20131223-sdl2.patch15
4 files changed, 526 insertions, 0 deletions
diff --git a/games-strategy/openra/files/README.gentoo b/games-strategy/openra/files/README.gentoo
new file mode 100644
index 000000000000..33502af0f9d2
--- /dev/null
+++ b/games-strategy/openra/files/README.gentoo
@@ -0,0 +1,111 @@
+OpenRA is a Libre/Free Real Time Strategy game engine supporting early
+Westwood games like Command & Conquer and Command & Conquer: Red Alert.
+
+Distributed mods include a reimagining and updating of both the Red
+Alert and Command & Conquer multiplayer games.
+
+You may run the game from desktop games menu or just manually
+run the game with `mono OpenRA.Game.exe Game.Mods=ra` for Red Alert
+or `mono OpenRA.Game.exe Game.Mods=cnc` for Command & Conquer.
+
+If you have problems starting the game consider switching to
+alternative Cg Renderer. You may run the game with alternative
+Cg Graphics Renderer from desktop games menu or by adding
+`Graphics.Renderer=Cg` parameter explicitly to above console commands
+ (convenient for some integrated graphics cards).
+To run explicitly with a default one use `Graphics.Renderer=Gl`
+parameter. The default Graphics Renderer is a better one, so
+don't forget to upgrade your graphics hardware drivers to the
+latest version. For Cg renderer also try to upgrade nvidia-cg-toolkit
+too.
+
+The RA packages will need to be extracted to ~/.openra/Content/ra/
+before the RA mod will actually work. The C&C packages will need
+to be extracted to ~/.openra/Contet/cnc/ for C&C mod. You may
+execute OpenRA and it will suggest to download content from original
+CD or a minimal one from OpenRA site automatically. You may also try
+to download minimal content pack from OpenRA site manually by using
+OpenRA Utility:
+
+cd /usr/share/games/openra
+mono OpenRA.Utility.exe --download-url=http://open-ra.org/get-dependency.php?file=ra-packages,/tmp/ra-packages.zip
+mono OpenRA.Utility.exe --extract-zip=/tmp/ra-packages.zip,~/.openra/Content/ra/
+
+The same commands for C&C mod:
+mono OpenRA.Utility.exe --download-url=http://open-ra.org/get-dependency.php?file=cnc-packages,/tmp/cnc-packages.zip
+mono OpenRA.Utility.exe --extract-zip=/tmp/cnc-packages.zip,~/.openra/Content/cnc/
+
+But the better choice is to download a full pack from original game CD
+(or iso). However, full CD pack usage result in slower game start from
+OpenRA Lobby. It happens due to a lot of unnecessary things like video
+clips were pre-packaged in it. If you want optimal game start and all
+music themes (made by Frank Klepacki) from classic CD you should
+download them from OpenRA Forum:
+http://www.sleipnirstuff.com/forum/viewtopic.php?f=83&t=15063
+
+The minimal required files for the Red Alert mod are:
+EITHER:
+ * conquer.mix
+ * temperat.mix
+ * interior.mix
+ * snow.mix
+ * sounds.mix
+ * allies.mix
+ * russian.mix
+OR: (Usually pretty long game start)
+ * main.mix
+AND:
+ * redalert.mix
+
+The minimal required files for the Command and Conquer mod are:
+ * cclocal.mix
+ * speech.mix
+ * conquer.mix
+ * sounds.mix
+ * tempicnh.mix
+ * temperat.mix
+ * winter.mix
+ * desert.mix
+
+If you have a case-sensitive filesystem you must change the filenames to
+lower case.
+
+Red Alert and C&C have been released by EA Games as freeware. They could be
+downloaded from http://www.commandandconquer.com/classic
+Unfortunately the installer is 16-bit and so won’t run on 64-bit operating
+systems. This can be worked around by using the Red Alert Setup Manager
+ (http://ra.afraid.org/html/downloads/utilities-3.html).
+Make sure you apply the no-CD protection fix so all the files needed
+are installed to the hard drive.
+
+If your notebook doesn't show long battery life under OpenRA load you can
+do several things:
+1. Turn off "Show Shellmap" item under General tab of Settings menu.
+2. Edit ~/.openra/settings.yaml in the "Graphics:" section to add
+framelimiter. Add "CapFramerate: True" string there to enable framelimiter.
+The default setting is 60 frames per second. You can change it's value by
+adding "MaxFramerate: 70", for example, string in that section. Be careful
+with special tab symbols at the beginning of the strings. Don't forget to
+backup your settings file.
+
+Please note: OpenRA has 2 types of released versions:
+1. Release Versions or just Versions.
+2. Unstable Playtests Versions or just Playtests.
+Release Versions are considered as more stable ones. Playtests are also
+pretty stable in most cases but they have usually more features wich are
+needed to be tested before inclusion into release. So, if you have any
+problems, please report them to the IRC channel #openra on irc.freenode.net
+(Use http://webchat.freenode.net/ if you don't have IRC client)
+or to the bug-tracker (http://bugs.open-ra.org).
+
+You may also see servers list with
+http://master.open-ra.org/list.php
+or by using orabot on IRC channel:
+]games (or !games)
+to see the games wich are waiting to start or
+]games --all
+to see all games.
+
+Please read HACKING for an overview of the engine and read OpenRA Wiki
+page for more info about the game and it's development:
+https://github.com/OpenRA/OpenRA/wiki
diff --git a/games-strategy/openra/files/openra-20120630-sound.patch b/games-strategy/openra/files/openra-20120630-sound.patch
new file mode 100644
index 000000000000..9bea3ee7fb98
--- /dev/null
+++ b/games-strategy/openra/files/openra-20120630-sound.patch
@@ -0,0 +1,18 @@
+Date: Sun Jul 1 00:34:03 UTC 2012
+Subject: https://github.com/OpenRA/OpenRA/issues/2005
+
+fixed in https://github.com/OpenRA/OpenRA/commit/c068be453a9bcb7bc1fdd5874dc1296b6f4810d0#diff-0
+
+--- OpenRA.FileFormats/FieldLoader.cs
++++ OpenRA.FileFormats/FieldLoader.cs
+@@ -325,6 +325,10 @@
+ ((int)c.B).Clamp(0, 255));
+ }
+
++ // Don't save floats in settings.yaml using country-specific decimal separators which can be misunderstood as group seperators.
++ if (t == typeof(float))
++ return ((float)v).ToString(CultureInfo.InvariantCulture);
++
+ if (t == typeof(Rectangle))
+ {
+ var r = (Rectangle)v;
diff --git a/games-strategy/openra/files/openra-20130514-makefile.patch b/games-strategy/openra/files/openra-20130514-makefile.patch
new file mode 100644
index 000000000000..537b688c7dfb
--- /dev/null
+++ b/games-strategy/openra/files/openra-20130514-makefile.patch
@@ -0,0 +1,382 @@
+https://github.com/OpenRA/OpenRA/pull/3500
+
+--- a/Makefile
++++ b/Makefile
+@@ -1,34 +1,69 @@
++############################# INSTRUCTIONS #############################
++#
++# to compile, run:
++# make
++#
++# to compile with development tools, run:
++# make all
++#
++# to install, run:
++# make [prefix=/foo] [bindir=/bar/bin] install
++#
++# to install with development tools, run:
++# make [prefix=/foo] [bindir=/bar/bin] install-all
++#
++# to uninstall, run:
++# make uninstall
++#
++# for help, run:
++# make help
++#
++# to start the game, run:
++# openra
++
++
++
++############################## TOOLCHAIN ###############################
++#
+ CSC = gmcs
+ CSFLAGS = -nologo -warn:4 -debug:full -optimize- -codepage:utf8 -unsafe -warnaserror
+ DEFINE = DEBUG;TRACE
+ COMMON_LIBS = System.dll System.Core.dll System.Drawing.dll System.Xml.dll thirdparty/ICSharpCode.SharpZipLib.dll thirdparty/FuzzyLogicLibrary.dll thirdparty/Mono.Nat.dll
+-PHONY = core tools package all mods clean distclean dependencies version
++
++
++
++######################### UTILITIES/SETTINGS ###########################
++#
++# install locations
++prefix ?= /usr/local
++datarootdir ?= $(prefix)/share
++datadir ?= $(datarootdir)
++bindir ?= $(prefix)/bin
++BIN_INSTALL_DIR = $(DESTDIR)$(bindir)
++DATA_INSTALL_DIR = $(DESTDIR)$(datadir)/openra
++
++# install tools
++RM = rm
++RM_R = $(RM) -r
++RM_F = $(RM) -f
++CP = cp
++CP_R = $(CP) -r
++INSTALL = install
++INSTALL_DIR = $(INSTALL) -d
++INSTALL_PROGRAM = $(INSTALL) -m755
++INSTALL_DATA = $(INSTALL) -m644
++
++# program targets
++CORE = fileformats rcg rgl rsdl rnull game utility
++TOOLS = editor tsbuild ralint
++
+ VERSION = $(shell git name-rev --name-only --tags --no-undefined HEAD 2>/dev/null || echo git-`git rev-parse --short HEAD`)
+
+-.SUFFIXES:
+-core: game renderers mods utility tsbuild
+-tools: editor ralint tsbuild
+-package: dependencies core editor docs version
+-mods: mod_ra mod_cnc mod_d2k
+-all: dependencies core tools
+-clean:
+- @-rm -f *.exe *.dll *.mdb mods/**/*.dll mods/**/*.mdb *.resources
+-distclean: clean
+-dependencies:
+- @ cp -r thirdparty/*.dl* .
+- @ cp -r thirdparty/Tao/* .
+-version: mods/ra/mod.yaml mods/cnc/mod.yaml mods/d2k/mod.yaml
+- @for i in $? ; do \
+- awk '{sub("Version:.*$$","Version: $(VERSION)"); print $0}' $${i} > $${i}.tmp && \
+- mv -f $${i}.tmp $${i} ; \
+- done
+-default: dependencies core
+-
+-.DEFAULT_GOAL := default
+-
++
++
++######################## PROGRAM TARGET RULES ##########################
+ #
+ # Core binaries
+-#
+ fileformats_SRCS := $(shell find OpenRA.FileFormats/ -iname '*.cs')
+ fileformats_TARGET = OpenRA.FileFormats.dll
+ fileformats_KIND = library
+@@ -39,16 +74,14 @@
+ game_SRCS := $(shell find OpenRA.Game/ -iname '*.cs')
+ game_TARGET = OpenRA.Game.exe
+ game_KIND = winexe
+-game_DEPS = $(fileformats_TARGET)
++game_DEPS = $(fileformats_TARGET)
+ game_LIBS = $(COMMON_LIBS) System.Windows.Forms.dll $(game_DEPS) \
+ thirdparty/Tao/Tao.OpenAl.dll thirdparty/SharpFont.dll
+ game_FLAGS = -win32icon:OpenRA.Game/OpenRA.ico
+ PROGRAMS += game
+ game: $(game_TARGET)
+
+-#
+ # Renderer dlls
+-#
+ rsdl_SRCS := $(shell find OpenRA.Renderer.SdlCommon/ -iname '*.cs')
+ rsdl_TARGET = OpenRA.Renderer.SdlCommon.dll
+ rsdl_KIND = library
+@@ -82,19 +115,18 @@
+ PROGRAMS += rcg rgl rnull rsdl
+ renderers: $(rcg_TARGET) $(rgl_TARGET) $(rnull_TARGET) $(rsdl_TARGET)
+
+-#
+-# Official Mods
+-#
+-# Red Alert
++
++##### Official Mods #####
+
+ STD_MOD_LIBS = $(fileformats_TARGET) $(game_TARGET)
+ STD_MOD_DEPS = $(STD_MOD_LIBS) $(ralint_TARGET)
+
++# Red Alert
+ mod_ra_SRCS := $(shell find OpenRA.Mods.RA/ -iname '*.cs')
+ mod_ra_TARGET = mods/ra/OpenRA.Mods.RA.dll
+ mod_ra_KIND = library
+-mod_ra_DEPS = $(STD_MOD_DEPS)
+-mod_ra_LIBS = $(COMMON_LIBS) $(STD_MOD_LIBS)
++mod_ra_DEPS = $(STD_MOD_DEPS) $(utility_TARGET)
++mod_ra_LIBS = $(COMMON_LIBS) $(STD_MOD_LIBS) $(utility_TARGET)
+ mod_ra_EXTRA_CMDS = mono --debug RALint.exe ra
+ PROGRAMS += mod_ra
+ mod_ra: $(mod_ra_TARGET)
+@@ -119,9 +151,9 @@
+ PROGRAMS += mod_d2k
+ mod_d2k: $(mod_d2k_TARGET)
+
+-#
+-# Tools
+-#
++
++##### Tools #####
++
+ # Map Editor
+ editor_SRCS := $(shell find OpenRA.Editor/ -iname '*.cs')
+ editor_TARGET = OpenRA.Editor.exe
+@@ -163,13 +195,8 @@
+ resgen2 OpenRA.TilesetBuilder/Surface.resx OpenRA.TilesetBuilder.Surface.resources 1> /dev/null
+ tsbuild: OpenRA.TilesetBuilder.frmBuilder.resources OpenRA.TilesetBuilder.frmNew.resources OpenRA.TilesetBuilder.Surface.resources $(tsbuild_TARGET)
+
+-#
+-# Launchers / Utilities
+-#
+-# Patches binary headers to work around a mono bug
+-fixheader.exe: packaging/fixheader.cs
+- @echo CSC fixheader.exe
+- @$(CSC) packaging/fixheader.cs $(CSFLAGS) -out:fixheader.exe -t:exe $(COMMON_LIBS:%=-r:%)
++
++##### Launchers / Utilities #####
+
+ # Backend for the launcher apps - queries game/mod info and applies actions to an install
+ utility_SRCS := $(shell find OpenRA.Utility/ -iname '*.cs')
+@@ -180,11 +207,13 @@
+ PROGRAMS += utility
+ utility: $(utility_TARGET)
+
+-.PHONY: $(PHONY) $(PROGRAMS)
+-
+-#
++
++# Patches binary headers to work around a mono bug
++fixheader.exe: packaging/fixheader.cs
++ @echo CSC fixheader.exe
++ @$(CSC) packaging/fixheader.cs $(CSFLAGS) -out:fixheader.exe -t:exe $(COMMON_LIBS:%=-r:%)
++
+ # Generate build rules for each target defined above in PROGRAMS
+-#
+ define BUILD_ASSEMBLY
+
+ $$($(1)_TARGET): $$($(1)_SRCS) Makefile $$($(1)_DEPS) fixheader.exe
+@@ -203,68 +232,67 @@
+ $(foreach prog,$(PROGRAMS),$(eval $(call BUILD_ASSEMBLY,$(prog))))
+
+
+-#
+-# Install / Uninstall for *nix
+-#
+-prefix ?= /usr/local
+-datarootdir ?= $(prefix)/share
+-datadir ?= $(datarootdir)
+-bindir ?= $(prefix)/bin
+-BIN_INSTALL_DIR = $(DESTDIR)$(bindir)
+-INSTALL_DIR = $(DESTDIR)$(datadir)/openra
+-INSTALL = install
+-INSTALL_PROGRAM = $(INSTALL)
+-CORE = fileformats rcg rgl rsdl rnull game editor utility tsbuild
++
++########################## MAKE/INSTALL RULES ##########################
++#
++default: dependencies core
++
++core: game renderers mods utility tsbuild
++
++tools: editor tsbuild ralint
++
++package: dependencies core editor docs version
++
++mods: mod_ra mod_cnc mod_d2k
++
++all: dependencies core tools
++
++clean:
++ @-$(RM_F) *.exe *.dll *.mdb mods/**/*.dll mods/**/*.mdb *.resources
++
++distclean: clean
++
++dependencies:
++ @ $(CP_R) thirdparty/*.dl* .
++ @ $(CP_R) thirdparty/Tao/* .
++
++version: mods/ra/mod.yaml mods/cnc/mod.yaml mods/d2k/mod.yaml
++ @for i in $? ; do \
++ awk '{sub("Version:.*$$","Version: $(VERSION)"); print $0}' $${i} > $${i}.tmp && \
++ mv -f $${i}.tmp $${i} ; \
++ done
+
+ # Documentation (d2k depends on all mod libraries)
+-docs:
++docs: utility
+ @mono --debug OpenRA.Utility.exe --docs d2k > DOCUMENTATION.md
+
+-install: all
+- @-echo "Installing OpenRA to $(INSTALL_DIR)"
+- @$(INSTALL_PROGRAM) -d $(INSTALL_DIR)
+- @$(INSTALL_PROGRAM) $(foreach prog,$(CORE),$($(prog)_TARGET)) $(INSTALL_DIR)
+- @$(INSTALL_PROGRAM) -d $(INSTALL_DIR)/mods/cnc
+- @$(INSTALL_PROGRAM) $(mod_cnc_TARGET) $(INSTALL_DIR)/mods/cnc
+- @$(INSTALL_PROGRAM) -d $(INSTALL_DIR)/mods/ra
+- @$(INSTALL_PROGRAM) $(mod_ra_TARGET) $(INSTALL_DIR)/mods/ra
+- @$(INSTALL_PROGRAM) -d $(INSTALL_DIR)/mods/d2k
+- @$(INSTALL_PROGRAM) $(mod_d2k_TARGET) $(INSTALL_DIR)/mods/d2k
+-
+- @-cp $(foreach f,$(shell ls mods/cnc --hide=*.dll),mods/cnc/$(f)) $(INSTALL_DIR)/mods/cnc
+- @cp -r mods/cnc/maps $(INSTALL_DIR)/mods/cnc
+- @cp -r mods/cnc/chrome $(INSTALL_DIR)/mods/cnc
+- @cp -r mods/cnc/bits $(INSTALL_DIR)/mods/cnc
+- @cp -r mods/cnc/rules $(INSTALL_DIR)/mods/cnc
+- @cp -r mods/cnc/sequences $(INSTALL_DIR)/mods/cnc
+- @cp -r mods/cnc/tilesets $(INSTALL_DIR)/mods/cnc
+- @cp -r mods/cnc/uibits $(INSTALL_DIR)/mods/cnc
+-
+- @-cp $(foreach f,$(shell ls mods/ra --hide=*.dll),mods/ra/$(f)) $(INSTALL_DIR)/mods/ra
+- @cp -r mods/ra/maps $(INSTALL_DIR)/mods/ra
+- @cp -r mods/ra/bits $(INSTALL_DIR)/mods/ra
+- @cp -r mods/ra/chrome $(INSTALL_DIR)/mods/ra
+- @cp -r mods/ra/rules $(INSTALL_DIR)/mods/ra
+- @cp -r mods/ra/tilesets $(INSTALL_DIR)/mods/ra
+- @cp -r mods/ra/uibits $(INSTALL_DIR)/mods/ra
+-
+- @-cp $(foreach f,$(shell ls mods/d2k --hide=*.dll),mods/d2k/$(f)) $(INSTALL_DIR)/mods/d2k
+- @cp -r mods/d2k/maps $(INSTALL_DIR)/mods/d2k
+- @cp -r mods/d2k/bits $(INSTALL_DIR)/mods/d2k
+- @cp -r mods/d2k/chrome $(INSTALL_DIR)/mods/d2k
+- @cp -r mods/d2k/rules $(INSTALL_DIR)/mods/d2k
+- @cp -r mods/d2k/tilesets $(INSTALL_DIR)/mods/d2k
+- @cp -r mods/d2k/uibits $(INSTALL_DIR)/mods/d2k
+-
+- @cp -r glsl $(INSTALL_DIR)
+- @cp -r cg $(INSTALL_DIR)
+- @cp *.ttf $(INSTALL_DIR)
+- @cp thirdparty/Tao/* $(INSTALL_DIR)
+- @$(INSTALL_PROGRAM) thirdparty/ICSharpCode.SharpZipLib.dll $(INSTALL_DIR)
+- @$(INSTALL_PROGRAM) thirdparty/FuzzyLogicLibrary.dll $(INSTALL_DIR)
+- @$(INSTALL_PROGRAM) thirdparty/SharpFont.dll $(INSTALL_DIR)
+- @cp thirdparty/SharpFont.dll.config $(INSTALL_DIR)
+- @$(INSTALL_PROGRAM) thirdparty/Mono.Nat.dll $(INSTALL_DIR)
++install: install-core
++
++install-all: install-core install-tools
++
++install-core: default
++ @-echo "Installing OpenRA to $(DATA_INSTALL_DIR)"
++ @$(INSTALL_DIR) "$(DATA_INSTALL_DIR)"
++ @$(INSTALL_PROGRAM) $(foreach prog,$(CORE),$($(prog)_TARGET)) "$(DATA_INSTALL_DIR)"
++ @$(INSTALL_DIR) "$(DATA_INSTALL_DIR)/mods"
++ @$(CP_R) mods/cnc "$(DATA_INSTALL_DIR)/mods/"
++ @$(INSTALL_PROGRAM) $(mod_cnc_TARGET) "$(DATA_INSTALL_DIR)/mods/cnc"
++ @$(CP_R) mods/ra "$(DATA_INSTALL_DIR)/mods/"
++ @$(INSTALL_PROGRAM) $(mod_ra_TARGET) "$(DATA_INSTALL_DIR)/mods/ra"
++ @$(CP_R) mods/d2k "$(DATA_INSTALL_DIR)/mods/"
++ @$(INSTALL_PROGRAM) $(mod_d2k_TARGET) "$(DATA_INSTALL_DIR)/mods/d2k"
++
++ @$(INSTALL_DATA) AUTHORS "$(DATA_INSTALL_DIR)/AUTHORS"
++
++ @$(CP_R) glsl "$(DATA_INSTALL_DIR)"
++ @$(CP_R) cg "$(DATA_INSTALL_DIR)"
++ @$(CP) *.ttf "$(DATA_INSTALL_DIR)"
++ @$(CP) thirdparty/Tao/* "$(DATA_INSTALL_DIR)"
++ @$(INSTALL_PROGRAM) thirdparty/ICSharpCode.SharpZipLib.dll "$(DATA_INSTALL_DIR)"
++ @$(INSTALL_PROGRAM) thirdparty/FuzzyLogicLibrary.dll "$(DATA_INSTALL_DIR)"
++ @$(INSTALL_PROGRAM) thirdparty/SharpFont.dll "$(DATA_INSTALL_DIR)"
++ @$(CP) thirdparty/SharpFont.dll.config "$(DATA_INSTALL_DIR)"
++ @$(INSTALL_PROGRAM) thirdparty/Mono.Nat.dll "$(DATA_INSTALL_DIR)"
+
+ @echo "#!/bin/sh" > openra
+ @echo 'BINDIR=$$(dirname $$(readlink -f $$0))' >> openra
+@@ -273,6 +301,16 @@
+ @echo 'cd "$${DATADIR}/openra"' >> openra
+ @echo 'exec mono OpenRA.Game.exe "$$@"' >> openra
+
++ @$(INSTALL_DIR) "$(BIN_INSTALL_DIR)"
++ @$(INSTALL_PROGRAM) -m +rx openra "$(BIN_INSTALL_DIR)"
++
++ @-$(RM) openra
++
++install-tools: tools
++ @-echo "Installing OpenRA tools to $(DATA_INSTALL_DIR)"
++ @$(INSTALL_DIR) "$(DATA_INSTALL_DIR)"
++ @$(INSTALL_PROGRAM) $(foreach prog,$(TOOLS),$($(prog)_TARGET)) "$(DATA_INSTALL_DIR)"
++
+ @echo "#!/bin/sh" > openra-editor
+ @echo 'BINDIR=$$(dirname $$(readlink -f $$0))' >> openra-editor
+ @echo 'ROOTDIR="$${BINDIR%'"$(bindir)"'}"' >> openra-editor
+@@ -280,14 +318,42 @@
+ @echo 'cd "$${DATADIR}/openra"' >> openra-editor
+ @echo 'exec mono OpenRA.Editor.exe "$$@"' >> openra-editor
+
+- @$(INSTALL_PROGRAM) -d $(BIN_INSTALL_DIR)
+- @$(INSTALL_PROGRAM) -m +rx openra $(BIN_INSTALL_DIR)
+- @$(INSTALL_PROGRAM) -m +rx openra-editor $(BIN_INSTALL_DIR)
+-
+- @-rm openra
+- @-rm openra-editor
++ @$(INSTALL_DIR) "$(BIN_INSTALL_DIR)"
++ @$(INSTALL_PROGRAM) -m +rx openra-editor "$(BIN_INSTALL_DIR)"
++
++ @-$(RM) openra-editor
+
+ uninstall:
+- @-rm -r $(INSTALL_DIR)
+- @-rm $(DESTDIR)$(bindir)/openra
+- @-rm $(DESTDIR)$(bindir)/openra-editor
++ @-$(RM_R) "$(DATA_INSTALL_DIR)"
++ @-$(RM_F) "$(BIN_INSTALL_DIR)/openra"
++ @-$(RM_F) "$(BIN_INSTALL_DIR)/openra-editor"
++
++help:
++ @echo to compile, run:
++ @echo \ \ make
++ @echo
++ @echo to compile with development tools, run:
++ @echo \ \ make all
++ @echo
++ @echo to install, run:
++ @echo \ \ make \[prefix=/foo\] \[bindir=/bar/bin\] install
++ @echo
++ @echo to install with development tools, run:
++ @echo \ \ make \[prefix=/foo\] \[bindir=/bar/bin\] install-all
++ @echo
++ @echo to uninstall, run:
++ @echo \ \ make uninstall
++ @echo
++ @echo to start the game, run:
++ @echo \ \ openra
++
++
++
++
++########################### MAKEFILE SETTINGS ##########################
++#
++.DEFAULT_GOAL := default
++
++.SUFFIXES:
++
++.PHONY: core tools package all mods clean distclean dependencies version $(PROGRAMS)
diff --git a/games-strategy/openra/files/openra-20131223-sdl2.patch b/games-strategy/openra/files/openra-20131223-sdl2.patch
new file mode 100644
index 000000000000..acb87e83ae95
--- /dev/null
+++ b/games-strategy/openra/files/openra-20131223-sdl2.patch
@@ -0,0 +1,15 @@
+From: Julian Ospald <hasufell@gentoo.org>
+Date: Tue Dec 24 21:10:12 UTC 2013
+Subject: fix engine detection
+
+--- a/OpenRA.Game/GameRules/Settings.cs
++++ b/OpenRA.Game/GameRules/Settings.cs
+@@ -83,7 +83,7 @@
+
+ public class GraphicSettings
+ {
+- public string Renderer = "Gl";
++ public string Renderer = "Sdl2";
+ public WindowMode Mode = WindowMode.PseudoFullscreen;
+ public int2 FullscreenSize = new int2(0,0);
+ public int2 WindowedSize = new int2(1024, 768);