1#!/bin/bash 2 3#prefix=/usr/local 4 5fail_on_error=true 6#fail_on_error=false 7 8output=tail 9#output=cat 10 11set -e 12 13for lib in allocators app audio fft pbutils riff rtp rtsp sdp tag video ; do 14 #files=$(cd ${prefix}/include/gstreamer-1.0/ && find . -name '*.h') 15 if test $lib = "allocators"; then 16 files="allocators.h gstdmabuf.h" 17 elif test $lib = "app"; then 18 files="app.h gstappsrc.h gstappsink.h" 19 elif test $lib = "audio"; then 20 files="audio.h audio-format.h audio-channels.h audio-info.h \ 21 gstaudioringbuffer.h gstaudioclock.h gstaudiofilter.h \ 22 gstaudiocdsrc.h gstaudiodecoder.h gstaudioencoder.h \ 23 gstaudiobasesink.h gstaudiobasesrc.h gstaudiometa.h \ 24 gstaudiosink.h gstaudiosrc.h streamvolume.h gstaudioiec61937.h" 25 elif test $lib = "fft"; then 26 files="fft.h gstfft.h gstffts16.h gstffts32.h gstfftf32.h gstfftf64.h" 27 elif test $lib = "pbutils"; then 28 files="pbutils.h codec-utils.h descriptions.h encoding-profile.h \ 29 encoding-target.h install-plugins.h missing-plugins.h \ 30 gstdiscoverer.h" 31 elif test $lib = "riff"; then 32 files="riff.h riff-ids.h riff-media.h riff-read.h" 33 elif test $lib = "rtp"; then 34 files="rtp.h gstrtpbuffer.h gstrtcpbuffer.h gstrtppayloads.h \ 35 gstrtphdrext.h gstrtpbaseaudiopayload.h gstrtpbasepayload.h \ 36 gstrtpbasedepayload.h" 37 elif test $lib = "rtsp"; then 38 files="rtsp.h gstrtsp.h gstrtsptransport.h gstrtspurl.h \ 39 gstrtspmessage.h gstrtspconnection.h gstrtspdefs.h \ 40 gstrtspextension.h gstrtsprange.h" 41 elif test $lib = "sdp"; then 42 files="sdp.h gstsdp.h gstsdpmessage.h" 43 elif test $lib = "tag"; then 44 files="tag.h gsttagdemux.h gsttagmux.h xmpwriter.h" 45 elif test $lib = "video"; then 46 files="colorbalance.h colorbalancechannel.h navigation.h video.h \ 47 video-event.h video-format.h video-chroma.h video-color.h \ 48 video-info.h video-frame.h gstvideosink.h gstvideofilter.h \ 49 gstvideometa.h gstvideopool.h videoorientation.h videooverlay.h \ 50 gstvideodecoder.h gstvideoencoder.h gstvideoutils.h \ 51 video-blend.h video-overlay-composition.h videodirection.h" 52 fi 53 54CFLAGS=`pkg-config --cflags gstreamer-1.0 gstreamer-$lib-1.0` 55CFLAGS="$CFLAGS -DGST_USE_UNSTABLE_API" 56 57for each in $files ; do 58 each="gst/$lib/$each" 59 echo Testing $each... 60 rm -f test.o 61 cat >test.c <<-EOF 62#include <glib.h> 63#include <gst/gst.h> 64#include <$each> 65EOF 66 cc $CFLAGS -Wall -Werror -c test.c -o test.o 2>&1 | tail 67 $fail_on_error && test ! -f test.o && exit 1 68 69 echo Testing $each "(no gst)..." 70 rm -f test.o 71 cat >test.c <<-EOF 72#include <glib.h> 73#include <$each> 74EOF 75 cc $CFLAGS -Wall -Werror -c test.c -o test.o 2>&1 | tail 76 $fail_on_error && test ! -f test.o && exit 1 77 78 echo Testing $each "(no glib)..." 79 rm -f test.o 80 cat >test.c <<-EOF 81#include <$each> 82EOF 83 cc $CFLAGS -Wall -Werror -c test.c -o test.o 2>&1 | tail 84 $fail_on_error && test ! -f test.o && exit 1 85 86done # for each file 87 88done # for each lib 89