Blob Blame History Raw
Name: sparse
Version: 0.4.1
Release: 1%{?dist}
Summary:    A semantic parser of source files
Group:      Development/Tools
License:    OSL 1.1
URL:        http://www.kernel.org/pub/software/devel/sparse/
Source0:    http://www.kernel.org/pub/software/devel/sparse/dist/sparse-%{version}.tar.bz2
BuildRoot:  %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildRequires: libxml2-devel

%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 devel
Summary: Build environment for sparse-enabled apps
Group: Development/Libraries
Requires: pkgconfig
Provides: %{name}-static = %{version}-%{release}

%description devel
Development headers headers and static lib for sparse-enabled apps

%prep
%setup -q

%define make_destdir \
make DESTDIR="%{buildroot}" PREFIX="%{_prefix}" \\\
     BINDIR="%{_bindir}" LIBDIR="%{_libdir}" \\\
     INCLUDEDIR="%{_includedir}" PKGCONFIGDIR="%{_libdir}/pkgconfig" \\\
%{nil}

%build
%make_destdir %{?_smp_mflags} CFLAGS="%{optflags} -Wwrite-strings -fpic"

%install
rm -rf %{buildroot}
mkdir -p %{buildroot}%{_bindir}
mkdir -p %{buildroot}%{_libdir}
%make_destdir install

%check
make check

%clean
rm -rf %{buildroot}
make clean


%files
%defattr(-,root,root,-)
%doc LICENSE README FAQ
%{_bindir}/sparse
%{_bindir}/cgcc
%{_bindir}/c2xml
%{_mandir}/man1/*

%files devel
%defattr(-,root,root,-)
%doc LICENSE
%{_includedir}/*
%{_libdir}/libsparse.a
%{_libdir}/pkgconfig/%{name}.pc


%changelog
* Tue Nov 13 2007 Roland McGrath <roland@redhat.com> - 0.4.1-1
- Upgrade to 0.4.1

* Thu Nov  1 2007 Roland McGrath <roland@redhat.com> - 0.4-2
- Upgrade to 0.4
- Install man pages, c2xml.
- Run make check in rpmbuild.

* Tue Aug 28 2007 Roland McGrath <roland@redhat.com> - 0.3-2
- Canonicalize License: tag.

* Thu May  3 2007 Roland McGrath <roland@redhat.com> - 0.3-1
- Upgrade to 0.3

* Tue Dec 05 2006 Matt Domsch <Matt_Domsch@dell.com> 0.2-1
- Upgrade to 0.2, add -devel package

* Thu Nov 09 2006 Matt Domsch <Matt_Domsch@dell.com> 0.1-1
- Upgrade to 0.1, no need for snapshots, yea!  New upstream maintainer.
- cgcc now installed

* Thu Oct 26 2006 Matt Domsch <Matt_Domsch@dell.com> 0-0.1.20061026git
- Initial packaging for Fedora Extras