Commit Graph

10 Commits

Author SHA1 Message Date
Oliver Smith 90544fe934 Revert "osmo-build-dep.sh: don't build osmo-gsm-manuals"
Now that we have the proper fix of making a clone of
osmo-gsm-manuals.git available before builds start, and not using
'osmo-build-dep.sh osmo-gsm-manuals' in the contrib/jenkins.sh files
anymore, we can remove the temporary solution. This reverts commit
4cbc445616.

Related: OS#4912
Depends: https://gerrit.osmocom.org/q/topic:jenkins-no-manuals-dep
Change-Id: I88d57ee04775dc75e6ca3152d7edfa7f47608c8a
2021-01-18 13:59:14 +00:00
Oliver Smith 4cbc445616 osmo-build-dep.sh: don't build osmo-gsm-manuals
Save time by only cloning the repository, and not running autoreconf
-fi, ./configure, make and make install. Especially the tests during
make took up significant time, that slowed every project depending on
osmo-gsm-manuals down while being built through master-builds or
gerrit-verifications jobs. Set OSMO_GSM_MANUALS_DIR to the clone
location.

This is an interim measure, I'll submit more patches soon that remove
the 'osmo-build-dep.sh osmo-gsm-manuals' calls from all projects.

Change-Id: I5238cf3f93ded97ed2b44d27868123a646e122dc
Related: OS#4912
2021-01-12 09:14:38 +01:00
Oliver Smith e81f90f7e1 osmo-build-dep.sh: run 'make check' when CHECK=1
Prepare for osmocom-build-old-tags-against-master.sh.

Related: OS#3765
Change-Id: I248b53d7a6fe1b64f2a994c568c0466dc93858de
2019-03-26 10:39:13 +01:00
Oliver Smith f8653decf5 osmo-build-dep.sh: cd into subdir before building
Support building the legacy openbsc source with osmo-build.dep.sh. This
will be used by the upcoming osmocom-build-old-tags-against-master.sh
script.

Related: OS#3765
Change-Id: I852e103e80bf295f692cf13c4cb38e80fbc19eca
2019-03-26 10:39:13 +01:00
Pau Espin 08b81bf085 osmo-build-dep.sh: Let autotools install systemd services to correct path
Change-Id: I9eba05995fc53b72b04a4a9d63ebd5a236304f7c
2018-09-10 16:06:33 +02:00
Alexander Huemer 69350b67e6 Use stow for dependency management
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
2018-01-12 19:14:01 +00:00
Neels Hofmeyr 7c5e34cba0 osmo-build-dep: offload branch checkout to osmo-deps.sh
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-27 22:37:22 +02:00
Neels Hofmeyr f42a1cfa50 add osmo-clean-workspace.sh, use in osmo-deps.sh
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
2017-10-27 22:37:22 +02:00
Neels Hofmeyr c4ce20a93e cosmetic: osmo-build-dep.sh: print example on error
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-11-30 02:45:41 +01:00
Neels Hofmeyr 315e5929f5 add osmo-build-dep.sh from openbsc/contrib/jenkins.sh
Change-Id: I73669753a0f5030575d21e90378a1285cfe898de
2016-10-06 22:47:52 +02:00