diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-util/apitrace | |
download | gentoo-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-util/apitrace')
-rw-r--r-- | dev-util/apitrace/Manifest | 4 | ||||
-rw-r--r-- | dev-util/apitrace/apitrace-4.0.ebuild | 95 | ||||
-rw-r--r-- | dev-util/apitrace/apitrace-5.0.ebuild | 91 | ||||
-rw-r--r-- | dev-util/apitrace/apitrace-6.0.ebuild | 91 | ||||
-rw-r--r-- | dev-util/apitrace/apitrace-6.1.ebuild | 91 | ||||
-rw-r--r-- | dev-util/apitrace/files/apitrace-4.0-disable-multiarch.patch | 32 | ||||
-rw-r--r-- | dev-util/apitrace/files/apitrace-4.0-glext-texture-storage.patch | 73 | ||||
-rw-r--r-- | dev-util/apitrace/files/apitrace-4.0-glxcopysubbuffermesa.patch | 80 | ||||
-rw-r--r-- | dev-util/apitrace/files/apitrace-4.0-glxtrace-only.patch | 49 | ||||
-rw-r--r-- | dev-util/apitrace/files/apitrace-4.0-memcpy.patch | 13 | ||||
-rw-r--r-- | dev-util/apitrace/files/apitrace-4.0-multilib.patch | 59 | ||||
-rw-r--r-- | dev-util/apitrace/files/apitrace-4.0-system-libs.patch | 72 | ||||
-rw-r--r-- | dev-util/apitrace/files/apitrace-5.0-disable-multiarch.patch | 34 | ||||
-rw-r--r-- | dev-util/apitrace/files/apitrace-5.0-glxtrace-only.patch | 53 | ||||
-rw-r--r-- | dev-util/apitrace/files/apitrace-6.0-disable-multiarch.patch | 35 | ||||
-rw-r--r-- | dev-util/apitrace/metadata.xml | 15 |
16 files changed, 887 insertions, 0 deletions
diff --git a/dev-util/apitrace/Manifest b/dev-util/apitrace/Manifest new file mode 100644 index 000000000000..77da9dd664c2 --- /dev/null +++ b/dev-util/apitrace/Manifest @@ -0,0 +1,4 @@ +DIST apitrace-4.0.tar.gz 1736912 SHA256 078cfe09a5a021559326e8ee92ce863dd99d48c36433ac37140233616bb6cbd3 SHA512 063e1dfc7993b6d014a8e62e5d038318b22a7cfdaac1970714cf6bcb7e31079f552ad198f2992f042b05a027322f86e58d77a0e3aa2e0b266b278c8d0708200c WHIRLPOOL a1b251929ffade5f5b498428d942a01fd6c141494e3de09520e7bcd5aa5b4e15e50144ccf6ef979650e75ddb03373a3f5c198a3554448161623c3e33d8a9160a +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 diff --git a/dev-util/apitrace/apitrace-4.0.ebuild b/dev-util/apitrace/apitrace-4.0.ebuild new file mode 100644 index 000000000000..8e9012799c3d --- /dev/null +++ b/dev-util/apitrace/apitrace-4.0.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2014 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 vcs-snapshot + +DESCRIPTION="A tool for tracing, analyzing, and debugging graphics APIs" +HOMEPAGE="https://github.com/apitrace/apitrace" +SRC_URI="https://github.com/${PN}/${PN}/tarball/${PV} -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="+cli egl qt4" + +RDEPEND="${PYTHON_DEPS} + >=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/libpng:0= + sys-process/procps + x11-libs/libX11 + qt4? ( + >=dev-qt/qtcore-4.7:4 + >=dev-qt/qtgui-4.7:4 + >=dev-qt/qtwebkit-4.7:4 + >=dev-libs/qjson-0.5 + )" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${P}-system-libs.patch + "${FILESDIR}"/${P}-glxtrace-only.patch + "${FILESDIR}"/${P}-glext-texture-storage.patch + "${FILESDIR}"/${P}-glxcopysubbuffermesa.patch + "${FILESDIR}"/${P}-multilib.patch + "${FILESDIR}"/${P}-disable-multiarch.patch + "${FILESDIR}"/${P}-memcpy.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 ... + sed -r \ + -e 's:OF[(]([^)]*)[)]:\1:' \ + thirdparty/zlib/gzguts.h > gzguts.h + rm -rf "${S}"/thirdparty/{getopt,less,libpng,snappy,zlib} +} + +src_configure() { + my_configure() { + mycmakeargs=( + -DARCH_SUBDIR= + $(cmake-utils_use_enable egl EGL) + ) + if multilib_is_native_abi ; then + mycmakeargs+=( + $(cmake-utils_use_enable cli CLI) + $(cmake-utils_use_enable qt4 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 + + dodoc {BUGS,DEVELOPMENT,NEWS,README,TODO}.markdown + + exeinto /usr/$(get_libdir)/${PN}/scripts + doexe $(find scripts -type f -executable) +} diff --git a/dev-util/apitrace/apitrace-5.0.ebuild b/dev-util/apitrace/apitrace-5.0.ebuild new file mode 100644 index 000000000000..5b250871b90c --- /dev/null +++ b/dev-util/apitrace/apitrace-5.0.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2014 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 vcs-snapshot + +DESCRIPTION="A tool for tracing, analyzing, and debugging graphics APIs" +HOMEPAGE="https://github.com/apitrace/apitrace" +SRC_URI="https://github.com/${PN}/${PN}/tarball/${PV} -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="+cli egl qt4" + +RDEPEND="${PYTHON_DEPS} + >=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/libpng:0= + sys-process/procps + x11-libs/libX11 + qt4? ( + >=dev-qt/qtcore-4.7:4 + >=dev-qt/qtgui-4.7:4 + >=dev-qt/qtwebkit-4.7:4 + >=dev-libs/qjson-0.5 + )" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-4.0-system-libs.patch + "${FILESDIR}"/${P}-glxtrace-only.patch + "${FILESDIR}"/${P}-disable-multiarch.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 ... + sed -r \ + -e 's:OF[(]([^)]*)[)]:\1:' \ + thirdparty/zlib/gzguts.h > gzguts.h + rm -rf "${S}"/thirdparty/{getopt,less,libpng,snappy,zlib} +} + +src_configure() { + my_configure() { + mycmakeargs=( + -DARCH_SUBDIR= + $(cmake-utils_use_enable egl EGL) + ) + if multilib_is_native_abi ; then + mycmakeargs+=( + $(cmake-utils_use_enable cli CLI) + $(cmake-utils_use_enable qt4 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 + + dodoc {BUGS,DEVELOPMENT,NEWS,README,TODO}.markdown + + exeinto /usr/$(get_libdir)/${PN}/scripts + doexe $(find scripts -type f -executable) +} diff --git a/dev-util/apitrace/apitrace-6.0.ebuild b/dev-util/apitrace/apitrace-6.0.ebuild new file mode 100644 index 000000000000..4c8493b4cc68 --- /dev/null +++ b/dev-util/apitrace/apitrace-6.0.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2015 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" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="+cli egl qt4" + +RDEPEND="${PYTHON_DEPS} + >=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/libpng:0= + sys-process/procps + x11-libs/libX11 + qt4? ( + >=dev-qt/qtcore-4.7:4 + >=dev-qt/qtgui-4.7:4 + >=dev-qt/qtwebkit-4.7:4 + >=dev-libs/qjson-0.5 + )" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-4.0-system-libs.patch + "${FILESDIR}"/${PN}-5.0-glxtrace-only.patch + "${FILESDIR}"/${P}-disable-multiarch.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 ... + sed -r \ + -e 's:OF[(]([^)]*)[)]:\1:' \ + thirdparty/zlib/gzguts.h > gzguts.h + rm -rf "${S}"/thirdparty/{getopt,less,libpng,snappy,zlib} +} + +src_configure() { + my_configure() { + mycmakeargs=( + -DARCH_SUBDIR= + $(cmake-utils_use_enable egl EGL) + ) + if multilib_is_native_abi ; then + mycmakeargs+=( + $(cmake-utils_use_enable cli CLI) + $(cmake-utils_use_enable qt4 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 + + dodoc {BUGS,Dalvik,FORMAT,HACKING,NEWS,README,TODO}.markdown + + exeinto /usr/$(get_libdir)/${PN}/scripts + doexe $(find scripts -type f -executable) +} diff --git a/dev-util/apitrace/apitrace-6.1.ebuild b/dev-util/apitrace/apitrace-6.1.ebuild new file mode 100644 index 000000000000..00844442dae1 --- /dev/null +++ b/dev-util/apitrace/apitrace-6.1.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2015 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" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="+cli egl qt4" + +RDEPEND="${PYTHON_DEPS} + >=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/libpng:0= + sys-process/procps + x11-libs/libX11 + qt4? ( + >=dev-qt/qtcore-4.7:4 + >=dev-qt/qtgui-4.7:4 + >=dev-qt/qtwebkit-4.7:4 + >=dev-libs/qjson-0.5 + )" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-4.0-system-libs.patch + "${FILESDIR}"/${PN}-5.0-glxtrace-only.patch + "${FILESDIR}"/${PN}-6.0-disable-multiarch.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 ... + sed -r \ + -e 's:OF[(]([^)]*)[)]:\1:' \ + thirdparty/zlib/gzguts.h > gzguts.h + rm -rf "${S}"/thirdparty/{getopt,less,libpng,snappy,zlib} +} + +src_configure() { + my_configure() { + mycmakeargs=( + -DARCH_SUBDIR= + $(cmake-utils_use_enable egl EGL) + ) + if multilib_is_native_abi ; then + mycmakeargs+=( + $(cmake-utils_use_enable cli CLI) + $(cmake-utils_use_enable qt4 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 + + dodoc {BUGS,Dalvik,FORMAT,HACKING,NEWS,README,TODO}.markdown + + exeinto /usr/$(get_libdir)/${PN}/scripts + doexe $(find scripts -type f -executable) +} diff --git a/dev-util/apitrace/files/apitrace-4.0-disable-multiarch.patch b/dev-util/apitrace/files/apitrace-4.0-disable-multiarch.patch new file mode 100644 index 000000000000..0ced4d84cbf6 --- /dev/null +++ b/dev-util/apitrace/files/apitrace-4.0-disable-multiarch.patch @@ -0,0 +1,32 @@ +respect the libdir cmake already set up for us instead of using the multiarch crap + +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -184,12 +184,6 @@ set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}) + # Installation directories + + if (${CMAKE_SYSTEM_NAME} MATCHES "Linux") +- # Debian multiarch support +- execute_process(COMMAND dpkg-architecture -qDEB_HOST_MULTIARCH +- OUTPUT_VARIABLE ARCH_SUBDIR +- ERROR_QUIET +- OUTPUT_STRIP_TRAILING_WHITESPACE +- ) + CHECK_INCLUDE_FILES(proc/readproc.h READPROC_H_FOUND) + if (READPROC_H_FOUND) + add_definitions (-DHAVE_READPROC_H) +@@ -205,11 +205,11 @@ if (WIN32 OR APPLE) + set (LIB_ARCH_INSTALL_DIR lib) + else () + set (DOC_INSTALL_DIR share/doc/${CMAKE_PROJECT_NAME}) +- set (LIB_INSTALL_DIR lib/${CMAKE_PROJECT_NAME}) ++ set (LIB_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}/${CMAKE_PROJECT_NAME}) + if (ARCH_SUBDIR) +- set (LIB_ARCH_INSTALL_DIR lib/${ARCH_SUBDIR}/${CMAKE_PROJECT_NAME}) ++ set (LIB_ARCH_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}/${ARCH_SUBDIR}/${CMAKE_PROJECT_NAME}) + else () +- set (LIB_ARCH_INSTALL_DIR lib/${CMAKE_PROJECT_NAME}) ++ set (LIB_ARCH_INSTALL_DIR ${LIB_INSTALL_DIR}) + endif () + endif () + diff --git a/dev-util/apitrace/files/apitrace-4.0-glext-texture-storage.patch b/dev-util/apitrace/files/apitrace-4.0-glext-texture-storage.patch new file mode 100644 index 000000000000..2d04db408693 --- /dev/null +++ b/dev-util/apitrace/files/apitrace-4.0-glext-texture-storage.patch @@ -0,0 +1,73 @@ +Upstream commit to support GL_EXT_texture_storage. + +commit 0436cc01329b6be60801dd7bfe641be7d8be5bc7 +Author: José Fonseca <jfonseca@vmware.com> +Date: Wed Nov 13 13:57:43 2013 +0000 + + egltrace: Add GL_EXT_texture_storage entrypoints + + Prototypes obtained through: + + specs/scripts/gltxt.py http://www.khronos.org/registry/gles/extensions/EXT/EXT_texture_storage.txt + + Issue #184. + +commit 0bacf23eacd15c8f15413b85bdcb6ccc4d288f37 +Author: José Fonseca <jfonseca@vmware.com> +Date: Wed Nov 13 13:59:51 2013 +0000 + + glxtrace: Add GLES prototypes too. + + Some applications seem to fail to distinguish GLES and GL entrypoints + apart. To have complete traces in that situation, generate wrappers + for both GLES and GL prototypes. + + Issue #184. + +--- apitrace/specs/glesapi.py ++++ apitrace/specs/glesapi.py +@@ -255,4 +255,16 @@ glesapi.addFunctions([ + #GlFunction(Void, "glProgramUniformMatrix4fvEXT", [(GLprogram, "program"), (GLlocation, "location"), (GLsizei, "count"), (GLboolean, "transpose"), (Array(Const(GLfloat), "count*4*4"), "value")]), + GlFunction(Void, "glValidateProgramPipelineEXT", [(GLpipeline, "pipeline")]), + GlFunction(Void, "glGetProgramPipelineInfoLogEXT", [(GLpipeline, "pipeline"), (GLsizei, "bufSize"), Out(Pointer(GLsizei), "length"), Out(GLstring, "infoLog")], sideeffects=False), ++ ++ # GL_EXT_multisampled_render_to_texture ++ #GlFunction(Void, "glRenderbufferStorageMultisampleEXT", [(GLenum, "target"), (GLsizei, "samples"), (GLenum, "internalformat"), (GLsizei, "width"), (GLsizei, "height")]), ++ GlFunction(Void, "glFramebufferTexture2DMultisampleEXT", [(GLenum, "target"), (GLenum, "attachment"), (GLenum, "textarget"), (GLtexture, "texture"), (GLint, "level"), (GLsizei, "samples")]), ++ ++ # GL_EXT_texture_storage ++ GlFunction(Void, "glTexStorage1DEXT", [(GLenum, "target"), (GLsizei, "levels"), (GLenum, "internalformat"), (GLsizei, "width")]), ++ GlFunction(Void, "glTexStorage2DEXT", [(GLenum, "target"), (GLsizei, "levels"), (GLenum, "internalformat"), (GLsizei, "width"), (GLsizei, "height")]), ++ GlFunction(Void, "glTexStorage3DEXT", [(GLenum, "target"), (GLsizei, "levels"), (GLenum, "internalformat"), (GLsizei, "width"), (GLsizei, "height"), (GLsizei, "depth")]), ++ #GlFunction(Void, "glTextureStorage1DEXT", [(GLtexture, "texture"), (GLenum, "target"), (GLsizei, "levels"), (GLenum, "internalformat"), (GLsizei, "width")]), ++ #GlFunction(Void, "glTextureStorage2DEXT", [(GLtexture, "texture"), (GLenum, "target"), (GLsizei, "levels"), (GLenum, "internalformat"), (GLsizei, "width"), (GLsizei, "height")]), ++ #GlFunction(Void, "glTextureStorage3DEXT", [(GLtexture, "texture"), (GLenum, "target"), (GLsizei, "levels"), (GLenum, "internalformat"), (GLsizei, "width"), (GLsizei, "height"), (GLsizei, "depth")]), + ]) +--- apitrace/wrappers/CMakeLists.txt ++++ apitrace/wrappers/CMakeLists.txt +@@ -393,6 +393,7 @@ elseif (X11_FOUND) + gltrace.py + trace.py + ${CMAKE_SOURCE_DIR}/specs/glxapi.py ++ ${CMAKE_SOURCE_DIR}/specs/glesapi.py + ${CMAKE_SOURCE_DIR}/specs/glapi.py + ${CMAKE_SOURCE_DIR}/specs/glparams.py + ${CMAKE_SOURCE_DIR}/specs/gltypes.py +--- apitrace/wrappers/glxtrace.py ++++ apitrace/wrappers/glxtrace.py +@@ -32,6 +32,7 @@ from gltrace import GlTracer + from specs.stdapi import Module, API + from specs.glapi import glapi + from specs.glxapi import glxapi ++from specs.glesapi import glesapi + + + class GlxTracer(GlTracer): +@@ -104,6 +105,7 @@ if __name__ == '__main__': + module = Module() + module.mergeModule(glxapi) + module.mergeModule(glapi) ++ module.mergeModule(glesapi) + api = API() + api.addModule(module) + tracer = GlxTracer() diff --git a/dev-util/apitrace/files/apitrace-4.0-glxcopysubbuffermesa.patch b/dev-util/apitrace/files/apitrace-4.0-glxcopysubbuffermesa.patch new file mode 100644 index 000000000000..4dd3cdc6be3a --- /dev/null +++ b/dev-util/apitrace/files/apitrace-4.0-glxcopysubbuffermesa.patch @@ -0,0 +1,80 @@ +Upstream commit to support glxCopySubBufferMESA. Modified to fix compile error with egl. + +commit 4dc3f3bdc3611ca1b3dec402f9242a036db8c8e4 +Author: Carl Worth <cworth@cworth.org> +Date: Thu Oct 17 14:52:21 2013 -0700 + + retrace: Implement glxCopySubBufferMESA + + This enables replay of a trace captured on ChromeOS. + + Note: Replaying on EGL is not supported, (will trigger a warning), + since, as far as I know, EGL does not provide an equivalent function. + +--- apitrace/retrace/glretrace_glx.cpp ++++ apitrace/retrace/glretrace_glx.cpp +@@ -111,6 +111,16 @@ static void retrace_glXDestroyContext(trace::Call &call) { + delete context; + } + ++static void retrace_glXCopySubBufferMESA(trace::Call &call) { ++ glws::Drawable *drawable = getDrawable(call.arg(1).toUInt()); ++ int x = call.arg(2).toSInt(); ++ int y = call.arg(3).toSInt(); ++ int width = call.arg(4).toSInt(); ++ int height = call.arg(5).toSInt(); ++ ++ drawable->copySubBuffer(x, y, width, height); ++} ++ + static void retrace_glXSwapBuffers(trace::Call &call) { + glws::Drawable *drawable = getDrawable(call.arg(1).toUInt()); + +@@ -173,7 +183,7 @@ const retrace::Entry glretrace::glx_callbacks[] = { + {"glXChooseVisual", &retrace::ignore}, + //{"glXCopyContext", &retrace_glXCopyContext}, + //{"glXCopyImageSubDataNV", &retrace_glXCopyImageSubDataNV}, +- //{"glXCopySubBufferMESA", &retrace_glXCopySubBufferMESA}, ++ {"glXCopySubBufferMESA", &retrace_glXCopySubBufferMESA}, + {"glXCreateContextAttribsARB", &retrace_glXCreateContextAttribsARB}, + {"glXCreateContext", &retrace_glXCreateContext}, + //{"glXCreateContextWithConfigSGIX", &retrace_glXCreateContextWithConfigSGIX}, +--- apitrace/retrace/glws.hpp ++++ apitrace/retrace/glws.hpp +@@ -127,6 +127,8 @@ public: + visible = true; + } + ++ virtual void copySubBuffer(int x, int y, int width, int height) = 0; ++ + virtual void swapBuffers(void) = 0; + }; + +--- apitrace/retrace/glws_egl_xlib.cpp ++++ apitrace/retrace/glws_egl_xlib.cpp +@@ -244,6 +244,10 @@ public: + Drawable::show(); + } + ++ void copySubBuffer(int x, int y, int width, int height) { ++ std::cerr << "glws_egl_xlib: Warning: copySubBuffer Not yet implemented\n"; ++ } ++ + void swapBuffers(void) { + eglBindAPI(api); + eglSwapBuffers(eglDisplay, surface); +--- apitrace/retrace/glws_glx.cpp ++++ apitrace/retrace/glws_glx.cpp +@@ -213,6 +213,12 @@ public: + Drawable::show(); + } + ++ void copySubBuffer(int x, int y, int width, int height) { ++ glXCopySubBufferMESA(display, window, x, y, width, height); ++ ++ processKeys(); ++ } ++ + void swapBuffers(void) { + glXSwapBuffers(display, window); + diff --git a/dev-util/apitrace/files/apitrace-4.0-glxtrace-only.patch b/dev-util/apitrace/files/apitrace-4.0-glxtrace-only.patch new file mode 100644 index 000000000000..08ce65e2fc0a --- /dev/null +++ b/dev-util/apitrace/files/apitrace-4.0-glxtrace-only.patch @@ -0,0 +1,49 @@ +Allow building of just glxtrace library for ebuilds without GUI tools. + +Updated from 3.0 version of patch to apply against 4.0. + +--- apitrace/CMakeLists.txt ++++ apitrace/CMakeLists.txt +@@ -30,6 +30,7 @@ set (ENABLE_CLI true CACHE BOOL "Enable command Line interface.") + + set (ENABLE_EGL true CACHE BOOL "Enable EGL support.") + ++option (BUILD_LIB_ONLY "Build the glxtrace library only" OFF) + + ############################################################################## + # Find dependencies +@@ -248,6 +255,8 @@ endif () + # - The packaged versions QJson are very old, and do not support NaN/Infinity. + # - To make it easier to build the GUI on Windows and MacOSX, as there are no + # binaries at all. ++if (NOT BUILD_LIB_ONLY) ++ + if (QT4_FOUND) + add_definitions (-DQJSON_EXPORT=) + add_subdirectory (thirdparty/qjson) +@@ -257,6 +266,8 @@ if (QT4_FOUND) + set (QJSON_FOUND TRUE) + endif () + ++endif (NOT BUILD_LIB_ONLY) ++ + # We use bundled headers for all Khronos APIs, to guarantee support for both + # OpenGL and OpenGL ES at build time, because the OpenGL and OpenGL ES 1 APIs + # are so intertwined that conditional compilation extremely difficult. This +--- apitrace/retrace/CMakeLists.txt ++++ apitrace/retrace/CMakeLists.txt +@@ -11,6 +11,8 @@ include_directories ( + + 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 +@@ -259,3 +261,5 @@ if (WIN32) + + install (TARGETS d3dretrace RUNTIME DESTINATION bin) + endif () ++ ++endif (NOT BUILD_LIB_ONLY) diff --git a/dev-util/apitrace/files/apitrace-4.0-memcpy.patch b/dev-util/apitrace/files/apitrace-4.0-memcpy.patch new file mode 100644 index 000000000000..5b49808ada9b --- /dev/null +++ b/dev-util/apitrace/files/apitrace-4.0-memcpy.patch @@ -0,0 +1,13 @@ +http://bugs.gentoo.org/465504 +http://github.com/apitrace/apitrace/issues/118 + +--- a/image/image_png.cpp ++++ b/image/image_png.cpp +@@ -31,6 +31,7 @@ + #include <assert.h> + #include <stdint.h> + #include <stdlib.h> ++#include <string.h> + + #include <fstream> + diff --git a/dev-util/apitrace/files/apitrace-4.0-multilib.patch b/dev-util/apitrace/files/apitrace-4.0-multilib.patch new file mode 100644 index 000000000000..6ad78c7cde08 --- /dev/null +++ b/dev-util/apitrace/files/apitrace-4.0-multilib.patch @@ -0,0 +1,59 @@ +Upstream commit to find wrappers in lib64 directory. + +commit 3f9c2ecf18d8fa37fad5a7062f80952692eaa8e7 +Author: Alexander Monakov <amonakov@ispras.ru> +Date: Wed Oct 16 20:51:47 2013 +0400 + + cli: use $LIB to handle multilib automagically on glibc + +--- apitrace/cli/CMakeLists.txt ++++ apitrace/cli/CMakeLists.txt +@@ -31,6 +31,7 @@ target_link_libraries (apitrace + ${ZLIB_LIBRARIES} + ${SNAPPY_LIBRARIES} + ${GETOPT_LIBRARIES} ++ dl + ) + + if (NOT CMAKE_CROSSCOMPILING) +--- apitrace/cli/cli_resources.cpp ++++ apitrace/cli/cli_resources.cpp +@@ -32,6 +32,20 @@ + + #include "cli_resources.hpp" + ++#ifdef __GLIBC__ ++ ++#include <dlfcn.h> ++ ++static bool ++tryLib(const os::String &path) ++{ ++ void *handle = dlopen(path.str(), RTLD_LAZY); ++ bool exists = (handle != NULL); ++ if (exists) ++ dlclose(handle); ++ return exists; ++} ++#endif + + os::String + findProgram(const char*programFilename) +@@ -76,6 +90,17 @@ findWrapper(const char *wrapperFilename) + return wrapperPath; + } + ++#ifdef __GLIBC__ ++ // We want to take advantage of $LIB dynamic string token expansion in ++ // glibc dynamic linker to handle multilib layout for us ++ wrapperPath = processDir; ++ wrapperPath.join("../$LIB/apitrace/wrappers"); ++ wrapperPath.join(wrapperFilename); ++ if (tryLib(wrapperPath)) { ++ return wrapperPath; ++ } ++#endif ++ + // Try relative install directory + wrapperPath = processDir; + #if defined(_WIN32) diff --git a/dev-util/apitrace/files/apitrace-4.0-system-libs.patch b/dev-util/apitrace/files/apitrace-4.0-system-libs.patch new file mode 100644 index 000000000000..68468a30bde1 --- /dev/null +++ b/dev-util/apitrace/files/apitrace-4.0-system-libs.patch @@ -0,0 +1,72 @@ +Find external system libraries for ebuild. + +Updated from 3.0 version of patch to apply against 4.0. + +--- apitrace/CMakeLists.txt ++++ apitrace/CMakeLists.txt +@@ -224,23 +224,14 @@ set (WRAPPER_INSTALL_DIR ${LIB_ARCH_INSTALL_DIR}/wrappers) + # - on unices to prevent symbol collisions when tracing applications that link + # against other versions of these libraries + +-set (ZLIB_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/zlib) +-set (ZLIB_LIBRARIES z_bundled) +-add_subdirectory (thirdparty/zlib) +- +-include_directories (${ZLIB_INCLUDE_DIRS}) +- +-set (SNAPPY_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/snappy) +-set (SNAPPY_LIBRARIES snappy_bundled) +-add_subdirectory (thirdparty/snappy) ++find_package (ZLIB REQUIRED) ++include_directories (${ZLIB_INCLUDE_DIRS}) + ++find_package (SNAPPY REQUIRED) + include_directories (${SNAPPY_INCLUDE_DIRS}) + +-set (PNG_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/libpng) +-set (PNG_DEFINITIONS "") +-set (PNG_LIBRARIES png_bundled) +- +-add_subdirectory (thirdparty/libpng) ++find_package (PNG REQUIRED) ++include_directories (${PNG_INCLUDE_DIRS}) + + if (MSVC) + add_subdirectory (thirdparty/getopt) +diff --git a/cmake/FindSNAPPY.cmake b/cmake/FindSNAPPY.cmake +new file mode 100644 +index 0000000..5cd64c3 +--- /dev/null ++++ apitrace/cmake/FindSNAPPY.cmake +@@ -0,0 +1,31 @@ ++# Find SNAPPY - A fast compressor/decompressor ++# ++# This module defines ++# SNAPPY_FOUND - whether the qsjon library was found ++# SNAPPY_LIBRARIES - the snappy library ++# SNAPPY_INCLUDE_DIR - the include path of the snappy library ++# ++ ++if (SNAPPY_INCLUDE_DIR AND SNAPPY_LIBRARIES) ++ ++ # Already in cache ++ set (SNAPPY_FOUND TRUE) ++ ++else (SNAPPY_INCLUDE_DIR AND SNAPPY_LIBRARIES) ++ ++ find_library (SNAPPY_LIBRARIES ++ NAMES ++ snappy ++ PATHS ++ ) ++ ++ find_path (SNAPPY_INCLUDE_DIR ++ NAMES ++ snappy.h ++ PATHS ++ ) ++ ++ include(FindPackageHandleStandardArgs) ++ find_package_handle_standard_args(SNAPPY DEFAULT_MSG SNAPPY_LIBRARIES SNAPPY_INCLUDE_DIR) ++ ++endif (SNAPPY_INCLUDE_DIR AND SNAPPY_LIBRARIES) diff --git a/dev-util/apitrace/files/apitrace-5.0-disable-multiarch.patch b/dev-util/apitrace/files/apitrace-5.0-disable-multiarch.patch new file mode 100644 index 000000000000..aac018e65817 --- /dev/null +++ b/dev-util/apitrace/files/apitrace-5.0-disable-multiarch.patch @@ -0,0 +1,34 @@ +respect the libdir cmake already set up for us instead of using the multiarch crap + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 17f3dce..c3fe52e 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -216,12 +216,6 @@ set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}) + # Installation directories + + if (${CMAKE_SYSTEM_NAME} MATCHES "Linux") +- # Debian multiarch support +- execute_process(COMMAND dpkg-architecture -qDEB_HOST_MULTIARCH +- OUTPUT_VARIABLE ARCH_SUBDIR +- ERROR_QUIET +- OUTPUT_STRIP_TRAILING_WHITESPACE +- ) + CHECK_INCLUDE_FILES(proc/readproc.h READPROC_H_FOUND) + if (READPROC_H_FOUND) + add_definitions (-DHAVE_READPROC_H) +@@ -237,11 +231,11 @@ if (WIN32 OR APPLE) + 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}) ++ set (LIB_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}/${CMAKE_PROJECT_NAME}) + if (ARCH_SUBDIR) +- set (LIB_ARCH_INSTALL_DIR lib/${ARCH_SUBDIR}/${CMAKE_PROJECT_NAME}) ++ set (LIB_ARCH_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}/${ARCH_SUBDIR}/${CMAKE_PROJECT_NAME}) + else () +- set (LIB_ARCH_INSTALL_DIR lib${LIB_SUFFIX}/${CMAKE_PROJECT_NAME}) ++ set (LIB_ARCH_INSTALL_DIR ${LIB_INSTALL_DIR}) + endif () + endif () + diff --git a/dev-util/apitrace/files/apitrace-5.0-glxtrace-only.patch b/dev-util/apitrace/files/apitrace-5.0-glxtrace-only.patch new file mode 100644 index 000000000000..03e6143afff0 --- /dev/null +++ b/dev-util/apitrace/files/apitrace-5.0-glxtrace-only.patch @@ -0,0 +1,53 @@ +Allow building of just glxtrace library for ebuilds without GUI tools. + +Updated from 4.0 version of patch to apply against 5.0. + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 17f3dce..3bba2a9 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -33,6 +33,7 @@ set (ENABLE_EGL true CACHE BOOL "Enable EGL support.") + + set (ENABLE_WAFFLE false CACHE BOOL "Enable WAFFLE support.") + ++option (BUILD_LIB_ONLY "Build the glxtrace library only" OFF) + + ############################################################################## + # Find dependencies +@@ -301,6 +302,8 @@ set (MD5_LIBRARIES md5_bundled) + # - The packaged versions QJson are very old, and do not support NaN/Infinity. + # - To make it easier to build the GUI on Windows and MacOSX, as there are no + # binaries at all. ++if (NOT BUILD_LIB_ONLY) ++ + if (QT4_FOUND) + add_definitions (-DQJSON_EXPORT=) + add_subdirectory (thirdparty/qjson) +@@ -310,6 +313,8 @@ if (QT4_FOUND) + set (QJSON_FOUND TRUE) + endif () + ++endif (NOT BUILD_LIB_ONLY) ++ + # We use bundled headers for all Khronos APIs, to guarantee support for both + # OpenGL and OpenGL ES at build time, because the OpenGL and OpenGL ES 1 APIs + # are so intertwined that conditional compilation extremely difficult. This +diff --git a/retrace/CMakeLists.txt b/retrace/CMakeLists.txt +index 4e37979..2607ddf 100644 +--- a/retrace/CMakeLists.txt ++++ b/retrace/CMakeLists.txt +@@ -11,6 +11,8 @@ include_directories ( + + 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 +@@ -282,3 +284,5 @@ if (WIN32) + + install (TARGETS d3dretrace RUNTIME DESTINATION bin) + endif () ++ ++endif (NOT BUILD_LIB_ONLY) diff --git a/dev-util/apitrace/files/apitrace-6.0-disable-multiarch.patch b/dev-util/apitrace/files/apitrace-6.0-disable-multiarch.patch new file mode 100644 index 000000000000..bc6ba03060a4 --- /dev/null +++ b/dev-util/apitrace/files/apitrace-6.0-disable-multiarch.patch @@ -0,0 +1,35 @@ +respect the libdir cmake already set up for us instead of using debian-specific multiarch paths + +--- apitrace-6.0/CMakeLists.txt ++++ apitrace-6.0/CMakeLists.txt +@@ -280,15 +280,6 @@ + ############################################################################## + # Installation directories + +-if (${CMAKE_SYSTEM_NAME} MATCHES "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 +@@ -297,12 +288,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/metadata.xml b/dev-util/apitrace/metadata.xml new file mode 100644 index 000000000000..fa13c0dcafc9 --- /dev/null +++ b/dev-util/apitrace/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>radhermit@gentoo.org</email> + <name>Tim Harder</name> + </maintainer> + <use> + <flag name="cli">Enable command line interface</flag> + <flag name="egl">Enable EGL support</flag> + </use> + <upstream> + <remote-id type="github">apitrace/apitrace</remote-id> + </upstream> +</pkgmetadata> |