Lines Matching +full:user +full:- +full:config
1 # Status: mostly ported. Missing is --out-xml support, 'configure' integration
52 # The cleaning is tricky. Say, if user says 'bjam --clean foo' where 'foo' is a
59 # line. When running 'bjam --clean main_target' we want to clean only files
71 # while not strictly necessary, has been added to allow testing Boost-Build's
146 # code in project-target.find but we can not reuse that code without a
147 # project-targets instance.
171 # file with the given 'filename' at 'path' into module with name 'module-name'.
173 # on the must-find parameter. Returns a normalized path to the loaded
196 # Set source location so that path-constant in config files
198 # for project-config.jam, but may be used in other
199 # config files as well.
201 attributes.set('source-location', os.path.dirname(where), True)
216 # -- test-config --
217 # Loaded only if specified on the command-line using the --test-config
218 # command-line parameter. It is ok for this file not to exist even if
219 # specified. If this configuration file is loaded, regular site and user
223 # -- site-config --
224 # Always named site-config.jam. Will only be found if located on the system
225 # root path (Windows), /etc (non-Windows), user's home folder or the Boost
226 # Build path, in that order. Not loaded in case the test-config configuration
227 # file is loaded or the --ignore-site-config command-line option is specified.
229 # -- user-config --
230 # Named user-config.jam by default or may be named explicitly using the
231 # --user-config command-line option or the BOOST_BUILD_USER_CONFIG environment
234 # user's home directory and the Boost Build path, in that order. Not loaded in
235 # case either the test-config configuration file is loaded or an empty file
245 ignore_site_config = "--ignore-site-config" in sys.argv
247 initialize_config_module("test-config")
250 m = re.match("--test-config=(.*)$", a)
256 … where = load_config("test-config", os.path.basename(test_config), [os.path.dirname(test_config)])
259 print "notice: Regular site and user configuration files will"
269 print "notice: --ignore-site-config command-line option."
271 initialize_config_module("site-config")
273 load_config('site-config', 'site-config.jam', site_path)
275 initialize_config_module('user-config')
279 # specified, and value of '' if user explicitly does not want
280 # to load any user config.
283 m = re.match("--user-config=(.*)$", a)
297 user_config = "user-config.jam"
305 print "notice: Loading explicitly specified user configuration file:"
308 … load_config('user-config', os.path.basename(user_config), [os.path.dirname(user_config)], True)
310 load_config('user-config', os.path.basename(user_config), user_path)
313 print "notice: User configuration file loading explicitly disabled."
315 # We look for project-config.jam from "." upward. I am not sure this is
318 # - We need to load project-config.jam before Jamroot
319 # - We probably need to load project-config.jam even if there is no Jamroot
320 # - e.g. to implement automake-style out-of-tree builds.
321 if os.path.exists("project-config.jam"):
322 file = ["project-config.jam"]
324 file = b2.util.path.glob_in_parents(".", ["project-config.jam"])
327 initialize_config_module('project-config', os.path.dirname(file[0]))
328 load_config('project-config', "project-config.jam", [os.path.dirname(file[0])], True)
333 # Autoconfigure toolsets based on any instances of --toolset=xx,yy,...zz or
335 # be processed as if they had been specified by the user.
341 option_toolsets = [e for option in b2.util.regex.transform(sys.argv, "^--toolset=(.*)$")
348 # Parse toolset-version/properties.
349 (toolset_version, toolset, version) = re.match("(([^-/]+)-?([^/]+)?)/?.*", t).groups()
352 … print "notice: [cmdline-cfg] Detected command-line request for '%s': toolset= %s version=%s" \
374 …print "notice: [cmdline-cfg] toolset '%s' not previously configured; attempting to auto-configure …
384 print "notice: [cmdline-cfg] toolset '%s' already configured" % toolset_version
387 # case toolset has been specified using the "--toolset=..." command-line
392 print "notice: [cmdline-cfg] adding toolset=%s) to the build request." % t ;
401 # Returns 'false' otherwise. Expects the .project-targets list to have already
411 parent = get_manager().projects().attribute(project, "parent-module")
412 if parent and parent != "user-config":
420 # ------
427 if "--profiling" in sys.argv:
447 debug_config = "--debug-configuration" in sys.argv
448 out_xml = any(re.match("^--out-xml=(.*)$", a) for a in sys.argv)
452 global_build_dir = option.get("build-dir")
457 if "--version" in sys.argv:
474 # in the current folder so 'use-project' directives have any chance of
496 # default-toolset = darwin ;
504 print "warning: http://boost.org/boost-build2/doc/html/bbv2/advanced/configuration.html"
522 clean = "--clean" in sys.argv
523 cleanall = "--clean-all" in sys.argv
534 # List of Boost Build meta-targets, virtual-targets and actual Jam targets
542 # Process each target specified on the command-line and convert it into
568 ## if [ option.get dump-generators : : true ]
574 # We wish to put config.log in the build directory corresponding
579 first_project_root_location = first_project.get('project-root')
583 configure.set_log_file(os.path.join(first_build_build_dir, "config.log"))
629 bjam.call("set-variable", 'PARALLELISM', j)
631 k = option.get("keep-going", "true", "true")
633 bjam.call("set-variable", "KEEP_GOING", "1")
635 bjam.call("set-variable", "KEEP_GOING", "0")
637 print "error: Invalid value for the --keep-going option"
655 # FIXME: add $(.out-xml)
658 bjam.call("UPDATE", "clean-all")
665 #configure.print-configure-checks-summary ;
672 ok = bjam.call("UPDATE_NOW", "all") # FIXME: add out-xml