From be3dc4cee63da92cfa1fa44a0bf90ab11ec7aaca Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Tue, 15 Nov 2016 16:57:48 +0200 Subject: Start switch to build2 --- build/.gitignore | 1 + build/bootstrap.build | 18 ++++++ build/bootstrap.make | 86 --------------------------- build/cli/cli-cxx.make | 46 -------------- build/export/cli/stub.make | 13 ---- build/import/cli/LICENSE | 1 - build/import/cli/cli-cxx.make | 49 --------------- build/import/cli/configuration-rules.make | 15 ----- build/import/cli/configure | 55 ----------------- build/import/cli/stub.make | 30 ---------- build/import/libcutl/LICENSE | 21 ------- build/import/libcutl/configuration-rules.make | 15 ----- build/import/libcutl/configure | 55 ----------------- build/import/libcutl/stub.make | 30 ---------- build/root.build | 22 +++++++ 15 files changed, 41 insertions(+), 416 deletions(-) create mode 100644 build/.gitignore delete mode 100644 build/bootstrap.make delete mode 100644 build/cli/cli-cxx.make delete mode 100644 build/export/cli/stub.make delete mode 120000 build/import/cli/LICENSE delete mode 100644 build/import/cli/cli-cxx.make delete mode 100644 build/import/cli/configuration-rules.make delete mode 100755 build/import/cli/configure delete mode 100644 build/import/cli/stub.make delete mode 100644 build/import/libcutl/LICENSE delete mode 100644 build/import/libcutl/configuration-rules.make delete mode 100755 build/import/libcutl/configure delete mode 100644 build/import/libcutl/stub.make (limited to 'build') diff --git a/build/.gitignore b/build/.gitignore new file mode 100644 index 0000000..225c27f --- /dev/null +++ b/build/.gitignore @@ -0,0 +1 @@ +config.build diff --git a/build/bootstrap.build b/build/bootstrap.build index 262791b..7c5dd61 100644 --- a/build/bootstrap.build +++ b/build/bootstrap.build @@ -1,2 +1,20 @@ +# file : build/bootstrap.build +# copyright : Copyright (c) 2009-2013 Code Synthesis Tools CC +# license : MIT; see accompanying LICENSE file + project = cli + +using build@0.4.0 + +version = 1.2.0-a2 +revision = 0 + +dist.package = $project-$version + +if ($revision != 0) + dist.package += +$revision + using config +using dist +using test +using install diff --git a/build/bootstrap.make b/build/bootstrap.make deleted file mode 100644 index 97c276a..0000000 --- a/build/bootstrap.make +++ /dev/null @@ -1,86 +0,0 @@ -# file : build/bootstrap.make -# author : Boris Kolpackov -# copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC -# license : MIT; see accompanying LICENSE file - -project_name := cli - -# 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 - -def_goal := $(.DEFAULT_GOAL) - -# Include C++ configuration. We need to know if we are using the generic -# C++ compiler in which case we need to compensate for missing dependency -# auto-generation (see below). -# -$(call include,$(bld_root)/cxx/configuration.make) - -# Aliases -# -.PHONY: $(out_base)/ \ - $(out_base)/.test \ - $(out_base)/.install \ - $(out_base)/.clean \ - $(out_base)/.cleandoc - -ifdef %interactive% - -.PHONY: test install clean cleandoc - -test: $(out_base)/.test -install: $(out_base)/.install -clean: $(out_base)/.clean -cleandoc: $(out_base)/.cleandoc - -endif - -# If we don't have dependency auto-generation then we need to manually -# make sure that CLI files are compiled before C++ file. 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 cleandoc disfigure),) -include-dep = -endif - -# For install, don't include dependecies in examples, and tests. -# -ifneq ($(filter $(MAKECMDGOALS),install),) - -ifneq ($(subst $(src_root)/tests/,,$(src_base)),$(src_base)) -include-dep = -endif - -ifneq ($(subst $(src_root)/examples/,,$(src_base)),$(src_base)) -include-dep = -endif - -endif - -.DEFAULT_GOAL := $(def_goal) diff --git a/build/cli/cli-cxx.make b/build/cli/cli-cxx.make deleted file mode 100644 index 263f6f3..0000000 --- a/build/cli/cli-cxx.make +++ /dev/null @@ -1,46 +0,0 @@ -# file : build/cli/cli-cxx.make -# author : Boris Kolpackov -# copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC -# license : MIT; see accompanying LICENSE file - -# Get the C++ file extensions. -# -$(call include,$(bld_root)/cxx/configuration-static.make) - -cli_pattern := \ -$(out_base)/%.$(cxx_s_suffix) \ -$(out_base)/%.$(cxx_h_suffix) \ -$(out_base)/%.$(cxx_i_suffix) - -$(cli_pattern): cli := cli -$(cli_pattern): cli_options := \ ---hxx-suffix .$(cxx_h_suffix) \ ---ixx-suffix .$(cxx_i_suffix) \ ---cxx-suffix .$(cxx_s_suffix) - -.PRECIOUS: $(cli_pattern) - -ifeq ($(out_base),$(src_base)) - -$(cli_pattern): $(src_base)/%.cli - $(call message,cli $<,$(cli) $(cli_options) --output-dir $(dir $@) $<) - -else - -$(cli_pattern): $(src_base)/%.cli | $$(dir $$@). - $(call message,cli $<,$(cli) $(cli_options) --output-dir $(dir $@) $<) - -$(cli_pattern): $(out_base)/%.cli | $$(dir $$@). - $(call message,cli $<,$(cli) $(cli_options) --output-dir $(dir $@) $<) -endif - -.PHONY: $(out_base)/%.cxx.cli.clean - -$(out_base)/%.cxx.cli.clean: cxx_s_suffix := $(cxx_s_suffix) -$(out_base)/%.cxx.cli.clean: cxx_h_suffix := $(cxx_h_suffix) -$(out_base)/%.cxx.cli.clean: cxx_i_suffix := $(cxx_i_suffix) - -$(out_base)/%.cxx.cli.clean: - $(call message,rm $$1,rm -f $$1,$(@:.cxx.cli.clean=.$(cxx_s_suffix))) - $(call message,rm $$1,rm -f $$1,$(@:.cxx.cli.clean=.$(cxx_h_suffix))) - $(call message,rm $$1,rm -f $$1,$(@:.cxx.cli.clean=.$(cxx_i_suffix))) diff --git a/build/export/cli/stub.make b/build/export/cli/stub.make deleted file mode 100644 index 70e3641..0000000 --- a/build/export/cli/stub.make +++ /dev/null @@ -1,13 +0,0 @@ -# file : build/export/cli/stub.make -# author : Boris Kolpackov -# copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC -# license : MIT; see accompanying LICENSE file - -$(call include-once,$(src_root)/cli/makefile,$(out_root)) - -# Use the rules file from cli's import directory instead of the -# importing project's one. -# -$(call export,\ - cli: $(out_root)/cli/cli,\ - cli-rules: $(scf_root)/import/cli/cli-cxx.make) diff --git a/build/import/cli/LICENSE b/build/import/cli/LICENSE deleted file mode 120000 index 5853aae..0000000 --- a/build/import/cli/LICENSE +++ /dev/null @@ -1 +0,0 @@ -../../../LICENSE \ No newline at end of file diff --git a/build/import/cli/cli-cxx.make b/build/import/cli/cli-cxx.make deleted file mode 100644 index 5d4293e..0000000 --- a/build/import/cli/cli-cxx.make +++ /dev/null @@ -1,49 +0,0 @@ -# file : build/import/cli/cli-cxx.make -# author : Boris Kolpackov -# copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC -# license : MIT; see accompanying LICENSE file - -# Here we are operating in the importing project's space, not in -# cli's. -# - -# Get the C++ file extensions. -# -$(call include,$(bld_root)/cxx/configuration-static.make) - -cli_pattern := \ -$(out_base)/%.$(cxx_s_suffix) \ -$(out_base)/%.$(cxx_h_suffix) \ -$(out_base)/%.$(cxx_i_suffix) - -$(cli_pattern): cli_options := \ ---hxx-suffix .$(cxx_h_suffix) \ ---ixx-suffix .$(cxx_i_suffix) \ ---cxx-suffix .$(cxx_s_suffix) - -.PRECIOUS: $(cli_pattern) - -ifeq ($(out_base),$(src_base)) - -$(cli_pattern): $(src_base)/%.cli - $(call message,cli $<,$(cli) $(cli_options) --output-dir $(dir $@) $<) - -else - -$(cli_pattern): $(src_base)/%.cli | $$(dir $$@). - $(call message,cli $<,$(cli) $(cli_options) --output-dir $(dir $@) $<) - -$(cli_pattern): $(out_base)/%.cli | $$(dir $$@). - $(call message,cli $<,$(cli) $(cli_options) --output-dir $(dir $@) $<) -endif - -.PHONY: $(out_base)/%.cxx.cli.clean - -$(out_base)/%.cxx.cli.clean: cxx_s_suffix := $(cxx_s_suffix) -$(out_base)/%.cxx.cli.clean: cxx_h_suffix := $(cxx_h_suffix) -$(out_base)/%.cxx.cli.clean: cxx_i_suffix := $(cxx_i_suffix) - -$(out_base)/%.cxx.cli.clean: - $(call message,rm $$1,rm -f $$1,$(@:.cxx.cli.clean=.$(cxx_s_suffix))) - $(call message,rm $$1,rm -f $$1,$(@:.cxx.cli.clean=.$(cxx_h_suffix))) - $(call message,rm $$1,rm -f $$1,$(@:.cxx.cli.clean=.$(cxx_i_suffix))) diff --git a/build/import/cli/configuration-rules.make b/build/import/cli/configuration-rules.make deleted file mode 100644 index e5a77f2..0000000 --- a/build/import/cli/configuration-rules.make +++ /dev/null @@ -1,15 +0,0 @@ -# file : build/import/cli/configuration-rules.make -# author : Boris Kolpackov -# copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC -# license : MIT; see accompanying LICENSE file - -$(dcf_root)/import/cli/configuration-dynamic.make: | $(dcf_root)/import/cli/. - $(call message,,$(scf_root)/import/cli/configure $@) - -ifndef %foreign% - -$(dcf_root)/.disfigure:: - $(call message,rm $(dcf_root)/import/cli/configuration-dynamic.make,\ -rm -f $(dcf_root)/import/cli/configuration-dynamic.make) - -endif diff --git a/build/import/cli/configure b/build/import/cli/configure deleted file mode 100755 index 612301c..0000000 --- a/build/import/cli/configure +++ /dev/null @@ -1,55 +0,0 @@ -#! /usr/bin/env bash - -# file : build/import/cli/configure -# author : Boris Kolpackov -# copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC -# license : MIT; see accompanying LICENSE file - - -# $1 - out file -# -# bld_root - build root -# project_name - project name -# - -source $bld_root/dialog.bash - - -$echo -$echo "Configuring external dependency on 'cli' for '$project_name'." -$echo - -$echo -$echo "Would you like to configure dependency on the installed " -$echo "version of 'cli' as opposed to the development build?" -$echo - -installed=`read_y_n y` - -path= - -if [ "$installed" = "n" ]; then - -$echo -$echo "Please enter the src_root for 'cli'." -$echo - -src_root=`read_path --directory --exist` - -$echo -$echo "Please enter the out_root for 'cli'." -$eche - -out_root=`read_path --directory $src_root` - -fi - -echo cli_installed := $installed >$1 - -if [ "$installed" = "n" ]; then - -echo src_root := $src_root >>$1 -echo scf_root := \$\(src_root\)/build >>$1 -echo out_root := $out_root >>$1 - -fi diff --git a/build/import/cli/stub.make b/build/import/cli/stub.make deleted file mode 100644 index 20cf45a..0000000 --- a/build/import/cli/stub.make +++ /dev/null @@ -1,30 +0,0 @@ -# file : build/import/cli/stub.make -# author : Boris Kolpackov -# copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC -# license : MIT; see accompanying LICENSE file - -$(call include-once,$(scf_root)/import/cli/configuration-rules.make,$(dcf_root)) - -cli_installed := - -$(call -include,$(dcf_root)/import/cli/configuration-dynamic.make) - -ifdef cli_installed - -ifeq ($(cli_installed),y) - -$(call export,cli: cli,cli-rules: $(scf_root)/import/cli/cli-cxx.make) - -else - -# Include export stub. -# -$(call include,$(scf_root)/export/cli/stub.make) - -endif - -else - -.NOTPARALLEL: - -endif diff --git a/build/import/libcutl/LICENSE b/build/import/libcutl/LICENSE deleted file mode 100644 index 5306eea..0000000 --- a/build/import/libcutl/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -Copyright (c) Code Synthesis Tools CC, 2009. - -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: - -The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - diff --git a/build/import/libcutl/configuration-rules.make b/build/import/libcutl/configuration-rules.make deleted file mode 100644 index db255d0..0000000 --- a/build/import/libcutl/configuration-rules.make +++ /dev/null @@ -1,15 +0,0 @@ -# file : build/import/libcutl/configuration-rules.make -# author : Boris Kolpackov -# copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC -# license : MIT; see accompanying LICENSE file - -$(dcf_root)/import/libcutl/configuration-dynamic.make: | $(dcf_root)/import/libcutl/. - $(call message,,$(scf_root)/import/libcutl/configure $@) - -ifndef %foreign% - -$(dcf_root)/.disfigure:: - $(call message,rm $(dcf_root)/import/libcutl/configuration-dynamic.make,\ -rm -f $(dcf_root)/import/libcutl/configuration-dynamic.make) - -endif diff --git a/build/import/libcutl/configure b/build/import/libcutl/configure deleted file mode 100755 index 6bcd346..0000000 --- a/build/import/libcutl/configure +++ /dev/null @@ -1,55 +0,0 @@ -#! /usr/bin/env bash - -# file : build/import/libcutl/configure -# author : Boris Kolpackov -# copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC -# license : MIT; see accompanying LICENSE file - - -# $1 - out file -# -# bld_root - build root -# project_name - project name -# - -source $bld_root/dialog.bash - - -$echo -$echo "Configuring external dependency on 'libcutl' for '$project_name'." -$echo - -$echo -$echo "Would you like to configure dependency on the installed " -$echo "version of 'libcutl' as opposed to the development build?" -$echo - -installed=`read_y_n y` - -path= - -if [ "$installed" = "n" ]; then - -$echo -$echo "Please enter the src_root for 'libcutl'." -$echo - -src_root=`read_path --directory --exist` - -$echo -$echo "Please enter the out_root for 'libcutl'." -$echo - -out_root=`read_path --directory $src_root` - -fi - -echo libcutl_installed := $installed >$1 - -if [ "$installed" = "n" ]; then - -echo src_root := $src_root >>$1 -echo scf_root := \$\(src_root\)/build >>$1 -echo out_root := $out_root >>$1 - -fi diff --git a/build/import/libcutl/stub.make b/build/import/libcutl/stub.make deleted file mode 100644 index ab3d051..0000000 --- a/build/import/libcutl/stub.make +++ /dev/null @@ -1,30 +0,0 @@ -# file : build/import/libcutl/stub.make -# author : Boris Kolpackov -# copyright : Copyright (c) 2009-2011 Code Synthesis Tools CC -# license : MIT; see accompanying LICENSE file - -$(call include-once,$(scf_root)/import/libcutl/configuration-rules.make,$(dcf_root)) - -libcutl_installed := - -$(call -include,$(dcf_root)/import/libcutl/configuration-dynamic.make) - -ifdef libcutl_installed - -ifeq ($(libcutl_installed),y) - -$(call export,l: -lcutl,cpp-options: ) - -else - -# Include export stub. -# -$(call include,$(scf_root)/export/libcutl/stub.make) - -endif - -else - -.NOTPARALLEL: - -endif diff --git a/build/root.build b/build/root.build index 3caf259..fd29507 100644 --- a/build/root.build +++ b/build/root.build @@ -1,6 +1,28 @@ +# file : build/root.build +# copyright : Copyright (c) 2009-2013 Code Synthesis Tools CC +# license : MIT; see accompanying LICENSE file + +cxx.std = 14 + using cxx hxx{*}: extension = hxx ixx{*}: extension = ixx txx{*}: extension = txx cxx{*}: extension = cxx + +cxx.poptions =+ -I$out_root -I$src_root + +# Load the cli module but only if it's available. This way a distribution +# that includes pre-generated files can be built without installing cli. +# This is also the reason why we need to explicitly spell out individual +# source files instead of using the cli.cxx{} group (it won't be there +# unless the module is configured). +# +using? cli + +if! $cli.configured +{ + define cli: file + cli{*}: extension = cli +} -- cgit v1.1