summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-games/mygui
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'dev-games/mygui')
-rw-r--r--dev-games/mygui/Manifest1
-rw-r--r--dev-games/mygui/files/mygui-3.2.2-FHS.patch44
-rw-r--r--dev-games/mygui/files/mygui-3.2.2-build.patch61
-rw-r--r--dev-games/mygui/files/mygui-3.2.2-underlinking.patch20
-rw-r--r--dev-games/mygui/metadata.xml45
-rw-r--r--dev-games/mygui/mygui-3.2.2.ebuild143
6 files changed, 314 insertions, 0 deletions
diff --git a/dev-games/mygui/Manifest b/dev-games/mygui/Manifest
new file mode 100644
index 000000000000..ae962496c9c4
--- /dev/null
+++ b/dev-games/mygui/Manifest
@@ -0,0 +1 @@
+DIST MyGUI3.2.2.tar.gz 22081236 SHA256 0a28d7ec8a47993cb68deb48b36331e28f12dd92580b709eaef21d599b67a78f SHA512 1290ce1d78b9e4bfe72bea3fb1bc6cdd25969b44be2844df62a1f425b3e221a68b61658fdf45271fb50a1957f12b5ada1c9be971e00ecfe41f53ae0a83ae18d4 WHIRLPOOL d79a765f4442a3a07e5cb886ac5f14a3d444cdb8c7d43f6900a8855316f71af643faa2a4a2f04a64d49a36f2e4fb6065292c856d1aaef2bca6ad79a7508d5bad
diff --git a/dev-games/mygui/files/mygui-3.2.2-FHS.patch b/dev-games/mygui/files/mygui-3.2.2-FHS.patch
new file mode 100644
index 000000000000..14d21626ff7b
--- /dev/null
+++ b/dev-games/mygui/files/mygui-3.2.2-FHS.patch
@@ -0,0 +1,44 @@
+From: Julian Ospald <hasufell@gentoo.org>
+Date: Sat Oct 27 22:39:31 UTC 2012
+Subject: FHS
+
+paths hardcoded until upstream fixed the logic
+
+--- mygui-MyGUI3.2.2.orig/CMake/InstallResources.cmake
++++ mygui-MyGUI3.2.2/CMake/InstallResources.cmake
+@@ -24,7 +24,7 @@
+ else ()
+ install(FILES
+ ${MYGUI_BINARY_DIR}/bin/${FILENAME}
+- DESTINATION "bin"
++ DESTINATION "/etc/MYGUI"
+ )
+ endif ()
+ endfunction(install_file)
+@@ -53,7 +53,7 @@
+ if (WIN32)
+ set(MYGUI_MEDIA_DIR "../../Media")
+ elseif (UNIX)
+- set(MYGUI_MEDIA_DIR "../share/MYGUI/Media")
++ set(MYGUI_MEDIA_DIR "${CMAKE_INSTALL_PREFIX}/share/MYGUI/Media")
+ else ()
+ set(MYGUI_MEDIA_DIR "../../Media")
+ endif ()
+--- mygui-MyGUI3.2.2.orig/Common/Base/Ogre/BaseManager.cpp
++++ mygui-MyGUI3.2.2/Common/Base/Ogre/BaseManager.cpp
+@@ -49,13 +49,13 @@
+ mWindow(nullptr),
+ mExit(false),
+ mPluginCfgName("plugins.cfg"),
+- mResourceXMLName("resources.xml"),
++ mResourceXMLName("/etc/MYGUI/resources.xml"),
+ mResourceFileName("MyGUI_Core.xml")
+ {
+ #if MYGUI_PLATFORM == MYGUI_PLATFORM_APPLE
+ mResourcePath = macBundlePath() + "/Contents/Resources/";
+ #else
+- mResourcePath = "";
++ mResourcePath = "/etc/MYGUI/";
+ #endif
+ }
+
diff --git a/dev-games/mygui/files/mygui-3.2.2-build.patch b/dev-games/mygui/files/mygui-3.2.2-build.patch
new file mode 100644
index 000000000000..a16b27c285b7
--- /dev/null
+++ b/dev-games/mygui/files/mygui-3.2.2-build.patch
@@ -0,0 +1,61 @@
+diff -ru mygui-MyGUI3.2.2.orig/CMake/ConfigureBuild.cmake mygui-MyGUI3.2.2/CMake/ConfigureBuild.cmake
+--- mygui-MyGUI3.2.2.orig/CMake/ConfigureBuild.cmake 2015-01-26 10:32:35.000000000 -0500
++++ mygui-MyGUI3.2.2/CMake/ConfigureBuild.cmake 2015-03-14 01:09:40.743621643 -0400
+@@ -4,6 +4,8 @@
+ # also prepare package files for pkg-config and CMake.
+ #######################################################################
+
++include(GNUInstallDirs)
++
+ # should we build static libs?
+ if (MYGUI_STATIC)
+ set(MYGUI_LIB_TYPE STATIC)
+@@ -47,7 +49,7 @@
+ else ()
+ configure_file(${MYGUI_TEMPLATES_DIR}/MYGUI.pc.in ${MYGUI_BINARY_DIR}/pkgconfig/MYGUI${MYGUI_LIB_SUFFIX}.pc @ONLY)
+ endif ()
+- install(FILES ${MYGUI_BINARY_DIR}/pkgconfig/MYGUI${MYGUI_LIB_SUFFIX}.pc DESTINATION lib/pkgconfig)
++ install(FILES ${MYGUI_BINARY_DIR}/pkgconfig/MYGUI${MYGUI_LIB_SUFFIX}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+
+ # configure additional packages
+
+diff -ru mygui-MyGUI3.2.2.orig/CMake/Utils/MyGUIConfigTargets.cmake mygui-MyGUI3.2.2/CMake/Utils/MyGUIConfigTargets.cmake
+--- mygui-MyGUI3.2.2.orig/CMake/Utils/MyGUIConfigTargets.cmake 2015-01-26 10:32:35.000000000 -0500
++++ mygui-MyGUI3.2.2/CMake/Utils/MyGUIConfigTargets.cmake 2015-03-14 01:08:44.905791784 -0400
+@@ -1,6 +1,8 @@
+ # Configure settings and install targets
+ # FIXME: Copypasted from Ogre and need lots of changes
+
++include(GNUInstallDirs)
++
+ if (WIN32)
+ set(MYGUI_RELEASE_PATH "/Release")
+ set(MYGUI_RELWDBG_PATH "/RelWithDebInfo")
+@@ -60,6 +62,12 @@
+ # install targets according to current build type
+ function(mygui_install_target TARGETNAME SUFFIX)
+ install(TARGETS ${TARGETNAME}
++ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" CONFIGURATIONS Gentoo ""
++ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" CONFIGURATIONS Gentoo ""
++ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" CONFIGURATIONS Gentoo ""
++ FRAMEWORK DESTINATION "${MYGUI_FRAMEWORK_PATH}" CONFIGURATIONS Gentoo ""
++ )
++ install(TARGETS ${TARGETNAME}
+ RUNTIME DESTINATION "bin${MYGUI_RELEASE_PATH}" CONFIGURATIONS Release None ""
+ LIBRARY DESTINATION "lib${MYGUI_LIB_RELEASE_PATH}${SUFFIX}" CONFIGURATIONS Release None ""
+ ARCHIVE DESTINATION "lib${MYGUI_LIB_RELEASE_PATH}${SUFFIX}" CONFIGURATIONS Release None ""
+@@ -171,7 +179,13 @@
+ endif ()
+ add_executable(${PROJECTNAME} ${MYGUI_EXEC_TYPE} ${HEADER_FILES} ${SOURCE_FILES})
+ endif ()
+- set_target_properties(${PROJECTNAME} PROPERTIES FOLDER ${SOLUTIONFOLDER})
++
++ # rename demo target^M
++ if (${SOLUTIONFOLDER} STREQUAL "Demos")
++ set_target_properties(${PROJECTNAME} PROPERTIES FOLDER ${SOLUTIONFOLDER} OUTPUT_NAME MYGUI-${PROJECTNAME})
++ else()
++ set_target_properties(${PROJECTNAME} PROPERTIES FOLDER ${SOLUTIONFOLDER})
++ endif()
+
+ add_dependencies(${PROJECTNAME} MyGUIEngine Common)
+
diff --git a/dev-games/mygui/files/mygui-3.2.2-underlinking.patch b/dev-games/mygui/files/mygui-3.2.2-underlinking.patch
new file mode 100644
index 000000000000..2d1026856f03
--- /dev/null
+++ b/dev-games/mygui/files/mygui-3.2.2-underlinking.patch
@@ -0,0 +1,20 @@
+From: Julian Ospald <hasufell@gentoo.org>
+Date: Fri Jun 15 10:42:42 UTC 2012
+Subject: build system
+
+fix underlinking
+
+--- MyGUIEngine/CMakeLists.txt
++++ MyGUIEngine/CMakeLists.txt
+@@ -48,7 +48,10 @@
+ if (MYGUI_USE_FREETYPE)
+ target_link_libraries(${PROJECTNAME}
+ ${FREETYPE_LIBRARIES}
+- )
++ dl)
++else()
++ target_link_libraries(${PROJECTNAME}
++ dl)
+ endif()
+
+ # platform specific dependencies
diff --git a/dev-games/mygui/metadata.xml b/dev-games/mygui/metadata.xml
new file mode 100644
index 000000000000..f52d405a6880
--- /dev/null
+++ b/dev-games/mygui/metadata.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>games</herd>
+ <upstream>
+ <maintainer status="active">
+ <email>altren@list.ru</email>
+ <name>Evmenov Georgiy</name>
+ <description>CC on bugs</description>
+ </maintainer>
+ <changelog>http://redmine.mygui.info/repositories/entry/mygui/tags/MyGUI3.2/ChangeLog.txt</changelog>
+ <bugs-to>https://sourceforge.net/tracker/?group_id=193706&amp;atid=946487</bugs-to>
+ <remote-id type="github">MyGUI/mygui</remote-id>
+ </upstream>
+ <use>
+ <flag name="linguas_ru">Install some additional russian docs if 'doc' useflag enabled</flag>
+ <flag name="opengl">Use the opengl render subsystem. (cannot combine with ogre)</flag>
+ <flag name="ogre">Use the ogre render subsystem. (cannot combine with opengl)</flag>
+ <flag name="plugins">Build MyGUI plugins</flag>
+ <flag name="samples">Install MyGUI demos (needs ogre USE flag)</flag>
+ <flag name="tools">Build the tools for development</flag>
+ </use>
+ <longdescription lang="en">
+ MyGUI is a library for creating Graphical User Interfaces (GUIs) for
+ games and 3D applications. The main goals of mygui are: speed,
+ flexibility and ease of use.
+
+ Speed
+ We speed up our system by using our own batching subsystem which
+ combines geometry. It is also possible for the more experienced
+ developers to write their own render system or new subsystems
+
+ Flexibility
+ The library supports plugins that allows you to create dynamically
+ loaded custom controls or subsystems. Most subsystems are expandable
+ with plugins without the need to touch the core code. All resources
+ and settings are described in XML files. It is possible to load
+ resources like fonts, cursors, images, skins, etc. Forms (layouts)
+ via dynamically by using XML files.
+
+ Simplicity
+ The user interface is easy to use and uses delegates (Signals and
+ slots) for easy to use event handling.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-games/mygui/mygui-3.2.2.ebuild b/dev-games/mygui/mygui-3.2.2.ebuild
new file mode 100644
index 000000000000..17e7f8b581b5
--- /dev/null
+++ b/dev-games/mygui/mygui-3.2.2.ebuild
@@ -0,0 +1,143 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+CMAKE_REMOVE_MODULES="yes"
+CMAKE_REMOVE_MODULES_LIST="FindFreetype"
+inherit eutils cmake-utils flag-o-matic multilib
+
+MY_PN=MyGUI
+MY_P=${MY_PN}${PV}
+
+DESCRIPTION="A library for creating GUIs for games"
+HOMEPAGE="http://mygui.info/"
+SRC_URI="https://github.com/MyGUI/mygui/archive/${MY_P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="debug doc +ogre -opengl plugins samples static-libs test tools linguas_ru"
+REQUIRED_USE="ogre? ( !opengl )
+ opengl? ( !ogre )"
+
+RDEPEND="
+ media-libs/freetype:2
+ ogre? (
+ dev-games/ogre:=[freeimage,opengl]
+ samples? ( dev-games/ois )
+ )
+ opengl? ( virtual/opengl
+ media-libs/glew )
+ tools? ( dev-games/ois )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? ( app-doc/doxygen )"
+
+S=${WORKDIR}/mygui-${MY_P}
+STATIC_BUILD=${WORKDIR}/${P}_build_static
+
+pkg_setup() {
+ if use samples && use !ogre ; then
+ ewarn "Samples disabled, because they only work with ogre!"
+ ewarn "Enable ogre USE flag if you want to use samples."
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-underlinking.patch \
+ "${FILESDIR}"/${P}-build.patch \
+ "${FILESDIR}"/${P}-FHS.patch
+}
+
+src_configure() {
+ use debug && append-cppflags -DDEBUG
+
+ local mycmakeargs=()
+
+ # static configuration
+ if use static-libs ; then
+ mycmakeargs=( -DMYGUI_STATIC=ON
+ -DMYGUI_BUILD_DOCS=OFF
+ -DMYGUI_INSTALL_DOCS=OFF
+ -DMYGUI_USE_FREETYPE=ON
+ $(cmake-utils_use plugins MYGUI_BUILD_PLUGINS)
+ -DMYGUI_BUILD_DEMOS=OFF
+ -DMYGUI_INSTALL_SAMPLES=OFF
+ -DMYGUI_BUILD_TOOLS=OFF
+ -DMYGUI_INSTALL_TOOLS=OFF
+ -DMYGUI_BUILD_WRAPPER=OFF
+ -DMYGUI_RENDERSYSTEM=$(usex opengl "4" "$(usex ogre "3" "1")") )
+
+ CMAKE_BUILD_DIR=${STATIC_BUILD} cmake-utils_src_configure
+ unset mycmakeargs
+ fi
+
+ # main configuration
+ mycmakeargs=( -DMYGUI_STATIC=OFF
+ $(cmake-utils_use doc MYGUI_BUILD_DOCS)
+ $(cmake-utils_use doc MYGUI_INSTALL_DOCS)
+ -DMYGUI_USE_FREETYPE=ON
+ $(cmake-utils_use plugins MYGUI_BUILD_PLUGINS)
+ $(usex ogre "$(cmake-utils_use samples MYGUI_BUILD_DEMOS)" "-DMYGUI_BUILD_DEMOS=OFF")
+ $(usex ogre "$(cmake-utils_use samples MYGUI_INSTALL_SAMPLES)" "-DMYGUI_INSTALL_SAMPLES=OFF")
+ $(cmake-utils_use tools MYGUI_BUILD_TOOLS)
+ $(cmake-utils_use tools MYGUI_INSTALL_TOOLS)
+ $(cmake-utils_use opengl MYGUI_USE_SYSTEM_GLEW)
+ -DMYGUI_BUILD_WRAPPER=OFF
+ -DMYGUI_RENDERSYSTEM=$(usex opengl "4" "$(usex ogre "3" "1")") )
+
+ if use tools || (use samples && use ogre) ; then
+ mycmakeargs+=( -DMYGUI_INSTALL_MEDIA=ON )
+ else
+ mycmakeargs+=( -DMYGUI_INSTALL_MEDIA=OFF )
+ fi
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ # build system does not support building static and shared at once,
+ # run a double build
+ if use static-libs ; then
+ CMAKE_BUILD_DIR=${STATIC_BUILD} cmake-utils_src_compile
+ fi
+
+ cmake-utils_src_compile
+
+ use doc && emake -C "${CMAKE_BUILD_DIR}"/Docs api-docs
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use static-libs ; then
+ find "${STATIC_BUILD}" -name "*.a" \! -name "libCommon.a" -exec dolib.a '{}' \;
+ insinto /usr/$(get_libdir)/pkgconfig
+ doins "${STATIC_BUILD}"/pkgconfig/MYGUIStatic.pc
+ fi
+
+ if use doc ; then
+ dohtml -r "${CMAKE_BUILD_DIR}"/Docs/html/*
+
+ if use linguas_ru ; then
+ docompress -x /usr/share/doc/${PF}/Papers
+ dodoc -r Docs/Papers
+ fi
+ fi
+
+ keepdir /etc/MYGUI
+ fperms o+w /etc/MYGUI
+
+ # test media not needed at runtime
+ rm -rf "${D}"/usr/share/MYGUI/Media/UnitTests
+ # wrapper not available for linux, remove related media
+ rm -rf "${D}"/usr/share/MYGUI/Media/Wrapper
+}
+
+pkg_postinst() {
+ einfo
+ elog "ogre.cfg and Ogre.log are created as"
+ elog "/etc/MYGUI/mygui-ogre.cfg and /etc/MYGUI/mygui-Ogre.log"
+ einfo
+}