summaryrefslogtreecommitdiff
path: root/games-action/supertuxkart
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /games-action/supertuxkart
reinit the tree, so we can have metadata
Diffstat (limited to 'games-action/supertuxkart')
-rw-r--r--games-action/supertuxkart/Manifest14
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.2-fix-angelscript.patch27
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.2-fix-buildsystem.patch97
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-arch-support.patch49
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-as-needed.patch24
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-bundled-libs.patch35
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-system-libs.patch105
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.2-unbundle-enet.patch58
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.2-unbundle-libs.patch19
-rw-r--r--games-action/supertuxkart/metadata.xml15
-rw-r--r--games-action/supertuxkart/supertuxkart-0.9.2.ebuild90
11 files changed, 533 insertions, 0 deletions
diff --git a/games-action/supertuxkart/Manifest b/games-action/supertuxkart/Manifest
new file mode 100644
index 000000000000..c5ff1a4c5952
--- /dev/null
+++ b/games-action/supertuxkart/Manifest
@@ -0,0 +1,14 @@
+AUX supertuxkart-0.9.2-fix-angelscript.patch 1114 SHA256 918511e2c1435df3f996be8b585cf8292fb21cc5c842f6c5d8b3ca1f3641dd09 SHA512 6e87046b760bb059c0e30692c1da6306ebfcfaf1b68a6ad19b0a563bae64ef7d30c955aec075600a4e36f327c6670779fa8923b438898389be35618112a7fbc5 WHIRLPOOL 773f190e3467c60f37e912315b0850a39b5d420926762eec7f046ca347c772b2ce6b724c0da6d793336a49a26c7b51533b17b2d862701f16cc4d3024b5b0ccbc
+AUX supertuxkart-0.9.2-fix-buildsystem.patch 3381 SHA256 2384b56b93be6faef4615f78ee234808c27bde077547321e34faee1b3d3f9941 SHA512 aba636401f6aa5957ddcaca6983c029d3abfbca0fc67f5ac408bda8053a39d9013a190182aae68506740ff8ab336e47dd39dd6dc045c5b21572a22e939b297d2 WHIRLPOOL 53e65ea36bea376b0cd0f2272b30964344521b7736966fb3fc542fbdc59b15c81beb92929325f1b8e5a8950ed40a26f839c61ea6cd589c123bd5a789863441d1
+AUX supertuxkart-0.9.2-irrlicht-arch-support.patch 1575 SHA256 767350981d5b4591638ffe50bdfb881da754e98ca8e72b4dbaa274e01bab2e30 SHA512 c2cbb2c7644c85863722bc6179196251bbe75db021717f6d7136385ad87d5d9a32beb74d876b32525cc5e44a9994156e7fe44fa8ff3c65cdf0556e4ed8d1e611 WHIRLPOOL a57a39ada797d75438bd556a7e8ef216ef7f542b0af8c98c8ab6187712c6f29fcf7a6ef3c1413bb4d8cca6d55fc4f9dbd7df4d48398733ecce019f8a5704ccc7
+AUX supertuxkart-0.9.2-irrlicht-as-needed.patch 883 SHA256 57f6bb9d5454bd3efdc0f9bbcb02adfd8341e89c2f53747b3d86e46a22c44af9 SHA512 dd2b1319d9a46449ce60ad19eabd5e78ed94f5f780798e47ddedeb8da91e1eb7f065f94a3c0ffd028cb1d241ad921f410cff105f439ff4b5b967a4d0799b6d31 WHIRLPOOL 6ed6f4cb7985f8e44a47d1c632d5be96beea304eeac47918cc0ec6ad10dd21298a351e0571810fdeabaed11fc541a1de682aa22bc5ff5008acdeecfaead78c3f
+AUX supertuxkart-0.9.2-irrlicht-bundled-libs.patch 1244 SHA256 494d48382c6d757aa8677e90cd0200bbb012a32173a5ef9b2588d91fff55de7f SHA512 d004b7808d9e2977d76f9b7cfe2dbed23765a6216d4ae9f69a868b42b541ed1cee5550a9d27ebea9c2884371f7caa8fdaed1b48f090f32da0db7d675b1f67397 WHIRLPOOL 68cfcb0aa56b9008ca7927b92e9405978b84c5b7c5f61b66298c7a1642f4aa8ec8fa60461aa00fdd9cfae906e08512cd64af4b9a5c5e2f74f52cb093ab006d1e
+AUX supertuxkart-0.9.2-irrlicht-system-libs.patch 5294 SHA256 d6d5aec41ea0256df1f4456a768d911fa3fac7cf0a601884670c04a6ae486a58 SHA512 10f904c7626471a075dd639f8988b36b903c56b8cdcb5519e72fd93cd500c377a3015d70e055d193acc282b103ed41835b10152fa6323215a633fbe1449792ac WHIRLPOOL 1c5d055b0435a1c52ffbd6968b550627543152334584d42517183b8a37a55e42a96aa3da5a4d5f69cc5ac0222bf78b3d0adf57a1139c58a817f66efb48804f1e
+AUX supertuxkart-0.9.2-unbundle-enet.patch 1590 SHA256 9f747a72f65eaad5c87e2a2a63b42faf6dda19948bada37609e81afcf3043c3a SHA512 28e5a9704636fd018599d16540d15f6dc0c07f19a848cdea460a4be610e85a41289a327ebceb5ae054c2989d0a09b3357405e95322ed3e202738c2a833484524 WHIRLPOOL 1884a2ece7eacb18867e6866d1868a42652b98668996fefed39d90323dcf720af8af0eca8a5a191c74154495cb1003e971aff3703b05f2a791a39fc355f66645
+AUX supertuxkart-0.9.2-unbundle-libs.patch 370 SHA256 6c80312f0ed6583b83a01ba33ca1f00631447101ec1ef0b4b744ff8299dae6da SHA512 08df379c8ce590541c718fcbf6b8405d923c02053854d7601269e606f16f893a62d1f296d4fffb961950a30aa1314ba4a315f2a827c08117c3f58136808b3370 WHIRLPOOL ec11f364995b9954527dbe8db2b94c242a7427ef1f4aebaf5af323868d3aba40e232eb30759eeb8189b751a3c0f8e039c8970d267609fdffaf57e32e90f57a2b
+DIST supertuxkart-0.9.2-src.tar.xz 501606188 SHA256 0b080bb098a26adb552d6fd48905bcb6b1e873ef1567457d7268d7d3aaa48282 SHA512 57f11d518736f88044d1cb73e1dfcc92f5667f3b1147ab7e54435f6bc560fe856c3650410410da5fa048bf23d0b64fc8a9887c830001e1435b0359c9163e71b0 WHIRLPOOL c534854127981821412437632fdf9ff239988199d60f8d582b59bd624dff87f5e37a5cb54020b679e9fb6d440187a5bd0e0c2eb00311e2ae8de6ba58fb1d1d82
+DIST supertuxkart.png 4435 SHA256 99bc1801cb0514946cb0171d6d5a84484b6dc881edfa7f096b6eb5fea2f28828 SHA512 a180332f79220431922fa8b351cb476ebc5d9d1df09f20707eb3bdd7002fd264cb027b8190c73c5221050e6e8601beb6758a5809d05aedfb18f0bdb426f47eda WHIRLPOOL eef651802a927b451226fc06a682d7dea68b65b05195130ccfc7544165f26f65bda4fc9565e09d6487d02be3cf57880b0c6c257f26587c6bc6d30afc6aa5d3c2
+EBUILD supertuxkart-0.9.2.ebuild 2126 SHA256 430179a4f1b3c6b0eab16a44a33b5694908566650aa68fcb7ab61e6f1815c8fa SHA512 79289f2e9b4f5c8cd1cdfc4a373e097a0ae59a24eb92c278b53f5a4155d64210fb1d9bc1336248896f9fb6d461acf88a33f9b39f7476541f0c9ed470acfea395 WHIRLPOOL 9bbead36fc2aa4df65bfded0d529258679436999791179875986bfe09f49fbd265f350f644f2c112ed9b6bca5813604d15c1602e91418d571247df3e3f6a2f11
+MISC ChangeLog 4410 SHA256 5293b25c5f62cf3be2330c26269c2ea834676fc874aff95d94c4baa91140269d SHA512 0e0003eed23b712cb18dbfb925146b84b06aacd26a1000e9a7cb1d3b4dbf0852cb85a2b3c74feb9b5bf4ebb95f9d56788df811b575a76dc9bff9b07569eb018a WHIRLPOOL fa02a61bc4b1c3655c6e6047d1bb08e8147d662e36fc0bf48408b5f475f708634cb6861776f510ebb37100c2bbf5f8f6eab5c91886958c16296c7c50635046ef
+MISC ChangeLog-2015 7113 SHA256 25a58e3df4b2f5b0d9410b47f0676da26f35503027f4da2604d3493e4a3d69ab SHA512 ce379b50af6e3b197bcf1a92ff74f07394ee62e41dd1f49dfd9d8afb41af395b0d3b04a0036846cd072ba0d0979ecb222b100deffb61bcc67541e0c11bf2d3df WHIRLPOOL fd5580d255bbce447c0eda384e7576cbe023082f9fa67c880863c2ad71fe1aba260069506a3302c523582d145b730588a90ee195eb68ff0fd8d9bdedacfedcd6
+MISC metadata.xml 480 SHA256 81f16dd141550c31b13675cd3ee03c9aef343547515d7645b49d3b6945c18325 SHA512 6c0348a5e7978d5893a5c6cc3b2c54e69c10c03ed5f8f4e511b1cdd783b96d27889f839b4bad27338e3b9e098724142bafb6425e18f74483e0544f0312189f7d WHIRLPOOL cc40cce360f3cbc6faff4139b0ce109c5621ea1409e02802dbf71e6ef6ffe3b6c0bbe83c239f1e1c189b69a9a704c7a19dc1398839455e978a79deda03402e41
diff --git a/games-action/supertuxkart/files/supertuxkart-0.9.2-fix-angelscript.patch b/games-action/supertuxkart/files/supertuxkart-0.9.2-fix-angelscript.patch
new file mode 100644
index 000000000000..a2f4fb1829e7
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-fix-angelscript.patch
@@ -0,0 +1,27 @@
+Description: Fix FTBFS on arm64, mips/mips64/mipsel, ppc64el, s390x
+Origin: upstream, https://github.com/supertuxkart/stk-code/commit/5e05f1178ce6bc5f3a653b55ab3dc6d016196341
+Bug: https://github.com/supertuxkart/stk-code/issues/2569
+Bug-Debian: https://bugs.debian.org/830748
+Last-Update: 2016-12-03
+
+--- a/lib/angelscript/projects/cmake/CMakeLists.txt
++++ b/lib/angelscript/projects/cmake/CMakeLists.txt
+@@ -68,6 +68,7 @@ set(ANGELSCRIPT_SOURCE
+ ../../source/as_bytecode.cpp
+ ../../source/as_callfunc.cpp
+ ../../source/as_callfunc_x86.cpp
++ ../../source/as_callfunc_mips.cpp
+ ../../source/as_callfunc_x64_gcc.cpp
+ ../../source/as_callfunc_x64_msvc.cpp
+ ../../source/as_callfunc_x64_mingw.cpp
+--- a/lib/angelscript/source/as_config.h
++++ b/lib/angelscript/source/as_config.h
+@@ -844,7 +844,7 @@
+ #define THISCALL_PASS_OBJECT_POINTER_ON_THE_STACK
+ #define AS_X86
+ #undef AS_NO_THISCALL_FUNCTOR_METHOD
+- #elif defined(__LP64__) && !defined(__arm64__)
++ #elif defined(__x86_64__)
+ #define AS_X64_GCC
+ #undef AS_NO_THISCALL_FUNCTOR_METHOD
+ #define HAS_128_BIT_PRIMITIVES
diff --git a/games-action/supertuxkart/files/supertuxkart-0.9.2-fix-buildsystem.patch b/games-action/supertuxkart/files/supertuxkart-0.9.2-fix-buildsystem.patch
new file mode 100644
index 000000000000..6f1c39b36937
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-fix-buildsystem.patch
@@ -0,0 +1,97 @@
+* Unbundle remaining libraries: GLEW, zlib, png, jpeg
+* Add -DAS_DEPRECATED for Angelscript
+* Remove definition of debug macros
+* Build bundled Irrlicht with user flags
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -68,37 +68,10 @@
+ include_directories(${ENET_INCLUDE_DIR})
+
+ # Build glew library
++find_package(GLEW REQUIRED)
++include_directories(${GLEW_INCLUDE_DIRS})
+ add_definitions(-DGLEW_NO_GLU)
+-add_subdirectory("${PROJECT_SOURCE_DIR}/lib/glew")
+-include_directories("${PROJECT_SOURCE_DIR}/lib/glew/include")
+
+-if((WIN32 AND NOT MINGW) OR APPLE)
+- if (NOT APPLE)
+- # Build zlib library
+- add_subdirectory("${PROJECT_SOURCE_DIR}/lib/zlib")
+- include_directories("${PROJECT_SOURCE_DIR}/lib/zlib")
+-
+- set(ZLIB_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/lib/zlib" "${PROJECT_BINARY_DIR}/lib/zlib/")
+- set(ZLIB_LIBRARY zlibstatic)
+- endif()
+-
+- # Build png library
+- set (SKIP_INSTALL_ALL TRUE)
+- set (PNG_STATIC TRUE)
+- set (PNG_TESTS FALSE)
+- set (PNG_SHARED FALSE)
+- add_subdirectory("${PROJECT_SOURCE_DIR}/lib/libpng")
+- include_directories("${PROJECT_SOURCE_DIR}/lib/libpng")
+-
+- #build jpeg library
+- add_subdirectory("${PROJECT_SOURCE_DIR}/lib/jpeglib")
+- include_directories("${PROJECT_SOURCE_DIR}/lib/jpeglib")
+-
+- set(PNG_PNG_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/lib/libpng/")
+- set(PNG_LIBRARY png15_static)
+- set(JPEG_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/lib/jpeglib/")
+- set(JPEG_LIBRARY jpeglib)
+-endif()
+ # Build the irrlicht library
+ add_subdirectory("${PROJECT_SOURCE_DIR}/lib/irrlicht")
+ include_directories("${PROJECT_SOURCE_DIR}/lib/irrlicht/include")
+@@ -130,6 +103,7 @@
+ find_package(Angelscript)
+ if(ANGELSCRIPT_FOUND)
+ include_directories(${Angelscript_INCLUDE_DIRS})
++ add_definitions(-DAS_DEPRECATED)
+ else()
+ message(FATAL_ERROR "Angelscript not found. "
+ "Either install angelscript or use built-in version using "
+@@ -245,14 +219,6 @@
+ # VS will automatically add NDEBUG for release mode, but only _DEBUG in debug mode.
+ # Since STK uses DEBUG, this is added for debug compilation only:
+ set_property(DIRECTORY PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG)
+-else()
+- # All non VS generators used create only a single compile mode, so
+- # compile flags can be simplye be added
+- if(CMAKE_BUILD_TYPE MATCHES Debug)
+- add_definitions(-DDEBUG)
+- else()
+- add_definitions(-DNDEBUG)
+- endif()
+ endif()
+
+ # TODO: remove this switch
+@@ -342,7 +308,7 @@
+ bulletdynamics
+ bulletcollision
+ bulletmath
+- glew
++ ${GLEW_LIBRARIES}
+ stkirrlicht
+ ${Angelscript_LIBRARIES}
+ ${CURL_LIBRARIES}
+--- a/lib/irrlicht/CMakeLists.txt
++++ b/lib/irrlicht/CMakeLists.txt
+@@ -20,15 +20,6 @@
+ elseif(MINGW)
+ add_definitions(-D_IRR_STATIC_LIB_)
+ add_definitions(-D_CRT_SECURE_NO_WARNINGS) # Shut up about unsafe stuff
+-else()
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -pipe -O3 -fno-exceptions -fstrict-aliasing -I/usr/X11R6/include")
+- set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} -Wall -pipe -O3 -fno-exceptions -fstrict-aliasing -I/usr/X11R6/include")
+- if(CMAKE_COMPILER_IS_GNUCC)
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fexpensive-optimizations")
+- endif()
+- if(CMAKE_COMPILER_IS_GNUCXX)
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fexpensive-optimizations")
+- endif()
+ endif()
+
+ # Xrandr
diff --git a/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-arch-support.patch b/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-arch-support.patch
new file mode 100644
index 000000000000..ec5683839590
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-arch-support.patch
@@ -0,0 +1,49 @@
+From: Christoph Egger <debian@christoph-egger.org>
+Subject: [PATCH] debian/arch-support
+
+Building on non-linux architectures currently fails with unpatched
+irrlicht because irrlicht tries to create Joystick support using
+linux-specific headers. However there's infrastructure to disable
+Joystick support, we just need to activate that on non-linux
+architectures.
+
+Additionally if built on a sparc machine irrlicht assumes wrongly it's
+a solaris system. We fix this wrong assumption as our sparc builds are
+all on linux.
+
+Finally irrlicht exceeds the size constraights for -fpic requiering to
+build with -fPIC. As upstream doesn't do that we need to fix this for
+sparc and s390 builds (powerPC?).
+
+Signed-off-by: Christoph Egger <debian@christoph-egger.org>
+
+---
+ lib/irrlicht/include/IrrCompileConfig.h | 10 +++++-----
+ 1 files changed, 5 insertions(+), 5 deletions(-)
+
+--- a/lib/irrlicht/include/IrrCompileConfig.h
++++ b/lib/irrlicht/include/IrrCompileConfig.h
+@@ -101,6 +101,10 @@
+ #ifndef _IRR_SOLARIS_PLATFORM_
+ #if !defined(__linux__) && !defined(__FreeBSD__)
+ #define _IRR_LINUX_PLATFORM_
++#include <endian.h>
++ #if __BYTE_ORDER == __BIG_ENDIAN
++ #define __BIG_ENDIAN__
++ #endif
+ #endif
+ #endif
+ #define _IRR_POSIX_API_
+@@ -406,11 +410,7 @@
+ #undef _IRR_WCHAR_FILESYSTEM
+ #endif
+
+-#if defined(__sparc__) || defined(__sun__)
+-#define __BIG_ENDIAN__
+-#endif
+-
+-#if defined(_IRR_SOLARIS_PLATFORM_)
++#if defined(_IRR_SOLARIS_PLATFORM_) || defined(__FreeBSD_kernel__) || defined(__gnu_hurd__)
+ #undef _IRR_COMPILE_WITH_JOYSTICK_EVENTS_
+ #endif
+
diff --git a/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-as-needed.patch b/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-as-needed.patch
new file mode 100644
index 000000000000..b6cb0fe4c151
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-as-needed.patch
@@ -0,0 +1,24 @@
+From: Christoph Egger <Christoph.Egger@gmx.de>
+Subject: [PATCH] debian/link-against-needed-libs
+
+There are quite some libraries irrlicht needs but does not link
+against. This patch makes irrlicht link correctly against all the
+needed libraries.
+
+Signed-off-by: Christoph Egger <Christoph.Egger@gmx.de>
+
+---
+ lib/irrlicht/source/Irrlicht/Makefile | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+--- a/lib/irrlicht/source/Irrlicht/Makefile
++++ b/lib/irrlicht/source/Irrlicht/Makefile
+@@ -88,7 +88,7 @@
+ LIB_PATH = ../../lib/$(SYSTEM)
+ INSTALL_DIR = /usr/local/lib
+ sharedlib install: SHARED_LIB = libIrrlicht.so
+-sharedlib: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm
++staticlib sharedlib: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm -lX11 -lz -lpng -ljpeg -lbz2
+ staticlib sharedlib: CXXINCS += -I/usr/X11R6/include
+
+ #OSX specific options
diff --git a/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-bundled-libs.patch b/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-bundled-libs.patch
new file mode 100644
index 000000000000..1a1013e415a9
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-bundled-libs.patch
@@ -0,0 +1,35 @@
+Description: Remove embedded libraries in Irrlicht source (flagged by lintian)
+ Since removing the subdirectories containing libjpeg/libpng/zlib/bzip2/lzma
+ would make this patch way too large, this patch should be applied on top of
+ rm -rf lib/jpeglib/
+ rm -rf lib/zlib/
+ rm -rf lib/libpng/
+ in debian/rules (e.g. in the clean target).
+Forwarded: no
+Author: Vincent Cheng <vcheng@debian.org>
+Last-Update: 2016-07-07
+
+--- a/lib/irrlicht/CMakeLists.txt
++++ b/lib/irrlicht/CMakeLists.txt
+@@ -2,11 +2,7 @@
+ find_package(PNG REQUIRED)
+ find_package(JPEG REQUIRED)
+
+-include_directories("${CMAKE_CURRENT_SOURCE_DIR}/include/"
+- "${JPEG_INCLUDE_DIR}"
+- "${PNG_INCLUDE_DIRS}"
+- "${ZLIB_INCLUDE_DIR}"
+- "${CMAKE_CURRENT_BINARY_DIR}/../zlib/") # For zconf.h on WIN32
++include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include/)
+
+ find_package(OpenGL REQUIRED)
+ include_directories(${OPENGL_INCLUDE_DIR})
+@@ -508,7 +504,7 @@
+ endif()
+
+ add_library(stkirrlicht STATIC ${IRRLICHT_SOURCES})
+-target_link_libraries(stkirrlicht ${PNG_LIBRARY} ${JPEG_LIBRARY} ${ZLIB_LIBRARY})
++target_link_libraries(stkirrlicht png jpeg z)
+
+ if(WIN32)
+ target_link_libraries(stkirrlicht imm32)
diff --git a/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-system-libs.patch b/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-system-libs.patch
new file mode 100644
index 000000000000..f82dc5060d06
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-system-libs.patch
@@ -0,0 +1,105 @@
+Subject: [PATCH] debian/use-system-libs
+
+Path to build irrlicht using the system libraries for png,zlib and
+jpeg as well as the glext family of header files.
+
+Signed-off-by: Christoph Egger <debian@christoph-egger.org
+
+--- a/lib/irrlicht/source/Irrlicht/CIrrDeviceLinux.h
++++ b/lib/irrlicht/source/Irrlicht/CIrrDeviceLinux.h
+@@ -23,7 +23,7 @@
+ #include <GL/glx.h>
+ #ifdef _IRR_OPENGL_USE_EXTPOINTER_
+ #define GLX_GLXEXT_PROTOTYPES
+-#include "glxext.h"
++#include <GL/glxext.h>
+ #endif
+ #endif
+
+--- a/lib/irrlicht/source/Irrlicht/COpenGLExtensionHandler.h
++++ b/lib/irrlicht/source/Irrlicht/COpenGLExtensionHandler.h
+@@ -21,7 +21,7 @@
+ #endif
+ #include <GL/gl.h>
+ #if defined(_IRR_OPENGL_USE_EXTPOINTER_)
+- #include "glext.h"
++ #include <GL/glext.h>
+ #endif
+ #include "wglext.h"
+
+@@ -36,7 +36,7 @@
+ #endif
+ #include <OpenGL/gl.h>
+ #if defined(_IRR_OPENGL_USE_EXTPOINTER_)
+- #include "glext.h"
++ #include <GL/glext.h>
+ #endif
+ #elif defined(_IRR_COMPILE_WITH_SDL_DEVICE_) && !defined(_IRR_COMPILE_WITH_X11_DEVICE_)
+ #if defined(_IRR_OPENGL_USE_EXTPOINTER_)
+@@ -50,7 +50,7 @@
+ #include <SDL/SDL_video.h>
+ #include <SDL/SDL_opengl.h>
+ typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC) (GLenum mode);
+- #include "glext.h"
++ #include <GL/glext.h>
+ #else
+ #if defined(_IRR_OPENGL_USE_EXTPOINTER_)
+ #define GL_GLEXT_LEGACY 1
+--- a/lib/irrlicht/source/Irrlicht/COpenGLSLMaterialRenderer.h
++++ b/lib/irrlicht/source/Irrlicht/COpenGLSLMaterialRenderer.h
+@@ -12,7 +12,7 @@
+ #define WIN32_LEAN_AND_MEAN
+ #include <windows.h>
+ #include <GL/gl.h>
+- #include "glext.h"
++ #include <GL/glext.h>
+ #else
+ #if defined(_IRR_OPENGL_USE_EXTPOINTER_)
+ #define GL_GLEXT_LEGACY 1
+@@ -25,7 +25,7 @@
+ #include <GL/gl.h>
+ #endif
+ #if defined(_IRR_OPENGL_USE_EXTPOINTER_)
+- #include "glext.h"
++ #include <GL/glext.h>
+ #endif
+ #endif
+
+--- a/lib/irrlicht/source/Irrlicht/Makefile
++++ b/lib/irrlicht/source/Irrlicht/Makefile
+@@ -43,7 +43,7 @@
+ CImageWriterBMP.o CImageWriterJPG.o CImageWriterPCX.o CImageWriterPNG.o CImageWriterPPM.o CImageWriterPSD.o CImageWriterTGA.o
+ IRRVIDEOOBJ = CVideoModeList.o CFPSCounter.o $(IRRDRVROBJ) $(IRRIMAGEOBJ)
+ IRRSWRENDEROBJ = CSoftwareDriver.o CSoftwareTexture.o CTRFlat.o CTRFlatWire.o CTRGouraud.o CTRGouraudWire.o CTRNormalMap.o CTRStencilShadow.o CTRTextureFlat.o CTRTextureFlatWire.o CTRTextureGouraud.o CTRTextureGouraudAdd.o CTRTextureGouraudNoZ.o CTRTextureGouraudWire.o CZBuffer.o CTRTextureGouraudVertexAlpha2.o CTRTextureGouraudNoZ2.o CTRTextureLightMap2_M2.o CTRTextureLightMap2_M4.o CTRTextureLightMap2_M1.o CSoftwareDriver2.o CSoftwareTexture2.o CTRTextureGouraud2.o CTRGouraud2.o CTRGouraudAlpha2.o CTRGouraudAlphaNoZ2.o CTRTextureDetailMap2.o CTRTextureGouraudAdd2.o CTRTextureGouraudAddNoZ2.o CTRTextureWire2.o CTRTextureLightMap2_Add.o CTRTextureLightMapGouraud2_M4.o IBurningShader.o CTRTextureBlend.o CTRTextureGouraudAlpha.o CTRTextureGouraudAlphaNoZ.o CDepthBuffer.o CBurningShader_Raster_Reference.o
+-IRRIOOBJ = CFileList.o CFileSystem.o CLimitReadFile.o CMemoryFile.o CReadFile.o CWriteFile.o CXMLReader.o CXMLWriter.o CWADReader.o CZipReader.o CPakReader.o CNPKReader.o CTarReader.o CMountPointReader.o irrXML.o CAttributes.o lzma/LzmaDec.o
++IRRIOOBJ = CFileList.o CFileSystem.o CLimitReadFile.o CMemoryFile.o CReadFile.o CWriteFile.o CXMLReader.o CXMLWriter.o CWADReader.o CZipReader.o CPakReader.o CNPKReader.o CTarReader.o CMountPointReader.o irrXML.o CAttributes.o
+ IRROTHEROBJ = CIrrDeviceSDL.o CIrrDeviceLinux.o CIrrDeviceConsole.o CIrrDeviceStub.o CIrrDeviceWin32.o CIrrDeviceFB.o CLogger.o COSOperator.o Irrlicht.o os.o
+ IRRGUIOBJ = CGUIButton.o CGUICheckBox.o CGUIComboBox.o CGUIContextMenu.o CGUIEditBox.o CGUIEnvironment.o CGUIFileOpenDialog.o CGUIFont.o CGUIImage.o CGUIInOutFader.o CGUIListBox.o CGUIMenu.o CGUIMeshViewer.o CGUIMessageBox.o CGUIModalScreen.o CGUIScrollBar.o CGUISpinBox.o CGUISkin.o CGUIStaticText.o CGUITabControl.o CGUITable.o CGUIToolBar.o CGUIWindow.o CGUIColorSelectDialog.o CDefaultGUIElementFactory.o CGUISpriteBank.o CGUIImageList.o CGUITreeView.o
+ ZLIBOBJ = zlib/adler32.o zlib/compress.o zlib/crc32.o zlib/deflate.o zlib/inffast.o zlib/inflate.o zlib/inftrees.o zlib/trees.o zlib/uncompr.o zlib/zutil.o
+@@ -56,14 +56,14 @@
+ EXTRAOBJ =
+ LINKOBJ = $(IRRMESHOBJ) $(IRROBJ) $(IRRPARTICLEOBJ) $(IRRANIMOBJ) \
+ $(IRRVIDEOOBJ) $(IRRSWRENDEROBJ) $(IRRIOOBJ) $(IRROTHEROBJ) \
+- $(IRRGUIOBJ) $(ZLIBOBJ) $(JPEGLIBOBJ) $(LIBPNGOBJ) $(LIBAESGM) \
+- $(BZIP2OBJ) $(EXTRAOBJ)
++ $(IRRGUIOBJ) $(LIBAESGM) \
++ $(EXTRAOBJ)
+
+ ###############
+ #Compiler flags
+-CXXINCS = -I../../include -Izlib -Ijpeglib -Ilibpng
++CXXINCS = -I../../include # -Izlib -Ijpeglib -Ilibpng
+ CPPFLAGS += $(CXXINCS) -DIRRLICHT_EXPORTS=1
+-CXXFLAGS += -Wall -pipe -fno-exceptions -fno-rtti -fstrict-aliasing
++CXXFLAGS += -Wall -pipe -fno-exceptions -fstrict-aliasing
+ ifndef NDEBUG
+ CXXFLAGS += -g -D_DEBUG
+ else
+@@ -154,6 +154,7 @@
+ mkdir -p $(INSTALL_DIR)/../include/irrlicht
+ cp ../../include/*.h $(INSTALL_DIR)/../include/irrlicht/
+ cp $(LIB_PATH)/$(SHARED_FULLNAME) $(INSTALL_DIR)
++ cp $(LIB_PATH)/$(STATIC_LIB) $(INSTALL_DIR)
+ cd $(INSTALL_DIR) && ln -s -f $(SHARED_FULLNAME) $(SONAME)
+ cd $(INSTALL_DIR) && ln -s -f $(SONAME) $(SHARED_LIB)
+ # ldconfig -n $(INSTALL_DIR)
diff --git a/games-action/supertuxkart/files/supertuxkart-0.9.2-unbundle-enet.patch b/games-action/supertuxkart/files/supertuxkart-0.9.2-unbundle-enet.patch
new file mode 100644
index 000000000000..259627adb2a5
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-unbundle-enet.patch
@@ -0,0 +1,58 @@
+Description: Build supertuxkart against system enet instead of embedded copy
+Forwarded: not-yet
+Author: Vincent Cheng <vcheng@debian.org>
+Last-Update: 2016-07-17
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -63,9 +63,9 @@
+ add_subdirectory("${PROJECT_SOURCE_DIR}/lib/bullet")
+ include_directories("${PROJECT_SOURCE_DIR}/lib/bullet/src")
+
+-# Build the ENet UDP network library
+-add_subdirectory("${PROJECT_SOURCE_DIR}/lib/enet")
+-include_directories("${PROJECT_SOURCE_DIR}/lib/enet/include")
++# ENet
++find_package(ENet REQUIRED)
++include_directories(${ENET_INCLUDE_DIR})
+
+ # Build glew library
+ add_definitions(-DGLEW_NO_GLU)
+@@ -342,11 +342,11 @@
+ bulletdynamics
+ bulletcollision
+ bulletmath
+- enet
+ glew
+ stkirrlicht
+ ${Angelscript_LIBRARIES}
+ ${CURL_LIBRARIES}
++ ${ENET_LIBRARIES}
+ ${OGGVORBIS_LIBRARIES}
+ ${OPENAL_LIBRARY}
+ ${OPENGL_LIBRARIES}
+--- /dev/null
++++ b/cmake/FindENet.cmake
+@@ -0,0 +1,22 @@
++# - Find ENet
++# Find the ENet includes and libraries
++#
++# Following variables are provided:
++# ENET_FOUND
++# True if ENet has been found
++# ENET_INCLUDE_DIR
++# The include directories of ENet
++# ENET_LIBRARIES
++# ENet library list
++
++
++find_path(ENET_INCLUDE_DIR enet/enet.h /usr/include)
++find_library(ENET_LIBRARY NAMES enet PATHS /usr/lib)
++
++include(FindPackageHandleStandardArgs)
++find_package_handle_standard_args(ENet DEFAULT_MSG ENET_INCLUDE_DIR ENET_LIBRARY)
++
++# Publish variables
++set(ENET_INCLUDE_DIRS ${ENET_INCLUDE_DIR})
++set(ENET_LIBRARIES ${ENET_LIBRARY})
++mark_as_advanced(ENET_INCLUDE_DIR ENET_LIBRARY)
diff --git a/games-action/supertuxkart/files/supertuxkart-0.9.2-unbundle-libs.patch b/games-action/supertuxkart/files/supertuxkart-0.9.2-unbundle-libs.patch
new file mode 100644
index 000000000000..1ea29e1db3cf
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-unbundle-libs.patch
@@ -0,0 +1,19 @@
+Description: Link against system copies of zlib/libpng/libjpeg/bzip2
+Forwarded: not-yet
+Author: Vincent Cheng <vcheng@debian.org>
+Last-Update: 2016-07-17
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -351,6 +351,11 @@
+ ${OPENAL_LIBRARY}
+ ${OPENGL_LIBRARIES}
+ ${FREETYPE_LIBRARIES}
++ X11
++ z
++ png
++ jpeg
++ bz2
+ )
+
+ if(UNIX AND NOT APPLE)
diff --git a/games-action/supertuxkart/metadata.xml b/games-action/supertuxkart/metadata.xml
new file mode 100644
index 000000000000..62c1f65db331
--- /dev/null
+++ b/games-action/supertuxkart/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <use>
+ <flag name="fribidi">Support for right-to-left languages</flag>
+ <flag name="wiimote">Support for wiimote input devices</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">supertuxkart</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/games-action/supertuxkart/supertuxkart-0.9.2.ebuild b/games-action/supertuxkart/supertuxkart-0.9.2.ebuild
new file mode 100644
index 000000000000..05ff5a68fc1c
--- /dev/null
+++ b/games-action/supertuxkart/supertuxkart-0.9.2.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils eutils gnome2-utils
+
+DESCRIPTION="A kart racing game starring Tux, the linux penguin (TuxKart fork)"
+HOMEPAGE="https://supertuxkart.net/"
+SRC_URI="mirror://sourceforge/${PN}/SuperTuxKart/${PV}/${P}-src.tar.xz
+ mirror://gentoo/${PN}.png"
+
+LICENSE="GPL-2 GPL-3 CC-BY-SA-3.0 CC-BY-2.0 public-domain ZLIB"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="debug fribidi wiimote"
+
+# don't unbundle irrlicht and bullet
+# both are modified and system versions will break the game
+# https://sourceforge.net/p/irrlicht/feature-requests/138/
+
+RDEPEND="
+ media-libs/glew:0=
+ media-libs/libpng:0=
+ media-libs/libvorbis
+ media-libs/openal
+ net-libs/enet:1.3=
+ net-misc/curl
+ sys-libs/zlib
+ virtual/glu
+ virtual/jpeg:0
+ virtual/libintl
+ virtual/opengl
+ x11-libs/libX11
+ x11-libs/libXxf86vm
+ fribidi? ( dev-libs/fribidi )
+ wiimote? ( net-wireless/bluez )"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.9.2-unbundle-enet.patch
+ "${FILESDIR}"/${PN}-0.9.2-unbundle-libs.patch
+ "${FILESDIR}"/${PN}-0.9.2-fix-angelscript.patch
+ "${FILESDIR}"/${PN}-0.9.2-irrlicht-arch-support.patch
+ "${FILESDIR}"/${PN}-0.9.2-irrlicht-as-needed.patch
+ "${FILESDIR}"/${PN}-0.9.2-irrlicht-bundled-libs.patch
+ "${FILESDIR}"/${PN}-0.9.2-irrlicht-system-libs.patch
+ "${FILESDIR}"/${PN}-0.9.2-fix-buildsystem.patch
+)
+
+src_prepare() {
+ cmake-utils_src_prepare
+
+ # remove bundled libraries, just to be sure
+ rm -r lib/{enet,glew,jpeglib,libpng,zlib} || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ # system dev-libs/angelscript leads
+ # to failed assert segfaults
+ -DUSE_SYSTEM_ANGELSCRIPT=OFF
+ -DUSE_FRIBIDI=$(usex fribidi)
+ -DUSE_WIIUSE=$(usex wiimote)
+ -DSTK_INSTALL_BINARY_DIR=bin
+ -DSTK_INSTALL_DATA_DIR=share/${PN}
+ )
+ cmake-utils_src_configure
+}
+
+src_install() {
+ cmake-utils_src_install
+ dodoc CHANGELOG.md TODO.md
+
+ doicon -s 64 "${DISTDIR}"/${PN}.png
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}