]> git.pld-linux.org Git - packages/sparse.git/blob - sparse.spec
Release: 3 (rebuild with rtti llvm 7)
[packages/sparse.git] / sparse.spec
1 Summary:        Sparse - a semantic parser of source files
2 Summary(pl.UTF-8):      Sparse - analizator semantyczny plików źródłowych
3 Name:           sparse
4 Version:        0.5.2
5 Release:        3
6 License:        OSL v1.1
7 Group:          Development/Debuggers
8 Source0:        https://www.kernel.org/pub/software/devel/sparse/dist/%{name}-%{version}.tar.xz
9 # Source0-md5:  1eeec1b3cd53caedfad6175df4fa87a6
10 Patch0:         %{name}-llvm.patch
11 URL:            https://www.kernel.org/pub/software/devel/sparse/
12 BuildRequires:  gtk+3-devel >= 3.0
13 BuildRequires:  libxml2-devel >= 2.0
14 BuildRequires:  llvm-devel >= 3.0
15 BuildRequires:  pkgconfig
16 BuildRequires:  tar >= 1:1.22
17 BuildRequires:  xz
18 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
19
20 %description
21 Sparse is a semantic parser of source files: it's neither a compiler
22 (although it could be used as a front-end for one) nor is it a
23 preprocessor (although it contains as a part of it a preprocessing
24 phase).
25
26 It is meant to be a small - and simple - library. Scanty and meager,
27 and partly because of that easy to use. It has one mission in life:
28 create a semantic parse tree for some arbitrary user for further
29 analysis. It's not a tokenizer, nor is it some generic context-free
30 parser. In fact, context (semantics) is what it's all about - figuring
31 out not just what the grouping of tokens are, but what the _types_ are
32 that the grouping implies.
33
34 %description -l pl.UTF-8
35 Sparse to analizator semantyczny plików źródłowych - nie jest to ani
36 kompilator (choć mógłby być używany jako frontend dla niego) ani
37 preprocesor (choć zawiera jako część fazę preprocesingu).
38
39 Sparse ma być małą i prostą biblioteką. Ledwie wystarczającą i
40 niewielką, i po części dlatego łatwą w użyciu. Ma jedno zadanie:
41 utworzyć drzewo semantyczne analizy do dowolnego późniejszego
42 wykorzystania. Nie jest to tokenizer ani żaden ogólny analizator
43 bezkontekstowy. Właściwie kontekst (semantyka) to wszystko co
44 istotne - przedstawianie nie tylko czym są grupowane tokeny, ale tego,
45 czym są _typy_ obejmowane przez grupowanie.
46
47 %prep
48 %setup -q
49 %patch0 -p1
50
51 %build
52 %{__make} \
53         CC="%{__cc}" \
54         CFLAGS="%{rpmcflags} -fpic" \
55         LDFLAGS="%{rpmldflags}" \
56         PREFIX="%{_prefix}" \
57         LIBDIR="%{_libdir}" \
58         V=1
59
60 %install
61 rm -rf $RPM_BUILD_ROOT
62
63 %{__make} install \
64         PREFIX="%{_prefix}" \
65         LIBDIR="%{_libdir}" \
66         DESTDIR=$RPM_BUILD_ROOT
67
68 %clean
69 rm -rf $RPM_BUILD_ROOT
70
71 %files
72 %defattr(644,root,root,755)
73 %doc FAQ LICENSE README
74 %attr(755,root,root) %{_bindir}/c2xml
75 %attr(755,root,root) %{_bindir}/cgcc
76 %attr(755,root,root) %{_bindir}/sparse
77 %attr(755,root,root) %{_bindir}/sparse-llvm
78 %attr(755,root,root) %{_bindir}/sparsec
79 %attr(755,root,root) %{_bindir}/test-inspect
80 %{_includedir}/%{name}
81 %{_libdir}/libsparse.a
82 %{_pkgconfigdir}/sparse.pc
83 %{_mandir}/man1/cgcc.1*
84 %{_mandir}/man1/sparse.1*
This page took 0.060395 seconds and 4 git commands to generate.