diff --git a/.gitignore b/.gitignore index ed9ef527719aa199d96c5db3765b2758428d29a5..34f922297e9c5e7617390cedcbd467e97d7584ae 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ *~ /target -/local.conf +/build.conf /_build \ No newline at end of file diff --git a/Makefile b/Makefile index d4503fd34e178f3d366d1927090221e74883444f..5ef41efd5556a209b319351ceb7f56fcf016e7df 100644 --- a/Makefile +++ b/Makefile @@ -3,8 +3,24 @@ # This file may be used under the terms of the GNU General Public License version 3 # see COPYING -BUILD_CONF?=./build.conf --include $(BUILD_CONF) +# BUILD_CONF must be specified relative to the repo root or must be an absolute path +# BUILD_CONF defaults to ./build.conf +REPO_ROOT_REL:=$(dir $(lastword $(MAKEFILE_LIST))) +ifndef BUILD_CONF + BUILD_CONF=$(REPO_ROOT_REL)/build.conf + -include $(BUILD_CONF) +else + BUILD_CONF_EFF=$(BUILD_CONF) + ifeq ($(dir $(BUILD_CONF)),./) + BUILD_CONF_EFF=$(REPO_ROOT_REL)/$(BUILD_CONF) + endif + ifeq ($(wildcard $(BUILD_CONF_EFF)),) + $(info BUILD_CONF must be specified relative to the repo root or must be an absolute path) + $(error file specified using BUILD_CONF ($(BUILD_CONF)) not found) + endif + include $(BUILD_CONF_EFF) +endif + # Build config defaults DEBUG?=debug diff --git a/build.conf.example b/build.conf.example index f255f17637487264648340d945213a0e78c5e96c..0b1ab0595bd51f0ba1998b5e947137a50614c779 100644 --- a/build.conf.example +++ b/build.conf.example @@ -1,7 +1,7 @@ -# This is an Example build config (local.conf) +# This is an Example build config (build.conf) # The values here reflect the defaults. # If needed, copy this file into a file called -# `local.conf` and adjust the values +# `build.conf` and adjust the values # The dir where the build artifacts get installed into # PREFIX=/usr/local