]> git.pld-linux.org Git - packages/mono-moonlight.git/blob - mono-moonlight.spec
77f49503836a7ec220225093277ad879ee8a40b9
[packages/mono-moonlight.git] / mono-moonlight.spec
1 # TODO
2 # - find pld packages: rsvg2-sharp
3 # - Release tarballs: http://ftp.novell.com/pub/mono/sources/moon/
4 # - upstream 2.3 spec http://github.com/mono/moon/blob/moon/moon-2-3/moonlight.spec.in
5 # - debian 1.0 repo: http://git.debian.org/?p=pkg-mono/packages/moon.git
6 # - fedora 1.0.1 http://olea.org/paquetes-rpm/repoview/moonlight.html
7 # - ubuntu 2.3 https://launchpad.net/ubuntu/+source/moon/2.3-0ubuntu1
8 # - not compatible with our libunwind (missing demangle.h)
9 # - patch to be able to disable libunwind instead of BC
10 # - http://lists.xensource.com/archives/html/xen-devel/2009-05/msg00075.html
11 Summary:        Free Software clone of Silverlight
12 Name:           mono-moonlight
13 Version:        2.3
14 Release:        0.1
15 License:        LGPL v2, MIT License (or similar), MS-PL
16 Group:          X11/Applications/Multimedia
17 URL:            http://www.mono-project.com/Moonlight
18 Source0:        http://ftp.novell.com/pub/mono/sources/moon/%{version}/moonlight-%{version}.tar.bz2
19 # Source0-md5:  164c4a5068f85244a0019ce49a6ee629
20 Source1:        http://ftp.novell.com/pub/mono/sources/moon/%{version}/mono-2.6.1.tar.bz2
21 # Source1-md5:  ad1286a66e802bf0be01cc09f433db8f
22 Source2:        http://ftp.novell.com/pub/mono/sources/moon/%{version}/mono-basic-2.6.tar.bz2
23 # Source2-md5:  172b70b30f58bf00834db223ab8d620e
24 Patch0:         minizip.patch
25 Patch1:         moon_fix_gdk_pointer_size.patch
26 BuildRequires:  alsa-lib-devel
27 BuildRequires:  autoconf
28 BuildRequires:  automake
29 BuildRequires:  bison
30 BuildRequires:  cairo-devel >= 1.8.4
31 BuildRequires:  dotnet-gnome-desktop-sharp-devel
32 BuildRequires:  dotnet-gtk-sharp2
33 BuildRequires:  dotnet-gtk-sharp2-devel
34 BuildRequires:  expat-devel
35 BuildRequires:  ffmpeg-devel
36 BuildRequires:  gettext-devel
37 BuildRequires:  gtk+2-devel
38 BuildRequires:  libstdc++-devel
39 BuildRequires:  libtool
40 BuildRequires:  minizip-devel
41 BuildRequires:  mono-compat-links
42 BuildRequires:  mono-csharp
43 BuildRequires:  mono-devel >= 2.6
44 BuildRequires:  mono-monodoc
45 BuildRequires:  ncurses-devel
46 BuildRequires:  pkgconfig
47 BuildRequires:  pulseaudio-devel
48 BuildRequires:  rpmbuild(macros) >= 1.357
49 #BuildRequires: rsvg2-sharp
50 #BuildRequires: wnck-sharp
51 BuildRequires:  xulrunner-devel
52 BuildRequires:  zip
53 BuildConflicts: libunwind-devel
54 ExclusiveArch:  %{ix86} %{x8664}
55 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
56
57 %description
58 Moonlight is an open source implementation of Microsoft Silverlight
59 for Unix systems.
60
61 %package -n libmoon
62 Summary:        Novell Moonlight
63 License:        LGPL v2
64 Group:          X11/Applications/Multimedia
65 Requires:       mono-core >= 2.6
66
67 %description -n libmoon
68 Moonlight is an open source implementation of Microsoft Silverlight
69 for Unix systems.
70
71 %package -n libmoon-devel
72 Summary:        Development files for libmoon
73 License:        LGPL v2
74 Group:          Libraries
75 Requires:       mono-devel >= 2.6
76
77 %description -n libmoon-devel
78 Development files for libmoon.
79
80 Moonlight is an open source implementation of Microsoft Silverlight
81 for Unix systems.
82
83 %package -n browser-plugin-moonlight
84 Summary:        Novell Moonlight Browser Plugin
85 License:        LGPL v2, MIT License (or similar), MS-PL
86 Group:          X11/Applications/Multimedia
87 Requires:       browser-plugins >= 2.0
88 Requires:       libmoon = %{version}-%{release}
89 Requires:       mono-core >= 2.6
90 Obsoletes:      mono-moonlight-plugin
91
92 %description -n browser-plugin-moonlight
93 Novell Moonlight Browser Plugin.
94
95 Moonlight is an open source implementation of Microsoft Silverlight
96 for Unix systems.
97
98 %package web-devel
99 Summary:        Development files for Moonlight Web
100 License:        MIT License (or similar), MS-PL
101 Group:          Development/Languages
102 Suggests:       %{name}-plugin = %{version}-%{release}
103
104 %description web-devel
105 Development files for creating Moonlight web applications.
106
107 Moonlight is an open source implementation of Microsoft Silverlight
108 for Unix systems.
109
110 %package desktop
111 Summary:        Mono bindings for Moonlight Desktop
112 License:        MIT License (or similar), MS-PL
113 Group:          X11/Applications/Multimedia
114 Requires:       libmoon = %{version}-%{release}
115
116 %description desktop
117 Mono bindings for Novell Moonlight.
118
119 Moonlight is an open source implementation of Microsoft Silverlight
120 for Unix systems.
121
122 %package desktop-devel
123 Summary:        Development files for Moonlight Desktop
124 License:        MIT License (or similar), MS-PL
125 Group:          Development/Languages
126 Requires:       %{name}-desktop = %{version}-%{release}
127 Requires:       dotnet-gtk-sharp2
128 Requires:       glib2-devel
129 Requires:       libmoon = %{version}-%{release}
130 Suggests:       %{name}-tools = %{version}-%{release}
131
132 %description desktop-devel
133 Development files for Moonlight Desktop.
134
135 Moonlight is an open source implementation of Microsoft Silverlight
136 for Unix systems.
137
138 %package tools
139 Summary:        Various tools for Novell Moonlight
140 License:        MIT License (or similar)
141 Group:          Development/Languages
142 Requires:       %{name}-desktop = %{version}-%{release}
143 Requires:       libmoon = %{version}-%{release}
144
145 %description tools
146 Various tools for Novell Moonlight.
147
148 Moonlight is an open source implementation of Microsoft Silverlight
149 for Unix systems.
150
151 %prep
152 %setup -q -n moonlight-%{version} -a1 -a2
153 %patch0 -p1
154 %patch1 -p1
155
156 mv mono-2.6.1 mono
157 mv mono-basic-2.6 mono-basic
158
159 rm -r pixman cairo src/zip curl
160
161 # force rebuild
162 rm -f configure
163
164 %build
165 topdir=$(pwd)
166 # build mono first
167 # The plugin requires a complete build of it's own mono
168 if [ ! -f mono.built ]; then
169         cd mono
170         # We have not determined which --enable-minimal options might be safe
171         # so please do not use any of them
172         ./configure \
173                 --prefix=$topdir/install \
174                 --with-mcs-docs=no \
175                 --with-ikvm-native=no
176         %{__make} -j1
177         cd ..
178         touch mono.built
179 fi
180
181 if [ ! -f configure ]; then
182         %{__libtoolize}
183         %{__aclocal} -I m4
184         %{__autoconf}
185         %{__automake}
186 fi
187 %configure \
188         --enable-dependency-tracking \
189         --without-testing \
190         --without-performance \
191         --without-examples \
192         --with-system-minizip=yes \
193         --with-alsa=yes \
194         --with-cairo=system \
195         --with-curl=system \
196         --with-debug=no \
197         --with-ff2=no \
198         --with-ff3=yes \
199         --with-ffmpeg=yes \
200         --with-managed=no \
201         --with-pulse-audio=yes \
202         --with-pulseaudio=yes \
203         --with-mcspath=$topdir/mono/mcs \
204         --with-mono-basic-path=$topdir/mono-basic \
205
206 %{__make} -j1
207
208 # The next lines would build the XPI if we wanted it
209 # So that the xpi will pick up the custom libmono.so
210 #export PKG_CONFIG_PATH=%{_builddir}/install/lib/pkgconfig:${PKG_CONFIG_PATH}
211 #%{__make} user-plugin
212
213 %install
214 rm -rf $RPM_BUILD_ROOT
215 %{__make} install -j1 \
216         DESTDIR=$RPM_BUILD_ROOT
217
218 # Symlink the loader into browser-plugins for SUSE
219 install -d $RPM_BUILD_ROOT%{_browserpluginsdir}
220 ln -s %{_libdir}/moonlight/plugin/libmoonloader.so $RPM_BUILD_ROOT%{_browserpluginsdir}/libmoonloader.so
221
222 # We don't like nasty .la files
223 find $RPM_BUILD_ROOT -name '*.la' | xargs rm -v
224
225 %clean
226 rm -rf $RPM_BUILD_ROOT
227
228 %post   -n libmoon -p /sbin/ldconfig
229 %postun -n libmoon -p /sbin/ldconfig
230
231 %post -n browser-plugin-moonlight
232 %update_browser_plugins
233
234 %postun -n browser-plugin-moonlight
235 if [ "$1" = 0 ]; then
236         %update_browser_plugins
237 fi
238
239 %files -n libmoon
240 %defattr(644,root,root,755)
241 %doc AUTHORS ChangeLog LICENSE NEWS README TODO
242 %attr(755,root,root) %{_libdir}/libmoon.so.*.*.*
243 %attr(755,root,root) %ghost %{_libdir}/libmoon.so.0
244
245 %files -n libmoon-devel
246 %defattr(644,root,root,755)
247 %{_libdir}/libmoon.so
248
249 %files -n browser-plugin-moonlight
250 %defattr(644,root,root,755)
251 %attr(755,root,root) %{_browserpluginsdir}/libmoonloader.so
252 %dir %{_libdir}/moonlight/plugin
253 %attr(755,root,root) %{_libdir}/moonlight/plugin/libmoonloader.so
254 %attr(755,root,root) %{_libdir}/moonlight/plugin/libmoonplugin.so
255 %attr(755,root,root) %{_libdir}/moonlight/plugin/libmoonplugin-curlbridge.so
256 %attr(755,root,root) %{_libdir}/moonlight/plugin/libmoonplugin-ff3bridge.so
257 %{_libdir}/moonlight/plugin/Microsoft.VisualBasic.dll*
258 %{_libdir}/moonlight/plugin/System.Core.dll*
259 %{_libdir}/moonlight/plugin/System.Net.dll*
260 %{_libdir}/moonlight/plugin/System.Runtime.Serialization.dll*
261 %{_libdir}/moonlight/plugin/System.ServiceModel.Web.dll*
262 %{_libdir}/moonlight/plugin/System.ServiceModel.dll*
263 %{_libdir}/moonlight/plugin/System.Windows.Browser.dll*
264 %{_libdir}/moonlight/plugin/System.Windows.dll*
265 %{_libdir}/moonlight/plugin/System.Xml.dll*
266 %{_libdir}/moonlight/plugin/System.dll*
267 %{_libdir}/moonlight/plugin/mscorlib.dll*
268
269 %files web-devel
270 %defattr(644,root,root,755)
271 %attr(755,root,root) %{_bindir}/smcs
272 %dir %{_prefix}/lib/moonlight
273 %dir %{_prefix}/lib/moonlight/2.0-redist
274 %{_prefix}/lib/moonlight/2.0-redist/System.Windows.Controls.Data.dll*
275 %{_prefix}/lib/moonlight/2.0-redist/System.Windows.Controls.dll*
276 %{_prefix}/lib/moonlight/2.0-redist/System.Xml.Linq.dll*
277 %dir %{_prefix}/lib/moonlight/2.0
278 %{_prefix}/lib/moonlight/2.0/Microsoft.VisualBasic.dll*
279 %{_prefix}/lib/moonlight/2.0/Mono.CompilerServices.SymbolWriter.dll*
280 %{_prefix}/lib/moonlight/2.0/System.Core.dll*
281 %{_prefix}/lib/moonlight/2.0/System.Net.dll*
282 %{_prefix}/lib/moonlight/2.0/System.Runtime.Serialization.dll*
283 %{_prefix}/lib/moonlight/2.0/System.ServiceModel.Web.dll*
284 %{_prefix}/lib/moonlight/2.0/System.ServiceModel.dll*
285 %{_prefix}/lib/moonlight/2.0/System.Windows.Browser.dll*
286 %{_prefix}/lib/moonlight/2.0/System.Windows.dll*
287 %{_prefix}/lib/moonlight/2.0/System.Xml.dll*
288 %{_prefix}/lib/moonlight/2.0/System.dll*
289 %{_prefix}/lib/moonlight/2.0/mscorlib.dll*
290 %{_prefix}/lib/moonlight/2.0/respack.exe*
291 %{_prefix}/lib/moonlight/2.0/smcs
292 %{_prefix}/lib/moonlight/2.0/smcs.exe*
293 %{_prefix}/lib/moonlight/2.0/buildversion
294 %{_npkgconfigdir}/moonlight-web-2.0.pc
295
296 %files desktop
297 %defattr(644,root,root,755)
298 %{_prefix}/lib/mono/gac/Moon.Windows.Desktop
299 %{_prefix}/lib/mono/gac/Moonlight.Gtk
300 %{_prefix}/lib/mono/gac/System.Windows
301 %{_prefix}/lib/mono/gac/System.Windows.Browser
302 %{_prefix}/lib/mono/gac/System.Windows.Controls
303 %{_prefix}/lib/mono/gac/System.Windows.Controls.Data
304
305 %files desktop-devel
306 %defattr(644,root,root,755)
307 %dir %{_prefix}/lib/mono/moonlight
308 %{_prefix}/lib/mono/moonlight/Moon.Windows.Desktop.dll*
309 %{_prefix}/lib/mono/moonlight/System.Windows.Browser.dll*
310 %{_prefix}/lib/mono/moonlight/System.Windows.Controls.Data.dll*
311 %{_prefix}/lib/mono/moonlight/System.Windows.Controls.dll*
312 %{_prefix}/lib/mono/moonlight/System.Windows.dll*
313 %{_npkgconfigdir}/moonlight-desktop-2.0.pc
314 # It may make sense in the future to have a moonlight-gtk package
315 %{_prefix}/lib/mono/moonlight/Moonlight.Gtk.dll*
316 %{_prefix}/lib/monodoc/sources/moonlight-gtk.source
317 %{_prefix}/lib/monodoc/sources/moonlight-gtk.tree
318 %{_prefix}/lib/monodoc/sources/moonlight-gtk.zip
319 %{_npkgconfigdir}/moonlight-gtk-2.0.pc
320
321 %files tools
322 %defattr(644,root,root,755)
323 %attr(755,root,root) %{_bindir}/mopen
324 %attr(755,root,root) %{_bindir}/munxap
325 %attr(755,root,root) %{_bindir}/mxap
326 %attr(755,root,root) %{_bindir}/respack
327 %attr(755,root,root) %{_bindir}/sockpol
328 %attr(755,root,root) %{_bindir}/unrespack
329 %attr(755,root,root) %{_bindir}/xaml2html
330 %attr(755,root,root) %{_bindir}/xamlg
331 %{_mandir}/man1/mopen.1*
332 %{_mandir}/man1/mxap.1*
333 %{_mandir}/man1/respack.1*
334 %{_mandir}/man1/sockpol.1*
335 %{_mandir}/man1/svg2xaml.1*
336 %{_mandir}/man1/xamlg.1*
337 %dir %{_libdir}/moonlight
338 %{_libdir}/moonlight/mopen.exe*
339 %{_libdir}/moonlight/munxap.exe*
340 %{_libdir}/moonlight/mxap.exe*
341 %{_libdir}/moonlight/respack.exe*
342 %{_libdir}/moonlight/sockpol.exe*
343 %{_libdir}/moonlight/xaml2html.exe*
344 %{_libdir}/moonlight/xamlg.exe*
This page took 0.081805 seconds and 2 git commands to generate.