]> git.pld-linux.org Git - packages/tcl.git/blame - tcl.spec
- CVE references
[packages/tcl.git] / tcl.spec
CommitLineData
533229ec
JB
1#
2# Conditional build:
3%bcond_without tests # don't perform "make test"
4#
df02913e 5Summary: Tool Command Language embeddable scripting language, with shared libraries
113e9360
ER
6Summary(fr.UTF-8): Tool Command Language, langage de script avec bibliothèques partagées
7Summary(pl.UTF-8): Tool Command Language - język skryptowy z bibliotekami dynamicznymi
8Summary(ru.UTF-8): Tool Command Language - встраиваемый язык скриптов
9Summary(tr.UTF-8): Tcl ile kullanılabilen betik dili
10Summary(uk.UTF-8): Tool Command Language - вбудовувана мова скриптів
df02913e 11Name: tcl
7da85163 12%define major 8.5
c65a448b 13%define minor 1
7da85163 14Version: %{major}.%{minor}
84e00aca 15Release: 3
013aa904 16License: BSD
4393e4cf 17Group: Development/Languages/Tcl
7da85163 18Source0: http://dl.sourceforge.net/tcl/%{name}%{version}-src.tar.gz
c65a448b 19# Source0-md5: 1b5f9a043f53c5828dcde3684e3264d5
ccb2b60f 20Source1: %{name}-pl-man-pages.tar.bz2
cc51c76d 21# Source1-md5: dd3370f2b588763758787831a4bf48fc
eaed8174
JB
22Patch0: %{name}-ieee.patch
23Patch1: %{name}-readline.patch
24Patch2: %{name}-opt.patch
25Patch3: %{name}-mannames.patch
26Patch4: %{name}-soname_fix.patch
27Patch5: %{name}-norpath.patch
404b6854 28Patch6: %{name}-multilib.patch
893b6551 29URL: http://www.tcl.tk/
591f2b2d 30BuildRequires: autoconf
05a718be 31BuildRequires: ncurses-devel >= 5.2
32BuildRequires: readline-devel >= 4.2
404b6854 33Requires: tzdata
cafa7460 34BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
e0e75f05 35
ce07aae9 36%define _ulibdir /usr/lib
eb94f340 37
ed5e45a7 38%if "%{_libdir}" != "%{_ulibdir}"
ce07aae9 39%define have_ulibdir 1
b9b004f7 40%endif
41
e0e75f05 42%description
4c923838 43Tcl is a simple scripting language that is designed to be embedded in
e0e75f05 44other applications. This package includes tclsh, a simple example of a
4c923838 45tcl application. Tcl is very popular for writing small graphical
46applications because of the Tk widget set which is closely tied to it.
e0e75f05 47
62517c0e 48%description -l de.UTF-8
4c923838 49Tcl ist eine einfache Skriptsprache, die zur Ingegration in andere
62517c0e 50Applikationen vorgesehen ist. Dieses Paket umfaßt tclsh, ein einfaches
4c923838 51Beispiel einer tcl-Applikation. Tcl wird gern zum Schreiben kleiner
52grafischer Anwendungen benutzt, weil das Tk-Widget-Set eng damit
62517c0e 53verknüpft ist.
e0e75f05 54
62517c0e
JR
55%description -l fr.UTF-8
56Tcl est un langage simple de script, conçu pour être intégré dans
013aa904 57d'autres applications. Ce paquetage contient tclsh, un exemple simple
62517c0e
JR
58d'application tcl. Tcl est très utilisé pour écrire de petites
59applications graphiques grâce à l'ensemble de widgets Tk qui lui est
60très lié.
61
62%description -l ja.UTF-8
63Tcl は他のアプリケーションに埋め込むためにデザインされた簡単なスクリプ
64ト言語です。Tclはウィジッド・セットであるTkとともに用いるようにデザイン
65しています。このパッケージにはTclの簡単な例として、tclsh
66も含んでいます。
67
68%description -l pl.UTF-8
69Tcl jest prostym językiem skryptowym, przeznaczonym do współpracy z
70innymi aplikacjami. W pakiecie znajduje się również tclsh - prosty
71przykład programów. Tcl jest bardzo popularnym językiem do pisania
72małych programów graficznych.
73
74%description -l ru.UTF-8
75Tcl - это простой интерпретируемый язык, предназначенный для
76встраивания в другие программы. Этот пакет включает tclsh, простой
77пример программы на tcl. Tcl очень популярен для написания небольших
78графических программ из-за набора экранных примитивов Tk, который
79очень тесно с ним связан.
80
81%description -l tr.UTF-8
82Tcl, başka uygulamaların içine gömülmesi hedeflenerek geliştirilmiş
83basit bir betimleme dilidir. Bu paket basit bir Tcl uygulaması örneği
84olan tclsh kabuğunu içerir. Tcl, kendisi ile sıkıca ilintili olan Tk
85arayüz elemanı kümesinin de desteğiyle küçük grafik uygulamalar yazma
86konusunda son derece yaygın kullanılmaktadır.
87
88%description -l uk.UTF-8
89Tcl - це проста інтерпретована мова, призначена для вбудови в інші
90програми. Цей пакет містить також tclsh, простий приклад програми на
91tcl. Tcl дуже популярний для написання простих графічних програм
92завдяки набору екранних примітивів Tk, котрий з ним дуже тісно
93зв'язаний.
ff89fdca 94
e0e75f05 95%package devel
df02913e 96Summary: Tool Command Language header files and development documentation
113e9360 97Summary(pl.UTF-8): Pliki nagłówkowe oraz dokumentacja dla Tcl (Tool Command Language)
df02913e 98Group: Development/Languages/Tcl
bcf28f3a 99Requires: %{name} = %{version}-%{release}
e0e75f05 100
101%description devel
102Tool Command Language embeddable scripting language header files and
4c923838 103develpment documentation.
e0e75f05 104
62517c0e
JR
105%description devel -l pl.UTF-8
106Pliki nagłówkowe oraz dokumentacja dla Tcl (Tool Command Language).
325b440a 107
e0e75f05 108%prep
7da85163 109%setup -q -n %{name}%{version}
32dfff2d 110%patch0 -p1
96ff14e7 111%patch1 -p1
624e549e 112%patch2 -p1
eaed8174 113%patch3 -p1
32dfff2d 114%patch4 -p1
eaed8174 115%patch5 -p1
9bd46c3d 116%patch6 -p1
e0e75f05 117
118%build
f5a896ad
AM
119# Make sure we have /proc mounted - otherwise pthread_getattr_np will fail
120# https://sourceforge.net/tracker/index.php?func=detail&aid=1815573&group_id=10894&atid=110894
121if [ ! -r /proc/self/maps ]; then
122 echo "You need to have /proc mounted in order to build this package!"
123 exit 1
124fi
125
e0e75f05 126cd unix
4397de0e
AM
127sed -i -e "s/^CFLAGS_OPTIMIZE.*/CFLAGS_OPTIMIZE=%{rpmcflags} -D__NO_STRING_INLINES -D__NO_MATH_INLINES -D_REENTRANT/" \
128 Makefile.in
f8badf55 129%{__autoconf}
f69c5992 130%configure \
9fbe4bab 131 --enable-langinfo \
325b440a 132 --enable-shared \
66b6d6b6 133 --enable-threads \
b0c7815a 134 --enable-64bit \
404b6854
JB
135 --enable-gcc \
136 --without-tzdata
78814766
JK
137%{__make} \
138 TCL_PACKAGE_PATH="%{_libdir} %{_libdir}/tcl%{major} %{_ulibdir} %{_ulibdir}/tcl%{major}"
e0e75f05 139
84e00aca
AM
140cp -a tclConfig.sh tclConfig.sh-orig
141sed -i -e "s#%{_builddir}/%{name}%{version}/unix#%{_libdir}#; \
142 s#%{_builddir}/%{name}%{version}#%{_includedir}/tcl-private#" tclConfig.sh
143if (cmp -s tclConfig.sh tclConfig.sh-orig); then
144 echo "tclConfig.sh fix rule didn't change anything. Please verify it."
145fi
3f4c6fab
AM
146
147%if %{with tests}
b1f50fd2
AM
148# tests that are problematic on builders; some probably could be fixed
149rm ../tests/{http,httpold,socket,unixInit}.test
e0cf2b37
AM
150# problematic
151rm ../tests/{clock,async}.test
b1f50fd2 152
3f4c6fab
AM
153%{__make} test 2>&1 | tee make-test.log
154FAILED=$(grep 'Files with failing tests:' make-test.log | sed -e 's#Files with failing tests: ##g' | sort | xargs)
b1f50fd2 155if [ -n "$FAILED" ]; then
3f4c6fab
AM
156 echo "Files with failing tests: $FAILED"
157 exit 1
158fi
159%endif
6f682ca2 160
e0e75f05 161%install
162rm -rf $RPM_BUILD_ROOT
43b00217 163install -d $RPM_BUILD_ROOT{%{_prefix},%{_mandir}/man1}
e0e75f05 164
d12f3cae 165%{__make} -C unix install \
32dfff2d 166 INSTALL_ROOT=$RPM_BUILD_ROOT \
78814766 167 TCL_PACKAGE_PATH="%{_libdir} %{_libdir}/tcl%{major} %{_ulibdir} %{_ulibdir}/tcl%{major}" \
32dfff2d 168 MAN_INSTALL_DIR=$RPM_BUILD_ROOT%{_mandir}
169
3619c311
AM
170install -d $RPM_BUILD_ROOT%{_includedir}/%{name}-private/{generic,unix}
171find generic unix -name "*.h" -exec cp -p '{}' $RPM_BUILD_ROOT%{_includedir}/%{name}-private/'{}' ';'
172for h in $RPM_BUILD_ROOT%{_includedir}/*.h; do
173 rh=$(basename "$h")
174 if [ -f "$RPM_BUILD_ROOT%{_includedir}/%{name}-private/generic/$rh" ]; then
175 ln -sf "../../$rh" $RPM_BUILD_ROOT%{_includedir}/%{name}-private/generic
176 fi
177done
178
500976d5
AF
179ln -sf libtcl%{major}.so.0.0 $RPM_BUILD_ROOT%{_libdir}/libtcl.so
180ln -sf libtcl%{major}.so.0.0 $RPM_BUILD_ROOT%{_libdir}/libtcl%{major}.so
893b6551 181mv -f $RPM_BUILD_ROOT%{_bindir}/tclsh%{major} $RPM_BUILD_ROOT%{_bindir}/tclsh
2bb2a2e7 182
b9b004f7 183%{?have_ulibdir:mv $RPM_BUILD_ROOT%{_libdir}/tclConfig.sh $RPM_BUILD_ROOT%{_ulibdir}/tclConfig.sh}
e0e75f05 184
ccb2b60f 185bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
ea32bf96 186
78814766
JK
187install -d $RPM_BUILD_ROOT%{_libdir}/tcl%{major}
188
e0e75f05 189%clean
190rm -rf $RPM_BUILD_ROOT
191
69881005 192%post -p /sbin/ldconfig
591f2b2d
JB
193%postun -p /sbin/ldconfig
194
e0e75f05 195%files
df02913e 196%defattr(644,root,root,755)
a5ca4a9c 197%attr(755,root,root) %{_bindir}/*
500976d5 198%attr(755,root,root) %{_libdir}/lib*.so.*.*
3745153e 199%{?have_ulibdir:%dir %{_libdir}/tcl%{major}}
bb3d31bc 200%{_ulibdir}/tcl[0-9]
3745153e
JB
201%dir %{_ulibdir}/tcl%{major}
202%{_ulibdir}/tcl%{major}/*.tcl
203%{_ulibdir}/tcl%{major}/encoding
204%{_ulibdir}/tcl%{major}/http1.0
205%{_ulibdir}/tcl%{major}/ldAix
206%dir %{_ulibdir}/tcl%{major}/msgs
207%lang(af) %{_ulibdir}/tcl%{major}/msgs/af.msg
208%lang(af_ZA) %{_ulibdir}/tcl%{major}/msgs/af_za.msg
209%lang(ar) %{_ulibdir}/tcl%{major}/msgs/ar.msg
210%lang(ar_IN) %{_ulibdir}/tcl%{major}/msgs/ar_in.msg
211%lang(ar_JO) %{_ulibdir}/tcl%{major}/msgs/ar_jo.msg
212%lang(ar_LB) %{_ulibdir}/tcl%{major}/msgs/ar_lb.msg
213%lang(ar_SY) %{_ulibdir}/tcl%{major}/msgs/ar_sy.msg
214%lang(be) %{_ulibdir}/tcl%{major}/msgs/be.msg
215%lang(bg) %{_ulibdir}/tcl%{major}/msgs/bg.msg
216%lang(bn) %{_ulibdir}/tcl%{major}/msgs/bn.msg
217%lang(bn_IN) %{_ulibdir}/tcl%{major}/msgs/bn_in.msg
218%lang(ca) %{_ulibdir}/tcl%{major}/msgs/ca.msg
219%lang(cs) %{_ulibdir}/tcl%{major}/msgs/cs.msg
220%lang(da) %{_ulibdir}/tcl%{major}/msgs/da.msg
221%lang(de) %{_ulibdir}/tcl%{major}/msgs/de.msg
222%lang(de_AT) %{_ulibdir}/tcl%{major}/msgs/de_at.msg
223%lang(de_BE) %{_ulibdir}/tcl%{major}/msgs/de_be.msg
224%lang(el) %{_ulibdir}/tcl%{major}/msgs/el.msg
225%lang(en_AU) %{_ulibdir}/tcl%{major}/msgs/en_au.msg
226%lang(en_BE) %{_ulibdir}/tcl%{major}/msgs/en_be.msg
227%lang(en_BW) %{_ulibdir}/tcl%{major}/msgs/en_bw.msg
228%lang(en_CA) %{_ulibdir}/tcl%{major}/msgs/en_ca.msg
229%lang(en_GB) %{_ulibdir}/tcl%{major}/msgs/en_gb.msg
230%lang(en_HK) %{_ulibdir}/tcl%{major}/msgs/en_hk.msg
231%lang(en_IE) %{_ulibdir}/tcl%{major}/msgs/en_ie.msg
232%lang(en_IN) %{_ulibdir}/tcl%{major}/msgs/en_in.msg
233%lang(en_NZ) %{_ulibdir}/tcl%{major}/msgs/en_nz.msg
234%lang(en_PH) %{_ulibdir}/tcl%{major}/msgs/en_ph.msg
235%lang(en_SG) %{_ulibdir}/tcl%{major}/msgs/en_sg.msg
236%lang(en_ZA) %{_ulibdir}/tcl%{major}/msgs/en_za.msg
237%lang(en_ZW) %{_ulibdir}/tcl%{major}/msgs/en_zw.msg
238%lang(eo) %{_ulibdir}/tcl%{major}/msgs/eo.msg
239%lang(es) %{_ulibdir}/tcl%{major}/msgs/es.msg
240%lang(es_AR) %{_ulibdir}/tcl%{major}/msgs/es_ar.msg
241%lang(es_BO) %{_ulibdir}/tcl%{major}/msgs/es_bo.msg
242%lang(es_CL) %{_ulibdir}/tcl%{major}/msgs/es_cl.msg
243%lang(es_CO) %{_ulibdir}/tcl%{major}/msgs/es_co.msg
244%lang(es_CR) %{_ulibdir}/tcl%{major}/msgs/es_cr.msg
245%lang(es_DO) %{_ulibdir}/tcl%{major}/msgs/es_do.msg
246%lang(es_EC) %{_ulibdir}/tcl%{major}/msgs/es_ec.msg
247%lang(es_GT) %{_ulibdir}/tcl%{major}/msgs/es_gt.msg
248%lang(es_HN) %{_ulibdir}/tcl%{major}/msgs/es_hn.msg
249%lang(es_MX) %{_ulibdir}/tcl%{major}/msgs/es_mx.msg
250%lang(es_NI) %{_ulibdir}/tcl%{major}/msgs/es_ni.msg
251%lang(es_PA) %{_ulibdir}/tcl%{major}/msgs/es_pa.msg
252%lang(es_PE) %{_ulibdir}/tcl%{major}/msgs/es_pe.msg
253%lang(es_PR) %{_ulibdir}/tcl%{major}/msgs/es_pr.msg
254%lang(es_PY) %{_ulibdir}/tcl%{major}/msgs/es_py.msg
255%lang(es_SV) %{_ulibdir}/tcl%{major}/msgs/es_sv.msg
256%lang(es_UY) %{_ulibdir}/tcl%{major}/msgs/es_uy.msg
257%lang(es_VE) %{_ulibdir}/tcl%{major}/msgs/es_ve.msg
258%lang(et) %{_ulibdir}/tcl%{major}/msgs/et.msg
259%lang(eu) %{_ulibdir}/tcl%{major}/msgs/eu.msg
260%lang(eu_ES) %{_ulibdir}/tcl%{major}/msgs/eu_es.msg
261%lang(fa) %{_ulibdir}/tcl%{major}/msgs/fa.msg
262%lang(fa_IN) %{_ulibdir}/tcl%{major}/msgs/fa_in.msg
263%lang(fa_IR) %{_ulibdir}/tcl%{major}/msgs/fa_ir.msg
264%lang(fi) %{_ulibdir}/tcl%{major}/msgs/fi.msg
265%lang(fo) %{_ulibdir}/tcl%{major}/msgs/fo.msg
266%lang(fo_FO) %{_ulibdir}/tcl%{major}/msgs/fo_fo.msg
267%lang(fr) %{_ulibdir}/tcl%{major}/msgs/fr.msg
268%lang(fr_BE) %{_ulibdir}/tcl%{major}/msgs/fr_be.msg
269%lang(fr_CA) %{_ulibdir}/tcl%{major}/msgs/fr_ca.msg
270%lang(fr_CH) %{_ulibdir}/tcl%{major}/msgs/fr_ch.msg
271%lang(ga) %{_ulibdir}/tcl%{major}/msgs/ga.msg
272%lang(ga_IE) %{_ulibdir}/tcl%{major}/msgs/ga_ie.msg
273%lang(gl) %{_ulibdir}/tcl%{major}/msgs/gl.msg
274%lang(gl_ES) %{_ulibdir}/tcl%{major}/msgs/gl_es.msg
275%lang(gv) %{_ulibdir}/tcl%{major}/msgs/gv.msg
276%lang(gv_GB) %{_ulibdir}/tcl%{major}/msgs/gv_gb.msg
277%lang(he) %{_ulibdir}/tcl%{major}/msgs/he.msg
278%lang(hi) %{_ulibdir}/tcl%{major}/msgs/hi.msg
279%lang(hi_IN) %{_ulibdir}/tcl%{major}/msgs/hi_in.msg
280%lang(hr) %{_ulibdir}/tcl%{major}/msgs/hr.msg
281%lang(hu) %{_ulibdir}/tcl%{major}/msgs/hu.msg
282%lang(id) %{_ulibdir}/tcl%{major}/msgs/id.msg
283%lang(id_ID) %{_ulibdir}/tcl%{major}/msgs/id_id.msg
284%lang(is) %{_ulibdir}/tcl%{major}/msgs/is.msg
285%lang(it) %{_ulibdir}/tcl%{major}/msgs/it.msg
286%lang(it_CH) %{_ulibdir}/tcl%{major}/msgs/it_ch.msg
287%lang(ja) %{_ulibdir}/tcl%{major}/msgs/ja.msg
288%lang(kl) %{_ulibdir}/tcl%{major}/msgs/kl.msg
289%lang(kl_GL) %{_ulibdir}/tcl%{major}/msgs/kl_gl.msg
290%lang(ko) %{_ulibdir}/tcl%{major}/msgs/ko.msg
291%lang(ko) %{_ulibdir}/tcl%{major}/msgs/ko_kr.msg
292%lang(kok) %{_ulibdir}/tcl%{major}/msgs/kok.msg
293%lang(kok_IN) %{_ulibdir}/tcl%{major}/msgs/kok_in.msg
294%lang(kw) %{_ulibdir}/tcl%{major}/msgs/kw.msg
295%lang(kw_GB) %{_ulibdir}/tcl%{major}/msgs/kw_gb.msg
296%lang(lt) %{_ulibdir}/tcl%{major}/msgs/lt.msg
297%lang(lv) %{_ulibdir}/tcl%{major}/msgs/lv.msg
298%lang(mk) %{_ulibdir}/tcl%{major}/msgs/mk.msg
299%lang(mr) %{_ulibdir}/tcl%{major}/msgs/mr.msg
300%lang(mr_IN) %{_ulibdir}/tcl%{major}/msgs/mr_in.msg
301%lang(ms) %{_ulibdir}/tcl%{major}/msgs/ms.msg
302%lang(ms_MY) %{_ulibdir}/tcl%{major}/msgs/ms_my.msg
303%lang(mt) %{_ulibdir}/tcl%{major}/msgs/mt.msg
304%lang(nb) %{_ulibdir}/tcl%{major}/msgs/nb.msg
305%lang(nl) %{_ulibdir}/tcl%{major}/msgs/nl.msg
306%lang(nl_BE) %{_ulibdir}/tcl%{major}/msgs/nl_be.msg
307%lang(nn) %{_ulibdir}/tcl%{major}/msgs/nn.msg
308%lang(pl) %{_ulibdir}/tcl%{major}/msgs/pl.msg
309%lang(pt) %{_ulibdir}/tcl%{major}/msgs/pt.msg
310%lang(pt_BR) %{_ulibdir}/tcl%{major}/msgs/pt_br.msg
311%lang(ro) %{_ulibdir}/tcl%{major}/msgs/ro.msg
312%lang(ru) %{_ulibdir}/tcl%{major}/msgs/ru.msg
313%lang(ru_UA) %{_ulibdir}/tcl%{major}/msgs/ru_ua.msg
314%lang(sh) %{_ulibdir}/tcl%{major}/msgs/sh.msg
315%lang(sk) %{_ulibdir}/tcl%{major}/msgs/sk.msg
316%lang(sl) %{_ulibdir}/tcl%{major}/msgs/sl.msg
317%lang(sq) %{_ulibdir}/tcl%{major}/msgs/sq.msg
318%lang(sr) %{_ulibdir}/tcl%{major}/msgs/sr.msg
319%lang(sv) %{_ulibdir}/tcl%{major}/msgs/sv.msg
320%lang(sw) %{_ulibdir}/tcl%{major}/msgs/sw.msg
321%lang(ta) %{_ulibdir}/tcl%{major}/msgs/ta.msg
322%lang(ta_IN) %{_ulibdir}/tcl%{major}/msgs/ta_in.msg
323%lang(te) %{_ulibdir}/tcl%{major}/msgs/te.msg
324%lang(te_IN) %{_ulibdir}/tcl%{major}/msgs/te_in.msg
325%lang(th) %{_ulibdir}/tcl%{major}/msgs/th.msg
326%lang(tr) %{_ulibdir}/tcl%{major}/msgs/tr.msg
327%lang(uk) %{_ulibdir}/tcl%{major}/msgs/uk.msg
328%lang(vi) %{_ulibdir}/tcl%{major}/msgs/vi.msg
329%lang(zh) %{_ulibdir}/tcl%{major}/msgs/zh.msg
330%lang(zh_CN) %{_ulibdir}/tcl%{major}/msgs/zh_cn.msg
331%lang(zh_HK) %{_ulibdir}/tcl%{major}/msgs/zh_hk.msg
332%lang(zh_SG) %{_ulibdir}/tcl%{major}/msgs/zh_sg.msg
333%lang(zh_TW) %{_ulibdir}/tcl%{major}/msgs/zh_tw.msg
334%{_ulibdir}/tcl%{major}/opt0.4
335%{_ulibdir}/tcl%{major}/tclAppInit.c
336%{_ulibdir}/tcl%{major}/tclIndex
32dfff2d 337%{_mandir}/man1/*
ea32bf96 338%lang(pl) %{_mandir}/pl/man1/*
e0e75f05 339
340%files devel
4393e4cf 341%defattr(644,root,root,755)
cbcdc316 342%attr(755,root,root) %{_ulibdir}/tclConfig.sh
500976d5 343%attr(755,root,root) %{_libdir}/lib*.so
3745153e 344%{_libdir}/libtclstub%{major}.a
32dfff2d 345%{_includedir}/*
22ed99bc 346%{_mandir}/man[3n]/*
ccb2b60f 347%lang(pl) %{_mandir}/pl/mann/*
This page took 0.085065 seconds and 4 git commands to generate.