]>
Commit | Line | Data |
---|---|---|
df7f2cc2 JB |
1 | # |
2 | # Conditional build: | |
3 | %bcond_without gui # Qt4-based GUI | |
4 | # | |
5 | Summary: Tool for static C/C++ code analysis | |
6 | Summary(pl.UTF-8): Narzędzie do statycznej analizy kodu w C/C++ | |
7 | Name: cppcheck | |
8 | Version: 1.49 | |
9 | Release: 1 | |
10 | License: GPL v3+ | |
11 | Group: Development/Tools | |
12 | Source0: http://downloads.sourceforge.net/cppcheck/%{name}-%{version}.tar.bz2 | |
13 | # Source0-md5: 3af62285e268343fb9b8261364a1c1ef | |
14 | Patch0: %{name}-gui-paths.patch | |
15 | URL: http://cppcheck.sourceforge.net/ | |
16 | BuildRequires: cmake | |
17 | BuildRequires: docbook-style-xsl | |
18 | BuildRequires: docbook-dtd45-xml | |
19 | BuildRequires: libstdc++-devel | |
20 | BuildRequires: libxslt-progs | |
21 | BuildRequires: pcre-devel | |
22 | BuildRequires: rpmbuild(macros) >= 1.603 | |
10d3f39e | 23 | BuildRequires: sed >= 4.0 |
df7f2cc2 JB |
24 | BuildRequires: tinyxml-devel |
25 | %if %{with gui} | |
26 | BuildRequires: QtGui-devel >= 4 | |
27 | BuildRequires: QtHelp-devel >= 4 | |
1fb5d46f | 28 | BuildRequires: qt4-build >= 4 |
df7f2cc2 JB |
29 | BuildRequires: qt4-linguist >= 4 |
30 | BuildRequires: qt4-qmake >= 4 | |
31 | %endif | |
32 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
33 | ||
34 | %description | |
35 | cppcheck is an analysis tool for C/C++ code. Unlike C/C++ compilers | |
36 | and many other analysis tools, it doesn't detect syntax errors. | |
37 | cppcheck only detects the types of bugs that the compilers normally | |
38 | fail to detect. The goal is no false positives. | |
39 | ||
40 | %description -l pl.UTF-8 | |
41 | cppcheck to narzędzie do analizy kodu w C/C++. W przeciwieństwie do | |
42 | kompilatorów i innych narzędzi do analizy, nie wykrywa błędów | |
43 | składni. Wykrywa tylko te rodzaje błędów, których zwykle nie wykrywają | |
44 | kompilatory. Celem jest brak fałszywych alarmów. | |
45 | ||
46 | %package gui | |
47 | Summary: Qt4-based GUI for cppcheck | |
48 | Summary(pl.UTF-8): Oparty na Qt4 graficzny interfejs użytkownika do cppcheck | |
49 | Group: X11/Applications | |
50 | Requires: %{name} = %{version}-%{release} | |
51 | ||
52 | %description gui | |
53 | Qt4-based GUI for cppcheck. | |
54 | ||
55 | %description gui -l pl.UTF-8 | |
56 | Oparty na Qt4 graficzny interfejs użytkownika do cppcheck. | |
57 | ||
58 | %prep | |
59 | %setup -q | |
60 | %patch0 -p1 | |
61 | ||
10d3f39e JB |
62 | %{__sed} -i -e 's,-I[^ ]*/externals,,g' lib/lib.pri |
63 | ||
df7f2cc2 JB |
64 | %build |
65 | %{__make} all man \ | |
66 | CXX="%{__cxx}" \ | |
67 | CXXFLAGS="%{rpmcxxflags} -DNDEBUG -DHAVE_RULES -DTIXML_USE_STL -Wall" \ | |
68 | INCLUDE_FOR_CLI="-Ilib" \ | |
69 | INCLUDE_FOR_TEST="-Ilib -Icli" \ | |
70 | LDFLAGS="%{rpmldflags} -lpcre" \ | |
71 | TINYXML="%{_libdir}/libtinyxml.so" \ | |
72 | DB2MAN=%{_datadir}/sgml/docbook/xsl-stylesheets/manpages/docbook.xsl | |
73 | ||
74 | %if %{with gui} | |
75 | cd gui | |
76 | qmake-qt4 \ | |
77 | QMAKE_CXX="%{__cxx}" \ | |
78 | QMAKE_CXXFLAGS_RELEASE="%{rpmcxxflags}" \ | |
79 | QMAKE_LFLAGS_RELEASE="%{rpmldflags}" | |
80 | %{__make} | |
81 | lrelease-qt4 cppcheck_*.ts | |
82 | # compiled version not used yet (code refers to manual.html at sf.net) | |
83 | #cd help | |
84 | #%{_libdir}/qt4/bin/qcollectiongenerator online-help.qhcp -o online-help.qhc | |
85 | %endif | |
86 | ||
87 | %install | |
88 | rm -rf $RPM_BUILD_ROOT | |
89 | ||
90 | %{__make} install \ | |
10d3f39e JB |
91 | DESTDIR=$RPM_BUILD_ROOT \ |
92 | TINYXML="%{_libdir}/libtinyxml.so" | |
93 | ||
94 | install -Dp cppcheck.1 $RPM_BUILD_ROOT%{_mandir}/man1/cppcheck.1 | |
df7f2cc2 JB |
95 | |
96 | %if %{with gui} | |
97 | install -d $RPM_BUILD_ROOT{%{_bindir},%{_datadir}/cppcheck-gui} | |
98 | install gui/cppcheck-gui $RPM_BUILD_ROOT%{_bindir} | |
99 | install -p gui/cppcheck_*.qm $RPM_BUILD_ROOT%{_datadir}/cppcheck-gui | |
100 | %{__make} -C gui install \ | |
101 | DESTDIR=$RPM_BUILD_ROOT | |
102 | %endif | |
103 | ||
104 | %clean | |
105 | rm -rf $RPM_BUILD_ROOT | |
106 | ||
107 | %files | |
108 | %defattr(644,root,root,755) | |
109 | %doc AUTHORS Changelog readme.txt | |
110 | %attr(755,root,root) %{_bindir}/cppcheck | |
10d3f39e | 111 | %{_mandir}/man1/cppcheck.1* |
df7f2cc2 JB |
112 | |
113 | %if %{with gui} | |
114 | %files gui | |
115 | %defattr(644,root,root,755) | |
116 | %doc readme_gui.txt | |
117 | %attr(755,root,root) %{_bindir}/cppcheck-gui | |
118 | %dir %{_datadir}/cppcheck-gui | |
119 | %lang(de) %{_datadir}/cppcheck-gui/cppcheck_de.qm | |
120 | %{_datadir}/cppcheck-gui/cppcheck_en.qm | |
121 | %lang(es) %{_datadir}/cppcheck-gui/cppcheck_es.qm | |
122 | %lang(fi) %{_datadir}/cppcheck-gui/cppcheck_fi.qm | |
123 | %lang(fr) %{_datadir}/cppcheck-gui/cppcheck_fr.qm | |
124 | %lang(ja) %{_datadir}/cppcheck-gui/cppcheck_ja.qm | |
125 | %lang(nl) %{_datadir}/cppcheck-gui/cppcheck_nl.qm | |
126 | %lang(pl) %{_datadir}/cppcheck-gui/cppcheck_pl.qm | |
127 | %lang(ru) %{_datadir}/cppcheck-gui/cppcheck_ru.qm | |
128 | %lang(sr) %{_datadir}/cppcheck-gui/cppcheck_sr.qm | |
129 | %lang(sv) %{_datadir}/cppcheck-gui/cppcheck_sv.qm | |
130 | %endif |