1 |
commit: 6951cd9bba219de923a83bcd5c7ca4c18346c89f |
2 |
Author: Sven Eden <yamakuzure <AT> gmx <DOT> net> |
3 |
AuthorDate: Fri Sep 7 06:27:06 2018 +0000 |
4 |
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Oct 7 18:22:28 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6951cd9b |
7 |
|
8 |
dev-games/ogre: 1.11.2 version bump |
9 |
|
10 |
This is the second stable release of the current 1.11 series. |
11 |
Apart from stabilizing Ogre BITES, this series also adds json material support. |
12 |
|
13 |
Bug: https://bugs.gentoo.org/647266 |
14 |
Signed-off-by: Sven Eden <sven.eden <AT> prydeworx.com> |
15 |
Package-Manager: Portage-2.3.48, Repoman-2.3.10 |
16 |
Closes: https://github.com/gentoo/gentoo/pull/9474 |
17 |
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> |
18 |
|
19 |
dev-games/ogre/Manifest | 1 + |
20 |
.../ogre-1.11.2-fix_sample_source_install.patch | 18 +++ |
21 |
dev-games/ogre/files/ogre-1.11.2-media_path.patch | 18 +++ |
22 |
.../ogre/files/ogre-1.11.2-resource_path.patch | 14 ++ |
23 |
dev-games/ogre/metadata.xml | 6 +- |
24 |
dev-games/ogre/ogre-1.11.2.ebuild | 143 +++++++++++++++++++++ |
25 |
6 files changed, 199 insertions(+), 1 deletion(-) |
26 |
|
27 |
diff --git a/dev-games/ogre/Manifest b/dev-games/ogre/Manifest |
28 |
index 93a14df137a..8b173e90d4f 100644 |
29 |
--- a/dev-games/ogre/Manifest |
30 |
+++ b/dev-games/ogre/Manifest |
31 |
@@ -1,2 +1,3 @@ |
32 |
DIST ogre-1.10.12.zip 133067192 BLAKE2B 188437153969504b169970d14c39d47c9e666308bf65412018f42ba8ad108876f164733fe2004ea31941ab5db534766c10b871b34ef525522d1120b175530b87 SHA512 63998ea4940d04adfc179a94aa91bb2598692307b429f4c7e5b86a1519c13817035de4c71afc9e4b33fde35e962504373d152de9b9cc8eebbbeb78b2c1942041 |
33 |
+DIST ogre-1.11.2.zip 127409383 BLAKE2B 7493892f434847ea4afda580868b2a8572d65c9ea9de3709aacd789229531803450dbd78994ff0fae29a9435912a80029edba51db035c7a175c860ce07912968 SHA512 dc6a7e14ee515d5a5c218aa3f31cefc8ad95a175604fb5fb252185220c6fd537f7094d3a1086d5eb5e9515f8c528c7f6e2ccc95594ef9882204c666b87fae4e2 |
34 |
DIST ogre-1.9.0.tar.bz2 128098305 BLAKE2B 6e67a5b60a6606a910e099f1c7ba736eb525f079f3aba5cfb362329b9130059d303fc9df6f7b8611c0ba75e1e207fa018e543e93c9f5ce39a6621e4c72ed4a83 SHA512 b1ea93d80ac0978a7c228460a6714f8d17797450efd5af6765c9fa4402e9060a8ef3a700d2757593a3016fdc32276722c8f4a5d9889a3e2eb424f16162a52bde |
35 |
|
36 |
diff --git a/dev-games/ogre/files/ogre-1.11.2-fix_sample_source_install.patch b/dev-games/ogre/files/ogre-1.11.2-fix_sample_source_install.patch |
37 |
new file mode 100644 |
38 |
index 00000000000..6e4a476fbb4 |
39 |
--- /dev/null |
40 |
+++ b/dev-games/ogre/files/ogre-1.11.2-fix_sample_source_install.patch |
41 |
@@ -0,0 +1,18 @@ |
42 |
+--- a/Samples/CMakeLists.txt 2018-04-25 07:30:38.211048775 +0200 |
43 |
++++ b/Samples/CMakeLists.txt 2018-04-25 07:32:32.842049802 +0200 |
44 |
+@@ -97,10 +97,11 @@ |
45 |
+ PATTERN "scripts" EXCLUDE |
46 |
+ ) |
47 |
+ # install a new CMakeLists.txt file to allow building of samples |
48 |
+- configure_file(${OGRE_TEMPLATES_DIR}/SDK_CMakeLists.txt.in ${CMAKE_CURRENT_BINARY_DIR}/../CMakeLists.txt @ONLY) |
49 |
+- configure_file(${OGRE_TEMPLATES_DIR}/SDK_Samples_CMakeLists.txt.in ${CMAKE_CURRENT_BINARY_DIR}/CMakeLists.txt @ONLY) |
50 |
+- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/../CMakeLists.txt DESTINATION ${OGRE_SAMPLES_DIR}/../) |
51 |
+- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/CMakeLists.txt DESTINATION ${OGRE_SAMPLES_DIR}) |
52 |
++# The SDK_CMakeLists.txt.in file does not exist at the moment (sed - 2018-04-25) |
53 |
++# configure_file(${OGRE_TEMPLATES_DIR}/SDK_CMakeLists.txt.in ${CMAKE_CURRENT_BINARY_DIR}/../CMakeLists.txt @ONLY) |
54 |
++# configure_file(${OGRE_TEMPLATES_DIR}/SDK_Samples_CMakeLists.txt.in ${CMAKE_CURRENT_BINARY_DIR}/CMakeLists.txt @ONLY) |
55 |
++# install(FILES ${CMAKE_CURRENT_BINARY_DIR}/../CMakeLists.txt DESTINATION ${OGRE_SAMPLES_DIR}/../) |
56 |
++# install(FILES ${CMAKE_CURRENT_BINARY_DIR}/CMakeLists.txt DESTINATION ${OGRE_SAMPLES_DIR}) |
57 |
+ endif () |
58 |
+ |
59 |
+ # Install sample headers, some people rely on these |
60 |
|
61 |
diff --git a/dev-games/ogre/files/ogre-1.11.2-media_path.patch b/dev-games/ogre/files/ogre-1.11.2-media_path.patch |
62 |
new file mode 100644 |
63 |
index 00000000000..aea15218c17 |
64 |
--- /dev/null |
65 |
+++ b/dev-games/ogre/files/ogre-1.11.2-media_path.patch |
66 |
@@ -0,0 +1,18 @@ |
67 |
+--- a/CMake/InstallResources.cmake 2018-04-03 19:39:31.586129013 +0200 |
68 |
++++ b/CMake/InstallResources.cmake 2018-04-03 19:40:28.169128923 +0200 |
69 |
+@@ -170,10 +170,11 @@ |
70 |
+ |
71 |
+ # CREATE CONFIG FILES - BUILD DIR VERSIONS |
72 |
+ if (NOT (APPLE_IOS OR WINDOWS_STORE OR WINDOWS_PHONE)) |
73 |
+- set(OGRE_MEDIA_DIR_REL "${OGRE_SOURCE_DIR}/Samples/Media") |
74 |
+- set(OGRE_MEDIA_DIR_DBG "${OGRE_SOURCE_DIR}/Samples/Media") |
75 |
+- set(OGRE_TEST_MEDIA_DIR_REL "${OGRE_SOURCE_DIR}/Tests/Media") |
76 |
+- set(OGRE_TEST_MEDIA_DIR_DBG "${OGRE_SOURCE_DIR}/Tests/Media") |
77 |
++ # No, they are fine already |
78 |
++ # set(OGRE_MEDIA_DIR_REL "${OGRE_SOURCE_DIR}/Samples/Media") |
79 |
++ # set(OGRE_MEDIA_DIR_DBG "${OGRE_SOURCE_DIR}/Samples/Media") |
80 |
++ # set(OGRE_TEST_MEDIA_DIR_REL "${OGRE_SOURCE_DIR}/Tests/Media") |
81 |
++ # set(OGRE_TEST_MEDIA_DIR_DBG "${OGRE_SOURCE_DIR}/Tests/Media") |
82 |
+ else () |
83 |
+ # iOS needs to use relative paths in the config files |
84 |
+ set(OGRE_MEDIA_DIR_REL "${OGRE_MEDIA_PATH}") |
85 |
|
86 |
diff --git a/dev-games/ogre/files/ogre-1.11.2-resource_path.patch b/dev-games/ogre/files/ogre-1.11.2-resource_path.patch |
87 |
new file mode 100644 |
88 |
index 00000000000..8557d783ec4 |
89 |
--- /dev/null |
90 |
+++ b/dev-games/ogre/files/ogre-1.11.2-resource_path.patch |
91 |
@@ -0,0 +1,14 @@ |
92 |
+--- a/CMake/InstallResources.cmake 2018-03-23 10:48:44.371486540 +0100 |
93 |
++++ b/CMake/InstallResources.cmake 2018-03-23 10:49:08.333486363 +0100 |
94 |
+@@ -184,8 +184,9 @@ |
95 |
+ set(OGRE_PLUGIN_DIR_REL "") |
96 |
+ set(OGRE_SAMPLES_DIR_REL "") |
97 |
+ elseif (UNIX) |
98 |
+- set(OGRE_PLUGIN_DIR_REL "${OGRE_BINARY_DIR}/lib") |
99 |
+- set(OGRE_SAMPLES_DIR_REL "${OGRE_BINARY_DIR}/lib") |
100 |
++# No, this was already configured above, the BINARY paths are wrong! |
101 |
++# set(OGRE_PLUGIN_DIR_REL "${OGRE_BINARY_DIR}/lib") |
102 |
++# set(OGRE_SAMPLES_DIR_REL "${OGRE_BINARY_DIR}/lib") |
103 |
+ endif () |
104 |
+ |
105 |
+ if (WINDOWS_STORE OR WINDOWS_PHONE OR EMSCRIPTEN) |
106 |
|
107 |
diff --git a/dev-games/ogre/metadata.xml b/dev-games/ogre/metadata.xml |
108 |
index 9e726e9a8d3..f6f82039884 100644 |
109 |
--- a/dev-games/ogre/metadata.xml |
110 |
+++ b/dev-games/ogre/metadata.xml |
111 |
@@ -82,7 +82,10 @@ Exporters |
112 |
<flag name="cg">NVIDIA toolkit plugin</flag> |
113 |
<flag name="double-precision">More precise calculations at the expense of speed</flag> |
114 |
<flag name="egl">Use egl instead of glx</flag> |
115 |
- <flag name="experimental">Build experimental BETA components 'Bites' and 'HLMS'</flag> |
116 |
+ <flag name="experimental" restrict="<dev-games/ogre-1.11"> |
117 |
+ Build experimental BETA components 'Bites' and 'HLMS' |
118 |
+ </flag> |
119 |
+ <flag name="experimental">Build experimental BETA component 'HLMS'</flag> |
120 |
<flag name="freeimage">Support images via media-libs/freeimage</flag> |
121 |
<flag name="gl3plus">Build OpenGL 3+ RenderSystem (EXPERIMENTAL)</flag> |
122 |
<flag name="gles2" restrict=">dev-games/ogre-1.10"> |
123 |
@@ -90,6 +93,7 @@ Exporters |
124 |
</flag> |
125 |
<flag name="gles2">Build OpenGL ES 2.x RenderSystem</flag> |
126 |
<flag name="gles3">Enable OpenGL ES 3.x Features</flag> |
127 |
+ <flag name="json">Use dev-libs/rapidjson (needed by Hlms JSON materials)</flag> |
128 |
<flag name="ois">Pull in Object-oriented Input System library dev-games/ois for samples</flag> |
129 |
<flag name="poco">When USE=threads, use poco for threading</flag> |
130 |
<flag name="resman-pedantic"> |
131 |
|
132 |
diff --git a/dev-games/ogre/ogre-1.11.2.ebuild b/dev-games/ogre/ogre-1.11.2.ebuild |
133 |
new file mode 100644 |
134 |
index 00000000000..e3f452d99e9 |
135 |
--- /dev/null |
136 |
+++ b/dev-games/ogre/ogre-1.11.2.ebuild |
137 |
@@ -0,0 +1,143 @@ |
138 |
+# Copyright 1999-2018 Gentoo Foundation |
139 |
+# Distributed under the terms of the GNU General Public License v2 |
140 |
+ |
141 |
+EAPI=6 |
142 |
+ |
143 |
+CMAKE_REMOVE_MODULES="yes" |
144 |
+CMAKE_REMOVE_MODULES_LIST="FindFreetype FindDoxygen FindZLIB" |
145 |
+inherit cmake-utils |
146 |
+ |
147 |
+DESCRIPTION="Object-oriented Graphics Rendering Engine" |
148 |
+HOMEPAGE="https://www.ogre3d.org/" |
149 |
+SRC_URI="https://github.com/OGRECave/${PN}/archive/v${PV}.zip -> ${P}.zip" |
150 |
+ |
151 |
+LICENSE="MIT public-domain" |
152 |
+SLOT="0/1.11" |
153 |
+KEYWORDS="~amd64 ~x86" |
154 |
+ |
155 |
+IUSE="+cache cg debug doc double-precision egl examples experimental +freeimage |
156 |
+ gles2 json openexr +opengl pch profile resman-pedantic resman-strict tools" |
157 |
+ |
158 |
+REQUIRED_USE=" |
159 |
+ || ( gles2 opengl ) |
160 |
+ ?? ( resman-pedantic resman-strict ) |
161 |
+" |
162 |
+ |
163 |
+RESTRICT="test" #139905 |
164 |
+ |
165 |
+RDEPEND=" |
166 |
+ dev-games/ois |
167 |
+ dev-libs/zziplib |
168 |
+ media-libs/freetype:2 |
169 |
+ x11-libs/libX11 |
170 |
+ x11-libs/libXaw |
171 |
+ x11-libs/libXrandr |
172 |
+ x11-libs/libXt |
173 |
+ cg? ( media-gfx/nvidia-cg-toolkit ) |
174 |
+ egl? ( media-libs/mesa[egl] ) |
175 |
+ freeimage? ( media-libs/freeimage ) |
176 |
+ gles2? ( media-libs/mesa[gles2] ) |
177 |
+ json? ( dev-libs/rapidjson ) |
178 |
+ openexr? ( media-libs/openexr:= ) |
179 |
+ opengl? ( |
180 |
+ virtual/glu |
181 |
+ virtual/opengl |
182 |
+ ) |
183 |
+ tools? ( dev-libs/tinyxml[stl] ) |
184 |
+" |
185 |
+DEPEND="${RDEPEND} |
186 |
+ virtual/pkgconfig |
187 |
+ x11-base/xorg-proto |
188 |
+ doc? ( app-doc/doxygen )" |
189 |
+ |
190 |
+PATCHES=( |
191 |
+ "${FILESDIR}/${P}-media_path.patch" |
192 |
+ "${FILESDIR}/${P}-resource_path.patch" |
193 |
+ "${FILESDIR}/${P}-fix_sample_source_install.patch" |
194 |
+ "${FILESDIR}/${PN}-1.10.12-use_system_tinyxml.patch" |
195 |
+) |
196 |
+ |
197 |
+src_prepare() { |
198 |
+ sed -i \ |
199 |
+ -e "s:share/OGRE/docs:share/doc/${PF}:" \ |
200 |
+ Docs/CMakeLists.txt || die |
201 |
+ # In this series, the CMAKE_BUILD_TARGET is hard-wired to the |
202 |
+ # installation. And only Debug, MinSizeRel and RelWithDebInfo |
203 |
+ # are supported. |
204 |
+ if use debug; then |
205 |
+ sed -i \ |
206 |
+ -e 's/Debug/Gentoo/g' \ |
207 |
+ CMake/Utils/OgreConfigTargets.cmake \ |
208 |
+ || die |
209 |
+ else |
210 |
+ sed -i \ |
211 |
+ -e 's/MinSizeRel/Gentoo/g' \ |
212 |
+ CMake/Utils/OgreConfigTargets.cmake \ |
213 |
+ || die |
214 |
+ fi |
215 |
+ # Fix some path issues |
216 |
+ cmake-utils_src_prepare |
217 |
+} |
218 |
+ |
219 |
+src_configure() { |
220 |
+ local mycmakeargs=( |
221 |
+ -DCMAKE_SKIP_INSTALL_RPATH=yes |
222 |
+ -DOGRE_BUILD_COMPONENT_BITES=yes |
223 |
+ -DOGRE_BUILD_COMPONENT_HLMS=$(usex experimental) |
224 |
+ -DOGRE_BUILD_COMPONENT_JAVA=no |
225 |
+ -DOGRE_BUILD_COMPONENT_PAGING=yes |
226 |
+ -DOGRE_BUILD_COMPONENT_PROPERTY=yes |
227 |
+ -DOGRE_BUILD_COMPONENT_PYTHON=no |
228 |
+ -DOGRE_BUILD_COMPONENT_RTSHADERSYSTEM=yes |
229 |
+ -DOGRE_BUILD_COMPONENT_TERRAIN=yes |
230 |
+ -DOGRE_BUILD_COMPONENT_VOLUME=yes |
231 |
+ -DOGRE_BUILD_DEPENDENCIES=no |
232 |
+ -DOGRE_BUILD_PLUGIN_CG=$(usex cg) |
233 |
+ -DOGRE_BUILD_PLUGIN_FREEIMAGE=$(usex freeimage) |
234 |
+ -DOGRE_BUILD_PLUGIN_EXRCODEC=$(usex openexr) |
235 |
+ -DOGRE_BUILD_RENDERSYSTEM_GL=$(usex opengl) |
236 |
+ -DOGRE_BUILD_RENDERSYSTEM_GL3PLUS=$(usex opengl) |
237 |
+ -DOGRE_BUILD_RENDERSYSTEM_GLES2=$(usex gles2) |
238 |
+ -DOGRE_BUILD_SAMPLES=$(usex examples) |
239 |
+ -DOGRE_BUILD_TESTS=no |
240 |
+ -DOGRE_BUILD_TOOLS=$(usex tools) |
241 |
+ -DOGRE_CONFIG_DOUBLE=$(usex double-precision) |
242 |
+ -DOGRE_CONFIG_ENABLE_GL_STATE_CACHE_SUPPORT=$(usex cache) |
243 |
+ -DOGRE_CONFIG_ENABLE_GLES2_CG_SUPPORT=$(usex gles2 $(usex cg) no) |
244 |
+ -DOGRE_CONFIG_ENABLE_GLES3_SUPPORT=$(usex gles2) |
245 |
+ -DOGRE_CONFIG_THREADS=3 |
246 |
+ -DOGRE_CONFIG_THREAD_PROVIDER=std |
247 |
+ -DOGRE_ENABLE_PRECOMPILED_HEADERS=$(usex pch) |
248 |
+ -DOGRE_GLSUPPORT_USE_EGL=$(usex egl) |
249 |
+ -DOGRE_INSTALL_DOCS=$(usex doc) |
250 |
+ -DOGRE_INSTALL_SAMPLES=$(usex examples) |
251 |
+ -DOGRE_INSTALL_SAMPLES_SOURCE=$(usex examples) |
252 |
+ -DOGRE_PROFILING=$(usex profile) |
253 |
+ -DOGRE_RESOURCEMANAGER_STRICT=$(\ |
254 |
+ usex resman-pedantic 1 $(\ |
255 |
+ usex resman-strict 2 0)) |
256 |
+ ) |
257 |
+ |
258 |
+ cmake-utils_src_configure |
259 |
+} |
260 |
+ |
261 |
+src_install() { |
262 |
+ cmake-utils_src_install |
263 |
+ |
264 |
+ CONFIGDIR=/etc/OGRE |
265 |
+ SHAREDIR=/usr/share/OGRE |
266 |
+ |
267 |
+ # plugins and resources are the main configuration |
268 |
+ insinto "${CONFIGDIR}" |
269 |
+ doins "${CMAKE_BUILD_DIR}"/bin/plugins.cfg |
270 |
+ doins "${CMAKE_BUILD_DIR}"/bin/resources.cfg |
271 |
+ dosym "${CONFIGDIR}"/plugins.cfg "${SHAREDIR}"/plugins.cfg |
272 |
+ dosym "${CONFIGDIR}"/resources.cfg "${SHAREDIR}"/resources.cfg |
273 |
+ |
274 |
+ # These are only for the sample browser |
275 |
+ if use examples ; then |
276 |
+ insinto "${SHAREDIR}" |
277 |
+ doins "${CMAKE_BUILD_DIR}"/bin/quakemap.cfg |
278 |
+ doins "${CMAKE_BUILD_DIR}"/bin/samples.cfg |
279 |
+ fi |
280 |
+} |