blob: 79ec81270828de580a79da0c62f829286d1a9c7a (
plain) (
tree)
|
|
#!/bin/bash
###
# this is a convenience script for getting/updating e17 from svn.
# (this is what you need to build e17 and entrance).
###
###
# settings - feel free to change these...
###
# the directory to install into (a full path to where on the system to install)
PREFIX="/usr/local"
# install as root ("yes" or "no") - note. you CAN install as a user too, but
# only into directories you have permission to install into. also you will
# need to modify your LD_LIBRARY_PATH shell variable to access things
ROOT_INSTALL="yes"
# build enlightenment - the window manager ("yes" or "no")
BUILD_E="no"
###
# end config
###
# modules
CORE_MODULES="eina eet evas ecore e_dbus efreet embryo edje"
E_MODULES="e"
MODULES=$CORE_MODULES
if [ $BUILD_E == "yes" ]; then
MODULES=$MODULES" "$E_MODULES
fi
# actual working parts of the script (no need to really touch this)
if [ $ROOT_INSTALL == "yes" ]; then
echo "---------------------------------------------------------------------"
echo ""
# test sudo
echo "Check sudo access"
NOSUDO="no"
sudo ls /root || NOSUDO="yes"
if [ $NOSUDO == "yes" ]; then
echo "You have no sudo access. You need this to install on the system."
echo "Try add this line to your /etc/sudoers file:"
echo ""
echo $USER" ALL=(ALL) NOPASSWD: ALL"
exit -1
fi
# check ldo.so.conf
echo "Check /etc/ld.so.conf sanity"
LDCONF=`grep $PREFIX/lib /etc/ld.so.conf /etc/ld.so.conf.d/*`
if [ -z "$LDCONF" ]; then
echo "Add "$PREFIX"/lib to /etc/ld.so.conf please."
exit -1
fi
fi
if [ "$NOSUDO" == "no" ]; then
# detect distribution here
if [ -f "/etc/apt/sources.list" ]; then
F=`grep "gutsy" "/etc/apt/sources.list"`
if [ -n "$F" ]; then
DISTRO="ubuntu-gutsy"
else
F=`grep "feisty" "/etc/apt/sources.list"`
if [ -n "$F" ]; then
DISTRO="ubuntu-feisty"
else
F=`grep "hardy" "/etc/apt/sources.list"`
if [ -n "$F" ]; then
DISTRO="ubuntu-hardy"
else
F=`grep "intrepid" "/etc/apt/sources.list"`
if [ -n "$F" ]; then
DISTRO="ubuntu-intrepid"
else
F=`grep "unstable" "/etc/apt/sources.list"`
if [ -n "$F" ]; then
DISTRO="debian-unstable"
else
F=`grep " sid" "/etc/apt/sources.list"`
if [ -n "$F" ]; then
DISTRO="debian-unstable"
fi
fi
fi
fi
fi
fi
fi
echo "Detected distribution: $DISTRO"
if [ "$DISTRO" == "debian-unstable" ]; then
## FIXME: unknown is this works or not
sudo apt-get update
sudo apt-get install \
xterm make gcc bison flex subversion \
automake1.10 autoconf autoconf-archive libtool gettext \
libc6-dev \
zlib1g-dev libjpeg62-dev \
libpng12-dev libfreetype6-dev \
libxrender-dev libx11-dev libxinerama-dev \
libxss-dev libxext-dev libxrandr-dev libxp-dev \
libxfixes-dev libxdamage-dev libxcursor-dev \
libpam0g-dev
elif [ "$DISTRO" == "ubuntu-feisty" ]; then
sudo apt-get update
sudo apt-get install \
xterm make gcc bison flex subversion automake1.10 autoconf autotools-dev \
autoconf-archive libtool gettext \
libpam0g-dev libfreetype6-dev libpng12-dev zlib1g-dev libjpeg-dev \
libtiff-dev libungif4-dev librsvg2-dev libx11-dev libxcursor-dev \
libxrender-dev libxrandr-dev libxfixes-dev libxdamage-dev \
libxcomposite-dev libxss-dev libxp-dev libxext-dev libxinerama-dev \
libxft-dev libxfont-dev libxi-dev libxv-dev libxkbfile-dev \
libxkbui-dev libxres-dev libxtst-dev libltdl3-dev libglu1-xorg-dev \
libglut3-dev xserver-xephyr libdbus-1-dev
elif [ "$DISTRO" == "ubuntu-gutsy" ]; then
sudo apt-get update
sudo apt-get install \
xterm make gcc bison flex subversion automake1.10 autoconf autotools-dev \
autoconf-archive libtool gettext \
libpam0g-dev libfreetype6-dev libpng12-dev zlib1g-dev libjpeg-dev \
libtiff-dev libungif4-dev librsvg2-dev libx11-dev libxcursor-dev \
libxrender-dev libxrandr-dev libxfixes-dev libxdamage-dev \
libxcomposite-dev libxss-dev libxp-dev libxext-dev libxinerama-dev \
libxft-dev libxfont-dev libxi-dev libxv-dev libxkbfile-dev \
libxkbui-dev libxres-dev libxtst-dev libltdl3-dev libglu1-xorg-dev \
libglut3-dev xserver-xephyr libdbus-1-dev
elif [ "$DISTRO" == "ubuntu-hardy" ]; then
sudo apt-get update
sudo apt-get install \
xterm make gcc bison flex subversion automake1.10 autoconf autotools-dev \
autoconf-archive libtool gettext \
libpam0g-dev libfreetype6-dev libpng12-dev zlib1g-dev libjpeg-dev \
libtiff-dev libungif4-dev librsvg2-dev libx11-dev libxcursor-dev \
libxrender-dev libxrandr-dev libxfixes-dev libxdamage-dev \
libxcomposite-dev libxss-dev libxp-dev libxext-dev libxinerama-dev \
libxft-dev libxfont-dev libxi-dev libxv-dev libxkbfile-dev \
libxkbui-dev libxres-dev libxtst-dev libltdl3-dev libglu1-xorg-dev \
libglut3-dev xserver-xephyr libdbus-1-dev
elif [ "$DISTRO" == "ubuntu-intrepid" ]; then
#sudo apt-get update
sudo apt-get install \
xterm make gcc bison flex subversion automake1.10 autoconf autotools-dev \
autoconf-archive libtool gettext \
libpam0g-dev libfreetype6-dev libpng12-dev zlib1g-dev libjpeg62-dev \
libtiff4-dev libungif4-dev librsvg2-dev libx11-dev libxcursor-dev \
libxrender-dev libxrandr-dev libxfixes-dev libxdamage-dev \
libxcomposite-dev libxss-dev libxp-dev libxext-dev libxinerama-dev \
libxft-dev libxfont-dev libxi-dev libxv-dev libxkbfile-dev \
libxkbui-dev libxres-dev libxtst-dev libltdl7-dev libglu1-xorg-dev \
libglut3-dev xserver-xephyr libdbus-1-dev
elif [ "$DISTRO" == "sample-distribution" ]; then
echo "sample distro"
# FIXME: put in whatever commands are needed to get a good list of
# dependencies for e and install themb - svn build tools etc. too. only
# put what is needed - there are optional libs like libtiiff/gif etc.
# but they hve no direct required to really suggested usefulness.
else
echo "Your distribution is not supported. Please adit this script and"
echo "add a section to detect your distribution and then to install"
echo "required packages for it."
fi
fi
# make sure we have the prefix in the PATH for now
export PATH="$PREFIX/bin:$PATH"
export LD_LIBRARY_PATH="$PREFIX/lib:$LD_LIBRARY_PATH"
export PKG_CONFIG_PATH="$PREFIX/lib/pkgconfig:$PKG_CONFIG_PATH"
CLEAN="no"
# check if we have a svn tree already
if [ -d ./e/e/.svn ]; then
echo "---------------------------------------------------------------------"
echo ""
echo "Updating SVN"
CLEAN="yes"
cd ./e
for I in $MODULES; do
cd $I
svn update
cd ..
done
cd ..
else
# get svn
echo "---------------------------------------------------------------------"
echo ""
echo "Checking out SVN"
mkdir e
cd e
for I in $MODULES; do
svn co http://svn.enlightenment.org/svn/e/trunk/$I
done
cd ..
fi
# enable error abort from now on
set -e
# build and install it all
echo "---------------------------------------------------------------------"
echo ""
echo "Build..."
for I in $MODULES; do
pushd e/$I
echo "---------------------------------------------------------------------"
echo ""
echo "Building: "$I
echo ""
if [ $CLEAN == "yes" ]; then
make clean distclean || true
fi
echo ""
echo "Autofoo: "$I
echo ""
./autogen.sh --prefix=$PREFIX
echo ""
echo "Compiling: "$I
echo ""
make
echo ""
echo "Installing: "$I
echo ""
if [ $ROOT_INSTALL == "yes" ]; then
sudo make install
sudo ldconfig
else
make install
fi
popd
done
echo "---------------------------------------------------------------------"
echo ""
echo "NOTE: you will want to add "$PREFIX"/bin to your user's (and maybe"
echo " root's) PATH variable. (see your documentation on the PATH shell"
echo " variable for more information on how to do this)."
if [ $ROOT_INSTALL == "no" ]; then
echo "NOTE: you will want to add "$PREFIX"/lib to your user's (and maybe"
echo " root's) LD_LIBRARY_PATH variable. (see your documentation on the"
echo " LD_LIBRARY_PATH shell variable for more information on how to do"
echo " this)."
fi
|