]> git.pld-linux.org Git - SPECS.git/blob - itcl.spec
SPECS updated Sat 31 Jul 20:27:02 CEST 2021
[SPECS.git] / itcl.spec
1 Summary:        [incr Tcl] - object-oriented extension of the Tcl language
2 Summary(pl.UTF-8):      [incr Tcl] - obiektowo zorientowane rozszerzenie języka Tcl
3 Name:           itcl
4 Version:        4.2.0
5 Release:        1
6 License:        Tcl (BSD-like)
7 Group:          Development/Languages/Tcl
8 Source0:        http://downloads.sourceforge.net/incrtcl/%{name}%{version}.tar.gz
9 # Source0-md5:  324e89a088549cd268b0311abba70745
10 Patch0:         %{name}-soname.patch
11 URL:            http://incrtcl.sourceforge.net/itcl/
12 BuildRequires:  autoconf >= 2.50
13 BuildRequires:  automake
14 BuildRequires:  tcl-devel >= 8.6
15 Requires:       tcl >= 8.6
16 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
17
18 %define         _ulibdir        %{_prefix}/lib
19
20 %description
21 [incr Tcl] provides the extra language support needed to build large
22 Tcl/Tk applications. It introduces the notion of objects, which act as
23 building blocks for an application. Each object is a bag of data with
24 a set of procedures or "methods" that are used to manipulate it.
25 Objects are organized into "classes" with identical characteristics,
26 and classes can inherit functionality from one another. This
27 object-oriented paradigm adds another level of organization on top of
28 the basic variable/procedure elements, and the resulting code is
29 easier to understand and maintain.
30
31 %description -l pl.UTF-8
32 [incr Tcl] dostarcza dodatkowe wsparcie języka potrzebne przy
33 tworzeniu dużych aplikacji Tcl/Tk. Wprowadza pojęcie obiektów, które
34 służą jako bloki do budowania aplikacji. Każdy obiekt jest workiem
35 danych ze zbiorem procedur lub "metod", które służą do manipulowania
36 tymi danymi. Obiekty są organizowane w "klasy" o identycznej
37 charakterystyce, a klasy mogą dziedziczyć funkcjonalność z innych
38 klas. Ten paradygmat orientacji obiektowej dodaje dodatkowy poziom
39 zorganizowania do podstawowych elementów zmiennych i procedur, a
40 wynikający z tego kod jest łatwiejszy do zrozumienia i utrzymania.
41
42 %package devel
43 Summary:        Header files for itcl library
44 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki itcl
45 Group:          Development/Libraries
46 Requires:       %{name} = %{version}-%{release}
47 Requires:       tcl-devel >= 8.6
48
49 %description devel
50 Header files for itcl library.
51
52 %description devel -l pl.UTF-8
53 Pliki nagłówkowe biblioteki itcl.
54
55 %prep
56 %setup -q -n %{name}%{version}
57 %patch0 -p1
58
59 %build
60 %{__autoconf}
61 %configure \
62         --libdir=%{_ulibdir}
63
64 %{__make} \
65         CFLAGS_DEFAULT=
66
67 %install
68 rm -rf $RPM_BUILD_ROOT
69 install -d $RPM_BUILD_ROOT%{_libdir}
70
71 %{__make} install \
72         DESTDIR=$RPM_BUILD_ROOT
73
74 %{__mv} $RPM_BUILD_ROOT%{_ulibdir}/itcl%{version}/libitcl* $RPM_BUILD_ROOT%{_libdir}
75 chmod 755 $RPM_BUILD_ROOT%{_libdir}/libitcl*.so.0.*
76 libfile=$(basename $RPM_BUILD_ROOT%{_libdir}/libitcl%{version}.so.0.*)
77 ln -sf $libfile $RPM_BUILD_ROOT%{_libdir}/libitcl%{version}.so.0
78 ln -sf $libfile $RPM_BUILD_ROOT%{_libdir}/libitcl%{version}.so
79 ln -sf $libfile $RPM_BUILD_ROOT%{_libdir}/libitcl.so
80
81 %{__mv} $RPM_BUILD_ROOT%{_ulibdir}/itcl%{version}/itclConfig.sh $RPM_BUILD_ROOT%{_ulibdir}
82 %{__sed} -e 's#-L[^ ]* ##' \
83         -e 's#%{_builddir}/%{name}%{version}#%{_libdir}#' \
84         -e 's#%{_libdir}/generic#%{_includedir}#' \
85         -e 's#%{_ulibdir}/itcl%{version}/lib#%{_libdir}/lib#' \
86         -i $RPM_BUILD_ROOT%{_ulibdir}/itclConfig.sh
87
88 %{__sed} -i -e 's#%{_ulibdir}#%{_libdir}#' $RPM_BUILD_ROOT%{_ulibdir}/itcl%{version}/pkgIndex.tcl
89
90 install -d $RPM_BUILD_ROOT%{_mandir}/man3
91 for f in doc/*.3 ; do
92         %{__sed} -e '/man\.macros/r doc/man.macros' -e '/man\.macros/d' $f >$RPM_BUILD_ROOT%{_mandir}/man3/Itcl_$(basename $f)
93 done
94
95 %clean
96 rm -rf $RPM_BUILD_ROOT
97
98 %post   -p /sbin/ldconfig
99 %postun -p /sbin/ldconfig
100
101 %files
102 %defattr(644,root,root,755)
103 %doc license.terms
104 %attr(755,root,root) %{_libdir}/libitcl%{version}.so.*.*
105 %attr(755,root,root) %ghost %{_libdir}/libitcl%{version}.so.0
106 %dir %{_ulibdir}/itcl%{version}
107 %{_ulibdir}/itcl%{version}/*.tcl
108 %{_mandir}/mann/body.n*
109 %{_mandir}/mann/class.n*
110 %{_mandir}/mann/code.n*
111 %{_mandir}/mann/configbody.n*
112 %{_mandir}/mann/delete.n*
113 %{_mandir}/mann/ensemble.n*
114 %{_mandir}/mann/find.n*
115 %{_mandir}/mann/is.n*
116 %{_mandir}/mann/itcl*.n*
117 %{_mandir}/mann/local.n*
118 %{_mandir}/mann/scope.n*
119
120 %files devel
121 %defattr(644,root,root,755)
122 %attr(755,root,root) %{_libdir}/libitcl%{version}.so
123 %attr(755,root,root) %{_libdir}/libitcl.so
124 %{_libdir}/libitclstub%{version}.a
125 %{_ulibdir}/itclConfig.sh
126 %{_includedir}/itcl*.h
127 %{_mandir}/man3/Itcl_*.3*
This page took 0.197871 seconds and 3 git commands to generate.