summaryrefslogtreecommitdiff
path: root/games-strategy/0ad
diff options
context:
space:
mode:
Diffstat (limited to 'games-strategy/0ad')
-rw-r--r--games-strategy/0ad/0ad-11339.ebuild150
-rw-r--r--games-strategy/0ad/0ad-11863.ebuild145
-rw-r--r--games-strategy/0ad/0ad-99999.ebuild115
-rw-r--r--games-strategy/0ad/Manifest11
-rw-r--r--games-strategy/0ad/files/11339_alpha_disable_nvtt.patch0
-rw-r--r--games-strategy/0ad/files/premake-archless.patch36
-rw-r--r--games-strategy/0ad/files/premake-script-archless.patch31
-rw-r--r--games-strategy/0ad/files/r11339_noCUDAdep.diff366
8 files changed, 854 insertions, 0 deletions
diff --git a/games-strategy/0ad/0ad-11339.ebuild b/games-strategy/0ad/0ad-11339.ebuild
new file mode 100644
index 00000000..8ca568da
--- /dev/null
+++ b/games-strategy/0ad/0ad-11339.ebuild
@@ -0,0 +1,150 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI="3"
+
+inherit eutils wxwidgets games
+
+MY_P="0ad-r${PV}-alpha"
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="0 A.D. is a free, real-time strategy game currently under development by Wildfire Games."
+HOMEPAGE="http://wildfiregames.com/0ad/"
+SRC_URI="mirror://sourceforge/zero-ad/${MY_P}-unix-build.tar.xz
+ mirror://sourceforge/zero-ad/${MY_P}-unix-data.tar.xz"
+
+LICENSE="GPL-2 CCPL-Attribution-ShareAlike-3.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug editor nvtt pch test fam"
+
+RDEPEND=">=dev-lang/spidermonkey-1.8.5
+ dev-libs/boost
+ dev-libs/libxml2
+ media-libs/devil
+ media-libs/openal
+ media-libs/libogg
+ media-libs/libpng
+ media-libs/libsdl[X,joystick]
+ media-libs/libvorbis
+ net-libs/enet:1.3
+ net-misc/curl
+ sys-libs/zlib
+ virtual/jpeg
+ virtual/opengl
+ fam? ( virtual/fam )
+ editor? ( x11-libs/wxGTK:2.8 )
+ nvtt? ( dev-util/nvidia-texture-tools )"
+
+DEPEND="${RDEPEND}
+ app-arch/zip
+ dev-lang/nasm
+ dev-util/cmake"
+
+RESTRICT="strip mirror"
+
+dir=${GAMES_PREFIX_OPT}/${PN}
+
+pkg_setup() {
+ games_pkg_setup
+ if use editor ; then
+ WX_GTK_VER=2.8 need-wxwidgets unicode
+ fi
+}
+
+src_prepare() {
+ cd "${S}" || die
+ epatch "${FILESDIR}"/r11339_noCUDAdep.diff
+}
+
+src_compile() {
+ UPDATE_ARGS="--with-system-enet --with-system-mozjs185"
+
+ if ! use pch ; then
+ UPDATE_ARGS="${UPDATE_ARGS} --without-pch"
+ fi
+
+ if ! use fam ; then
+ UPDATE_ARGS="${UPDATE_ARGS} --without-fam"
+ fi
+
+ if ! use editor ; then
+ UPDATE_ARGS="${UPDATE_ARGS} --disable-atlas"
+ fi
+
+ if use nvtt ; then
+ UPDATE_ARGS="${UPDATE_ARGS} --with-system-nvtt"
+ else
+ UPDATE_ARGS="${UPDATE_ARGS} --without-nvtt"
+ fi
+
+ cd "${S}/build/workspaces"
+ einfo "Running update-workspaces.sh with ${UPDATE_ARGS}"
+ ./update-workspaces.sh ${UPDATE_ARGS} || die "update-workspaces.sh failed"
+ cd gcc
+
+ TARGETS="pyrogenesis Collada"
+ if use test ; then
+ TARGETS="${TARGETS} test"
+ fi
+ if use editor ; then
+ TARGETS="${TARGETS} AtlasUI"
+ fi
+ if use debug ; then
+ CONFIG=Debug
+ else
+ CONFIG=Release
+ fi
+ CONFIG=${CONFIG} emake ${TARGETS} || die "Can't build"
+}
+
+src_test() {
+ cd "${S}/binaries/system"
+ if use debug ; then
+ ./test_dbg || die "Tests failed"
+ else
+ ./test || die "Tests failed"
+ fi
+}
+
+src_install() {
+ cd "${S}"/binaries
+ insinto "${dir}"
+ doins -r data || die "doins -r failed"
+
+ insinto "${dir}"/system
+
+ #we install build-in nvtt
+ if use !nvtt ; then
+ doins "${S}"/binaries/system/libnvcore.so || die "doins failed"
+ doins "${S}"/binaries/system/libnvimage.so || die "doins failed"
+ doins "${S}"/binaries/system/libnvmath.so || die "doins failed"
+ doins "${S}"/binaries/system/libnvtt.so || die "doins failed"
+ fi
+
+ if use debug ; then
+# doins "${S}"/binaries/system/libmozjs185-ps-debug.so.1.0 || die "doins failed"
+ doins "${S}"/binaries/system/libCollada_dbg.so || die "doins failed"
+ if use editor ; then
+ doins "${S}"/binaries/system/libAtlasUI_dbg.so || die "doins failed"
+ fi
+ EXE_NAME=pyrogenesis_dbg
+ else
+# doins "${S}"/binaries/system/libmozjs185-ps-release.so.1.0 || die "doins failed"
+ doins "${S}"/binaries/system/libCollada.so || die "doins failed"
+ if use editor ; then
+ doins "${S}"/binaries/system/libAtlasUI.so || die "doins failed"
+ fi
+ EXE_NAME=pyrogenesis
+ fi
+
+ exeinto "${dir}"/system
+ doexe "${S}"/binaries/system/${EXE_NAME} || die "doexe failed"
+
+ games_make_wrapper ${PN} ./system/${EXE_NAME} ${dir}
+ doicon "${S}"/build/resources/0ad.png
+ make_desktop_entry "${dir}"/system/${EXE_NAME} "0 A.D."
+
+ prepgamesdirs
+}
diff --git a/games-strategy/0ad/0ad-11863.ebuild b/games-strategy/0ad/0ad-11863.ebuild
new file mode 100644
index 00000000..a0f567c1
--- /dev/null
+++ b/games-strategy/0ad/0ad-11863.ebuild
@@ -0,0 +1,145 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI="3"
+
+inherit eutils wxwidgets games
+
+MY_P="0ad-r${PV}-alpha"
+S="${WORKDIR}/${MY_P}"
+
+DESCRIPTION="0 A.D. is a free, real-time strategy game currently under development by Wildfire Games."
+HOMEPAGE="http://wildfiregames.com/0ad/"
+SRC_URI="mirror://sourceforge/zero-ad/${MY_P}-unix-build.tar.xz
+ mirror://sourceforge/zero-ad/${MY_P}-unix-data.tar.xz"
+
+LICENSE="GPL-2 CCPL-Attribution-ShareAlike-3.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug editor nvtt pch test fam"
+
+RDEPEND=">=dev-lang/spidermonkey-1.8.5
+ dev-libs/boost
+ dev-libs/libxml2
+ media-libs/devil
+ media-libs/openal
+ media-libs/libogg
+ media-libs/libpng
+ media-libs/libsdl[X,joystick]
+ media-libs/libvorbis
+ net-libs/enet:1.3
+ net-misc/curl
+ sys-libs/zlib
+ virtual/jpeg
+ virtual/opengl
+ fam? ( virtual/fam )
+ editor? ( x11-libs/wxGTK:2.8 )
+ nvtt? ( dev-util/nvidia-texture-tools )"
+
+DEPEND="${RDEPEND}
+ app-arch/zip
+ dev-lang/nasm
+ dev-util/cmake"
+
+RESTRICT="strip mirror"
+
+dir=${GAMES_PREFIX_OPT}/${PN}
+
+pkg_setup() {
+ games_pkg_setup
+ if use editor ; then
+ WX_GTK_VER=2.8 need-wxwidgets unicode
+ fi
+}
+
+src_compile() {
+ UPDATE_ARGS="--with-system-enet --with-system-mozjs185"
+
+ if ! use pch ; then
+ UPDATE_ARGS="${UPDATE_ARGS} --without-pch"
+ fi
+
+ if ! use fam ; then
+ UPDATE_ARGS="${UPDATE_ARGS} --without-fam"
+ fi
+
+ if ! use editor ; then
+ UPDATE_ARGS="${UPDATE_ARGS} --disable-atlas"
+ fi
+
+ if use nvtt ; then
+ UPDATE_ARGS="${UPDATE_ARGS} --with-system-nvtt"
+ else
+ UPDATE_ARGS="${UPDATE_ARGS} --without-nvtt"
+ fi
+
+ insinto "${S}/build/workspaces"
+ einfo "Running update-workspaces.sh with ${UPDATE_ARGS}"
+ ./update-workspaces.sh ${UPDATE_ARGS} || die "update-workspaces.sh failed"
+ insinto gcc
+
+ TARGETS="pyrogenesis Collada"
+ if use test ; then
+ TARGETS="${TARGETS} test"
+ fi
+ if use editor ; then
+ TARGETS="${TARGETS} AtlasUI"
+ fi
+ if use debug ; then
+ CONFIG=Debug
+ else
+ CONFIG=Release
+ fi
+ CONFIG=${CONFIG} emake ${TARGETS} || die "Can't build"
+}
+
+src_test() {
+ insinto "${S}/binaries/system"
+ if use debug ; then
+ ./test_dbg || die "Tests failed"
+ else
+ ./test || die "Tests failed"
+ fi
+}
+
+src_install() {
+ insinto "${S}"/binaries
+ insinto "${dir}"
+ doins -r data || die "doins -r failed"
+
+ insinto "${dir}"/system
+
+ #we install build-in nvtt
+ if use !nvtt ; then
+ doins "${S}"/binaries/system/libnvcore.so || die "doins failed"
+ doins "${S}"/binaries/system/libnvimage.so || die "doins failed"
+ doins "${S}"/binaries/system/libnvmath.so || die "doins failed"
+ doins "${S}"/binaries/system/libnvtt.so || die "doins failed"
+ fi
+
+ if use debug ; then
+# doins "${S}"/binaries/system/libmozjs185-ps-debug.so.1.0 || die "doins failed"
+ doins "${S}"/binaries/system/libCollada_dbg.so || die "doins failed"
+ if use editor ; then
+ doins "${S}"/binaries/system/libAtlasUI_dbg.so || die "doins failed"
+ fi
+ EXE_NAME=pyrogenesis_dbg
+ else
+# doins "${S}"/binaries/system/libmozjs185-ps-release.so.1.0 || die "doins failed"
+ doins "${S}"/binaries/system/libCollada.so || die "doins failed"
+ if use editor ; then
+ doins "${S}"/binaries/system/libAtlasUI.so || die "doins failed"
+ fi
+ EXE_NAME=pyrogenesis
+ fi
+
+ exeinto "${dir}"/system
+ doexe "${S}"/binaries/system/${EXE_NAME} || die "doexe failed"
+
+ games_make_wrapper ${PN} ./system/${EXE_NAME} ${dir}
+ doicon "${S}"/build/resources/0ad.png
+ make_desktop_entry "${dir}"/system/${EXE_NAME} "0 A.D."
+
+ prepgamesdirs
+}
diff --git a/games-strategy/0ad/0ad-99999.ebuild b/games-strategy/0ad/0ad-99999.ebuild
new file mode 100644
index 00000000..aaa10c2e
--- /dev/null
+++ b/games-strategy/0ad/0ad-99999.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=3
+
+WX_GTK_VER="2.8"
+
+inherit eutils subversion wxwidgets games
+
+MY_PV="r${PV%_*}-alpha"
+MY_P=${PN}-${MY_PV}
+
+DESCRIPTION="A free, real-time strategy game"
+HOMEPAGE="http://wildfiregames.com/0ad/"
+ESVN_REPO_URI="http://svn.wildfiregames.com/public/ps/trunk"
+
+LICENSE="GPL-2 LGPL-2.1 MIT CCPL-Attribution-ShareAlike-3.0 as-is"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+audio +editor fam +pch test"
+
+RDEPEND="
+ ~dev-lang/spidermonkey-1.8.5
+ dev-libs/boost
+ dev-libs/libxml2
+ media-gfx/nvidia-texture-tools
+ !games-strategy/0ad-data
+ media-libs/libpng:0
+ media-libs/libsdl[X,opengl,video]
+ net-libs/enet:1.3
+ net-misc/curl
+ sys-libs/zlib
+ virtual/jpeg
+ virtual/opengl
+ audio? ( media-libs/libogg
+ media-libs/libvorbis
+ media-libs/openal )
+ editor? ( x11-libs/wxGTK:$WX_GTK_VER[X,opengl] )
+ fam? ( virtual/fam )
+ "
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ test? ( dev-lang/perl )"
+
+S=${WORKDIR}/trunk
+
+pkg_setup() {
+ games_pkg_setup
+
+ if ! use pch ; then
+ eerror "pch useflag is potentially broken"
+ eerror "see http://trac.wildfiregames.com/ticket/1313"
+ fi
+}
+
+src_unpack() {
+ subversion_src_unpack
+}
+
+src_configure() {
+ cd build/workspaces || die
+
+ # custom configure script
+ local myconf
+ use fam || myconf="--without-fam"
+ use pch || myconf="${myconf} --without-pch"
+ use test || myconf="${myconf} --without-tests"
+ use audio || myconf="${myconf} --without-audio"
+
+ # don't use bundled sources
+ ./update-workspaces.sh \
+ --with-system-nvtt \
+ --with-system-enet \
+ --with-system-mozjs185 \
+ $(use_enable editor atlas) \
+ --bindir="${GAMES_BINDIR}" \
+ --libdir="$(games_get_libdir)"/${PN} \
+ --datadir="${GAMES_DATADIR}"/${PN} \
+ ${myconf} || die
+}
+
+src_compile() {
+ emake -C build/workspaces/gcc verbose=1 || die
+}
+
+src_test() {
+ cd binaries/system || die
+ ./test || die "test phase failed"
+}
+
+src_install() {
+ # data
+ insinto "${GAMES_DATADIR}"/${PN}
+ doins -r binaries/data/* || die
+
+ # bin
+ dogamesbin binaries/system/pyrogenesis || die
+
+ # libs
+ exeinto "$(games_get_libdir)"/${PN}
+ doexe binaries/system/libCollada.so || die
+ if use editor ; then
+ doexe binaries/system/libAtlasUI.so || die
+ fi
+
+ # other
+ dodoc binaries/system/readme.txt || die
+ doicon build/resources/${PN}.png || die
+ games_make_wrapper ${PN} "${GAMES_BINDIR}/pyrogenesis"
+ make_desktop_entry ${PN} ${PN} ${PN}
+
+ # permissions
+ prepgamesdirs
+}
diff --git a/games-strategy/0ad/Manifest b/games-strategy/0ad/Manifest
new file mode 100644
index 00000000..3e05d3e8
--- /dev/null
+++ b/games-strategy/0ad/Manifest
@@ -0,0 +1,11 @@
+AUX 11339_alpha_disable_nvtt.patch 0 SHA256 e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 SHA512 cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e WHIRLPOOL 19fa61d75522a4669b44e39c1d2e1726c530232130d407f89afee0964997f7a73e83be698b288febcf88e3e03c4f0757ea8964e59b63d93708b138cc42a66eb3
+AUX premake-archless.patch 1560 SHA256 85fc1ad2ef098d181f26fd78038ad90f7e1e2e948fe903664747494d129a3083 SHA512 df4cedfa2709b248a257d0634ba2e1013cf517fb5e46cb6472a3e87782686a1d8aeb066b23eb3008434fd2108865a5c6dd15fb3964af9074a611ca7202e8d5b1 WHIRLPOOL 78e2b482769ac07c219eec0fe99210cb723b16ae2d414dd5dfe6dde6d874013e8f707c2d16404a0517517ca1754fc1f203e7d2b8d152b25fd5366dc82c959f75
+AUX premake-script-archless.patch 1582 SHA256 0904c211595919bab0367b5e86c218a01b42c96df4b49c47a03c125ed3a2aada SHA512 987c3ee5387e040dc3b1c492e4191fce1532f6b2eae288a15246fdaee8e17d81dbd7cdc524bdcc0036a32bfce11f4d6eae014d05d5dbba148eafbea0627498c8 WHIRLPOOL 0f906f81a139da1aedcf325cfa60c5de00bd76c40bf95b9206350721341fb93a3deb0e681e4900a0c343cc9ebf7ae5e21522b247e0c202bbbd86830467bf4b34
+AUX r11339_noCUDAdep.diff 11782 SHA256 b334acff6a9d122fbaec92bf9146c7fd9c54d0f0babcf36554e6114ec67ac9aa SHA512 bc1cfb546e7bd04a4e8c22dce23a9fba00339eb4e7cdfb16bb9ec304fed5c6347cd79f751d7381a150c778408808b0492ce51130c4fa1ce2231f1d44fa89d524 WHIRLPOOL ef329815d3fd8155c9d26a96d7c05e873737c10b1492cd1d817db4c23dee7118525744f1c3194902054f776a7fac5992d35a2aca22966252f1cf4fe646bf3c4d
+DIST 0ad-r11339-alpha-unix-build.tar.xz 8593664 SHA256 1e69bc02c1af1bfbe30244467761d13e1aaff164fe583d962cc8e13faf4a56cb
+DIST 0ad-r11339-alpha-unix-data.tar.xz 294663484 SHA256 ac4cb17478eed633e1b0c975b052706797628fac399147d6301c4001100170b4
+DIST 0ad-r11863-alpha-unix-build.tar.xz 8657204 SHA256 46c08d380ce098d3d8f577d04d602bb245dfbb7f7da7b1ad009e7a0d4751435f
+DIST 0ad-r11863-alpha-unix-data.tar.xz 310994700 SHA256 76702023402361d27b61eea37034b08e9e19b282e4cdd69954495d2dd087b90a
+EBUILD 0ad-11339.ebuild 3547 SHA256 30a65b31a9e1353c30b3a642f4437f0e4be440de15fd6eb1d2a79959ef279d66 SHA512 cab0a342c5d3c65aaebf282d990e65c6255ed5748ec54e51f87bf05d8cdd73b42e0126021d190e1abb3dece877124dc239dcf17043f34d9969847e247a17b177 WHIRLPOOL da04b4bb99647a8047ca44a901a95e67c940e3cf0979f0937d9acec92ab28b320081158e36356ef4f82383fac92063608a53e3c03059cf99c2b38d733ff80bb4
+EBUILD 0ad-11863.ebuild 3486 SHA256 f4351f00f0b233f368b8792c362156a54ef480ab41ed0772d051a8b49de8e5a7 SHA512 95e82f67d8e51f54cbd7646f74e94076df4860724fa8352ef788d05ad760c13b6755a846355281d2e543a06ee9258bf6c5605df59a76f4941632fd7be6371680 WHIRLPOOL be7ccc427e39bf7a99cbd9fd824b9ed2e534dc364ef935e2d76feea3db34eca3a93dedcbc71120e73df9452cfccdd36ce71d200fd0d0ab45a1b6954e73ac13c4
+EBUILD 0ad-99999.ebuild 2452 SHA256 0162fc58b4c74ec12012ab80289cdd0241238f26384a64b9c7432b443c6dd3b7 SHA512 1033f33deb6783baac775169f76b12a53617ac31454e86e3c4eb7642612f2c0bbe2a92544bba4a016fe6f77d856ecd091f48134387c1286e97f309e708b5584d WHIRLPOOL 46fac08559d6be536455f485916b8864c3150c1387712289ef0f2acdcb2527cee00d27f437c2d58b8a6c1414181d094a3312afd29098398daae68ec44d5f355e
diff --git a/games-strategy/0ad/files/11339_alpha_disable_nvtt.patch b/games-strategy/0ad/files/11339_alpha_disable_nvtt.patch
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/games-strategy/0ad/files/11339_alpha_disable_nvtt.patch
diff --git a/games-strategy/0ad/files/premake-archless.patch b/games-strategy/0ad/files/premake-archless.patch
new file mode 100644
index 00000000..2b87d048
--- /dev/null
+++ b/games-strategy/0ad/files/premake-archless.patch
@@ -0,0 +1,36 @@
+diff -Naur build/premake/premake4.orig/build/gmake.unix/Premake4.make build/premake/premake4/build/gmake.unix/Premake4.make
+--- build/premake/premake4.orig/build/gmake.unix/Premake4.make 2010-11-16 06:29:14.000000000 -0500
++++ build/premake/premake4/build/gmake.unix/Premake4.make 2011-04-18 07:24:59.374986001 -0400
+@@ -26,13 +26,12 @@
+ DEFINES += -DNDEBUG -DLUA_USE_POSIX -DLUA_USE_DLOPEN
+ INCLUDES += -I../../src/host/lua-5.1.4/src
+ CPPFLAGS += -MMD -MP $(DEFINES) $(INCLUDES)
+- CFLAGS += $(CPPFLAGS) $(ARCH) -Wall -Os
+- CXXFLAGS += $(CFLAGS)
+- LDFLAGS += -s -rdynamic
++ CFLAGS += $(CPPFLAGS) -Wall
++ LDFLAGS += -rdynamic
+ LIBS += -lm -ldl
+ RESFLAGS += $(DEFINES) $(INCLUDES)
+ LDDEPS +=
+- LINKCMD = $(CC) -o $(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(ARCH) $(LIBS)
++ LINKCMD = $(CC) -o $(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(LIBS)
+ define PREBUILDCMDS
+ endef
+ define PRELINKCMDS
+@@ -48,13 +47,12 @@
+ DEFINES += -D_DEBUG -DLUA_USE_POSIX -DLUA_USE_DLOPEN
+ INCLUDES += -I../../src/host/lua-5.1.4/src
+ CPPFLAGS += -MMD -MP $(DEFINES) $(INCLUDES)
+- CFLAGS += $(CPPFLAGS) $(ARCH) -Wall -g
+- CXXFLAGS += $(CFLAGS)
++ CFLAGS += $(CPPFLAGS) -Wall -g
+ LDFLAGS += -rdynamic
+ LIBS += -lm -ldl
+ RESFLAGS += $(DEFINES) $(INCLUDES)
+ LDDEPS +=
+- LINKCMD = $(CC) -o $(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(ARCH) $(LIBS)
++ LINKCMD = $(CC) -o $(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(LIBS)
+ define PREBUILDCMDS
+ endef
+ define PRELINKCMDS
diff --git a/games-strategy/0ad/files/premake-script-archless.patch b/games-strategy/0ad/files/premake-script-archless.patch
new file mode 100644
index 00000000..7195feb9
--- /dev/null
+++ b/games-strategy/0ad/files/premake-script-archless.patch
@@ -0,0 +1,31 @@
+--- build/premake/premake4/src/actions/make/make_cpp.lua.orig 2011-12-17 20:59:29.000000000 +0800
++++ build/premake/premake4/src/actions/make/make_cpp.lua 2011-12-25 07:27:40.268759001 +0800
+@@ -248,7 +248,7 @@
+ -- set up precompiled headers
+ _.pchconfig(cfg)
+
+- _p(' CFLAGS += $(CPPFLAGS) $(ARCH) %s', table.concat(table.join(cc.getcflags(cfg), cfg.buildoptions), " "))
++ _p(' CFLAGS += $(CPPFLAGS) %s', table.concat(table.join(cc.getcflags(cfg), cfg.buildoptions), " "))
+ _p(' CXXFLAGS += $(CFLAGS) %s', table.concat(cc.getcxxflags(cfg), " "))
+ _p(' LDFLAGS += %s', table.concat(table.join(cc.getldflags(cfg), cfg.linkoptions, cc.getlibdirflags(cfg)), " "))
+ _p(' LIBS += %s %s', table.concat(cc.getlinkflags(cfg), " "), table.concat(cfg.gnuexternals, " "))
+@@ -272,7 +272,7 @@
+ else
+ lddeps = '-Xlinker --start-group $(LDDEPS) -Xlinker --end-group'
+ end
+- _p(' LINKCMD = $(%s) -o $(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) $(ARCH) %s $(LIBS)',
++ _p(' LINKCMD = $(%s) -o $(TARGET) $(OBJECTS) $(LDFLAGS) $(RESOURCES) %s $(LIBS)',
+ iif(cfg.language == "C", "CC", "CXX"), lddeps)
+ end
+
+--- build/workspaces/update-workspaces.sh.orig 2011-11-15 00:10:41.000000000 +0800
++++ build/workspaces/update-workspaces.sh 2011-12-25 07:30:39.729759000 +0800
+@@ -62,6 +62,8 @@
+ # Now build premake and run it to create the makefiles
+ cd ../premake/premake4
+ make -C build/gmake.unix ${JOBS} || die "Premake build failed"
++./bin/release/premake4 embed
++make -C build/gmake.unix ${JOBS} || die "Premake build failed"
+
+ echo
+
diff --git a/games-strategy/0ad/files/r11339_noCUDAdep.diff b/games-strategy/0ad/files/r11339_noCUDAdep.diff
new file mode 100644
index 00000000..f002c823
--- /dev/null
+++ b/games-strategy/0ad/files/r11339_noCUDAdep.diff
@@ -0,0 +1,366 @@
+Index: /ps/trunk/libraries/nvtt/src/src/nvimage/CMakeLists.txt
+===================================================================
+--- /ps/trunk/libraries/nvtt/src/src/nvimage/CMakeLists.txt (revision 11501)
++++ /ps/trunk/libraries/nvtt/src/src/nvimage/CMakeLists.txt (revision 11502)
+@@ -63,6 +63,6 @@
+
+ INSTALL(TARGETS nvimage
+- RUNTIME DESTINATION bin
+- LIBRARY DESTINATION lib
+- ARCHIVE DESTINATION lib/static)
++ RUNTIME DESTINATION ${BINDIR}
++ LIBRARY DESTINATION ${LIBDIR}
++ ARCHIVE DESTINATION ${LIBDIR})
+
+Index: /ps/trunk/libraries/nvtt/src/src/nvtt/CMakeLists.txt
+===================================================================
+--- /ps/trunk/libraries/nvtt/src/src/nvtt/CMakeLists.txt (revision 11501)
++++ /ps/trunk/libraries/nvtt/src/src/nvtt/CMakeLists.txt (revision 11502)
+@@ -58,7 +58,7 @@
+
+ INSTALL(TARGETS nvtt
+- RUNTIME DESTINATION bin
+- LIBRARY DESTINATION lib
+- ARCHIVE DESTINATION lib/static)
++ RUNTIME DESTINATION ${BINDIR}
++ LIBRARY DESTINATION ${LIBDIR}
++ ARCHIVE DESTINATION ${LIBDIR})
+
+ INSTALL(FILES nvtt.h DESTINATION include/nvtt)
+Index: /ps/trunk/libraries/nvtt/src/src/nvcore/CMakeLists.txt
+===================================================================
+--- /ps/trunk/libraries/nvtt/src/src/nvcore/CMakeLists.txt (revision 11501)
++++ /ps/trunk/libraries/nvtt/src/src/nvcore/CMakeLists.txt (revision 11502)
+@@ -43,5 +43,5 @@
+
+ INSTALL(TARGETS nvcore
+- RUNTIME DESTINATION bin
+- LIBRARY DESTINATION lib
+- ARCHIVE DESTINATION lib/static)
++ RUNTIME DESTINATION ${BINDIR}
++ LIBRARY DESTINATION ${LIBDIR}
++ ARCHIVE DESTINATION ${LIBDIR})
+Index: /ps/trunk/libraries/nvtt/src/src/CMakeLists.txt
+===================================================================
+--- /ps/trunk/libraries/nvtt/src/src/CMakeLists.txt (revision 11501)
++++ /ps/trunk/libraries/nvtt/src/src/CMakeLists.txt (revision 11502)
+@@ -6,4 +6,11 @@
+
+ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
++
++# initial variables
++SET(GLUT TRUE CACHE BOOL "")
++SET(GLEW TRUE CACHE BOOL "")
++SET(CG TRUE CACHE BOOL "")
++SET(CUDA TRUE CACHE BOOL "")
++SET(OPENEXR TRUE CACHE BOOL "")
+
+ # OpenGL
+@@ -16,11 +23,13 @@
+
+ # GLUT
+-INCLUDE(${NV_CMAKE_DIR}/FindGLUT.cmake)
+-#INCLUDE(FindGLUT)
+-IF(GLUT_FOUND)
+- MESSAGE(STATUS "Looking for GLUT - found")
+-ELSE(GLUT_FOUND)
+- MESSAGE(STATUS "Looking for GLUT - not found")
+-ENDIF(GLUT_FOUND)
++IF(GLUT)
++ INCLUDE(${NV_CMAKE_DIR}/FindGLUT.cmake)
++ #INCLUDE(FindGLUT)
++ IF(GLUT_FOUND)
++ MESSAGE(STATUS "Looking for GLUT - found")
++ ELSE(GLUT_FOUND)
++ MESSAGE(STATUS "Looking for GLUT - not found")
++ ENDIF(GLUT_FOUND)
++ENDIF(GLUT)
+
+ # DirectX
+@@ -33,27 +42,33 @@
+
+ # GLEW
+-INCLUDE(${NV_CMAKE_DIR}/FindGLEW.cmake)
+-IF(GLEW_FOUND)
+- MESSAGE(STATUS "Looking for GLEW - found")
+-ELSE(GLEW_FOUND)
+- MESSAGE(STATUS "Looking for GLEW - not found")
+-ENDIF(GLEW_FOUND)
++IF(GLEW)
++ INCLUDE(${NV_CMAKE_DIR}/FindGLEW.cmake)
++ IF(GLEW_FOUND)
++ MESSAGE(STATUS "Looking for GLEW - found")
++ ELSE(GLEW_FOUND)
++ MESSAGE(STATUS "Looking for GLEW - not found")
++ ENDIF(GLEW_FOUND)
++ENDIF(GLEW)
+
+ # Cg
+-INCLUDE(${NV_CMAKE_DIR}/FindCg.cmake)
+-IF(CG_FOUND)
+- MESSAGE(STATUS "Looking for Cg - found")
+-ELSE(CG_FOUND)
+- MESSAGE(STATUS "Looking for Cg - not found")
+-ENDIF(CG_FOUND)
++IF(CG)
++ INCLUDE(${NV_CMAKE_DIR}/FindCg.cmake)
++ IF(CG_FOUND)
++ MESSAGE(STATUS "Looking for Cg - found")
++ ELSE(CG_FOUND)
++ MESSAGE(STATUS "Looking for Cg - not found")
++ ENDIF(CG_FOUND)
++ENDIF(CG)
+
+ # CUDA
+-INCLUDE(${NV_CMAKE_DIR}/FindCUDA.cmake)
+-IF(CUDA_FOUND)
+- SET(HAVE_CUDA ${CUDA_FOUND} CACHE BOOL "Set to TRUE if CUDA is found, FALSE otherwise")
+- MESSAGE(STATUS "Looking for CUDA - found")
+-ELSE(CUDA_FOUND)
+- MESSAGE(STATUS "Looking for CUDA - not found")
+-ENDIF(CUDA_FOUND)
++IF(CUDA)
++ INCLUDE(${NV_CMAKE_DIR}/FindCUDA.cmake)
++ IF(CUDA_FOUND)
++ SET(HAVE_CUDA ${CUDA_FOUND} CACHE BOOL "Set to TRUE if CUDA is found, FALSE otherwise")
++ MESSAGE(STATUS "Looking for CUDA - found")
++ ELSE(CUDA_FOUND)
++ MESSAGE(STATUS "Looking for CUDA - not found")
++ ENDIF(CUDA_FOUND)
++ENDIF(CUDA)
+
+ # Maya
+@@ -94,11 +109,13 @@
+
+ # OpenEXR
+-INCLUDE(${NV_CMAKE_DIR}/FindOpenEXR.cmake)
+-IF(OPENEXR_FOUND)
+- SET(HAVE_OPENEXR ${OPENEXR_FOUND} CACHE BOOL "Set to TRUE if OpenEXR is found, FALSE otherwise")
+- MESSAGE(STATUS "Looking for OpenEXR - found")
+-ELSE(OPENEXR_FOUND)
+- MESSAGE(STATUS "Looking for OpenEXR - not found")
+-ENDIF(OPENEXR_FOUND)
++IF(OPENEXR)
++ INCLUDE(${NV_CMAKE_DIR}/FindOpenEXR.cmake)
++ IF(OPENEXR_FOUND)
++ SET(HAVE_OPENEXR ${OPENEXR_FOUND} CACHE BOOL "Set to TRUE if OpenEXR is found, FALSE otherwise")
++ MESSAGE(STATUS "Looking for OpenEXR - found")
++ ELSE(OPENEXR_FOUND)
++ MESSAGE(STATUS "Looking for OpenEXR - not found")
++ ENDIF(OPENEXR_FOUND)
++ENDIF(OPENEXR)
+
+ # Qt
+Index: /ps/trunk/libraries/nvtt/src/src/nvmath/CMakeLists.txt
+===================================================================
+--- /ps/trunk/libraries/nvtt/src/src/nvmath/CMakeLists.txt (revision 11501)
++++ /ps/trunk/libraries/nvtt/src/src/nvmath/CMakeLists.txt (revision 11502)
+@@ -29,5 +29,5 @@
+
+ INSTALL(TARGETS nvmath
+- RUNTIME DESTINATION bin
+- LIBRARY DESTINATION lib
+- ARCHIVE DESTINATION lib/static)
++ RUNTIME DESTINATION ${BINDIR}
++ LIBRARY DESTINATION ${LIBDIR}
++ ARCHIVE DESTINATION ${LIBDIR})
+Index: /ps/trunk/libraries/nvtt/cmake-devflags.patch
+===================================================================
+--- /ps/trunk/libraries/nvtt/cmake-devflags.patch (revision 11502)
++++ /ps/trunk/libraries/nvtt/cmake-devflags.patch (revision 11502)
+@@ -0,0 +1,176 @@
++From: hasufell <julian.ospald@googlemail.com>
++Date: Wed Apr 11 21:49:58 UTC 2012
++Subject: various cmake fixes
++
++fix hardcoded install paths for BINDIR and LIBDIR
++make cg, cuda, glew, glut and openexr controllable and not automagic
++
++--- src/nvcore/CMakeLists.txt
+++++ src/nvcore/CMakeLists.txt
++@@ -42,6 +42,6 @@
++ TARGET_LINK_LIBRARIES(nvcore ${LIBS})
++
++ INSTALL(TARGETS nvcore
++- RUNTIME DESTINATION bin
++- LIBRARY DESTINATION lib
++- ARCHIVE DESTINATION lib/static)
+++ RUNTIME DESTINATION ${BINDIR}
+++ LIBRARY DESTINATION ${LIBDIR}
+++ ARCHIVE DESTINATION ${LIBDIR})
++--- src/nvimage/CMakeLists.txt
+++++ src/nvimage/CMakeLists.txt
++@@ -62,7 +62,7 @@
++ TARGET_LINK_LIBRARIES(nvimage ${LIBS} nvcore nvmath posh)
++
++ INSTALL(TARGETS nvimage
++- RUNTIME DESTINATION bin
++- LIBRARY DESTINATION lib
++- ARCHIVE DESTINATION lib/static)
+++ RUNTIME DESTINATION ${BINDIR}
+++ LIBRARY DESTINATION ${LIBDIR}
+++ ARCHIVE DESTINATION ${LIBDIR})
++
++--- src/nvmath/CMakeLists.txt
+++++ src/nvmath/CMakeLists.txt
++@@ -28,6 +28,6 @@
++ TARGET_LINK_LIBRARIES(nvmath ${LIBS} nvcore)
++
++ INSTALL(TARGETS nvmath
++- RUNTIME DESTINATION bin
++- LIBRARY DESTINATION lib
++- ARCHIVE DESTINATION lib/static)
+++ RUNTIME DESTINATION ${BINDIR}
+++ LIBRARY DESTINATION ${LIBDIR}
+++ ARCHIVE DESTINATION ${LIBDIR})
++--- src/nvtt/CMakeLists.txt
+++++ src/nvtt/CMakeLists.txt
++@@ -53,9 +53,9 @@
++ TARGET_LINK_LIBRARIES(nvtt ${LIBS} nvcore nvmath nvimage squish)
++
++ INSTALL(TARGETS nvtt
++- RUNTIME DESTINATION bin
++- LIBRARY DESTINATION lib
++- ARCHIVE DESTINATION lib/static)
+++ RUNTIME DESTINATION ${BINDIR}
+++ LIBRARY DESTINATION ${LIBDIR}
+++ ARCHIVE DESTINATION ${LIBDIR})
++
++ INSTALL(FILES nvtt.h DESTINATION include/nvtt)
++
++--- src/CMakeLists.txt
+++++ src/CMakeLists.txt
++@@ -5,6 +5,13 @@
++ SUBDIRS(nvtt)
++
++ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
+++
+++# initial variables
+++SET(GLUT TRUE CACHE BOOL "")
+++SET(GLEW TRUE CACHE BOOL "")
+++SET(CG TRUE CACHE BOOL "")
+++SET(CUDA TRUE CACHE BOOL "")
+++SET(OPENEXR TRUE CACHE BOOL "")
++
++ # OpenGL
++ INCLUDE(FindOpenGL)
++@@ -15,13 +22,15 @@
++ ENDIF(OPENGL_FOUND)
++
++ # GLUT
++-INCLUDE(${NV_CMAKE_DIR}/FindGLUT.cmake)
++-#INCLUDE(FindGLUT)
++-IF(GLUT_FOUND)
++- MESSAGE(STATUS "Looking for GLUT - found")
++-ELSE(GLUT_FOUND)
++- MESSAGE(STATUS "Looking for GLUT - not found")
++-ENDIF(GLUT_FOUND)
+++IF(GLUT)
+++ INCLUDE(${NV_CMAKE_DIR}/FindGLUT.cmake)
+++ #INCLUDE(FindGLUT)
+++ IF(GLUT_FOUND)
+++ MESSAGE(STATUS "Looking for GLUT - found")
+++ ELSE(GLUT_FOUND)
+++ MESSAGE(STATUS "Looking for GLUT - not found")
+++ ENDIF(GLUT_FOUND)
+++ENDIF(GLUT)
++
++ # DirectX
++ INCLUDE(${NV_CMAKE_DIR}/FindDirectX.cmake)
++@@ -32,29 +41,35 @@
++ ENDIF(DX10_FOUND)
++
++ # GLEW
++-INCLUDE(${NV_CMAKE_DIR}/FindGLEW.cmake)
++-IF(GLEW_FOUND)
++- MESSAGE(STATUS "Looking for GLEW - found")
++-ELSE(GLEW_FOUND)
++- MESSAGE(STATUS "Looking for GLEW - not found")
++-ENDIF(GLEW_FOUND)
+++IF(GLEW)
+++ INCLUDE(${NV_CMAKE_DIR}/FindGLEW.cmake)
+++ IF(GLEW_FOUND)
+++ MESSAGE(STATUS "Looking for GLEW - found")
+++ ELSE(GLEW_FOUND)
+++ MESSAGE(STATUS "Looking for GLEW - not found")
+++ ENDIF(GLEW_FOUND)
+++ENDIF(GLEW)
++
++ # Cg
++-INCLUDE(${NV_CMAKE_DIR}/FindCg.cmake)
++-IF(CG_FOUND)
++- MESSAGE(STATUS "Looking for Cg - found")
++-ELSE(CG_FOUND)
++- MESSAGE(STATUS "Looking for Cg - not found")
++-ENDIF(CG_FOUND)
+++IF(CG)
+++ INCLUDE(${NV_CMAKE_DIR}/FindCg.cmake)
+++ IF(CG_FOUND)
+++ MESSAGE(STATUS "Looking for Cg - found")
+++ ELSE(CG_FOUND)
+++ MESSAGE(STATUS "Looking for Cg - not found")
+++ ENDIF(CG_FOUND)
+++ENDIF(CG)
++
++ # CUDA
++-INCLUDE(${NV_CMAKE_DIR}/FindCUDA.cmake)
++-IF(CUDA_FOUND)
++- SET(HAVE_CUDA ${CUDA_FOUND} CACHE BOOL "Set to TRUE if CUDA is found, FALSE otherwise")
++- MESSAGE(STATUS "Looking for CUDA - found")
++-ELSE(CUDA_FOUND)
++- MESSAGE(STATUS "Looking for CUDA - not found")
++-ENDIF(CUDA_FOUND)
+++IF(CUDA)
+++ INCLUDE(${NV_CMAKE_DIR}/FindCUDA.cmake)
+++ IF(CUDA_FOUND)
+++ SET(HAVE_CUDA ${CUDA_FOUND} CACHE BOOL "Set to TRUE if CUDA is found, FALSE otherwise")
+++ MESSAGE(STATUS "Looking for CUDA - found")
+++ ELSE(CUDA_FOUND)
+++ MESSAGE(STATUS "Looking for CUDA - not found")
+++ ENDIF(CUDA_FOUND)
+++ENDIF(CUDA)
++
++ # Maya
++ INCLUDE(${NV_CMAKE_DIR}/FindMaya.cmake)
++@@ -93,13 +108,15 @@
++ ENDIF(TIFF_FOUND)
++
++ # OpenEXR
++-INCLUDE(${NV_CMAKE_DIR}/FindOpenEXR.cmake)
++-IF(OPENEXR_FOUND)
++- SET(HAVE_OPENEXR ${OPENEXR_FOUND} CACHE BOOL "Set to TRUE if OpenEXR is found, FALSE otherwise")
++- MESSAGE(STATUS "Looking for OpenEXR - found")
++-ELSE(OPENEXR_FOUND)
++- MESSAGE(STATUS "Looking for OpenEXR - not found")
++-ENDIF(OPENEXR_FOUND)
+++IF(OPENEXR)
+++ INCLUDE(${NV_CMAKE_DIR}/FindOpenEXR.cmake)
+++ IF(OPENEXR_FOUND)
+++ SET(HAVE_OPENEXR ${OPENEXR_FOUND} CACHE BOOL "Set to TRUE if OpenEXR is found, FALSE otherwise")
+++ MESSAGE(STATUS "Looking for OpenEXR - found")
+++ ELSE(OPENEXR_FOUND)
+++ MESSAGE(STATUS "Looking for OpenEXR - not found")
+++ ENDIF(OPENEXR_FOUND)
+++ENDIF(OPENEXR)
++
++ # Qt
++ FIND_PACKAGE(Qt4)
+Index: /ps/trunk/libraries/nvtt/build.sh
+===================================================================
+--- /ps/trunk/libraries/nvtt/build.sh (revision 11501)
++++ /ps/trunk/libraries/nvtt/build.sh (revision 11502)
+@@ -12,5 +12,5 @@
+ cd src/build/
+
+-cmake .. -DNVTT_SHARED=1 -DCMAKE_BUILD_TYPE=Release -G "Unix Makefiles"
++cmake .. -DNVTT_SHARED=1 -DCMAKE_BUILD_TYPE=Release -DBINDIR=bin -DLIBDIR=lib -DGLUT=0 -DGLEW=0 -DCG=0 -DCUDA=0 -DOPENEXR=0 -G "Unix Makefiles"
+
+ ${MAKE} nvtt ${JOBS}
+Index: /ps/trunk/libraries/nvtt/README.txt
+===================================================================
+--- /ps/trunk/libraries/nvtt/README.txt (revision 11501)
++++ /ps/trunk/libraries/nvtt/README.txt (revision 11502)
+@@ -10,2 +10,3 @@
+ cmake-freebsd.patch (fixes build on FreeBSD)
+ gcc47-unistd.patch (fixes build on GCC 4.7)
++ cmake-depflags.patch (from https://407191.bugs.gentoo.org/attachment.cgi?id=308589 - allows disabling various dependencies)