diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2011-03-18 12:35:53 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2011-03-18 12:35:53 +0200 |
commit | acff75b62b48f9a121d935e1f59ddc465145618c (patch) | |
tree | 3a82b256f3f4b75c17a9013d0f158183383105cb /build/bootstrap.make | |
parent | 35c31a19f90608df19f0c4aa077dcbbe5150d3e4 (diff) |
Development build system setup
Diffstat (limited to 'build/bootstrap.make')
-rw-r--r-- | build/bootstrap.make | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/build/bootstrap.make b/build/bootstrap.make new file mode 100644 index 0000000..b5f87a7 --- /dev/null +++ b/build/bootstrap.make @@ -0,0 +1,72 @@ +# file : build/bootstrap.make +# author : Boris Kolpackov <boris@codesynthesis.com> +# copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC +# license : GNU GPL v2; see accompanying LICENSE file + +project_name := libodb-sqlite + +# First try to include the bundled bootstrap.make if it exist. If that +# fails, let make search for the external bootstrap.make. +# +build := build-0.3 + +-include $(dir $(lastword $(MAKEFILE_LIST)))../../$(build)/bootstrap.make + +ifeq ($(patsubst %build/bootstrap.make,,$(lastword $(MAKEFILE_LIST))),) +include $(build)/bootstrap.make +endif + + +# Aliases +# +.PHONY: $(out_base)/ \ + $(out_base)/.test \ + $(out_base)/.dist \ + $(out_base)/.clean + +ifdef %interactive% + +.PHONY: test dist clean + +test: $(out_base)/.test +dist: $(out_base)/.dist +clean: $(out_base)/.clean + +ifneq ($(filter $(.DEFAULT_GOAL),test dist clean),) +.DEFAULT_GOAL := +endif + +endif + +# Make sure the distribution prefix is set if the goal is dist. +# +ifneq ($(filter $(MAKECMDGOALS),dist),) +ifeq ($(dist_prefix),) +$(error dist_prefix is not set) +endif +endif + +# If we don't have dependency auto-generation then we need to manually +# make sure that generated files are generated before C++ file are +# compiler. To do this we make the object files ($2) depend in order- +# only on generated files ($3). +# +ifeq ($(cxx_id),generic) + +define include-dep +$(if $2,$(eval $2: | $3)) +endef + +else + +define include-dep +$(call -include,$1) +endef + +endif + +# Don't include dependency info for certain targets. +# +ifneq ($(filter $(MAKECMDGOALS),clean disfigure dist),) +include-dep = +endif |