summaryrefslogtreecommitdiff
path: root/games-action/supertuxkart
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /games-action/supertuxkart
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'games-action/supertuxkart')
-rw-r--r--games-action/supertuxkart/Manifest11
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.3-fix-buildsystem.patch103
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.3-intrin.patch56
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.3-irrlicht-arch-support.patch47
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.3-irrlicht-bundled-libs.patch33
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.3-irrlicht-system-libs.patch56
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.3-unbundle-enet.patch57
-rw-r--r--games-action/supertuxkart/files/supertuxkart-0.9.3-unbundle-libs.patch19
-rw-r--r--games-action/supertuxkart/metadata.xml16
-rw-r--r--games-action/supertuxkart/supertuxkart-0.9.3.ebuild91
10 files changed, 489 insertions, 0 deletions
diff --git a/games-action/supertuxkart/Manifest b/games-action/supertuxkart/Manifest
new file mode 100644
index 000000000000..2595e7268c9c
--- /dev/null
+++ b/games-action/supertuxkart/Manifest
@@ -0,0 +1,11 @@
+AUX supertuxkart-0.9.3-fix-buildsystem.patch 3634 BLAKE2B a6862dab8f1153b0c54880a6fc3151ab4c0cd1083aa170f6dac749c1eda18386045a8fd41ce4ac489a62891c0ad5528db720b2e8bbdc6a1295cbe4902e7850b0 SHA512 c7725e7bf8736782bdd66b3ce0680e5fcdf1a02b469f47f6123f362d985926b9c2d1e2f5555dc5f9b32cc1585397c1ac6e31f7b5ef36cd974e80d20cefc1d59e
+AUX supertuxkart-0.9.3-intrin.patch 1709 BLAKE2B 936cc845bd05c5e340f90d2bdfcb27c0853309133bf1dbbc5a068eb02d0f67e24b3a93339229f9016af5708fa6ece0626c9593d46d052b9f9d68fa77b27d8d32 SHA512 f9a2f1e5b393d67327478a4d24c492a3d7818d2e88e244877f554421bd506aebfe2c4174aad404be77067d76d408feb734ee5d27d787dd10ad148892e51b326c
+AUX supertuxkart-0.9.3-irrlicht-arch-support.patch 1514 BLAKE2B b7daa129e94ddb96a774ce8cbc47d88475ced879efb9ff38029bd36268083c5838d2c03051f8147e3e8068b588bf0325c7c204f1b3b91ec1d58936cdee6cb119 SHA512 e6560b05c37ca95f8c04ac20f109f55a0a2bf00dd10fbe1975daae5f41c0ed2e1612df12fcdf3c4b6d70ecdfbb67f3d5b4a11ec137051592f5fc67114721c03c
+AUX supertuxkart-0.9.3-irrlicht-bundled-libs.patch 1069 BLAKE2B e176361b4bb0df5c6f5a7b1bec24816c2f368470d4cb277830b02abf05d55e31bc7259620f667d704e94d7748e0cf24e53fb4c7fbea6eceae011fd2e6e0be420 SHA512 64d9e8891db76123351f55ceba034a65fd3894d80341c496ff5762678548e18d5aef8d2e71dfb01eef7591dac16685940d5083058aca40aa1d1b9d0550228d9c
+AUX supertuxkart-0.9.3-irrlicht-system-libs.patch 1576 BLAKE2B b252cc0036f41e9bcf02e1bf049f82de7cd94aba981cc7e161aac52306890fc490d2d4b213fcec60f9098573b3cc059a26aa2efe524030034e4a29c15bf36b88 SHA512 55d353d492aafec3ddb801b28bbe4058bc0b348980f631057850915849013ec191658c55dbc41b48402219a13ec5db811d89401d5cfbb27e7bf5c68f2478d5b6
+AUX supertuxkart-0.9.3-unbundle-enet.patch 1591 BLAKE2B 96bd9b9235f5eabfd02939cc76aee1f01e415554e91310f133ff8441fa8243825db66912cafde4c6ce4146a07f2870a5b11e03460a2dee9bf69c8565591239a3 SHA512 fcbae8df0424be0693dbfd71b349a3d81fd046dba2cccf720630ec94b8a575e41eefafe5e602d44e64b3613344e2b473655c2ce004dc32d45fc3e5f9e4965a22
+AUX supertuxkart-0.9.3-unbundle-libs.patch 364 BLAKE2B e83f06bcb976c01a53f80941e94c616af06509cb8c329861c2c6b206f67fadf17b7ca8bbb324b43cad5593090fae58fec5d10332013e4522ed27d1e9ee5d47fe SHA512 0ba80dd7d5b18eba882c38b7522e06d29c11acc6b34500ba29391494e085c72f1c45533c27033d37b44ef7b954339ea313632d3ced718b20294e12a47a1e78f5
+DIST supertuxkart-0.9.3-src.tar.xz 544517772 BLAKE2B 84ab64371a59bf302905181ad98dd12542a9ffda18b9081ecfa6fcbb61d89c6b1f76f3598184459bbb40a42a1c968767837e76bbd0c9b2ade6b4c18831bc61fb SHA512 29eb1d8fb8e336453e590273089af09eac9a563f82c0bc797d43d5e21d5c9d1274a84ea7ee46487b3d127c47e55e3d233ad7e0e8c502c15dbafc1cc0f5c861c9
+DIST supertuxkart.png 4435 BLAKE2B b48b95e1cdebe930837cc784c4c5e9a089a69077e2fcfed15fe5e8c4d649a0f8024769b2f2102bbaea3a94eb21f4b58b5d291b97493266c3c5c8d7335cf69a80 SHA512 a180332f79220431922fa8b351cb476ebc5d9d1df09f20707eb3bdd7002fd264cb027b8190c73c5221050e6e8601beb6758a5809d05aedfb18f0bdb426f47eda
+EBUILD supertuxkart-0.9.3.ebuild 2148 BLAKE2B ca991ebcbde7bf63d12925b0dbf21ec830a66365b9219099a603c69751c6e2d45e688fa5e015f0620759bd0697ec18bfa49b7952d2c794ba24306c07936b9d9d SHA512 1e821d4a659ad7db8a2f1fbe1c7d7622d26f896338276d4eb3cdc08f43ad5edc4b5d8ff8219f5f63e9b1e03f8253af19a750c4bec44d40d07672d545f782a490
+MISC metadata.xml 573 BLAKE2B 6a6ec70954841483c605afdf11e8b6d8e2b1b4eec660597010df8672e6726bf512aa59acd767df7ab53aeb4975a4a3f1650fb745950f078d9abe64a4753cd6d9 SHA512 c321e0f7c53b06f71d61b02185abd4f8901c21b9e59e1bf53a9a1d6f9569483307fdd1666a9a12c603971b16a47dc4780d39f8419f1396239e75cb10b289a3a9
diff --git a/games-action/supertuxkart/files/supertuxkart-0.9.3-fix-buildsystem.patch b/games-action/supertuxkart/files/supertuxkart-0.9.3-fix-buildsystem.patch
new file mode 100644
index 000000000000..def5c80340ba
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.3-fix-buildsystem.patch
@@ -0,0 +1,103 @@
+* 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
+@@ -110,43 +110,11 @@
+ include_directories(${ENET_INCLUDE_DIR})
+
+ # Build glew library
+ if(NOT USE_GLES2 AND NOT SERVER_ONLY)
++ 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")
+ endif()
+
+-if(MSVC 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 CACHE BOOL "Build static lib")
+- set(PNG_TESTS FALSE CACHE BOOL "Build libpng tests")
+- set(PNG_SHARED FALSE CACHE BOOL "Build shared lib")
+- add_subdirectory("${PROJECT_SOURCE_DIR}/lib/libpng")
+- include_directories("${PROJECT_SOURCE_DIR}/lib/libpng")
+-
+- set(PNG_PNG_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/lib/libpng/")
+- set(PNG_LIBRARY png_static)
+-endif()
+-
+-# Add jpeg library
+-if (APPLE)
+- add_subdirectory("${PROJECT_SOURCE_DIR}/lib/jpeglib")
+- include_directories("${PROJECT_SOURCE_DIR}/lib/jpeglib")
+- set(JPEG_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/lib/jpeglib/")
+- set(JPEG_LIBRARY jpeglib)
+-else()
+- find_package(JPEG REQUIRED)
+- include_directories(${JPEG_INCLUDE_DIR})
+-endif()
+
+ if (BUILD_RECORDER)
+@@ -206,6 +174,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 "
+@@ -307,14 +276,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
+@@ -426,7 +395,7 @@
+ if(NOT SERVER_ONLY)
+ if(NOT USE_GLES2)
+- target_link_libraries(supertuxkart ${OPENGL_gl_LIBRARY} glew graphics_utils)
++ target_link_libraries(supertuxkart ${OPENGL_gl_LIBRARY} ${GLEW_LIBRARIES} graphics_utils)
+ else()
+ target_link_libraries(supertuxkart GLESv2)
+ endif()
+ endif()
+--- a/lib/irrlicht/CMakeLists.txt
++++ b/lib/irrlicht/CMakeLists.txt
+@@ -68,15 +68,6 @@
+ if(WIN32)
+ 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")
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -pipe -O3 -fno-exceptions -fstrict-aliasing")
+- 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()
+
+ if(USE_GLES2)
diff --git a/games-action/supertuxkart/files/supertuxkart-0.9.3-intrin.patch b/games-action/supertuxkart/files/supertuxkart-0.9.3-intrin.patch
new file mode 100644
index 000000000000..75830b8ba8f2
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.3-intrin.patch
@@ -0,0 +1,56 @@
+From 813b08bc73e4e93714b972ee56c64b4771735e01 Mon Sep 17 00:00:00 2001
+From: Benau <Benau@users.noreply.github.com>
+Date: Sun, 14 Jan 2018 10:19:37 +0800
+Subject: [PATCH] Fix #3091
+
+---
+ lib/graphics_utils/mipmap/cpusimd.h | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/lib/graphics_utils/mipmap/cpusimd.h b/lib/graphics_utils/mipmap/cpusimd.h
+index 1dc2c730b2..5e2cf30e5f 100644
+--- a/lib/graphics_utils/mipmap/cpusimd.h
++++ b/lib/graphics_utils/mipmap/cpusimd.h
+@@ -38,11 +38,11 @@
+ #include <mmintrin.h>
+ #define CPU_MMX_SUPPORT (1)
+ #endif
+-#if __SSE__ || _M_X64 || _M_IX86_FP >= 1 || CPU_ENABLE_SSE
++#if __SSE__ || defined(_M_X64) || ( defined(_M_IX86_FP) && ( _M_IX86_FP >= 1 ) ) || CPU_ENABLE_SSE
+ #include <xmmintrin.h>
+ #define CPU_SSE_SUPPORT (1)
+ #endif
+-#if __SSE2__ || _M_X64 || _M_IX86_FP >= 2 || CPU_ENABLE_SSE2
++#if __SSE2__ || defined(_M_X64) || ( defined(_M_IX86_FP) && ( _M_IX86_FP >= 2 ) ) || CPU_ENABLE_SSE2
+ #include <emmintrin.h>
+ #define CPU_SSE2_SUPPORT (1)
+ #endif
+@@ -95,23 +95,23 @@
+ #define CPU_POPCNT_SUPPORT (1)
+ #endif
+ #if __LZCNT__ || CPU_ENABLE_LZCNT
+- #include <lzcntintrin.h>
++ #include <x86intrin.h>
+ #define CPU_LZCNT_SUPPORT (1)
+ #endif
+ #if __F16C__ || CPU_ENABLE_F16C
+- #include <f16cintrin.h>
++ #include <x86intrin.h>
+ #define CPU_F16C_SUPPORT (1)
+ #endif
+ #if __BMI__ || CPU_ENABLE_BMI
+- #include <bmiintrin.h>
++ #include <x86intrin.h>
+ #define CPU_BMI_SUPPORT (1)
+ #endif
+ #if __BMI2__ || CPU_ENABLE_BMI2
+- #include <bmi2intrin.h>
++ #include <x86intrin.h>
+ #define CPU_BMI2_SUPPORT (1)
+ #endif
+ #if __TBM__ || CPU_ENABLE_TBM
+- #include <tbmintrin.h>
++ #include <x86intrin.h>
+ #define CPU_TBM_SUPPORT (1)
+ #endif
+
diff --git a/games-action/supertuxkart/files/supertuxkart-0.9.3-irrlicht-arch-support.patch b/games-action/supertuxkart/files/supertuxkart-0.9.3-irrlicht-arch-support.patch
new file mode 100644
index 000000000000..66191861a963
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.3-irrlicht-arch-support.patch
@@ -0,0 +1,47 @@
+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
+@@ -110,4 +110,8 @@
+ #ifndef _IRR_SOLARIS_PLATFORM_
+ #define _IRR_LINUX_PLATFORM_
++#include <endian.h>
++ #if __BYTE_ORDER == __BIG_ENDIAN
++ #define __BIG_ENDIAN__
++ #endif
+ #endif
+ #define _IRR_POSIX_API_
+@@ -460,11 +464,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.3-irrlicht-bundled-libs.patch b/games-action/supertuxkart/files/supertuxkart-0.9.3-irrlicht-bundled-libs.patch
new file mode 100644
index 000000000000..194f278b958d
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.3-irrlicht-bundled-libs.patch
@@ -0,0 +1,33 @@
+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,9 +2,6 @@
+ find_package(PNG REQUIRED)
+ find_package(JPEG REQUIRED)
+
+-include_directories("${CMAKE_CURRENT_SOURCE_DIR}/include/"
+- "${JPEG_INCLUDE_DIR}"
+- "${PNG_INCLUDE_DIRS}"
+- "${ZLIB_INCLUDE_DIR}")
++include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include/)
+
+ if(MSVC OR APPLE)
+@@ -576,7 +573,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(NOT SERVER_ONLY)
diff --git a/games-action/supertuxkart/files/supertuxkart-0.9.3-irrlicht-system-libs.patch b/games-action/supertuxkart/files/supertuxkart-0.9.3-irrlicht-system-libs.patch
new file mode 100644
index 000000000000..ce7ce63fa661
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.3-irrlicht-system-libs.patch
@@ -0,0 +1,56 @@
+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/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
+
diff --git a/games-action/supertuxkart/files/supertuxkart-0.9.3-unbundle-enet.patch b/games-action/supertuxkart/files/supertuxkart-0.9.3-unbundle-enet.patch
new file mode 100644
index 000000000000..8c00fce7e186
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.3-unbundle-enet.patch
@@ -0,0 +1,57 @@
+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
+@@ -105,9 +105,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
+ if(NOT USE_GLES2 AND NOT SERVER_ONLY)
+@@ -406,10 +406,10 @@
+ bulletdynamics
+ bulletcollision
+ bulletmath
+- enet
+ stkirrlicht
+ ${Angelscript_LIBRARIES}
+ ${CURL_LIBRARIES}
++ ${ENET_LIBRARIES}
+ ${OGGVORBIS_LIBRARIES}
+ ${OPENAL_LIBRARY}
+ ${FREETYPE_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.3-unbundle-libs.patch b/games-action/supertuxkart/files/supertuxkart-0.9.3-unbundle-libs.patch
new file mode 100644
index 000000000000..798a6cdea7ac
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.3-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
+@@ -416,6 +416,11 @@
+ ${JPEG_LIBRARIES}
+ ${TURBOJPEG_LIBRARY}
+ #${VPX_LIBRARIES}
++ X11
++ z
++ png
++ jpeg
++ bz2
+ )
+
+ if(NOT SERVER_ONLY)
diff --git a/games-action/supertuxkart/metadata.xml b/games-action/supertuxkart/metadata.xml
new file mode 100644
index 000000000000..a5ee37310257
--- /dev/null
+++ b/games-action/supertuxkart/metadata.xml
@@ -0,0 +1,16 @@
+<?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="recorder">Enable recording with <pkg>media-libs/libopenglrecorder</pkg></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.3.ebuild b/games-action/supertuxkart/supertuxkart-0.9.3.ebuild
new file mode 100644
index 000000000000..cfda52536ec4
--- /dev/null
+++ b/games-action/supertuxkart/supertuxkart-0.9.3.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2018 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 recorder 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 )
+ recorder? ( media-libs/libopenglrecorder )
+ wiimote? ( net-wireless/bluez )"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.9.3-intrin.patch
+ "${FILESDIR}"/${PN}-0.9.3-unbundle-enet.patch
+ "${FILESDIR}"/${PN}-0.9.3-unbundle-libs.patch
+ "${FILESDIR}"/${PN}-0.9.3-irrlicht-arch-support.patch
+ "${FILESDIR}"/${PN}-0.9.3-irrlicht-bundled-libs.patch
+ "${FILESDIR}"/${PN}-0.9.3-irrlicht-system-libs.patch
+ "${FILESDIR}"/${PN}-0.9.3-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)
+ -DBUILD_RECORDER=$(usex recorder)
+ -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
+
+ doicon -s 64 "${DISTDIR}"/${PN}.png
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}