1 |
commit: 1209a07b7421a4e01fdab912bffea3b5ea29f486 |
2 |
Author: David Seifert <soap <AT> gentoo <DOT> org> |
3 |
AuthorDate: Fri Dec 30 10:00:20 2016 +0000 |
4 |
Commit: David Seifert <soap <AT> gentoo <DOT> org> |
5 |
CommitDate: Fri Dec 30 14:37:33 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1209a07b |
7 |
|
8 |
games-action/supertuxkart: Version bump to 0.9.2 |
9 |
|
10 |
Gentoo-bug: 594396, 598491, 598493 |
11 |
* EAPI=6 |
12 |
* Remove games.eclass |
13 |
* Add Debian patches for unbundling |
14 |
* Add GPL-2 license |
15 |
|
16 |
Package-Manager: Portage-2.3.3, Repoman-2.3.1 |
17 |
|
18 |
games-action/supertuxkart/Manifest | 1 + |
19 |
.../files/supertuxkart-0.9.2-fix-angelscript.patch | 27 ++++++ |
20 |
.../files/supertuxkart-0.9.2-fix-buildsystem.patch | 97 +++++++++++++++++++ |
21 |
.../supertuxkart-0.9.2-irrlicht-arch-support.patch | 49 ++++++++++ |
22 |
.../supertuxkart-0.9.2-irrlicht-as-needed.patch | 24 +++++ |
23 |
.../supertuxkart-0.9.2-irrlicht-bundled-libs.patch | 35 +++++++ |
24 |
.../supertuxkart-0.9.2-irrlicht-system-libs.patch | 105 +++++++++++++++++++++ |
25 |
.../files/supertuxkart-0.9.2-unbundle-enet.patch | 58 ++++++++++++ |
26 |
.../files/supertuxkart-0.9.2-unbundle-libs.patch | 19 ++++ |
27 |
.../supertuxkart/supertuxkart-0.9.2.ebuild | 91 ++++++++++++++++++ |
28 |
10 files changed, 506 insertions(+) |
29 |
|
30 |
diff --git a/games-action/supertuxkart/Manifest b/games-action/supertuxkart/Manifest |
31 |
index 99cc093..93f2de1 100644 |
32 |
--- a/games-action/supertuxkart/Manifest |
33 |
+++ b/games-action/supertuxkart/Manifest |
34 |
@@ -1,2 +1,3 @@ |
35 |
DIST supertuxkart-0.9.1-src.tar.xz 425822808 SHA256 c50f00a71df165fb613d20e86bea2d9d5e51ed3e27e1d436fbac3b07cf2ea149 SHA512 11ea064210ea6bc36258f08e57c6aac46739133017ad3ba97ca0edd84c818c2f72dae60bbe7cd79135be9785fb0e15c9904b151c894e1c21b881598113344cf4 WHIRLPOOL 8acd59e878b44f8e504d57687ea1bbece05d5f14b29e0c62a22183729129fb115fccb9a1a89d5e0a86881ac6487c36ea520aab835ba5efaaa3c71471fda9b15f |
36 |
+DIST supertuxkart-0.9.2-src.tar.xz 501606188 SHA256 0b080bb098a26adb552d6fd48905bcb6b1e873ef1567457d7268d7d3aaa48282 SHA512 57f11d518736f88044d1cb73e1dfcc92f5667f3b1147ab7e54435f6bc560fe856c3650410410da5fa048bf23d0b64fc8a9887c830001e1435b0359c9163e71b0 WHIRLPOOL c534854127981821412437632fdf9ff239988199d60f8d582b59bd624dff87f5e37a5cb54020b679e9fb6d440187a5bd0e0c2eb00311e2ae8de6ba58fb1d1d82 |
37 |
DIST supertuxkart.png 4435 SHA256 99bc1801cb0514946cb0171d6d5a84484b6dc881edfa7f096b6eb5fea2f28828 SHA512 a180332f79220431922fa8b351cb476ebc5d9d1df09f20707eb3bdd7002fd264cb027b8190c73c5221050e6e8601beb6758a5809d05aedfb18f0bdb426f47eda WHIRLPOOL eef651802a927b451226fc06a682d7dea68b65b05195130ccfc7544165f26f65bda4fc9565e09d6487d02be3cf57880b0c6c257f26587c6bc6d30afc6aa5d3c2 |
38 |
|
39 |
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 |
40 |
new file mode 100644 |
41 |
index 00000000..a2f4fb1 |
42 |
--- /dev/null |
43 |
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-fix-angelscript.patch |
44 |
@@ -0,0 +1,27 @@ |
45 |
+Description: Fix FTBFS on arm64, mips/mips64/mipsel, ppc64el, s390x |
46 |
+Origin: upstream, https://github.com/supertuxkart/stk-code/commit/5e05f1178ce6bc5f3a653b55ab3dc6d016196341 |
47 |
+Bug: https://github.com/supertuxkart/stk-code/issues/2569 |
48 |
+Bug-Debian: https://bugs.debian.org/830748 |
49 |
+Last-Update: 2016-12-03 |
50 |
+ |
51 |
+--- a/lib/angelscript/projects/cmake/CMakeLists.txt |
52 |
++++ b/lib/angelscript/projects/cmake/CMakeLists.txt |
53 |
+@@ -68,6 +68,7 @@ set(ANGELSCRIPT_SOURCE |
54 |
+ ../../source/as_bytecode.cpp |
55 |
+ ../../source/as_callfunc.cpp |
56 |
+ ../../source/as_callfunc_x86.cpp |
57 |
++ ../../source/as_callfunc_mips.cpp |
58 |
+ ../../source/as_callfunc_x64_gcc.cpp |
59 |
+ ../../source/as_callfunc_x64_msvc.cpp |
60 |
+ ../../source/as_callfunc_x64_mingw.cpp |
61 |
+--- a/lib/angelscript/source/as_config.h |
62 |
++++ b/lib/angelscript/source/as_config.h |
63 |
+@@ -844,7 +844,7 @@ |
64 |
+ #define THISCALL_PASS_OBJECT_POINTER_ON_THE_STACK |
65 |
+ #define AS_X86 |
66 |
+ #undef AS_NO_THISCALL_FUNCTOR_METHOD |
67 |
+- #elif defined(__LP64__) && !defined(__arm64__) |
68 |
++ #elif defined(__x86_64__) |
69 |
+ #define AS_X64_GCC |
70 |
+ #undef AS_NO_THISCALL_FUNCTOR_METHOD |
71 |
+ #define HAS_128_BIT_PRIMITIVES |
72 |
|
73 |
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 |
74 |
new file mode 100644 |
75 |
index 00000000..6f1c39b |
76 |
--- /dev/null |
77 |
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-fix-buildsystem.patch |
78 |
@@ -0,0 +1,97 @@ |
79 |
+* Unbundle remaining libraries: GLEW, zlib, png, jpeg |
80 |
+* Add -DAS_DEPRECATED for Angelscript |
81 |
+* Remove definition of debug macros |
82 |
+* Build bundled Irrlicht with user flags |
83 |
+ |
84 |
+--- a/CMakeLists.txt |
85 |
++++ b/CMakeLists.txt |
86 |
+@@ -68,37 +68,10 @@ |
87 |
+ include_directories(${ENET_INCLUDE_DIR}) |
88 |
+ |
89 |
+ # Build glew library |
90 |
++find_package(GLEW REQUIRED) |
91 |
++include_directories(${GLEW_INCLUDE_DIRS}) |
92 |
+ add_definitions(-DGLEW_NO_GLU) |
93 |
+-add_subdirectory("${PROJECT_SOURCE_DIR}/lib/glew") |
94 |
+-include_directories("${PROJECT_SOURCE_DIR}/lib/glew/include") |
95 |
+ |
96 |
+-if((WIN32 AND NOT MINGW) OR APPLE) |
97 |
+- if (NOT APPLE) |
98 |
+- # Build zlib library |
99 |
+- add_subdirectory("${PROJECT_SOURCE_DIR}/lib/zlib") |
100 |
+- include_directories("${PROJECT_SOURCE_DIR}/lib/zlib") |
101 |
+- |
102 |
+- set(ZLIB_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/lib/zlib" "${PROJECT_BINARY_DIR}/lib/zlib/") |
103 |
+- set(ZLIB_LIBRARY zlibstatic) |
104 |
+- endif() |
105 |
+- |
106 |
+- # Build png library |
107 |
+- set (SKIP_INSTALL_ALL TRUE) |
108 |
+- set (PNG_STATIC TRUE) |
109 |
+- set (PNG_TESTS FALSE) |
110 |
+- set (PNG_SHARED FALSE) |
111 |
+- add_subdirectory("${PROJECT_SOURCE_DIR}/lib/libpng") |
112 |
+- include_directories("${PROJECT_SOURCE_DIR}/lib/libpng") |
113 |
+- |
114 |
+- #build jpeg library |
115 |
+- add_subdirectory("${PROJECT_SOURCE_DIR}/lib/jpeglib") |
116 |
+- include_directories("${PROJECT_SOURCE_DIR}/lib/jpeglib") |
117 |
+- |
118 |
+- set(PNG_PNG_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/lib/libpng/") |
119 |
+- set(PNG_LIBRARY png15_static) |
120 |
+- set(JPEG_INCLUDE_DIR "${PROJECT_SOURCE_DIR}/lib/jpeglib/") |
121 |
+- set(JPEG_LIBRARY jpeglib) |
122 |
+-endif() |
123 |
+ # Build the irrlicht library |
124 |
+ add_subdirectory("${PROJECT_SOURCE_DIR}/lib/irrlicht") |
125 |
+ include_directories("${PROJECT_SOURCE_DIR}/lib/irrlicht/include") |
126 |
+@@ -130,6 +103,7 @@ |
127 |
+ find_package(Angelscript) |
128 |
+ if(ANGELSCRIPT_FOUND) |
129 |
+ include_directories(${Angelscript_INCLUDE_DIRS}) |
130 |
++ add_definitions(-DAS_DEPRECATED) |
131 |
+ else() |
132 |
+ message(FATAL_ERROR "Angelscript not found. " |
133 |
+ "Either install angelscript or use built-in version using " |
134 |
+@@ -245,14 +219,6 @@ |
135 |
+ # VS will automatically add NDEBUG for release mode, but only _DEBUG in debug mode. |
136 |
+ # Since STK uses DEBUG, this is added for debug compilation only: |
137 |
+ set_property(DIRECTORY PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG) |
138 |
+-else() |
139 |
+- # All non VS generators used create only a single compile mode, so |
140 |
+- # compile flags can be simplye be added |
141 |
+- if(CMAKE_BUILD_TYPE MATCHES Debug) |
142 |
+- add_definitions(-DDEBUG) |
143 |
+- else() |
144 |
+- add_definitions(-DNDEBUG) |
145 |
+- endif() |
146 |
+ endif() |
147 |
+ |
148 |
+ # TODO: remove this switch |
149 |
+@@ -342,7 +308,7 @@ |
150 |
+ bulletdynamics |
151 |
+ bulletcollision |
152 |
+ bulletmath |
153 |
+- glew |
154 |
++ ${GLEW_LIBRARIES} |
155 |
+ stkirrlicht |
156 |
+ ${Angelscript_LIBRARIES} |
157 |
+ ${CURL_LIBRARIES} |
158 |
+--- a/lib/irrlicht/CMakeLists.txt |
159 |
++++ b/lib/irrlicht/CMakeLists.txt |
160 |
+@@ -20,15 +20,6 @@ |
161 |
+ elseif(MINGW) |
162 |
+ add_definitions(-D_IRR_STATIC_LIB_) |
163 |
+ add_definitions(-D_CRT_SECURE_NO_WARNINGS) # Shut up about unsafe stuff |
164 |
+-else() |
165 |
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -pipe -O3 -fno-exceptions -fstrict-aliasing -I/usr/X11R6/include") |
166 |
+- set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} -Wall -pipe -O3 -fno-exceptions -fstrict-aliasing -I/usr/X11R6/include") |
167 |
+- if(CMAKE_COMPILER_IS_GNUCC) |
168 |
+- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fexpensive-optimizations") |
169 |
+- endif() |
170 |
+- if(CMAKE_COMPILER_IS_GNUCXX) |
171 |
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fexpensive-optimizations") |
172 |
+- endif() |
173 |
+ endif() |
174 |
+ |
175 |
+ # Xrandr |
176 |
|
177 |
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 |
178 |
new file mode 100644 |
179 |
index 00000000..ec56838 |
180 |
--- /dev/null |
181 |
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-arch-support.patch |
182 |
@@ -0,0 +1,49 @@ |
183 |
+From: Christoph Egger <debian@×××××××××××××××.org> |
184 |
+Subject: [PATCH] debian/arch-support |
185 |
+ |
186 |
+Building on non-linux architectures currently fails with unpatched |
187 |
+irrlicht because irrlicht tries to create Joystick support using |
188 |
+linux-specific headers. However there's infrastructure to disable |
189 |
+Joystick support, we just need to activate that on non-linux |
190 |
+architectures. |
191 |
+ |
192 |
+Additionally if built on a sparc machine irrlicht assumes wrongly it's |
193 |
+a solaris system. We fix this wrong assumption as our sparc builds are |
194 |
+all on linux. |
195 |
+ |
196 |
+Finally irrlicht exceeds the size constraights for -fpic requiering to |
197 |
+build with -fPIC. As upstream doesn't do that we need to fix this for |
198 |
+sparc and s390 builds (powerPC?). |
199 |
+ |
200 |
+Signed-off-by: Christoph Egger <debian@×××××××××××××××.org> |
201 |
+ |
202 |
+--- |
203 |
+ lib/irrlicht/include/IrrCompileConfig.h | 10 +++++----- |
204 |
+ 1 files changed, 5 insertions(+), 5 deletions(-) |
205 |
+ |
206 |
+--- a/lib/irrlicht/include/IrrCompileConfig.h |
207 |
++++ b/lib/irrlicht/include/IrrCompileConfig.h |
208 |
+@@ -101,6 +101,10 @@ |
209 |
+ #ifndef _IRR_SOLARIS_PLATFORM_ |
210 |
+ #if !defined(__linux__) && !defined(__FreeBSD__) |
211 |
+ #define _IRR_LINUX_PLATFORM_ |
212 |
++#include <endian.h> |
213 |
++ #if __BYTE_ORDER == __BIG_ENDIAN |
214 |
++ #define __BIG_ENDIAN__ |
215 |
++ #endif |
216 |
+ #endif |
217 |
+ #endif |
218 |
+ #define _IRR_POSIX_API_ |
219 |
+@@ -406,11 +410,7 @@ |
220 |
+ #undef _IRR_WCHAR_FILESYSTEM |
221 |
+ #endif |
222 |
+ |
223 |
+-#if defined(__sparc__) || defined(__sun__) |
224 |
+-#define __BIG_ENDIAN__ |
225 |
+-#endif |
226 |
+- |
227 |
+-#if defined(_IRR_SOLARIS_PLATFORM_) |
228 |
++#if defined(_IRR_SOLARIS_PLATFORM_) || defined(__FreeBSD_kernel__) || defined(__gnu_hurd__) |
229 |
+ #undef _IRR_COMPILE_WITH_JOYSTICK_EVENTS_ |
230 |
+ #endif |
231 |
+ |
232 |
|
233 |
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 |
234 |
new file mode 100644 |
235 |
index 00000000..b6cb0fe |
236 |
--- /dev/null |
237 |
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-as-needed.patch |
238 |
@@ -0,0 +1,24 @@ |
239 |
+From: Christoph Egger <Christoph.Egger@×××.de> |
240 |
+Subject: [PATCH] debian/link-against-needed-libs |
241 |
+ |
242 |
+There are quite some libraries irrlicht needs but does not link |
243 |
+against. This patch makes irrlicht link correctly against all the |
244 |
+needed libraries. |
245 |
+ |
246 |
+Signed-off-by: Christoph Egger <Christoph.Egger@×××.de> |
247 |
+ |
248 |
+--- |
249 |
+ lib/irrlicht/source/Irrlicht/Makefile | 2 +- |
250 |
+ 1 files changed, 1 insertions(+), 1 deletions(-) |
251 |
+ |
252 |
+--- a/lib/irrlicht/source/Irrlicht/Makefile |
253 |
++++ b/lib/irrlicht/source/Irrlicht/Makefile |
254 |
+@@ -88,7 +88,7 @@ |
255 |
+ LIB_PATH = ../../lib/$(SYSTEM) |
256 |
+ INSTALL_DIR = /usr/local/lib |
257 |
+ sharedlib install: SHARED_LIB = libIrrlicht.so |
258 |
+-sharedlib: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm |
259 |
++staticlib sharedlib: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm -lX11 -lz -lpng -ljpeg -lbz2 |
260 |
+ staticlib sharedlib: CXXINCS += -I/usr/X11R6/include |
261 |
+ |
262 |
+ #OSX specific options |
263 |
|
264 |
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 |
265 |
new file mode 100644 |
266 |
index 00000000..1a1013e |
267 |
--- /dev/null |
268 |
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-bundled-libs.patch |
269 |
@@ -0,0 +1,35 @@ |
270 |
+Description: Remove embedded libraries in Irrlicht source (flagged by lintian) |
271 |
+ Since removing the subdirectories containing libjpeg/libpng/zlib/bzip2/lzma |
272 |
+ would make this patch way too large, this patch should be applied on top of |
273 |
+ rm -rf lib/jpeglib/ |
274 |
+ rm -rf lib/zlib/ |
275 |
+ rm -rf lib/libpng/ |
276 |
+ in debian/rules (e.g. in the clean target). |
277 |
+Forwarded: no |
278 |
+Author: Vincent Cheng <vcheng@××××××.org> |
279 |
+Last-Update: 2016-07-07 |
280 |
+ |
281 |
+--- a/lib/irrlicht/CMakeLists.txt |
282 |
++++ b/lib/irrlicht/CMakeLists.txt |
283 |
+@@ -2,11 +2,7 @@ |
284 |
+ find_package(PNG REQUIRED) |
285 |
+ find_package(JPEG REQUIRED) |
286 |
+ |
287 |
+-include_directories("${CMAKE_CURRENT_SOURCE_DIR}/include/" |
288 |
+- "${JPEG_INCLUDE_DIR}" |
289 |
+- "${PNG_INCLUDE_DIRS}" |
290 |
+- "${ZLIB_INCLUDE_DIR}" |
291 |
+- "${CMAKE_CURRENT_BINARY_DIR}/../zlib/") # For zconf.h on WIN32 |
292 |
++include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include/) |
293 |
+ |
294 |
+ find_package(OpenGL REQUIRED) |
295 |
+ include_directories(${OPENGL_INCLUDE_DIR}) |
296 |
+@@ -508,7 +504,7 @@ |
297 |
+ endif() |
298 |
+ |
299 |
+ add_library(stkirrlicht STATIC ${IRRLICHT_SOURCES}) |
300 |
+-target_link_libraries(stkirrlicht ${PNG_LIBRARY} ${JPEG_LIBRARY} ${ZLIB_LIBRARY}) |
301 |
++target_link_libraries(stkirrlicht png jpeg z) |
302 |
+ |
303 |
+ if(WIN32) |
304 |
+ target_link_libraries(stkirrlicht imm32) |
305 |
|
306 |
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 |
307 |
new file mode 100644 |
308 |
index 00000000..f82dc50 |
309 |
--- /dev/null |
310 |
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-irrlicht-system-libs.patch |
311 |
@@ -0,0 +1,105 @@ |
312 |
+Subject: [PATCH] debian/use-system-libs |
313 |
+ |
314 |
+Path to build irrlicht using the system libraries for png,zlib and |
315 |
+jpeg as well as the glext family of header files. |
316 |
+ |
317 |
+Signed-off-by: Christoph Egger <debian@×××××××××××××××.org |
318 |
+ |
319 |
+--- a/lib/irrlicht/source/Irrlicht/CIrrDeviceLinux.h |
320 |
++++ b/lib/irrlicht/source/Irrlicht/CIrrDeviceLinux.h |
321 |
+@@ -23,7 +23,7 @@ |
322 |
+ #include <GL/glx.h> |
323 |
+ #ifdef _IRR_OPENGL_USE_EXTPOINTER_ |
324 |
+ #define GLX_GLXEXT_PROTOTYPES |
325 |
+-#include "glxext.h" |
326 |
++#include <GL/glxext.h> |
327 |
+ #endif |
328 |
+ #endif |
329 |
+ |
330 |
+--- a/lib/irrlicht/source/Irrlicht/COpenGLExtensionHandler.h |
331 |
++++ b/lib/irrlicht/source/Irrlicht/COpenGLExtensionHandler.h |
332 |
+@@ -21,7 +21,7 @@ |
333 |
+ #endif |
334 |
+ #include <GL/gl.h> |
335 |
+ #if defined(_IRR_OPENGL_USE_EXTPOINTER_) |
336 |
+- #include "glext.h" |
337 |
++ #include <GL/glext.h> |
338 |
+ #endif |
339 |
+ #include "wglext.h" |
340 |
+ |
341 |
+@@ -36,7 +36,7 @@ |
342 |
+ #endif |
343 |
+ #include <OpenGL/gl.h> |
344 |
+ #if defined(_IRR_OPENGL_USE_EXTPOINTER_) |
345 |
+- #include "glext.h" |
346 |
++ #include <GL/glext.h> |
347 |
+ #endif |
348 |
+ #elif defined(_IRR_COMPILE_WITH_SDL_DEVICE_) && !defined(_IRR_COMPILE_WITH_X11_DEVICE_) |
349 |
+ #if defined(_IRR_OPENGL_USE_EXTPOINTER_) |
350 |
+@@ -50,7 +50,7 @@ |
351 |
+ #include <SDL/SDL_video.h> |
352 |
+ #include <SDL/SDL_opengl.h> |
353 |
+ typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC) (GLenum mode); |
354 |
+- #include "glext.h" |
355 |
++ #include <GL/glext.h> |
356 |
+ #else |
357 |
+ #if defined(_IRR_OPENGL_USE_EXTPOINTER_) |
358 |
+ #define GL_GLEXT_LEGACY 1 |
359 |
+--- a/lib/irrlicht/source/Irrlicht/COpenGLSLMaterialRenderer.h |
360 |
++++ b/lib/irrlicht/source/Irrlicht/COpenGLSLMaterialRenderer.h |
361 |
+@@ -12,7 +12,7 @@ |
362 |
+ #define WIN32_LEAN_AND_MEAN |
363 |
+ #include <windows.h> |
364 |
+ #include <GL/gl.h> |
365 |
+- #include "glext.h" |
366 |
++ #include <GL/glext.h> |
367 |
+ #else |
368 |
+ #if defined(_IRR_OPENGL_USE_EXTPOINTER_) |
369 |
+ #define GL_GLEXT_LEGACY 1 |
370 |
+@@ -25,7 +25,7 @@ |
371 |
+ #include <GL/gl.h> |
372 |
+ #endif |
373 |
+ #if defined(_IRR_OPENGL_USE_EXTPOINTER_) |
374 |
+- #include "glext.h" |
375 |
++ #include <GL/glext.h> |
376 |
+ #endif |
377 |
+ #endif |
378 |
+ |
379 |
+--- a/lib/irrlicht/source/Irrlicht/Makefile |
380 |
++++ b/lib/irrlicht/source/Irrlicht/Makefile |
381 |
+@@ -43,7 +43,7 @@ |
382 |
+ CImageWriterBMP.o CImageWriterJPG.o CImageWriterPCX.o CImageWriterPNG.o CImageWriterPPM.o CImageWriterPSD.o CImageWriterTGA.o |
383 |
+ IRRVIDEOOBJ = CVideoModeList.o CFPSCounter.o $(IRRDRVROBJ) $(IRRIMAGEOBJ) |
384 |
+ 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 |
385 |
+-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 |
386 |
++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 |
387 |
+ IRROTHEROBJ = CIrrDeviceSDL.o CIrrDeviceLinux.o CIrrDeviceConsole.o CIrrDeviceStub.o CIrrDeviceWin32.o CIrrDeviceFB.o CLogger.o COSOperator.o Irrlicht.o os.o |
388 |
+ 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 |
389 |
+ 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 |
390 |
+@@ -56,14 +56,14 @@ |
391 |
+ EXTRAOBJ = |
392 |
+ LINKOBJ = $(IRRMESHOBJ) $(IRROBJ) $(IRRPARTICLEOBJ) $(IRRANIMOBJ) \ |
393 |
+ $(IRRVIDEOOBJ) $(IRRSWRENDEROBJ) $(IRRIOOBJ) $(IRROTHEROBJ) \ |
394 |
+- $(IRRGUIOBJ) $(ZLIBOBJ) $(JPEGLIBOBJ) $(LIBPNGOBJ) $(LIBAESGM) \ |
395 |
+- $(BZIP2OBJ) $(EXTRAOBJ) |
396 |
++ $(IRRGUIOBJ) $(LIBAESGM) \ |
397 |
++ $(EXTRAOBJ) |
398 |
+ |
399 |
+ ############### |
400 |
+ #Compiler flags |
401 |
+-CXXINCS = -I../../include -Izlib -Ijpeglib -Ilibpng |
402 |
++CXXINCS = -I../../include # -Izlib -Ijpeglib -Ilibpng |
403 |
+ CPPFLAGS += $(CXXINCS) -DIRRLICHT_EXPORTS=1 |
404 |
+-CXXFLAGS += -Wall -pipe -fno-exceptions -fno-rtti -fstrict-aliasing |
405 |
++CXXFLAGS += -Wall -pipe -fno-exceptions -fstrict-aliasing |
406 |
+ ifndef NDEBUG |
407 |
+ CXXFLAGS += -g -D_DEBUG |
408 |
+ else |
409 |
+@@ -154,6 +154,7 @@ |
410 |
+ mkdir -p $(INSTALL_DIR)/../include/irrlicht |
411 |
+ cp ../../include/*.h $(INSTALL_DIR)/../include/irrlicht/ |
412 |
+ cp $(LIB_PATH)/$(SHARED_FULLNAME) $(INSTALL_DIR) |
413 |
++ cp $(LIB_PATH)/$(STATIC_LIB) $(INSTALL_DIR) |
414 |
+ cd $(INSTALL_DIR) && ln -s -f $(SHARED_FULLNAME) $(SONAME) |
415 |
+ cd $(INSTALL_DIR) && ln -s -f $(SONAME) $(SHARED_LIB) |
416 |
+ # ldconfig -n $(INSTALL_DIR) |
417 |
|
418 |
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 |
419 |
new file mode 100644 |
420 |
index 00000000..259627a |
421 |
--- /dev/null |
422 |
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-unbundle-enet.patch |
423 |
@@ -0,0 +1,58 @@ |
424 |
+Description: Build supertuxkart against system enet instead of embedded copy |
425 |
+Forwarded: not-yet |
426 |
+Author: Vincent Cheng <vcheng@××××××.org> |
427 |
+Last-Update: 2016-07-17 |
428 |
+ |
429 |
+--- a/CMakeLists.txt |
430 |
++++ b/CMakeLists.txt |
431 |
+@@ -63,9 +63,9 @@ |
432 |
+ add_subdirectory("${PROJECT_SOURCE_DIR}/lib/bullet") |
433 |
+ include_directories("${PROJECT_SOURCE_DIR}/lib/bullet/src") |
434 |
+ |
435 |
+-# Build the ENet UDP network library |
436 |
+-add_subdirectory("${PROJECT_SOURCE_DIR}/lib/enet") |
437 |
+-include_directories("${PROJECT_SOURCE_DIR}/lib/enet/include") |
438 |
++# ENet |
439 |
++find_package(ENet REQUIRED) |
440 |
++include_directories(${ENET_INCLUDE_DIR}) |
441 |
+ |
442 |
+ # Build glew library |
443 |
+ add_definitions(-DGLEW_NO_GLU) |
444 |
+@@ -342,11 +342,11 @@ |
445 |
+ bulletdynamics |
446 |
+ bulletcollision |
447 |
+ bulletmath |
448 |
+- enet |
449 |
+ glew |
450 |
+ stkirrlicht |
451 |
+ ${Angelscript_LIBRARIES} |
452 |
+ ${CURL_LIBRARIES} |
453 |
++ ${ENET_LIBRARIES} |
454 |
+ ${OGGVORBIS_LIBRARIES} |
455 |
+ ${OPENAL_LIBRARY} |
456 |
+ ${OPENGL_LIBRARIES} |
457 |
+--- /dev/null |
458 |
++++ b/cmake/FindENet.cmake |
459 |
+@@ -0,0 +1,22 @@ |
460 |
++# - Find ENet |
461 |
++# Find the ENet includes and libraries |
462 |
++# |
463 |
++# Following variables are provided: |
464 |
++# ENET_FOUND |
465 |
++# True if ENet has been found |
466 |
++# ENET_INCLUDE_DIR |
467 |
++# The include directories of ENet |
468 |
++# ENET_LIBRARIES |
469 |
++# ENet library list |
470 |
++ |
471 |
++ |
472 |
++find_path(ENET_INCLUDE_DIR enet/enet.h /usr/include) |
473 |
++find_library(ENET_LIBRARY NAMES enet PATHS /usr/lib) |
474 |
++ |
475 |
++include(FindPackageHandleStandardArgs) |
476 |
++find_package_handle_standard_args(ENet DEFAULT_MSG ENET_INCLUDE_DIR ENET_LIBRARY) |
477 |
++ |
478 |
++# Publish variables |
479 |
++set(ENET_INCLUDE_DIRS ${ENET_INCLUDE_DIR}) |
480 |
++set(ENET_LIBRARIES ${ENET_LIBRARY}) |
481 |
++mark_as_advanced(ENET_INCLUDE_DIR ENET_LIBRARY) |
482 |
|
483 |
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 |
484 |
new file mode 100644 |
485 |
index 00000000..1ea29e1 |
486 |
--- /dev/null |
487 |
+++ b/games-action/supertuxkart/files/supertuxkart-0.9.2-unbundle-libs.patch |
488 |
@@ -0,0 +1,19 @@ |
489 |
+Description: Link against system copies of zlib/libpng/libjpeg/bzip2 |
490 |
+Forwarded: not-yet |
491 |
+Author: Vincent Cheng <vcheng@××××××.org> |
492 |
+Last-Update: 2016-07-17 |
493 |
+ |
494 |
+--- a/CMakeLists.txt |
495 |
++++ b/CMakeLists.txt |
496 |
+@@ -351,6 +351,11 @@ |
497 |
+ ${OPENAL_LIBRARY} |
498 |
+ ${OPENGL_LIBRARIES} |
499 |
+ ${FREETYPE_LIBRARIES} |
500 |
++ X11 |
501 |
++ z |
502 |
++ png |
503 |
++ jpeg |
504 |
++ bz2 |
505 |
+ ) |
506 |
+ |
507 |
+ if(UNIX AND NOT APPLE) |
508 |
|
509 |
diff --git a/games-action/supertuxkart/supertuxkart-0.9.2.ebuild b/games-action/supertuxkart/supertuxkart-0.9.2.ebuild |
510 |
new file mode 100644 |
511 |
index 00000000..12910df |
512 |
--- /dev/null |
513 |
+++ b/games-action/supertuxkart/supertuxkart-0.9.2.ebuild |
514 |
@@ -0,0 +1,91 @@ |
515 |
+# Copyright 1999-2016 Gentoo Foundation |
516 |
+# Distributed under the terms of the GNU General Public License v2 |
517 |
+# $Id$ |
518 |
+ |
519 |
+EAPI=6 |
520 |
+ |
521 |
+inherit cmake-utils eutils gnome2-utils |
522 |
+ |
523 |
+DESCRIPTION="A kart racing game starring Tux, the linux penguin (TuxKart fork)" |
524 |
+HOMEPAGE="http://supertuxkart.sourceforge.net/" |
525 |
+SRC_URI="mirror://sourceforge/${PN}/SuperTuxKart/${PV}/${P}-src.tar.xz |
526 |
+ mirror://gentoo/${PN}.png" |
527 |
+ |
528 |
+LICENSE="GPL-2 GPL-3 CC-BY-SA-3.0 CC-BY-2.0 public-domain ZLIB" |
529 |
+SLOT="0" |
530 |
+KEYWORDS="~amd64 ~ppc ~x86" |
531 |
+IUSE="debug fribidi wiimote" |
532 |
+ |
533 |
+# don't unbundle irrlicht and bullet |
534 |
+# both are modified and system versions will break the game |
535 |
+# https://sourceforge.net/tracker/?func=detail&aid=3454889&group_id=74339&atid=540679 |
536 |
+ |
537 |
+RDEPEND=" |
538 |
+ media-libs/glew:0= |
539 |
+ media-libs/libpng:0= |
540 |
+ media-libs/libvorbis |
541 |
+ media-libs/openal |
542 |
+ net-libs/enet:1.3= |
543 |
+ net-misc/curl |
544 |
+ sys-libs/zlib |
545 |
+ virtual/glu |
546 |
+ virtual/jpeg:0 |
547 |
+ virtual/libintl |
548 |
+ virtual/opengl |
549 |
+ x11-libs/libX11 |
550 |
+ x11-libs/libXxf86vm |
551 |
+ fribidi? ( dev-libs/fribidi ) |
552 |
+ wiimote? ( net-wireless/bluez )" |
553 |
+DEPEND="${RDEPEND} |
554 |
+ sys-devel/gettext |
555 |
+ virtual/pkgconfig" |
556 |
+ |
557 |
+PATCHES=( |
558 |
+ "${FILESDIR}"/${PN}-0.9.2-unbundle-enet.patch |
559 |
+ "${FILESDIR}"/${PN}-0.9.2-unbundle-libs.patch |
560 |
+ "${FILESDIR}"/${PN}-0.9.2-fix-angelscript.patch |
561 |
+ "${FILESDIR}"/${PN}-0.9.2-irrlicht-arch-support.patch |
562 |
+ "${FILESDIR}"/${PN}-0.9.2-irrlicht-as-needed.patch |
563 |
+ "${FILESDIR}"/${PN}-0.9.2-irrlicht-bundled-libs.patch |
564 |
+ "${FILESDIR}"/${PN}-0.9.2-irrlicht-system-libs.patch |
565 |
+ "${FILESDIR}"/${PN}-0.9.2-fix-buildsystem.patch |
566 |
+) |
567 |
+ |
568 |
+src_prepare() { |
569 |
+ cmake-utils_src_prepare |
570 |
+ |
571 |
+ # remove bundled libraries, just to be sure |
572 |
+ rm -r lib/{enet,glew,jpeglib,libpng,zlib} || die |
573 |
+} |
574 |
+ |
575 |
+src_configure() { |
576 |
+ local mycmakeargs=( |
577 |
+ # system dev-libs/angelscript leads |
578 |
+ # to failed assert segfaults |
579 |
+ -DUSE_SYSTEM_ANGELSCRIPT=OFF |
580 |
+ -DUSE_FRIBIDI=$(usex fribidi) |
581 |
+ -DUSE_WIIUSE=$(usex wiimote) |
582 |
+ -DSTK_INSTALL_BINARY_DIR=bin |
583 |
+ -DSTK_INSTALL_DATA_DIR=share/${PN} |
584 |
+ ) |
585 |
+ cmake-utils_src_configure |
586 |
+} |
587 |
+ |
588 |
+src_install() { |
589 |
+ cmake-utils_src_install |
590 |
+ dodoc CHANGELOG.md TODO.md |
591 |
+ |
592 |
+ doicon -s 64 "${DISTDIR}"/${PN}.png |
593 |
+} |
594 |
+ |
595 |
+pkg_preinst() { |
596 |
+ gnome2_icon_savelist |
597 |
+} |
598 |
+ |
599 |
+pkg_postinst() { |
600 |
+ gnome2_icon_cache_update |
601 |
+} |
602 |
+ |
603 |
+pkg_postrm() { |
604 |
+ gnome2_icon_cache_update |
605 |
+} |