Improve error message when libosmocom directory cannot be found.

The rules in build/Makefile.vty-reference.inc require a libosmocore
source tree. Make the top-level Makefile check that LIBOSMO_DIR is
set to a valid directory before running the build.

This transforms an obscure build error into:

Directory '~/source/gsm/libosmocore' not found, please set LIBOSMO_DIR to
the path of your libosmocom source tree: make LIBOSMO_DIR=/path/to/libosmocore
Makefile:80: recipe for target 'check-deps' failed

Change-Id: Ic201373df115bb6f8c9a2bc30d18ff4c2a660deb
Related: OS#2787
This commit is contained in:
Stefan Sperling 2018-02-16 17:48:30 +01:00
parent 908b838366
commit 8c4d14fb4b
1 changed files with 6 additions and 0 deletions

View File

@ -1,3 +1,5 @@
LIBOSMO_DIR ?= ~/source/gsm/libosmocore
all: check-deps
cd OsmoBTS; $(MAKE)
cd OsmoNITB; $(MAKE)
@ -70,6 +72,9 @@ endef
define check_dep_python2_module
@echo "import $(1)" | python2 - >/dev/null 2>&1 || { echo >&2 "Failed to import '$(1)' module, please install $(2)."; exit 1; }
endef
define check_dep_dir
@test -d $(1) || { echo >&2 "Directory '$(1)' not found, please set $(2) to the path of your libosmocom source tree: make LIBOSMO_DIR=/path/to/libosmocore"; exit 1; }
endef
check-deps:
$(call check_dep_bin,mscgen,mscgen)
@ -82,3 +87,4 @@ check-deps:
$(call check_dep_bin,dot,graphviz)
$(call check_dep_bin,python2,python2)
$(call check_dep_python2_module,pychart,python2-pychart)
$(call check_dep_dir,$(LIBOSMO_DIR),LIBOSMO_DIR)