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
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')
-rw-r--r--games-strategy/openra/Manifest6
-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
-rw-r--r--games-strategy/openra/metadata.xml21
-rw-r--r--games-strategy/openra/openra-20120630.ebuild90
-rw-r--r--games-strategy/openra/openra-20130514-r1.ebuild97
-rw-r--r--games-strategy/openra/openra-20131223-r1.ebuild93
-rw-r--r--games-strategy/openra/openra-20140608.ebuild96
-rw-r--r--games-strategy/openra/openra-20140722.ebuild96
-rw-r--r--games-strategy/openra/openra-20141029.ebuild96
12 files changed, 1121 insertions, 0 deletions
diff --git a/games-strategy/openra/Manifest b/games-strategy/openra/Manifest
new file mode 100644
index 000000000000..e6a6a9f584c6
--- /dev/null
+++ b/games-strategy/openra/Manifest
@@ -0,0 +1,6 @@
+DIST openra-20120630.tar.gz 10330304 SHA256 f95b9d41ea4b4094ea61519f6fb0185fa242af156e2ec26dc1f2d55197470a3c SHA512 ab5996a3f48d8be227edc029d3fa7948a80756a64bca65d1936c3f4480ef5258cb62365d079cc28ba2be59796db91326c4f8c8d500ea4d2bbf3a8439d783fceb WHIRLPOOL 390b5fa57ef322e6204a23006fc3a7755178d28e115fd52fa4ca5b46ecf58f8df61b44a90ba2fe143a7fadd0be42aaf3488c3b938eaea11171636b562dfe344d
+DIST openra-20130514.tar.gz 12592295 SHA256 0912303c7a02cf3907f618405c3605c56bcf30f053dcbbd110aba7dbad012210 SHA512 a9efddffb74b215cc9f5319f6b4613aa23116d328226c0cb428e8d2be97b03dfe45024c532c34e91d959434700a6170faa91a56b324aa2bfe1f1ce7ce96d46c4 WHIRLPOOL d91b911b76a7e3f6286f50d4d33beb6a7cb3e0035ef8b3331e6033e2487a13be8e8aac70fde30b7cbc139b71bd8bf5259a97ce0a642fcb386a3e5136223322ea
+DIST openra-20131223.tar.gz 10770453 SHA256 408943991ffbba3ac1269cdb88c6080bfd4aa1a7abd3e27b8489294f7e94d541 SHA512 11376994c7c337989fda8eb4daeffc8a2a4ce2db5818d52c905bdf0eb861b330e27b3cc5f4dbb2ab621f0d324dc2daea6bcaeab43d923530410c10ce7aad87ab WHIRLPOOL 5d8b02fdbfe5e5876a1f111794e40df20c1fcd79c2106408bd14b6155a130d128396bd3e5f6ebc7c81000b53f9ac8b9a16e5e5dcbe52a20fd9f5ce48cfacf0ab
+DIST openra-20140608.tar.gz 13536365 SHA256 cacfc1d96f856e63516263922e2c669e549358477d286f33f0828b0815502f96 SHA512 c13ea559b026a308eea6d1190633e25abee6f8272d23f97bf5edb02dfa82d1a65acea2927bf5e1090ab42cc260613aa9612cce4f118f4bbacd254b6cd5f070a6 WHIRLPOOL 4f5b9c8a5477eada39bc920d4d6f3271acc0dfb35f55d6a75509fd2e19570fad571aab45aa74a5addcb8f1f7a3d0c172f7aa1607804963dc510d52cd51b1bd48
+DIST openra-20140722.tar.gz 13894070 SHA256 55dbfdd2ab11f22d9618c15d874f4ab381185dd99d830f03982fc284c71b9dd4 SHA512 d85345057da1b1dc02a47b5923b0bd28d57713d0e8b180aee113d956559850751f0b8c4a900d0802b2f1992039d3b6a55f51d4a64392b7ba554f5f1fe3ad1fda WHIRLPOOL 6ee575d74b2fdc83bd7ad3c5f75d3bde45490bc398fb22a7981794b3bce65c18200d3cd6252eb4a8f9af81bc9126fb5a99f260feaf5f23e4833147dfed3387dc
+DIST openra-20141029.tar.gz 15340674 SHA256 4c3f8224a7ad9d3cb78c3ce2696850246ba0d9703cbd91bf5a42806b09c26a36 SHA512 44594ec3c3a590ae29b0291fdf2292c72ba920dff7892cc269e729a161505c4bc0c5c682bf3c6d3cabb0cdebfa3cac5975eeeeec3f5a673e948ed28132c4a313 WHIRLPOOL 39e4585500c9963b02e42d62829bbc258d83b0050e56f56a90da8292d0c31b0c2d5d68c8eefb8bba22ac1dc719671cee7b7ffe9909bbd9d4d146982108c6e530
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);
diff --git a/games-strategy/openra/metadata.xml b/games-strategy/openra/metadata.xml
new file mode 100644
index 000000000000..18bf86dc0dbd
--- /dev/null
+++ b/games-strategy/openra/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <maintainer>
+ <email>hasufell@gentoo.org</email>
+ <name>Julian Ospald</name>
+ <description>Maintainer, assign bugs to him</description>
+ </maintainer>
+ <upstream>
+ <changelog>http://openra.res0l.net/news/</changelog>
+ <doc lang="en">https://github.com/OpenRA/OpenRA/wiki</doc>
+ <bugs-to>https://github.com/OpenRA/OpenRA/issues</bugs-to>
+ <remote-id type="github">OpenRA/OpenRA</remote-id>
+ </upstream>
+ <use>
+ <flag name="cg">NVIDIA toolkit plugin</flag>
+ <flag name="tools">Install some development tools
+ such as editor.</flag>
+ </use>
+</pkgmetadata>
diff --git a/games-strategy/openra/openra-20120630.ebuild b/games-strategy/openra/openra-20120630.ebuild
new file mode 100644
index 000000000000..9d469464e71b
--- /dev/null
+++ b/games-strategy/openra/openra-20120630.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils mono gnome2-utils vcs-snapshot games
+
+DESCRIPTION="A free RTS engine supporting games like Command & Conquer and Red Alert"
+HOMEPAGE="http://open-ra.org/"
+SRC_URI="http://github.com/OpenRA/OpenRA/tarball/release-${PV} -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="cg"
+
+DEPEND="dev-dotnet/libgdiplus
+ dev-lang/mono
+ media-libs/freetype:2[X]
+ media-libs/libsdl[X,opengl,video]
+ media-libs/openal
+ virtual/jpeg
+ virtual/opengl
+ cg? ( >=media-gfx/nvidia-cg-toolkit-2.1.0017 )"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ vcs-snapshot_src_unpack
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-sound.patch
+
+ # register game-version
+ sed \
+ -e "/Version/s/{DEV_VERSION}/release-${PV}/" \
+ -i mods/{ra,cnc}/mod.yaml || die
+}
+
+src_compile() {
+ emake all
+}
+
+src_install() {
+ emake \
+ datadir="${GAMES_DATADIR}" \
+ bindir="${GAMES_BINDIR}" \
+ libdir="$(games_get_libdir)/${PN}" \
+ DESTDIR="${D}" \
+ install
+
+ # icons
+ insinto /usr/share/icons/
+ doins -r packaging/linux/hicolor
+
+ # desktop entries
+ local myrenderer=$(usex cg Cg Gl)
+ make_desktop_entry "${PN} Game.Mods=cnc Graphics.Renderer=${myrenderer}" \
+ "OpenRA CNC" ${PN}
+ make_desktop_entry "${PN} Game.Mods=ra Graphics.Renderer=${myrenderer}" \
+ "OpenRA RA" ${PN}
+ make_desktop_entry "${PN}-editor" "OpenRA Map Editor" ${PN}
+
+ dodoc "${FILESDIR}"/README.gentoo README HACKING CHANGELOG
+
+ # file permissions
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ gnome2_icon_cache_update
+
+ if ! use cg ; then
+ elog "If you have problems starting the game consider switching"
+ elog "to Graphics.Renderer=Cg in openra*.desktop or manually"
+ elog "run:"
+ elog "${PN} Game.Mods=\$mod Graphics.Renderer=Cg"
+ fi
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
diff --git a/games-strategy/openra/openra-20130514-r1.ebuild b/games-strategy/openra/openra-20130514-r1.ebuild
new file mode 100644
index 000000000000..198236e3262c
--- /dev/null
+++ b/games-strategy/openra/openra-20130514-r1.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils mono-env gnome2-utils vcs-snapshot games
+
+DESCRIPTION="A free RTS engine supporting games like Command & Conquer and Red Alert"
+HOMEPAGE="http://open-ra.org/"
+SRC_URI="https://github.com/OpenRA/OpenRA/tarball/release-${PV} -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="cg tools"
+
+DEPEND="dev-dotnet/libgdiplus
+ dev-lang/mono
+ media-libs/freetype:2[X]
+ media-libs/libsdl[X,opengl,video]
+ media-libs/openal
+ virtual/jpeg
+ virtual/opengl
+ cg? ( >=media-gfx/nvidia-cg-toolkit-2.1.0017 )"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+ mono-env_pkg_setup
+ games_pkg_setup
+}
+
+src_unpack() {
+ vcs-snapshot_src_unpack
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-makefile.patch
+
+ # register game-version
+ sed \
+ -e "/Version/s/{DEV_VERSION}/release-${PV}/" \
+ -i mods/{ra,cnc,d2k}/mod.yaml || die
+}
+
+src_compile() {
+ emake $(usex tools "all" "")
+}
+
+src_install() {
+ emake \
+ datadir="${GAMES_DATADIR}" \
+ bindir="${GAMES_BINDIR}" \
+ libdir="$(games_get_libdir)/${PN}" \
+ DESTDIR="${D}" \
+ $(usex tools "install-all" "install")
+
+ # icons
+ insinto /usr/share/icons/
+ doins -r packaging/linux/hicolor
+
+ # desktop entries
+ local myrenderer=$(usex cg Cg Gl)
+ make_desktop_entry "${PN} Game.Mods=cnc Graphics.Renderer=${myrenderer}" \
+ "OpenRA CNC" ${PN}
+ make_desktop_entry "${PN} Game.Mods=ra Graphics.Renderer=${myrenderer}" \
+ "OpenRA RA" ${PN}
+ make_desktop_entry "${PN} Game.Mods=d2k Graphics.Renderer=${myrenderer}" \
+ "OpenRA Dune2k" ${PN}
+ make_desktop_entry "${PN}-editor" "OpenRA Map Editor" ${PN}
+
+ dodoc "${FILESDIR}"/README.gentoo README.md HACKING CHANGELOG
+
+ # file permissions
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ gnome2_icon_cache_update
+
+ if ! use cg ; then
+ elog "If you have problems starting the game consider switching"
+ elog "to Graphics.Renderer=Cg in openra*.desktop or manually"
+ elog "run:"
+ elog "${PN} Game.Mods=\$mod Graphics.Renderer=Cg"
+ fi
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
diff --git a/games-strategy/openra/openra-20131223-r1.ebuild b/games-strategy/openra/openra-20131223-r1.ebuild
new file mode 100644
index 000000000000..a6d7ef30111a
--- /dev/null
+++ b/games-strategy/openra/openra-20131223-r1.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils mono-env gnome2-utils vcs-snapshot games
+
+DESCRIPTION="A free RTS engine supporting games like Command & Conquer and Red Alert"
+HOMEPAGE="http://open-ra.org/"
+SRC_URI="https://github.com/OpenRA/OpenRA/tarball/release-${PV} -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="tools"
+
+DEPEND="dev-dotnet/libgdiplus
+ dev-lang/mono
+ media-libs/freetype:2[X]
+ || (
+ media-libs/libsdl[X,opengl,video]
+ media-libs/libsdl2[X,opengl,video]
+ )
+ media-libs/openal
+ virtual/jpeg
+ virtual/opengl"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+ mono-env_pkg_setup
+ games_pkg_setup
+}
+
+src_unpack() {
+ vcs-snapshot_src_unpack
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-sdl2.patch
+ # register game-version
+ sed \
+ -e "/Version/s/{DEV_VERSION}/release-${PV}/" \
+ -i mods/{ra,cnc,d2k}/mod.yaml || die
+}
+
+src_compile() {
+ emake $(usex tools "all" "")
+}
+
+src_install() {
+ emake \
+ bindir="${GAMES_BINDIR}" \
+ libexecdir="$(games_get_libdir)" \
+ DESTDIR="${D}" \
+ $(usex tools "install-all" "install")
+
+ # icons
+ insinto /usr/share/icons/
+ doins -r packaging/linux/hicolor
+
+ # desktop entries
+ make_desktop_entry "${PN} Game.Mods=cnc" "OpenRA CNC" ${PN}
+ make_desktop_entry "${PN} Game.Mods=ra" "OpenRA RA" ${PN}
+ make_desktop_entry "${PN} Game.Mods=d2k" "OpenRA Dune2k" ${PN}
+ make_desktop_entry "${PN}-editor" "OpenRA Map Editor" ${PN}
+
+ dodoc "${FILESDIR}"/README.gentoo README.md CHANGELOG
+
+ # file permissions
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ gnome2_icon_cache_update
+
+ elog "optional dependencies:"
+ elog " media-gfx/nvidia-cg-toolkit (fallback renderer if OpenGL fails)"
+ elog
+ elog "you might also want to emerge media-libs/libsdl2 specifically,"
+ elog "because ${PN} supports both sdl1.2 and sdl2, but the ebuild only"
+ elog "pulls in one of them, prefering sdl1.2."
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
diff --git a/games-strategy/openra/openra-20140608.ebuild b/games-strategy/openra/openra-20140608.ebuild
new file mode 100644
index 000000000000..dec5437088ba
--- /dev/null
+++ b/games-strategy/openra/openra-20140608.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils mono-env gnome2-utils vcs-snapshot games
+
+DESCRIPTION="A free RTS engine supporting games like Command & Conquer and Red Alert"
+HOMEPAGE="http://open-ra.org/"
+SRC_URI="https://github.com/OpenRA/OpenRA/tarball/release-${PV} -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="tools"
+
+QA_PREBUILT="$(games_get_libdir)/openra/liblua*"
+
+DEPEND="dev-dotnet/libgdiplus
+ dev-lang/mono
+ media-libs/freetype:2[X]
+ media-libs/libsdl2[X,opengl,video]
+ media-libs/openal
+ virtual/jpeg
+ virtual/opengl"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+ mono-env_pkg_setup
+ games_pkg_setup
+}
+
+src_unpack() {
+ vcs-snapshot_src_unpack
+}
+
+src_configure() { :; }
+
+src_prepare() {
+ # register game-version
+ sed \
+ -e "/Version/s/{DEV_VERSION}/release-${PV}/" \
+ -i mods/{ra,cnc,d2k}/mod.yaml || die
+}
+
+src_compile() {
+ emake $(usex tools "all" "")
+ emake native-dependencies
+ emake docs
+}
+
+src_install() {
+ emake \
+ datadir="/usr/share" \
+ bindir="${GAMES_BINDIR}" \
+ libdir="$(games_get_libdir)" \
+ DESTDIR="${D}" \
+ $(usex tools "install-all" "install") install-linux-scripts
+
+ exeinto "$(games_get_libdir)/openra"
+ doexe Eluant.dll.config liblua$(usex amd64 "64" "32")*
+
+ # icons
+ insinto /usr/share/icons/
+ doins -r packaging/linux/hicolor
+
+ # desktop entries
+ make_desktop_entry "${PN} Game.Mods=cnc" "OpenRA CNC" ${PN}
+ make_desktop_entry "${PN} Game.Mods=ra" "OpenRA RA" ${PN}
+ make_desktop_entry "${PN} Game.Mods=d2k" "OpenRA Dune2k" ${PN}
+ make_desktop_entry "${PN}-editor" "OpenRA Map Editor" ${PN}
+
+ dodoc "${FILESDIR}"/README.gentoo README.md CONTRIBUTING.md AUTHORS \
+ DOCUMENTATION.md Lua-API.md
+
+ # file permissions
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ gnome2_icon_cache_update
+
+ elog "optional dependencies:"
+ elog " media-gfx/nvidia-cg-toolkit (fallback renderer if OpenGL fails)"
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
diff --git a/games-strategy/openra/openra-20140722.ebuild b/games-strategy/openra/openra-20140722.ebuild
new file mode 100644
index 000000000000..deca771a8c0f
--- /dev/null
+++ b/games-strategy/openra/openra-20140722.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils mono-env gnome2-utils vcs-snapshot games
+
+DESCRIPTION="A free RTS engine supporting games like Command & Conquer and Red Alert"
+HOMEPAGE="http://open-ra.org/"
+SRC_URI="https://github.com/OpenRA/OpenRA/tarball/release-${PV} -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="tools"
+
+QA_PREBUILT="$(games_get_libdir)/openra/liblua*"
+
+DEPEND="dev-dotnet/libgdiplus
+ dev-lang/mono
+ media-libs/freetype:2[X]
+ media-libs/libsdl2[X,opengl,video]
+ media-libs/openal
+ virtual/jpeg
+ virtual/opengl"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+ mono-env_pkg_setup
+ games_pkg_setup
+}
+
+src_unpack() {
+ vcs-snapshot_src_unpack
+}
+
+src_configure() { :; }
+
+src_prepare() {
+ # register game-version
+ sed \
+ -e "/Version/s/{DEV_VERSION}/release-${PV}/" \
+ -i mods/{ra,cnc,d2k}/mod.yaml || die
+}
+
+src_compile() {
+ emake $(usex tools "all" "")
+ emake native-dependencies
+ emake docs
+}
+
+src_install() {
+ emake \
+ datadir="/usr/share" \
+ bindir="${GAMES_BINDIR}" \
+ libdir="$(games_get_libdir)" \
+ DESTDIR="${D}" \
+ $(usex tools "install-all" "install") install-linux-scripts
+
+ exeinto "$(games_get_libdir)/openra"
+ doexe Eluant.dll.config liblua$(usex amd64 "64" "32")*
+
+ # icons
+ insinto /usr/share/icons/
+ doins -r packaging/linux/hicolor
+
+ # desktop entries
+ make_desktop_entry "${PN} Game.Mods=cnc" "OpenRA CNC" ${PN}
+ make_desktop_entry "${PN} Game.Mods=ra" "OpenRA RA" ${PN}
+ make_desktop_entry "${PN} Game.Mods=d2k" "OpenRA Dune2k" ${PN}
+ make_desktop_entry "${PN}-editor" "OpenRA Map Editor" ${PN}
+
+ dodoc "${FILESDIR}"/README.gentoo README.md CONTRIBUTING.md AUTHORS \
+ DOCUMENTATION.md Lua-API.md
+
+ # file permissions
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ gnome2_icon_cache_update
+
+ elog "optional dependencies:"
+ elog " media-gfx/nvidia-cg-toolkit (fallback renderer if OpenGL fails)"
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}
diff --git a/games-strategy/openra/openra-20141029.ebuild b/games-strategy/openra/openra-20141029.ebuild
new file mode 100644
index 000000000000..dec5437088ba
--- /dev/null
+++ b/games-strategy/openra/openra-20141029.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils mono-env gnome2-utils vcs-snapshot games
+
+DESCRIPTION="A free RTS engine supporting games like Command & Conquer and Red Alert"
+HOMEPAGE="http://open-ra.org/"
+SRC_URI="https://github.com/OpenRA/OpenRA/tarball/release-${PV} -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="tools"
+
+QA_PREBUILT="$(games_get_libdir)/openra/liblua*"
+
+DEPEND="dev-dotnet/libgdiplus
+ dev-lang/mono
+ media-libs/freetype:2[X]
+ media-libs/libsdl2[X,opengl,video]
+ media-libs/openal
+ virtual/jpeg
+ virtual/opengl"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+ mono-env_pkg_setup
+ games_pkg_setup
+}
+
+src_unpack() {
+ vcs-snapshot_src_unpack
+}
+
+src_configure() { :; }
+
+src_prepare() {
+ # register game-version
+ sed \
+ -e "/Version/s/{DEV_VERSION}/release-${PV}/" \
+ -i mods/{ra,cnc,d2k}/mod.yaml || die
+}
+
+src_compile() {
+ emake $(usex tools "all" "")
+ emake native-dependencies
+ emake docs
+}
+
+src_install() {
+ emake \
+ datadir="/usr/share" \
+ bindir="${GAMES_BINDIR}" \
+ libdir="$(games_get_libdir)" \
+ DESTDIR="${D}" \
+ $(usex tools "install-all" "install") install-linux-scripts
+
+ exeinto "$(games_get_libdir)/openra"
+ doexe Eluant.dll.config liblua$(usex amd64 "64" "32")*
+
+ # icons
+ insinto /usr/share/icons/
+ doins -r packaging/linux/hicolor
+
+ # desktop entries
+ make_desktop_entry "${PN} Game.Mods=cnc" "OpenRA CNC" ${PN}
+ make_desktop_entry "${PN} Game.Mods=ra" "OpenRA RA" ${PN}
+ make_desktop_entry "${PN} Game.Mods=d2k" "OpenRA Dune2k" ${PN}
+ make_desktop_entry "${PN}-editor" "OpenRA Map Editor" ${PN}
+
+ dodoc "${FILESDIR}"/README.gentoo README.md CONTRIBUTING.md AUTHORS \
+ DOCUMENTATION.md Lua-API.md
+
+ # file permissions
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ gnome2_icon_cache_update
+
+ elog "optional dependencies:"
+ elog " media-gfx/nvidia-cg-toolkit (fallback renderer if OpenGL fails)"
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}