diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2011-11-15 17:40:25 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2011-11-15 17:40:25 +0200 |
commit | cd63dba445d476317e9a25c9d791a7078a0395c8 (patch) | |
tree | 8d921f73a678613e43ebefb8b33fcbbb977cc0d2 /build | |
parent | 982db72f1ec9a8e58c59036a388726bb730f44f4 (diff) |
Add support for selecting threading implementation
Diffstat (limited to 'build')
-rw-r--r-- | build/bootstrap.make | 3 | ||||
-rw-r--r-- | build/configuration-rules.make | 18 | ||||
-rw-r--r-- | build/configuration.make | 22 | ||||
-rw-r--r-- | build/configure | 26 |
4 files changed, 69 insertions, 0 deletions
diff --git a/build/bootstrap.make b/build/bootstrap.make index 26b7eeb..00d384d 100644 --- a/build/bootstrap.make +++ b/build/bootstrap.make @@ -16,6 +16,9 @@ ifeq ($(patsubst %build/bootstrap.make,,$(lastword $(MAKEFILE_LIST))),) include $(build)/bootstrap.make endif +# Configuration +# +$(call include,$(scf_root)/configuration.make) # Aliases # diff --git a/build/configuration-rules.make b/build/configuration-rules.make new file mode 100644 index 0000000..a198679 --- /dev/null +++ b/build/configuration-rules.make @@ -0,0 +1,18 @@ +# file : build/configuration-rules.make +# author : Boris Kolpackov <boris@codesynthesis.com> +# copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC +# license : GNU GPL v2; see accompanying LICENSE file + +$(dcf_root)/configuration-dynamic.make: | $(dcf_root)/. + $(call message,,$(scf_root)/configure $@) + +ifndef %foreign% + +disfigure:: + $(call message,rm $$1,rm -f $$1,$(dcf_root)/configuration-dynamic.make) + +endif + +ifeq ($(.DEFAULT_GOAL),$(dcf_root)/configuration-dynamic.make) +.DEFAULT_GOAL := +endif diff --git a/build/configuration.make b/build/configuration.make new file mode 100644 index 0000000..0919150 --- /dev/null +++ b/build/configuration.make @@ -0,0 +1,22 @@ +# file : build/configuration.make +# author : Boris Kolpackov <boris@codesynthesis.com> +# copyright : Copyright (c) 2005-2011 Code Synthesis Tools CC +# license : GNU GPL v2; see accompanying LICENSE file + +$(call include-once,$(scf_root)/configuration-rules.make,$(dcf_root)) + +# Dynamic configuration. +# +libodb_threads := + +$(call -include,$(dcf_root)/configuration-dynamic.make) + +ifdef libodb_threads + +$(out_root)/%: libodb_threads := $(libodb_threads) + +else + +.NOTPARALLEL: + +endif diff --git a/build/configure b/build/configure new file mode 100644 index 0000000..5816683 --- /dev/null +++ b/build/configure @@ -0,0 +1,26 @@ +#! /usr/bin/env bash + +# file : build/configure +# author : Boris Kolpackov <boris@codesynthesis.com> +# copyright : Copyright (c) 2005-2011 Code Synthesis Tools CC +# license : GNU GPL v2; see accompanying LICENSE file + +# $1 out file +# +# bld_root - build root +# project_name - project name +# + +source $bld_root/dialog.bash + +$echo +$echo "Please select the threading implementation:" +$echo +$echo "(1) POSIX" +$echo "(2) Win32" +$echo "(3) None" +$echo + +threads=`read_option "posix win32 none" "posix"` + +echo "libodb_threads := $threads" >$1 |