]>
Commit | Line | Data |
---|---|---|
28017357 ER |
1 | Summary: The ATerm Library |
2 | Name: atermlib | |
3 | Version: 2.5 | |
4 | Release: 1 | |
5 | License: LGPL | |
6 | Group: Development | |
7 | Source0: http://ftp.strategoxt.org/pub/stratego/StrategoXT/strategoxt-0.17/aterm-%{version}.tar.gz | |
8 | # Source0-md5: 60218283e58c56365c9117690f36c25d | |
9 | Patch0: https://svn.nixos.org/repos/nix/nixpkgs/trunk/pkgs/development/libraries/aterm/max-long.patch | |
10 | # Patch0-md5: 0c7e50b3686a079959e7c978af9444db | |
11 | Patch1: strdup.patch | |
12 | URL: http://www.cwi.nl/htbin/sen1/twiki/bin/view/SEN1/ATermLibrary | |
13 | # x86_64 build segfaults | |
14 | ExcludeArch: %{x8664} | |
15 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
16 | ||
17 | %description | |
18 | ATerm (short for Annotated Term) is an abstract data type designed for | |
19 | the exchange of tree-like data structures between distributed | |
20 | applications. | |
21 | ||
22 | The ATerm library forms a comprehensive procedural interface which | |
23 | enables creation and manipulation of ATerms in C and Java. The ATerm | |
24 | implementation is based on maximal subterm sharing and automatic | |
25 | garbage collection. | |
26 | ||
27 | A binary exchange format for the concise representation of ATerms | |
28 | (sharing preserved) allows the fast exchange of ATerms between | |
29 | applications. In a typical application---parse trees which contain | |
30 | considerable redundant information---less than 2 bytes are needed to | |
31 | represent a node in memory, and less than 2 bits are needed to | |
32 | represent it in binary format. The implementation of ATerms scales up | |
33 | to the manipulation of ATerms in the giga-byte range. | |
34 | ||
35 | Programming | |
36 | ||
37 | The ATerm library provides a comprehensive interface in C and Java to | |
38 | handle the annotated term data-type in an efficient manner. If the | |
39 | terms you handle are limited to a specific signature, you can use | |
40 | ApiGen to generate typed interfaces to the same ATerms. | |
41 | ||
42 | %prep | |
43 | %setup -q -n aterm-%{version} | |
44 | %patch0 -p1 | |
45 | %patch1 -p1 | |
46 | ||
47 | %build | |
48 | CFLAGS="%{rpmcflags} -D__NO_CTYPE" | |
49 | %configure \ | |
50 | --disable-static | |
51 | %{__make} -j1 | |
52 | ||
53 | %install | |
54 | rm -rf $RPM_BUILD_ROOT | |
55 | %{__make} install \ | |
56 | INSTALL="install -p" \ | |
57 | DESTDIR=$RPM_BUILD_ROOT | |
58 | ||
59 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/libATerm.la | |
60 | ||
61 | %clean | |
62 | rm -rf $RPM_BUILD_ROOT | |
63 | ||
64 | %files | |
65 | %defattr(644,root,root,755) | |
66 | %attr(755,root,root) %{_bindir}/atdiff | |
67 | %attr(755,root,root) %{_bindir}/atreverse | |
68 | %attr(755,root,root) %{_bindir}/atrmannos | |
69 | %attr(755,root,root) %{_bindir}/atsum | |
70 | %attr(755,root,root) %{_bindir}/baf2taf | |
71 | %attr(755,root,root) %{_bindir}/baf2trm | |
72 | %attr(755,root,root) %{_bindir}/baffle | |
73 | %attr(755,root,root) %{_bindir}/dicttoc | |
74 | %attr(755,root,root) %{_bindir}/taf2baf | |
75 | %attr(755,root,root) %{_bindir}/taf2trm | |
76 | %attr(755,root,root) %{_bindir}/termsize | |
77 | %attr(755,root,root) %{_bindir}/trm2baf | |
78 | %attr(755,root,root) %{_bindir}/trm2taf | |
79 | %attr(755,root,root) %{_bindir}/trmcat | |
80 | %{_includedir}/abool.h | |
81 | %{_includedir}/afun.h | |
82 | %{_includedir}/aterm1.h | |
83 | %{_includedir}/aterm2.h | |
84 | %{_includedir}/atypes.h | |
85 | %{_includedir}/deprecated.h | |
86 | %{_includedir}/encoding.h | |
87 | %attr(755,root,root) %{_libdir}/libATerm.so | |
88 | %{_pkgconfigdir}/aterm.pc |