/[packages]/cauldron/hugs98/current/SPECS/hugs98.spec
ViewVC logotype

Contents of /cauldron/hugs98/current/SPECS/hugs98.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1238695 - (show annotations) (download)
Thu Jun 21 21:51:52 2018 UTC (5 years, 9 months ago) by wally
File size: 4963 byte(s)
- build with fixed openjade
1 %define hugs_ver plus-Sep2006
2
3 Name: hugs98
4 Version: 2006.09
5 Release: %mkrel 12
6 Summary: Haskell Interpreter
7
8 Group: Development/Other
9 License: BSD
10 URL: http://www.haskell.org/hugs
11 Source0: http://cvs.haskell.org/Hugs/downloads/2006-09/%{name}-%{hugs_ver}.tar.gz
12 Source1: make_bootlib
13 Patch0: hugs98-gnu.patch
14
15 BuildRequires: docbook-utils
16 BuildRequires: pkgconfig(freeglut)
17 BuildRequires: pkgconfig(gl)
18 BuildRequires: pkgconfig(glu)
19 BuildRequires: pkgconfig(ice)
20 BuildRequires: pkgconfig(sm)
21 BuildRequires: pkgconfig(x11)
22 BuildRequires: pkgconfig(xi)
23 BuildRequires: pkgconfig(xmu)
24 BuildRequires: pkgconfig(xt)
25 BuildRequires: readline-devel
26 BuildRequires: pkgconfig(xproto)
27 BuildRequires: pkgconfig(openal)
28 BuildRequires: pkgconfig(freealut)
29 BuildRequires: prelink
30 Requires(pre): update-alternatives
31
32 %description
33 Hugs 98 is a functional programming system based on Haskell 98, the de
34 facto standard for non-strict functional programming languages. Hugs
35 98 provides an almost complete implementation of Haskell 98.
36
37
38 %package openal
39 Summary: OpenAL package for Hugs98
40 Group: Development/Other
41 Requires: %{name} = %{version}
42
43 %description openal
44 OpenAL package for Hugs98.
45
46
47 %package alut
48 Summary: ALUT package for Hugs98
49 Group: Development/Other
50 Requires: %{name} = %{version}
51 Requires: %{name}-openal = %{version}
52
53 %description alut
54 ALUT package for Hugs98.
55
56
57 %package x11
58 Summary: X11 package for Hugs98
59 Group: Development/Other
60 Requires: %{name} = %{version}
61
62 %description x11
63 X11 package for Hugs98.
64
65
66 %package opengl
67 Summary: OpenGL package for Hugs98
68 Group: Development/Other
69 Requires: %{name} = %{version}
70
71 %description opengl
72 OpenGL package for Hugs98.
73
74
75 %package glut
76 Summary: GLUT package for Hugs98
77 Group: Development/Other
78 Requires: %{name} = %{version}
79 Requires: %{name}-opengl = %{version}
80
81 %description glut
82 GLUT package for Hugs98.
83
84
85 %package hgl
86 Summary: Haskell Graphics Library for Hugs98
87 Group: Development/Other
88 Requires: %{name} = %{version}
89 Requires: %{name}-x11 = %{version}
90
91 %description hgl
92 Haskell Graphics Library for Hugs98.
93
94
95 %package demos
96 Summary: Demo files for Hugs98
97 Group: Development/Other
98 Requires: %{name} = %{version}
99 Requires: %{name}-glut = %{version}
100 Requires: %{name}-hgl = %{version}
101
102 %description demos
103 Demo files for Hugs98.
104
105
106 %prep
107 %setup -q -n %{name}-%{hugs_ver}
108 cp -f %{SOURCE1} libraries/tools/
109 chmod +x libraries/tools/make_bootlib
110 # add undefined struct
111 %patch0 -p1 -b .gnu
112 # use inline keyword
113 sed -i 's|extern inline|inline|' packages/base/include/HsBase.h packages/network/include/HsNet.h packages/unix/include/HsUnix.h hsc2hs/Main.hs
114 # libalut needs libopenal
115 sed -i 's|ALUT_LIBS="$ac_cv_search_alutExit"|ALUT_LIBS="$ac_cv_search_alutExit -lopenal"|' packages/ALUT/configure
116 # this is to avoid network lookup of the DTD
117 sed -i 's|\"http://www.oasis-open.org.*\"||' docs/users_guide/users_guide.xml
118
119 # fix build on aarch64
120 for d in $(find . -name "config.sub"); do
121 cp -af %{_rpmconfigdir}/config.{guess,sub} $(dirname $d)
122 done
123
124 %build
125 %define __global_ldflags ""
126 %configure2_5x --with-pthreads --enable-char-encoding=locale
127 %make_build
128
129
130 %install
131 %make_install install_all_but_docs
132 make -C docs DESTDIR=%{buildroot} install_man
133
134 execstack -s %{buildroot}%{_bindir}/{hugs,runhugs,ffihugs}
135
136 find %{buildroot} -name '*.so' -exec chmod 0755 '{}' ';'
137
138 mv %{buildroot}%{_libdir}/hugs/demos installed-demos
139 rm installed-demos/Makefile.in
140
141 mv %{buildroot}%{_datadir}/hsc2hs-*/* %{buildroot}%{_libdir}/hugs/programs/hsc2hs
142
143 sed -i "s|^bindir.*|bindir=\"%{_bindir}\"|
144 s|^libdir.*|libdir=\"%{_libdir}/hugs/programs/hsc2hs|
145 s|^datadir.*|datadir=\"%{_libdir}/hugs/programs/hsc2hs\"|" \
146 %{buildroot}%{_libdir}/hugs/programs/hsc2hs/Paths_hsc2hs.hs
147
148
149
150 %files
151 %doc License
152 %doc Readme
153 %doc Credits
154 %doc docs/ffi-notes.txt
155 %doc docs/server.html
156 %doc docs/libraries-notes.txt
157 %doc docs/users_guide/users_guide
158 %{_bindir}/*
159 %{_libdir}/hugs
160 %exclude %{_libdir}/hugs/packages/OpenAL
161 %exclude %{_libdir}/hugs/packages/ALUT
162 %exclude %{_libdir}/hugs/packages/X11
163 %exclude %{_libdir}/hugs/packages/OpenGL
164 %exclude %{_libdir}/hugs/packages/GLUT
165 %exclude %{_libdir}/hugs/packages/HGL
166 %{_mandir}/man*/*
167
168
169 %files demos
170 %doc installed-demos/*
171
172
173 %files openal
174 %{_libdir}/hugs/packages/OpenAL
175
176
177 %files alut
178 %{_libdir}/hugs/packages/ALUT
179
180
181 %files x11
182 %{_libdir}/hugs/packages/X11
183
184
185 %files opengl
186 %{_libdir}/hugs/packages/OpenGL
187
188
189 %files glut
190 %{_libdir}/hugs/packages/GLUT
191
192
193 %files hgl
194 %{_libdir}/hugs/packages/HGL
195
196
197 %post
198 update-alternatives --install %{_bindir}/runhaskell runhaskell \
199 %{_bindir}/runhugs 100
200 update-alternatives --install %{_bindir}/hsc2hs hsc2hs \
201 %{_bindir}/hsc2hs-hugs 100
202 update-alternatives --install %{_bindir}/cpphs cpphs \
203 %{_bindir}/cpphs-hugs 100
204
205
206 %preun
207 if [ "$1" = 0 ]; then
208 update-alternatives --remove runhaskell %{_bindir}/runhugs
209 update-alternatives --remove hsc2hs %{_bindir}/hsc2hs-hugs
210 update-alternatives --remove cpphs %{_bindir}/cpphs-hugs
211 fi
212
213

  ViewVC Help
Powered by ViewVC 1.1.30