]>
Commit | Line | Data |
---|---|---|
52e1fe6c JB |
1 | # TODO |
2 | # - how to pass optflags through rake? | |
3 | # (currently it uses flags hardcoded from ruby build) | |
4 | # | |
5 | # Conditional build: | |
6 | %bcond_without doc # ri/rdoc documentation | |
7 | ||
8 | %define pkgname tk | |
9 | Summary: Tk interface module using tcltklib | |
10 | Summary(pl.UTF-8): Moduł interfejsu Tk wykorzystujący tcltklib | |
11 | Name: ruby-tk | |
12 | Version: 0.2.0 | |
13 | Release: 1 | |
14 | Epoch: 2 | |
15 | License: BSD or Ruby | |
16 | #Source0Download: https://github.com/ruby/tk/releases | |
17 | Source0: https://github.com/ruby/tk/archive/v%{version}/%{pkgname}-%{version}.tar.gz | |
18 | # Source0-md5: bbf9aca2e1954c2bb3b2aa28b227f61c | |
19 | Group: Development/Languages | |
20 | URL: https://github.com/ruby/tk | |
21 | BuildRequires: rpm-rubyprov | |
22 | BuildRequires: rpmbuild(macros) >= 1.665 | |
e805a4b0 | 23 | BuildRequires: ruby-bundler |
52e1fe6c JB |
24 | BuildRequires: ruby-rubygems |
25 | BuildRequires: ruby-rake | |
26 | BuildRequires: sed >= 4.0 | |
27 | Requires: ruby-modules | |
28 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
29 | ||
30 | %description | |
31 | Tk interface module using tcltklib. | |
32 | ||
33 | %description -l pl.UTF-8 | |
34 | Moduł interfejsu Tk wykorzystujący tcltklib. | |
35 | ||
36 | %package examples | |
37 | Summary: Examples for Ruby Tk module | |
38 | Summary(pl.UTF-8): Przykłady do modułu Ruby Tk | |
39 | Group: Documentation | |
40 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
41 | ||
42 | %description examples | |
43 | Examples for Ruby Tk module. | |
44 | ||
45 | %description examples -l pl.UTF-8 | |
46 | Przykłady do modułu Ruby Tk. | |
47 | ||
48 | %package rdoc | |
49 | Summary: HTML documentation for Ruby Tk module | |
50 | Summary(pl.UTF-8): Dokumentacja w formacie HTML dla modułu języka Ruby Tk | |
51 | Group: Documentation | |
52 | Requires: ruby >= 1:1.8.7-4 | |
53 | ||
54 | %description rdoc | |
55 | HTML documentation for Ruby Tk module. | |
56 | ||
57 | %description rdoc -l pl.UTF-8 | |
58 | Dokumentacja w formacie HTML dla modułu języka Ruby Tk. | |
59 | ||
60 | %package ri | |
61 | Summary: ri documentation for Ruby Tk module | |
62 | Summary(pl.UTF-8): Dokumentacja w formacie ri dla modułu języka Ruby Tk | |
63 | Group: Documentation | |
64 | Requires: ruby-doc-ri | |
65 | ||
66 | %description ri | |
67 | ri documentation for Ruby Tk module. | |
68 | ||
69 | %description ri -l pl.UTF-8 | |
70 | Dokumentacja w formacie ri dla modułu języka Ruby Tk. | |
71 | ||
72 | %prep | |
73 | %setup -q -n %{pkgname}-%{version} | |
74 | ||
75 | %{__sed} -i -e '1s,/usr/bin/env *ruby,%{__ruby},' \ | |
76 | bin/* \ | |
77 | lib/tkextlib/pkg_checker.rb \ | |
78 | sample/{safe-tk,tkoptdb-safeTk}.rb | |
79 | ||
80 | # substitite | |
81 | grep -q 'spec\.files.*`git ls-files' tk.gemspec | |
82 | %{__sed} -i -e '/spec\.files/ { s/git ls-files -z/cat .tk_files/; s/\\x0/\\n/ }' tk.gemspec | |
83 | find -type f ! -name .tk_files | sed -e 's,^\./,,' > .tk_files | |
84 | ||
85 | %build | |
86 | # make gemspec self-contained | |
87 | ruby -r rubygems -e 'spec = eval(File.read("%{pkgname}.gemspec")) | |
88 | File.open("%{pkgname}-%{version}.gemspec", "w") do |file| | |
89 | file.puts spec.to_ruby_for_cache | |
90 | end' | |
91 | %{__rm} tk.gemspec | |
92 | ||
93 | rake | |
94 | ||
95 | %if %{with doc} | |
96 | rdoc --ri --op ri lib | |
97 | rdoc --op rdoc lib | |
98 | %{__rm} ri/Object/cdesc-Object.ri | |
99 | %{__rm} ri/lib/page-README.ri | |
100 | %{__rm} ri/created.rid | |
101 | %{__rm} ri/cache.ri | |
102 | %endif | |
103 | ||
104 | %install | |
105 | rm -rf $RPM_BUILD_ROOT | |
106 | ||
107 | install -d $RPM_BUILD_ROOT{%{ruby_vendorarchdir},%{ruby_specdir}} | |
108 | cp -a lib/* $RPM_BUILD_ROOT%{ruby_vendorarchdir} | |
109 | cp -p %{pkgname}-%{version}.gemspec $RPM_BUILD_ROOT%{ruby_specdir} | |
110 | ||
111 | %{__mv} $RPM_BUILD_ROOT%{ruby_vendorarchdir}/README README.tk | |
112 | %{__mv} $RPM_BUILD_ROOT%{ruby_vendorarchdir}/tkextlib/tcllib/README README.tcllib | |
113 | %{__mv} $RPM_BUILD_ROOT%{ruby_vendorarchdir}/tkextlib/tkimg/README README.tkimg | |
114 | ||
115 | %if %{with doc} | |
116 | install -d $RPM_BUILD_ROOT{%{ruby_rdocdir}/%{name}-%{version},%{ruby_ridir}} | |
117 | cp -a rdoc/* $RPM_BUILD_ROOT%{ruby_rdocdir}/%{name}-%{version} | |
118 | cp -a ri/* $RPM_BUILD_ROOT%{ruby_ridir} | |
119 | %endif | |
120 | ||
121 | # install examples | |
122 | install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} | |
123 | cp -a sample/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} | |
124 | ||
125 | %clean | |
126 | rm -rf $RPM_BUILD_ROOT | |
127 | ||
128 | %files | |
129 | %defattr(644,root,root,755) | |
130 | %doc BSDL ChangeLog.tkextlib LICENSE.txt MANUAL_tcltklib.eng README.{1st,fork,md,tcllib,tk,tkimg} | |
131 | %lang(ja) %doc MANUAL_tcltklib.ja | |
132 | %attr(755,root,root) %{ruby_vendorarchdir}/tcltklib.so | |
133 | %attr(755,root,root) %{ruby_vendorarchdir}/tkutil.so | |
134 | %{ruby_vendorarchdir}/multi-tk.rb | |
135 | %{ruby_vendorarchdir}/remote-tk.rb | |
136 | %{ruby_vendorarchdir}/tcltk.rb | |
137 | %{ruby_vendorarchdir}/tk*.rb | |
138 | %{ruby_vendorarchdir}/tk | |
139 | %{ruby_vendorarchdir}/tkextlib | |
140 | %{ruby_specdir}/tk-%{version}.gemspec | |
141 | ||
142 | %files examples | |
143 | %defattr(644,root,root,755) | |
144 | %{_examplesdir}/%{name}-%{version} | |
145 | ||
146 | %if %{with doc} | |
147 | %files rdoc | |
148 | %defattr(644,root,root,755) | |
149 | %{ruby_rdocdir}/%{name}-%{version} | |
150 | ||
151 | %files ri | |
152 | %defattr(644,root,root,755) | |
153 | %{ruby_ridir}/Arc | |
154 | %{ruby_ridir}/Bitmap | |
155 | %{ruby_ridir}/BitmapImage | |
156 | %{ruby_ridir}/Checkbutton | |
157 | %{ruby_ridir}/CloneMenu | |
158 | %{ruby_ridir}/Font | |
159 | %{ruby_ridir}/Grid | |
160 | %{ruby_ridir}/INTERP | |
161 | %{ruby_ridir}/Labelframe | |
162 | %{ruby_ridir}/Line | |
163 | %{ruby_ridir}/MenuButton | |
164 | %{ruby_ridir}/MultiTkIp* | |
165 | %{ruby_ridir}/Object/TkNamedVirtualEvent | |
166 | %{ruby_ridir}/Object/TkSystemMenu | |
167 | %{ruby_ridir}/Object/Ttk | |
168 | %{ruby_ridir}/Object/Tk*.ri | |
169 | %{ruby_ridir}/Object/Mainloop-i.ri | |
170 | %{ruby_ridir}/Object/__method_missing_alias_for_MultiTkIp__-i.ri | |
171 | %{ruby_ridir}/Object/check_pkg-i.ri | |
172 | %{ruby_ridir}/Object/get_pkg_list-i.ri | |
173 | %{ruby_ridir}/Object/help_msg-i.ri | |
174 | %{ruby_ridir}/Object/method_missing-i.ri | |
175 | %{ruby_ridir}/Object/subdir_check-i.ri | |
176 | %{ruby_ridir}/OptionMenuButton | |
177 | %{ruby_ridir}/Oval | |
178 | %{ruby_ridir}/Pack | |
179 | %{ruby_ridir}/Panedwindow | |
180 | %{ruby_ridir}/PhotoImage | |
181 | %{ruby_ridir}/Place | |
182 | %{ruby_ridir}/Polygon | |
183 | %{ruby_ridir}/Radiobutton | |
184 | %{ruby_ridir}/Rectangle | |
185 | %{ruby_ridir}/RemoteTkIp | |
186 | %{ruby_ridir}/Selection | |
187 | %{ruby_ridir}/Spinbox | |
188 | %{ruby_ridir}/TclTk* | |
189 | %{ruby_ridir}/TextItem | |
190 | %{ruby_ridir}/Tk* | |
191 | %{ruby_ridir}/Variable | |
192 | %{ruby_ridir}/VirtualEvent | |
193 | %{ruby_ridir}/WindowItem | |
194 | %{ruby_ridir}/Winfo | |
195 | %{ruby_ridir}/lib/tkextlib | |
196 | %endif |