Blob Blame History Raw

%define snap 20100926

Name:           krazy2
Version:        2.90
Release:        19.%{snap}svn%{?dist}
Summary:        Krazy is a tool for checking code against the KDE coding guidelines

Group:          Development/Libraries
License:        GPLv2+
URL:            http://techbase.kde.org/Development/Tutorials/Code_Checking
# The source for this package was pulled from upstream's vcs.  Use the
# following commands to generate the tarball:
#  svn export -r 1179948 svn://anonsvn.kde.org/home/kde/trunk/quality/krazy2 krazy2-2.90
#  tar -c krazy2-2.90 | bzip2 --best -c > krazy2-2.90-%{snap}.tar.bz2
Source0:        krazy2-%{version}-%{snap}.tar.bz2
Source1:        krazy-licensecheck
# this is probably upstreamable too(?) -- Rex
Patch0:         krazy2-prefix.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

# krazy-licensecheck moved from kdesdk to here in 4.2.0
Conflicts:      kdesdk < 4.2.0

BuildRequires:  groff
BuildRequires:  perl(ExtUtils::MakeMaker)
BuildRequires:  perl(HTML::Parser)
BuildRequires:  perl(Tie::IxHash)
BuildRequires:  perl(XML::LibXML)
# perldoc is now in separate package
BuildRequires:  perl(Pod::Perldoc)
BuildRequires:  qt4-devel
BuildRequires:  cmake
Requires:       perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
# Krazy2 uses desktop-file-validate, so this is an actual Requires
Requires:       desktop-file-utils

%description
Krazy scans KDE source code looking for issues that should be fixed
for reasons of policy, good coding practice, optimization, or any other
good reason.


%prep
%setup -q
%patch0


%build
%{__perl} Makefile.PL INSTALLDIRS=vendor
make
pushd src/passbyvalue
%{_qt4_qmake}
make %{?_smp_mflags}
popd
pushd cppchecks
%{cmake} .
make %{?_smp_mflags} VERBOSE=1
popd


%install
rm -rf %{buildroot}
make DESTDIR=%{buildroot} PREFIX=%{_prefix} install
chmod 0755 %{buildroot}%{_bindir}/krazy2{,all,xml}
pushd helpers
make DESTDIR=%{buildroot} PREFIX=%{_prefix} \
    %if "%{_lib}" == "lib64"
        LIBSUFFIX=64 \
    %endif
    install
popd
pushd plugins
make PREFIX=%{buildroot}%{_prefix} \
    %if "%{_lib}" == "lib64"
        LIBSUFFIX=64 \
    %endif
    install
popd
pushd extras
make DESTDIR=%{buildroot} PREFIX=%{_prefix} \
    %if "%{_lib}" == "lib64"
        LIBSUFFIX=64 \
    %endif
    install
popd
pushd sets
make DESTDIR=%{buildroot} PREFIX=%{_prefix} \
    %if "%{_lib}" == "lib64"
        LIBSUFFIX=64 \
    %endif
    install
popd
pushd src/passbyvalue
make INSTALL_ROOT=%{buildroot}%{_prefix} \
    %if "%{_lib}" == "lib64"
        LIBSUFFIX=64 \
    %endif
    install
popd
pushd share
mkdir -p %{buildroot}%{_datadir}/dtd
install -m 644 -p kpartgui.dtd %{buildroot}%{_datadir}/dtd/kpartgui.dtd
install -m 644 -p kcfg.dtd %{buildroot}%{_datadir}/dtd/kcfg.dtd
popd
pushd doc
make DESTDIR=%{buildroot} PREFIX=%{_prefix}/share install
popd
install -m 755 %{SOURCE1} %{buildroot}%{_bindir}/krazy-licensecheck
pushd cppchecks
make DESTDIR=%{buildroot} PREFIX=%{_prefix} install/fast
popd
find %{buildroot} -type f -name .packlist -exec rm -f {} ';'
find %{buildroot} -type f -name perllocal.pod -exec rm -f {} ';'
find %{buildroot} -depth -type d -exec rmdir {} 2>/dev/null ';'


%clean
rm -rf %{buildroot}


%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig


%files
%defattr(-,root,root,-)
%doc COPYING README
%{_mandir}/man1/krazy2.1.gz
%{_mandir}/man1/krazy2all.1.gz
%{_mandir}/man1/krazy2xml.1.gz
%{_mandir}/man5/krazyrc.5.gz
%{_bindir}/krazy-licensecheck
%{_bindir}/krazy2
%{_bindir}/krazy2all
%{_bindir}/krazy2xml
%{_libdir}/libcpp_parser.so
%{_libdir}/libcppmodel.so
%{_libdir}/libpreprocessor.so
%{_libdir}/libcheckutil.so
%{_libdir}/libcheckutil.so.1
%{_libdir}/libcheckutil.so.1.0
%{_libdir}/krazy2/
%{_datadir}/dtd/
%{perl_vendorlib}/Krazy/


%changelog
* Wed Jul 24 2013 Petr Pisar <ppisar@redhat.com> - 2.90-19.20100926svn
- Perl 5.18 rebuild

* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.90-18.20100926svn
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild

* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.90-17.20100926svn
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild

* Tue Jun 12 2012 Petr Pisar <ppisar@redhat.com> - 2.90-16.20100926svn
- Perl 5.16 rebuild

* Tue Feb 28 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.90-15.20100926svn
- Rebuilt for c++ ABI breakage

* Mon Jan 16 2012 Radek Novacek <rnovacek@redhat.com> 2.90-14.20100926svn
- Change BR: perl-Pod-Perldoc to perl(Pod::Perldoc)

* Mon Jan 16 2012 Radek Novacek <rnovacek@redhat.com> 2.90-13.20100926svn
- Add BR: perl-Pod-Perldoc (perldoc is now in separate package)

* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.90-12.20100926svn
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild

* Tue Jul 19 2011 Petr Sabata <contyk@redhat.com> - 2.90-11.20100926svn
- Perl mass rebuild

* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.90-10.20100926svn
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Fri Oct 01 2010 Kevin Kofler <Kevin@tigcc.ticalc.org> 2.90-9.20100926svn
- Install sets (required for operation)
- Use install/fast instead of install for the cppchecks CMake makefile

* Fri Oct 01 2010 Kevin Kofler <Kevin@tigcc.ticalc.org> 2.90-8.20100926svn
- Remove unused (since Jan 2009!) kdelibs4-devel and kdevplatform-devel BRs

* Fri Oct 01 2010 Kevin Kofler <Kevin@tigcc.ticalc.org> 2.90-7.20100926svn
- Update to current SVN (revision 1179948 committed 20100926, version 2.90)
- Drop upstreamed qt47 and rpath patches

* Mon Jun 28 2010 Rex Dieter <rdieter@fedoraproject.org> 2.9-6.20100628svn
- Update snapshot
- FTBFS krazy2-2.9-4.20090928svn.fc13 (#599851)
- squash /lib rpaths

* Tue Jun 01 2010 Marcela Maslanova <mmaslano@redhat.com> - 2.9-5.20090928svn
- Mass rebuild with perl-5.12.0

* Tue Sep 29 2009 Ben Boeckel <MathStuf@gmail.com> 2.9-4.20090928svn
- Update snapshot
- krazy2ebn is gone
- Use kdevplatform by default now

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

* Mon Jul 20 2009 Ben Boeckel <MathStuf@gmail.com> 2.9-2.20090719svn
- Fix %%changelog
- Fix CVS mistakes (update tarball)

* Mon Jul 20 2009 Ben Boeckel <MathStuf@gmail.com> 2.9-1.20090719svn
- Updated SVN
- Conditionalize patch
- Fix DESTDIR/PREFIX for doc
- Remove %%check section

* Mon Mar 16 2009 Ben Boeckel <MathStuf@gmail.com> 2.8-9.20090314svn
- Updated SVN

* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.8-8.20090127svn
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild

* Thu Jan 29 2009 Ben Boeckel <MathStuf@gmail.com> 2.8-7.20090127svn
- Updated SVN

* Sat Jan 24 2009 Ben Boeckel <MathStuf@gmail.com> 2.8-6.20090113svn916151
- Added flag for building with kdevplatform
- Removed patches applied upstream

* Tue Jan 13 2009 Ben Boeckel <MathStuf@gmail.com> 2.8-5.20090111svn909634
- Typo with sources

* Tue Jan 13 2009 Ben Boeckel <MathStuf@gmail.com> 2.8-4.20090111svn909634
- Forgot to commit krazy-licensecheck

* Tue Jan 13 2009 Ben Boeckel <MathStuf@gmail.com> 2.8-3.20090111svn909634
- Missed the patch

* Tue Jan 13 2009 Ben Boeckel <MathStuf@gmail.com> 2.8-2.20090111svn909634
- Moved krazy-licensecheck from kdesdk to here

* Tue Jan 6 2009 Ben Boeckel <MathStuf@gmail.com> 2.8-1.20090105svn906738
- New plugins and extra checks
- Updated plugins

* Wed Oct 8 2008 Ben Boeckel <MathStuf@gmail.com> 2.6-6.20081008svn869261
- Updated SVN
- Patch applied upstream

* Tue Sep 23 2008 Ben Boeckel <MathStuf@gmail.com> 2.6-5.20080923svn862962
- Updated SVN

* Thu Sep 18 2008 Ben Boeckel <MathStuf@gmail.com> 2.6-4.20080918svn862357
- Updated SVN
- Spec file cleaned up

* Thu Sep 18 2008 Ben Boeckel <MathStuf@gmail.com> 2.6-3
- Fixed where the plugins get installed to

* Wed Sep 17 2008 Ben Boeckel <MathStuf@gmail.com> 2.6-2
- Fixed the rpmlint errors

* Wed Sep 17 2008 Ben Boeckel <MathStuf@gmail.com> 2.6-1
- Fixed the spec file up

* Wed May 21 2008 Ben Boeckel <MathStuf@gmail.com> 1.11-1
- Created