Skip to content

Instantly share code, notes, and snippets.

@atlury
Created December 26, 2015 05:51
Show Gist options
  • Save atlury/916b8e55ea4fb251c391 to your computer and use it in GitHub Desktop.
Save atlury/916b8e55ea4fb251c391 to your computer and use it in GitHub Desktop.
#!/bin/bash
set -e
exec > >(tee gstreamer-generic.log)
exec 2>&1
export LD_LIBRARY_PATH=/usr/local/lib/
#branch=1.4
#tag=1.5.90
tag=1.6.0
case ${1:-upgrade} in
upgrade)
# Upgrade
sudo apt-get update && sudo apt-get upgrade -y --force-yes
# Install dependencies
sudo apt-get install -y --force-yes build-essential autotools-dev automake autoconf \
libtool autopoint libxml2-dev zlib1g-dev libglib2.0-dev \
pkg-config bison flex python git gtk-doc-tools libasound2-dev \
libgudev-1.0-dev libxt-dev libvorbis-dev libcdparanoia-dev \
libpango1.0-dev libtheora-dev libvisual-0.4-dev iso-codes \
libgtk-3-dev libraw1394-dev libiec61883-dev libavc1394-dev \
libv4l-dev libcairo2-dev libcaca-dev libspeex-dev libpng-dev \
libshout3-dev libjpeg-dev libaa1-dev libflac-dev libdv4-dev \
libtag1-dev libwavpack-dev libpulse-dev libsoup2.4-dev libbz2-dev \
libcdaudio-dev libdc1394-22-dev ladspa-sdk libass-dev \
libcurl4-gnutls-dev libdca-dev libdirac-dev libdvdnav-dev \
libexempi-dev libexif-dev libfaad-dev libgme-dev libgsm1-dev \
libiptcdata0-dev libkate-dev libmimic-dev libmms-dev \
libmodplug-dev libmpcdec-dev libofa0-dev libopus-dev \
librsvg2-dev librtmp-dev libschroedinger-dev libslv2-dev \
libsndfile1-dev libsoundtouch-dev libspandsp-dev libx11-dev \
libxvidcore-dev libzbar-dev libzvbi-dev liba52-0.7.4-dev \
libcdio-dev libdvdread-dev libmad0-dev libmp3lame-dev \
libmpeg2-4-dev libopencore-amrnb-dev libopencore-amrwb-dev \
libsidplay1-dev libtwolame-dev libx264-dev \
libusb-1.0
;&
clone)
for component in gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav gst-omx
do
[ ! -d $component ] && git clone git://anongit.freedesktop.org/git/gstreamer/$component
done
;&
checkout)
for component in gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav
do
cd $component
if [[ $branch ]]; then
git checkout -t origin/$branch
fi
if [[ $tag ]]; then
git checkout tags/$tag
fi
cd ..
done
;&
autogen)
for component in gstreamer gst-plugins-base gst-plugins-bad gst-plugins-ugly gst-libav
do
cd $component
./autogen.sh --disable-gtk-doc
make
sudo make install
cd ..
done
cd gst-plugins-good
./autogen.sh --disable-gtk-doc --disable-oss --disable-oss4
make
sudo make install
cd ..
cd gst-omx
./autogen.sh --disable-gtk-doc --with-omx-target=generic
make
sudo make install
cd ..
;;
uninstall)
for component in gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav gst-omx
do
cd $component
sudo make uninstall
cd ..
done
;;
esac
exit 0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment