Public feed
#601306
###
## A script to setup some needed variables and functions for KDE 4 development.
## This should normally go in the ~/.bashrc file of your kde-devel user, so
## that it is executed when a session for that user is started.
##
## Example:
## su - kde-devel
## kwrite ~/.bashrc
## (then paste this file)
## exit
## su - kde-devel
##
## If you don't use a separate user, the first section with the
## environment variables should go into a separate file of course.
# KDE
export KDEDIR=$HOME/src/kde4
export KDEHOME=$HOME/.kde4
export KDETMP=/tmp/$USER-kde4
mkdir -p $KDETMP
export KDEVARTMP=/var/tmp/$USER-kde4
export KDEDIRS=$KDEDIR
# Qt
export QTDIR=$HOME/src/kde4/build/qt-copy
export QT_PLUGIN_PATH=$KDEDIR/lib/kde4/plugins:$QT_PLUGIN_PATH
export PKG_CONFIG_PATH=$QTDIR/lib/pkgconfig:$PKG_CONFIG_PATH
# DBus
export DBUSDIR=$KDEDIR
export LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH
export PKG_CONFIG_PATH=$DBUSDIR/lib/pkgconfig:$PKG_CONFIG_PATH
# Other
export PATH=$QTDIR/bin:$KDEDIR/bin:/usr/local/bin:$PATH
export YACC='byacc -d'
# XDG
unset XDG_DATA_DIRS # unset XDG_DATA_DIRS, to avoid seeing kde3 files from /usr
unset XDG_CONFIG_DIRS
# build and src folders
# you might want to change these!
export KDE_BUILD=$HOME/src/kde4/build
export KDE_SRC=$HOME/src/kde4/src
# Make
# Tell many scripts how to switch from source dir to build dir:
export OBJ_REPLACEMENT="s#$KDE_SRC#$KDE_BUILD#"
# Use makeobj instead of make, to automatically switch to the build dir.
# If you don't have makeobj, install the package named kdesdk-scripts or
# kdesdk, or check out kdesdk/scripts from svn, or just don't set the alias
# yet.
alias make=makeobj
##
# IMPORTANT! Uncomment the following lines if DBus does not work. DBus is not
# working if, when you run `dbus-uuidgen --ensure && qdbus`, you get an error.
#
# alias dbusstart="eval `PATH=$DBUSDIR/bin \
# $DBUSDIR/bin/dbus-launch --auto-syntax`"
##
# A function to easily build the current directory of KDE.
#
# This builds only the sources in the current ~/{src,build}/KDE subdirectory.
# Usage: cs KDE/kdebase && cmakekde
# will build/rebuild the sources in ~/src/KDE/kdebase
#
function cmakekde {
if test -n "$1"; then
# srcFolder is defined via command line argument
srcFolder=$1
else
# get srcFolder for current dir
srcFolder=`pwd | sed -e s,$KDE_BUILD,$KDE_SRC,`
fi
# we are in the src folder, change to build directory
# Alternatively, we could just use makeobj in the commands below...
if [ "$srcFolder" = `pwd` ]; then
cb
fi
# cmake
cmake $srcFolder -DCMAKE_INSTALL_PREFIX=$KDEDIR \
-DCMAKE_BUILD_TYPE=debugfull&& \
make VERBOSE=1 && \
#make -j2 && \
make install;
}
function cmakekdej2 {
if test -n "$1"; then
# srcFolder is defined via command line argument
srcFolder=$1
else
# get srcFolder for current dir
srcFolder=`pwd | sed -e s,$KDE_BUILD,$KDE_SRC,`
fi
# we are in the src folder, change to build directory
# Alternatively, we could just use makeobj in the commands below...
if [ "$srcFolder" = `pwd` ]; then
cb
fi
# cmake
cmake $srcFolder -DCMAKE_INSTALL_PREFIX=$KDEDIR \
-DCMAKE_BUILD_TYPE=debugfull&& \
#make VERBOSE=1 && \
make -j2 && \
make install;
}
##
# A function to easily change to the build directory.
# Usage: cb KDE/kdebase
# will change to $KDE_BUILD/KDE/kdebase
# Usage: cb
# will simply go to the build folder if you are currently in a src folder
# Example:
# $ pwd
# /home/user/src/KDE/kdebase
# $ cb && pwd
# /home/user/build/KDE/kdebase
#
function cb {
# Make sure build directory exists.
mkdir -p $KDE_BUILD
# command line argument
if test -n "$1"; then
cd $KDE_BUILD/$1
return
fi
# substitue src dir with build dir
dest=`pwd | sed -e s,$KDE_SRC,$KDE_BUILD,`
if test ! -d $dest; then
# build directory does not exist, create
mkdir -p $dest
fi
cd $dest
}
##
# Change to the source directory. Same as cb, except this
# switches to $KDE_SRC instead of $KDE_BUILD.
# Usage: cs KDE/kdebase
# will change to $KDE_SRC/KDE/kdebase
# Usage: cs
# will simply go to the source folder if you are currently in a build folder
# Example:
# $ pwd
# /home/user/build/KDE/kdebase
# $ cs && pwd
# /home/user/src/KDE/kdebase
#
function cs {
# Make sure source directory exists.
mkdir -p $KDE_SRC
# command line argument
if test -n "$1"; then
cd $KDE_SRC/$1
else
# substitue build dir with src dir
dest=`pwd | sed -e s,$KDE_BUILD,$KDE_SRC,`
if [ $dest = `pwd` ]; then
cd $KDE_SRC
else
cd $dest
fi
fi
}
#WHIRM STUFF
debian_chroot=KDE4
. ~/.bashrc