1 %define realname libvorbis
2 Summary: The Vorbis General Audio Compression Codec - Mingw32 cross version
3 Summary(pl.UTF-8): Kodek kompresji audio - Vorbis - wersja skrośna dla Mingw32
4 Name: crossmingw32-%{realname}
9 Source0: http://downloads.xiph.org/releases/vorbis/%{realname}-%{version}.tar.gz
10 # Source0-md5: 37847626b8e1b53ae79a34714c7b3211
11 Patch0: %{realname}-ac_fixes.patch
12 Patch1: %{realname}-make.patch
13 URL: http://www.vorbis.com/
14 BuildRequires: crossmingw32-gcc
15 BuildRequires: crossmingw32-libogg
16 BuildRequires: crossmingw32-w32api
17 BuildRequires: pkgconfig
18 Requires: crossmingw32-libogg
19 Requires: crossmingw32-runtime
20 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
22 %define no_install_post_strip 1
24 %define target i386-mingw32
25 %define target_platform i386-pc-mingw32
26 %define arch %{_prefix}/%{target}
27 %define gccarch %{_prefix}/lib/gcc-lib/%{target}
28 %define gcclib %{_prefix}/lib/gcc-lib/%{target}/%{version}
30 %define __cc %{target}-gcc
31 %define __cxx %{target}-g++
33 %ifarch alpha sparc sparc64 sparcv9
38 Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free,
39 general-purpose compressed audio format for audio and music at fixed
40 and variable bitrates from 16 to 128 kbps/channel.
42 %description -l pl.UTF-8
43 Ogg Vorbis jest całkowicie otwartym, nie będącym niczyją własnością,
44 wolnym od patentów, ogólnego przeznaczenia kodekiem audio i muzyki o
45 stałej i zmiennej bitrate od 16 do 128 kbps/kanał.
48 Summary: %{realname} - DLL library for Windows
49 Summary(pl.UTF-8): %{realname} - biblioteka DLL dla Windows
50 Group: Applications/Emulators
53 %{realname} - DLL library for Windows.
55 %description dll -l pl.UTF-8
56 %{realname} - biblioteka DLL dla Windows.
59 %setup -q -n %{realname}-%{version}
64 CC=%{target}-gcc ; export CC
65 CXX=%{target}-g++ ; export CXX
66 LD=%{target}-ld ; export LD
67 AR=%{target}-ar ; export AR
68 AS=%{target}-as ; export AS
69 CROSS_COMPILE=1 ; export CROSS_COMPILE
70 CPPFLAGS="-I%{arch}/include" ; export CPPFLAGS
71 RANLIB=%{target}-ranlib ; export RANLIB
72 LDSHARED="%{target}-gcc -shared" ; export LDSHARED
73 TARGET="%{target}" ; export TARGET
79 for i in mdct.c smallft.c block.c envelope.c window.c lsp.c lpc.c analysis.c synthesis.c psy.c info.c floor1.c floor0.c \
80 res0.c mapping0.c registry.c codebook.c sharedbook.c lookup.c bitrate.c
82 %{__cc} %{rpmcflags} -c lib/$i -Iinclude
86 $AR cru libvorbis.a *.o
89 %{__cc} --shared *.o -Wl,--enable-auto-image-base -o vorbis.dll -Wl,--out-implib,libvorbis.dll.a `pkg-config --libs i386-mingw32-ogg`
92 %{__cc} %{rpmcflags} -c lib/vorbisenc.c -Iinclude -Ilib
93 %{__cc} %{rpmcflags} -c lib/vorbisfile.c -Iinclude
96 $AR cru libvorbisenc.a vorbisenc.o
97 $RANLIB libvorbisenc.a
99 %{__cc} --shared vorbisenc.o -Wl,--enable-auto-image-base -o vorbisenc.dll -Wl,--out-implib,libvorbisenc.dll.a -lvorbis -L.
101 rm -f libvorbisfile.a
102 $AR cru libvorbisfile.a vorbisfile.o
103 $RANLIB libvorbisfile.a
105 %{__cc} --shared vorbisfile.o -Wl,--enable-auto-image-base -o vorbisfile.dll -Wl,--out-implib,libvorbisfile.dll.a `pkg-config --libs i386-mingw32-ogg` -lvorbis -L.
108 %{target}-strip *.dll
109 %{target}-strip -g -R.comment -R.note *.a
112 sed -i -e 's@libdir=/usr/lib@libdir=%{arch}/lib@' \
113 -e 's@includedir=/usr/include@includedir=%{arch}/include@' \
114 vorbis.pc vorbisenc.pc vorbisfile.pc
117 rm -rf $RPM_BUILD_ROOT
118 install -d $RPM_BUILD_ROOT%{arch}/{include/vorbis,lib}
119 install -d $RPM_BUILD_ROOT%{_datadir}/wine/windows/system
120 install -d $RPM_BUILD_ROOT%{_pkgconfigdir}
122 install include/vorbis/*.h $RPM_BUILD_ROOT%{arch}/include/vorbis
123 install libvorbis*.a $RPM_BUILD_ROOT%{arch}/lib
124 install vorbis*.dll $RPM_BUILD_ROOT%{_datadir}/wine/windows/system
126 install vorbis.pc $RPM_BUILD_ROOT%{_pkgconfigdir}/i386-mingw32-vorbis.pc
127 install vorbisenc.pc $RPM_BUILD_ROOT%{_pkgconfigdir}/i386-mingw32-vorbisenc.pc
128 install vorbisfile.pc $RPM_BUILD_ROOT%{_pkgconfigdir}/i386-mingw32-vorbisfile.pc
131 rm -rf $RPM_BUILD_ROOT
134 %defattr(644,root,root,755)
135 %{arch}/include/vorbis
140 %defattr(644,root,root,755)
141 %{_datadir}/wine/windows/system/*