-
Notifications
You must be signed in to change notification settings - Fork 0
/
gtk2hs.spec.in
343 lines (272 loc) · 9.55 KB
/
gtk2hs.spec.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
# RPM spec file for Gtk2HS -*-rpm-spec-*-
#
# Copyright [2001..2002] Manuel M T Chakravarty <chak@cse.unsw.edu.au>
# Copyright 2002, 2003, 2004 Jens-Ulrik Holger Petersen <petersen@haskell.org>
%define ghc_version 6.2.2
%define ghcver ghc622
%define old_suffix ghc%{ghc_version}
%define mozver 37:1.7.3
Summary: A Haskell GUI library based on the Gtk+ GUI toolkit
Name: gtk2hs
Version: @VERSION@
Release: 0.%(date +%%Y%%m%%d)
Epoch: 0
License: LGPL
Group: Development/Libraries
Source: gtk2hs-%{version}.tar.gz
URL: http://gtk2hs.sourceforge.net/
BuildRoot: /var/tmp/gtk2hs-%{version}-root
BuildRequires: ghc = %{ghc_version}, %{_bindir}/hsc2hs, haddock
BuildRequires: gtk2-devel, gtksourceview-devel, libglade2-devel, GConf2-devel, mozilla-devel = %{mozver}
%description
A Gtk+ binding for the functional language Haskell featuring
automatic memory management, unicode support, and wide
coverage of widgets up to Gtk+ 2.2 as well as some 2.4 widgets
such as the new file chooser dialog.
%package -n gtk2hs-%{ghcver}
Summary: A Haskell GUI library based on the Gtk+ GUI toolkit
Group: Development/Languages/Haskell
Requires: ghc = %{ghc_version}, gtk2hs-glib-%{ghcver} = %{version}-%{release}
Requires: gtk2-devel
Requires(post,preun): %{_bindir}/ghc-pkg-%{ghc_version}
Conflicts: %{name}-%{old_suffix}
%description -n gtk2hs-%{ghcver}
A Gtk+ binding for the functional language Haskell featuring
automatic memory management, unicode support, and wide
coverage of widgets up to Gtk+ 2.2 as well as some 2.4 widgets
such as the new file chooser dialog.
This package contains the libraries compiled for ghc-%{ghc_version}.
%package doc
Summary: Haskell Gtk+ GUI library documentation
Group: Development/Languages/Haskell
%description doc
A Gtk+ binding for the functional language Haskell featuring
automatic memory management, unicode support, and wide
coverage of widgets up to Gtk+ 2.2 as well as some 2.4 widgets
such as the new file chooser dialog.
This package contains the gtk2hs documentation.
%package gconf-%{ghcver}
Summary: Haskell binding for GConf
Group: Development/Languages/Haskell
Requires: ghc = %{ghc_version}
Requires: gtk2hs-%{ghcver} = %{version}-%{release}, GConf-devel
Requires(post,preun): %{_bindir}/ghc-pkg-%{ghc_version}
Conflicts: %{name}-gconf-%{old_suffix}
%description gconf-%{ghcver}
A GConf binding for gtk2hs.
This package is compiled for ghc-%{ghc_version}.
%package glade-%{ghcver}
Summary: Haskell binding of glade for gtk2hs.
Group: Development/Languages/Haskell
Requires: ghc = %{ghc_version}
Requires: libglade2-devel
Requires(post,preun): %{_bindir}/ghc-pkg-%{ghc_version}
Conflicts: %{name}-glade-%{old_suffix}
%description glade-%{ghcver}
A Glade2 binding for gtk2hs.
This package is compiled for ghc-%{ghc_version}.
%package glib-%{ghcver}
Summary: Haskell binding for glib
Group: Development/Languages/Haskell
Requires: ghc = %{ghc_version}
Requires: glib-devel
Requires(post,preun): %{_bindir}/ghc-pkg-%{ghc_version}
%description glib-%{ghcver}
A glib binding for gtk2hs.
%package mozembed-%{ghcver}
Summary: Haskell binding for gtkembedmoz
Group: Development/Languages/Haskell
Requires: ghc = %{ghc_version}
Requires: gtk2hs-%{ghcver} = %{version}-%{release}, mozilla-devel = %{mozver}
Requires(post,preun): %{_bindir}/ghc-pkg-%{ghc_version}
%description mozembed-%{ghcver}
A GtkEmbedMoz binding for gtk2hs.
%package sourceview-%{ghcver}
Summary: Haskell binding for gtksourceview
Group: Development/Languages/Haskell
Requires: ghc = %{ghc_version}
Requires: gtk2hs-%{ghcver} = %{version}-%{release}, gtksourceview-devel
Requires(post,preun): %{_bindir}/ghc-pkg-%{ghc_version}
Conflicts: %{name}-sourceview-%{old_suffix}
%description sourceview-%{ghcver}
A GtkSourceView binding for gtk2hs.
This package is compiled for ghc-%{ghc_version}.
# the debuginfo subpackage is currently empty anyway, so don't generate it
%define debug_package %{nil}
%define __spec_install_post /usr/lib/rpm/brp-compress
%define ghclibdir %{_libdir}/ghc-%{ghc_version}
%define gtk2hsdir %{ghclibdir}/gtk2hs
%prep
%setup -q
%build
./configure --with-hc=ghc-%{ghc_version} --with-hcflags="-O" --enable-docs --without-pkgreg --prefix=%{_prefix} --libdir=%{ghclibdir}
LANG=C make all
%install
rm -rf %{buildroot}
make DESTDIR=%{buildroot} install
%clean
rm -rf %{buildroot}
%define ghcpkg_inst env pkglibdir=%{gtk2hsdir} ghc-pkg-%{ghc_version} -u -g -i
%post -n gtk2hs-%{ghcver}
%{ghcpkg_inst} %{gtk2hsdir}/gtk.pkg
%{ghcpkg_inst} %{gtk2hsdir}/mogul.pkg
%post gconf-%{ghcver}
%{ghcpkg_inst} %{gtk2hsdir}/gconf.pkg
%post glade-%{ghcver}
%{ghcpkg_inst} %{gtk2hsdir}/glade.pkg
%post glib-%{ghcver}
%{ghcpkg_inst} %{gtk2hsdir}/glib.pkg
%post mozembed-%{ghcver}
%{ghcpkg_inst} %{gtk2hsdir}/mozembed.pkg
%post sourceview-%{ghcver}
%{ghcpkg_inst} %{gtk2hsdir}/sourceview.pkg
%preun -n gtk2hs-%{ghcver}
if [ "$1" = 0 ]; then
rm -f %{gtk2hsdir}/{HSgtk,HSmogul}.o
ghc-pkg-%{ghc_version} -r mogul || :
ghc-pkg-%{ghc_version} -r gtk || :
fi
%preun gconf-%{ghcver}
if [ "$1" = 0 ]; then
rm -f %{gtk2hsdir}/HSgconf.o
ghc-pkg-%{ghc_version} -r gconf || :
fi
%preun glade-%{ghcver}
if [ "$1" = 0 ]; then
rm -f %{gtk2hsdir}/HSglade.o
ghc-pkg-%{ghc_version} -r glade || :
fi
%preun glib-%{ghcver}
if [ "$1" = 0 ]; then
rm -f %{gtk2hsdir}/HSglib.o
ghc-pkg-%{ghc_version} -r glib || :
fi
%preun mozembed-%{ghcver}
if [ "$1" = 0 ]; then
rm -f %{gtk2hsdir}/HSmozembed.o
ghc-pkg-%{ghc_version} -r mozembed || :
fi
%preun sourceview-%{ghcver}
if [ "$1" = 0 ]; then
rm -f %{gtk2hsdir}/HSsourceview.o
ghc-pkg-%{ghc_version} -r sourceview || :
fi
%files -n gtk2hs-%{ghcver}
%defattr(-,root,root)
%dir %{gtk2hsdir}
%{gtk2hsdir}/gtk.pkg
%{gtk2hsdir}/mogul.pkg
%{gtk2hsdir}/libHSgtk.a
%{gtk2hsdir}/libHSmogul.a
%dir %{gtk2hsdir}/imports
%{gtk2hsdir}/imports/gtk
%{gtk2hsdir}/imports/mogul
%doc ChangeLog TODO AUTHORS COPYING.LIB
%files doc
%defattr(-,root,root)
%{_defaultdocdir}/gtk2hs
%files gconf-%{ghcver}
%defattr(-,root,root)
%dir %{gtk2hsdir}
%{gtk2hsdir}/gconf.pkg
%{gtk2hsdir}/libHSgconf.a
%dir %{gtk2hsdir}/imports
%{gtk2hsdir}/imports/gconf
%files glade-%{ghcver}
%defattr(-,root,root)
%dir %{gtk2hsdir}
%{gtk2hsdir}/glade.pkg
%{gtk2hsdir}/libHSglade.a
%dir %{gtk2hsdir}/imports
%{gtk2hsdir}/imports/glade
%files glib-%{ghcver}
%defattr(-,root,root)
%dir %{gtk2hsdir}
%{gtk2hsdir}/glib.pkg
%{gtk2hsdir}/libHSglib.a
%dir %{gtk2hsdir}/imports
%{gtk2hsdir}/imports/glib
%files mozembed-%{ghcver}
%defattr(-,root,root)
%dir %{gtk2hsdir}
%{gtk2hsdir}/mozembed.pkg
%{gtk2hsdir}/libHSmozembed.a
%dir %{gtk2hsdir}/imports
%{gtk2hsdir}/imports/mozembed
%files sourceview-%{ghcver}
%defattr(-,root,root)
%dir %{gtk2hsdir}
%{gtk2hsdir}/sourceview.pkg
%{gtk2hsdir}/libHSsourceview.a
%dir %{gtk2hsdir}/imports
%{gtk2hsdir}/imports/sourceview
%changelog
* Thu Aug 19 2004 Jens Petersen <petersen@haskell.org>
- use suffix -ghc621 instead of -ghc6.2.1 and conflict with old packages
- buildrequire ghc-doc and gtk2hs-doc-ghc621 requires ghc-doc
- move docs and demo files to %{_defaultdocdir}/gtk2hs
* Mon Aug 16 2004 Jens Petersen <petersen@haskell.org>
- update to 0.9.6
* Thu Jul 22 2004 Jens Petersen <petersen@haskell.org>
- split sourceview and glade into separate subpackages
- require -devel packages rather than lib pkg for gtk2, gtksourceview,
and libglade2
* Wed Mar 24 2004 Jens Petersen <petersen@haskell.org>
- enable gtksourceview and glade configure options
- use mkdir -p instead of mkdirhier
- update file locations in %%post and %%preun scripts
- buildrequire libglade2-devel
* Tue Nov 11 2003 Jens Petersen <petersen@haskell.org>
- use %%c2hs instead of "--with c2hs" to configure c2hs program
- clean demo to avoid binary files in docs dir
* Mon Nov 3 2003 Jens Petersen <petersen@haskell.org>
- add sourceview package to %%post and %%preun
- install gtksourceview haskell.lang language-spec
* Thu Jul 31 2003 Jens Petersen <petersen@haskell.org>
- build with ghc-6.0.1
- put demo dir in docs dir rather than individual source files
* Thu Jul 10 2003 Jens Petersen <petersen@haskell.org>
- build with ghc-6.0
- name ghc subpackage "ghc%%{ghc_version}"
* Wed Jun 18 2003 Jens Petersen <petersen@haskell.org>
- require and buildrequire %{_bindir}/ghc-%%{ghc_version}
* Wed May 21 2003 Jens Petersen <petersen@haskell.org>
- add -g option to ghc-pkg -u so that ghci object gets generated
- delete them when uninstalling
- build and include mogul documentation
* Thu May 15 2003 Jens Petersen <petersen@haskell.org>
- use new DESTDIR make variable, so no longer need to fix config files in post
- remove buildroot before install
- build and include gtk docs
* Fri Jan 10 2003 Jens Petersen <petersen@haskell.org>
- made into .spec.in file
- let configure set the version
- update description
- introduce --with-c2hs rpmbuild option
- use perl to remove buildroot traces from package conf files
- simplify ghc-pkg update commands
* Tue Dec 17 2002 Jens Petersen <petersen@haskell.org>
- latest cvs with ghc 5.04.2
* Thu Sep 26 2002 Jens Petersen
- build with ghc-5.04.1
* Fri Aug 2 2002 Jens Petersen
- only include demo source in doc dir
* Fri Jul 26 2002 Jens Petersen
- build with ghc-5.04
- cvs update
* Wed Jul 10 2002 Jens Petersen
- my current branch
* Wed May 1 2002 Jens Petersen
- patch TreeViewColumn.chs to make it usable
* Tue Apr 23 2002 Jens Petersen
- 0.9.0
- update gtk2 and mogul ghc-pkg entries on upgrade
* Fri Apr 12 2002 Jens Petersen
- adapt for gtk2hs
- fix mk files for buildroot install
- post and postun scriptlets for pkg config
* Tue Mar 12 2002 Manuel Chakravarty
- require a specific Haskell compiler (namely, the one for which the packages
was compiled)
* Sat Feb 17 2001 Manuel Chakravarty
- derived from C->Haskell's .spec file