dev-util/apitrace: Version bump by EoD (bug 559566).
authorMichael Weber <xmw@gentoo.org>
Fri, 6 May 2016 08:36:36 +0000 (10:36 +0200)
committerMichael Weber <xmw@gentoo.org>
Fri, 6 May 2016 08:40:26 +0000 (10:40 +0200)
Package-Manager: portage-2.2.28

dev-util/apitrace/Manifest
dev-util/apitrace/apitrace-7.1.ebuild [new file with mode: 0644]
dev-util/apitrace/files/apitrace-7.1-disable-multiarch.patch [new file with mode: 0644]
dev-util/apitrace/files/apitrace-7.1-docs-install.patch [new file with mode: 0644]
dev-util/apitrace/files/apitrace-7.1-glxtrace-only.patch [new file with mode: 0644]
dev-util/apitrace/files/apitrace-7.1-snappy-license.patch [new file with mode: 0644]
dev-util/apitrace/metadata.xml

index 77da9dd664c2f7c7c10764852ea32d6d88a6a911..80ca682896a98c11655094090a009a61332be72d 100644 (file)
@@ -2,3 +2,4 @@ DIST apitrace-4.0.tar.gz 1736912 SHA256 078cfe09a5a021559326e8ee92ce863dd99d48c3
 DIST apitrace-5.0.tar.gz 1868044 SHA256 c11e97452b3b74533b82af28951382c77e3d639bd434cbc4e1dc43bc799c8ea6 SHA512 af83860c8bfd49a2a2b1483fe13a83f2e1aa93ca474f1efb12cb311a99f2ca29ce4c39831a941efdde80fe2ae76b11cdfc6fde3349d325c71fc2a3ecae6b1424 WHIRLPOOL ba6fe7c354db3e6ba8edd46675631ef6d2edfc01c9201ffd951fc48110d0120463d52b4778984b01ae766d662edfc386a1965240377bcd2b2bae71936e94d42a
 DIST apitrace-6.0.tar.gz 1738830 SHA256 4ac99fbd5076c9e4db9d09ef22fb1958f28115f162b6ee40a23130aacc1e2acb SHA512 e937ca8ddece11d180ed306083788fc7e5fa5d4ceeef0ae69ab5a8140e4169c583b281f6f4806b5c4d71c72fb79ac8399e2f0f49fa1052b90f14306247a4091c WHIRLPOOL 1d5f43f5576a4f258f249f3d2777ad221dce3d7dc9489db924568c5c26af3542d016d722ef9c9be7ae50e380684c597840cc869c4d11cf3f3dcb96f952cc4ee0
 DIST apitrace-6.1.tar.gz 1741041 SHA256 0285610a6afbe9fbc47c0ecb80cafabb34dc1998c1c8308bacb7fdd15817930b SHA512 218fc8e59bc6cff6733c98f53c57b0e793d2f7aa530560f8da0dff83c4fa255c5fd5db97a9a43c364490c355ddb1ea6557ced64eae3e6c5e0c6f4504b9299bcd WHIRLPOOL 6334a96a0d70fce927faed0923efe1e320d4a52909ab01223f0486774a13e3cef53d2920933bc3167d9d766d647da6ab36b95ccbbcf78a0af55d16775000f2ea
+DIST apitrace-7.1.tar.gz 2343156 SHA256 2103386d747d34f3d6fb1d01fde9078a45ad2e9976afab3a7489c95b08dde0a2 SHA512 b4ebe4eb0b16770a156cffe7cccccff2166634bee7b147d124c78c6e5b37e2ef5f0cb78d30ab7df9a489f25234073023c8bbee67e2b6c59aacfcf4e5ff2ceb84 WHIRLPOOL d61aa9470faf61d4ffa3cd12a24fa13f993f9e21fc0bfcf0f2b9bf3d15803bc1c2120a1ed7e8c43668082dfe61f86434d5e297c5e21e4f2bbb1b88bf80b9bbe3
diff --git a/dev-util/apitrace/apitrace-7.1.ebuild b/dev-util/apitrace/apitrace-7.1.ebuild
new file mode 100644 (file)
index 0000000..47c58bf
--- /dev/null
@@ -0,0 +1,99 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+PYTHON_COMPAT=( python2_7 )
+
+inherit cmake-multilib eutils python-single-r1
+
+DESCRIPTION="A tool for tracing, analyzing, and debugging graphics APIs"
+HOMEPAGE="https://github.com/apitrace/apitrace"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+LICENSE+=" BSD CC-BY-3.0 CC-BY-4.0 public-domain" #bundled snappy
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="+cli egl qt5 system-snappy"
+
+RDEPEND="${PYTHON_DEPS}
+       >=sys-devel/gcc-4.7:*
+       system-snappy? ( >=app-arch/snappy-1.1.1[${MULTILIB_USEDEP}] )
+       >=sys-libs/zlib-1.2.8-r1[${MULTILIB_USEDEP}]
+       >=media-libs/mesa-9.1.6[egl?,${MULTILIB_USEDEP}]
+       egl? ( || (
+               >=media-libs/mesa-8.0[gles1,gles2]
+               <media-libs/mesa-8.0[gles]
+               )
+               media-libs/waffle[egl]
+       )
+       media-libs/libpng:0=
+       sys-process/procps
+       x11-libs/libX11
+       qt5? (
+               dev-qt/qtcore:5
+               dev-qt/qtgui:5
+               dev-qt/qtnetwork:5
+               dev-qt/qtwebkit:5
+               dev-qt/qtwidgets:5
+       )"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-7.1-glxtrace-only.patch
+       "${FILESDIR}"/${PN}-7.1-disable-multiarch.patch
+       "${FILESDIR}"/${PN}-7.1-docs-install.patch
+       "${FILESDIR}"/${PN}-7.1-snappy-license.patch
+)
+
+src_prepare() {
+       enable_cmake-utils_src_prepare
+
+       # The apitrace code grubs around in the internal zlib structures.
+       # We have to extract this header and clean it up to keep that working.
+       # Do not be surprised if a zlib upgrade breaks things ...
+       rm -rf "${S}"/thirdparty/{getopt,less,libpng,zlib,dxerr,directxtex,devcon} || die
+       if use system-snappy ; then
+               rm -rf "${S}"/thirdparty/snappy || die
+       fi
+}
+
+src_configure() {
+       my_configure() {
+               mycmakeargs=(
+                       -DARCH_SUBDIR=
+                       $(cmake-utils_use_enable egl EGL)
+                       $(cmake-utils_use_enable !system-snappy STATIC_SNAPPY)
+               )
+               if multilib_is_native_abi ; then
+                       mycmakeargs+=(
+                               $(cmake-utils_use_enable cli CLI)
+                               $(cmake-utils_use_enable qt5 GUI)
+                       )
+               else
+                       mycmakeargs+=(
+                               -DBUILD_LIB_ONLY=ON
+                               -DENABLE_CLI=OFF
+                               -DENABLE_GUI=OFF
+                       )
+               fi
+               cmake-utils_src_configure
+       }
+
+       multilib_parallel_foreach_abi my_configure
+}
+
+src_install() {
+       cmake-multilib_src_install
+
+       dosym glxtrace.so /usr/$(get_libdir)/${PN}/wrappers/libGL.so
+       dosym glxtrace.so /usr/$(get_libdir)/${PN}/wrappers/libGL.so.1
+       dosym glxtrace.so /usr/$(get_libdir)/${PN}/wrappers/libGL.so.1.2
+
+       rm docs/INSTALL.markdown
+       dodoc docs/* README.markdown
+
+       exeinto /usr/$(get_libdir)/${PN}/scripts
+       doexe $(find scripts -type f -executable)
+}
diff --git a/dev-util/apitrace/files/apitrace-7.1-disable-multiarch.patch b/dev-util/apitrace/files/apitrace-7.1-disable-multiarch.patch
new file mode 100644 (file)
index 0000000..53d470d
--- /dev/null
@@ -0,0 +1,35 @@
+respect the libdir cmake already set up for us instead of using debian-specific multiarch paths
+
+--- apitrace-7.1/CMakeLists.txt
++++ apitrace-7.1/CMakeLists.txt
+@@ -359,15 +359,6 @@
+ ##############################################################################
+ # Installation directories
+-if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
+-    # Debian multiarch support
+-    execute_process(COMMAND dpkg-architecture -qDEB_HOST_MULTIARCH
+-        OUTPUT_VARIABLE ARCH_SUBDIR
+-        ERROR_QUIET
+-        OUTPUT_STRIP_TRAILING_WHITESPACE
+-    )
+-endif()
+-
+ if (WIN32 OR APPLE)
+     # On Windows/MacOSX, applications are usually installed on a directory of
+     # their own
+@@ -376,12 +367,8 @@
+     set (LIB_ARCH_INSTALL_DIR lib)
+ else ()
+     set (DOC_INSTALL_DIR share/doc/${CMAKE_PROJECT_NAME})
+-    set (LIB_INSTALL_DIR lib${LIB_SUFFIX}/${CMAKE_PROJECT_NAME})
+-    if (ARCH_SUBDIR)
+-        set (LIB_ARCH_INSTALL_DIR lib/${ARCH_SUBDIR}/${CMAKE_PROJECT_NAME})
+-    else ()
+-        set (LIB_ARCH_INSTALL_DIR lib${LIB_SUFFIX}/${CMAKE_PROJECT_NAME})
+-    endif ()
++    set (LIB_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}/${CMAKE_PROJECT_NAME})
++    set (LIB_ARCH_INSTALL_DIR ${LIB_INSTALL_DIR})
+ endif ()
+ set (SCRIPTS_INSTALL_DIR ${LIB_INSTALL_DIR}/scripts)
diff --git a/dev-util/apitrace/files/apitrace-7.1-docs-install.patch b/dev-util/apitrace/files/apitrace-7.1-docs-install.patch
new file mode 100644 (file)
index 0000000..9fdc04f
--- /dev/null
@@ -0,0 +1,23 @@
+--- apitrace-7.1/CMakeLists.txt
++++ apitrace-7.1/CMakeLists.txt
+@@ -553,20 +553,6 @@
+ ##############################################################################
+ # Packaging
+-install (
+-    FILES
+-        README.markdown
+-        docs/BUGS.markdown
+-        docs/NEWS.markdown
+-        docs/USAGE.markdown
+-    DESTINATION ${DOC_INSTALL_DIR}
+-)
+-install (
+-    FILES LICENSE
+-    DESTINATION ${DOC_INSTALL_DIR}
+-    RENAME LICENSE.txt
+-)
+-
+ set (CPACK_PACKAGE_VERSION_MAJOR "7")
+ set (CPACK_PACKAGE_VERSION_MINOR "0")
diff --git a/dev-util/apitrace/files/apitrace-7.1-glxtrace-only.patch b/dev-util/apitrace/files/apitrace-7.1-glxtrace-only.patch
new file mode 100644 (file)
index 0000000..91867af
--- /dev/null
@@ -0,0 +1,32 @@
+Allow building of just glxtrace library for ebuilds without GUI tools.
+
+Updated from 5.0 version of patch to apply against 7.1.
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -44,6 +44,8 @@
+ option (ENABLE_FRAME_POINTER "Disable frame pointer omission" ON)
++option (BUILD_LIB_ONLY "Build the glxtrace library only" OFF)
++
+ # Proprietary Linux games often ship their own libraries (zlib, libstdc++,
+ # etc.) in order to ship a single set of binaries across multiple
+ # distributions.  Given that apitrace wrapper modules will be loaded into those
+--- a/retrace/CMakeLists.txt
++++ b/retrace/CMakeLists.txt
+@@ -12,6 +12,8 @@
+ add_definitions (-DRETRACE)
++if (NOT BUILD_LIB_ONLY)
++
+ add_custom_command (
+     OUTPUT glretrace_gl.cpp
+     COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/glretrace.py > ${CMAKE_CURRENT_BINARY_DIR}/glretrace_gl.cpp
+@@ -368,3 +370,5 @@
+     install (TARGETS d3dretrace RUNTIME DESTINATION bin)
+     install_pdb (d3dretrace DESTINATION bin)
+ endif ()
++
++endif (NOT BUILD_LIB_ONLY)
diff --git a/dev-util/apitrace/files/apitrace-7.1-snappy-license.patch b/dev-util/apitrace/files/apitrace-7.1-snappy-license.patch
new file mode 100644 (file)
index 0000000..2b211dc
--- /dev/null
@@ -0,0 +1,11 @@
+--- apitrace-7.1/thirdparty/snappy/CMakeLists.txt
++++ apitrace-7.1/thirdparty/snappy/CMakeLists.txt
+@@ -16,8 +16,3 @@
+     snappy-c.cc
+ )
+-install (
+-    FILES COPYING
+-    DESTINATION ${DOC_INSTALL_DIR}
+-    RENAME LICENSE-snappy.txt
+-)
index 7fe22707f3c28ed4a1c8776e6e2375626f52afb2..6ff16988eb418cdf804dcb6c50a2fb31ce558bbb 100644 (file)
@@ -5,6 +5,7 @@
        <use>
                <flag name="cli">Enable command line interface</flag>
                <flag name="egl">Enable EGL support</flag>
+               <flag name="system-snappy">Link dynamic against app-arch/snappy</flag>
        </use>
        <upstream>
                <remote-id type="github">apitrace/apitrace</remote-id>