Hi!

On Mon, May 15, 2017 at 10:25:18PM +0200, Alexander Huemer wrote:
> On Mon, May 15, 2017 at 10:18:03PM +0200, Neels Hofmeyr wrote:
> > The attached patch below indeed looks like errors in our build. Can you 
> > please
> > push this as a patch to gerrit?
> 
> Will do.

I just pushed patch set 2 to gerrit.
Patch set 1 got Code-Review+2 and Verified+1.
Patch set 2 got a broken pipe for --enable-smpp --enable-iu, not sure if 
that is really caused by the patch.

> > And you are meaning to say: if we used stow in our jenkins builds, we would
> > catch these errors and fail builds if new ones are introduced, right?
> 
> That is the intention, yes, although stow is a convenience layer, not 
> strictly required.
> 
> > What role exactly does stow play here -- do I get the same when I install to
> > separate '--prefix'es and then add all those prefixes to the PKG_CONFIG_PATH
> > and LD_LIBRARY_PATH?
> 
> Yes, the effect would be the same. Stow just makes all of that much more 
> convenient and straight-forward, as you end up with just one location 
> where (symlinks to) libs and so forth have to be searched. stow takes 
> care of that.
> 
> > The jenkins build scripts for each project are included in the contrib/ dir 
> > of
> > each git tree, using scripts found in the osmo-ci.git (also on gerrit). Feel
> > free to go ahead and submit patches that use stow, e.g. for the openbsc.git
> > build to begin with. If it improves our build by catching CFLAGS omissions 
> > I'll
> > happily merge it. I can also install packages that you need for this on the
> > build slaves.
> 
> I will take a look into that as well.

I created a patch for osmo-ci, but cannot do a
$ git push gerrit HEAD:refs/for/master
Lack of permissions?
For now the patch is attached to this email.
On my local machine the following worked then:

$ cd ~/src/telco/osmo/openbsc
$ MAKE=make PARALLEL_MAKE="-j$(nproc)" \
PATH="$PATH:$HOME/src/telco/osmo/osmo-ci/scripts" ./contrib/jenkins.sh
[...]
make[1]: Leaving directory 
'/home/blackbit/src/telco/osmo/openbsc/openbsc/openbsc-0.15.0.770-71124-dirty/_build/sub'
if test -d "openbsc-0.15.0.770-71124-dirty"; then find 
"openbsc-0.15.0.770-71124-dirty" -type d ! -perm -200 -exec chmod u+w {} 
';' && rm -rf "openbsc-0.15.0.770-71124-dirty" || { sleep 5 && rm -rf 
"openbsc-0.15.0.770-71124-dirty"; }; else :; fi
================================================================
openbsc-0.15.0.770-71124-dirty archives ready for distribution: 
openbsc-0.15.0.770-71124-dirty.tar.gz
openbsc-0.15.0.770-71124-dirty.tar.bz2
================================================================
$ ls deps/install/stow/
libosmo-abis  libosmocore  libosmo-netif  libosmo-sccp  libsmpp34  
openggsn
$ 

Kind regards,
-Alex
From ffe080ba4554a2bc442e3109638dc45f1d215836 Mon Sep 17 00:00:00 2001
From: Alexander Huemer <[email protected]>
Date: Fri, 19 May 2017 13:32:06 +0200
Subject: [PATCH] Use stow for dependency management

---
 scripts/osmo-build-dep.sh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/scripts/osmo-build-dep.sh b/scripts/osmo-build-dep.sh
index 2a107ed..cdfbc45 100755
--- a/scripts/osmo-build-dep.sh
+++ b/scripts/osmo-build-dep.sh
@@ -48,6 +48,9 @@ if [ -n "$branch" ]; then
 fi
 git rev-parse HEAD # log current HEAD
 
+mkdir -p "$inst/stow"
+
 autoreconf --install --force
-./configure --prefix="$inst" $cfg
+./configure --prefix="$inst/stow/$project" $cfg
 $MAKE $PARALLEL_MAKE install
+STOW_DIR="$inst/stow" stow --restow $project
-- 
2.11.0

Attachment: signature.asc
Description: Digital signature

Reply via email to