File sparse.spec of Package sparse
#
# spec file for package sparse
#
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: sparse
Summary: A semantic parser of source files
License: OSL-1.1
Group: Development/Tools/Building
Version: 20130425
Release: 0
Url: https://sparse.wiki.kernel.org/index.php/Main_Page
Source: sparse-%{version}.tar.xz
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: gtk2-devel
BuildRequires: libxml2-devel
BuildRequires: pkg-config
BuildRequires: xz
%description
Sparse is a semantic parser of source files: it's neither a compiler
(although it could be used as a front-end for one) nor is it a
preprocessor (although it contains as a part of it a preprocessing
phase).
It is meant to be a small - and simple - library. Scanty and meager,
and partly because of that easy to use. It has one mission in life:
create a semantic parse tree for some arbitrary user for further
analysis. It's not a tokenizer, nor is it some generic context-free
parser. In fact, context (semantics) is what it's all about - figuring
out not just what the grouping of tokens are, but what the _types_ are
that the grouping implies.
Sparse is primarily used in the development and debugging of the Linux
kernel.
%package -n sparse-devel
Summary: Devel files for sparse
Group: Development/Libraries/C and C++
%description -n sparse-devel
Development headers and libraries for sparse.
%package -n sparse-inspect
Summary: Inspect binary from sparse
Group: Development/Libraries/C and C++
%description -n sparse-inspect
test-inspect is a gtk frontend for sparse.
%prep
%setup -q
%build
make %{?_smp_mflags} PREFIX=%{_prefix} LIBDIR=%{_libdir} MANDIR=%{_mandir} \
PKGCONFIGDIR=%{_datadir}/pkgconfig CFLAGS="%{optflags}"
%install
make install DESTDIR=$RPM_BUILD_ROOT \
PREFIX=%{_prefix} LIBDIR=%{_libdir} MANDIR=%{_mandir} \
PKGCONFIGDIR=%{_datadir}/pkgconfig
%files
%defattr(-,root,root)
%doc LICENSE README FAQ
%{_mandir}/man?/cgcc.1.gz
%{_mandir}/man?/sparse.1.gz
%{_bindir}/c2xml
%{_bindir}/cgcc
%{_bindir}/sparse
%files -n sparse-inspect
%defattr(-,root,root)
%{_bindir}/test-inspect
%files -n sparse-devel
%defattr(-,root,root)
%{_includedir}/sparse
%{_libdir}/libsparse.a
%{_datadir}/pkgconfig/sparse.pc
%changelog