On Wed, Aug 31, 2016 at 01:10:59PM -0500, Derek Foreman wrote: > Thanks for taking a look! > > On 31/08/16 04:22 AM, Emil Velikov wrote: > > On 30 August 2016 at 19:56, Derek Foreman <der...@osg.samsung.com> wrote: > >> From: "Reynaldo H. Verdejo Pinochet" <reyna...@osg.samsung.com> > >> > >> 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), 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 > > Above all please do _not_ recommend building in-tree. Pretty please. > > Uhh, for better or worse, perhaps too late? The build instructions at: > https://wayland.freedesktop.org/building.html > explain how to do in tree builds. > > The existing wl_build script in wayland-build-tools does in tree builds > as well. > > Really don't want this to degenerate into a debate about in tree vs out > of tree builds - but our instructions and scripts have been doing > in-tree for a while now...
It probably wouldn't be a bad idea to add a setting to allow wayland-build-tools to do out-of-tree builds. But the wl_clone script's existance kind of strongly implies that the tree it creates is for build purposes only. > > As mentioned before using --prefix=$WLD/foo + make install will make > > things shorter/simpler > > Takes more time (waiting for misc relinking during the install - perhaps > not overly onerous for wayland/weston/libinput), takes more steps > (performing the install), takes more effort to undo (make distclean is > essentially a complete uninstall of a package - of course I could have a > separate prefix for each repo and a bunch more env vars, so perhaps > that's not an important distinction), takes more space on disk. > > This doesn't seem shorter or less complicated? To each their own I suppose. None of that really bothers me -- most stuff builds and links quickly enough even when done from scratch. Mesa + xserver build times tend to swamp everything else, but I tend not to do those often. One thing I do like about using --prefix=$WLD is that I can have multiple local wayland and weston checkouts where I do my day to day work, and use the build tree to link against via --prefix. Bryce > If we do install, we must configure weston with --disable-weston-launch > as it requires root perms during installation. Not sure what to make of > that - it's not very useful without root perms anyway, and not required > on systems with systemd. Building it "uninstalled" seems to only have > value to check for compilation and warnings anyway. > > > LD_LIBRARY_PATH="\ > > $WLD/foo/lib/\ > > ${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" > > > > WESTON_BUILD_DIR="\ > > $WLD/build/weston/\ > > ${WESTON_BUILD_DIR:+:$WESTON_BUILD_DIR}" > > > > PKG_CONFIG_PATH="\ > > :$WLD/foo/lib/pkgconfig/ > > ${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}" > > > > PATH="\ > > $WLD/foo/bin/\ > > :$PATH" > > > > > >> +* Edit a local copy of the script to make $WLD point to the base directory > > How about one honours the WLD that's already set since ... > > It's not already set - the script exports it. Oh, this seems to be the > same variable name used in some of the build instructions at: > https://wayland.freedesktop.org/building.html > > and in weston's releasing.txt. > > Is that the problem? > > >> + where your repositories are (make sure to use the absolute paths), then, > >> + after executing the script, issue the following commands to have > >> everything > >> + built and weston running from the uninstalled environment. > >> + > >> + cd $WLD > > ... they will likely use it here ? > > These instructions are performed after running the script, so WLD should > have been set in the environment by the script. > > >> + for i in wayland wayland-protocols libinput weston; do > >> + cd $i && ./autogen.sh && make && cd ..; done > > Use OOT builds, please. > > Only if all the existing scripts and documentation are updated to stop > using in tree builds. ;) > > > > >> +if [ "$1"yes != "yes" ]; then > >> + cat << EOF > >> + > >> +This script uses no arguments. Aborting execution. > >> + > > The number of arguments is $#, why not use that one ? > > > > > >> +WLD=$HOME/devel/wayland/git > >> + > > With the above said, one can just check it and bail out if WLD > > invalid/unset ? > > I'm somewhat undecided on this. Setting up the env var outside of the > script is potentially a little more annoying (have to add it to your rc > scripts, cycle any shells, or do it manually every time you use the > script) but I think anyone using this stuff shouldn't have too much > trouble figuring that out. > > We're copying functionality that exists elsewhere (gst-uninstalled from > gstreamer), so maybe it's best to stick with their paradigm since they > seem happy with it? > > I realize that's a lazy answer. :) > > Thanks, > Derek > > > > >> +# Export new environment > >> + > >> +export WLD > > Then you can drop this (maybe) ? > > > > > >> +The following environment has been exported: > >> + > >> +WLD=$WLD > > And this ? > > > > > > Regards, > > Emil > > > > _______________________________________________ > wayland-devel mailing list > wayland-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/wayland-devel _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/wayland-devel