]> git.pld-linux.org Git - packages/crossmingw32-libogg.git/blob - crossmingw32-libogg.spec
- new
[packages/crossmingw32-libogg.git] / crossmingw32-libogg.spec
1 %define         realname        libogg
2 Summary:        Ogg Bitstream Library - Mingw32 cross version
3 Summary(pl):    Biblioteka obs³ugi strumieni bitowych Ogg - wersja skro¶na dla Mingw32
4 Name:           crossmingw32-%{realname}
5 Version:        1.1.3
6 Release:        1
7 License:        BSD
8 Group:          Libraries
9 Source0:        http://downloads.xiph.org/releases/ogg/%{realname}-%{version}.tar.gz
10 # Source0-md5:  eaf7dc6ebbff30975de7527a80831585
11 Patch0:         %{realname}-ac_fixes.patch
12 URL:            http://www.xiph.org/ogg/
13 BuildRequires:  crossmingw32-gcc
14 BuildRequires:  crossmingw32-w32api
15 Requires:       crossmingw32-runtime
16 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
17
18 %define         no_install_post_strip   1
19
20 %define         target          i386-mingw32
21 %define         target_platform i386-pc-mingw32
22 %define         arch            %{_prefix}/%{target}
23 %define         gccarch         %{_prefix}/lib/gcc-lib/%{target}
24 %define         gcclib          %{_prefix}/lib/gcc-lib/%{target}/%{version}
25
26 %define         __cc            %{target}-gcc
27 %define         __cxx           %{target}-g++
28
29 %ifarch alpha sparc sparc64 sparcv9
30 %define         optflags        -O2
31 %endif
32
33 %description
34 Libogg is a library for manipulating Ogg bitstreams. It handles both
35 making Ogg bitstreams and getting packets from Ogg bitstreams.
36
37 %description -l pl
38 Libogg jest bibliotek± do manipulacji strumieniami bitowymi Ogg.
39 Obs³uguje ona zarówno tworzenie strumieni jak i uzyskiwanie pakietów
40 ze strumieni.
41
42 %package dll
43 Summary:        %{realname} - DLL library for Windows
44 Summary(pl):    %{realname} - biblioteka DLL dla Windows
45 Group:          Applications/Emulators
46
47 %description dll
48 %{realname} - DLL library for Windows.
49
50 %description dll -l pl
51 %{realname} - biblioteka DLL dla Windows.
52
53 %prep
54 %setup -q -n %{realname}-%{version}
55 %patch0 -p1
56
57 %build
58 CC=%{target}-gcc ; export CC
59 CXX=%{target}-g++ ; export CXX
60 LD=%{target}-ld ; export LD
61 AR=%{target}-ar ; export AR
62 AS=%{target}-as ; export AS
63 CROSS_COMPILE=1 ; export CROSS_COMPILE
64 CPPFLAGS="-I%{arch}/include" ; export CPPFLAGS
65 RANLIB=%{target}-ranlib ; export RANLIB
66 LDSHARED="%{target}-gcc -shared" ; export LDSHARED
67 TARGET="%{target}" ; export TARGET
68
69 %configure \
70         --host=%{_host} \
71         --target=%{target}
72
73 # autoshit badly wants -lc, which is unavailable, so let's make something
74 # simpler
75
76 for i in bitwise.c framing.c
77 do
78         %{__cc} %{rpmcflags} -c src/$i -Iinclude
79 done
80
81 rm -f libogg.a
82 $AR cru libogg.a *.o
83 $RANLIB libogg.a
84
85 %{__cc} --shared *.o -Wl,--enable-auto-image-base -o ogg.dll -Wl,--out-implib,libogg.dll.a
86
87 %if 0%{!?debug:1}
88 %{target}-strip *.dll
89 %{target}-strip -g -R.comment -R.note *.a
90 %endif
91
92 sed -i  -e 's@libdir=/usr/lib@libdir=%{arch}/lib@' \
93         -e 's@includedir=/usr/include@includedir=%{arch}/include@' \
94         ogg.pc
95
96 %install
97 rm -rf $RPM_BUILD_ROOT
98 install -d $RPM_BUILD_ROOT%{arch}/{include/ogg,lib}
99 install -d $RPM_BUILD_ROOT%{_datadir}/wine/windows/system
100 install -d $RPM_BUILD_ROOT%{_pkgconfigdir}
101
102 install include/ogg/*.h $RPM_BUILD_ROOT%{arch}/include/ogg
103 install libogg.a $RPM_BUILD_ROOT%{arch}/lib
104 install libogg.dll.a $RPM_BUILD_ROOT%{arch}/lib
105 install ogg.dll $RPM_BUILD_ROOT%{_datadir}/wine/windows/system
106
107 install ogg.pc $RPM_BUILD_ROOT%{_pkgconfigdir}/i386-mingw32-ogg.pc
108
109 %clean
110 rm -rf $RPM_BUILD_ROOT
111
112 %files
113 %defattr(644,root,root,755)
114 %{arch}/include/ogg
115 %{arch}/lib/*
116 %{_pkgconfigdir}/*
117
118 %files dll
119 %defattr(644,root,root,755)
120 %{_datadir}/wine/windows/system/*
This page took 0.06072 seconds and 3 git commands to generate.