1 |
commit: 8d9db411331b8bedd40cf819f590a6827ed4dcba |
2 |
Author: Stefan Strogin <steils <AT> gentoo <DOT> org> |
3 |
AuthorDate: Wed Feb 12 05:18:15 2020 +0000 |
4 |
Commit: Stefan Strogin <steils <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed Feb 12 05:34:14 2020 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8d9db411 |
7 |
|
8 |
dev-games/mygui: version bump to 3.4.0 |
9 |
|
10 |
Package-Manager: Portage-2.3.88, Repoman-2.3.20 |
11 |
Signed-off-by: Stefan Strogin <steils <AT> gentoo.org> |
12 |
|
13 |
dev-games/mygui/Manifest | 1 + |
14 |
dev-games/mygui/files/mygui-3.4.0-build.patch | 61 ++++++++ |
15 |
.../mygui/files/mygui-3.4.0-underlinking.patch | 21 +++ |
16 |
dev-games/mygui/mygui-3.4.0.ebuild | 159 +++++++++++++++++++++ |
17 |
4 files changed, 242 insertions(+) |
18 |
|
19 |
diff --git a/dev-games/mygui/Manifest b/dev-games/mygui/Manifest |
20 |
index 901646e5996..0a6549d1495 100644 |
21 |
--- a/dev-games/mygui/Manifest |
22 |
+++ b/dev-games/mygui/Manifest |
23 |
@@ -1 +1,2 @@ |
24 |
DIST MyGUI3.2.2.tar.gz 22081236 BLAKE2B 3a28e0838a8203d20565822d5a19423a733149cca250dc4169de43f22beb7d37fccbf3d282ea9b4f284cb71df2df9a9073bac40124e1d8a90d15c5fda2af798a SHA512 1290ce1d78b9e4bfe72bea3fb1bc6cdd25969b44be2844df62a1f425b3e221a68b61658fdf45271fb50a1957f12b5ada1c9be971e00ecfe41f53ae0a83ae18d4 |
25 |
+DIST mygui-3.4.0.tar.gz 22391483 BLAKE2B 5628cca98625285368b9363acd95e541e1ba7d86fd1d471f687c553d0f0abd9ccb2f47981cf0bb91f44a68489bb7ec3fbcb451734758e2435ab9ef320214465a SHA512 3f560fd9c7e5b514da40e41c7753dc20649f80b763f5ee20afc9627df3be14242ea833eff09eac16b9e88b1c9fbed7c09def0c5068c832e710c247191fb53487 |
26 |
|
27 |
diff --git a/dev-games/mygui/files/mygui-3.4.0-build.patch b/dev-games/mygui/files/mygui-3.4.0-build.patch |
28 |
new file mode 100644 |
29 |
index 00000000000..71ed87d8bcb |
30 |
--- /dev/null |
31 |
+++ b/dev-games/mygui/files/mygui-3.4.0-build.patch |
32 |
@@ -0,0 +1,61 @@ |
33 |
+diff --git a/CMake/ConfigureBuild.cmake b/CMake/ConfigureBuild.cmake |
34 |
+--- a/CMake/ConfigureBuild.cmake |
35 |
++++ b/CMake/ConfigureBuild.cmake |
36 |
+@@ -4,6 +4,8 @@ |
37 |
+ # also prepare package files for pkg-config and CMake. |
38 |
+ ####################################################################### |
39 |
+ |
40 |
++include(GNUInstallDirs) |
41 |
++ |
42 |
+ # should we build static libs? |
43 |
+ if (MYGUI_STATIC) |
44 |
+ set(MYGUI_LIB_TYPE STATIC) |
45 |
+@@ -47,7 +49,7 @@ if (UNIX) |
46 |
+ else () |
47 |
+ configure_file(${MYGUI_TEMPLATES_DIR}/MYGUI.pc.in ${MYGUI_BINARY_DIR}/pkgconfig/MYGUI${MYGUI_LIB_SUFFIX}.pc @ONLY) |
48 |
+ endif () |
49 |
+- install(FILES ${MYGUI_BINARY_DIR}/pkgconfig/MYGUI${MYGUI_LIB_SUFFIX}.pc DESTINATION lib/pkgconfig) |
50 |
++ install(FILES ${MYGUI_BINARY_DIR}/pkgconfig/MYGUI${MYGUI_LIB_SUFFIX}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) |
51 |
+ |
52 |
+ # configure additional packages |
53 |
+ |
54 |
+diff --git a/CMake/Utils/MyGUIConfigTargets.cmake b/CMake/Utils/MyGUIConfigTargets.cmake |
55 |
+--- a/CMake/Utils/MyGUIConfigTargets.cmake |
56 |
++++ b/CMake/Utils/MyGUIConfigTargets.cmake |
57 |
+@@ -1,6 +1,8 @@ |
58 |
+ # Configure settings and install targets |
59 |
+ # FIXME: Copypasted from Ogre and need lots of changes |
60 |
+ |
61 |
++include(GNUInstallDirs) |
62 |
++ |
63 |
+ if (WIN32) |
64 |
+ set(MYGUI_RELEASE_PATH "/Release") |
65 |
+ set(MYGUI_RELWDBG_PATH "/RelWithDebInfo") |
66 |
+@@ -32,6 +34,12 @@ endif () |
67 |
+ |
68 |
+ # install targets according to current build type |
69 |
+ function(mygui_install_target TARGETNAME SUFFIX) |
70 |
++ install(TARGETS ${TARGETNAME} |
71 |
++ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" CONFIGURATIONS Gentoo "" |
72 |
++ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" CONFIGURATIONS Gentoo "" |
73 |
++ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" CONFIGURATIONS Gentoo "" |
74 |
++ FRAMEWORK DESTINATION "${MYGUI_FRAMEWORK_PATH}" CONFIGURATIONS Gentoo "" |
75 |
++ ) |
76 |
+ install(TARGETS ${TARGETNAME} |
77 |
+ RUNTIME DESTINATION "bin${MYGUI_RELEASE_PATH}" CONFIGURATIONS Release None "" |
78 |
+ LIBRARY DESTINATION "lib${MYGUI_LIB_RELEASE_PATH}${SUFFIX}" CONFIGURATIONS Release None "" |
79 |
+@@ -183,7 +191,13 @@ function(mygui_app PROJECTNAME SOLUTIONFOLDER) |
80 |
+ endif () |
81 |
+ add_executable(${PROJECTNAME} ${MYGUI_EXEC_TYPE} ${HEADER_FILES} ${SOURCE_FILES}) |
82 |
+ endif () |
83 |
+- set_target_properties(${PROJECTNAME} PROPERTIES FOLDER ${SOLUTIONFOLDER}) |
84 |
++ |
85 |
++ # rename demo target |
86 |
++ if (${SOLUTIONFOLDER} STREQUAL "Demos") |
87 |
++ set_target_properties(${PROJECTNAME} PROPERTIES FOLDER ${SOLUTIONFOLDER} OUTPUT_NAME MYGUI-${PROJECTNAME}) |
88 |
++ else() |
89 |
++ set_target_properties(${PROJECTNAME} PROPERTIES FOLDER ${SOLUTIONFOLDER}) |
90 |
++ endif() |
91 |
+ |
92 |
+ add_dependencies(${PROJECTNAME} MyGUIEngine Common) |
93 |
+ |
94 |
|
95 |
diff --git a/dev-games/mygui/files/mygui-3.4.0-underlinking.patch b/dev-games/mygui/files/mygui-3.4.0-underlinking.patch |
96 |
new file mode 100644 |
97 |
index 00000000000..1dcf2dbbbfd |
98 |
--- /dev/null |
99 |
+++ b/dev-games/mygui/files/mygui-3.4.0-underlinking.patch |
100 |
@@ -0,0 +1,21 @@ |
101 |
+From: Julian Ospald <hasufell@g.o> |
102 |
+Date: Fri Jun 15 10:42:42 UTC 2012 |
103 |
+Subject: build system |
104 |
+ |
105 |
+fix underlinking |
106 |
+ |
107 |
+diff --git a/MyGUIEngine/CMakeLists.txt b/MyGUIEngine/CMakeLists.txt |
108 |
+--- a/MyGUIEngine/CMakeLists.txt |
109 |
++++ b/MyGUIEngine/CMakeLists.txt |
110 |
+@@ -44,7 +44,10 @@ if (MYGUI_USE_FREETYPE) |
111 |
+ target_link_libraries(${PROJECTNAME} |
112 |
+ ${FREETYPE_LIBRARIES} |
113 |
+ ${ZLIB_LIBRARIES} |
114 |
+- ) |
115 |
++ dl) |
116 |
++else() |
117 |
++ target_link_libraries(${PROJECTNAME} |
118 |
++ dl) |
119 |
+ endif() |
120 |
+ |
121 |
+ # platform specific dependencies |
122 |
|
123 |
diff --git a/dev-games/mygui/mygui-3.4.0.ebuild b/dev-games/mygui/mygui-3.4.0.ebuild |
124 |
new file mode 100644 |
125 |
index 00000000000..15c88e7a864 |
126 |
--- /dev/null |
127 |
+++ b/dev-games/mygui/mygui-3.4.0.ebuild |
128 |
@@ -0,0 +1,159 @@ |
129 |
+# Copyright 1999-2020 Gentoo Authors |
130 |
+# Distributed under the terms of the GNU General Public License v2 |
131 |
+ |
132 |
+EAPI=7 |
133 |
+ |
134 |
+CMAKE_REMOVE_MODULES="yes" |
135 |
+CMAKE_REMOVE_MODULES_LIST="FindFreetype" |
136 |
+inherit cmake-utils flag-o-matic multilib |
137 |
+ |
138 |
+MY_PN=MyGUI |
139 |
+MY_P=${MY_PN}${PV} |
140 |
+ |
141 |
+DESCRIPTION="A library for creating GUIs for games and 3D applications" |
142 |
+HOMEPAGE="http://mygui.info" |
143 |
+SRC_URI="https://github.com/MyGUI/mygui/archive/${MY_P}.tar.gz -> ${P}.tar.gz" |
144 |
+ |
145 |
+LICENSE="MIT" |
146 |
+SLOT="0" |
147 |
+KEYWORDS="~amd64 ~x86" |
148 |
+IUSE="debug doc +ogre -opengl plugins samples static-libs test tools l10n_ru" |
149 |
+RESTRICT="!test? ( test )" |
150 |
+REQUIRED_USE="ogre? ( !opengl ) |
151 |
+ opengl? ( !ogre )" |
152 |
+ |
153 |
+RDEPEND="media-libs/freetype:2 |
154 |
+ sys-libs/zlib |
155 |
+ ogre? ( |
156 |
+ dev-games/ogre:0=[freeimage,opengl] |
157 |
+ samples? ( dev-games/ois ) |
158 |
+ ) |
159 |
+ opengl? ( |
160 |
+ virtual/opengl |
161 |
+ media-libs/glew:0= |
162 |
+ ) |
163 |
+ tools? ( dev-games/ois )" |
164 |
+DEPEND="${RDEPEND}" |
165 |
+BDEPEND="virtual/pkgconfig |
166 |
+ doc? ( app-doc/doxygen )" |
167 |
+ |
168 |
+S=${WORKDIR}/mygui-${MY_P} |
169 |
+STATIC_BUILD=${WORKDIR}/${P}_build_static |
170 |
+ |
171 |
+PATCHES=( |
172 |
+ "${FILESDIR}"/${P}-underlinking.patch |
173 |
+ "${FILESDIR}"/${P}-build.patch |
174 |
+ "${FILESDIR}"/${PN}-3.2.2-FHS.patch |
175 |
+) |
176 |
+ |
177 |
+pkg_setup() { |
178 |
+ if use samples && use !ogre ; then |
179 |
+ ewarn "Samples disabled, because they only work with ogre!" |
180 |
+ ewarn "Enable ogre USE flag if you want to use samples." |
181 |
+ fi |
182 |
+} |
183 |
+ |
184 |
+src_configure() { |
185 |
+ use debug && append-cppflags -DDEBUG |
186 |
+ |
187 |
+ local mycmakeargs=() |
188 |
+ |
189 |
+ # static configuration |
190 |
+ if use static-libs ; then |
191 |
+ mycmakeargs=( -DMYGUI_STATIC=ON |
192 |
+ -DMYGUI_BUILD_DOCS=OFF |
193 |
+ -DMYGUI_INSTALL_DOCS=OFF |
194 |
+ -DMYGUI_USE_FREETYPE=ON |
195 |
+ $(cmake-utils_use plugins MYGUI_BUILD_PLUGINS) |
196 |
+ -DMYGUI_BUILD_DEMOS=OFF |
197 |
+ -DMYGUI_INSTALL_SAMPLES=OFF |
198 |
+ -DMYGUI_BUILD_TOOLS=OFF |
199 |
+ -DMYGUI_INSTALL_TOOLS=OFF |
200 |
+ -DMYGUI_BUILD_WRAPPER=OFF |
201 |
+ -DMYGUI_RENDERSYSTEM=$(usex opengl "4" "$(usex ogre "3" "1")") ) |
202 |
+ |
203 |
+ CMAKE_BUILD_DIR=${STATIC_BUILD} cmake-utils_src_configure |
204 |
+ unset mycmakeargs |
205 |
+ fi |
206 |
+ |
207 |
+ # main configuration |
208 |
+ mycmakeargs=( |
209 |
+ -DMYGUI_STATIC=OFF |
210 |
+ -DMYGUI_BUILD_DOCS=$(usex doc) |
211 |
+ -DMYGUI_INSTALL_DOCS=$(usex doc) |
212 |
+ -DMYGUI_USE_FREETYPE=ON |
213 |
+ -DMYGUI_BUILD_PLUGINS=$(usex plugins) |
214 |
+ -DMYGUI_BUILD_TOOLS=$(usex tools) |
215 |
+ -DMYGUI_INSTALL_TOOLS=$(usex tools) |
216 |
+ -DMYGUI_USE_SYSTEM_GLEW=$(usex opengl) |
217 |
+ -DMYGUI_BUILD_WRAPPER=OFF |
218 |
+ -DMYGUI_RENDERSYSTEM=$(usex opengl "4" "$(usex ogre "3" "1")") |
219 |
+ ) |
220 |
+ |
221 |
+ if use ogre && use samples; then |
222 |
+ mycmakeargs+=( |
223 |
+ -DMYGUI_BUILD_DEMOS=ON |
224 |
+ -DMYGUI_INSTALL_SAMPLES=ON |
225 |
+ ) |
226 |
+ else |
227 |
+ mycmakeargs+=( |
228 |
+ -DMYGUI_BUILD_DEMOS=OFF |
229 |
+ -DMYGUI_INSTALL_SAMPLES=OFF |
230 |
+ ) |
231 |
+ |
232 |
+ fi |
233 |
+ |
234 |
+ if use tools || (use samples && use ogre) ; then |
235 |
+ mycmakeargs+=( -DMYGUI_INSTALL_MEDIA=ON ) |
236 |
+ else |
237 |
+ mycmakeargs+=( -DMYGUI_INSTALL_MEDIA=OFF ) |
238 |
+ fi |
239 |
+ |
240 |
+ cmake-utils_src_configure |
241 |
+} |
242 |
+ |
243 |
+src_compile() { |
244 |
+ # build system does not support building static and shared at once, |
245 |
+ # run a double build |
246 |
+ if use static-libs ; then |
247 |
+ CMAKE_BUILD_DIR=${STATIC_BUILD} cmake-utils_src_compile |
248 |
+ fi |
249 |
+ |
250 |
+ cmake-utils_src_compile |
251 |
+ |
252 |
+ use doc && emake -C "${CMAKE_BUILD_DIR}"/Docs api-docs |
253 |
+} |
254 |
+ |
255 |
+src_install() { |
256 |
+ cmake-utils_src_install |
257 |
+ |
258 |
+ if use static-libs ; then |
259 |
+ find "${STATIC_BUILD}" -name "*.a" \! -name "libCommon.a" -exec dolib.a '{}' \; |
260 |
+ insinto /usr/$(get_libdir)/pkgconfig |
261 |
+ doins "${STATIC_BUILD}"/pkgconfig/MYGUIStatic.pc |
262 |
+ fi |
263 |
+ |
264 |
+ if use doc ; then |
265 |
+ dodoc -r "${CMAKE_BUILD_DIR}"/Docs/html/ |
266 |
+ |
267 |
+ if use l10n_ru ; then |
268 |
+ docompress -x /usr/share/doc/${PF}/Papers |
269 |
+ dodoc -r Docs/Papers |
270 |
+ fi |
271 |
+ fi |
272 |
+ |
273 |
+ keepdir /etc/MYGUI |
274 |
+ fperms o+w /etc/MYGUI |
275 |
+ |
276 |
+ # test media not needed at runtime |
277 |
+ rm -rf "${ED%/}"/usr/share/MYGUI/Media/UnitTests || die |
278 |
+ # wrapper not available for linux, remove related media |
279 |
+ rm -rf "${ED%/}"/usr/share/MYGUI/Media/Wrapper || die |
280 |
+} |
281 |
+ |
282 |
+pkg_postinst() { |
283 |
+ elog |
284 |
+ elog "ogre.cfg and Ogre.log are created as" |
285 |
+ elog "${EROOT%/}/etc/MYGUI/mygui-ogre.cfg and /etc/MYGUI/mygui-Ogre.log" |
286 |
+ elog |
287 |
+} |