diff options
10 files changed, 506 insertions, 0 deletions
diff --git a/games-action/supertuxkart/Manifest b/games-action/supertuxkart/Manifest index 99cc09367098..93f2de11f334 100644 --- a/games-action/supertuxkart/Manifest +++ b/games-action/supertuxkart/Manifest @@ -1,2 +1,3 @@ DIST supertuxkart-0.9.1-src.tar.xz 425822808 SHA256 c50f00a71df165fb613d20e86bea2d9d5e51ed3e27e1d436fbac3b07cf2ea149 SHA512 11ea064210ea6bc36258f08e57c6aac46739133017ad3ba97ca0edd84c818c2f72dae60bbe7cd79135be9785fb0e15c9904b151c894e1c21b881598113344cf4 WHIRLPOOL 8acd59e878b44f8e504d57687ea1bbece05d5f14b29e0c62a22183729129fb115fccb9a1a89d5e0a86881ac6487c36ea520aab835ba5efaaa3c71471fda9b15f +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 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/supertuxkart-0.9.2.ebuild b/games-action/supertuxkart/supertuxkart-0.9.2.ebuild new file mode 100644 index 000000000000..12910dfd8dbc --- /dev/null +++ b/games-action/supertuxkart/supertuxkart-0.9.2.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +inherit cmake-utils eutils gnome2-utils + +DESCRIPTION="A kart racing game starring Tux, the linux penguin (TuxKart fork)" +HOMEPAGE="http://supertuxkart.sourceforge.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 ~ppc ~x86" +IUSE="debug fribidi wiimote" + +# don't unbundle irrlicht and bullet +# both are modified and system versions will break the game +# https://sourceforge.net/tracker/?func=detail&aid=3454889&group_id=74339&atid=540679 + +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 +} |