]> git.pld-linux.org Git - packages/R.git/blame_incremental - R.spec
icu rebuild
[packages/R.git] / R.spec
... / ...
CommitLineData
1#
2# Conditional build
3%bcond_without openmp # OpenMP support
4%bcond_without tcl # Tcl/Tk support
5%bcond_without tests # do not run "make check"
6%bcond_without doc # do not build documentation
7#
8# NOTE:
9# - /etc/localtime must be present for tests to work
10#
11# TODO:
12# - script for rpm to autoprovides/autorequires R internals
13#
14Summary: A language for data analysis and graphics
15Summary(pl.UTF-8): Język do analizy danych oraz grafiki
16Name: R
17Version: 4.1.3
18Release: 2
19License: mixed (distributable), mostly GPL v2+
20Group: Development/Languages
21Source0: https://cran.r-project.org/src/base/R-4/%{name}-%{version}.tar.gz
22# Source0-md5: 409bc782b1a42c8247712f6446d7d640
23Source1: %{name}.desktop
24Source2: %{name}.xpm
25Patch0: %{name}-timezone.patch
26Patch1: curl8.patch
27URL: https://www.r-project.org/
28# yes, it is, or tests will fail
29BuildRequires: /etc/localtime
30BuildRequires: autoconf >= 2.69
31BuildRequires: automake
32BuildRequires: blas-devel >= 3.2.2-2
33BuildRequires: bzip2-devel >= 1.0.6
34BuildRequires: cairo-devel >= 1.6
35BuildRequires: curl-devel >= 7.28.0
36BuildRequires: gcc-fortran
37BuildRequires: gettext-tools >= 0.16.1
38BuildRequires: lapack-devel >= 3.2.2-2
39%{?with_openmp:BuildRequires: libgomp-devel}
40BuildRequires: libicu-devel
41BuildRequires: libjpeg-devel >= 6b
42BuildRequires: libpng-devel >= 2:1.2.7
43BuildRequires: libstdc++-devel
44BuildRequires: libtiff-devel
45BuildRequires: libtirpc-devel
46BuildRequires: libtool >= 2:2.0
47BuildRequires: pango-devel
48BuildRequires: pcre2-8-devel
49BuildRequires: perl-base >= 1:5.6
50BuildRequires: pkgconfig
51BuildRequires: readline-devel
52BuildRequires: rpm-perlprov
53%if %{with tcl}
54BuildRequires: tcl-devel >= 8.4
55BuildRequires: tk-devel >= 8.4
56%endif
57# 0.8.0 is too old currently (checking for tre_regncompb in -ltre... no)
58#BuildRequires: tre-devel >= ?
59%if %{with doc}
60BuildRequires: texinfo-texi2dvi >= 4.7
61BuildRequires: texlive-dvips
62BuildRequires: texlive-latex
63BuildRequires: texlive-latex-ae
64BuildRequires: texlive-pdftex
65%endif
66BuildRequires: xorg-lib-libX11-devel
67BuildRequires: xorg-lib-libXmu-devel
68BuildRequires: xorg-lib-libXt-devel
69BuildRequires: xz-devel >= 5.0.3
70BuildRequires: zip
71BuildRequires: zlib-devel >= 1.2.3
72#Requires: lpr
73Requires(post): perl-base
74Requires(post): textutils
75Requires: blas >= 3.2.2-2
76Requires: bzip2 >= 1.0.6
77Requires: curl-libs >= 7.28.0
78Requires: pcre >= 8.32
79Requires: xz-libs >= 5.0.3
80Requires: zlib >= 1.2.3
81Suggests: rkward
82Obsoletes: R-base
83Obsoletes: R-contrib
84Obsoletes: R-recommended
85BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
86
87%description
88A system for statistical computation and graphics. R consists of a
89language plus a run-time environment with graphics, a debugger, access
90to certain system functions, and the ability to run programs stored in
91script files.
92
93The design of R has been heavily influenced by two existing languages:
94Becker, Chambers & Wilks' S and Sussman's Scheme. Whereas the
95resulting language is very similar in appearance to S, the underlying
96implementation and semantics are derived from Scheme.
97
98%description -l pl.UTF-8
99System do obliczeń statystycznych i grafiki. R składa się z języka
100oraz środowiska uruchomieniowego z grafiką, debuggerem, dostępem do
101niektórych funkcji systemowych oraz możliwością uruchamiania programów
102zapisanych w skryptach.
103
104Język R był zainspirowany dwoma istniejącymi językami: S (Beckera,
105Chambersa i Wilksa) oraz Scheme (Sussmana). R jest podobny do S, ale
106implementacja i semantyka wywodzi się ze Scheme.
107
108%package java-tools
109Summary: R Java tools
110Summary(pl.UTF-8): Narzędzia R w Javie
111Group: Development/Tools
112Requires: %{name} = %{version}-%{release}
113
114%description java-tools
115R Java classes.
116
117%description java-tools -l pl.UTF-8
118Narzędzia R w Javie.
119
120%prep
121%setup -q
122%patch0 -p1
123%patch1 -p0
124
125%build
126%{__aclocal} -I m4
127%{__autoconf}
128install -d build
129cd build
130../%configure \
131 F77=gfortran \
132 FC=gfortran \
133 --enable-R-shlib \
134 --enable-largefile \
135 %{!?with_openmp:--disable-openmp} \
136 --with-internal-tzcode \
137 --with-ICU \
138 --with-blas \
139 --with-cairo \
140 --with-jpeglib \
141 --with-lapack \
142 --with-libpng \
143 --with-readline \
144 --with-recommended-packages \
145 --with-system-tre \
146%if %{with tcl}
147 --with-tcltk \
148 --with-tcl-config=/usr/lib/tclConfig.sh \
149 --with-tk-config=/usr/lib/tkConfig.sh \
150%else
151 --without-tcltk \
152%endif
153 --with-x
154
155%{__make} -j1
156
157%if %{with tests}
158%{__make} check
159%endif
160
161%if %{with doc}
162%{__make} docs pdf info
163%endif
164
165%install
166rm -rf $RPM_BUILD_ROOT
167install -d $RPM_BUILD_ROOT{%{_bindir},%{_mandir}/man1,%{_libdir}/R,%{_includedir},%{_desktopdir},%{_pixmapsdir}}
168
169%{__make} -C build -j1 install \
170 DESTDIR=$RPM_BUILD_ROOT
171
172install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
173install %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir}
174
175ln -sf %{_libdir}/R/lib/libR.so $RPM_BUILD_ROOT%{_libdir}
176
177%{__mv} $RPM_BUILD_ROOT%{_libdir}/%{name}/include $RPM_BUILD_ROOT%{_includedir}/R
178ln -sf %{_includedir}/R $RPM_BUILD_ROOT%{_libdir}/R/include
179
180gen_lang() {
181 dir="$1"
182 for d in $RPM_BUILD_ROOT${dir}/* ; do
183 bd=$(basename $d)
184 lang="${bd%@*}"
185 echo "%lang($lang) ${dir}/${bd}"
186 done
187}
188
189for moddir in $RPM_BUILD_ROOT%{_libdir}/R/library/* ; do
190 module=$(basename $moddir)
191 echo "%dir %{_libdir}/R/library/${module}"
192 if [ "$module" = "translations" ]; then
193 for f in $moddir/* ; do
194 bf=$(basename $f)
195 case "$bf" in
196 DESCRIPTION|en|en@quot)
197 echo "%{_libdir}/R/library/${module}/${bf}"
198 ;;
199 *)
200 echo "%lang(${bf}) %{_libdir}/R/library/${module}/${bf}"
201 ;;
202 esac
203 done
204 else
205 for f in $moddir/* ; do
206 bf=$(basename $f)
207 case "$bf" in
208 po)
209 echo "%dir %{_libdir}/R/library/${module}/po"
210 gen_lang %{_libdir}/R/library/${module}/po
211 ;;
212 libs)
213 echo "%dir %{_libdir}/R/library/${module}/libs"
214 echo "%attr(755,root,root) %{_libdir}/R/library/${module}/libs/*.so"
215 ;;
216 *)
217 echo "%{_libdir}/R/library/${module}/${bf}"
218 ;;
219 esac
220 done
221 fi
222done > R.files
223
224# just GPL
225%{__rm} $RPM_BUILD_ROOT%{_libdir}/R/doc/COPYING
226# packaged as %doc
227%{__rm} $RPM_BUILD_ROOT%{_libdir}/R/doc/{AUTHORS,COPYRIGHTS,FAQ,NEWS.rds,THANKS}
228%if %{with doc}
229# pdf version of NEWS
230%{__rm} $RPM_BUILD_ROOT%{_libdir}/R/doc/NEWS.pdf
231%endif
232
233%clean
234rm -rf $RPM_BUILD_ROOT
235
236%post -p /sbin/ldconfig
237%postun -p /sbin/ldconfig
238
239%files -f R.files
240%defattr(644,root,root,755)
241%doc README doc/{AUTHORS,COPYRIGHTS,FAQ,NEWS,NEWS.[012],RESOURCES,THANKS}
242%attr(755,root,root) %{_bindir}/R
243%attr(755,root,root) %{_bindir}/Rscript
244%dir %{_libdir}/R
245%dir %{_libdir}/R/lib
246%attr(755,root,root) %{_libdir}/R/lib/libR.so
247%attr(755,root,root) %{_libdir}/libR.so
248%{_libdir}/R/COPYING
249%{_libdir}/R/SVN-REVISION
250%attr(755,root,root) %{_libdir}/R/bin
251%exclude %{_libdir}/R/bin/javareconf
252# %{_libdir}/R/doc %except %{_libdir}/R/doc/html/{packages.html,search/index.txt}
253%dir %{_libdir}/R/doc
254%{_libdir}/R/doc/[KRm]*
255%{_libdir}/R/doc/BioC_mirrors.csv
256%{_libdir}/R/doc/CRAN_mirrors.csv
257%{_libdir}/R/doc/NEWS*
258%dir %{_libdir}/R/doc/html
259%{_libdir}/R/doc/html/Rlogo.svg
260%{_libdir}/R/doc/html/*.css
261%{_libdir}/R/doc/html/[NRSa-lr-u]*.html
262%{_libdir}/R/doc/html/packages-head*.html
263%{_libdir}/R/doc/html/favicon.ico
264%{_libdir}/R/doc/html/*.jpg
265%ghost %{_libdir}/R/doc/html/packages.html
266%{_libdir}/R/etc
267%{_libdir}/R/include
268%dir %{_libdir}/R/library
269# library files list is autogenerated (see R.files above)
270%attr(755,root,root) %{_libdir}/R/modules
271%dir %{_libdir}/R/share
272%{_libdir}/R/share/R
273%{_libdir}/R/share/Rd
274%{_libdir}/R/share/dictionaries
275%{_libdir}/R/share/encodings
276%{_libdir}/R/share/licenses
277%{_libdir}/R/share/make
278%{_libdir}/R/share/sh
279%{_libdir}/R/share/texmf
280%{_libdir}/R/share/zoneinfo
281%{_desktopdir}/R.desktop
282%{_pixmapsdir}/R.xpm
283%{_includedir}/R
284%{_pkgconfigdir}/libR.pc
285%{_mandir}/man1/R.1*
286%{_mandir}/man1/Rscript*
287
288%files java-tools
289%defattr(644,root,root,755)
290%attr(755,root,root) %{_libdir}/R/bin/javareconf
291%{_libdir}/R/share/java
This page took 0.063286 seconds and 5 git commands to generate.