1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
|
Name: ppl
Version: 0.11.2
Release: 0
License: GPL-3.0+
Summary: The Parma Polyhedra Library
Url: http://www.cs.unipr.it/ppl/
Group: Development/Libraries/C and C++
Source: ppl-%{version}.tar.bz2
Source1: baselibs.conf
Source1001: ppl.manifest
BuildRequires: gcc-c++
BuildRequires: gmp-devel >= 4.1.3
%description
The Parma Polyhedra Library (PPL) is a library for the manipulation of
(not necessarily closed) convex polyhedra and other numerical
abstractions. The applications of convex polyhedra include program
analysis, optimized compilation, integer and combinatorial optimization
and statistical data-editing. The Parma Polyhedra Library comes with
several user friendly interfaces, is fully dynamic (available virtual
memory is the only limitation to the dimension of anything), written in
accordance to all the applicable standards, exception-safe, rather
efficient, thoroughly documented, and free software. This package
provides all what is necessary to run applications using the PPL
through its C and C++ interfaces.
%package devel
Summary: Development tools for the Parma Polyhedra Library C and C++ interfaces
Group: Development/Libraries/C and C++
Requires: gmp-devel >= 4.1.3
Requires: libppl = %{version}
Requires: libppl_c = %{version}
%description devel
The header files, Autoconf macro, and ppl-config tool for developing
applications using the Parma Polyhedra Library through its C and C++
interfaces.
%package devel-static
Summary: Static libraries for the Parma Polyhedra Library C and C++ interfaces
Group: Development/Libraries/C and C++
Requires: ppl-devel = %{version}
%description devel-static
Static libraries for the Parma Polyhedra Library C and C++ interfaces.
%package -n libppl
Summary: Shared library for the Parma Polyhedra Library
Group: Development/Libraries/C and C++
%description -n libppl
Shared library for the Parma Polyhedra Library.
%package -n libppl_c
Summary: Shared library for the Parma Polyhedra Library C bindings
Group: Development/Libraries/C and C++
%description -n libppl_c
Shared library for the Parma Polyhedra Library C bindings.
%package doc
Summary: Documentation for the Parma Polyhedra Library
Group: Development/Libraries/C and C++
BuildArch: noarch
%description doc
This package contains all the documentations required by programmers
using the Parma Polyhedra Library (PPL). Install this package if you
want to program with the PPL.
%prep
%setup -q -n ppl-%{version}
cp %{SOURCE1001} .
%build
%configure --enable-shared --with-pic --disable-rpath \
--disable-watchdog
#sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
#sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
make %{?_smp_mflags}
%install
make DESTDIR=%{buildroot} INSTALL="install -p" install
# We don't build the binary, so delete its manpage
rm -f %{buildroot}%{_mandir}/man1/ppl_lpsol.1
# We don't build pwl
rm -Rf %{buildroot}%{_datadir}/doc/pwl
# The pdf is enough
rm -f %{buildroot}%{_datadir}/doc/%{name}/ppl-user-*.ps.gz
rm -f %{buildroot}%{_datadir}/doc/%{name}/ChangeLog
rm -f %{buildroot}%{_datadir}/doc/%{name}/TODO
rm -f %{buildroot}%{_datadir}/doc/%{name}/gpl.*
rm -f %{buildroot}%{_datadir}/doc/%{name}/fdl.ps.gz
rm -f %{buildroot}%{_datadir}/doc/%{name}/fdl.pdf
rm -Rf %{buildroot}%{_datadir}/doc/%{name}/ppl-user-prolog-interface-%{version}*
rm -Rf %{buildroot}%{_datadir}/doc/%{name}/ppl-user-ocaml-interface-%{version}*
rm -Rf %{buildroot}%{_datadir}/doc/%{name}/ppl-user-java-interface-%{version}*
%post -n libppl -p /sbin/ldconfig
%postun -n libppl -p /sbin/ldconfig
%post -n libppl_c -p /sbin/ldconfig
%postun -n libppl_c -p /sbin/ldconfig
%files
%manifest %{name}.manifest
%defattr(-,root,root,-)
%dir %{_datadir}/doc/%{name}
%doc %{_datadir}/doc/%{name}/BUGS
%doc %{_datadir}/doc/%{name}/COPYING
%doc %{_datadir}/doc/%{name}/CREDITS
%doc %{_datadir}/doc/%{name}/NEWS
%doc %{_datadir}/doc/%{name}/README
%{_bindir}/ppl_lcdd
%{_bindir}/ppl_pips
%{_mandir}/man1/ppl_lcdd.1.gz
%{_mandir}/man1/ppl_pips.1.gz
%files -n libppl
%manifest %{name}.manifest
%defattr(-,root,root,-)
%{_libdir}/libppl.so.*
%files -n libppl_c
%manifest %{name}.manifest
%defattr(-,root,root,-)
%{_libdir}/libppl_c.so.*
%files devel
%manifest %{name}.manifest
%defattr(-,root,root,-)
%doc %{_datadir}/doc/%{name}/README.configure
%{_includedir}/ppl.hh
%{_includedir}/ppl_c.h
%{_libdir}/libppl.so
%{_libdir}/libppl_c.so
%{_bindir}/ppl-config
%{_mandir}/man1/ppl-config.1.gz
%{_mandir}/man3/libppl.3.gz
%{_mandir}/man3/libppl_c.3.gz
%dir %{_datadir}/aclocal
%{_datadir}/aclocal/ppl.m4
%{_datadir}/aclocal/ppl_c.m4
%files devel-static
%manifest %{name}.manifest
%defattr(-,root,root,-)
%{_libdir}/libppl.a
%{_libdir}/libppl.la
%{_libdir}/libppl_c.a
%{_libdir}/libppl_c.la
%files doc
%manifest %{name}.manifest
%defattr(-,root,root,-)
%doc %{_datadir}/doc/%{name}/README.doc
%doc %{_datadir}/doc/%{name}/fdl.txt
%doc %{_datadir}/doc/%{name}/ppl-user-%{version}-html/
%doc %{_datadir}/doc/%{name}/ppl-user-c-interface-%{version}-html/
%doc %{_datadir}/doc/%{name}/ppl-user-%{version}.pdf
%doc %{_datadir}/doc/%{name}/ppl-user-c-interface-%{version}.pdf
|