summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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
+
+