summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorReynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>2016-08-25 15:38:54 -0700
committerReynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>2016-09-06 16:34:54 -0700
commit28490f01d80d690b34bed27f84fdbd6f01ffa0e2 (patch)
tree45cf473beaccda2dc17a3a23c6b3170e9846d005
parent5e57af4bff347abcce2ecde72f930fdc5f36e883 (diff)
Add helper script to setup and use an uninstalled environmentuninstalled
The wl_uninstalled script provides a shell environment to build and use an uninstalled Wayland/Weston setup. For example, this script and a fresh checkout of Wayland, libinput, wayland-protocols and Weston is all you need to run Weston from the uninstalled environment created by building every module. No installation required. Quick instructions: Lets use Weston as an example altough other Wayland-based software should work as well. Edit a local copy of the script to make $WLD point to the base directory where your repositories are (make sure to use the absolute paths). You can also set the WLD environment variable before calling the script and leave the file untouched. Then, after executing the script, issue the following commands to have everything built and Weston runing from the uninstalled environment. cd <basedir> for i in wayland wayland-protocols libinput weston; do cd $i && ./autogen.sh && make && cd ..; done cd weston weston & Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
-rw-r--r--README35
-rwxr-xr-xwl_uninstalled133
2 files changed, 167 insertions, 1 deletions
diff --git a/README b/README
index b7eea61..c65fe4f 100644
--- a/README
+++ b/README
@@ -1,4 +1,5 @@
Wayland Build Tools
+-------------------
These are scripts that automate the standard Wayland build and installation
directions (http://wayland.freedesktop.org/building.html), and take care of
@@ -48,6 +49,38 @@ Step 6: Run Weston
source ~/.config/wayland-build-tools/wl_defines.sh
weston
-
Build scripts and configuration for other distros are welcome. For more
details, see https://blogs.s-osg.org/kick-waylands-tires-wayland-build-tools.
+
+
+Wayland Uninstalled
+-------------------
+
+We now also include a helper script, wl_uninstalled, to build and work with an
+uninstalled wayland/weston environment comprised of the following repositories:
+
+wayland
+wayland-protocols
+libinput
+weston
+
+The wl_uninstalled script provides a shell environment in which all build and
+run run-time dependencies are resolved in such a way that the uninstalled
+versions of the above projects take precedence.
+
+Quick instructions:
+
+Let's use Weston as an example although other wayland-based projects should work
+as well.
+
+* Edit a local copy of the script to make $WLD point to the base directory
+ where your repositories are (make sure to use the absolute paths). You can
+ also set the WLD environment variable to a path of your choice and leave
+ the script untouched. Then, after executing the script, issue the following
+ commands to have everything built and weston running from the uninstalled
+ environment.
+
+ cd $WLD
+ for i in wayland wayland-protocols libinput weston; do
+ cd $i && ./autogen.sh && make && cd ..; done
+ weston &
diff --git a/wl_uninstalled b/wl_uninstalled
new file mode 100755
index 0000000..63ff907
--- /dev/null
+++ b/wl_uninstalled
@@ -0,0 +1,133 @@
+#!/bin/bash -i
+#
+# Copyright (C) 2016 Samsung Electronics. All rights reserved.
+#
+# Author: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
+# Derek Foreman <derekf@osg.samsung.com>
+#
+# Based on GStreamer's gst-uninstalled (http://gstreamer.freedesktop.org/)
+#
+# This script provides a shell environment to build and use an uninstalled
+# wayland/weston setup, consisting mostly of checked out and built (no
+# "make install" required) Wayland repositories.
+#
+# Here is the list of required repositories:
+#
+# wayland git://anongit.freedesktop.org/wayland/wayland
+# wayland-protocols git://anongit.freedesktop.org/wayland/wayland-protocols
+# libinput git://anongit.freedesktop.org/wayland/libinput
+# weston git://anongit.freedesktop.org/wayland/weston
+#
+
+if [ "$1"yes != "yes" ]; then
+ cat << EOF
+
+This script uses no arguments. Aborting execution.
+
+The following parameter was not understood:
+
+"$@"
+
+Quick instructions:
+
+1.- Clone the required repositories:
+
+ wayland git://anongit.freedesktop.org/wayland/wayland
+ wayland-protocols git://anongit.freedesktop.org/wayland/wayland-protocols
+ libinput git://anongit.freedesktop.org/wayland/libinput
+ weston git://anongit.freedesktop.org/wayland/weston
+
+2.- Set the WLD variable here to point to the directory you
+ put your Wayland repositories at. Rest should remain untouched.
+ Instead of setting this variable here, you can also export it
+ before the script is executed and leave the latter untouched.
+
+3.- Execute the script. If everything goes OK, you should start
+ seeing a "[WAYLAND UNINSTALLED]" line being printed before each
+ shell prompt to remind you that you are on a wayland uninstalled
+ environment.
+
+4.- Configure and build the above projects in the order they are listed
+ in this document.
+
+5.- Run something wayland-ish, like weston, and it will use the same
+ Wayland uninstalled environment used to build.
+
+6.- To exit the Wayland uninstalled shell just use the 'exit' command.
+
+EOF
+ exit -1
+fi
+
+if [ -z "$WLD" ]; then
+ WLD=$HOME/devel/wayland/git
+ echo Wayland uninstalled root not set \(WLD\). Using script default \
+ \'$WLD\'
+fi
+
+# Set up PATHs
+
+LD_LIBRARY_PATH="\
+$WLD/wayland/.libs\
+:$WLD/libinput/src/.libs\
+:$WLD/weston/.libs/\
+${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
+
+WESTON_BUILD_DIR="\
+$WLD/weston/\
+${WESTON_BUILD_DIR:+:$WESTON_BUILD_DIR}"
+
+PKG_CONFIG_PATH="\
+$WLD/wayland/src/\
+:$WLD/wayland/cursor/\
+:$WLD/wayland-protocols/\
+:$WLD/libinput/src/\
+:$WLD/lib/pkgconfig/\
+:$WLD/share/pkgconfig/\
+:$WESTON_BUILD_DIR/compositor/\
+:$WESTON_BUILD_DIR/libweston/\
+:$WESTON_BUILD_DIR/libweston-desktop/\
+${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}"
+
+PATH="\
+$WLD/wayland/\
+:$WLD/weston/\
+:$PATH"
+
+# Export new environment
+
+export WLD
+export LD_LIBRARY_PATH
+export PKG_CONFIG_PATH
+export WESTON_BUILD_DIR
+export PATH
+
+cat << EOF
+
+The following environment has been exported:
+
+WLD=$WLD
+LD_LIBRARY_PATH=$LD_LIBRARY_PATH
+PKG_CONFIG_PATH=$PKG_CONFIG_PATH
+WESTON_BUILD_DIR=$WESTON_BUILD_DIR
+PATH=$PATH
+
+----------------------
+
+EOF
+
+cd $WLD
+shell=$SHELL
+
+# Do not load local startup files
+if test "x$SHELL" = "x/bin/bash"
+then
+ shell="$SHELL --noprofile"
+fi
+
+# Launch shell. Remember the user this is a Wayland uninstalled
+# before each prompt.
+
+PROMPT_COMMAND="echo [WAYLAND UNINSTALLED]" $shell
+
+