aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/osmo-build-dep.sh
AgeCommit message (Collapse)AuthorFilesLines
2018-01-12Use stow for dependency managementAlexander Huemer1-1/+9
This commit introduces the usage of GNU stow[1] for dependency management. Stow uses symlinks to make dependencies available in a single directory althoguh they were installed in distinct directories. Keeping installation directories seperate has the advantage of letting the build fail if AM_CFLAGS and LDADD do not contain all dependencies which are actually used. Installing multiple dependencies into a single directory causes x_CFLAGS and x_LIBS variables to magically point where other dependencies are found as well, therefore missing entries can be overlooked. Stow acts as a convenience layer here, making it unnecessary to supply a list of locations in LD_LIBRARY_PATH, PKG_CONFIG_PATH and so forth for building when dependencies are installed in distinct directories manually. Stow has to be present on the jenkins build nodes for successful executing of osmo-build-dep.sh. [1] https://www.gnu.org/software/stow/ Change-Id: I8f5012419495a656912b7b71e4f76ce102c6b63a
2017-10-27osmo-build-dep: offload branch checkout to osmo-deps.shNeels Hofmeyr1-5/+1
In osmo-deps.sh, add second arg $branch, and also name the first one (i.e. $project). Use the passed branch or 'origin/master' by default. In osmo-build-dep.sh, it's not necessary to do a second 'git rev-parse HEAD', osmo-deps.sh already does it. Change-Id: I598c41a12352acea6e49a321ad2f665f6ea07a44
2017-10-27add osmo-clean-workspace.sh, use in osmo-deps.shNeels Hofmeyr1-1/+0
So far, each jenkins job does its own cleanup, more or less well. Also, jenkins git config offers the 'Clean before checkout' option, which seems to fail when there are non-writable leftovers from a failed 'make distcheck'. Furthermore, our jenkins build slaves have unused compiled binaries piling up by the gigabytes: each matrix build x each parallel build and each compiled dependency therein builds .o, .a, .so and executables plus installs them to a local prefix, and just leaves them sitting around to rot until the job runs again. Instead, we want to clean them out when building is done. All of this calls for a unified cleanup script that knows how to clean a workspace properly, to run once before and once after each jenkins build. Here it is. Use that function in osmo-deps.sh instead of duplicating cleanup steps. Change-Id: I2409b2928b4d7ebbd6c005097d4ad7337307dd93
2016-11-30cosmetic: osmo-build-dep.sh: print example on errorNeels Hofmeyr1-4/+12
I've been asked at least twice what the contents of the expected env vars should be, so log an example on error. Change-Id: I635752e6033c57bfce90d8b0732bc402bf3014c8
2016-10-06add osmo-build-dep.sh from openbsc/contrib/jenkins.shNeels Hofmeyr1-0/+45
Change-Id: I73669753a0f5030575d21e90378a1285cfe898de