mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-23 16:49:10 -07:00
dev-util/apitrace: Version bump to 9.0.0
A lot of changes in this version bump:
- Python3 support
- Python2 support dropped
- IUSE=cli dropped. Enabled always
- IUSE=system-snappy dropped. Enabled always
- IUSE=egl dropped. Enabled always
- Install CLI binaries for all ABIs
- media-libs/waffle support enabled
Closes: https://bugs.gentoo.org/684830
Closes: https://bugs.gentoo.org/684964
Closes: https://bugs.gentoo.org/693116
Closes: https://bugs.gentoo.org/705320
Signed-off-by: Matt Turner <mattst88@gentoo.org>
This commit is contained in:
@@ -1 +1,2 @@
|
||||
DIST apitrace-8.0.tar.gz 3601109 BLAKE2B f3e8f7ff93ef4866370e791fa7768ca0445bd8f62a7d26f203bade7fec7aab475115ea2820b351fbc974697160b49a0c0628fb01ca9afa248b3e31ab7b75d4fc SHA512 1bd8ed4468fde17fbdc43bdd50508e6c7662ddf79b6d34aa222ee69cd033aeedcdc3a8c2fc4e88ba85bf13f7e7c516a83dc158b11f0e4dd67d2ec65ad10cef2c
|
||||
DIST apitrace-9.0.tar.gz 3623693 BLAKE2B 885cfd22d1cc82e36f7f0d65b816784986a8a693d04b483c059d3cffb0328c2cbbfd043793b964cea84d7b09a0dc8dda5f464099e91df26fd5eecef4bbeb28cc SHA512 4234bc2d14378b1bd9554752d83f8ce0703b4e08c3edc85769dc988a2b3a44b8e55d2f5856954658155a11d69802849bae6350ed5031a5916c7ac7bc7287918c
|
||||
|
||||
85
dev-util/apitrace/apitrace-9.0.ebuild
Normal file
85
dev-util/apitrace/apitrace-9.0.ebuild
Normal file
@@ -0,0 +1,85 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
CMAKE_ECLASS=cmake
|
||||
PYTHON_COMPAT=( python3_{6,7,8} )
|
||||
inherit cmake-multilib python-single-r1
|
||||
|
||||
DESCRIPTION="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"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm ~x86"
|
||||
IUSE="qt5"
|
||||
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
||||
DEPEND="${PYTHON_DEPS}
|
||||
app-arch/brotli:=[${MULTILIB_USEDEP}]
|
||||
>=app-arch/snappy-1.1.1[${MULTILIB_USEDEP}]
|
||||
media-libs/libpng:0=
|
||||
media-libs/mesa[egl,gles1,gles2,X(+),${MULTILIB_USEDEP}]
|
||||
>=media-libs/waffle-1.6.0-r1[egl,${MULTILIB_USEDEP}]
|
||||
sys-libs/zlib[${MULTILIB_USEDEP}]
|
||||
sys-process/procps:=[${MULTILIB_USEDEP}]
|
||||
x11-libs/libX11
|
||||
qt5? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5[-gles2]
|
||||
dev-qt/qtnetwork:5
|
||||
dev-qt/qtwidgets:5[-gles2]
|
||||
)
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
PATCHES=(
|
||||
# TODO: upstream
|
||||
"${FILESDIR}"/${P}-disable-multiarch.patch
|
||||
"${FILESDIR}"/${P}-brotli-unbundle.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
cmake_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 thirdparty/{brotli,snappy,getopt,less,libpng,zlib,dxerr,directxtex,devcon} || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
my_configure() {
|
||||
local mycmakeargs=(
|
||||
-DDOC_INSTALL_DIR="${EPREFIX}"/usr/share/doc/${PF}
|
||||
-DENABLE_EGL=ON
|
||||
-DENABLE_CLI=ON
|
||||
-DENABLE_GUI=$(multilib_native_usex qt5)
|
||||
-DENABLE_STATIC_SNAPPY=OFF
|
||||
-DENABLE_WAFFLE=ON
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
multilib_foreach_abi my_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
MULTILIB_CHOST_TOOLS=(
|
||||
/usr/bin/apitrace$(get_exeext)
|
||||
/usr/bin/eglretrace$(get_exeext)
|
||||
/usr/bin/glretrace$(get_exeext)
|
||||
)
|
||||
|
||||
cmake-multilib_src_install
|
||||
|
||||
make_libgl_symlinks() {
|
||||
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
|
||||
}
|
||||
multilib_foreach_abi make_libgl_symlinks
|
||||
}
|
||||
158
dev-util/apitrace/files/apitrace-9.0-brotli-unbundle.patch
Normal file
158
dev-util/apitrace/files/apitrace-9.0-brotli-unbundle.patch
Normal file
@@ -0,0 +1,158 @@
|
||||
From 3a07d551949ff488d1d669600a07d9c73ff4cc55 Mon Sep 17 00:00:00 2001
|
||||
From: Andreas Sturmlechner <asturm@gentoo.org>
|
||||
Date: Mon, 29 Apr 2019 21:08:02 +0200
|
||||
Subject: [PATCH 1/2] Import FindBrotliDec.cmake and FindBrotliEnc.cmake from
|
||||
Igalia S.L.
|
||||
|
||||
MIT License, which fits well.
|
||||
|
||||
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
||||
---
|
||||
cmake/FindBrotliDec.cmake | 35 +++++++++++++++++++++++++++++++++++
|
||||
cmake/FindBrotliEnc.cmake | 35 +++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 70 insertions(+)
|
||||
create mode 100644 cmake/FindBrotliDec.cmake
|
||||
create mode 100644 cmake/FindBrotliEnc.cmake
|
||||
|
||||
diff --git a/cmake/FindBrotliDec.cmake b/cmake/FindBrotliDec.cmake
|
||||
new file mode 100644
|
||||
index 00000000..abb06f44
|
||||
--- /dev/null
|
||||
+++ b/cmake/FindBrotliDec.cmake
|
||||
@@ -0,0 +1,35 @@
|
||||
+# Copyright 2017 Igalia S.L. All Rights Reserved.
|
||||
+#
|
||||
+# Distributed under MIT license.
|
||||
+# See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
|
||||
+
|
||||
+# Try to find BrotliDec. Once done, this will define
|
||||
+#
|
||||
+# BROTLIDEC_FOUND - system has BrotliDec.
|
||||
+# BROTLIDEC_INCLUDE_DIRS - the BrotliDec include directories
|
||||
+# BROTLIDEC_LIBRARIES - link these to use BrotliDec.
|
||||
+
|
||||
+find_package(PkgConfig)
|
||||
+
|
||||
+pkg_check_modules(PC_BROTLIDEC libbrotlidec)
|
||||
+
|
||||
+find_path(BROTLIDEC_INCLUDE_DIRS
|
||||
+ NAMES brotli/decode.h
|
||||
+ HINTS ${PC_BROTLIDEC_INCLUDEDIR}
|
||||
+)
|
||||
+
|
||||
+find_library(BROTLIDEC_LIBRARIES
|
||||
+ NAMES brotlidec
|
||||
+ HINTS ${PC_BROTLIDEC_LIBDIR}
|
||||
+)
|
||||
+
|
||||
+include(FindPackageHandleStandardArgs)
|
||||
+find_package_handle_standard_args(BrotliDec
|
||||
+ REQUIRED_VARS BROTLIDEC_INCLUDE_DIRS BROTLIDEC_LIBRARIES
|
||||
+ FOUND_VAR BROTLIDEC_FOUND
|
||||
+ VERSION_VAR PC_BROTLIDEC_VERSION)
|
||||
+
|
||||
+mark_as_advanced(
|
||||
+ BROTLIDEC_INCLUDE_DIRS
|
||||
+ BROTLIDEC_LIBRARIES
|
||||
+)
|
||||
diff --git a/cmake/FindBrotliEnc.cmake b/cmake/FindBrotliEnc.cmake
|
||||
new file mode 100644
|
||||
index 00000000..4be347db
|
||||
--- /dev/null
|
||||
+++ b/cmake/FindBrotliEnc.cmake
|
||||
@@ -0,0 +1,35 @@
|
||||
+# Copyright 2017 Igalia S.L. All Rights Reserved.
|
||||
+#
|
||||
+# Distributed under MIT license.
|
||||
+# See file LICENSE for detail or copy at https://opensource.org/licenses/MIT
|
||||
+
|
||||
+# Try to find BrotliEnc. Once done, this will define
|
||||
+#
|
||||
+# BROTLIENC_FOUND - system has BrotliEnc.
|
||||
+# BROTLIENC_INCLUDE_DIRS - the BrotliEnc include directories
|
||||
+# BROTLIENC_LIBRARIES - link these to use BrotliEnc.
|
||||
+
|
||||
+find_package(PkgConfig)
|
||||
+
|
||||
+pkg_check_modules(PC_BROTLIENC libbrotlienc)
|
||||
+
|
||||
+find_path(BROTLIENC_INCLUDE_DIRS
|
||||
+ NAMES brotli/encode.h
|
||||
+ HINTS ${PC_BROTLIENC_INCLUDEDIR}
|
||||
+)
|
||||
+
|
||||
+find_library(BROTLIENC_LIBRARIES
|
||||
+ NAMES brotlienc
|
||||
+ HINTS ${PC_BROTLIENC_LIBDIR}
|
||||
+)
|
||||
+
|
||||
+include(FindPackageHandleStandardArgs)
|
||||
+find_package_handle_standard_args(BrotliEnc
|
||||
+ REQUIRED_VARS BROTLIENC_INCLUDE_DIRS BROTLIENC_LIBRARIES
|
||||
+ FOUND_VAR BROTLIENC_FOUND
|
||||
+ VERSION_VAR PC_BROTLIENC_VERSION)
|
||||
+
|
||||
+mark_as_advanced(
|
||||
+ BROTLIENC_INCLUDE_DIRS
|
||||
+ BROTLIENC_LIBRARIES
|
||||
+)
|
||||
--
|
||||
2.24.1
|
||||
|
||||
From 08a410f238aaf6488759e023b66d16cbbd7f6d66 Mon Sep 17 00:00:00 2001
|
||||
From: Andreas Sturmlechner <asturm@gentoo.org>
|
||||
Date: Mon, 29 Apr 2019 21:11:57 +0200
|
||||
Subject: [PATCH 2/2] Find system brotli instead of bundled
|
||||
|
||||
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
||||
---
|
||||
CMakeLists.txt | 5 +++--
|
||||
cli/CMakeLists.txt | 2 +-
|
||||
lib/trace/CMakeLists.txt | 2 +-
|
||||
3 files changed, 5 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index c71d24e6..88e6b156 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -491,8 +491,9 @@ if (ENABLE_STATIC_SNAPPY OR NOT SNAPPY_FOUND)
|
||||
endif ()
|
||||
include_directories (${SNAPPY_INCLUDE_DIRS})
|
||||
|
||||
-include_directories (${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/brotli/c/include)
|
||||
-add_subdirectory (thirdparty/brotli)
|
||||
+find_package(BrotliDec REQUIRED)
|
||||
+find_package(BrotliEnc REQUIRED)
|
||||
+include_directories (${BROTLIDEC_INCLUDE_DIRS} ${BROTLIENC_INCLUDE_DIRS})
|
||||
|
||||
if (NOT WIN32 AND NOT ENABLE_STATIC_EXE)
|
||||
# zlib 1.2.4-1.2.5 made it impossible to read the last block of incomplete
|
||||
diff --git a/cli/CMakeLists.txt b/cli/CMakeLists.txt
|
||||
index 3a3c127e..0b33ddb5 100644
|
||||
--- a/cli/CMakeLists.txt
|
||||
+++ b/cli/CMakeLists.txt
|
||||
@@ -39,7 +39,7 @@ add_executable (apitrace
|
||||
|
||||
target_link_libraries (apitrace
|
||||
common
|
||||
- brotli_dec brotli_enc brotli_common
|
||||
+ ${BROTLIDEC_LIBRARIES} ${BROTLIENC_LIBRARIES}
|
||||
${ZLIB_LIBRARIES}
|
||||
${SNAPPY_LIBRARIES}
|
||||
${GETOPT_LIBRARIES}
|
||||
diff --git a/lib/trace/CMakeLists.txt b/lib/trace/CMakeLists.txt
|
||||
index c68bd00f..ce2e469e 100644
|
||||
--- a/lib/trace/CMakeLists.txt
|
||||
+++ b/lib/trace/CMakeLists.txt
|
||||
@@ -31,7 +31,7 @@ target_link_libraries (common
|
||||
guids
|
||||
highlight
|
||||
os
|
||||
- brotli_dec brotli_common
|
||||
+ ${BROTLIDEC_LIBRARIES} ${BROTLIENC_LIBRARIES}
|
||||
)
|
||||
|
||||
add_gtest (trace_parser_flags_test trace_parser_flags_test.cpp)
|
||||
--
|
||||
2.24.1
|
||||
|
||||
53
dev-util/apitrace/files/apitrace-9.0-disable-multiarch.patch
Normal file
53
dev-util/apitrace/files/apitrace-9.0-disable-multiarch.patch
Normal file
@@ -0,0 +1,53 @@
|
||||
From 556397e399994b005524b88171c9c103b8cc1b25 Mon Sep 17 00:00:00 2001
|
||||
From: Mike Frysinger <vapier@gentoo.org>
|
||||
Date: Mon, 29 Apr 2019 20:32:04 +0200
|
||||
Subject: [PATCH] Use CMAKE_INSTALL_LIBDIR for LIB_INSTALL_DIR
|
||||
|
||||
Respect the libdir cmake already set up for us instead of using
|
||||
debian-specific multiarch paths.
|
||||
|
||||
Patch was rebased multiple times from 4.0 to 9.0 now.
|
||||
|
||||
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
|
||||
---
|
||||
CMakeLists.txt | 17 ++---------------
|
||||
1 file changed, 2 insertions(+), 15 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 19316e60..6c3c4b85 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -438,15 +438,6 @@ endif ()
|
||||
##############################################################################
|
||||
# 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
|
||||
@@ -455,12 +446,8 @@ if (WIN32 OR APPLE)
|
||||
set (LIB_ARCH_INSTALL_DIR lib)
|
||||
else ()
|
||||
set (DOC_DEFAULT_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 ()
|
||||
|
||||
# Allow customization of the doc installation dir (Slackware uses different
|
||||
--
|
||||
2.24.1
|
||||
|
||||
Reference in New Issue
Block a user