commit:     afe11bf20c89d8e917f81930761d94f7fa754050
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Feb  1 02:07:13 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Feb  1 02:07:24 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=afe11bf2

games-arcade/jvgs: unbundle tinyxml

Closes: https://bugs.gentoo.org/739084
Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../jvgs/files/jvgs-0.5-unbundle-tinyxml.patch     | 333 +++++++++++++++++++++
 games-arcade/jvgs/jvgs-0.5-r100.ebuild             |  29 +-
 2 files changed, 357 insertions(+), 5 deletions(-)

diff --git a/games-arcade/jvgs/files/jvgs-0.5-unbundle-tinyxml.patch 
b/games-arcade/jvgs/files/jvgs-0.5-unbundle-tinyxml.patch
new file mode 100644
index 00000000000..fd9c0d8702a
--- /dev/null
+++ b/games-arcade/jvgs/files/jvgs-0.5-unbundle-tinyxml.patch
@@ -0,0 +1,333 @@
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 87b28ab..2ec725c 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -1,10 +1,14 @@
+ SET( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DTIXML_USE_STL" )
+ 
++find_package(PkgConfig REQUIRED)
++pkg_check_modules(TinyXml REQUIRED tinyxml)
++
+ INCLUDE_DIRECTORIES(
+     ${SDL_INCLUDE_DIR}
+     ${LUA_INCLUDE_DIR}
+     ${FREETYPE_INCLUDE_DIRS}
+     ${SDLMIXER_INCLUDE_DIR}
++    ${TINYXML_INCLUDE_DIRS}
+     ${ZLIB_INCLUDE_DIRS}
+ )
+ 
+@@ -12,7 +16,6 @@ ADD_SUBDIRECTORY( input )
+ ADD_SUBDIRECTORY( core )
+ ADD_SUBDIRECTORY( game )
+ ADD_SUBDIRECTORY( math )
+-ADD_SUBDIRECTORY( tinyxml )
+ ADD_SUBDIRECTORY( video )
+ ADD_SUBDIRECTORY( audio )
+ ADD_SUBDIRECTORY( sketch )
+@@ -25,5 +28,5 @@ ADD_EXECUTABLE(
+ )
+ 
+ TARGET_LINK_LIBRARIES(
+-    jvgs bind input
++    jvgs bind input ${TINYXML_LIBRARIES}
+ )
+diff --git a/src/core/PropertyMap.cpp b/src/core/PropertyMap.cpp
+index 190b317..3f7dd1a 100644
+--- a/src/core/PropertyMap.cpp
++++ b/src/core/PropertyMap.cpp
+@@ -1,7 +1,7 @@
+ #include "PropertyMap.h"
+ #include "LogManager.h"
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ using namespace std;
+ 
+ namespace jvgs
+diff --git a/src/core/XMLLoadable.cpp b/src/core/XMLLoadable.cpp
+index f5cbc46..b819184 100644
+--- a/src/core/XMLLoadable.cpp
++++ b/src/core/XMLLoadable.cpp
+@@ -1,7 +1,7 @@
+ #include "XMLLoadable.h"
+ #include "LogManager.h"
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ using namespace std;
+ 
+diff --git a/src/game/AbstractCamera.cpp b/src/game/AbstractCamera.cpp
+index b349418..725a2e2 100644
+--- a/src/game/AbstractCamera.cpp
++++ b/src/game/AbstractCamera.cpp
+@@ -5,7 +5,7 @@ using namespace jvgs::video;
+ 
+ using namespace jvgs::math;
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ namespace jvgs
+ {
+diff --git a/src/game/Animation.cpp b/src/game/Animation.cpp
+index ac563a6..6aa3b10 100644
+--- a/src/game/Animation.cpp
++++ b/src/game/Animation.cpp
+@@ -7,7 +7,7 @@ using namespace jvgs::sketch;
+ #include "../core/LogManager.h"
+ using namespace jvgs::core;
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ using namespace std;
+ 
+diff --git a/src/game/BullController.cpp b/src/game/BullController.cpp
+index 78f81af..56930b4 100644
+--- a/src/game/BullController.cpp
++++ b/src/game/BullController.cpp
+@@ -8,7 +8,7 @@ using namespace jvgs::core;
+ #include "../math/Vector2D.h"
+ using namespace jvgs::math;
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ using namespace std;
+ 
+diff --git a/src/game/CollisionResponsePositioner.cpp 
b/src/game/CollisionResponsePositioner.cpp
+index 8065efe..657c1c6 100644
+--- a/src/game/CollisionResponsePositioner.cpp
++++ b/src/game/CollisionResponsePositioner.cpp
+@@ -15,7 +15,7 @@ using namespace jvgs::sketch;
+ #include "../math/QuadTree.h"
+ using namespace jvgs::math;
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ #include <iostream>
+ using namespace std;
+diff --git a/src/game/DefaultInputController.cpp 
b/src/game/DefaultInputController.cpp
+index a05aec9..c6da502 100644
+--- a/src/game/DefaultInputController.cpp
++++ b/src/game/DefaultInputController.cpp
+@@ -7,7 +7,7 @@
+ #include "../input/InputManager.h"
+ using namespace jvgs::input;
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ using namespace jvgs::math;
+ 
+diff --git a/src/game/Entity.cpp b/src/game/Entity.cpp
+index 914297f..f353541 100644
+--- a/src/game/Entity.cpp
++++ b/src/game/Entity.cpp
+@@ -27,7 +27,7 @@ using namespace jvgs::video;
+ #include "../bind/ScriptManager.h"
+ using namespace jvgs::bind;
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ using namespace std;
+ using namespace jvgs::math;
+diff --git a/src/game/FlyStraightController.cpp 
b/src/game/FlyStraightController.cpp
+index 1217b62..62f8c1a 100644
+--- a/src/game/FlyStraightController.cpp
++++ b/src/game/FlyStraightController.cpp
+@@ -5,7 +5,7 @@
+ #include "../math/Vector2D.h"
+ using namespace jvgs::math;
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ namespace jvgs
+ {
+diff --git a/src/game/FollowCamera.cpp b/src/game/FollowCamera.cpp
+index 4a1006b..4b1fe2c 100644
+--- a/src/game/FollowCamera.cpp
++++ b/src/game/FollowCamera.cpp
+@@ -12,7 +12,7 @@ using namespace jvgs::video;
+ 
+ using namespace jvgs::math;
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ namespace jvgs
+ {
+diff --git a/src/game/InputController.cpp b/src/game/InputController.cpp
+index 0d76dd7..1e07609 100644
+--- a/src/game/InputController.cpp
++++ b/src/game/InputController.cpp
+@@ -5,7 +5,7 @@
+ #include "../input/InputManager.h"
+ using namespace jvgs::input;
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ using namespace jvgs::math;
+ 
+diff --git a/src/game/Level.cpp b/src/game/Level.cpp
+index a02e818..bf0c485 100644
+--- a/src/game/Level.cpp
++++ b/src/game/Level.cpp
+@@ -14,7 +14,7 @@ using namespace jvgs::video;
+ #include "../audio/AudioManager.h"
+ using namespace jvgs::audio;
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ using namespace jvgs::sketch;
+ using namespace jvgs::math;
+diff --git a/src/game/PatrollingController.cpp 
b/src/game/PatrollingController.cpp
+index 74e5171..7d56754 100644
+--- a/src/game/PatrollingController.cpp
++++ b/src/game/PatrollingController.cpp
+@@ -5,7 +5,7 @@
+ #include "../math/MathManager.h"
+ using namespace jvgs::math;
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ namespace jvgs
+ {
+diff --git a/src/game/Positioner.cpp b/src/game/Positioner.cpp
+index 6297c09..5fb2f37 100644
+--- a/src/game/Positioner.cpp
++++ b/src/game/Positioner.cpp
+@@ -1,7 +1,7 @@
+ #include "Positioner.h"
+ #include "Entity.h"
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ using namespace jvgs::math;
+ 
+diff --git a/src/game/SillyController.cpp b/src/game/SillyController.cpp
+index 25070e5..4954091 100644
+--- a/src/game/SillyController.cpp
++++ b/src/game/SillyController.cpp
+@@ -1,7 +1,7 @@
+ #include "SillyController.h"
+ #include "Entity.h"
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ using namespace jvgs::math;
+ 
+diff --git a/src/game/SimpleBirdController.cpp 
b/src/game/SimpleBirdController.cpp
+index 54b95bc..82f371f 100644
+--- a/src/game/SimpleBirdController.cpp
++++ b/src/game/SimpleBirdController.cpp
+@@ -1,7 +1,7 @@
+ #include "SimpleBirdController.h"
+ #include "Entity.h"
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ using namespace std;
+ using namespace jvgs::math;
+diff --git a/src/game/SimpleCamera.cpp b/src/game/SimpleCamera.cpp
+index 00deb92..e640481 100644
+--- a/src/game/SimpleCamera.cpp
++++ b/src/game/SimpleCamera.cpp
+@@ -2,7 +2,7 @@
+ 
+ using namespace jvgs::math;
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ namespace jvgs
+ {
+diff --git a/src/game/Sprite.cpp b/src/game/Sprite.cpp
+index 19caa35..ee314df 100644
+--- a/src/game/Sprite.cpp
++++ b/src/game/Sprite.cpp
+@@ -1,7 +1,7 @@
+ #include "Sprite.h"
+ #include "Animation.h"
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ using namespace std;
+ 
+diff --git a/src/math/Vector2D.cpp b/src/math/Vector2D.cpp
+index ba8a05e..61673b3 100644
+--- a/src/math/Vector2D.cpp
++++ b/src/math/Vector2D.cpp
+@@ -2,7 +2,7 @@
+ #include <cmath>
+ #include "MathManager.h"
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ namespace jvgs
+ {
+diff --git a/src/sketch/GroupParser.cpp b/src/sketch/GroupParser.cpp
+index 0924f95..58d5584 100644
+--- a/src/sketch/GroupParser.cpp
++++ b/src/sketch/GroupParser.cpp
+@@ -3,7 +3,7 @@
+ #include "Group.h"
+ #include "SketchElement.h"
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ #include "../core/LogManager.h"
+ using namespace jvgs::core;
+diff --git a/src/sketch/Parser.cpp b/src/sketch/Parser.cpp
+index 2b55c16..390f9ae 100644
+--- a/src/sketch/Parser.cpp
++++ b/src/sketch/Parser.cpp
+@@ -13,7 +13,7 @@ using namespace jvgs::core;
+ #include "../math/Vector2D.h"
+ using namespace jvgs::math;
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ namespace jvgs
+ {
+diff --git a/src/sketch/PathParser.cpp b/src/sketch/PathParser.cpp
+index 1eb2027..eb63cf2 100644
+--- a/src/sketch/PathParser.cpp
++++ b/src/sketch/PathParser.cpp
+@@ -3,7 +3,7 @@
+ #include "Path.h"
+ #include "PathDataParser.h"
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ #include "../core/LogManager.h"
+ using namespace jvgs::core;
+diff --git a/src/sketch/SketchElementParser.cpp 
b/src/sketch/SketchElementParser.cpp
+index b7c4968..fc40dfb 100644
+--- a/src/sketch/SketchElementParser.cpp
++++ b/src/sketch/SketchElementParser.cpp
+@@ -3,7 +3,7 @@
+ #include "SketchElement.h"
+ #include "Parser.h"
+ 
+-#include "../tinyxml/tinyxml.h"
++#include "tinyxml.h"
+ 
+ #include "../core/LogManager.h"
+ using namespace jvgs::core;

diff --git a/games-arcade/jvgs/jvgs-0.5-r100.ebuild 
b/games-arcade/jvgs/jvgs-0.5-r100.ebuild
index cad51405476..7d3b9b8eb69 100644
--- a/games-arcade/jvgs/jvgs-0.5-r100.ebuild
+++ b/games-arcade/jvgs/jvgs-0.5-r100.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -10,6 +10,7 @@ inherit cmake desktop lua-single
 DESCRIPTION="An open-source platform game with a sketched and minimalistic 
look"
 HOMEPAGE="http://jvgs.sourceforge.net/";
 SRC_URI="mirror://sourceforge/jvgs/${P}-src.tar.gz"
+S="${WORKDIR}/${P}-src"
 
 LICENSE="WTFPL-2"
 SLOT="0"
@@ -18,19 +19,37 @@ KEYWORDS="~amd64 ~x86"
 REQUIRED_USE="${LUA_REQUIRED_USE}"
 
 RDEPEND="${LUA_DEPS}
+       dev-libs/tinyxml[stl]
        media-libs/libsdl[video]
        media-libs/sdl-mixer[vorbis]
        media-libs/freetype:2
        sys-libs/zlib:=
-       virtual/opengl"
+       x11-libs/libICE
+       x11-libs/libSM
+       x11-libs/libX11
+       x11-libs/libXext
+       virtual/opengl
+       virtual/glu
+"
 DEPEND="${RDEPEND}"
 BDEPEND="dev-lang/swig"
 
-S=${WORKDIR}/${P}-src
-PATCHES=( "${FILESDIR}"/${PN}-0.5-fix-build-system.patch )
+PATCHES=(
+       "${FILESDIR}"/${PN}-0.5-fix-build-system.patch
+       "${FILESDIR}"/${PN}-0.5-unbundle-tinyxml.patch
+)
+
+src_prepare() {
+       sed -i "s:main.lua:/usr/share/${PN}/&:" src/main.cpp || die
+
+       # Make sure we don't use bundled copy
+       rm -r src/tinyxml/ || die
+
+       cmake_src_prepare
+}
 
 src_install() {
-       dobin src/${PN}
+       dobin "${BUILD_DIR}"/src/${PN}
 
        insinto /usr/share/${PN}
        doins -r main.lua resources

Reply via email to