Gentoo Archives: gentoo-commits

From: Jonathan Scruggs <dracwyrm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-libs/opencollada/, media-libs/opencollada/files/
Date: Tue, 30 Jan 2018 21:00:32
Message-Id: 1517345979.65833f7dc77f342cfbd705d2548cc76f32de2d8e.dracwyrm@gentoo
1 commit: 65833f7dc77f342cfbd705d2548cc76f32de2d8e
2 Author: Jonathan Scruggs <j.scruggs <AT> gmail <DOT> com>
3 AuthorDate: Mon Jan 29 15:26:52 2018 +0000
4 Commit: Jonathan Scruggs <dracwyrm <AT> gentoo <DOT> org>
5 CommitDate: Tue Jan 30 20:59:39 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=65833f7d
7
8 media-libs/opencollada: add 1.6.2 release
9
10 Closes: https://github.com/gentoo/gentoo/pull/6997
11
12 media-libs/opencollada/Manifest | 1 +
13 .../files/opencollada-1.6.62-cmake-fixes.patch | 122 +++++++++++++++++++++
14 media-libs/opencollada/opencollada-1.6.62.ebuild | 65 +++++++++++
15 3 files changed, 188 insertions(+)
16
17 diff --git a/media-libs/opencollada/Manifest b/media-libs/opencollada/Manifest
18 index d1542aa0bf5..536be7f94eb 100644
19 --- a/media-libs/opencollada/Manifest
20 +++ b/media-libs/opencollada/Manifest
21 @@ -2,3 +2,4 @@ DIST opencollada-1.6.25.tar.gz 11817949 BLAKE2B 84278ae25d64ab827806c6ec588a333a
22 DIST opencollada-1.6.31.tar.gz 11832790 BLAKE2B 297130a8f844f4f80f4394db85098eaeaf42da125f34f20b4b6285c2bd0afc20c7066e3c54f73012c188b5b3c79f43be351fdc3b612b1e5c67ecc0ae19acb0f3 SHA512 6290600bed59fef72c4986a9d00683ae1bfedf6811a44fb9e05e1a46e4ceaee7585c2281918f0a491369e49b01d3dfab0eb38b3e0728f96fe8264a80ca28d8c9
23 DIST opencollada-1.6.36.tar.gz 12275972 BLAKE2B 3f7afb81767e92d1f6efeaf114caf0fa426d075ccd0fcd9f5c8e3951d7706329c545643cab8d18c05542d26933f3e016f96ca9931554b2929d8f815661917529 SHA512 bcee958d229a6d28043afd6dbe2e8536668ce57b510d2759ef68420aa9ac5b8f82ab5956fbcef7ecc6177ad5f0f20c9a7364a886236e583c85215de86f7066f8
24 DIST opencollada-1.6.58.tar.gz 12088428 BLAKE2B ef5da3eae1c7f4ffd5abf4f93fd9ae1399d7eb3d470ebf4d3c042562d654b6dbcab3010d64250ff9701bd2b1e310178ab2430ed59b3f774a610619e723786961 SHA512 122b841de28f82408bc6fe9d363894ab8f9033cfed949f8028b7a35445e3361f0df583d8b18f7198eaa9dbf3ad33b52dbe5fe6a7e652494789850effcbbf22c9
25 +DIST opencollada-1.6.62.tar.gz 12094443 BLAKE2B 6cd0ec893fc212bf3e8f166ad9c51c894dc298a3627e65dd41ece850a5638d91b8839830d5456bf3ba072a0b23f8c01247d8c676cc79d98464cdf0c1b55fd3c5 SHA512 bd39406b9a833409303ef7cd4e93beee0675fa57c267af95a34699348a81650d50ae042dbb1837cd41c72433533a3a9b827a44e9775a5b06c7c4f1a351146574
26
27 diff --git a/media-libs/opencollada/files/opencollada-1.6.62-cmake-fixes.patch b/media-libs/opencollada/files/opencollada-1.6.62-cmake-fixes.patch
28 new file mode 100644
29 index 00000000000..8fc32784daa
30 --- /dev/null
31 +++ b/media-libs/opencollada/files/opencollada-1.6.62-cmake-fixes.patch
32 @@ -0,0 +1,122 @@
33 +From c3ed65c2c60b8744163b3a57cf24469e688536dd Mon Sep 17 00:00:00 2001
34 +From: Jonathan Scruggs <j.scruggs@×××××.com>
35 +Date: Sat, 13 Jan 2018 11:54:44 +0000
36 +Subject: [PATCH] OpenCOLLADA/CMakeLists.txt
37 +
38 +Use CMAKE_BUILD_TYPE which can be overrided with custom distro types
39 +
40 +Adhere to GNU filesystem layout conventions. Not all distros and OSes
41 +have directories in the same locations and they define the
42 +GNUInstallDirs variables, so use those variables. Also, this enables
43 +multi lib installations.
44 +
45 +Define the version variables to enable SONAME versioning on the
46 +library files in case there is ABI changes in the future.
47 +---
48 + CMakeLists.txt | 58 ++++++++++++++++++++++++++++++++++++----------------------
49 + 1 file changed, 36 insertions(+), 22 deletions(-)
50 +
51 +diff --git a/CMakeLists.txt b/CMakeLists.txt
52 +index 95abbe21..00ad8d6a 100644
53 +--- a/CMakeLists.txt
54 ++++ b/CMakeLists.txt
55 +@@ -37,14 +37,41 @@ cmake_policy(SET CMP0010 NEW)
56 + # Input directories must have CMakeLists.txt
57 + cmake_policy(SET CMP0014 NEW)
58 +
59 +-# avoid having empty buildtype
60 +-set(CMAKE_BUILD_TYPE_INIT "Release")
61 +
62 +-set(CMAKE_CONFIGURATION_TYPES "Debug;Release" CACHE STRING "Only do Release and Debug" FORCE )
63 +-mark_as_advanced(CMAKE_CONFIGURATION_TYPES)
64 ++# Set Release type for builds where CMAKE_BUILD_TYPE is unset
65 ++# This is usually a good default as this implictly enables
66 ++#
67 ++# CXXFLAGS = -O3 -DNDEBUG
68 ++#
69 ++if( NOT CMAKE_BUILD_TYPE )
70 ++ set( CMAKE_BUILD_TYPE "Release" )
71 ++endif()
72 +
73 + SET(CMAKE_DEBUG_POSTFIX "" CACHE STRING "Add this string to as suffix to Debug libraries, e.g.: xml2_d.lib " )
74 +
75 ++# Adhere to GNU filesystem layout conventions
76 ++include( GNUInstallDirs )
77 ++
78 ++
79 ++# #-----------------------------------------------------------------------------
80 ++# Initialize project.
81 ++
82 ++project(OPENCOLLADA) # must be after setting cmake_configuration_types
83 ++
84 ++set(EXTERNAL_LIBRARIES ${OPENCOLLADA_SOURCE_DIR}/Externals) # external libraries
85 ++set(CMAKE_MODULE_PATH "${EXTERNAL_LIBRARIES}/cmake-modules")
86 ++
87 ++set(OPENCOLLADA_VERSION_MAJOR 1)
88 ++set(OPENCOLLADA_VERSION_MINOR 6)
89 ++set(OPENCOLLADA_VERSION_PATCH 62)
90 ++set(OPENCOLLADA_VERSION ${OPENCOLLADA_VERSION_MAJOR}.${OPENCOLLADA_VERSION_MINOR}.${OPENCOLLADA_VERSION_PATCH})
91 ++
92 ++if(NOT SOVERSION)
93 ++ set(SOVERSION ${OPENCOLLADA_VERSION_MAJOR}.${OPENCOLLADA_VERSION_MINOR}
94 ++ CACHE STRING "Set the SO version in the SO name of the output library")
95 ++endif()
96 ++
97 ++
98 + #-----------------------------------------------------------------------------
99 + # Macro's
100 +
101 +@@ -58,7 +85,7 @@ macro(opencollada_add_lib
102 +
103 + if (USE_STATIC)
104 + add_library(${name}_static STATIC ${sources})
105 +- set_target_properties(${name}_static PROPERTIES OUTPUT_NAME ${name})
106 ++ set_target_properties(${name}_static PROPERTIES OUTPUT_NAME ${name} SOVERSION ${SOVERSION})
107 + foreach(target_lib ${target_libs})
108 + if(TARGET ${target_lib}_static)
109 + target_link_libraries(${name}_static ${target_lib}_static)
110 +@@ -84,7 +111,7 @@ macro(opencollada_add_lib
111 + message(${name} " WARNING: Shared library support implemented for UNIX-like OS only")
112 + endif ()
113 + add_library(${name}_shared SHARED ${sources})
114 +- set_target_properties(${name}_shared PROPERTIES OUTPUT_NAME ${name})
115 ++ set_target_properties(${name}_shared PROPERTIES OUTPUT_NAME ${name} SOVERSION ${SOVERSION})
116 + foreach(target_lib ${target_libs})
117 + if(TARGET ${target_lib}_shared)
118 + target_link_libraries(${name}_shared ${target_lib}_shared)
119 +@@ -145,19 +172,6 @@ endmacro()
120 + # end copy
121 + # --------
122 +
123 +-#-----------------------------------------------------------------------------
124 +-# Initialize project.
125 +-
126 +-project(OPENCOLLADA) # must be after setting cmake_configuration_types
127 +-
128 +-set(EXTERNAL_LIBRARIES ${OPENCOLLADA_SOURCE_DIR}/Externals) # external libraries
129 +-set(CMAKE_MODULE_PATH "${EXTERNAL_LIBRARIES}/cmake-modules")
130 +-
131 +-set(OPENCOLLADA_VERSION_MAJOR 0)
132 +-set(OPENCOLLADA_VERSION_MINOR 1)
133 +-set(OPENCOLLADA_VERSION_PATCH 0)
134 +-set(OPENCOLLADA_VERSION ${OPENCOLLADA_VERSION_MAJOR}.${OPENCOLLADA_VERSION_MINOR}.${OPENCOLLADA_VERSION_PATCH})
135 +-
136 +
137 + #-----------------------------------------------------------------------------
138 + # Compiler warnings.
139 +@@ -190,9 +204,9 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CXX_WARNINGS}")
140 + #-----------------------------------------------------------------------------
141 + # Install vars
142 +
143 +-set(OPENCOLLADA_INST_INCLUDE ${CMAKE_INSTALL_PREFIX}/include/opencollada)
144 +-set(OPENCOLLADA_INST_LIBRARY ${CMAKE_INSTALL_PREFIX}/lib/opencollada)
145 +-set(OPENCOLLADA_INST_CMAKECONFIG ${OPENCOLLADA_INST_LIBRARY}/cmake)
146 ++set(OPENCOLLADA_INST_INCLUDE ${CMAKE_INSTALL_FULL_INCLUDEDIR}/opencollada)
147 ++set(OPENCOLLADA_INST_LIBRARY ${CMAKE_INSTALL_FULL_LIBDIR}/opencollada)
148 ++set(OPENCOLLADA_INST_CMAKECONFIG ${CMAKE_INSTALL_FULL_LIBDIR}/cmake/OpenCOLLADA)
149 +
150 +
151 + #-----------------------------------------------------------------------------
152 +--
153 +2.15.1
154 +
155
156 diff --git a/media-libs/opencollada/opencollada-1.6.62.ebuild b/media-libs/opencollada/opencollada-1.6.62.ebuild
157 new file mode 100644
158 index 00000000000..4a0d0c352bd
159 --- /dev/null
160 +++ b/media-libs/opencollada/opencollada-1.6.62.ebuild
161 @@ -0,0 +1,65 @@
162 +# Copyright 1999-2018 Gentoo Foundation
163 +# Distributed under the terms of the GNU General Public License v2
164 +
165 +EAPI=6
166 +
167 +inherit cmake-utils versionator
168 +
169 +DESCRIPTION="Stream based read/write library for COLLADA files"
170 +HOMEPAGE="http://www.opencollada.org/"
171 +SRC_URI="https://github.com/KhronosGroup/OpenCOLLADA/archive/v${PV}.tar.gz -> ${P}.tar.gz"
172 +
173 +LICENSE="MIT"
174 +SLOT="0"
175 +KEYWORDS="amd64 ~ppc64 x86"
176 +IUSE="static-libs"
177 +
178 +RDEPEND="dev-libs/libpcre
179 + dev-libs/zziplib
180 + media-libs/lib3ds
181 + sys-libs/zlib
182 + dev-libs/libxml2"
183 +DEPEND="${RDEPEND}
184 + virtual/pkgconfig"
185 +
186 +S="${WORKDIR}/OpenCOLLADA-${PV}"
187 +
188 +PATCHES=( "${FILESDIR}/${P}-cmake-fixes.patch" )
189 +
190 +src_prepare() {
191 + edos2unix CMakeLists.txt
192 +
193 + cmake-utils_src_prepare
194 +
195 + # Remove bundled depends that have portage equivalents
196 + rm -rv Externals/{expat,lib3ds,LibXML,pcre,zziplib} || die
197 +
198 + # Remove unused build systems
199 + rm -v Makefile scripts/{unixbuild.sh,vcproj2cmake.rb} || die
200 + find "${S}" -name SConscript -delete || die
201 +}
202 +
203 +src_configure() {
204 + local mycmakeargs=(
205 + -DUSE_SHARED=ON
206 + -DUSE_STATIC=$(usex static-libs)
207 + -DUSE_LIBXML=ON
208 + )
209 +
210 + cmake-utils_src_configure
211 +}
212 +
213 +src_install() {
214 + cmake-utils_src_install
215 +
216 + echo "LDPATH=/usr/$(get_libdir)/opencollada" > "${T}"/99${PN} || die "echo failed"
217 + doenvd "${T}"/99${PN}
218 +
219 + dobin "${BUILD_DIR}/bin/DAEValidator"
220 + dobin "${BUILD_DIR}/bin/OpenCOLLADAValidator"
221 + # Need to be in same directory as above binaries
222 + docinto "/usr/bin"
223 + dodoc "${BUILD_DIR}/bin/COLLADAPhysX3Schema.xsd"
224 + dodoc "${BUILD_DIR}/bin/collada_schema_1_4_1.xsd"
225 + dodoc "${BUILD_DIR}/bin/collada_schema_1_5.xsd"
226 +}