c73ece3
# Filter GLIBC_PRIVATE Requires, see wrappers/dlsym.cpp
c73ece3
%define __filter_GLIBC_PRIVATE 1
c73ece3
b483f32
%global commit 0f541f460bba86a69c8c714076db5a7607cc8d16
9f7db61
%global shortcommit %(c=%{commit}; echo ${c:0:7})
9f7db61
a8c8676
Name:           apitrace
b483f32
Version:        9.0
dcaf2e1
Release:        0.2.git%{shortcommit}%{?dist}
a8c8676
Summary:        Tools for tracing OpenGL
a8c8676
a8c8676
License:        MIT
a8c8676
URL:            http://apitrace.github.io/
9f7db61
Source0:        https://github.com/apitrace/apitrace/archive/%{commit}/apitrace-%{shortcommit}.tar.gz
a8c8676
Source1:        qapitrace.desktop
bd86eeb
Source2:        qapitrace.appdata.xml
bd86eeb
9f7db61
# Unbundle brotli, gtest
9f7db61
Patch0:         apitrace_unbundle.patch
a8c8676
9f7db61
BuildRequires:  brotli-devel
a8c8676
BuildRequires:  cmake
9f7db61
BuildRequires:  desktop-file-utils
a22ef49
BuildRequires:  gcc-c++
9f7db61
BuildRequires:  gtest-devel
9f7db61
BuildRequires:  libappstream-glib
9f7db61
BuildRequires:  libdwarf-devel
9f7db61
BuildRequires:  libpng-devel
a22ef49
BuildRequires:  make
9f7db61
BuildRequires:  python2-devel
fe4f85e
BuildRequires:  qt5-qtbase-devel
fe4f85e
BuildRequires:  qt5-qtwebkit-devel
a8c8676
BuildRequires:  snappy-devel
a8c8676
0c20af6
Requires:       %{name}-libs%{_isa} = %{version}-%{release}
a8c8676
# scripts/snapdiff.py
9f7db61
Requires:       python3-pillow
a8c8676
3c71d0e
# See http://fedoraproject.org/wiki/Packaging:No_Bundled_Libraries#Packages_granted_exceptions
3c71d0e
Provides:       bundled(md5-plumb)
3c71d0e
# See https://fedorahosted.org/fpc/ticket/429
3c71d0e
Provides:       bundled(libbacktrace)
9f7db61
# Modofied http://create.stephan-brumme.com/crc32/, see thirdparty/crc32c/README.md
9f7db61
Provides:       bundled(crc32c)
3c71d0e
a8c8676
a8c8676
%description
a8c8676
apitrace consists of a set of tools to:
a8c8676
 * trace OpenGL and OpenGL ES  APIs calls to a file;
a8c8676
 * replay OpenGL and OpenGL ES calls from a file
a8c8676
 * inspect OpenGL state at any call while retracing
a8c8676
 * visualize and edit trace files
a8c8676
a8c8676
0c20af6
%package libs
0c20af6
Summary:        Libraries used by apitrace
0c20af6
Requires:       %{name} = %{version}-%{release}
0c20af6
0c20af6
%description libs
0c20af6
Libraries used by apitrace
0c20af6
0c20af6
a8c8676
%package gui
a8c8676
Summary:        Graphical frontend for apitrace
a8c8676
Requires:       %{name}%{_isa} = %{version}-%{release}
a8c8676
a8c8676
%description gui
a8c8676
This package contains qapitrace, the Graphical frontend for apitrace.
a8c8676
a8c8676
a8c8676
%prep
9f7db61
%autosetup -p1 -n %{name}-%{commit}
a8c8676
3c71d0e
# Remove bundled libraries, except khronos headers and libbacktrace
9f7db61
rm -rf `ls -1d thirdparty/* | grep -Ev "(khronos|md5|libbacktrace|crc32c)"`
a8c8676
bd86eeb
# Fix spurious-executable-perm
bd86eeb
chmod -x retrace/glretrace_main.cpp
bd86eeb
a8c8676
a8c8676
%build
4086d15
%cmake -DENABLE_STATIC_SNAPPY=OFF .
114ea92
%make_build
a8c8676
a8c8676
a8c8676
%install
a8c8676
%make_install
a8c8676
a8c8676
# Install doc through %%doc
a8c8676
rm -rf %{buildroot}%{_docdir}/
a8c8676
a8c8676
# Install desktop file
a8c8676
desktop-file-install --dir=%{buildroot}%{_datadir}/applications/ %{SOURCE1}
a8c8676
bd86eeb
# Install appdata file
bd86eeb
install -Dpm 0644 %{SOURCE2} %{buildroot}%{_datadir}/appdata/qapitrace.appdata.xml
be535c1
%{_bindir}/appstream-util validate-relax --nonet %{buildroot}%{_datadir}/appdata/qapitrace.appdata.xml
bd86eeb
a8c8676
# highlight.py is not a script
a8c8676
chmod 0644 %{buildroot}%{_libdir}/%{name}/scripts/highlight.py
a8c8676
a8c8676
fe4f85e
%check
fe4f85e
make check
fe4f85e
a8c8676
%files
bd86eeb
%license LICENSE
fe4f85e
%doc README.markdown docs/*
a8c8676
%{_bindir}/apitrace
a8c8676
%{_bindir}/eglretrace
a8c8676
%{_bindir}/glretrace
0c20af6
0c20af6
%files libs
a8c8676
%{_libdir}/%{name}/
a8c8676
a8c8676
%files gui
a8c8676
%{_bindir}/qapitrace
a8c8676
%{_datadir}/applications/qapitrace.desktop
bd86eeb
%{_datadir}/appdata/qapitrace.appdata.xml
a8c8676
a8c8676
a8c8676
%changelog
dcaf2e1
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 9.0-0.2.git0f541f4
dcaf2e1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
dcaf2e1
b483f32
* Mon Jul 22 2019 Sandro Mani <manisandro@gmail.com> - 9.0.0-0.1.git0f541f4
b483f32
- Update to latest git
b483f32
- Switch to python3
b483f32
70d2ea0
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 8.0-0.2.gitf411d55
70d2ea0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
70d2ea0
9f7db61
* Wed Jan 30 2019 Sandro Mani <manisandro@gmail.com> - 0.8-0.1.gitf411d55
9f7db61
- Update to latest git
9f7db61
09dea4c
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 7.1-12
09dea4c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
09dea4c
a22ef49
* Sun Feb 18 2018 Sandro Mani <manisandro@gmail.com> - 7.1-11
a22ef49
- Add missing BR: gcc-c++, make
a22ef49
b0bcb82
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 7.1-10
b0bcb82
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
b0bcb82
1fbe593
* Sat Feb 03 2018 Sandro Mani <manisandro@gmail.com> - 7.1-9
1fbe593
- Rebuild
1fbe593
4086d15
* Mon Oct 30 2017 Sandro Mani <manisandro@gmail.com> - 7.1-8
4086d15
- Correctly remove thirdparty bundled libraries (#1507659)
4086d15
- Add BR: libdwarf-devel to enable backtrace support
4086d15
114ea92
* Mon Aug 07 2017 Sandro Mani <manisandro@gmail.com> - 7.1-7
114ea92
- Don't add -nn to the moc options
114ea92
e40cb93
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 7.1-6
e40cb93
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
e40cb93
96a2678
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 7.1-5
96a2678
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
96a2678
6088b78
* Mon May 15 2017 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.1-4
6088b78
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild
6088b78
7ff8cc0
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 7.1-3
7ff8cc0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
7ff8cc0
e2d49b0
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 7.1-2
e2d49b0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
e2d49b0
ecda6b2
* Wed Nov 25 2015 Sandro Mani <manisandro@gmail.com> - 7.1-1
ecda6b2
- Update to 7.1
ecda6b2
Richard Hughes cdc42cb
* Wed Sep 16 2015 Richard Hughes <rhughes@redhat.com> - 7.0-2
Richard Hughes cdc42cb
- Fix the AppData file to actually validate
Richard Hughes cdc42cb
fe4f85e
* Thu Jul 23 2015 Sandro Mani <manisandro@gmail.com> - 7.0-1
fe4f85e
- Update to 7.0
fe4f85e
1f655cc
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6.1-5
1f655cc
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
1f655cc
1711d7f
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 6.1-4
1711d7f
- Rebuilt for GCC 5 C++11 ABI change
1711d7f
c73ece3
* Mon Mar 02 2015 Sandro Mani <manisandro@gmail.com> - 6.1-3
c73ece3
- Remove dlsym hack, use %%define __filter_GLIBC_PRIVATE 1
c73ece3
977900d
* Fri Jan 16 2015 Sandro Mani <manisandro@gmail.com> - 6.1-2
977900d
- Fix appdata file
977900d
be535c1
* Fri Jan 16 2015 Sandro Mani <manisandro@gmail.com> - 6.1-1
be535c1
- Update to 6.1
be535c1
f53c09c
* Tue Jan 06 2015 Sandro Mani <manisandro@gmail.com> - 6.0-2
f53c09c
- Re-introduce dlsym hack
f53c09c
bd86eeb
* Mon Jan 05 2015 Sandro Mani <manisandro@gmail.com> - 6.0-1
bd86eeb
- Update to 6.0
bd86eeb
- Ship appdata file
bd86eeb
142eeff
* Fri Aug 15 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.0-4
142eeff
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
142eeff
19d02f6
* Wed Jun 11 2014 Adam Jackson <ajax@redhat.com> 5.0-3
19d02f6
- Fix dlsym hack to work on arm (and probably others)
19d02f6
d331cbc
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 5.0-2
d331cbc
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
d331cbc
3c71d0e
* Tue May 13 2014 Sandro Mani <manisandro@gmail.com> - 5.0-1
3c71d0e
- Update to 5.0
3c71d0e
3790989
* Fri Mar 07 2014 Sandro Mani <manisandro@gmail.com> - 4.0-5
0c20af6
- Split off libs package
0c20af6
- Allow tracing 32bit binaries on 64bit
0c20af6
a8c8676
* Mon Nov 18 2013 Sandro Mani <manisandro@gmail.com> - 4.0-4
a8c8676
- chmod 0644 scripts/highlight.py
a8c8676
- Fix all python shebangs according to fedora guidelines
a8c8676
- Use BR: python2-devel
a8c8676
- Split off qapitrace into subpackage
a8c8676
a8c8676
* Sat Nov 16 2013 Sandro Mani <manisandro@gmail.com> - 4.0-3
a8c8676
- Fix desktop-file-install syntax
a8c8676
a8c8676
* Sat Nov 16 2013 Sandro Mani <manisandro@gmail.com> - 4.0-2
a8c8676
- Fix %%{_buildroot} -> %%{buildroot} typo
a8c8676
- Remove explicit BRs which are implicit
a8c8676
a8c8676
* Wed Nov 13 2013 Sandro Mani <manisandro@gmail.com> - 4.0-1
a8c8676
- Initial package