1 |
%define _binary_payload w9.gzdio |
2 |
%define _source_payload w9.gzdio |
3 |
|
4 |
# need to bootstrap first |
5 |
# - xindy need clisp in main |
6 |
# - let asymptote be packaged separately, asthe generated one is known |
7 |
# to not be fully functional |
8 |
%define enable_asymptote 0 |
9 |
%define enable_xindy 0 |
10 |
|
11 |
#in its own package. |
12 |
%define enable_xdvik 0 |
13 |
%define enable_dvi2tty 0 |
14 |
|
15 |
%define with_system_poppler 1 |
16 |
%define with_system_dialog 1 |
17 |
%define with_system_lcdf 0 |
18 |
%define with_system_psutils 1 |
19 |
%define with_system_t1lib 1 |
20 |
%define with_system_tex4ht 0 |
21 |
%define with_system_teckit 0 |
22 |
|
23 |
%define enable_shared 1 |
24 |
|
25 |
%define texmfbindir %{_bindir} |
26 |
%define texmfdir %{_datadir}/texmf |
27 |
%define texmfdistdir %{_datadir}/texmf-dist |
28 |
%define texmflocaldir %{_datadir}/texmf-local |
29 |
%define texmfextradir %{_datadir}/texmf-extra |
30 |
%define texmffontsdir %{_datadir}/texmf-fonts |
31 |
%define texmfprojectdir %{_datadir}/texmf-project |
32 |
%define texmfvardir %{_localstatedir}/lib/texmf |
33 |
%define texmfconfdir %{_sysconfdir}/texmf |
34 |
|
35 |
#----------------------------------------------------------------------- |
36 |
Name: texlive |
37 |
Version: 20110705 |
38 |
Release: %mkrel 6 |
39 |
Summary: The TeX formatting system |
40 |
Group: Publishing |
41 |
License: http://www.tug.org/texlive/LICENSE.TL |
42 |
URL: http://tug.org/texlive/ |
43 |
Source0: ftp://tug.org/historic/systems/texlive/2011/texlive-20110705-source.tar.xz |
44 |
Source1: ftp://tug.org/historic/systems/texlive/2011/texlive-20110705-source.tar.xz.sha256 |
45 |
|
46 |
Provides: tetex = %{version}-%{release} |
47 |
Provides: context = %{version}-%{release} |
48 |
Provides: dvipdfm = %{version}-%{release} |
49 |
Provides: dvips = %{version}-%{release} |
50 |
Provides: mfwin = %{version}-%{release} |
51 |
Provides: usrlocal = %{version}-%{release} |
52 |
%if %{enable_xdvik} |
53 |
Obsoletes: tetex-xdvi <= 3.1 |
54 |
Provides: xdvi = %{version}-%{release} |
55 |
Obsoletes: xdvi <= 22.86 |
56 |
Obsoletes: texlive-xdvi <= 2007 |
57 |
%endif |
58 |
Provides: afm = %{version}-%{release} |
59 |
Provides: dvilj = %{version}-%{release} |
60 |
Provides: dvipdfm = %{version}-%{release} |
61 |
Provides: tetex-dvips = %{version}-%{release} |
62 |
Provides: dviutils = %{version}-%{release} |
63 |
Provides: tetex-latex = %{version}-%{release} |
64 |
Provides: latex = %{version}-%{release} |
65 |
|
66 |
Obsoletes: kpathsea <= 2007 |
67 |
Obsoletes: pdfjam <= 1.21 |
68 |
Obsoletes: tetex <= 3.1 |
69 |
Obsoletes: tetex-context <= 3.1 |
70 |
Obsoletes: tetex-devel <= 3.1 |
71 |
Obsoletes: tetex-dvipdfm <= 3.1 |
72 |
Obsoletes: tetex-dvips <= 3.1 |
73 |
Obsoletes: tetex-dvips <= 3.1 |
74 |
Obsoletes: tetex-dvilj <= 3.0 |
75 |
Obsoletes: tetex-latex <= 3.1 |
76 |
Obsoletes: tetex-mfwin <= 3.1 |
77 |
Obsoletes: tetex-usrlocal <= 3.1 |
78 |
Obsoletes: texlive-afm <= 2007 |
79 |
Obsoletes: texlive-context <= 2007 |
80 |
Obsoletes: texlive-dvilj <= 2007 |
81 |
Obsoletes: texlive-dvipdfm <= 2007 |
82 |
Obsoletes: texlive-dvips <= 2007 |
83 |
Obsoletes: texlive-dviutils <= 2007 |
84 |
Obsoletes: texlive-latex <= 2007 |
85 |
Obsoletes: texlive-mfwin <= 2007 |
86 |
Obsoletes: texlive-fonts <= 2007 |
87 |
|
88 |
#----------------------------------------------------------------------- |
89 |
%if %{with_system_dialog} |
90 |
Requires: cdialog |
91 |
%endif |
92 |
Requires: ghostscript |
93 |
%if %{enable_asymptote} |
94 |
Requires: gv |
95 |
Requires: tkinter |
96 |
%endif |
97 |
%if %{with_system_lcdf} |
98 |
Requires: lcdf-typetoools |
99 |
%else |
100 |
Provides: lcdf-typetools = %{version} |
101 |
Obsoletes: lcdf-typetools <= 2.59-5 |
102 |
%endif |
103 |
%if %{with_system_psutils} |
104 |
Requires: psutils |
105 |
%endif |
106 |
%if %{with_system_teckit} |
107 |
Requires: teckit |
108 |
%endif |
109 |
%if %{with_system_tex4ht} |
110 |
Requires: tex4ht |
111 |
%else |
112 |
Provides: tex4ht = %{version} |
113 |
Obsoletes: tex4ht <= 1:1.0.2008_02_28_2058 |
114 |
%endif |
115 |
Conflicts: texlive-texmf < %{version} |
116 |
Requires(post): texlive-texmf = %{version} |
117 |
Requires: ruby |
118 |
|
119 |
#----------------------------------------------------------------------- |
120 |
BuildRequires: bison |
121 |
%if %{enable_xindy} |
122 |
BuildRequires: clisp |
123 |
BuildRequires: ffcall-devel |
124 |
%endif |
125 |
%if %{enable_asymptote} |
126 |
BuildRequires: fftw-devel |
127 |
BuildRequires: flex |
128 |
%endif |
129 |
BuildRequires: freetype-devel |
130 |
BuildRequires: fontconfig-devel |
131 |
BuildRequires: gd-devel |
132 |
%if %{enable_asymptote} |
133 |
BuildRequires: libgc-devel |
134 |
BuildRequires: libsigsegv-devel |
135 |
BuildRequires: ghostscript-dvipdf |
136 |
BuildRequires: gsl-devel |
137 |
BuildRequires: GL-devel |
138 |
%endif |
139 |
BuildRequires: libgd-devel |
140 |
%if %{with_system_poppler} |
141 |
BuildRequires: pkgconfig(poppler) |
142 |
%endif |
143 |
BuildRequires: libxaw-devel |
144 |
%if !%{with_system_dialog} |
145 |
BuildRequires: ncurses-devel |
146 |
%endif |
147 |
BuildRequires: png-devel |
148 |
%if %{with_system_t1lib} |
149 |
BuildRequires: t1lib-devel |
150 |
%endif |
151 |
%if %{with_system_teckit} |
152 |
BuildRequires: teckit-devel |
153 |
%endif |
154 |
%if %{enable_xindy} |
155 |
BuildRequires: texlive |
156 |
%endif |
157 |
%if %{enable_asymptote} |
158 |
BuildRequires: texinfo |
159 |
%endif |
160 |
BuildRequires: zziplib-devel |
161 |
|
162 |
#----------------------------------------------------------------------- |
163 |
Patch0: texlive-20110312-underlink.patch |
164 |
Patch1: texlive-20110312-format.patch |
165 |
Patch2: texlive-20110312-asymptote.patch |
166 |
Patch3: texlive-20110312-xdvi.patch |
167 |
# http://tug.org/svn/texlive?view=revision&revision=23644 |
168 |
Patch4: texlive-20110705-synctex-coordinates.patch |
169 |
Patch10: texlive-png15-build.patch |
170 |
Patch11: texlive-20110705-128.patch |
171 |
|
172 |
#----------------------------------------------------------------------- |
173 |
%description |
174 |
TeX Live is an easy way to get up and running with the TeX document |
175 |
production system. It provides a comprehensive TeX system. It includes |
176 |
all the major TeX-related programs, macro packages, and fonts that are |
177 |
free software, including support for many languages around the world. |
178 |
|
179 |
%files |
180 |
%defattr(-,root,root,-) |
181 |
%{texmfbindir}/* |
182 |
%dir %{texmfvardir} |
183 |
%dir %{texmfconfdir} |
184 |
|
185 |
#----------------------------------------------------------------------- |
186 |
%if %{enable_shared} |
187 |
######################################################################## |
188 |
%define kpathsea_major 6 |
189 |
%define kpathsea %{mklibname kpathsea %{kpathsea_major}} |
190 |
|
191 |
%package -n %{kpathsea} |
192 |
Summary: Path searching library for TeX-related files |
193 |
Group: System/Libraries |
194 |
Provides: kpathsea = %{version}-%{release} |
195 |
|
196 |
%description -n %{kpathsea} |
197 |
Kpathsea implements generic path searching, configuration, |
198 |
and TeX-specific file searching. |
199 |
|
200 |
%files -n %{kpathsea} |
201 |
%defattr(-,root,root,-) |
202 |
%{_libdir}/libkpathsea.so.%{kpathsea_major} |
203 |
%{_libdir}/libkpathsea.so.%{kpathsea_major}.* |
204 |
|
205 |
#----------------------------------------------------------------------- |
206 |
%define kpathsea_devel %{mklibname -d kpathsea} |
207 |
|
208 |
%package -n %{kpathsea_devel} |
209 |
Summary: Kpathsea development files |
210 |
Group: Development/C |
211 |
Requires: kpathsea = %{version}-%{release} |
212 |
Provides: kpathsea-devel = %{version}-%{release} |
213 |
|
214 |
%description -n %{kpathsea_devel} |
215 |
Kpathsea implements generic path searching, configuration, |
216 |
and TeX-specific file searching. |
217 |
This package includes the kpathsea development files. |
218 |
|
219 |
%files -n %{kpathsea_devel} |
220 |
%defattr(-,root,root,-) |
221 |
%{_includedir}/kpathsea |
222 |
%{_libdir}/libkpathsea.la |
223 |
%{_libdir}/libkpathsea.so |
224 |
|
225 |
#----------------------------------------------------------------------- |
226 |
%define kpathsea_static_devel %{mklibname -d -s kpathsea} |
227 |
|
228 |
%package -n %{kpathsea_static_devel} |
229 |
Summary: Kpathsea development files |
230 |
Group: Development/C |
231 |
Requires: kpathsea-devel = %{version}-%{release} |
232 |
Provides: kpathsea-devel-static = %{version}-%{release} |
233 |
|
234 |
%description -n %{kpathsea_static_devel} |
235 |
Kpathsea implements generic path searching, configuration, |
236 |
and TeX-specific file searching. |
237 |
This package includes the static kpathsea library. |
238 |
|
239 |
%files -n %{kpathsea_static_devel} |
240 |
%defattr(-,root,root,-) |
241 |
%{_libdir}/libkpathsea.a |
242 |
|
243 |
#----------------------------------------------------------------------- |
244 |
%define ptexenc_major 1 |
245 |
%define ptexenc %{mklibname ptexenc %{ptexenc_major}} |
246 |
|
247 |
%package -n %{ptexenc} |
248 |
Summary: Library for Japanese pTeX |
249 |
Group: System/Libraries |
250 |
Provides: ptexenc = %{version}-%{release} |
251 |
|
252 |
%description -n %{ptexenc} |
253 |
ptexenc is a useful library for Japanese pTeX |
254 |
(which stands for publishing TeX, and is an extension of |
255 |
TeX by ASCII Co.) and its surrounding tools. |
256 |
|
257 |
%files -n %{ptexenc} |
258 |
%defattr(-,root,root,-) |
259 |
%{_libdir}/libptexenc.so.%{ptexenc_major} |
260 |
%{_libdir}/libptexenc.so.%{ptexenc_major}.* |
261 |
|
262 |
#----------------------------------------------------------------------- |
263 |
%define ptexenc_devel %{mklibname -d ptexenc} |
264 |
|
265 |
%package -n %{ptexenc_devel} |
266 |
Summary: Library for Japanese pTeX |
267 |
Group: Development/C |
268 |
Requires: ptexenc = %{version}-%{release} |
269 |
Provides: ptexenc-devel = %{version}-%{release} |
270 |
|
271 |
%description -n %{ptexenc_devel} |
272 |
ptexenc is a useful library for Japanese pTeX |
273 |
(which stands for publishing TeX, and is an extension of |
274 |
TeX by ASCII Co.) and its surrounding tools. |
275 |
This package includes the ptexenc development files. |
276 |
|
277 |
%files -n %{ptexenc_devel} |
278 |
%defattr(-,root,root,-) |
279 |
%{_includedir}/ptexenc |
280 |
%{_libdir}/libptexenc.la |
281 |
%{_libdir}/libptexenc.so |
282 |
|
283 |
#----------------------------------------------------------------------- |
284 |
%define ptexenc_static_devel %{mklibname -d -s ptexenc} |
285 |
|
286 |
%package -n %{ptexenc_static_devel} |
287 |
Summary: Library for Japanese pTeX |
288 |
Group: Development/C |
289 |
Requires: ptexenc-devel = %{version}-%{release} |
290 |
Provides: ptexenc-devel-static = %{version}-%{release} |
291 |
|
292 |
%description -n %{ptexenc_static_devel} |
293 |
ptexenc is a useful library for Japanese pTeX |
294 |
(which stands for publishing TeX, and is an extension of |
295 |
TeX by ASCII Co.) and its surrounding tools. |
296 |
This package includes the static ptexenc library. |
297 |
|
298 |
%files -n %{ptexenc_static_devel} |
299 |
%defattr(-,root,root,-) |
300 |
%{_libdir}/libptexenc.a |
301 |
|
302 |
######################################################################## |
303 |
# enable_shared |
304 |
%endif |
305 |
|
306 |
#----------------------------------------------------------------------- |
307 |
%prep |
308 |
%setup -q -n %{name}-%{version}-source |
309 |
%patch0 -p1 |
310 |
%patch1 -p1 |
311 |
%if %{enable_asymptote} |
312 |
%patch2 -p1 |
313 |
%endif |
314 |
%patch3 -p1 |
315 |
%patch4 -p1 |
316 |
%patch11 -p0 |
317 |
|
318 |
# setup default builtin values, added to paths.h from texmf.cnf |
319 |
perl -pi -e 's%^(TEXMFMAIN\s+= ).*%$1%{texmfdir}%;' \ |
320 |
-e 's%^(TEXMFDIST\s+= ).*%$1%{texmfdistdir}%;' \ |
321 |
-e 's%^(TEXMFLOCAL\s+= ).*%$1%{texmflocaldir}%;' \ |
322 |
-e 's%^(TEXMFSYSVAR\s+= ).*%$1%{texmfvardir}%;' \ |
323 |
-e 's%^(TEXMFSYSCONFIG\s+= ).*%$1%{texmfconfdir}%;' \ |
324 |
-e 's%^(TEXMFHOME\s+= ).*%$1\$HOME/texmf%;' \ |
325 |
-e 's%^(TEXMFVAR\s+= ).*%$1\$HOME/.texlive2011/texmf-var%;' \ |
326 |
-e 's%^(TEXMFCONFIG\s+= ).*%$1\$HOME/.texlive2011/texmf-config%;'\ |
327 |
-e 's%^(OSFONTDIR\s+= ).*%$1%{_datadir}/fonts%;' \ |
328 |
texk/kpathsea/texmf.cnf |
329 |
|
330 |
#----------------------------------------------------------------------- |
331 |
%build |
332 |
%configure2_5x \ |
333 |
--with-banner-add="/Mageia" \ |
334 |
--disable-native-texlive-build \ |
335 |
--enable-missing \ |
336 |
%if %{enable_shared} |
337 |
--enable-shared \ |
338 |
%else |
339 |
--disable-shared \ |
340 |
%endif |
341 |
%if %{enable_xindy} |
342 |
--enable-xindy \ |
343 |
%else |
344 |
--disable-xindy \ |
345 |
%endif |
346 |
%if %{enable_xdvik} |
347 |
--enable-xdvik \ |
348 |
%else |
349 |
--disable-xdvik \ |
350 |
%endif |
351 |
%if %{enable_dvi2tty} |
352 |
--enable-dvi2tty \ |
353 |
%else |
354 |
--disable-dvi2tty \ |
355 |
%endif |
356 |
--with-system-freetype \ |
357 |
--with-freetype-includes=%{_includedir}/freetype \ |
358 |
--with-system-freetype2 \ |
359 |
--with-freetype2-includes=%{_includedir}/freetype2 \ |
360 |
%if %{with_system_dialog} |
361 |
--disable-dialog \ |
362 |
%else |
363 |
--enable-dialog \ |
364 |
%endif |
365 |
%if %{with_system_psutils} |
366 |
--disable-psutils \ |
367 |
%else |
368 |
--enable-psutils \ |
369 |
%endif |
370 |
--with-system-gd \ |
371 |
%if %{with_system_lcdf} |
372 |
--disable-lcdf-typetools \ |
373 |
%endif |
374 |
--with-system-png \ |
375 |
%if %{with_system_t1lib} |
376 |
--with-system-t1lib \ |
377 |
--disable-t1utils \ |
378 |
%endif |
379 |
%if %{with_system_teckit} |
380 |
--disable-teckit \ |
381 |
--with-teckit-includes=%{_includedir}/teckit \ |
382 |
%endif |
383 |
%if %{with_system_tex4ht} |
384 |
--disable-tex4htk \ |
385 |
%endif |
386 |
%if %{with_system_poppler} |
387 |
--with-system-xpdf \ |
388 |
%else |
389 |
--without-system-xpdf \ |
390 |
%endif |
391 |
--with-system-zziplib |
392 |
%make |
393 |
|
394 |
%if %{enable_asymptote} |
395 |
pushd utils/asymptote |
396 |
%configure2_5x \ |
397 |
--enable-gc=system \ |
398 |
--enable-texlive-build \ |
399 |
--datadir=%{texmfdir} |
400 |
%make |
401 |
popd |
402 |
%endif |
403 |
|
404 |
#----------------------------------------------------------------------- |
405 |
%install |
406 |
%makeinstall_std |
407 |
|
408 |
%if %{enable_asymptote} |
409 |
pushd utils/asymptote |
410 |
%makeinstall_std |
411 |
popd |
412 |
%endif |
413 |
|
414 |
mkdir -p %{buildroot}%{_datadir} |
415 |
for dir in texmf texmf-dist; do |
416 |
if [ -d %{buildroot}%{_prefix}/$dir ]; then |
417 |
rm -fr %{buildroot}%{_datadir}/$dir |
418 |
mv %{buildroot}%{_prefix}/$dir %{buildroot}%{_datadir} |
419 |
fi |
420 |
done |
421 |
|
422 |
mkdir -p %{buildroot}%{texmfvardir} |
423 |
mkdir -p %{buildroot}%{texmfconfdir} |
424 |
|
425 |
%if %{with_system_lcdf} |
426 |
# stray directory left |
427 |
rm -fr %{buildroot}%{_datadir}/lcdf-typetools-for-tex-live |
428 |
%else |
429 |
# openmpi has a program with the same name |
430 |
if [ -f %{buildroot}%{texmfbindir}/otfinfo ]; then |
431 |
mv -f %{buildroot}%{texmfbindir}/otfinfo{,-texlive} |
432 |
fi |
433 |
%endif |
434 |
|
435 |
pushd %{buildroot}%{texmfbindir} |
436 |
# missing symbolic links |
437 |
ln -sf aleph lamed |
438 |
ln -sf luatex dvilualatex |
439 |
ln -sf luatex lualatex |
440 |
ln -sf luatex dviluatex |
441 |
ln -sf pdftex amstex |
442 |
ln -sf pdftex cslatex |
443 |
ln -sf pdftex csplain |
444 |
ln -sf pdftex eplain |
445 |
ln -sf pdftex etex |
446 |
ln -sf pdftex latex |
447 |
ln -sf pdftex mex |
448 |
ln -sf pdftex mltex |
449 |
ln -sf pdftex mllatex |
450 |
ln -sf pdftex pdfcslatex |
451 |
ln -sf pdftex pdfcsplain |
452 |
ln -sf pdftex pdfetex |
453 |
ln -sf pdftex pdflatex |
454 |
ln -sf pdftex pdfmex |
455 |
ln -sf pdftex physe |
456 |
ln -sf pdftex phyzzx |
457 |
ln -sf pdftex utf8mex |
458 |
ln -sf pdftex texsis |
459 |
ln -sf ptex platex |
460 |
ln -sf mpost metafun |
461 |
ln -sf mpost mfplain |
462 |
ln -sf xetex xelatex |
463 |
# correct symlinks |
464 |
for file in *; do |
465 |
link=`readlink $file` || : |
466 |
if [ "x$link" != "x" ]; then |
467 |
ln -sf `echo $link | \ |
468 |
sed -e 's|\.\./.*texmf-dist/|%{texmfdistdir}/|' \ |
469 |
-e 's|\.\./.*texmf/|%{texmfdir}/|'` \ |
470 |
$file |
471 |
fi |
472 |
done |
473 |
%if %{with_system_dialog} |
474 |
ln -sf %{_bindir}/dialog tcdialog |
475 |
%endif |
476 |
%if %{enable_asymptote} |
477 |
ln -sf %{texmfdir}/asymptote/GUI/xasy.py xasy |
478 |
%endif |
479 |
# install scripts from texlive-texmf |
480 |
rm -f a2ping afm2afm arlatex authorindex autoinst bibexport \ |
481 |
bundledoc cachepic cmap2enc de-macro dviasm ebong e2pall \ |
482 |
epspdf epspdftk epstopdf fig4latex findhyph font2afm \ |
483 |
fragmaster ht htcontext htlatex htmex httex httexi htxelatex \ |
484 |
htxetex latex2man latexdiff latexdiff-vc latexmk latexrevise \ |
485 |
listings-ext.sh makeglossaries mathspic mk4ht mkgrkindex \ |
486 |
mkjobtexmf mkluatexfontdb mkt1font mptopdf ot2kpx pdf180 \ |
487 |
pdf270 pdf90 pdfannotextractor pdfatfi pdfbook pdfcrop \ |
488 |
pdfflip pdfjam pdfjam-pocketmod pdfjam-slides3up \ |
489 |
pdfjam-slides6up pdfjoin pdfnup pdfpun pdfthumb perltex \ |
490 |
pfm2kpx pkfix pkfix-helper ppower4 ps4pdf pst2pdf purifyeps \ |
491 |
repstopdf rpdfcrop rungs showglyphs simpdftex splitindex \ |
492 |
svn-multi texcount texdiff texdirflatten texdoc texdoctk \ |
493 |
texloganalyser thumbpdf tlmgr ulqda updmap vpe vpl2ovp \ |
494 |
vpl2vpl |
495 |
popd |
496 |
|
497 |
# use texmf data |
498 |
rm -fr %{buildroot}%{texmfdir} %{buildroot}%{texmfdistdir} |
499 |
|
500 |
# install manual pages and info files from texlive-texmf tarball |
501 |
rm -fr %{buildroot}%{_mandir} %{buildroot}%{_infodir} |
502 |
|
503 |
%if !%{enable_shared} |
504 |
# do not generate dynamic libraries and do not install static ones |
505 |
rm -fr %{buildroot}%{_libdir} |
506 |
rm -fr %{buildroot}%{_includedir} |
507 |
%endif |
508 |
|
509 |
#----------------------------------------------------------------------- |
510 |
%clean |
511 |
rm -rf %{buildroot} |
512 |
|
513 |
#----------------------------------------------------------------------- |
514 |
%posttrans |
515 |
rm -f %{texmfdir}/ls-R %{texmfdistdir}/ls-R |
516 |
%{texmfbindir}/mktexlsr %{texmfdir} %{texmfdistdir} > /dev/null |
517 |
%{texmfbindir}/updmap-sys --syncwithtrees > /dev/null |
518 |
%{texmfbindir}/texconfig-sys init > /dev/null |
519 |
%{texmfbindir}/mtxrun --generate > /dev/null |