Blob Blame History Raw
Summary:       CodeAnalyst is a Performance Analysis Suite for AMD-based System
Name:          CodeAnalyst-gui
Version:       2.8.54
Release:       24%{?dist}
License:       GPLv2
Group:         Development/System
URL:           http://developer.amd.com/cpu/CodeAnalyst/codeanalystlinux

Source0:       http://ftp-developer.amd.com/user/ssuthiku/Releases/%{name}-%{version}.tar.bz2
Source1:       CodeAnalyst-gui.desktop
Source2:       DiffAnalyst-gui.desktop

# Use oprofile default cpu/watershed/event-buffer size
# since using stock oprofile daemon/driver
Patch0:        ca-use-oprofile-default-buffersize.patch

# Fix OProfile-0.9.5 IBS feature check
Patch1:        ca-fix-oprofile-ibs-check.patch

# Fix basename
Patch2:        ca-fix-basename.patch

# Force using lbfd
Patch3:        ca-use-lbfd.patch

# Use dynamic feature check
Patch4:        ca-use-dynamic-feature-check.patch

# Fix sudo issue
Patch5:        ca-fix-su.patch

# Enable oprofile-0.9.6 support
Patch6:        ca-enable-oprofile-0.9.6.patch

Requires:      popt
Requires:      binutils
Requires:      elfutils-libelf
Requires:      qt3
Requires:      oprofile >= 0.9.4
Requires(pre): shadow-utils

BuildRequires: automake
BuildRequires: libtool
BuildRequires: popt-devel
BuildRequires: elfutils-libelf-devel
BuildRequires: qt3-devel >= 3.3
BuildRequires: qt3-designer >= 3.3
BuildRequires: oprofile >= 0.9.4
BuildRequires: desktop-file-utils
BuildRequires: libdwarf-devel
BuildRequires: binutils-static

BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)

# Unsupported architecture list due to non-AMD based system.
ExcludeArch: ppc ppc64 s390 s390x alpha alphaev6 sparcv9 sparc64


%description
CodeAnalyst is a performance analysis suite. It provids graphical
utilitys for running Oprofile, and analyzing result on AMD-based systems.
CodeAnalyst includes several features to aid profile analysis such as
inline-function analysis, code-block analysis, and a utility for
profile comparison, DiffAnalayst.


%prep
%setup -q -n %{name}-%{version}
%patch0 -p1 -b .ca-use-oprofile-default-buffersize
%patch1 -p0 -b .ca-fix-oprofile-ibs-check
%patch2 -p1 -b .ca-fix-basename
%patch3 -p0 -b .ca-use-lbfd
%patch4 -p1 -b .ca-use-dynamic-feature-check
%patch5 -p1 -b .ca-fix-su
%patch6 -p1 -b .ca-enable-oprofile-0.9.6


%build
./autogen.sh
%configure \
  --with-oprofile=%{_prefix} \
  --disable-oprofile-lib \
  --disable-static \
  --with-libdwarf-includes=%{_includedir}/libdwarf \
  --with-libdwarf-libraries=%{_libdir}

make %{?_smp_mflags} all \
  CFLAGS="${RPM_OPT_FLAGS}" \
  CXXFLAGS="${RPM_OPT_FLAGS}"


%install
rm -rf ${RPM_BUILD_ROOT}

make -C src/ca/libs    install DESTDIR=${RPM_BUILD_ROOT} INSTALL="install -p"
make -C src/ca/gui     install DESTDIR=${RPM_BUILD_ROOT} INSTALL="install -p"
make -C src/ca/diffgui install DESTDIR=${RPM_BUILD_ROOT} INSTALL="install -p"
make -C src/ca/utils   install DESTDIR=${RPM_BUILD_ROOT} INSTALL="install -p"
make -C src/ca/scripts install DESTDIR=${RPM_BUILD_ROOT} INSTALL="install -p"

# These are help documents and images which
# the GUIs is using for the "Help" on toolbar.
# GUI will not run correctly if these are not available
make -C doc install DESTDIR=${RPM_BUILD_ROOT} INSTALL="install -p"

install -pD -m 755 careport.sh ${RPM_BUILD_ROOT}%{_bindir}/careport.sh

# Remove these unnecessary files from the installation
rm -rf ${RPM_BUILD_ROOT}%{_libdir}/lib*.{la,so}

# Install CodeAnalyst-gui.desktop file
desktop-file-install --dir=${RPM_BUILD_ROOT}%{_datadir}/applications %{SOURCE1}

# Install DiffAnalyst-gui.desktop file
desktop-file-install --dir=${RPM_BUILD_ROOT}%{_datadir}/applications %{SOURCE2}


%clean
rm -rf ${RPM_BUILD_ROOT}


%pre
# Adding "amdca" user group
getent group amdca >/dev/null || /usr/sbin/groupadd -r amdca
exit 0


%post -p /sbin/ldconfig


%postun -p /sbin/ldconfig


%files
%defattr(-,root,root,-)
%doc README COPYING INSTALLATION samples
%{_bindir}/CodeAnalyst
%{_bindir}/DiffAnalyst
%{_bindir}/careport.sh
%{_bindir}/capackage.sh
%{_sbindir}/ca_user_manager
%{_sbindir}/ca_oprofile_controller
%{_libdir}/lib*.so.*
%dir %{_datadir}/codeanalyst
%{_datadir}/codeanalyst/*
%{_datadir}/applications/CodeAnalyst-gui.desktop
%{_datadir}/applications/DiffAnalyst-gui.desktop


%changelog
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.8.54-24
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Wed Jul 07 2010 Parag Nemade <paragn AT fedoraproject.org> - 2.8.54-23
- Build against new libdwarf-0.20100629-1

* Mon Jul 05 2010 Parag Nemade <paragn AT fedoraproject.org> - 2.8.54-22
- Resolves:rh#609857 - CodeAnalyst-gui : does not adhere to Static Library Packaging Guidelines

* Wed Feb 3 2010 Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.54-21
- Add Patch6 (ca-enable-oprofile-0.9.6.patch)

* Wed Oct 28 2009 Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.54-20
- Add Patch4 (ca-use-dynamic-feature-check.patch)
- Add Patch5 (ca-fix-su.patch)
- Remove codeanalyst service

* Mon Aug 10 2009 Ville Skyttä <ville.skytta@iki.fi> 
- 2.8.54-19
- Use bzipped upstream tarball.

* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> 
- 2.8.54-18
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild

* Mon Jul 20 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.54-17
- Add Patch1 (ca-fix-oprofile-ibs-check.patch)
- Add Patch2 (ca-fix-basename.patch)
- Add Patch3 (ca-use-lbfd.patch)

* Mon Jul 20 2009 - Parag Nemade <panemade@gmail.com>
- 2.8.54-16
- Rebuild against new libbfd-2.19.51.0.11-24.fc12.so

* Mon Jul 13 2009 - Parag Nemade <panemade@gmail.com>
- 2.8.54-15
- Rebuild against new libbfd-2.19.51.0.11-23.fc12.so

* Wed Jul 8 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.54-14
- Update new release
- Update source
- Update patch0 
- Remove patches1-4

* Tue Jul 7 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.38-13
- Rebuild against new libbfd-2.19.51.0.2-20.fc12.so

* Thu Jun 18 2009 - Parag Nemade <panemade@gmail.com>
- 2.8.38-12
- Rebuild against new binutils package to fix rawhide dependency error.

* Mon Apr 6 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.38-11
- Remove --disable-dwarf from configuration
- Add patch ca-configure-libdwarf.patch
- Add patch ca-fix-splash.patch
- configure to build with libdwarf package

* Tue Mar 31 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.38-10
- Rebuild with new libbfd-2.19.51.0.2-16.fc11.so

* Thu Mar 12 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.38-9
- Disable dwarf
- Add patch2

* Wed Mar 11 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.38-8
- Add "INSTALL=install -p" in install section 

* Tue Mar 10 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.38-7
- Update Source0 download location.
- Add sample application.

* Mon Mar 9 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.38-6
- Update Source0 download location.

* Thu Mar 2 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.38-5
- Usign "install -p"
- Using /sbin/service in preun and postun

* Thu Mar 2 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.38-4
- Use "configure" macro instead of ./configure
- Add patch1:ca-destdir.patch and make use of DESTDIR variable.

* Thu Mar 2 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.38-3
- Clean up and reorganize the spec file.
- Update "install -D -m 755"
- Explicitely declare /usr/share/codeanalyst directory in files section.
- Remove the echo in install section.

* Thu Feb 18 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.38-2
- Use upstream URL for source

* Thu Feb 12 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.38-1
- Using new buildroot string
- Remove #### partitioning lines
- Fixed the build flag (using $RPM_OPT_FLAGS)
- Change service name from codeanalyst_init to codeanalyst
- Add /var/lock/subsys/codeanalyst lock file for service start/stop
- Add version number to shared libraries (.so files)

* Thu Feb 05 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.38-0
- Add patch0: ca-use-oprofile-default-buffersize.patch
- Clean up to meet Fedora Packaging Guideline
- Bump the version due to changes in the CodeAnalyst.

* Tue Jan 27 2009 - Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
- 2.8.37-1
- Initial revision