first commit
[scm/bb/meta-tizen.git] / recipes-tizen / libav / libav.inc
1 DESCRIPTION = "AV codec lib"
2 HOMEPAGE = "http://nohomepage.org"
3 SECTION = "Multimedia/Libraries"
4 LICENSE = "LGPL-2.1+"
5
6 SRC_URI = ""
7
8 S = "${WORKDIR}/git"
9
10 PROVIDES = ""
11
12 #PROVIDES by libavutil 
13 PROVIDES += "libavutil"
14 RPROVIDES_libavutil += "libavutil"
15
16 #PROVIDES by libavfilter-devel 
17 PROVIDES += "libavfilter-devel"
18 RPROVIDES_libavfilter-devel += "libavfilter-devel"
19 RPROVIDES_libavfilter-devel += "libavfilter-dev"
20
21 #PROVIDES by libavformat 
22 PROVIDES += "libavformat"
23 RPROVIDES_libavformat += "libavformat"
24
25 #PROVIDES by libavtools 
26 PROVIDES += "libavtools"
27 RPROVIDES_libavtools += "libavtools"
28
29 #PROVIDES by libavcodec 
30 PROVIDES += "libavcodec"
31 RPROVIDES_libavcodec += "libavcodec"
32
33 #PROVIDES by libavfilter 
34 PROVIDES += "libavfilter"
35 RPROVIDES_libavfilter += "libavfilter"
36
37 #PROVIDES by libswscale-devel 
38 PROVIDES += "libswscale-devel"
39 RPROVIDES_libswscale-devel += "libswscale-devel"
40 RPROVIDES_libswscale-devel += "libswscale-dev"
41
42 #PROVIDES by libavcodec-devel 
43 PROVIDES += "libavcodec-devel"
44 RPROVIDES_libavcodec-devel += "libavcodec-devel"
45 RPROVIDES_libavcodec-devel += "libavcodec-dev"
46
47 #PROVIDES by libavutil-devel 
48 PROVIDES += "libavutil-devel"
49 RPROVIDES_libavutil-devel += "libavutil-devel"
50 RPROVIDES_libavutil-devel += "libavutil-dev"
51
52 #PROVIDES by libswscale 
53 PROVIDES += "libswscale"
54 RPROVIDES_libswscale += "libswscale"
55
56 #PROVIDES by libav 
57 PROVIDES += "libav"
58 RPROVIDES_libav += "libav"
59
60 #PROVIDES by libavformat-devel 
61 PROVIDES += "libavformat-devel"
62 RPROVIDES_libavformat-devel += "libavformat-devel"
63 RPROVIDES_libavformat-devel += "libavformat-dev"
64
65 RDEPENDS = ""
66 #RDEPENDS of libavfilter-devel (${PN}filter-devel)
67 RDEPENDS_${PN}filter-devel += "libavfilter"
68
69 #RDEPENDS of libswscale-devel (libswscale-devel)
70 RDEPENDS_libswscale-devel += "libswscale"
71
72 #RDEPENDS of libavcodec-devel (${PN}codec-devel)
73 RDEPENDS_${PN}codec-devel += "libavcodec"
74
75 #RDEPENDS of libavutil-devel (${PN}util-devel)
76 RDEPENDS_${PN}util-devel += "libavutil"
77
78 #RDEPENDS of libavformat-devel (${PN}format-devel)
79 RDEPENDS_${PN}format-devel += "libavformat"
80
81
82 DEPENDS = ""
83
84 do_patch() {
85  chmod -Rf a+rX,u+w,g-w,o-w ${S}
86  #setup -q
87  
88  export CONFIGURE_OPTIONS="--enable-shared    --disable-static   \
89  --disable-version3  --disable-devices   --disable-nonfree --disable-gpl --disable-doc \
90  --disable-zlib    --disable-network \
91  --disable-avdevice \
92  --disable-bsfs      --disable-filters \
93  --enable-filter=buffer  --enable-filter=buffersink      --enable-filter=crop \
94  --enable-filter=hflip   --enable-filter=lut     --enable-filter=lutyuv \
95  --enable-filter=lutrgb  --enable-filter=overlay --enable-filter=scale \
96  --enable-filter=transpose       --enable-filter=unsharp --enable-filter=vflip \
97  --disable-protocols \
98  --disable-avresample \
99  --enable-protocol=file \
100  --disable-encoders \
101  --disable-muxers \
102  --disable-parsers \
103  --enable-parser=aac     --enable-parser=h264            --enable-parser=mpegaudio \
104  --enable-parser=h263    --enable-parser=mpeg4video      --enable-parser=mpegvideo \
105  --disable-demuxers \
106  --enable-demuxer=aac    --enable-demuxer=h264   --enable-demuxer=mpegts \
107  --enable-demuxer=amr    --enable-demuxer=m4v    --enable-demuxer=mpegtsraw \
108  --enable-demuxer=asf    --enable-demuxer=mmf    --enable-demuxer=mpegvideo \
109  --enable-demuxer=avi    --enable-demuxer=mov    --enable-demuxer=ogg \
110  --enable-demuxer=flac   --enable-demuxer=mp3    --enable-demuxer=wav \
111  --enable-demuxer=h263   --enable-demuxer=mpegps --enable-demuxer=matroska \
112  --enable-demuxer=dv    --enable-demuxer=flv \
113  --disable-decoders \
114  --enable-decoder=alac   --enable-decoder=h264           --enable-decoder=wmv1 \
115  --enable-decoder=flac   --enable-decoder=mpeg4          --enable-decoder=wmv2 \
116  --enable-decoder=h263   --enable-decoder=mpegvideo      --enable-decoder=wmv3 \
117  --enable-decoder=vc1   --enable-decoder=flv \
118  --enable-decoder=h263i  --enable-decoder=theora  \
119  --enable-decoder=pcm_alaw  --enable-decoder=pcm_mulaw  \
120  --enable-encoder=h263   --enable-encoder=h263p  --enable-encoder=mpeg4   \
121  --enable-decoder=bmp  --enable-encoder=bmp       \
122  --enable-decoder=tiff \
123  --enable-decoder=mp3  --enable-decoder=amrnb    \
124  --enable-encoder=aac  --enable-decoder=aac      \
125  --enable-swscale        --disable-yasm  \
126  --enable-fft    --enable-rdft   --enable-mdct   --enable-neon \
127  "
128  
129  CFLAGS="-O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -fPIC -DEXPORT_API=\"__attribute__((visibility(\\\"default\\\")))\" "; export CFLAGS
130  
131  ./configure --prefix=/usr --shlibdir=/usr/lib --libdir=/usr/lib  $CONFIGURE_OPTIONS
132  
133  
134 }
135
136 do_configure() {
137 }
138
139 do_compile() {
140  LANG=C
141  export LANG
142  unset DISPLAY
143  CFLAGS="-O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables" ; export CFLAGS ; 
144  CXXFLAGS="${CXXFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables}" ; export CXXFLAGS ; 
145  FFLAGS="${FFLAGS:--O2 -g -m64 -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -I%_fmoddir}" ; export FFLAGS ; 
146  LD_AS_NEEDED=1; export LD_AS_NEEDED ; 
147  
148  
149  
150  make -j16
151  
152  
153  
154 }
155
156 do_install() {
157  echo export RPM_BUILD_ROOT=${D}
158  LANG=C
159  export LANG
160  unset DISPLAY
161  rm -rf ${D} 
162  mkdir -p ${D} 
163  
164  rm -rf ${D}
165  
166    oe_runmake \
167          DESTDIR=${D} \
168          INSTALL_ROOT=${D} \
169          BINDIR=/usr/bin \
170    install  
171    rm -f ${D}/usr/share/info/dir 
172    find ${D} -regex ".*\.la$" | xargs rm -f -- 
173    find ${D} -regex ".*\.a$" | xargs rm -f --
174  mkdir -p ${D}//usr/share/license
175  cp -rf ${WORKDIR}/libav-9.8/COPYING.LGPLv2.1 ${D}//usr/share/license/libavcodec
176  cp -rf ${WORKDIR}/libav-9.8/COPYING.LGPLv2.1 ${D}//usr/share/license/libavformat
177  cp -rf ${WORKDIR}/libav-9.8/COPYING.LGPLv2.1 ${D}//usr/share/license/libavutil
178  cp -rf ${WORKDIR}/libav-9.8/COPYING.LGPLv2.1 ${D}//usr/share/license/libavfilter
179  cp -rf ${WORKDIR}/libav-9.8/COPYING.LGPLv2.1 ${D}//usr/share/license/libswscale
180  
181  
182  
183 }
184
185 PACKAGES = ""
186 PACKAGES += "libavutil"
187 PACKAGES += "libavfilter-devel"
188 PACKAGES += "libavformat"
189 PACKAGES += "libavtools"
190 PACKAGES += "libavcodec"
191 PACKAGES += "libavfilter"
192 PACKAGES += "libswscale-devel"
193 PACKAGES += "libavcodec-devel"
194 PACKAGES += "libavutil-devel"
195 PACKAGES += "libswscale"
196 PACKAGES += "libavformat-devel"
197
198 libavutil_files = ""
199 libavutil_files += "/usr/lib/libavutil.so.*"
200 libavutil_files += "/usr/share/license/libavutil"
201
202 libavfilter-devel_files = ""
203 libavfilter-devel_files += "/usr/include/libavfilter/*"
204 libavfilter-devel_files += "/usr/lib/libavfilter.so"
205 libavfilter-devel_files += "/usr/lib/pkgconfig/libavfilter.pc"
206
207 libavformat_files = ""
208 libavformat_files += "/usr/lib/libavformat.so.*"
209 libavformat_files += "/usr/share/license/libavformat"
210
211 libavtools_files = ""
212 libavtools_files += "/usr/bin/av*"
213 libavtools_files += "/usr/share/avconv/*.avpreset"
214
215 libavcodec_files = ""
216 libavcodec_files += "/usr/lib/libavcodec.so.*"
217 libavcodec_files += "/usr/share/license/libavcodec"
218
219 libavfilter_files = ""
220 libavfilter_files += "/usr/lib/libavfilter.so.*"
221 libavfilter_files += "/usr/share/license/libavfilter"
222
223 libswscale-devel_files = ""
224 libswscale-devel_files += "/usr/include/libswscale/*"
225 libswscale-devel_files += "/usr/lib/libswscale.so"
226 libswscale-devel_files += "/usr/lib/pkgconfig/libswscale.pc"
227
228 libavcodec-devel_files = ""
229 libavcodec-devel_files += "/usr/include/libavcodec/*"
230 libavcodec-devel_files += "/usr/lib/libavcodec.so"
231 libavcodec-devel_files += "/usr/lib/pkgconfig/libavcodec.pc"
232
233 libavutil-devel_files = ""
234 libavutil-devel_files += "/usr/include/libavutil/*"
235 libavutil-devel_files += "/usr/lib/libavutil.so"
236 libavutil-devel_files += "/usr/lib/pkgconfig/libavutil.pc"
237
238 libswscale_files = ""
239 libswscale_files += "/usr/lib/libswscale.so.*"
240 libswscale_files += "/usr/share/license/libswscale"
241
242 libavformat-devel_files = ""
243 libavformat-devel_files += "/usr/include/libavformat/*"
244 libavformat-devel_files += "/usr/lib/libavformat.so"
245 libavformat-devel_files += "/usr/lib/pkgconfig/libavformat.pc"
246
247 FILES_${PN}util = "${libavutil_files}"
248 FILES_${PN}filter-devel = "${libavfilter-devel_files}"
249 FILES_${PN}format = "${libavformat_files}"
250 FILES_${PN}tools = "${libavtools_files}"
251 FILES_${PN}codec = "${libavcodec_files}"
252 FILES_${PN}filter = "${libavfilter_files}"
253 FILES_libswscale-devel = "${libswscale-devel_files}"
254 FILES_${PN}codec-devel = "${libavcodec-devel_files}"
255 FILES_${PN}util-devel = "${libavutil-devel_files}"
256 FILES_libswscale = "${libswscale_files}"
257 FILES_${PN}format-devel = "${libavformat-devel_files}"
258
259 PKG_libavutil= "libavutil"
260 PKG_libavfilter-devel= "libavfilter-devel"
261 PKG_libavformat= "libavformat"
262 PKG_libavtools= "libavtools"
263 PKG_libavcodec= "libavcodec"
264 PKG_libavfilter= "libavfilter"
265 PKG_libswscale-devel= "libswscale-devel"
266 PKG_libavcodec-devel= "libavcodec-devel"
267 PKG_libavutil-devel= "libavutil-devel"
268 PKG_libswscale= "libswscale"
269 PKG_libavformat-devel= "libavformat-devel"
270
271 require libav-extraconf.inc