From 140d836e9cd54fb67b969fd82ef7ed19ba574d40 Mon Sep 17 00:00:00 2001 From: Luca Falavigna Date: Sat, 26 Apr 2014 15:11:58 +0200 Subject: Imported Upstream version 2.3.1 --- doc/generated/builders.gen | 2577 +++++++ doc/generated/builders.mod | 243 + doc/generated/examples/EnumVariable_map_1.xml | 4 + doc/generated/examples/addmethod_ex1_1.xml | 7 + doc/generated/examples/addmethod_ex2_1.xml | 5 + doc/generated/examples/addmethod_ex2_2.xml | 7 + doc/generated/examples/alias_ex1_1.xml | 6 + doc/generated/examples/alias_ex2_1.xml | 26 + doc/generated/examples/buildersbuiltin_ex1_1.xml | 5 + doc/generated/examples/buildersbuiltin_ex2_1.xml | 4 + doc/generated/examples/buildersbuiltin_ex3_1.xml | 4 + doc/generated/examples/buildersbuiltin_ex4_1.xml | 4 + doc/generated/examples/buildersbuiltin_libs_1.xml | 6 + doc/generated/examples/buildersbuiltin_libs_2.xml | 7 + doc/generated/examples/builderscommands_ex1_1.xml | 4 + doc/generated/examples/builderscommands_ex2_1.xml | 4 + .../examples/builderswriting_MY_EMITTER_1.xml | 5 + doc/generated/examples/builderswriting_ex1_1.xml | 4 + doc/generated/examples/builderswriting_ex2_1.xml | 6 + doc/generated/examples/builderswriting_ex3_1.xml | 6 + doc/generated/examples/builderswriting_ex4_1.xml | 5 + doc/generated/examples/builderswriting_ex5_1.xml | 4 + doc/generated/examples/builderswriting_ex6_1.xml | 4 + doc/generated/examples/builderswriting_ex7_1.xml | 4 + doc/generated/examples/caching_ex-random_1.xml | 9 + doc/generated/examples/caching_ex1_1.xml | 11 + doc/generated/examples/caching_ex1_2.xml | 11 + doc/generated/examples/caching_ex1_4.xml | 17 + doc/generated/examples/caching_ex1_5.xml | 15 + doc/generated/examples/commandline_ARGLIST_1.xml | 6 + doc/generated/examples/commandline_ARGUMENTS_1.xml | 12 + doc/generated/examples/commandline_AddOption_1.xml | 4 + doc/generated/examples/commandline_AddOption_2.xml | 4 + .../examples/commandline_BUILD_TARGETS_1_1.xml | 16 + .../examples/commandline_BoolVariable_1.xml | 4 + .../examples/commandline_BoolVariable_2.xml | 4 + .../examples/commandline_BoolVariable_3.xml | 4 + .../examples/commandline_BoolVariable_4.xml | 4 + .../examples/commandline_BoolVariable_5.xml | 7 + .../commandline_COMMAND_LINE_TARGETS_1.xml | 9 + .../examples/commandline_DEFAULT_TARGETS_1_1.xml | 10 + .../examples/commandline_DEFAULT_TARGETS_2_1.xml | 13 + doc/generated/examples/commandline_Default1_1.xml | 10 + doc/generated/examples/commandline_Default1_2.xml | 7 + doc/generated/examples/commandline_Default2_1.xml | 10 + doc/generated/examples/commandline_Default3_1.xml | 12 + doc/generated/examples/commandline_Default4_1.xml | 9 + .../examples/commandline_EnumVariable_1.xml | 8 + .../examples/commandline_EnumVariable_2.xml | 6 + .../examples/commandline_EnumVariable_3.xml | 14 + .../examples/commandline_EnumVariable_ic1_1.xml | 10 + .../examples/commandline_EnumVariable_ic2_1.xml | 8 + .../examples/commandline_ListVariable_1.xml | 6 + .../examples/commandline_ListVariable_2.xml | 6 + .../examples/commandline_ListVariable_3.xml | 7 + .../examples/commandline_PackageVariable_1.xml | 10 + .../examples/commandline_PathVariable_1.xml | 6 + .../examples/commandline_PathVariable_2.xml | 6 + .../examples/commandline_SCONSFLAGS_1.xml | 11 + doc/generated/examples/commandline_SetOption_1.xml | 5 + doc/generated/examples/commandline_SetOption_2.xml | 6 + doc/generated/examples/commandline_SetOption_3.xml | 9 + .../examples/commandline_UnknownVariables_1.xml | 4 + .../examples/commandline_Variables1_1.xml | 6 + .../examples/commandline_Variables_Help_1.xml | 9 + .../commandline_Variables_custom_py_1_1.xml | 6 + .../commandline_Variables_custom_py_1_custom.py | 3 + .../commandline_Variables_custom_py_2_1.xml | 6 + doc/generated/examples/depends_AlwaysBuild_1.xml | 7 + doc/generated/examples/depends_AlwaysBuild_2.xml | 7 + doc/generated/examples/depends_Requires_1.xml | 20 + doc/generated/examples/depends_ex1_1.xml | 7 + doc/generated/examples/depends_ex1_2.xml | 7 + doc/generated/examples/depends_ex1_3.xml | 8 + doc/generated/examples/depends_ex1_4.xml | 9 + doc/generated/examples/depends_ex1_5.xml | 9 + doc/generated/examples/depends_ex1_6.xml | 7 + doc/generated/examples/depends_ex1_7.xml | 7 + doc/generated/examples/depends_ex1_8.xml | 7 + doc/generated/examples/depends_ex5_1.xml | 5 + doc/generated/examples/depends_ex5_2.xml | 6 + .../examples/depends_ignore_explicit_1.xml | 9 + doc/generated/examples/depends_include_1.xml | 11 + doc/generated/examples/depends_include_SConstruct | 3 + doc/generated/examples/depends_include_hello.h | 3 + doc/generated/examples/depends_macroinc_1.xml | 8 + doc/generated/examples/depends_match_1.xml | 7 + doc/generated/examples/depends_mixing_1.xml | 11 + doc/generated/examples/depends_newer_1.xml | 7 + doc/generated/examples/depends_no-Requires_1.xml | 14 + doc/generated/examples/depends_parsedep_1.xml | 8 + .../examples/environments_Append-nonexistent_1.xml | 5 + .../environments_Prepend-nonexistent_1.xml | 5 + .../environments_Replace-nonexistent_1.xml | 5 + doc/generated/examples/environments_Replace1_1.xml | 5 + doc/generated/examples/environments_Replace2_1.xml | 13 + doc/generated/examples/environments_ex1_1.xml | 5 + doc/generated/examples/environments_ex2_1.xml | 7 + doc/generated/examples/environments_ex3_1.xml | 6 + doc/generated/examples/environments_ex4_1.xml | 7 + doc/generated/examples/environments_ex5_1.xml | 9 + doc/generated/examples/environments_ex6_1.xml | 5 + doc/generated/examples/environments_ex6b_1.xml | 7 + doc/generated/examples/environments_ex6b_2.xml | 7 + doc/generated/examples/environments_ex8_1.xml | 5 + doc/generated/examples/environments_ex9_1.xml | 5 + doc/generated/examples/environments_missing1_1.xml | 5 + doc/generated/examples/environments_missing2_1.xml | 6 + doc/generated/examples/environments_missing3_1.xml | 5 + doc/generated/examples/factories_Chmod_1.xml | 5 + doc/generated/examples/factories_Copy1_1.xml | 4 + doc/generated/examples/factories_Copy2_1.xml | 4 + doc/generated/examples/factories_Copy3_1.xml | 6 + doc/generated/examples/factories_Delete1_1.xml | 7 + doc/generated/examples/factories_Delete2_1.xml | 5 + doc/generated/examples/factories_Execute_1.xml | 9 + doc/generated/examples/factories_Mkdir_1.xml | 9 + doc/generated/examples/factories_Move_1.xml | 6 + doc/generated/examples/factories_Touch_1.xml | 5 + doc/generated/examples/fileremoval_clean-ex1_1.xml | 7 + .../examples/fileremoval_noclean-ex1_1.xml | 15 + .../examples/fileremoval_precious-ex1_1.xml | 7 + doc/generated/examples/hierarchy_Return_1.xml | 7 + .../examples/hierarchy_Return_foo_SConscript | 5 + doc/generated/examples/hierarchy_ex1_1.xml | 11 + .../examples/hierarchy_ex1_prog1_SConscript | 4 + .../examples/hierarchy_ex1_prog2_SConscript | 4 + doc/generated/examples/hierarchy_ex2_1.xml | 7 + doc/generated/examples/hierarchy_ex3_1.xml | 7 + doc/generated/examples/install_ex1_1.xml | 7 + doc/generated/examples/install_ex2_1.xml | 7 + doc/generated/examples/install_ex3_1.xml | 9 + doc/generated/examples/install_ex4_1.xml | 6 + doc/generated/examples/install_ex5_1.xml | 9 + doc/generated/examples/java_JAVACLASSDIR_1.xml | 5 + doc/generated/examples/java_RMIC_1.xml | 5 + doc/generated/examples/java_jar1_1.xml | 5 + doc/generated/examples/java_jar2_1.xml | 7 + doc/generated/examples/java_java-classes_1.xml | 6 + doc/generated/examples/java_java-classes_2.xml | 11 + doc/generated/examples/java_java_1.xml | 4 + doc/generated/examples/java_javah_1.xml | 5 + doc/generated/examples/java_javah_file_1.xml | 5 + doc/generated/examples/lesssimple_ex2_1.xml | 7 + doc/generated/examples/lesssimple_ex3_1.xml | 7 + doc/generated/examples/lesssimple_ex3_2.xml | 8 + doc/generated/examples/lesssimple_ex4_1.xml | 8 + doc/generated/examples/lesssimple_ex5_1.xml | 10 + doc/generated/examples/lesssimple_target_1.xml | 5 + doc/generated/examples/lesssimple_target_2.xml | 6 + .../examples/libraries_SharedLibrary_1.xml | 7 + .../examples/libraries_SharedLibrary_2.xml | 9 + doc/generated/examples/libraries_ex1_1.xml | 8 + doc/generated/examples/libraries_ex1_2.xml | 7 + doc/generated/examples/libraries_ex2_1.xml | 10 + doc/generated/examples/libraries_ex2_2.xml | 10 + doc/generated/examples/libraries_ex3_1.xml | 5 + doc/generated/examples/libraries_ex3_2.xml | 6 + doc/generated/examples/libraries_objects_1.xml | 7 + .../examples/mergeflags_MergeFlags1_1.xml | 5 + .../examples/mergeflags_MergeFlags2_1.xml | 5 + .../examples/mergeflags_MergeFlags3_1.xml | 6 + doc/generated/examples/misc_Exit_1.xml | 7 + doc/generated/examples/misc_FindFile1a_1.xml | 6 + doc/generated/examples/misc_FindFile1b_1.xml | 8 + doc/generated/examples/misc_FindFile1d_1.xml | 7 + doc/generated/examples/misc_FindFile2_1.xml | 6 + doc/generated/examples/misc_FindFile2_2.xml | 6 + doc/generated/examples/misc_FindFile3_1.xml | 5 + doc/generated/examples/misc_Flatten1_1.xml | 6 + doc/generated/examples/misc_Flatten2_1.xml | 6 + doc/generated/examples/nodes_GetBuildPath_1.xml | 5 + doc/generated/examples/nodes_ex1_1.xml | 6 + doc/generated/examples/nodes_ex1_2.xml | 7 + doc/generated/examples/nodes_exists_1.xml | 6 + doc/generated/examples/nodes_print_1.xml | 7 + doc/generated/examples/nodes_print_2.xml | 8 + .../examples/output_Progress-TARGET_1.xml | 15 + doc/generated/examples/output_ex1_1.xml | 10 + doc/generated/examples/output_ex2_1.xml | 11 + doc/generated/examples/output_ex2_2.xml | 9 + doc/generated/examples/output_gbf2_1.xml | 9 + doc/generated/examples/parseflags_ex1_1.xml | 8 + doc/generated/examples/parseflags_ex1_2.xml | 9 + doc/generated/examples/parseflags_ex2_1.xml | 6 + doc/generated/examples/parseflags_ex3_1.xml | 8 + doc/generated/examples/parseflags_ex4_1.xml | 8 + doc/generated/examples/repositories_CPPPATH3_1.xml | 5 + doc/generated/examples/repositories_CPPPATH_1.xml | 5 + doc/generated/examples/repositories_ex1_1.xml | 5 + doc/generated/examples/repositories_ex2_1.xml | 5 + doc/generated/examples/repositories_ex3_1.xml | 5 + doc/generated/examples/repositories_ex4_1.xml | 8 + doc/generated/examples/repositories_quote1_1.xml | 5 + doc/generated/examples/separate_builddir_1.xml | 9 + .../examples/separate_builddir_sconscript_1.xml | 9 + .../separate_builddir_sconscript_SConstruct | 4 + doc/generated/examples/separate_duplicate0_1.xml | 9 + doc/generated/examples/separate_ex1_1.xml | 9 + .../separate_glob_builddir_sconscript_1.xml | 10 + doc/generated/examples/sideeffect_parallel_1.xml | 5 + doc/generated/examples/sideeffect_shared_1.xml | 5 + doc/generated/examples/sideeffect_simple_1.xml | 10 + doc/generated/examples/simple_Object_1.xml | 8 + doc/generated/examples/simple_Object_2.xml | 8 + doc/generated/examples/simple_clean_1.xml | 16 + doc/generated/examples/simple_clean_2.xml | 17 + doc/generated/examples/simple_declarative_1.xml | 14 + doc/generated/examples/simple_ex1_1.xml | 9 + doc/generated/examples/simple_ex1_2.xml | 10 + doc/generated/examples/simple_ex1_3.xml | 10 + doc/generated/examples/simple_ex1_4.xml | 6 + doc/generated/examples/simple_java_1.xml | 8 + doc/generated/examples/sourcecode_bitkeeper_1.xml | 6 + doc/generated/examples/sourcecode_cvs_1.xml | 6 + doc/generated/examples/sourcecode_rcs_1.xml | 6 + doc/generated/examples/sourcecode_sccs_1.xml | 6 + doc/generated/examples/tasks_ex1_1.xml | 7 + doc/generated/examples/tasks_ex1_main.cpp | 3 + doc/generated/examples/troubleshoot_Dump_1.xml | 74 + doc/generated/examples/troubleshoot_Dump_2.xml | 107 + doc/generated/examples/troubleshoot_Dump_ENV_1.xml | 9 + doc/generated/examples/troubleshoot_Dump_ENV_2.xml | 11 + doc/generated/examples/troubleshoot_explain1_1.xml | 8 + doc/generated/examples/troubleshoot_explain1_2.xml | 5 + doc/generated/examples/troubleshoot_explain1_3.xml | 7 + doc/generated/examples/troubleshoot_explain2_1.xml | 13 + doc/generated/examples/troubleshoot_explain3_1.xml | 17 + doc/generated/examples/troubleshoot_findlibs_1.xml | 14 + .../examples/troubleshoot_stacktrace_1.xml | 4 + .../examples/troubleshoot_stacktrace_2.xml | 13 + .../examples/troubleshoot_taskmastertrace_1.xml | 63 + doc/generated/examples/troubleshoot_tree1_1.xml | 32 + doc/generated/examples/troubleshoot_tree1_2.xml | 7 + doc/generated/examples/troubleshoot_tree1_3.xml | 11 + doc/generated/examples/troubleshoot_tree1_4.xml | 43 + doc/generated/examples/troubleshoot_tree1_5.xml | 15 + doc/generated/examples/troubleshoot_tree1_6.xml | 26 + doc/generated/examples/troubleshoot_tree2_1.xml | 73 + doc/generated/examples/troubleshoot_tree2_2.xml | 45 + doc/generated/examples/variants_ex_1.xml | 11 + doc/generated/examples/variants_ex_2.xml | 11 + doc/generated/functions.gen | 5120 ++++++++++++++ doc/generated/functions.mod | 375 + doc/generated/tools.gen | 1003 +++ doc/generated/tools.mod | 217 + doc/generated/variables.gen | 7398 ++++++++++++++++++++ doc/generated/variables.mod | 1167 +++ 248 files changed, 20307 insertions(+) create mode 100644 doc/generated/builders.gen create mode 100644 doc/generated/builders.mod create mode 100644 doc/generated/examples/EnumVariable_map_1.xml create mode 100644 doc/generated/examples/addmethod_ex1_1.xml create mode 100644 doc/generated/examples/addmethod_ex2_1.xml create mode 100644 doc/generated/examples/addmethod_ex2_2.xml create mode 100644 doc/generated/examples/alias_ex1_1.xml create mode 100644 doc/generated/examples/alias_ex2_1.xml create mode 100644 doc/generated/examples/buildersbuiltin_ex1_1.xml create mode 100644 doc/generated/examples/buildersbuiltin_ex2_1.xml create mode 100644 doc/generated/examples/buildersbuiltin_ex3_1.xml create mode 100644 doc/generated/examples/buildersbuiltin_ex4_1.xml create mode 100644 doc/generated/examples/buildersbuiltin_libs_1.xml create mode 100644 doc/generated/examples/buildersbuiltin_libs_2.xml create mode 100644 doc/generated/examples/builderscommands_ex1_1.xml create mode 100644 doc/generated/examples/builderscommands_ex2_1.xml create mode 100644 doc/generated/examples/builderswriting_MY_EMITTER_1.xml create mode 100644 doc/generated/examples/builderswriting_ex1_1.xml create mode 100644 doc/generated/examples/builderswriting_ex2_1.xml create mode 100644 doc/generated/examples/builderswriting_ex3_1.xml create mode 100644 doc/generated/examples/builderswriting_ex4_1.xml create mode 100644 doc/generated/examples/builderswriting_ex5_1.xml create mode 100644 doc/generated/examples/builderswriting_ex6_1.xml create mode 100644 doc/generated/examples/builderswriting_ex7_1.xml create mode 100644 doc/generated/examples/caching_ex-random_1.xml create mode 100644 doc/generated/examples/caching_ex1_1.xml create mode 100644 doc/generated/examples/caching_ex1_2.xml create mode 100644 doc/generated/examples/caching_ex1_4.xml create mode 100644 doc/generated/examples/caching_ex1_5.xml create mode 100644 doc/generated/examples/commandline_ARGLIST_1.xml create mode 100644 doc/generated/examples/commandline_ARGUMENTS_1.xml create mode 100644 doc/generated/examples/commandline_AddOption_1.xml create mode 100644 doc/generated/examples/commandline_AddOption_2.xml create mode 100644 doc/generated/examples/commandline_BUILD_TARGETS_1_1.xml create mode 100644 doc/generated/examples/commandline_BoolVariable_1.xml create mode 100644 doc/generated/examples/commandline_BoolVariable_2.xml create mode 100644 doc/generated/examples/commandline_BoolVariable_3.xml create mode 100644 doc/generated/examples/commandline_BoolVariable_4.xml create mode 100644 doc/generated/examples/commandline_BoolVariable_5.xml create mode 100644 doc/generated/examples/commandline_COMMAND_LINE_TARGETS_1.xml create mode 100644 doc/generated/examples/commandline_DEFAULT_TARGETS_1_1.xml create mode 100644 doc/generated/examples/commandline_DEFAULT_TARGETS_2_1.xml create mode 100644 doc/generated/examples/commandline_Default1_1.xml create mode 100644 doc/generated/examples/commandline_Default1_2.xml create mode 100644 doc/generated/examples/commandline_Default2_1.xml create mode 100644 doc/generated/examples/commandline_Default3_1.xml create mode 100644 doc/generated/examples/commandline_Default4_1.xml create mode 100644 doc/generated/examples/commandline_EnumVariable_1.xml create mode 100644 doc/generated/examples/commandline_EnumVariable_2.xml create mode 100644 doc/generated/examples/commandline_EnumVariable_3.xml create mode 100644 doc/generated/examples/commandline_EnumVariable_ic1_1.xml create mode 100644 doc/generated/examples/commandline_EnumVariable_ic2_1.xml create mode 100644 doc/generated/examples/commandline_ListVariable_1.xml create mode 100644 doc/generated/examples/commandline_ListVariable_2.xml create mode 100644 doc/generated/examples/commandline_ListVariable_3.xml create mode 100644 doc/generated/examples/commandline_PackageVariable_1.xml create mode 100644 doc/generated/examples/commandline_PathVariable_1.xml create mode 100644 doc/generated/examples/commandline_PathVariable_2.xml create mode 100644 doc/generated/examples/commandline_SCONSFLAGS_1.xml create mode 100644 doc/generated/examples/commandline_SetOption_1.xml create mode 100644 doc/generated/examples/commandline_SetOption_2.xml create mode 100644 doc/generated/examples/commandline_SetOption_3.xml create mode 100644 doc/generated/examples/commandline_UnknownVariables_1.xml create mode 100644 doc/generated/examples/commandline_Variables1_1.xml create mode 100644 doc/generated/examples/commandline_Variables_Help_1.xml create mode 100644 doc/generated/examples/commandline_Variables_custom_py_1_1.xml create mode 100644 doc/generated/examples/commandline_Variables_custom_py_1_custom.py create mode 100644 doc/generated/examples/commandline_Variables_custom_py_2_1.xml create mode 100644 doc/generated/examples/depends_AlwaysBuild_1.xml create mode 100644 doc/generated/examples/depends_AlwaysBuild_2.xml create mode 100644 doc/generated/examples/depends_Requires_1.xml create mode 100644 doc/generated/examples/depends_ex1_1.xml create mode 100644 doc/generated/examples/depends_ex1_2.xml create mode 100644 doc/generated/examples/depends_ex1_3.xml create mode 100644 doc/generated/examples/depends_ex1_4.xml create mode 100644 doc/generated/examples/depends_ex1_5.xml create mode 100644 doc/generated/examples/depends_ex1_6.xml create mode 100644 doc/generated/examples/depends_ex1_7.xml create mode 100644 doc/generated/examples/depends_ex1_8.xml create mode 100644 doc/generated/examples/depends_ex5_1.xml create mode 100644 doc/generated/examples/depends_ex5_2.xml create mode 100644 doc/generated/examples/depends_ignore_explicit_1.xml create mode 100644 doc/generated/examples/depends_include_1.xml create mode 100644 doc/generated/examples/depends_include_SConstruct create mode 100644 doc/generated/examples/depends_include_hello.h create mode 100644 doc/generated/examples/depends_macroinc_1.xml create mode 100644 doc/generated/examples/depends_match_1.xml create mode 100644 doc/generated/examples/depends_mixing_1.xml create mode 100644 doc/generated/examples/depends_newer_1.xml create mode 100644 doc/generated/examples/depends_no-Requires_1.xml create mode 100644 doc/generated/examples/depends_parsedep_1.xml create mode 100644 doc/generated/examples/environments_Append-nonexistent_1.xml create mode 100644 doc/generated/examples/environments_Prepend-nonexistent_1.xml create mode 100644 doc/generated/examples/environments_Replace-nonexistent_1.xml create mode 100644 doc/generated/examples/environments_Replace1_1.xml create mode 100644 doc/generated/examples/environments_Replace2_1.xml create mode 100644 doc/generated/examples/environments_ex1_1.xml create mode 100644 doc/generated/examples/environments_ex2_1.xml create mode 100644 doc/generated/examples/environments_ex3_1.xml create mode 100644 doc/generated/examples/environments_ex4_1.xml create mode 100644 doc/generated/examples/environments_ex5_1.xml create mode 100644 doc/generated/examples/environments_ex6_1.xml create mode 100644 doc/generated/examples/environments_ex6b_1.xml create mode 100644 doc/generated/examples/environments_ex6b_2.xml create mode 100644 doc/generated/examples/environments_ex8_1.xml create mode 100644 doc/generated/examples/environments_ex9_1.xml create mode 100644 doc/generated/examples/environments_missing1_1.xml create mode 100644 doc/generated/examples/environments_missing2_1.xml create mode 100644 doc/generated/examples/environments_missing3_1.xml create mode 100644 doc/generated/examples/factories_Chmod_1.xml create mode 100644 doc/generated/examples/factories_Copy1_1.xml create mode 100644 doc/generated/examples/factories_Copy2_1.xml create mode 100644 doc/generated/examples/factories_Copy3_1.xml create mode 100644 doc/generated/examples/factories_Delete1_1.xml create mode 100644 doc/generated/examples/factories_Delete2_1.xml create mode 100644 doc/generated/examples/factories_Execute_1.xml create mode 100644 doc/generated/examples/factories_Mkdir_1.xml create mode 100644 doc/generated/examples/factories_Move_1.xml create mode 100644 doc/generated/examples/factories_Touch_1.xml create mode 100644 doc/generated/examples/fileremoval_clean-ex1_1.xml create mode 100644 doc/generated/examples/fileremoval_noclean-ex1_1.xml create mode 100644 doc/generated/examples/fileremoval_precious-ex1_1.xml create mode 100644 doc/generated/examples/hierarchy_Return_1.xml create mode 100644 doc/generated/examples/hierarchy_Return_foo_SConscript create mode 100644 doc/generated/examples/hierarchy_ex1_1.xml create mode 100644 doc/generated/examples/hierarchy_ex1_prog1_SConscript create mode 100644 doc/generated/examples/hierarchy_ex1_prog2_SConscript create mode 100644 doc/generated/examples/hierarchy_ex2_1.xml create mode 100644 doc/generated/examples/hierarchy_ex3_1.xml create mode 100644 doc/generated/examples/install_ex1_1.xml create mode 100644 doc/generated/examples/install_ex2_1.xml create mode 100644 doc/generated/examples/install_ex3_1.xml create mode 100644 doc/generated/examples/install_ex4_1.xml create mode 100644 doc/generated/examples/install_ex5_1.xml create mode 100644 doc/generated/examples/java_JAVACLASSDIR_1.xml create mode 100644 doc/generated/examples/java_RMIC_1.xml create mode 100644 doc/generated/examples/java_jar1_1.xml create mode 100644 doc/generated/examples/java_jar2_1.xml create mode 100644 doc/generated/examples/java_java-classes_1.xml create mode 100644 doc/generated/examples/java_java-classes_2.xml create mode 100644 doc/generated/examples/java_java_1.xml create mode 100644 doc/generated/examples/java_javah_1.xml create mode 100644 doc/generated/examples/java_javah_file_1.xml create mode 100644 doc/generated/examples/lesssimple_ex2_1.xml create mode 100644 doc/generated/examples/lesssimple_ex3_1.xml create mode 100644 doc/generated/examples/lesssimple_ex3_2.xml create mode 100644 doc/generated/examples/lesssimple_ex4_1.xml create mode 100644 doc/generated/examples/lesssimple_ex5_1.xml create mode 100644 doc/generated/examples/lesssimple_target_1.xml create mode 100644 doc/generated/examples/lesssimple_target_2.xml create mode 100644 doc/generated/examples/libraries_SharedLibrary_1.xml create mode 100644 doc/generated/examples/libraries_SharedLibrary_2.xml create mode 100644 doc/generated/examples/libraries_ex1_1.xml create mode 100644 doc/generated/examples/libraries_ex1_2.xml create mode 100644 doc/generated/examples/libraries_ex2_1.xml create mode 100644 doc/generated/examples/libraries_ex2_2.xml create mode 100644 doc/generated/examples/libraries_ex3_1.xml create mode 100644 doc/generated/examples/libraries_ex3_2.xml create mode 100644 doc/generated/examples/libraries_objects_1.xml create mode 100644 doc/generated/examples/mergeflags_MergeFlags1_1.xml create mode 100644 doc/generated/examples/mergeflags_MergeFlags2_1.xml create mode 100644 doc/generated/examples/mergeflags_MergeFlags3_1.xml create mode 100644 doc/generated/examples/misc_Exit_1.xml create mode 100644 doc/generated/examples/misc_FindFile1a_1.xml create mode 100644 doc/generated/examples/misc_FindFile1b_1.xml create mode 100644 doc/generated/examples/misc_FindFile1d_1.xml create mode 100644 doc/generated/examples/misc_FindFile2_1.xml create mode 100644 doc/generated/examples/misc_FindFile2_2.xml create mode 100644 doc/generated/examples/misc_FindFile3_1.xml create mode 100644 doc/generated/examples/misc_Flatten1_1.xml create mode 100644 doc/generated/examples/misc_Flatten2_1.xml create mode 100644 doc/generated/examples/nodes_GetBuildPath_1.xml create mode 100644 doc/generated/examples/nodes_ex1_1.xml create mode 100644 doc/generated/examples/nodes_ex1_2.xml create mode 100644 doc/generated/examples/nodes_exists_1.xml create mode 100644 doc/generated/examples/nodes_print_1.xml create mode 100644 doc/generated/examples/nodes_print_2.xml create mode 100644 doc/generated/examples/output_Progress-TARGET_1.xml create mode 100644 doc/generated/examples/output_ex1_1.xml create mode 100644 doc/generated/examples/output_ex2_1.xml create mode 100644 doc/generated/examples/output_ex2_2.xml create mode 100644 doc/generated/examples/output_gbf2_1.xml create mode 100644 doc/generated/examples/parseflags_ex1_1.xml create mode 100644 doc/generated/examples/parseflags_ex1_2.xml create mode 100644 doc/generated/examples/parseflags_ex2_1.xml create mode 100644 doc/generated/examples/parseflags_ex3_1.xml create mode 100644 doc/generated/examples/parseflags_ex4_1.xml create mode 100644 doc/generated/examples/repositories_CPPPATH3_1.xml create mode 100644 doc/generated/examples/repositories_CPPPATH_1.xml create mode 100644 doc/generated/examples/repositories_ex1_1.xml create mode 100644 doc/generated/examples/repositories_ex2_1.xml create mode 100644 doc/generated/examples/repositories_ex3_1.xml create mode 100644 doc/generated/examples/repositories_ex4_1.xml create mode 100644 doc/generated/examples/repositories_quote1_1.xml create mode 100644 doc/generated/examples/separate_builddir_1.xml create mode 100644 doc/generated/examples/separate_builddir_sconscript_1.xml create mode 100644 doc/generated/examples/separate_builddir_sconscript_SConstruct create mode 100644 doc/generated/examples/separate_duplicate0_1.xml create mode 100644 doc/generated/examples/separate_ex1_1.xml create mode 100644 doc/generated/examples/separate_glob_builddir_sconscript_1.xml create mode 100644 doc/generated/examples/sideeffect_parallel_1.xml create mode 100644 doc/generated/examples/sideeffect_shared_1.xml create mode 100644 doc/generated/examples/sideeffect_simple_1.xml create mode 100644 doc/generated/examples/simple_Object_1.xml create mode 100644 doc/generated/examples/simple_Object_2.xml create mode 100644 doc/generated/examples/simple_clean_1.xml create mode 100644 doc/generated/examples/simple_clean_2.xml create mode 100644 doc/generated/examples/simple_declarative_1.xml create mode 100644 doc/generated/examples/simple_ex1_1.xml create mode 100644 doc/generated/examples/simple_ex1_2.xml create mode 100644 doc/generated/examples/simple_ex1_3.xml create mode 100644 doc/generated/examples/simple_ex1_4.xml create mode 100644 doc/generated/examples/simple_java_1.xml create mode 100644 doc/generated/examples/sourcecode_bitkeeper_1.xml create mode 100644 doc/generated/examples/sourcecode_cvs_1.xml create mode 100644 doc/generated/examples/sourcecode_rcs_1.xml create mode 100644 doc/generated/examples/sourcecode_sccs_1.xml create mode 100644 doc/generated/examples/tasks_ex1_1.xml create mode 100644 doc/generated/examples/tasks_ex1_main.cpp create mode 100644 doc/generated/examples/troubleshoot_Dump_1.xml create mode 100644 doc/generated/examples/troubleshoot_Dump_2.xml create mode 100644 doc/generated/examples/troubleshoot_Dump_ENV_1.xml create mode 100644 doc/generated/examples/troubleshoot_Dump_ENV_2.xml create mode 100644 doc/generated/examples/troubleshoot_explain1_1.xml create mode 100644 doc/generated/examples/troubleshoot_explain1_2.xml create mode 100644 doc/generated/examples/troubleshoot_explain1_3.xml create mode 100644 doc/generated/examples/troubleshoot_explain2_1.xml create mode 100644 doc/generated/examples/troubleshoot_explain3_1.xml create mode 100644 doc/generated/examples/troubleshoot_findlibs_1.xml create mode 100644 doc/generated/examples/troubleshoot_stacktrace_1.xml create mode 100644 doc/generated/examples/troubleshoot_stacktrace_2.xml create mode 100644 doc/generated/examples/troubleshoot_taskmastertrace_1.xml create mode 100644 doc/generated/examples/troubleshoot_tree1_1.xml create mode 100644 doc/generated/examples/troubleshoot_tree1_2.xml create mode 100644 doc/generated/examples/troubleshoot_tree1_3.xml create mode 100644 doc/generated/examples/troubleshoot_tree1_4.xml create mode 100644 doc/generated/examples/troubleshoot_tree1_5.xml create mode 100644 doc/generated/examples/troubleshoot_tree1_6.xml create mode 100644 doc/generated/examples/troubleshoot_tree2_1.xml create mode 100644 doc/generated/examples/troubleshoot_tree2_2.xml create mode 100644 doc/generated/examples/variants_ex_1.xml create mode 100644 doc/generated/examples/variants_ex_2.xml create mode 100644 doc/generated/functions.gen create mode 100644 doc/generated/functions.mod create mode 100644 doc/generated/tools.gen create mode 100644 doc/generated/tools.mod create mode 100644 doc/generated/variables.gen create mode 100644 doc/generated/variables.mod (limited to 'doc/generated') diff --git a/doc/generated/builders.gen b/doc/generated/builders.gen new file mode 100644 index 0000000..41239d4 --- /dev/null +++ b/doc/generated/builders.gen @@ -0,0 +1,2577 @@ + + + %scons; + + %builders-mod; + + %functions-mod; + + %tools-mod; + + %variables-mod; +]> + + + + + CFile() + + + env.CFile() + + + +Builds a C source file given a lex (.l) +or yacc (.y) input file. +The suffix specified by the $CFILESUFFIX construction variable +(.c by default) +is automatically added to the target +if it is not already present. +Example: + + + +# builds foo.c +env.CFile(target = 'foo.c', source = 'foo.l') +# builds bar.c +env.CFile(target = 'bar', source = 'bar.y') + + + + + + Command() + + + env.Command() + + + +The Command "Builder" is actually implemented +as a function that looks like a Builder, +but actually takes an additional argument of the action +from which the Builder should be made. +See the Command function description +for the calling syntax and details. + + + + + + CXXFile() + + + env.CXXFile() + + + +Builds a C++ source file given a lex (.ll) +or yacc (.yy) +input file. +The suffix specified by the $CXXFILESUFFIX construction variable +(.cc by default) +is automatically added to the target +if it is not already present. +Example: + + + +# builds foo.cc +env.CXXFile(target = 'foo.cc', source = 'foo.ll') +# builds bar.cc +env.CXXFile(target = 'bar', source = 'bar.yy') + + + + + + DocbookEpub() + + + env.DocbookEpub() + + + +A pseudo-Builder, providing a Docbook toolchain for EPUB output. + + +env = Environment(tools=['docbook']) +env.DocbookEpub('manual.epub', 'manual.xml') + + + +or simply + + +env = Environment(tools=['docbook']) +env.DocbookEpub('manual') + + + + + + + DocbookHtml() + + + env.DocbookHtml() + + + +A pseudo-Builder, providing a Docbook toolchain for HTML output. + +env = Environment(tools=['docbook']) +env.DocbookHtml('manual.html', 'manual.xml') + + +or simply + +env = Environment(tools=['docbook']) +env.DocbookHtml('manual') + + + + + + DocbookHtmlChunked() + + + env.DocbookHtmlChunked() + + + +A pseudo-Builder, providing a Docbook toolchain for chunked HTML output. +It supports the base.dir parameter. The +chunkfast.xsl file (requires "EXSLT") is used as the +default stylesheet. Basic syntax: + + +env = Environment(tools=['docbook']) +env.DocbookHtmlChunked('manual') + + +where manual.xml is the input file. + +If you use the root.filename +parameter in your own stylesheets you have to specify the new target name. +This ensures that the dependencies get correct, especially for the cleanup via scons -c: + +env = Environment(tools=['docbook']) +env.DocbookHtmlChunked('mymanual.html', 'manual', xsl='htmlchunk.xsl') + +Some basic support for the base.dir is provided. You +can add the base_dir keyword to your Builder +call, and the given prefix gets prepended to all the created filenames: + +env = Environment(tools=['docbook']) +env.DocbookHtmlChunked('manual', xsl='htmlchunk.xsl', base_dir='output/') + +Make sure that you don't forget the trailing slash for the base folder, else +your files get renamed only! + + + + + + DocbookHtmlhelp() + + + env.DocbookHtmlhelp() + + + +A pseudo-Builder, providing a Docbook toolchain for HTMLHELP output. +Its basic syntax is: + + +env = Environment(tools=['docbook']) +env.DocbookHtmlhelp('manual') + + +where manual.xml is the input file. + + +If you use the root.filename +parameter in your own stylesheets you have to specify the new target name. +This ensures that the dependencies get correct, especially for the cleanup via scons -c: + +env = Environment(tools=['docbook']) +env.DocbookHtmlhelp('mymanual.html', 'manual', xsl='htmlhelp.xsl') + +Some basic support for the base.dir parameter +is provided. You can add the base_dir keyword to +your Builder call, and the given prefix gets prepended to all the +created filenames: + +env = Environment(tools=['docbook']) +env.DocbookHtmlhelp('manual', xsl='htmlhelp.xsl', base_dir='output/') + +Make sure that you don't forget the trailing slash for the base folder, else +your files get renamed only! + + + + + + + DocbookMan() + + + env.DocbookMan() + + + +A pseudo-Builder, providing a Docbook toolchain for Man page output. +Its basic syntax is: + + +env = Environment(tools=['docbook']) +env.DocbookMan('manual') + + +where manual.xml is the input file. Note, that +you can specify a target name, but the actual output names are automatically +set from the refname entries in your XML source. + + + + + + DocbookPdf() + + + env.DocbookPdf() + + + +A pseudo-Builder, providing a Docbook toolchain for PDF output. + + +env = Environment(tools=['docbook']) +env.DocbookPdf('manual.pdf', 'manual.xml') + + + +or simply + + +env = Environment(tools=['docbook']) +env.DocbookPdf('manual') + + + + + + + DocbookSlidesHtml() + + + env.DocbookSlidesHtml() + + + +A pseudo-Builder, providing a Docbook toolchain for HTML slides output. + + +env = Environment(tools=['docbook']) +env.DocbookSlidesHtml('manual') + + +If you use the titlefoil.html parameter in +your own stylesheets you have to give the new target name. This ensures +that the dependencies get correct, especially for the cleanup via +scons -c: + +env = Environment(tools=['docbook']) +env.DocbookSlidesHtml('mymanual.html','manual', xsl='slideshtml.xsl') + + +Some basic support for the base.dir parameter +is provided. You +can add the base_dir keyword to your Builder +call, and the given prefix gets prepended to all the created filenames: + +env = Environment(tools=['docbook']) +env.DocbookSlidesHtml('manual', xsl='slideshtml.xsl', base_dir='output/') + +Make sure that you don't forget the trailing slash for the base folder, else +your files get renamed only! + + + + + + + DocbookSlidesPdf() + + + env.DocbookSlidesPdf() + + + +A pseudo-Builder, providing a Docbook toolchain for PDF slides output. + + +env = Environment(tools=['docbook']) +env.DocbookSlidesPdf('manual.pdf', 'manual.xml') + + + +or simply + + +env = Environment(tools=['docbook']) +env.DocbookSlidesPdf('manual') + + + + + + DocbookXInclude() + + + env.DocbookXInclude() + + + +A pseudo-Builder, for resolving XIncludes in a separate processing step. + + +env = Environment(tools=['docbook']) +env.DocbookXInclude('manual_xincluded.xml', 'manual.xml') + + + + + + DocbookXslt() + + + env.DocbookXslt() + + + +A pseudo-Builder, applying a given XSL transformation to the input file. + + +env = Environment(tools=['docbook']) +env.DocbookXslt('manual_transformed.xml', 'manual.xml', xsl='transform.xslt') + + +Note, that this builder requires the xsl parameter +to be set. + + + + + + DVI() + + + env.DVI() + + + +Builds a .dvi file +from a .tex, +.ltx or .latex input file. +If the source file suffix is .tex, +scons +will examine the contents of the file; +if the string +\documentclass +or +\documentstyle +is found, the file is assumed to be a LaTeX file and +the target is built by invoking the $LATEXCOM command line; +otherwise, the $TEXCOM command line is used. +If the file is a LaTeX file, +the +DVI +builder method will also examine the contents +of the +.aux +file and invoke the $BIBTEX command line +if the string +bibdata +is found, +start $MAKEINDEX to generate an index if a +.ind +file is found +and will examine the contents +.log +file and re-run the $LATEXCOM command +if the log file says it is necessary. + + + +The suffix .dvi +(hard-coded within TeX itself) +is automatically added to the target +if it is not already present. +Examples: + + + +# builds from aaa.tex +env.DVI(target = 'aaa.dvi', source = 'aaa.tex') +# builds bbb.dvi +env.DVI(target = 'bbb', source = 'bbb.ltx') +# builds from ccc.latex +env.DVI(target = 'ccc.dvi', source = 'ccc.latex') + + + + + + Gs() + + + env.Gs() + + + +A Builder for explicitly calling the gs executable. +Depending on the underlying OS, the different names gs, +gsos2 and gswin32c +are tried. + +env = Environment(tools=['gs']) +env.Gs('cover.jpg','scons-scons.pdf', + GSFLAGS='-dNOPAUSE -dBATCH -sDEVICE=jpeg -dFirstPage=1 -dLastPage=1 -q') + ) + + + + + + Install() + + + env.Install() + + + +Installs one or more source files or directories +in the specified target, +which must be a directory. +The names of the specified source files or directories +remain the same within the destination directory. The +sources may be given as a string or as a node returned by +a builder. + + + +env.Install('/usr/local/bin', source = ['foo', 'bar']) + + + + + + InstallAs() + + + env.InstallAs() + + + +Installs one or more source files or directories +to specific names, +allowing changing a file or directory name +as part of the installation. +It is an error if the +target +and +source +arguments list different numbers of files or directories. + + + + + + InstallVersionedLib() + + + env.InstallVersionedLib() + + + +Installs a versioned shared library. The $SHLIBVERSION +construction variable should be defined in the environment +to confirm the version number in the library name. +The symlinks appropriate to the architecture will be generated. + + + +env.InstallAs(target = '/usr/local/bin/foo', + source = 'foo_debug') +env.InstallAs(target = ['../lib/libfoo.a', '../lib/libbar.a'], + source = ['libFOO.a', 'libBAR.a']) + + + + + + Jar() + + + env.Jar() + + + +Builds a Java archive (.jar) file +from the specified list of sources. +Any directories in the source list +will be searched for .class files). +Any .java files in the source list +will be compiled to .class files +by calling the Java Builder. + + + +If the $JARCHDIR value is set, the +jar +command will change to the specified directory using the + +option. +If $JARCHDIR is not set explicitly, +SCons will use the top of any subdirectory tree +in which Java .class +were built by the Java Builder. + + + +If the contents any of the source files begin with the string +Manifest-Version, +the file is assumed to be a manifest +and is passed to the +jar +command with the + +option set. + + + +env.Jar(target = 'foo.jar', source = 'classes') + +env.Jar(target = 'bar.jar', + source = ['bar1.java', 'bar2.java']) + + + + + + Java() + + + env.Java() + + + +Builds one or more Java class files. +The sources may be any combination of explicit +.java files, +or directory trees which will be scanned +for .java files. + + + +SCons will parse each source .java file +to find the classes +(including inner classes) +defined within that file, +and from that figure out the +target .class files that will be created. +The class files will be placed underneath +the specified target directory. + + + +SCons will also search each Java file +for the Java package name, +which it assumes can be found on a line +beginning with the string +package +in the first column; +the resulting .class files +will be placed in a directory reflecting +the specified package name. +For example, +the file +Foo.java +defining a single public +Foo +class and +containing a package name of +sub.dir +will generate a corresponding +sub/dir/Foo.class +class file. + + + +Examples: + + + +env.Java(target = 'classes', source = 'src') +env.Java(target = 'classes', source = ['src1', 'src2']) +env.Java(target = 'classes', source = ['File1.java', 'File2.java']) + + + +Java source files can use the native encoding for the underlying OS. +Since SCons compiles in simple ASCII mode by default, +the compiler will generate warnings about unmappable characters, +which may lead to errors as the file is processed further. +In this case, the user must specify the LANG +environment variable to tell the compiler what encoding is used. +For portibility, it's best if the encoding is hard-coded +so that the compile will work if it is done on a system +with a different encoding. + + + +env = Environment() +env['ENV']['LANG'] = 'en_GB.UTF-8' + + + + + + JavaH() + + + env.JavaH() + + + +Builds C header and source files for +implementing Java native methods. +The target can be either a directory +in which the header files will be written, +or a header file name which +will contain all of the definitions. +The source can be the names of .class files, +the names of .java files +to be compiled into .class files +by calling the Java builder method, +or the objects returned from the +Java +builder method. + + + +If the construction variable +$JAVACLASSDIR +is set, either in the environment +or in the call to the +JavaH +builder method itself, +then the value of the variable +will be stripped from the +beginning of any .class file names. + + + +Examples: + + + +# builds java_native.h +classes = env.Java(target = 'classdir', source = 'src') +env.JavaH(target = 'java_native.h', source = classes) + +# builds include/package_foo.h and include/package_bar.h +env.JavaH(target = 'include', + source = ['package/foo.class', 'package/bar.class']) + +# builds export/foo.h and export/bar.h +env.JavaH(target = 'export', + source = ['classes/foo.class', 'classes/bar.class'], + JAVACLASSDIR = 'classes') + + + + + + Library() + + + env.Library() + + + +A synonym for the +StaticLibrary +builder method. + + + + + + LoadableModule() + + + env.LoadableModule() + + + +On most systems, +this is the same as +SharedLibrary. +On Mac OS X (Darwin) platforms, +this creates a loadable module bundle. + + + + + + M4() + + + env.M4() + + + +Builds an output file from an M4 input file. +This uses a default $M4FLAGS value of +, +which considers all warnings to be fatal +and stops on the first warning +when using the GNU version of m4. +Example: + + + +env.M4(target = 'foo.c', source = 'foo.c.m4') + + + + + + Moc() + + + env.Moc() + + + +Builds an output file from a moc input file. Moc input files are either +header files or cxx files. This builder is only available after using the +tool 'qt'. See the $QTDIR variable for more information. +Example: + + + +env.Moc('foo.h') # generates moc_foo.cc +env.Moc('foo.cpp') # generates foo.moc + + + + + + MOFiles() + + + env.MOFiles() + + + +This builder belongs to msgfmt tool. The builder compiles +PO files to MO files. + + + +Example 1. +Create pl.mo and en.mo by compiling +pl.po and en.po: + + + # ... + env.MOFiles(['pl', 'en']) + + + +Example 2. +Compile files for languages defined in LINGUAS file: + + + # ... + env.MOFiles(LINGUAS_FILE = 1) + + + +Example 3. +Create pl.mo and en.mo by compiling +pl.po and en.po plus files for +languages defined in LINGUAS file: + + + # ... + env.MOFiles(['pl', 'en'], LINGUAS_FILE = 1) + + + +Example 4. +Compile files for languages defined in LINGUAS file +(another version): + + + # ... + env['LINGUAS_FILE'] = 1 + env.MOFiles() + + + + + + MSVSProject() + + + env.MSVSProject() + + + +Builds a Microsoft Visual Studio project file, +and by default builds a solution file as well. + + + +This builds a Visual Studio project file, based on the version of +Visual Studio that is configured (either the latest installed version, +or the version specified by +$MSVS_VERSION +in the Environment constructor). +For Visual Studio 6, it will generate a +.dsp +file. +For Visual Studio 7 (.NET) and later versions, it will generate a +.vcproj +file. + + + +By default, +this also generates a solution file +for the specified project, +a +.dsw +file for Visual Studio 6 +or a +.sln +file for Visual Studio 7 (.NET). +This behavior may be disabled by specifying +auto_build_solution=0 +when you call +MSVSProject, +in which case you presumably want to +build the solution file(s) +by calling the +MSVSSolution +Builder (see below). + + + +The MSVSProject builder +takes several lists of filenames +to be placed into the project file. +These are currently limited to +srcs, +incs, +localincs, +resources, +and +misc. +These are pretty self-explanatory, but it should be noted that these +lists are added to the $SOURCES construction variable as strings, +NOT as SCons File Nodes. This is because they represent file +names to be added to the project file, not the source files used to +build the project file. + + + +The above filename lists are all optional, +although at least one must be specified +for the resulting project file to be non-empty. + + + +In addition to the above lists of values, +the following values may be specified: + + + +target: +The name of the target +.dsp +or +.vcproj +file. +The correct +suffix for the version of Visual Studio must be used, +but the +$MSVSPROJECTSUFFIX +construction variable +will be defined to the correct value (see example below). + + + +variant: +The name of this particular variant. +For Visual Studio 7 projects, +this can also be a list of variant names. +These are typically things like "Debug" or "Release", but really +can be anything you want. +For Visual Studio 7 projects, +they may also specify a target platform +separated from the variant name by a +| +(vertical pipe) +character: +Debug|Xbox. +The default target platform is Win32. +Multiple calls to +MSVSProject +with different variants are allowed; +all variants will be added to the project file with their appropriate +build targets and sources. + + + +buildtarget: +An optional string, node, or list of strings or nodes +(one per build variant), to tell the Visual Studio debugger +what output target to use in what build variant. +The number of +buildtarget +entries must match the number of +variant +entries. + + + +runfile: +The name of the file that Visual Studio 7 and later +will run and debug. +This appears as the value of the +Output +field in the resutling Visual Studio project file. +If this is not specified, +the default is the same as the specified +buildtarget +value. + + + +Note that because SCons always executes its build commands +from the directory in which the SConstruct file is located, +if you generate a project file in a different directory +than the SConstruct directory, +users will not be able to double-click +on the file name in compilation error messages +displayed in the Visual Studio console output window. +This can be remedied by adding the +Visual C/C++ +/FC +compiler option to the $CCFLAGS variable +so that the compiler will print +the full path name of any +files that cause compilation errors. + + + +Example usage: + + + +barsrcs = ['bar.cpp'], +barincs = ['bar.h'], +barlocalincs = ['StdAfx.h'] +barresources = ['bar.rc','resource.h'] +barmisc = ['bar_readme.txt'] + +dll = env.SharedLibrary(target = 'bar.dll', + source = barsrcs) + +env.MSVSProject(target = 'Bar' + env['MSVSPROJECTSUFFIX'], + srcs = barsrcs, + incs = barincs, + localincs = barlocalincs, + resources = barresources, + misc = barmisc, + buildtarget = dll, + variant = 'Release') + + + + + + MSVSSolution() + + + env.MSVSSolution() + + + +Builds a Microsoft Visual Studio solution file. + + + +This builds a Visual Studio solution file, +based on the version of Visual Studio that is configured +(either the latest installed version, +or the version specified by +$MSVS_VERSION +in the construction environment). +For Visual Studio 6, it will generate a +.dsw +file. +For Visual Studio 7 (.NET), it will +generate a +.sln +file. + + + +The following values must be specified: + + + +target: +The name of the target .dsw or .sln file. The correct +suffix for the version of Visual Studio must be used, but the value +$MSVSSOLUTIONSUFFIX +will be defined to the correct value (see example below). + + + +variant: +The name of this particular variant, or a list of variant +names (the latter is only supported for MSVS 7 solutions). These are +typically things like "Debug" or "Release", but really can be anything +you want. For MSVS 7 they may also specify target platform, like this +"Debug|Xbox". Default platform is Win32. + + + +projects: +A list of project file names, or Project nodes returned by calls to the +MSVSProject +Builder, +to be placed into the solution file. +It should be noted that these file names are NOT added to the $SOURCES +environment variable in form of files, but rather as strings. This +is because they represent file names to be added to the solution file, +not the source files used to build the solution file. + + + +Example Usage: + + + +env.MSVSSolution(target = 'Bar' + env['MSVSSOLUTIONSUFFIX'], + projects = ['bar' + env['MSVSPROJECTSUFFIX']], + variant = 'Release') + + + + + + Object() + + + env.Object() + + + +A synonym for the +StaticObject +builder method. + + + + + + Package() + + + env.Package() + + + +Builds a Binary Package of the given source files. + + + +env.Package(source = FindInstalledFiles()) + + + +Builds software distribution packages. +Packages consist of files to install and packaging information. +The former may be specified with the source parameter and may be left out, +in which case the FindInstalledFiles function will collect +all files that have an Install or InstallAs Builder attached. +If the target is not specified +it will be deduced from additional information given to this Builder. + + + +The packaging information is specified +with the help of construction variables documented below. +This information is called a tag to stress that +some of them can also be attached to files with the Tag function. +The mandatory ones will complain if they were not specified. +They vary depending on chosen target packager. + + + +The target packager may be selected with the "PACKAGETYPE" command line +option or with the $PACKAGETYPE construction variable. Currently +the following packagers available: + + + + * msi - Microsoft Installer + * rpm - Redhat Package Manger + * ipkg - Itsy Package Management System + * tarbz2 - compressed tar + * targz - compressed tar + * zip - zip file + * src_tarbz2 - compressed tar source + * src_targz - compressed tar source + * src_zip - zip file source + + + +An updated list is always available under the "package_type" option when +running "scons --help" on a project that has packaging activated. + + +env = Environment(tools=['default', 'packaging']) +env.Install('/bin/', 'my_program') +env.Package( NAME = 'foo', + VERSION = '1.2.3', + PACKAGEVERSION = 0, + PACKAGETYPE = 'rpm', + LICENSE = 'gpl', + SUMMARY = 'balalalalal', + DESCRIPTION = 'this should be really really long', + X_RPM_GROUP = 'Application/fu', + SOURCE_URL = 'http://foo.org/foo-1.2.3.tar.gz' + ) + + + + + + PCH() + + + env.PCH() + + + +Builds a Microsoft Visual C++ precompiled header. +Calling this builder method +returns a list of two targets: the PCH as the first element, and the object +file as the second element. Normally the object file is ignored. +This builder method is only +provided when Microsoft Visual C++ is being used as the compiler. +The PCH builder method is generally used in +conjuction with the PCH construction variable to force object files to use +the precompiled header: + + + +env['PCH'] = env.PCH('StdAfx.cpp')[0] + + + + + + PDF() + + + env.PDF() + + + +Builds a .pdf file +from a .dvi input file +(or, by extension, a .tex, +.ltx, +or +.latex input file). +The suffix specified by the $PDFSUFFIX construction variable +(.pdf by default) +is added automatically to the target +if it is not already present. Example: + + + +# builds from aaa.tex +env.PDF(target = 'aaa.pdf', source = 'aaa.tex') +# builds bbb.pdf from bbb.dvi +env.PDF(target = 'bbb', source = 'bbb.dvi') + + + + + + POInit() + + + env.POInit() + + + +This builder belongs to msginit tool. The builder initializes missing +PO file(s) if $POAUTOINIT is set. If +$POAUTOINIT is not set (default), POInit prints instruction for +user (that is supposed to be a translator), telling how the +PO file should be initialized. In normal projects +you should not use POInit and use POUpdate +instead. POUpdate chooses intelligently between +msgmerge(1) and msginit(1). POInit +always uses msginit(1) and should be regarded as builder for +special purposes or for temporary use (e.g. for quick, one time initialization +of a bunch of PO files) or for tests. + + + +Target nodes defined through POInit are not built by default (they're +Ignored from '.' node) but are added to +special Alias ('po-create' by default). +The alias name may be changed through the $POCREATE_ALIAS +construction variable. All PO files defined through +POInit may be easily initialized by scons po-create. + + + +Example 1. +Initialize en.po and pl.po from +messages.pot: + + + # ... + env.POInit(['en', 'pl']) # messages.pot --> [en.po, pl.po] + + + +Example 2. +Initialize en.po and pl.po from +foo.pot: + + + # ... + env.POInit(['en', 'pl'], ['foo']) # foo.pot --> [en.po, pl.po] + + + +Example 3. +Initialize en.po and pl.po from +foo.pot but using $POTDOMAIN construction +variable: + + + # ... + env.POInit(['en', 'pl'], POTDOMAIN='foo') # foo.pot --> [en.po, pl.po] + + + +Example 4. +Initialize PO files for languages defined in +LINGUAS file. The files will be initialized from template +messages.pot: + + + # ... + env.POInit(LINGUAS_FILE = 1) # needs 'LINGUAS' file + + + +Example 5. +Initialize en.po and pl.pl +PO files plus files for languages defined in +LINGUAS file. The files will be initialized from template +messages.pot: + + + # ... + env.POInit(['en', 'pl'], LINGUAS_FILE = 1) + + + +Example 6. +You may preconfigure your environment first, and then initialize +PO files: + + + # ... + env['POAUTOINIT'] = 1 + env['LINGUAS_FILE'] = 1 + env['POTDOMAIN'] = 'foo' + env.POInit() + + +which has same efect as: + + + # ... + env.POInit(POAUTOINIT = 1, LINGUAS_FILE = 1, POTDOMAIN = 'foo') + + + + + + PostScript() + + + env.PostScript() + + + +Builds a .ps file +from a .dvi input file +(or, by extension, a .tex, +.ltx, +or +.latex input file). +The suffix specified by the $PSSUFFIX construction variable +(.ps by default) +is added automatically to the target +if it is not already present. Example: + + + +# builds from aaa.tex +env.PostScript(target = 'aaa.ps', source = 'aaa.tex') +# builds bbb.ps from bbb.dvi +env.PostScript(target = 'bbb', source = 'bbb.dvi') + + + + + + POTUpdate() + + + env.POTUpdate() + + + +The builder belongs to xgettext tool. The builder updates target +POT file if exists or creates one if it doesn't. The node is +not built by default (i.e. it is Ignored from +'.'), but only on demand (i.e. when given +POT file is required or when special alias is invoked). This +builder adds its targe node (messages.pot, say) to a +special alias (pot-update by default, see +$POTUPDATE_ALIAS) so you can update/create them easily with +scons pot-update. The file is not written until there is no +real change in internationalized messages (or in comments that enter +POT file). + + + + You may see xgettext(1) being invoked by the +xgettext tool even if there is no real change in internationalized +messages (so the POT file is not being updated). This +happens every time a source file has changed. In such case we invoke +xgettext(1) and compare its output with the content of +POT file to decide whether the file should be updated or +not. + + + +Example 1. +Let's create po/ directory and place following +SConstruct script there: + + + # SConstruct in 'po/' subdir + env = Environment( tools = ['default', 'xgettext'] ) + env.POTUpdate(['foo'], ['../a.cpp', '../b.cpp']) + env.POTUpdate(['bar'], ['../c.cpp', '../d.cpp']) + + +Then invoke scons few times: + + + user@host:$ scons # Does not create foo.pot nor bar.pot + user@host:$ scons foo.pot # Updates or creates foo.pot + user@host:$ scons pot-update # Updates or creates foo.pot and bar.pot + user@host:$ scons -c # Does not clean foo.pot nor bar.pot. + + +the results shall be as the comments above say. + + + +Example 2. +The POTUpdate builder may be used with no target specified, in which +case default target messages.pot will be used. The +default target may also be overriden by setting $POTDOMAIN construction +variable or providing it as an override to POTUpdate builder: + + + # SConstruct script + env = Environment( tools = ['default', 'xgettext'] ) + env['POTDOMAIN'] = "foo" + env.POTUpdate(source = ["a.cpp", "b.cpp"]) # Creates foo.pot ... + env.POTUpdate(POTDOMAIN = "bar", source = ["c.cpp", "d.cpp"]) # and bar.pot + + + +Example 3. +The sources may be specified within separate file, for example +POTFILES.in: + + + # POTFILES.in in 'po/' subdirectory + ../a.cpp + ../b.cpp + # end of file + + +The name of the file (POTFILES.in) containing the list of +sources is provided via $XGETTEXTFROM: + + + # SConstruct file in 'po/' subdirectory + env = Environment( tools = ['default', 'xgettext'] ) + env.POTUpdate(XGETTEXTFROM = 'POTFILES.in') + + + +Example 4. +You may use $XGETTEXTPATH to define source search path. Assume, for +example, that you have files a.cpp, +b.cpp, po/SConstruct, +po/POTFILES.in. Then your POT-related +files could look as below: + + + # POTFILES.in in 'po/' subdirectory + a.cpp + b.cpp + # end of file + + + + # SConstruct file in 'po/' subdirectory + env = Environment( tools = ['default', 'xgettext'] ) + env.POTUpdate(XGETTEXTFROM = 'POTFILES.in', XGETTEXTPATH='../') + + + +Example 5. +Multiple search directories may be defined within a list, i.e. +XGETTEXTPATH = ['dir1', 'dir2', ...]. The order in the list +determines the search order of source files. The path to the first file found +is used. + + + +Let's create 0/1/po/SConstruct script: + + + # SConstruct file in '0/1/po/' subdirectory + env = Environment( tools = ['default', 'xgettext'] ) + env.POTUpdate(XGETTEXTFROM = 'POTFILES.in', XGETTEXTPATH=['../', '../../']) + + +and 0/1/po/POTFILES.in: + + + # POTFILES.in in '0/1/po/' subdirectory + a.cpp + # end of file + + +Write two *.cpp files, the first one is +0/a.cpp: + + + /* 0/a.cpp */ + gettext("Hello from ../../a.cpp") + + +and the second is 0/1/a.cpp: + + + /* 0/1/a.cpp */ + gettext("Hello from ../a.cpp") + + +then run scons. You'll obtain 0/1/po/messages.pot with the +message "Hello from ../a.cpp". When you reverse order in +$XGETTEXTFOM, i.e. when you write SConscript as + + + # SConstruct file in '0/1/po/' subdirectory + env = Environment( tools = ['default', 'xgettext'] ) + env.POTUpdate(XGETTEXTFROM = 'POTFILES.in', XGETTEXTPATH=['../../', '../']) + + +then the messages.pot will contain +msgid "Hello from ../../a.cpp" line and not +msgid "Hello from ../a.cpp". + + + + + + + POUpdate() + + + env.POUpdate() + + + +The builder belongs to msgmerge tool. The builder updates +PO files with msgmerge(1), or initializes +missing PO files as described in documentation of +msginit tool and POInit builder (see also +$POAUTOINIT). Note, that POUpdate does not add its +targets to po-create alias as POInit +does. + + + +Target nodes defined through POUpdate are not built by default +(they're Ignored from '.' node). Instead, +they are added automatically to special Alias +('po-update' by default). The alias name may be changed +through the $POUPDATE_ALIAS construction variable. You can easilly +update PO files in your project by scons +po-update. + + + +Example 1. +Update en.po and pl.po from +messages.pot template (see also $POTDOMAIN), +assuming that the later one exists or there is rule to build it (see +POTUpdate): + + + # ... + env.POUpdate(['en','pl']) # messages.pot --> [en.po, pl.po] + + + +Example 2. +Update en.po and pl.po from +foo.pot template: + + + # ... + env.POUpdate(['en', 'pl'], ['foo']) # foo.pot --> [en.po, pl.pl] + + + +Example 3. +Update en.po and pl.po from +foo.pot (another version): + + + # ... + env.POUpdate(['en', 'pl'], POTDOMAIN='foo') # foo.pot -- > [en.po, pl.pl] + + + +Example 4. +Update files for languages defined in LINGUAS file. The +files are updated from messages.pot template: + + + # ... + env.POUpdate(LINGUAS_FILE = 1) # needs 'LINGUAS' file + + + +Example 5. +Same as above, but update from foo.pot template: + + + # ... + env.POUpdate(LINGUAS_FILE = 1, source = ['foo']) + + + +Example 6. +Update en.po and pl.po plus files for +languages defined in LINGUAS file. The files are updated +from messages.pot template: + + + # produce 'en.po', 'pl.po' + files defined in 'LINGUAS': + env.POUpdate(['en', 'pl' ], LINGUAS_FILE = 1) + + + +Example 7. +Use $POAUTOINIT to automatically initialize PO file +if it doesn't exist: + + + # ... + env.POUpdate(LINGUAS_FILE = 1, POAUTOINIT = 1) + + + +Example 8. +Update PO files for languages defined in +LINGUAS file. The files are updated from +foo.pot template. All necessary settings are +pre-configured via environment. + + + # ... + env['POAUTOINIT'] = 1 + env['LINGUAS_FILE'] = 1 + env['POTDOMAIN'] = 'foo' + env.POUpdate() + + + + + + + Program() + + + env.Program() + + + +Builds an executable given one or more object files +or C, C++, D, or Fortran source files. +If any C, C++, D or Fortran source files are specified, +then they will be automatically +compiled to object files using the +Object +builder method; +see that builder method's description for +a list of legal source file suffixes +and how they are interpreted. +The target executable file prefix +(specified by the $PROGPREFIX construction variable; nothing by default) +and suffix +(specified by the $PROGSUFFIX construction variable; +by default, .exe on Windows systems, +nothing on POSIX systems) +are automatically added to the target if not already present. +Example: + + + +env.Program(target = 'foo', source = ['foo.o', 'bar.c', 'baz.f']) + + + + + + RES() + + + env.RES() + + + +Builds a Microsoft Visual C++ resource file. +This builder method is only provided +when Microsoft Visual C++ or MinGW is being used as the compiler. The +.res +(or +.o +for MinGW) suffix is added to the target name if no other suffix is given. +The source +file is scanned for implicit dependencies as though it were a C file. +Example: + + + +env.RES('resource.rc') + + + + + + RMIC() + + + env.RMIC() + + + +Builds stub and skeleton class files +for remote objects +from Java .class files. +The target is a directory +relative to which the stub +and skeleton class files will be written. +The source can be the names of .class files, +or the objects return from the +Java +builder method. + + + +If the construction variable +$JAVACLASSDIR +is set, either in the environment +or in the call to the +RMIC +builder method itself, +then the value of the variable +will be stripped from the +beginning of any .class +file names. + + + +classes = env.Java(target = 'classdir', source = 'src') +env.RMIC(target = 'outdir1', source = classes) + +env.RMIC(target = 'outdir2', + source = ['package/foo.class', 'package/bar.class']) + +env.RMIC(target = 'outdir3', + source = ['classes/foo.class', 'classes/bar.class'], + JAVACLASSDIR = 'classes') + + + + + + RPCGenClient() + + + env.RPCGenClient() + + + +Generates an RPC client stub (_clnt.c) file +from a specified RPC (.x) source file. +Because rpcgen only builds output files +in the local directory, +the command will be executed +in the source file's directory by default. + + + +# Builds src/rpcif_clnt.c +env.RPCGenClient('src/rpcif.x') + + + + + + RPCGenHeader() + + + env.RPCGenHeader() + + + +Generates an RPC header (.h) file +from a specified RPC (.x) source file. +Because rpcgen only builds output files +in the local directory, +the command will be executed +in the source file's directory by default. + + + +# Builds src/rpcif.h +env.RPCGenHeader('src/rpcif.x') + + + + + + RPCGenService() + + + env.RPCGenService() + + + +Generates an RPC server-skeleton (_svc.c) file +from a specified RPC (.x) source file. +Because rpcgen only builds output files +in the local directory, +the command will be executed +in the source file's directory by default. + + + +# Builds src/rpcif_svc.c +env.RPCGenClient('src/rpcif.x') + + + + + + RPCGenXDR() + + + env.RPCGenXDR() + + + +Generates an RPC XDR routine (_xdr.c) file +from a specified RPC (.x) source file. +Because rpcgen only builds output files +in the local directory, +the command will be executed +in the source file's directory by default. + + + +# Builds src/rpcif_xdr.c +env.RPCGenClient('src/rpcif.x') + + + + + + SharedLibrary() + + + env.SharedLibrary() + + + +Builds a shared library +(.so on a POSIX system, +.dll on Windows) +given one or more object files +or C, C++, D or Fortran source files. +If any source files are given, +then they will be automatically +compiled to object files. +The static library prefix and suffix (if any) +are automatically added to the target. +The target library file prefix +(specified by the $SHLIBPREFIX construction variable; +by default, lib on POSIX systems, +nothing on Windows systems) +and suffix +(specified by the $SHLIBSUFFIX construction variable; +by default, .dll on Windows systems, +.so on POSIX systems) +are automatically added to the target if not already present. +Example: + + + +env.SharedLibrary(target = 'bar', source = ['bar.c', 'foo.o']) + + + +On Windows systems, the +SharedLibrary +builder method will always build an import +(.lib) library +in addition to the shared (.dll) library, +adding a .lib library with the same basename +if there is not already a .lib file explicitly +listed in the targets. + + + +On Cygwin systems, the +SharedLibrary +builder method will always build an import +(.dll.a) library +in addition to the shared (.dll) library, +adding a .dll.a library with the same basename +if there is not already a .dll.a file explicitly +listed in the targets. + + + +Any object files listed in the +source +must have been built for a shared library +(that is, using the +SharedObject +builder method). +scons +will raise an error if there is any mismatch. + + + +On some platforms, there is a distinction between a shared library +(loaded automatically by the system to resolve external references) +and a loadable module (explicitly loaded by user action). +For maximum portability, use the LoadableModule builder for the latter. + + + +When the $SHLIBVERSION construction variable is defined a versioned +shared library is created. This modifies the $SHLINKFLAGS as required, +adds the version number to the library name, and creates the symlinks that +are needed. $SHLIBVERSION needs to be of the form X.Y.Z, where X +and Y are numbers, and Z is a number but can also contain letters to designate +alpha, beta, or release candidate patch levels. + + + +This builder may create multiple links to the library. On a POSIX system, +for the shared library libbar.so.2.3.1, the links created would be +libbar.so and libbar.so.2; on a Darwin (OSX) system +the library would be libbar.2.3.1.dylib and the link would be +libbar.dylib. + + + +On Windows systems, specifying +register=1 +will cause the .dll to be +registered after it is built using REGSVR32. +The command that is run +("regsvr32" by default) is determined by $REGSVR construction +variable, and the flags passed are determined by $REGSVRFLAGS. By +default, $REGSVRFLAGS includes the option, +to prevent dialogs from popping +up and requiring user attention when it is run. If you change +$REGSVRFLAGS, be sure to include the option. +For example, + + + +env.SharedLibrary(target = 'bar', + source = ['bar.cxx', 'foo.obj'], + register=1) + + + +will register bar.dll as a COM object +when it is done linking it. + + + + + + SharedObject() + + + env.SharedObject() + + + +Builds an object file for +inclusion in a shared library. +Source files must have one of the same set of extensions +specified above for the +StaticObject +builder method. +On some platforms building a shared object requires additional +compiler option +(e.g. for gcc) +in addition to those needed to build a +normal (static) object, but on some platforms there is no difference between a +shared object and a normal (static) one. When there is a difference, SCons +will only allow shared objects to be linked into a shared library, and will +use a different suffix for shared objects. On platforms where there is no +difference, SCons will allow both normal (static) +and shared objects to be linked into a +shared library, and will use the same suffix for shared and normal +(static) objects. +The target object file prefix +(specified by the $SHOBJPREFIX construction variable; +by default, the same as $OBJPREFIX) +and suffix +(specified by the $SHOBJSUFFIX construction variable) +are automatically added to the target if not already present. +Examples: + + + +env.SharedObject(target = 'ddd', source = 'ddd.c') +env.SharedObject(target = 'eee.o', source = 'eee.cpp') +env.SharedObject(target = 'fff.obj', source = 'fff.for') + + + +Note that the source files will be scanned +according to the suffix mappings in the +SourceFileScanner +object. +See the section "Scanner Objects," +below, for more information. + + + + + + StaticLibrary() + + + env.StaticLibrary() + + + +Builds a static library given one or more object files +or C, C++, D or Fortran source files. +If any source files are given, +then they will be automatically +compiled to object files. +The static library prefix and suffix (if any) +are automatically added to the target. +The target library file prefix +(specified by the $LIBPREFIX construction variable; +by default, lib on POSIX systems, +nothing on Windows systems) +and suffix +(specified by the $LIBSUFFIX construction variable; +by default, .lib on Windows systems, +.a on POSIX systems) +are automatically added to the target if not already present. +Example: + + + +env.StaticLibrary(target = 'bar', source = ['bar.c', 'foo.o']) + + + +Any object files listed in the +source +must have been built for a static library +(that is, using the +StaticObject +builder method). +scons +will raise an error if there is any mismatch. + + + + + + StaticObject() + + + env.StaticObject() + + + +Builds a static object file +from one or more C, C++, D, or Fortran source files. +Source files must have one of the following extensions: + + + + .asm assembly language file + .ASM assembly language file + .c C file + .C Windows: C file + POSIX: C++ file + .cc C++ file + .cpp C++ file + .cxx C++ file + .cxx C++ file + .c++ C++ file + .C++ C++ file + .d D file + .f Fortran file + .F Windows: Fortran file + POSIX: Fortran file + C pre-processor + .for Fortran file + .FOR Fortran file + .fpp Fortran file + C pre-processor + .FPP Fortran file + C pre-processor + .m Object C file + .mm Object C++ file + .s assembly language file + .S Windows: assembly language file + ARM: CodeSourcery Sourcery Lite + .sx assembly language file + C pre-processor + POSIX: assembly language file + C pre-processor + .spp assembly language file + C pre-processor + .SPP assembly language file + C pre-processor + + + +The target object file prefix +(specified by the $OBJPREFIX construction variable; nothing by default) +and suffix +(specified by the $OBJSUFFIX construction variable; +.obj on Windows systems, +.o on POSIX systems) +are automatically added to the target if not already present. +Examples: + + + +env.StaticObject(target = 'aaa', source = 'aaa.c') +env.StaticObject(target = 'bbb.o', source = 'bbb.c++') +env.StaticObject(target = 'ccc.obj', source = 'ccc.f') + + + +Note that the source files will be scanned +according to the suffix mappings in +SourceFileScanner +object. +See the section "Scanner Objects," +below, for more information. + + + + + + Substfile() + + + env.Substfile() + + + +The Substfile builder generates a single text file +by concatenating the source files. +Nested lists of sources are flattened. +$LINESEPARATOR is used to separate the source files; +see the description of Textfile for details. + + + +If a single source file is present with an .in suffix, +the suffix is stripped and the remainder is used as the default target name. + + + +The prefix and suffix specified by the $SUBSTFILEPREFIX +and $SUBSTFILESUFFIX construction variables +(the null string by default in both cases) +are automatically added to the target if they are not already present. + + + +If a construction variable named $SUBST_DICT is present, +it may be either a Python dictionary or a sequence of (key,value) tuples. +If the former, +the dictionary is converted into a list of tuples in an arbitrary order, +so if one key is a prefix of another key +or if one substitution could be further expanded by another subsitition, +it is unpredictible whether the expansion will occur. + + + +Any occurences in the source of a key +are replaced by the corresponding value, +which may be a Python callable function or a string. +If a value is a function, +it is first called (with no arguments) to produce a string. +The string is subst-expanded +and the result replaces the key. + + + +env = Environment(tools = ['default', 'textfile']) + +env['prefix'] = '/usr/bin' +script_dict = {'@prefix@': '/bin', @exec_prefix@: '$prefix'} +env.Substfile('script.in', SUBST_DICT = script_dict) + +conf_dict = {'%VERSION%': '1.2.3', '%BASE%': 'MyProg'} +env.Substfile('config.h.in', conf_dict, SUBST_DICT = conf_dict) + +# UNPREDICTABLE - one key is a prefix of another +bad_foo = {'$foo': '$foo', '$foobar': '$foobar'} +env.Substfile('foo.in', SUBST_DICT = bad_foo) + +# PREDICTABLE - keys are applied longest first +good_foo = [('$foobar', '$foobar'), ('$foo', '$foo')] +env.Substfile('foo.in', SUBST_DICT = good_foo) + +# UNPREDICTABLE - one substitution could be futher expanded +bad_bar = {'@bar@': '@soap@', '@soap@': 'lye'} +env.Substfile('bar.in', SUBST_DICT = bad_bar) + +# PREDICTABLE - substitutions are expanded in order +good_bar = (('@bar@', '@soap@'), ('@soap@', 'lye')) +env.Substfile('bar.in', SUBST_DICT = good_bar) + +# the SUBST_DICT may be in common (and not an override) +substutions = {} +subst = Environment(tools = ['textfile'], SUBST_DICT = substitutions) +substitutions['@foo@'] = 'foo' +subst['SUBST_DICT']['@bar@'] = 'bar' +subst.Substfile('pgm1.c', [Value('#include "@foo@.h"'), + Value('#include "@bar@.h"'), + "common.in", + "pgm1.in" + ]) +subst.Substfile('pgm2.c', [Value('#include "@foo@.h"'), + Value('#include "@bar@.h"'), + "common.in", + "pgm2.in" + ]) + + + + + + + Tar() + + + env.Tar() + + + +Builds a tar archive of the specified files +and/or directories. +Unlike most builder methods, +the +Tar +builder method may be called multiple times +for a given target; +each additional call +adds to the list of entries +that will be built into the archive. +Any source directories will +be scanned for changes to +any on-disk files, +regardless of whether or not +scons +knows about them from other Builder or function calls. + + + +env.Tar('src.tar', 'src') + +# Create the stuff.tar file. +env.Tar('stuff', ['subdir1', 'subdir2']) +# Also add "another" to the stuff.tar file. +env.Tar('stuff', 'another') + +# Set TARFLAGS to create a gzip-filtered archive. +env = Environment(TARFLAGS = '-c -z') +env.Tar('foo.tar.gz', 'foo') + +# Also set the suffix to .tgz. +env = Environment(TARFLAGS = '-c -z', + TARSUFFIX = '.tgz') +env.Tar('foo') + + + + + + Textfile() + + + env.Textfile() + + + +The Textfile builder generates a single text file. +The source strings constitute the lines; +nested lists of sources are flattened. +$LINESEPARATOR is used to separate the strings. + + + +If present, the $SUBST_DICT construction variable +is used to modify the strings before they are written; +see the Substfile description for details. + + + +The prefix and suffix specified by the $TEXTFILEPREFIX +and $TEXTFILESUFFIX construction variables +(the null string and .txt by default, respectively) +are automatically added to the target if they are not already present. +Examples: + + + +# builds/writes foo.txt +env.Textfile(target = 'foo.txt', source = ['Goethe', 42, 'Schiller']) + +# builds/writes bar.txt +env.Textfile(target = 'bar', + source = ['lalala', 'tanteratei'], + LINESEPARATOR='|*') + +# nested lists are flattened automatically +env.Textfile(target = 'blob', + source = ['lalala', ['Goethe', 42 'Schiller'], 'tanteratei']) + +# files may be used as input by wraping them in File() +env.Textfile(target = 'concat', # concatenate files with a marker between + source = [File('concat1'), File('concat2')], + LINESEPARATOR = '====================\n') + +Results are: +foo.txt + ....8<---- + Goethe + 42 + Schiller + ....8<---- (no linefeed at the end) + +bar.txt: + ....8<---- + lalala|*tanteratei + ....8<---- (no linefeed at the end) + +blob.txt + ....8<---- + lalala + Goethe + 42 + Schiller + tanteratei + ....8<---- (no linefeed at the end) + + + + + + Translate() + + + env.Translate() + + + +This pseudo-builder belongs to gettext toolset. The builder extracts +internationalized messages from source files, updates POT +template (if necessary) and then updates PO translations (if +necessary). If $POAUTOINIT is set, missing PO files +will be automatically created (i.e. without translator person intervention). +The variables $LINGUAS_FILE and $POTDOMAIN are taken into +acount too. All other construction variables used by POTUpdate, and +POUpdate work here too. + + + +Example 1. +The simplest way is to specify input files and output languages inline in +a SCons script when invoking Translate + + +# SConscript in 'po/' directory +env = Environment( tools = ["default", "gettext"] ) +env['POAUTOINIT'] = 1 +env.Translate(['en','pl'], ['../a.cpp','../b.cpp']) + + + +Example 2. +If you wish, you may also stick to conventional style known from +autotools, i.e. using +POTFILES.in and LINGUAS files + + +# LINGUAS +en pl +#end + + + +# POTFILES.in +a.cpp +b.cpp +# end + + + +# SConscript +env = Environment( tools = ["default", "gettext"] ) +env['POAUTOINIT'] = 1 +env['XGETTEXTPATH'] = ['../'] +env.Translate(LINGUAS_FILE = 1, XGETTEXTFROM = 'POTFILES.in') + + + +The last approach is perhaps the recommended one. It allows easily split +internationalization/localization onto separate SCons scripts, where a script +in source tree is responsible for translations (from sources to +PO files) and script(s) under variant directories are +responsible for compilation of PO to MO +files to and for installation of MO files. The "gluing +factor" synchronizing these two scripts is then the content of +LINGUAS file. Note, that the updated +POT and PO files are usually going to be +committed back to the repository, so they must be updated within the source +directory (and not in variant directories). Additionaly, the file listing of +po/ directory contains LINGUAS file, +so the source tree looks familiar to translators, and they may work with the +project in their usual way. + + + +Example 3. +Let's prepare a development tree as below + + + project/ + + SConstruct + + build/ + + src/ + + po/ + + SConscript + + SConscript.i18n + + POTFILES.in + + LINGUAS + + +with build being variant directory. Write the top-level +SConstruct script as follows + + + # SConstruct + env = Environment( tools = ["default", "gettext"] ) + VariantDir('build', 'src', duplicate = 0) + env['POAUTOINIT'] = 1 + SConscript('src/po/SConscript.i18n', exports = 'env') + SConscript('build/po/SConscript', exports = 'env') + + +the src/po/SConscript.i18n as + + + # src/po/SConscript.i18n + Import('env') + env.Translate(LINGUAS_FILE=1, XGETTEXTFROM='POTFILES.in', XGETTEXTPATH=['../']) + + +and the src/po/SConscript + + + # src/po/SConscript + Import('env') + env.MOFiles(LINGUAS_FILE = 1) + + +Such setup produces POT and PO files +under source tree in src/po/ and binary +MO files under variant tree in +build/po/. This way the POT and +PO files are separated from other output files, which must +not be committed back to source repositories (e.g. MO +files). + + + +In above example, the PO files are not updated, +nor created automatically when you issue scons '.' command. +The files must be updated (created) by hand via scons +po-update and then MO files can be compiled by +running scons '.'. + + + + + + + TypeLibrary() + + + env.TypeLibrary() + + + +Builds a Windows type library (.tlb) +file from an input IDL file (.idl). +In addition, it will build the associated inteface stub and +proxy source files, +naming them according to the base name of the .idl file. +For example, + + + +env.TypeLibrary(source="foo.idl") + + + +Will create foo.tlb, +foo.h, +foo_i.c, +foo_p.c +and +foo_data.c +files. + + + + + + Uic() + + + env.Uic() + + + +Builds a header file, an implementation file and a moc file from an ui file. +and returns the corresponding nodes in the above order. +This builder is only available after using the tool 'qt'. Note: you can +specify .ui files directly as source +files to the Program, +Library and SharedLibrary builders +without using this builder. Using this builder lets you override the standard +naming conventions (be careful: prefixes are always prepended to names of +built files; if you don't want prefixes, you may set them to ``). +See the $QTDIR variable for more information. +Example: + + + +env.Uic('foo.ui') # -> ['foo.h', 'uic_foo.cc', 'moc_foo.cc'] +env.Uic(target = Split('include/foo.h gen/uicfoo.cc gen/mocfoo.cc'), + source = 'foo.ui') # -> ['include/foo.h', 'gen/uicfoo.cc', 'gen/mocfoo.cc'] + + + + + + Zip() + + + env.Zip() + + + +Builds a zip archive of the specified files +and/or directories. +Unlike most builder methods, +the +Zip +builder method may be called multiple times +for a given target; +each additional call +adds to the list of entries +that will be built into the archive. +Any source directories will +be scanned for changes to +any on-disk files, +regardless of whether or not +scons +knows about them from other Builder or function calls. + + + +env.Zip('src.zip', 'src') + +# Create the stuff.zip file. +env.Zip('stuff', ['subdir1', 'subdir2']) +# Also add "another" to the stuff.tar file. +env.Zip('stuff', 'another') + + + + diff --git a/doc/generated/builders.mod b/doc/generated/builders.mod new file mode 100644 index 0000000..50591b4 --- /dev/null +++ b/doc/generated/builders.mod @@ -0,0 +1,243 @@ + + + + +CFile"> +Command"> +CXXFile"> +DocbookEpub"> +DocbookHtml"> +DocbookHtmlChunked"> +DocbookHtmlhelp"> +DocbookMan"> +DocbookPdf"> +DocbookSlidesHtml"> +DocbookSlidesPdf"> +DocbookXInclude"> +DocbookXslt"> +DVI"> +Gs"> +Install"> +InstallAs"> +InstallVersionedLib"> +Jar"> +Java"> +JavaH"> +Library"> +LoadableModule"> +M4"> +Moc"> +MOFiles"> +MSVSProject"> +MSVSSolution"> +Object"> +Package"> +PCH"> +PDF"> +POInit"> +PostScript"> +POTUpdate"> +POUpdate"> +Program"> +RES"> +RMIC"> +RPCGenClient"> +RPCGenHeader"> +RPCGenService"> +RPCGenXDR"> +SharedLibrary"> +SharedObject"> +StaticLibrary"> +StaticObject"> +Substfile"> +Tar"> +Textfile"> +Translate"> +TypeLibrary"> +Uic"> +Zip"> + +env.CFile"> +env.Command"> +env.CXXFile"> +env.DocbookEpub"> +env.DocbookHtml"> +env.DocbookHtmlChunked"> +env.DocbookHtmlhelp"> +env.DocbookMan"> +env.DocbookPdf"> +env.DocbookSlidesHtml"> +env.DocbookSlidesPdf"> +env.DocbookXInclude"> +env.DocbookXslt"> +env.DVI"> +env.Gs"> +env.Install"> +env.InstallAs"> +env.InstallVersionedLib"> +env.Jar"> +env.Java"> +env.JavaH"> +env.Library"> +env.LoadableModule"> +env.M4"> +env.Moc"> +env.MOFiles"> +env.MSVSProject"> +env.MSVSSolution"> +env.Object"> +env.Package"> +env.PCH"> +env.PDF"> +env.POInit"> +env.PostScript"> +env.POTUpdate"> +env.POUpdate"> +env.Program"> +env.RES"> +env.RMIC"> +env.RPCGenClient"> +env.RPCGenHeader"> +env.RPCGenService"> +env.RPCGenXDR"> +env.SharedLibrary"> +env.SharedObject"> +env.StaticLibrary"> +env.StaticObject"> +env.Substfile"> +env.Tar"> +env.Textfile"> +env.Translate"> +env.TypeLibrary"> +env.Uic"> +env.Zip"> + + + + + +CFile"> +Command"> +CXXFile"> +DocbookEpub"> +DocbookHtml"> +DocbookHtmlChunked"> +DocbookHtmlhelp"> +DocbookMan"> +DocbookPdf"> +DocbookSlidesHtml"> +DocbookSlidesPdf"> +DocbookXInclude"> +DocbookXslt"> +DVI"> +Gs"> +Install"> +InstallAs"> +InstallVersionedLib"> +Jar"> +Java"> +JavaH"> +Library"> +LoadableModule"> +M4"> +Moc"> +MOFiles"> +MSVSProject"> +MSVSSolution"> +Object"> +Package"> +PCH"> +PDF"> +POInit"> +PostScript"> +POTUpdate"> +POUpdate"> +Program"> +RES"> +RMIC"> +RPCGenClient"> +RPCGenHeader"> +RPCGenService"> +RPCGenXDR"> +SharedLibrary"> +SharedObject"> +StaticLibrary"> +StaticObject"> +Substfile"> +Tar"> +Textfile"> +Translate"> +TypeLibrary"> +Uic"> +Zip"> + +env.CFile"> +env.Command"> +env.CXXFile"> +env.DocbookEpub"> +env.DocbookHtml"> +env.DocbookHtmlChunked"> +env.DocbookHtmlhelp"> +env.DocbookMan"> +env.DocbookPdf"> +env.DocbookSlidesHtml"> +env.DocbookSlidesPdf"> +env.DocbookXInclude"> +env.DocbookXslt"> +env.DVI"> +env.Gs"> +env.Install"> +env.InstallAs"> +env.InstallVersionedLib"> +env.Jar"> +env.Java"> +env.JavaH"> +env.Library"> +env.LoadableModule"> +env.M4"> +env.Moc"> +env.MOFiles"> +env.MSVSProject"> +env.MSVSSolution"> +env.Object"> +env.Package"> +env.PCH"> +env.PDF"> +env.POInit"> +env.PostScript"> +env.POTUpdate"> +env.POUpdate"> +env.Program"> +env.RES"> +env.RMIC"> +env.RPCGenClient"> +env.RPCGenHeader"> +env.RPCGenService"> +env.RPCGenXDR"> +env.SharedLibrary"> +env.SharedObject"> +env.StaticLibrary"> +env.StaticObject"> +env.Substfile"> +env.Tar"> +env.Textfile"> +env.Translate"> +env.TypeLibrary"> +env.Uic"> +env.Zip"> + + diff --git a/doc/generated/examples/EnumVariable_map_1.xml b/doc/generated/examples/EnumVariable_map_1.xml new file mode 100644 index 0000000..2b10a0f --- /dev/null +++ b/doc/generated/examples/EnumVariable_map_1.xml @@ -0,0 +1,4 @@ + +% scons -Q COLOR=navy foo.o +cc -o foo.o -c -DCOLOR="blue" foo.c + diff --git a/doc/generated/examples/addmethod_ex1_1.xml b/doc/generated/examples/addmethod_ex1_1.xml new file mode 100644 index 0000000..8d46cc5 --- /dev/null +++ b/doc/generated/examples/addmethod_ex1_1.xml @@ -0,0 +1,7 @@ + +% scons -Q / +cc -o hello.o -c hello.c +cc -o hello hello.o +Install file: "hello" as "/usr/bin/hello" +Install file: "hello" as "install/bin/hello" + diff --git a/doc/generated/examples/addmethod_ex2_1.xml b/doc/generated/examples/addmethod_ex2_1.xml new file mode 100644 index 0000000..08cf5b4 --- /dev/null +++ b/doc/generated/examples/addmethod_ex2_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +cc -o test_stuff.o -c test_stuff.c +cc -o tests/test_stuff test_stuff.o + diff --git a/doc/generated/examples/addmethod_ex2_2.xml b/doc/generated/examples/addmethod_ex2_2.xml new file mode 100644 index 0000000..f7b2110 --- /dev/null +++ b/doc/generated/examples/addmethod_ex2_2.xml @@ -0,0 +1,7 @@ + +C:\>scons -Q +rc /fores.res res.rc +cl /Fotest_stuff.obj /c test_stuff.c /nologo +link /nologo /OUT:tests\test_stuff.exe test_stuff.obj res.res +embedManifestExeCheck(target, source, env) + diff --git a/doc/generated/examples/alias_ex1_1.xml b/doc/generated/examples/alias_ex1_1.xml new file mode 100644 index 0000000..a250016 --- /dev/null +++ b/doc/generated/examples/alias_ex1_1.xml @@ -0,0 +1,6 @@ + +% scons -Q install +cc -o hello.o -c hello.c +cc -o hello hello.o +Install file: "hello" as "/usr/bin/hello" + diff --git a/doc/generated/examples/alias_ex2_1.xml b/doc/generated/examples/alias_ex2_1.xml new file mode 100644 index 0000000..e49ba93 --- /dev/null +++ b/doc/generated/examples/alias_ex2_1.xml @@ -0,0 +1,26 @@ + +% scons -Q install-bin +cc -o foo.o -c foo.c +cc -o foo foo.o +Install file: "foo" as "/usr/bin/foo" +% scons -Q install-lib +cc -o bar.o -c bar.c +ar rc libbar.a bar.o +ranlib libbar.a +Install file: "libbar.a" as "/usr/lib/libbar.a" +% scons -Q -c / +Removed foo.o +Removed foo +Removed /usr/bin/foo +Removed bar.o +Removed libbar.a +Removed /usr/lib/libbar.a +% scons -Q install +cc -o foo.o -c foo.c +cc -o foo foo.o +Install file: "foo" as "/usr/bin/foo" +cc -o bar.o -c bar.c +ar rc libbar.a bar.o +ranlib libbar.a +Install file: "libbar.a" as "/usr/lib/libbar.a" + diff --git a/doc/generated/examples/buildersbuiltin_ex1_1.xml b/doc/generated/examples/buildersbuiltin_ex1_1.xml new file mode 100644 index 0000000..d3d4a8f --- /dev/null +++ b/doc/generated/examples/buildersbuiltin_ex1_1.xml @@ -0,0 +1,5 @@ + +% scons -Q . +tar -c -f out1.tar file1 file2 +tar -c -f out2.tar directory + diff --git a/doc/generated/examples/buildersbuiltin_ex2_1.xml b/doc/generated/examples/buildersbuiltin_ex2_1.xml new file mode 100644 index 0000000..4afbe11 --- /dev/null +++ b/doc/generated/examples/buildersbuiltin_ex2_1.xml @@ -0,0 +1,4 @@ + +% scons -Q . +tar -c -z -f out.tar.gz directory + diff --git a/doc/generated/examples/buildersbuiltin_ex3_1.xml b/doc/generated/examples/buildersbuiltin_ex3_1.xml new file mode 100644 index 0000000..0d2937c --- /dev/null +++ b/doc/generated/examples/buildersbuiltin_ex3_1.xml @@ -0,0 +1,4 @@ + +% scons -Q . +tar -c -z -f out.tgz directory + diff --git a/doc/generated/examples/buildersbuiltin_ex4_1.xml b/doc/generated/examples/buildersbuiltin_ex4_1.xml new file mode 100644 index 0000000..e9a170d --- /dev/null +++ b/doc/generated/examples/buildersbuiltin_ex4_1.xml @@ -0,0 +1,4 @@ + +% scons -Q . +zip(["out.zip"], ["file1", "file2"]) + diff --git a/doc/generated/examples/buildersbuiltin_libs_1.xml b/doc/generated/examples/buildersbuiltin_libs_1.xml new file mode 100644 index 0000000..031e551 --- /dev/null +++ b/doc/generated/examples/buildersbuiltin_libs_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +cc -o goodbye.o -c goodbye.c +cc -o hello.o -c hello.c +cc -o hello hello.o goodbye.o -L/usr/dir1 -Ldir2 -lfoo1 -lfoo2 + diff --git a/doc/generated/examples/buildersbuiltin_libs_2.xml b/doc/generated/examples/buildersbuiltin_libs_2.xml new file mode 100644 index 0000000..5c3c1ea --- /dev/null +++ b/doc/generated/examples/buildersbuiltin_libs_2.xml @@ -0,0 +1,7 @@ + +C:\>scons -Q +cl /Fogoodbye.obj /c goodbye.c /nologo +cl /Fohello.obj /c hello.c /nologo +link /nologo /OUT:hello.exe /LIBPATH:\usr\dir1 /LIBPATH:dir2 foo1.lib foo2.lib hello.obj goodbye.obj +embedManifestExeCheck(target, source, env) + diff --git a/doc/generated/examples/builderscommands_ex1_1.xml b/doc/generated/examples/builderscommands_ex1_1.xml new file mode 100644 index 0000000..32ab8b8 --- /dev/null +++ b/doc/generated/examples/builderscommands_ex1_1.xml @@ -0,0 +1,4 @@ + +% scons -Q +sed 's/x/y/' < foo.in > foo.out + diff --git a/doc/generated/examples/builderscommands_ex2_1.xml b/doc/generated/examples/builderscommands_ex2_1.xml new file mode 100644 index 0000000..fbacb6c --- /dev/null +++ b/doc/generated/examples/builderscommands_ex2_1.xml @@ -0,0 +1,4 @@ + +% scons -Q +build(["foo.out"], ["foo.in"]) + diff --git a/doc/generated/examples/builderswriting_MY_EMITTER_1.xml b/doc/generated/examples/builderswriting_MY_EMITTER_1.xml new file mode 100644 index 0000000..da454e8 --- /dev/null +++ b/doc/generated/examples/builderswriting_MY_EMITTER_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +my_command file1.input modify1.in > file1.foo +my_command file2.input modify2.in > file2.foo + diff --git a/doc/generated/examples/builderswriting_ex1_1.xml b/doc/generated/examples/builderswriting_ex1_1.xml new file mode 100644 index 0000000..879bb91 --- /dev/null +++ b/doc/generated/examples/builderswriting_ex1_1.xml @@ -0,0 +1,4 @@ + +% scons -Q +foobuild < file.input > file.foo + diff --git a/doc/generated/examples/builderswriting_ex2_1.xml b/doc/generated/examples/builderswriting_ex2_1.xml new file mode 100644 index 0000000..15f7a79 --- /dev/null +++ b/doc/generated/examples/builderswriting_ex2_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +AttributeError: 'SConsEnvironment' object has no attribute 'Program': + File "/home/my/project/SConstruct", line 4: + env.Program('hello.c') + diff --git a/doc/generated/examples/builderswriting_ex3_1.xml b/doc/generated/examples/builderswriting_ex3_1.xml new file mode 100644 index 0000000..b4e2cf7 --- /dev/null +++ b/doc/generated/examples/builderswriting_ex3_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +foobuild < file.input > file.foo +cc -o hello.o -c hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/builderswriting_ex4_1.xml b/doc/generated/examples/builderswriting_ex4_1.xml new file mode 100644 index 0000000..87563c2 --- /dev/null +++ b/doc/generated/examples/builderswriting_ex4_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +foobuild < file1.input > file1.foo +foobuild < file2.input > file2.foo + diff --git a/doc/generated/examples/builderswriting_ex5_1.xml b/doc/generated/examples/builderswriting_ex5_1.xml new file mode 100644 index 0000000..0131734 --- /dev/null +++ b/doc/generated/examples/builderswriting_ex5_1.xml @@ -0,0 +1,4 @@ + +% scons -Q +build_function(["file.foo"], ["file.input"]) + diff --git a/doc/generated/examples/builderswriting_ex6_1.xml b/doc/generated/examples/builderswriting_ex6_1.xml new file mode 100644 index 0000000..879bb91 --- /dev/null +++ b/doc/generated/examples/builderswriting_ex6_1.xml @@ -0,0 +1,4 @@ + +% scons -Q +foobuild < file.input > file.foo + diff --git a/doc/generated/examples/builderswriting_ex7_1.xml b/doc/generated/examples/builderswriting_ex7_1.xml new file mode 100644 index 0000000..34ef7e1 --- /dev/null +++ b/doc/generated/examples/builderswriting_ex7_1.xml @@ -0,0 +1,4 @@ + +% scons -Q +foobuild file.foo new_target - file.input new_source + diff --git a/doc/generated/examples/caching_ex-random_1.xml b/doc/generated/examples/caching_ex-random_1.xml new file mode 100644 index 0000000..c70dcb6 --- /dev/null +++ b/doc/generated/examples/caching_ex-random_1.xml @@ -0,0 +1,9 @@ + +% scons -Q +cc -o f2.o -c f2.c +cc -o f5.o -c f5.c +cc -o f4.o -c f4.c +cc -o f3.o -c f3.c +cc -o f1.o -c f1.c +cc -o prog f1.o f2.o f3.o f4.o f5.o + diff --git a/doc/generated/examples/caching_ex1_1.xml b/doc/generated/examples/caching_ex1_1.xml new file mode 100644 index 0000000..93ce35d --- /dev/null +++ b/doc/generated/examples/caching_ex1_1.xml @@ -0,0 +1,11 @@ + +% scons -Q +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q -c +Removed hello.o +Removed hello +% scons -Q +Retrieved `hello.o' from cache +Retrieved `hello' from cache + diff --git a/doc/generated/examples/caching_ex1_2.xml b/doc/generated/examples/caching_ex1_2.xml new file mode 100644 index 0000000..e975cf5 --- /dev/null +++ b/doc/generated/examples/caching_ex1_2.xml @@ -0,0 +1,11 @@ + +% scons -Q +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q -c +Removed hello.o +Removed hello +% scons -Q --cache-show +cc -o hello.o -c hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/caching_ex1_4.xml b/doc/generated/examples/caching_ex1_4.xml new file mode 100644 index 0000000..bca1d53 --- /dev/null +++ b/doc/generated/examples/caching_ex1_4.xml @@ -0,0 +1,17 @@ + +% scons -Q +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q -c +Removed hello.o +Removed hello +% scons -Q +Retrieved `hello.o' from cache +Retrieved `hello' from cache +% scons -Q -c +Removed hello.o +Removed hello +% scons -Q --cache-disable +cc -o hello.o -c hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/caching_ex1_5.xml b/doc/generated/examples/caching_ex1_5.xml new file mode 100644 index 0000000..0d7d00c --- /dev/null +++ b/doc/generated/examples/caching_ex1_5.xml @@ -0,0 +1,15 @@ + +% scons -Q --cache-disable +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q -c +Removed hello.o +Removed hello +% scons -Q --cache-disable +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q --cache-force +scons: `.' is up to date. +% scons -Q +scons: `.' is up to date. + diff --git a/doc/generated/examples/commandline_ARGLIST_1.xml b/doc/generated/examples/commandline_ARGLIST_1.xml new file mode 100644 index 0000000..071b8a1 --- /dev/null +++ b/doc/generated/examples/commandline_ARGLIST_1.xml @@ -0,0 +1,6 @@ + +% scons -Q define=FOO +cc -o prog.o -c -DFOO prog.c +% scons -Q define=FOO define=BAR +cc -o prog.o -c -DFOO -DBAR prog.c + diff --git a/doc/generated/examples/commandline_ARGUMENTS_1.xml b/doc/generated/examples/commandline_ARGUMENTS_1.xml new file mode 100644 index 0000000..710fa57 --- /dev/null +++ b/doc/generated/examples/commandline_ARGUMENTS_1.xml @@ -0,0 +1,12 @@ + +% scons -Q debug=0 +cc -o prog.o -c prog.c +cc -o prog prog.o +% scons -Q debug=0 +scons: `.' is up to date. +% scons -Q debug=1 +cc -o prog.o -c -g prog.c +cc -o prog prog.o +% scons -Q debug=1 +scons: `.' is up to date. + diff --git a/doc/generated/examples/commandline_AddOption_1.xml b/doc/generated/examples/commandline_AddOption_1.xml new file mode 100644 index 0000000..302f247 --- /dev/null +++ b/doc/generated/examples/commandline_AddOption_1.xml @@ -0,0 +1,4 @@ + +% scons -Q -n +Install file: "foo.in" as "/usr/bin/foo.in" + diff --git a/doc/generated/examples/commandline_AddOption_2.xml b/doc/generated/examples/commandline_AddOption_2.xml new file mode 100644 index 0000000..640fb4e --- /dev/null +++ b/doc/generated/examples/commandline_AddOption_2.xml @@ -0,0 +1,4 @@ + +% scons -Q -n --prefix=/tmp/install +Install file: "foo.in" as "/tmp/install/usr/bin/foo.in" + diff --git a/doc/generated/examples/commandline_BUILD_TARGETS_1_1.xml b/doc/generated/examples/commandline_BUILD_TARGETS_1_1.xml new file mode 100644 index 0000000..ac2674f --- /dev/null +++ b/doc/generated/examples/commandline_BUILD_TARGETS_1_1.xml @@ -0,0 +1,16 @@ + +% scons -Q +BUILD_TARGETS is ['prog1'] +cc -o prog1.o -c prog1.c +cc -o prog1 prog1.o +% scons -Q prog2 +BUILD_TARGETS is ['prog2'] +cc -o prog2.o -c prog2.c +cc -o prog2 prog2.o +% scons -Q -c . +BUILD_TARGETS is ['.'] +Removed prog1.o +Removed prog1 +Removed prog2.o +Removed prog2 + diff --git a/doc/generated/examples/commandline_BoolVariable_1.xml b/doc/generated/examples/commandline_BoolVariable_1.xml new file mode 100644 index 0000000..2c17325 --- /dev/null +++ b/doc/generated/examples/commandline_BoolVariable_1.xml @@ -0,0 +1,4 @@ + +% scons -Q RELEASE=yes foo.o +cc -o foo.o -c -DRELEASE_BUILD=True foo.c + diff --git a/doc/generated/examples/commandline_BoolVariable_2.xml b/doc/generated/examples/commandline_BoolVariable_2.xml new file mode 100644 index 0000000..86bb6d9 --- /dev/null +++ b/doc/generated/examples/commandline_BoolVariable_2.xml @@ -0,0 +1,4 @@ + +% scons -Q RELEASE=t foo.o +cc -o foo.o -c -DRELEASE_BUILD=True foo.c + diff --git a/doc/generated/examples/commandline_BoolVariable_3.xml b/doc/generated/examples/commandline_BoolVariable_3.xml new file mode 100644 index 0000000..f85dd56 --- /dev/null +++ b/doc/generated/examples/commandline_BoolVariable_3.xml @@ -0,0 +1,4 @@ + +% scons -Q RELEASE=no foo.o +cc -o foo.o -c -DRELEASE_BUILD=False foo.c + diff --git a/doc/generated/examples/commandline_BoolVariable_4.xml b/doc/generated/examples/commandline_BoolVariable_4.xml new file mode 100644 index 0000000..2a7cb5f --- /dev/null +++ b/doc/generated/examples/commandline_BoolVariable_4.xml @@ -0,0 +1,4 @@ + +% scons -Q RELEASE=f foo.o +cc -o foo.o -c -DRELEASE_BUILD=False foo.c + diff --git a/doc/generated/examples/commandline_BoolVariable_5.xml b/doc/generated/examples/commandline_BoolVariable_5.xml new file mode 100644 index 0000000..387f5ca --- /dev/null +++ b/doc/generated/examples/commandline_BoolVariable_5.xml @@ -0,0 +1,7 @@ + +% scons -Q RELEASE=bad_value foo.o + +scons: *** Error converting option: RELEASE +Invalid value for boolean option: bad_value +File "/home/my/project/SConstruct", line 4, in <module> + diff --git a/doc/generated/examples/commandline_COMMAND_LINE_TARGETS_1.xml b/doc/generated/examples/commandline_COMMAND_LINE_TARGETS_1.xml new file mode 100644 index 0000000..646635e --- /dev/null +++ b/doc/generated/examples/commandline_COMMAND_LINE_TARGETS_1.xml @@ -0,0 +1,9 @@ + +% scons -Q +cc -o foo.o -c foo.c +cc -o foo foo.o +% scons -Q bar +Don't forget to copy `bar' to the archive! +cc -o bar.o -c bar.c +cc -o bar bar.o + diff --git a/doc/generated/examples/commandline_DEFAULT_TARGETS_1_1.xml b/doc/generated/examples/commandline_DEFAULT_TARGETS_1_1.xml new file mode 100644 index 0000000..69a30cb --- /dev/null +++ b/doc/generated/examples/commandline_DEFAULT_TARGETS_1_1.xml @@ -0,0 +1,10 @@ + +% scons +scons: Reading SConscript files ... +DEFAULT_TARGETS is ['prog1'] +scons: done reading SConscript files. +scons: Building targets ... +cc -o prog1.o -c prog1.c +cc -o prog1 prog1.o +scons: done building targets. + diff --git a/doc/generated/examples/commandline_DEFAULT_TARGETS_2_1.xml b/doc/generated/examples/commandline_DEFAULT_TARGETS_2_1.xml new file mode 100644 index 0000000..1fd1bc7 --- /dev/null +++ b/doc/generated/examples/commandline_DEFAULT_TARGETS_2_1.xml @@ -0,0 +1,13 @@ + +% scons +scons: Reading SConscript files ... +DEFAULT_TARGETS is now ['prog1'] +DEFAULT_TARGETS is now ['prog1', 'prog2'] +scons: done reading SConscript files. +scons: Building targets ... +cc -o prog1.o -c prog1.c +cc -o prog1 prog1.o +cc -o prog2.o -c prog2.c +cc -o prog2 prog2.o +scons: done building targets. + diff --git a/doc/generated/examples/commandline_Default1_1.xml b/doc/generated/examples/commandline_Default1_1.xml new file mode 100644 index 0000000..edc1812 --- /dev/null +++ b/doc/generated/examples/commandline_Default1_1.xml @@ -0,0 +1,10 @@ + +% scons -Q +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q +scons: `hello' is up to date. +% scons -Q goodbye +cc -o goodbye.o -c goodbye.c +cc -o goodbye goodbye.o + diff --git a/doc/generated/examples/commandline_Default1_2.xml b/doc/generated/examples/commandline_Default1_2.xml new file mode 100644 index 0000000..cb5907d --- /dev/null +++ b/doc/generated/examples/commandline_Default1_2.xml @@ -0,0 +1,7 @@ + +% scons -Q . +cc -o goodbye.o -c goodbye.c +cc -o goodbye goodbye.o +cc -o hello.o -c hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/commandline_Default2_1.xml b/doc/generated/examples/commandline_Default2_1.xml new file mode 100644 index 0000000..1cf267a --- /dev/null +++ b/doc/generated/examples/commandline_Default2_1.xml @@ -0,0 +1,10 @@ + +% scons -Q +cc -o prog1.o -c prog1.c +cc -o prog1 prog1.o +cc -o prog3.o -c prog3.c +cc -o prog3 prog3.o +% scons -Q . +cc -o prog2.o -c prog2.c +cc -o prog2 prog2.o + diff --git a/doc/generated/examples/commandline_Default3_1.xml b/doc/generated/examples/commandline_Default3_1.xml new file mode 100644 index 0000000..5409437 --- /dev/null +++ b/doc/generated/examples/commandline_Default3_1.xml @@ -0,0 +1,12 @@ + +% scons -Q +cc -o prog1/foo.o -c prog1/foo.c +cc -o prog1/main.o -c prog1/main.c +cc -o prog1/main prog1/main.o prog1/foo.o +% scons -Q +scons: `prog1' is up to date. +% scons -Q . +cc -o prog2/bar.o -c prog2/bar.c +cc -o prog2/main.o -c prog2/main.c +cc -o prog2/main prog2/main.o prog2/bar.o + diff --git a/doc/generated/examples/commandline_Default4_1.xml b/doc/generated/examples/commandline_Default4_1.xml new file mode 100644 index 0000000..81acde4 --- /dev/null +++ b/doc/generated/examples/commandline_Default4_1.xml @@ -0,0 +1,9 @@ + +% scons -Q +scons: *** No targets specified and no Default() targets found. Stop. +% scons -Q . +cc -o prog1.o -c prog1.c +cc -o prog1 prog1.o +cc -o prog2.o -c prog2.c +cc -o prog2 prog2.o + diff --git a/doc/generated/examples/commandline_EnumVariable_1.xml b/doc/generated/examples/commandline_EnumVariable_1.xml new file mode 100644 index 0000000..d1d4bed --- /dev/null +++ b/doc/generated/examples/commandline_EnumVariable_1.xml @@ -0,0 +1,8 @@ + +% scons -Q COLOR=red foo.o +cc -o foo.o -c -DCOLOR="red" foo.c +% scons -Q COLOR=blue foo.o +cc -o foo.o -c -DCOLOR="blue" foo.c +% scons -Q COLOR=green foo.o +cc -o foo.o -c -DCOLOR="green" foo.c + diff --git a/doc/generated/examples/commandline_EnumVariable_2.xml b/doc/generated/examples/commandline_EnumVariable_2.xml new file mode 100644 index 0000000..e3310ae --- /dev/null +++ b/doc/generated/examples/commandline_EnumVariable_2.xml @@ -0,0 +1,6 @@ + +% scons -Q COLOR=magenta foo.o + +scons: *** Invalid value for option COLOR: magenta. Valid values are: ('red', 'green', 'blue') +File "/home/my/project/SConstruct", line 5, in <module> + diff --git a/doc/generated/examples/commandline_EnumVariable_3.xml b/doc/generated/examples/commandline_EnumVariable_3.xml new file mode 100644 index 0000000..a3928dc --- /dev/null +++ b/doc/generated/examples/commandline_EnumVariable_3.xml @@ -0,0 +1,14 @@ + +% scons -Q COLOR=Red foo.o + +scons: *** Invalid value for option COLOR: Red. Valid values are: ('red', 'green', 'blue') +File "/home/my/project/SConstruct", line 5, in <module> +% scons -Q COLOR=BLUE foo.o + +scons: *** Invalid value for option COLOR: BLUE. Valid values are: ('red', 'green', 'blue') +File "/home/my/project/SConstruct", line 5, in <module> +% scons -Q COLOR=nAvY foo.o + +scons: *** Invalid value for option COLOR: nAvY. Valid values are: ('red', 'green', 'blue') +File "/home/my/project/SConstruct", line 5, in <module> + diff --git a/doc/generated/examples/commandline_EnumVariable_ic1_1.xml b/doc/generated/examples/commandline_EnumVariable_ic1_1.xml new file mode 100644 index 0000000..4e2a45a --- /dev/null +++ b/doc/generated/examples/commandline_EnumVariable_ic1_1.xml @@ -0,0 +1,10 @@ + +% scons -Q COLOR=Red foo.o +cc -o foo.o -c -DCOLOR="Red" foo.c +% scons -Q COLOR=BLUE foo.o +cc -o foo.o -c -DCOLOR="BLUE" foo.c +% scons -Q COLOR=nAvY foo.o +cc -o foo.o -c -DCOLOR="blue" foo.c +% scons -Q COLOR=green foo.o +cc -o foo.o -c -DCOLOR="green" foo.c + diff --git a/doc/generated/examples/commandline_EnumVariable_ic2_1.xml b/doc/generated/examples/commandline_EnumVariable_ic2_1.xml new file mode 100644 index 0000000..407419a --- /dev/null +++ b/doc/generated/examples/commandline_EnumVariable_ic2_1.xml @@ -0,0 +1,8 @@ + +% scons -Q COLOR=Red foo.o +cc -o foo.o -c -DCOLOR="red" foo.c +% scons -Q COLOR=nAvY foo.o +cc -o foo.o -c -DCOLOR="blue" foo.c +% scons -Q COLOR=GREEN foo.o +cc -o foo.o -c -DCOLOR="green" foo.c + diff --git a/doc/generated/examples/commandline_ListVariable_1.xml b/doc/generated/examples/commandline_ListVariable_1.xml new file mode 100644 index 0000000..48adb7d --- /dev/null +++ b/doc/generated/examples/commandline_ListVariable_1.xml @@ -0,0 +1,6 @@ + +% scons -Q COLORS=red,blue foo.o +cc -o foo.o -c -DCOLORS="red blue" foo.c +% scons -Q COLORS=blue,green,red foo.o +cc -o foo.o -c -DCOLORS="blue green red" foo.c + diff --git a/doc/generated/examples/commandline_ListVariable_2.xml b/doc/generated/examples/commandline_ListVariable_2.xml new file mode 100644 index 0000000..67f3361 --- /dev/null +++ b/doc/generated/examples/commandline_ListVariable_2.xml @@ -0,0 +1,6 @@ + +% scons -Q COLORS=all foo.o +cc -o foo.o -c -DCOLORS="red green blue" foo.c +% scons -Q COLORS=none foo.o +cc -o foo.o -c -DCOLORS="" foo.c + diff --git a/doc/generated/examples/commandline_ListVariable_3.xml b/doc/generated/examples/commandline_ListVariable_3.xml new file mode 100644 index 0000000..f03f4fe --- /dev/null +++ b/doc/generated/examples/commandline_ListVariable_3.xml @@ -0,0 +1,7 @@ + +% scons -Q COLORS=magenta foo.o + +scons: *** Error converting option: COLORS +Invalid value(s) for option: magenta +File "/home/my/project/SConstruct", line 5, in <module> + diff --git a/doc/generated/examples/commandline_PackageVariable_1.xml b/doc/generated/examples/commandline_PackageVariable_1.xml new file mode 100644 index 0000000..03de914 --- /dev/null +++ b/doc/generated/examples/commandline_PackageVariable_1.xml @@ -0,0 +1,10 @@ + +% scons -Q foo.o +cc -o foo.o -c -DPACKAGE="/opt/location" foo.c +% scons -Q PACKAGE=/usr/local/location foo.o +cc -o foo.o -c -DPACKAGE="/usr/local/location" foo.c +% scons -Q PACKAGE=yes foo.o +cc -o foo.o -c -DPACKAGE="True" foo.c +% scons -Q PACKAGE=no foo.o +cc -o foo.o -c -DPACKAGE="False" foo.c + diff --git a/doc/generated/examples/commandline_PathVariable_1.xml b/doc/generated/examples/commandline_PathVariable_1.xml new file mode 100644 index 0000000..f80a299 --- /dev/null +++ b/doc/generated/examples/commandline_PathVariable_1.xml @@ -0,0 +1,6 @@ + +% scons -Q foo.o +cc -o foo.o -c -DCONFIG_FILE="/etc/my_config" foo.c +% scons -Q CONFIG=/usr/local/etc/other_config foo.o +scons: `foo.o' is up to date. + diff --git a/doc/generated/examples/commandline_PathVariable_2.xml b/doc/generated/examples/commandline_PathVariable_2.xml new file mode 100644 index 0000000..e24f8f2 --- /dev/null +++ b/doc/generated/examples/commandline_PathVariable_2.xml @@ -0,0 +1,6 @@ + +% scons -Q CONFIG=/does/not/exist foo.o + +scons: *** Path for option CONFIG does not exist: /does/not/exist +File "/home/my/project/SConstruct", line 6, in <module> + diff --git a/doc/generated/examples/commandline_SCONSFLAGS_1.xml b/doc/generated/examples/commandline_SCONSFLAGS_1.xml new file mode 100644 index 0000000..4261677 --- /dev/null +++ b/doc/generated/examples/commandline_SCONSFLAGS_1.xml @@ -0,0 +1,11 @@ + +% scons +scons: Reading SConscript files ... +scons: done reading SConscript files. +scons: Building targets ... + ... [build output] ... +scons: done building targets. +% export SCONSFLAGS="-Q" +% scons + ... [build output] ... + diff --git a/doc/generated/examples/commandline_SetOption_1.xml b/doc/generated/examples/commandline_SetOption_1.xml new file mode 100644 index 0000000..c3b878e --- /dev/null +++ b/doc/generated/examples/commandline_SetOption_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +running with -j 2 +scons: `.' is up to date. + diff --git a/doc/generated/examples/commandline_SetOption_2.xml b/doc/generated/examples/commandline_SetOption_2.xml new file mode 100644 index 0000000..d7bbf30 --- /dev/null +++ b/doc/generated/examples/commandline_SetOption_2.xml @@ -0,0 +1,6 @@ + +% export NUM_CPU="4" +% scons -Q +running with -j 4 +scons: `.' is up to date. + diff --git a/doc/generated/examples/commandline_SetOption_3.xml b/doc/generated/examples/commandline_SetOption_3.xml new file mode 100644 index 0000000..f4ca2f1 --- /dev/null +++ b/doc/generated/examples/commandline_SetOption_3.xml @@ -0,0 +1,9 @@ + +% scons -Q -j 7 +running with -j 7 +scons: `.' is up to date. +% export NUM_CPU="4" +% scons -Q -j 3 +running with -j 3 +scons: `.' is up to date. + diff --git a/doc/generated/examples/commandline_UnknownVariables_1.xml b/doc/generated/examples/commandline_UnknownVariables_1.xml new file mode 100644 index 0000000..c6880d6 --- /dev/null +++ b/doc/generated/examples/commandline_UnknownVariables_1.xml @@ -0,0 +1,4 @@ + +% scons -Q NOT_KNOWN=foo +Unknown variables: ['NOT_KNOWN'] + diff --git a/doc/generated/examples/commandline_Variables1_1.xml b/doc/generated/examples/commandline_Variables1_1.xml new file mode 100644 index 0000000..22754a3 --- /dev/null +++ b/doc/generated/examples/commandline_Variables1_1.xml @@ -0,0 +1,6 @@ + +% scons -Q RELEASE=1 +cc -o bar.o -c -DRELEASE_BUILD=1 bar.c +cc -o foo.o -c -DRELEASE_BUILD=1 foo.c +cc -o foo foo.o bar.o + diff --git a/doc/generated/examples/commandline_Variables_Help_1.xml b/doc/generated/examples/commandline_Variables_Help_1.xml new file mode 100644 index 0000000..0134479 --- /dev/null +++ b/doc/generated/examples/commandline_Variables_Help_1.xml @@ -0,0 +1,9 @@ + +% scons -Q -h + +RELEASE: Set to 1 to build for release + default: 0 + actual: 0 + +Use scons -H for help about command-line options. + diff --git a/doc/generated/examples/commandline_Variables_custom_py_1_1.xml b/doc/generated/examples/commandline_Variables_custom_py_1_1.xml new file mode 100644 index 0000000..77d3564 --- /dev/null +++ b/doc/generated/examples/commandline_Variables_custom_py_1_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +cc -o bar.o -c -DRELEASE_BUILD=1 bar.c +cc -o foo.o -c -DRELEASE_BUILD=1 foo.c +cc -o foo foo.o bar.o + diff --git a/doc/generated/examples/commandline_Variables_custom_py_1_custom.py b/doc/generated/examples/commandline_Variables_custom_py_1_custom.py new file mode 100644 index 0000000..ff314fa --- /dev/null +++ b/doc/generated/examples/commandline_Variables_custom_py_1_custom.py @@ -0,0 +1,3 @@ + +RELEASE = 1 + diff --git a/doc/generated/examples/commandline_Variables_custom_py_2_1.xml b/doc/generated/examples/commandline_Variables_custom_py_2_1.xml new file mode 100644 index 0000000..7ab5d74 --- /dev/null +++ b/doc/generated/examples/commandline_Variables_custom_py_2_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +cc -o bar.o -c -DRELEASE_BUILD=0 bar.c +cc -o foo.o -c -DRELEASE_BUILD=0 foo.c +cc -o foo foo.o bar.o + diff --git a/doc/generated/examples/depends_AlwaysBuild_1.xml b/doc/generated/examples/depends_AlwaysBuild_1.xml new file mode 100644 index 0000000..534c297 --- /dev/null +++ b/doc/generated/examples/depends_AlwaysBuild_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q +cc -o hello hello.o + diff --git a/doc/generated/examples/depends_AlwaysBuild_2.xml b/doc/generated/examples/depends_AlwaysBuild_2.xml new file mode 100644 index 0000000..9a7325f --- /dev/null +++ b/doc/generated/examples/depends_AlwaysBuild_2.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q hello.o +scons: `hello.o' is up to date. + diff --git a/doc/generated/examples/depends_Requires_1.xml b/doc/generated/examples/depends_Requires_1.xml new file mode 100644 index 0000000..50b2f56 --- /dev/null +++ b/doc/generated/examples/depends_Requires_1.xml @@ -0,0 +1,20 @@ + +% scons -Q hello +cc -o version.o -c version.c +cc -o hello.o -c hello.c +cc -o hello version.o hello.o +% sleep 1 +% scons -Q hello +cc -o version.o -c version.c +scons: `hello' is up to date. +% sleep 1 +% [CHANGE THE CONTENTS OF hello.c] +% scons -Q hello +cc -o version.o -c version.c +cc -o hello.o -c hello.c +cc -o hello version.o hello.o +% sleep 1 +% scons -Q hello +cc -o version.o -c version.c +scons: `hello' is up to date. + diff --git a/doc/generated/examples/depends_ex1_1.xml b/doc/generated/examples/depends_ex1_1.xml new file mode 100644 index 0000000..f9b35dd --- /dev/null +++ b/doc/generated/examples/depends_ex1_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q +scons: `.' is up to date. + diff --git a/doc/generated/examples/depends_ex1_2.xml b/doc/generated/examples/depends_ex1_2.xml new file mode 100644 index 0000000..254f641 --- /dev/null +++ b/doc/generated/examples/depends_ex1_2.xml @@ -0,0 +1,7 @@ + +% scons -Q hello +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q hello +scons: `hello' is up to date. + diff --git a/doc/generated/examples/depends_ex1_3.xml b/doc/generated/examples/depends_ex1_3.xml new file mode 100644 index 0000000..a4cf4e3 --- /dev/null +++ b/doc/generated/examples/depends_ex1_3.xml @@ -0,0 +1,8 @@ + +% scons -Q hello +cc -o hello.o -c hello.c +cc -o hello hello.o +% touch hello.c +% scons -Q hello +scons: `hello' is up to date. + diff --git a/doc/generated/examples/depends_ex1_4.xml b/doc/generated/examples/depends_ex1_4.xml new file mode 100644 index 0000000..7e1f860 --- /dev/null +++ b/doc/generated/examples/depends_ex1_4.xml @@ -0,0 +1,9 @@ + +% scons -Q hello +cc -o hello.o -c hello.c +cc -o hello hello.o +% [CHANGE THE CONTENTS OF hello.c] +% scons -Q hello +cc -o hello.o -c hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/depends_ex1_5.xml b/doc/generated/examples/depends_ex1_5.xml new file mode 100644 index 0000000..abbe64e --- /dev/null +++ b/doc/generated/examples/depends_ex1_5.xml @@ -0,0 +1,9 @@ + +% scons -Q hello +cc -o hello.o -c hello.c +cc -o hello hello.o +% [CHANGE A COMMENT IN hello.c] +% scons -Q hello +cc -o hello.o -c hello.c +scons: `hello' is up to date. + diff --git a/doc/generated/examples/depends_ex1_6.xml b/doc/generated/examples/depends_ex1_6.xml new file mode 100644 index 0000000..75e1f80 --- /dev/null +++ b/doc/generated/examples/depends_ex1_6.xml @@ -0,0 +1,7 @@ + +% scons -Q --implicit-cache hello +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q hello +scons: `hello' is up to date. + diff --git a/doc/generated/examples/depends_ex1_7.xml b/doc/generated/examples/depends_ex1_7.xml new file mode 100644 index 0000000..2b7e30a --- /dev/null +++ b/doc/generated/examples/depends_ex1_7.xml @@ -0,0 +1,7 @@ + +% scons -Q --implicit-deps-changed hello +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q hello +scons: `hello' is up to date. + diff --git a/doc/generated/examples/depends_ex1_8.xml b/doc/generated/examples/depends_ex1_8.xml new file mode 100644 index 0000000..957707d --- /dev/null +++ b/doc/generated/examples/depends_ex1_8.xml @@ -0,0 +1,7 @@ + +% scons -Q --implicit-deps-unchanged hello +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q hello +scons: `hello' is up to date. + diff --git a/doc/generated/examples/depends_ex5_1.xml b/doc/generated/examples/depends_ex5_1.xml new file mode 100644 index 0000000..2d1f868 --- /dev/null +++ b/doc/generated/examples/depends_ex5_1.xml @@ -0,0 +1,5 @@ + +% scons -Q hello +cc -o hello.o -c -Iinclude -I/home/project/inc hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/depends_ex5_2.xml b/doc/generated/examples/depends_ex5_2.xml new file mode 100644 index 0000000..57da64f --- /dev/null +++ b/doc/generated/examples/depends_ex5_2.xml @@ -0,0 +1,6 @@ + +C:\>scons -Q hello.exe +cl /Fohello.obj /c hello.c /nologo /Iinclude /I\home\project\inc +link /nologo /OUT:hello.exe hello.obj +embedManifestExeCheck(target, source, env) + diff --git a/doc/generated/examples/depends_ignore_explicit_1.xml b/doc/generated/examples/depends_ignore_explicit_1.xml new file mode 100644 index 0000000..2607131 --- /dev/null +++ b/doc/generated/examples/depends_ignore_explicit_1.xml @@ -0,0 +1,9 @@ + +% scons -Q +scons: `.' is up to date. +% scons -Q hello +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q hello +scons: `hello' is up to date. + diff --git a/doc/generated/examples/depends_include_1.xml b/doc/generated/examples/depends_include_1.xml new file mode 100644 index 0000000..6f63e9a --- /dev/null +++ b/doc/generated/examples/depends_include_1.xml @@ -0,0 +1,11 @@ + +% scons -Q hello +cc -o hello.o -c -I. hello.c +cc -o hello hello.o +% scons -Q hello +scons: `hello' is up to date. +% [CHANGE THE CONTENTS OF hello.h] +% scons -Q hello +cc -o hello.o -c -I. hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/depends_include_SConstruct b/doc/generated/examples/depends_include_SConstruct new file mode 100644 index 0000000..2da2ecf --- /dev/null +++ b/doc/generated/examples/depends_include_SConstruct @@ -0,0 +1,3 @@ + +Program('hello.c', CPPPATH = '.') + diff --git a/doc/generated/examples/depends_include_hello.h b/doc/generated/examples/depends_include_hello.h new file mode 100644 index 0000000..d6032ce --- /dev/null +++ b/doc/generated/examples/depends_include_hello.h @@ -0,0 +1,3 @@ + +#define string "world" + diff --git a/doc/generated/examples/depends_macroinc_1.xml b/doc/generated/examples/depends_macroinc_1.xml new file mode 100644 index 0000000..8f211cc --- /dev/null +++ b/doc/generated/examples/depends_macroinc_1.xml @@ -0,0 +1,8 @@ + +% scons -Q +cc -o hello.o -c -I. hello.c +cc -o hello hello.o +% [CHANGE CONTENTS OF foo.h] +% scons -Q +scons: `.' is up to date. + diff --git a/doc/generated/examples/depends_match_1.xml b/doc/generated/examples/depends_match_1.xml new file mode 100644 index 0000000..c024b2a --- /dev/null +++ b/doc/generated/examples/depends_match_1.xml @@ -0,0 +1,7 @@ + +% scons -Q hello.o +cc -o hello.o -c hello.c +% touch -t 198901010000 hello.c +% scons -Q hello.o +cc -o hello.o -c hello.c + diff --git a/doc/generated/examples/depends_mixing_1.xml b/doc/generated/examples/depends_mixing_1.xml new file mode 100644 index 0000000..10152b2 --- /dev/null +++ b/doc/generated/examples/depends_mixing_1.xml @@ -0,0 +1,11 @@ + +% scons -Q +cc -o program1.o -c -I. program1.c +cc -o prog-MD5 program1.o +cc -o program2.o -c -I. program2.c +cc -o prog-timestamp program2.o +% touch inc.h +% scons -Q +cc -o program2.o -c -I. program2.c +cc -o prog-timestamp program2.o + diff --git a/doc/generated/examples/depends_newer_1.xml b/doc/generated/examples/depends_newer_1.xml new file mode 100644 index 0000000..9f13c31 --- /dev/null +++ b/doc/generated/examples/depends_newer_1.xml @@ -0,0 +1,7 @@ + +% scons -Q hello.o +cc -o hello.o -c hello.c +% touch hello.c +% scons -Q hello.o +cc -o hello.o -c hello.c + diff --git a/doc/generated/examples/depends_no-Requires_1.xml b/doc/generated/examples/depends_no-Requires_1.xml new file mode 100644 index 0000000..5e9bb00 --- /dev/null +++ b/doc/generated/examples/depends_no-Requires_1.xml @@ -0,0 +1,14 @@ + +% scons -Q hello +cc -o hello.o -c hello.c +cc -o version.o -c version.c +cc -o hello hello.o version.o +% sleep 1 +% scons -Q hello +cc -o version.o -c version.c +cc -o hello hello.o version.o +% sleep 1 +% scons -Q hello +cc -o version.o -c version.c +cc -o hello hello.o version.o + diff --git a/doc/generated/examples/depends_parsedep_1.xml b/doc/generated/examples/depends_parsedep_1.xml new file mode 100644 index 0000000..585e89c --- /dev/null +++ b/doc/generated/examples/depends_parsedep_1.xml @@ -0,0 +1,8 @@ + +% scons -Q +cc -o hello.o -c -MD -MF hello.d -I. hello.c +cc -o hello hello.o +% [CHANGE CONTENTS OF foo.h] +% scons -Q +cc -o hello.o -c -MD -MF hello.d -I. hello.c + diff --git a/doc/generated/examples/environments_Append-nonexistent_1.xml b/doc/generated/examples/environments_Append-nonexistent_1.xml new file mode 100644 index 0000000..6597dd4 --- /dev/null +++ b/doc/generated/examples/environments_Append-nonexistent_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +NEW_VARIABLE = added +scons: `.' is up to date. + diff --git a/doc/generated/examples/environments_Prepend-nonexistent_1.xml b/doc/generated/examples/environments_Prepend-nonexistent_1.xml new file mode 100644 index 0000000..6597dd4 --- /dev/null +++ b/doc/generated/examples/environments_Prepend-nonexistent_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +NEW_VARIABLE = added +scons: `.' is up to date. + diff --git a/doc/generated/examples/environments_Replace-nonexistent_1.xml b/doc/generated/examples/environments_Replace-nonexistent_1.xml new file mode 100644 index 0000000..eb8b95c --- /dev/null +++ b/doc/generated/examples/environments_Replace-nonexistent_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +NEW_VARIABLE = xyzzy +scons: `.' is up to date. + diff --git a/doc/generated/examples/environments_Replace1_1.xml b/doc/generated/examples/environments_Replace1_1.xml new file mode 100644 index 0000000..372d6ae --- /dev/null +++ b/doc/generated/examples/environments_Replace1_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +cc -o foo.o -c -DDEFINE2 foo.c +cc -o foo foo.o + diff --git a/doc/generated/examples/environments_Replace2_1.xml b/doc/generated/examples/environments_Replace2_1.xml new file mode 100644 index 0000000..fe949ef --- /dev/null +++ b/doc/generated/examples/environments_Replace2_1.xml @@ -0,0 +1,13 @@ + +% scons +scons: Reading SConscript files ... +CCFLAGS = -DDEFINE1 +CCFLAGS = -DDEFINE2 +scons: done reading SConscript files. +scons: Building targets ... +cc -o bar.o -c -DDEFINE2 bar.c +cc -o bar bar.o +cc -o foo.o -c -DDEFINE2 foo.c +cc -o foo foo.o +scons: done building targets. + diff --git a/doc/generated/examples/environments_ex1_1.xml b/doc/generated/examples/environments_ex1_1.xml new file mode 100644 index 0000000..28bc8ca --- /dev/null +++ b/doc/generated/examples/environments_ex1_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +gcc -o foo.o -c -O2 foo.c +gcc -o foo foo.o + diff --git a/doc/generated/examples/environments_ex2_1.xml b/doc/generated/examples/environments_ex2_1.xml new file mode 100644 index 0000000..248cd28 --- /dev/null +++ b/doc/generated/examples/environments_ex2_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o bar.o -c -g bar.c +cc -o bar bar.o +cc -o foo.o -c -O2 foo.c +cc -o foo foo.o + diff --git a/doc/generated/examples/environments_ex3_1.xml b/doc/generated/examples/environments_ex3_1.xml new file mode 100644 index 0000000..1c2d620 --- /dev/null +++ b/doc/generated/examples/environments_ex3_1.xml @@ -0,0 +1,6 @@ + +% scons -Q + +scons: *** Two environments with different actions were specified for the same target: foo.o +File "/home/my/project/SConstruct", line 6, in <module> + diff --git a/doc/generated/examples/environments_ex4_1.xml b/doc/generated/examples/environments_ex4_1.xml new file mode 100644 index 0000000..69ac649 --- /dev/null +++ b/doc/generated/examples/environments_ex4_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o foo-dbg.o -c -g foo.c +cc -o foo-dbg foo-dbg.o +cc -o foo-opt.o -c -O2 foo.c +cc -o foo-opt foo-opt.o + diff --git a/doc/generated/examples/environments_ex5_1.xml b/doc/generated/examples/environments_ex5_1.xml new file mode 100644 index 0000000..d50f349 --- /dev/null +++ b/doc/generated/examples/environments_ex5_1.xml @@ -0,0 +1,9 @@ + +% scons -Q +gcc -o foo.o -c foo.c +gcc -o foo foo.o +gcc -o foo-dbg.o -c -g foo.c +gcc -o foo-dbg foo-dbg.o +gcc -o foo-opt.o -c -O2 foo.c +gcc -o foo-opt foo-opt.o + diff --git a/doc/generated/examples/environments_ex6_1.xml b/doc/generated/examples/environments_ex6_1.xml new file mode 100644 index 0000000..bef56a3 --- /dev/null +++ b/doc/generated/examples/environments_ex6_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +CC is: cc +scons: `.' is up to date. + diff --git a/doc/generated/examples/environments_ex6b_1.xml b/doc/generated/examples/environments_ex6b_1.xml new file mode 100644 index 0000000..dbcc502 --- /dev/null +++ b/doc/generated/examples/environments_ex6b_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +key = OBJSUFFIX, value = .o +key = LIBSUFFIX, value = .a +key = PROGSUFFIX, value = +scons: `.' is up to date. + diff --git a/doc/generated/examples/environments_ex6b_2.xml b/doc/generated/examples/environments_ex6b_2.xml new file mode 100644 index 0000000..f6fb554 --- /dev/null +++ b/doc/generated/examples/environments_ex6b_2.xml @@ -0,0 +1,7 @@ + +C:\>scons -Q +key = OBJSUFFIX, value = .obj +key = LIBSUFFIX, value = .lib +key = PROGSUFFIX, value = .exe +scons: `.' is up to date. + diff --git a/doc/generated/examples/environments_ex8_1.xml b/doc/generated/examples/environments_ex8_1.xml new file mode 100644 index 0000000..1749195 --- /dev/null +++ b/doc/generated/examples/environments_ex8_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +cc -o foo.o -c -DMY_VALUE -DLAST foo.c +cc -o foo foo.o + diff --git a/doc/generated/examples/environments_ex9_1.xml b/doc/generated/examples/environments_ex9_1.xml new file mode 100644 index 0000000..aebefcc --- /dev/null +++ b/doc/generated/examples/environments_ex9_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +cc -o foo.o -c -DFIRST -DMY_VALUE foo.c +cc -o foo foo.o + diff --git a/doc/generated/examples/environments_missing1_1.xml b/doc/generated/examples/environments_missing1_1.xml new file mode 100644 index 0000000..d58b27b --- /dev/null +++ b/doc/generated/examples/environments_missing1_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +value is: -><- +scons: `.' is up to date. + diff --git a/doc/generated/examples/environments_missing2_1.xml b/doc/generated/examples/environments_missing2_1.xml new file mode 100644 index 0000000..911ecd2 --- /dev/null +++ b/doc/generated/examples/environments_missing2_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +value is: +scons: *** NameError `MISSING' trying to evaluate `$MISSING' +File "/home/my/project/SConstruct", line 3, in <module> + diff --git a/doc/generated/examples/environments_missing3_1.xml b/doc/generated/examples/environments_missing3_1.xml new file mode 100644 index 0000000..d58b27b --- /dev/null +++ b/doc/generated/examples/environments_missing3_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +value is: -><- +scons: `.' is up to date. + diff --git a/doc/generated/examples/factories_Chmod_1.xml b/doc/generated/examples/factories_Chmod_1.xml new file mode 100644 index 0000000..59bccf5 --- /dev/null +++ b/doc/generated/examples/factories_Chmod_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +Copy("file.out", "file.in") +Chmod("file.out", 0755) + diff --git a/doc/generated/examples/factories_Copy1_1.xml b/doc/generated/examples/factories_Copy1_1.xml new file mode 100644 index 0000000..c0be7f8 --- /dev/null +++ b/doc/generated/examples/factories_Copy1_1.xml @@ -0,0 +1,4 @@ + +% scons -Q +Copy("file.out", "file.in") + diff --git a/doc/generated/examples/factories_Copy2_1.xml b/doc/generated/examples/factories_Copy2_1.xml new file mode 100644 index 0000000..c0be7f8 --- /dev/null +++ b/doc/generated/examples/factories_Copy2_1.xml @@ -0,0 +1,4 @@ + +% scons -Q +Copy("file.out", "file.in") + diff --git a/doc/generated/examples/factories_Copy3_1.xml b/doc/generated/examples/factories_Copy3_1.xml new file mode 100644 index 0000000..20702c8 --- /dev/null +++ b/doc/generated/examples/factories_Copy3_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +Copy("tempfile", "file.in") +modify tempfile +Copy("file.out", "tempfile") + diff --git a/doc/generated/examples/factories_Delete1_1.xml b/doc/generated/examples/factories_Delete1_1.xml new file mode 100644 index 0000000..5cfde55 --- /dev/null +++ b/doc/generated/examples/factories_Delete1_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +Delete("tempfile") +Copy("tempfile", "file.in") +modify tempfile +Copy("file.out", "tempfile") + diff --git a/doc/generated/examples/factories_Delete2_1.xml b/doc/generated/examples/factories_Delete2_1.xml new file mode 100644 index 0000000..3bdb3f1 --- /dev/null +++ b/doc/generated/examples/factories_Delete2_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +Delete("file.out") +Copy("file.out", "file.in") + diff --git a/doc/generated/examples/factories_Execute_1.xml b/doc/generated/examples/factories_Execute_1.xml new file mode 100644 index 0000000..1956439 --- /dev/null +++ b/doc/generated/examples/factories_Execute_1.xml @@ -0,0 +1,9 @@ + +% scons +scons: Reading SConscript files ... +Mkdir("/tmp/my_temp_directory") +scons: done reading SConscript files. +scons: Building targets ... +scons: `.' is up to date. +scons: done building targets. + diff --git a/doc/generated/examples/factories_Mkdir_1.xml b/doc/generated/examples/factories_Mkdir_1.xml new file mode 100644 index 0000000..ae58dac --- /dev/null +++ b/doc/generated/examples/factories_Mkdir_1.xml @@ -0,0 +1,9 @@ + +% scons -Q +Delete("tempdir") +Mkdir("tempdir") +Copy("tempdir/file.in", "file.in") +process tempdir +Move("file.out", "tempdir/output_file") +scons: *** [file.out] tempdir/output_file: No such file or directory + diff --git a/doc/generated/examples/factories_Move_1.xml b/doc/generated/examples/factories_Move_1.xml new file mode 100644 index 0000000..2bd008d --- /dev/null +++ b/doc/generated/examples/factories_Move_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +Copy("tempfile", "file.in") +modify tempfile +Move("file.out", "tempfile") + diff --git a/doc/generated/examples/factories_Touch_1.xml b/doc/generated/examples/factories_Touch_1.xml new file mode 100644 index 0000000..aacde9e --- /dev/null +++ b/doc/generated/examples/factories_Touch_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +Copy("file.out", "file.in") +Touch("file.out") + diff --git a/doc/generated/examples/fileremoval_clean-ex1_1.xml b/doc/generated/examples/fileremoval_clean-ex1_1.xml new file mode 100644 index 0000000..bb09707 --- /dev/null +++ b/doc/generated/examples/fileremoval_clean-ex1_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +build -o foo.out foo.in +% scons -Q -c +Removed foo.out +Removed foo.log + diff --git a/doc/generated/examples/fileremoval_noclean-ex1_1.xml b/doc/generated/examples/fileremoval_noclean-ex1_1.xml new file mode 100644 index 0000000..ab36c3f --- /dev/null +++ b/doc/generated/examples/fileremoval_noclean-ex1_1.xml @@ -0,0 +1,15 @@ + +% scons -Q +cc -o f1.o -c f1.c +cc -o f2.o -c f2.c +cc -o f3.o -c f3.c +ar rc libfoo.a f1.o f2.o f3.o +% scons -c +scons: Reading SConscript files ... +scons: done reading SConscript files. +scons: Cleaning targets ... +Removed f1.o +Removed f2.o +Removed f3.o +scons: done cleaning targets. + diff --git a/doc/generated/examples/fileremoval_precious-ex1_1.xml b/doc/generated/examples/fileremoval_precious-ex1_1.xml new file mode 100644 index 0000000..e8227e6 --- /dev/null +++ b/doc/generated/examples/fileremoval_precious-ex1_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o f1.o -c f1.c +cc -o f2.o -c f2.c +cc -o f3.o -c f3.c +ar rc libfoo.a f1.o f2.o f3.o + diff --git a/doc/generated/examples/hierarchy_Return_1.xml b/doc/generated/examples/hierarchy_Return_1.xml new file mode 100644 index 0000000..64b981a --- /dev/null +++ b/doc/generated/examples/hierarchy_Return_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o bar/bar.o -c bar/bar.c +cc -o foo/foo.o -c foo/foo.c +ar rc libprog.a foo/foo.o bar/bar.o +ranlib libprog.a + diff --git a/doc/generated/examples/hierarchy_Return_foo_SConscript b/doc/generated/examples/hierarchy_Return_foo_SConscript new file mode 100644 index 0000000..4f45c0f --- /dev/null +++ b/doc/generated/examples/hierarchy_Return_foo_SConscript @@ -0,0 +1,5 @@ + +Import('env') +obj = env.Object('foo.c') +Return('obj') + diff --git a/doc/generated/examples/hierarchy_ex1_1.xml b/doc/generated/examples/hierarchy_ex1_1.xml new file mode 100644 index 0000000..50beb93 --- /dev/null +++ b/doc/generated/examples/hierarchy_ex1_1.xml @@ -0,0 +1,11 @@ + +% scons -Q +cc -o prog1/foo1.o -c prog1/foo1.c +cc -o prog1/foo2.o -c prog1/foo2.c +cc -o prog1/main.o -c prog1/main.c +cc -o prog1/prog1 prog1/main.o prog1/foo1.o prog1/foo2.o +cc -o prog2/bar1.o -c prog2/bar1.c +cc -o prog2/bar2.o -c prog2/bar2.c +cc -o prog2/main.o -c prog2/main.c +cc -o prog2/prog2 prog2/main.o prog2/bar1.o prog2/bar2.o + diff --git a/doc/generated/examples/hierarchy_ex1_prog1_SConscript b/doc/generated/examples/hierarchy_ex1_prog1_SConscript new file mode 100644 index 0000000..caf2636 --- /dev/null +++ b/doc/generated/examples/hierarchy_ex1_prog1_SConscript @@ -0,0 +1,4 @@ + +env = Environment() +env.Program('prog1', ['main.c', 'foo1.c', 'foo2.c']) + diff --git a/doc/generated/examples/hierarchy_ex1_prog2_SConscript b/doc/generated/examples/hierarchy_ex1_prog2_SConscript new file mode 100644 index 0000000..88b05a3 --- /dev/null +++ b/doc/generated/examples/hierarchy_ex1_prog2_SConscript @@ -0,0 +1,4 @@ + +env = Environment() +env.Program('prog2', ['main.c', 'bar1.c', 'bar2.c']) + diff --git a/doc/generated/examples/hierarchy_ex2_1.xml b/doc/generated/examples/hierarchy_ex2_1.xml new file mode 100644 index 0000000..1f781f8 --- /dev/null +++ b/doc/generated/examples/hierarchy_ex2_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o lib/foo1.o -c lib/foo1.c +cc -o src/prog/foo2.o -c src/prog/foo2.c +cc -o src/prog/main.o -c src/prog/main.c +cc -o src/prog/prog src/prog/main.o lib/foo1.o src/prog/foo2.o + diff --git a/doc/generated/examples/hierarchy_ex3_1.xml b/doc/generated/examples/hierarchy_ex3_1.xml new file mode 100644 index 0000000..cb5a0ce --- /dev/null +++ b/doc/generated/examples/hierarchy_ex3_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o src/prog/foo2.o -c src/prog/foo2.c +cc -o src/prog/main.o -c src/prog/main.c +cc -o /usr/joe/lib/foo1.o -c /usr/joe/lib/foo1.c +cc -o src/prog/prog src/prog/main.o /usr/joe/lib/foo1.o src/prog/foo2.o + diff --git a/doc/generated/examples/install_ex1_1.xml b/doc/generated/examples/install_ex1_1.xml new file mode 100644 index 0000000..69a9f28 --- /dev/null +++ b/doc/generated/examples/install_ex1_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q /usr/bin +Install file: "hello" as "/usr/bin/hello" + diff --git a/doc/generated/examples/install_ex2_1.xml b/doc/generated/examples/install_ex2_1.xml new file mode 100644 index 0000000..66caba3 --- /dev/null +++ b/doc/generated/examples/install_ex2_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o hello.o -c hello.c +cc -o hello hello.o +% scons -Q install +Install file: "hello" as "/usr/bin/hello" + diff --git a/doc/generated/examples/install_ex3_1.xml b/doc/generated/examples/install_ex3_1.xml new file mode 100644 index 0000000..5e79808 --- /dev/null +++ b/doc/generated/examples/install_ex3_1.xml @@ -0,0 +1,9 @@ + +% scons -Q install +cc -o goodbye.o -c goodbye.c +cc -o goodbye goodbye.o +Install file: "goodbye" as "/usr/bin/goodbye" +cc -o hello.o -c hello.c +cc -o hello hello.o +Install file: "hello" as "/usr/bin/hello" + diff --git a/doc/generated/examples/install_ex4_1.xml b/doc/generated/examples/install_ex4_1.xml new file mode 100644 index 0000000..277ab7a --- /dev/null +++ b/doc/generated/examples/install_ex4_1.xml @@ -0,0 +1,6 @@ + +% scons -Q install +cc -o hello.o -c hello.c +cc -o hello hello.o +Install file: "hello" as "/usr/bin/hello-new" + diff --git a/doc/generated/examples/install_ex5_1.xml b/doc/generated/examples/install_ex5_1.xml new file mode 100644 index 0000000..9cfc178 --- /dev/null +++ b/doc/generated/examples/install_ex5_1.xml @@ -0,0 +1,9 @@ + +% scons -Q install +cc -o goodbye.o -c goodbye.c +cc -o goodbye goodbye.o +Install file: "goodbye" as "/usr/bin/goodbye-new" +cc -o hello.o -c hello.c +cc -o hello hello.o +Install file: "hello" as "/usr/bin/hello-new" + diff --git a/doc/generated/examples/java_JAVACLASSDIR_1.xml b/doc/generated/examples/java_JAVACLASSDIR_1.xml new file mode 100644 index 0000000..e87345e --- /dev/null +++ b/doc/generated/examples/java_JAVACLASSDIR_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +javac -d classes -sourcepath src/pkg/sub src/pkg/sub/Example1.java src/pkg/sub/Example2.java src/pkg/sub/Example3.java +javah -d native -classpath classes pkg.sub.Example1 pkg.sub.Example2 pkg.sub.Example3 + diff --git a/doc/generated/examples/java_RMIC_1.xml b/doc/generated/examples/java_RMIC_1.xml new file mode 100644 index 0000000..be8c953 --- /dev/null +++ b/doc/generated/examples/java_RMIC_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +javac -d classes -sourcepath src/pkg/sub src/pkg/sub/Example1.java src/pkg/sub/Example2.java +rmic -d outdir -classpath classes pkg.sub.Example1 pkg.sub.Example2 + diff --git a/doc/generated/examples/java_jar1_1.xml b/doc/generated/examples/java_jar1_1.xml new file mode 100644 index 0000000..6f5afa0 --- /dev/null +++ b/doc/generated/examples/java_jar1_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +javac -d classes -sourcepath src src/Example1.java src/Example2.java src/Example3.java +jar cf test.jar classes + diff --git a/doc/generated/examples/java_jar2_1.xml b/doc/generated/examples/java_jar2_1.xml new file mode 100644 index 0000000..70e161b --- /dev/null +++ b/doc/generated/examples/java_jar2_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +javac -d classes -sourcepath prog1 prog1/Example1.java prog1/Example2.java +javac -d classes -sourcepath prog2 prog2/Example3.java prog2/Example4.java +jar cf prog1.jar -C classes Example1.class -C classes Example2.class +jar cf prog2.jar -C classes Example3.class -C classes Example4.class + diff --git a/doc/generated/examples/java_java-classes_1.xml b/doc/generated/examples/java_java-classes_1.xml new file mode 100644 index 0000000..2ebc85c --- /dev/null +++ b/doc/generated/examples/java_java-classes_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +javac -d classes -sourcepath src src/Example1.java src/Example2.java src/Example3.java +% scons -Q classes +scons: `classes' is up to date. + diff --git a/doc/generated/examples/java_java-classes_2.xml b/doc/generated/examples/java_java-classes_2.xml new file mode 100644 index 0000000..9a24f70 --- /dev/null +++ b/doc/generated/examples/java_java-classes_2.xml @@ -0,0 +1,11 @@ + +% scons -Q +javac -d classes -sourcepath src src/Example1.java src/Example2.java src/Example3.java +% scons -Q -c classes +Removed classes/Example1.class +Removed classes/AdditionalClass1.class +Removed classes/Example2$Inner2.class +Removed classes/Example2.class +Removed classes/Example3.class +Removed classes/AdditionalClass3.class + diff --git a/doc/generated/examples/java_java_1.xml b/doc/generated/examples/java_java_1.xml new file mode 100644 index 0000000..a6e69c1 --- /dev/null +++ b/doc/generated/examples/java_java_1.xml @@ -0,0 +1,4 @@ + +% scons -Q +javac -d classes -sourcepath src src/Example1.java src/Example2.java src/Example3.java + diff --git a/doc/generated/examples/java_javah_1.xml b/doc/generated/examples/java_javah_1.xml new file mode 100644 index 0000000..e87345e --- /dev/null +++ b/doc/generated/examples/java_javah_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +javac -d classes -sourcepath src/pkg/sub src/pkg/sub/Example1.java src/pkg/sub/Example2.java src/pkg/sub/Example3.java +javah -d native -classpath classes pkg.sub.Example1 pkg.sub.Example2 pkg.sub.Example3 + diff --git a/doc/generated/examples/java_javah_file_1.xml b/doc/generated/examples/java_javah_file_1.xml new file mode 100644 index 0000000..a0e74d5 --- /dev/null +++ b/doc/generated/examples/java_javah_file_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +javac -d classes -sourcepath src/pkg/sub src/pkg/sub/Example1.java src/pkg/sub/Example2.java src/pkg/sub/Example3.java +javah -o native.h -classpath classes pkg.sub.Example1 pkg.sub.Example2 pkg.sub.Example3 + diff --git a/doc/generated/examples/lesssimple_ex2_1.xml b/doc/generated/examples/lesssimple_ex2_1.xml new file mode 100644 index 0000000..834f88c --- /dev/null +++ b/doc/generated/examples/lesssimple_ex2_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o file1.o -c file1.c +cc -o file2.o -c file2.c +cc -o prog.o -c prog.c +cc -o prog prog.o file1.o file2.o + diff --git a/doc/generated/examples/lesssimple_ex3_1.xml b/doc/generated/examples/lesssimple_ex3_1.xml new file mode 100644 index 0000000..415205b --- /dev/null +++ b/doc/generated/examples/lesssimple_ex3_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o file1.o -c file1.c +cc -o file2.o -c file2.c +cc -o prog.o -c prog.c +cc -o program prog.o file1.o file2.o + diff --git a/doc/generated/examples/lesssimple_ex3_2.xml b/doc/generated/examples/lesssimple_ex3_2.xml new file mode 100644 index 0000000..2eee32b --- /dev/null +++ b/doc/generated/examples/lesssimple_ex3_2.xml @@ -0,0 +1,8 @@ + +C:\>scons -Q +cl /Fofile1.obj /c file1.c /nologo +cl /Fofile2.obj /c file2.c /nologo +cl /Foprog.obj /c prog.c /nologo +link /nologo /OUT:program.exe prog.obj file1.obj file2.obj +embedManifestExeCheck(target, source, env) + diff --git a/doc/generated/examples/lesssimple_ex4_1.xml b/doc/generated/examples/lesssimple_ex4_1.xml new file mode 100644 index 0000000..4d9267e --- /dev/null +++ b/doc/generated/examples/lesssimple_ex4_1.xml @@ -0,0 +1,8 @@ + +% scons -Q +cc -o bar1.o -c bar1.c +cc -o bar2.o -c bar2.c +cc -o bar bar1.o bar2.o +cc -o foo.o -c foo.c +cc -o foo foo.o + diff --git a/doc/generated/examples/lesssimple_ex5_1.xml b/doc/generated/examples/lesssimple_ex5_1.xml new file mode 100644 index 0000000..e1c35d4 --- /dev/null +++ b/doc/generated/examples/lesssimple_ex5_1.xml @@ -0,0 +1,10 @@ + +% scons -Q +cc -o bar1.o -c bar1.c +cc -o bar2.o -c bar2.c +cc -o common1.o -c common1.c +cc -o common2.o -c common2.c +cc -o bar bar1.o bar2.o common1.o common2.o +cc -o foo.o -c foo.c +cc -o foo foo.o common1.o common2.o + diff --git a/doc/generated/examples/lesssimple_target_1.xml b/doc/generated/examples/lesssimple_target_1.xml new file mode 100644 index 0000000..76f0de9 --- /dev/null +++ b/doc/generated/examples/lesssimple_target_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +cc -o hello.o -c hello.c +cc -o new_hello hello.o + diff --git a/doc/generated/examples/lesssimple_target_2.xml b/doc/generated/examples/lesssimple_target_2.xml new file mode 100644 index 0000000..0babd04 --- /dev/null +++ b/doc/generated/examples/lesssimple_target_2.xml @@ -0,0 +1,6 @@ + +C:\>scons -Q +cl /Fohello.obj /c hello.c /nologo +link /nologo /OUT:new_hello.exe hello.obj +embedManifestExeCheck(target, source, env) + diff --git a/doc/generated/examples/libraries_SharedLibrary_1.xml b/doc/generated/examples/libraries_SharedLibrary_1.xml new file mode 100644 index 0000000..80df708 --- /dev/null +++ b/doc/generated/examples/libraries_SharedLibrary_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o f1.os -c f1.c +cc -o f2.os -c f2.c +cc -o f3.os -c f3.c +cc -o libfoo.so -shared f1.os f2.os f3.os + diff --git a/doc/generated/examples/libraries_SharedLibrary_2.xml b/doc/generated/examples/libraries_SharedLibrary_2.xml new file mode 100644 index 0000000..c2894d5 --- /dev/null +++ b/doc/generated/examples/libraries_SharedLibrary_2.xml @@ -0,0 +1,9 @@ + +C:\>scons -Q +cl /Fof1.obj /c f1.c /nologo +cl /Fof2.obj /c f2.c /nologo +cl /Fof3.obj /c f3.c /nologo +link /nologo /dll /out:foo.dll /implib:foo.lib f1.obj f2.obj f3.obj +RegServerFunc(target, source, env) +embedManifestDllCheck(target, source, env) + diff --git a/doc/generated/examples/libraries_ex1_1.xml b/doc/generated/examples/libraries_ex1_1.xml new file mode 100644 index 0000000..0449b31 --- /dev/null +++ b/doc/generated/examples/libraries_ex1_1.xml @@ -0,0 +1,8 @@ + +% scons -Q +cc -o f1.o -c f1.c +cc -o f2.o -c f2.c +cc -o f3.o -c f3.c +ar rc libfoo.a f1.o f2.o f3.o +ranlib libfoo.a + diff --git a/doc/generated/examples/libraries_ex1_2.xml b/doc/generated/examples/libraries_ex1_2.xml new file mode 100644 index 0000000..9256d4f --- /dev/null +++ b/doc/generated/examples/libraries_ex1_2.xml @@ -0,0 +1,7 @@ + +C:\>scons -Q +cl /Fof1.obj /c f1.c /nologo +cl /Fof2.obj /c f2.c /nologo +cl /Fof3.obj /c f3.c /nologo +lib /nologo /OUT:foo.lib f1.obj f2.obj f3.obj + diff --git a/doc/generated/examples/libraries_ex2_1.xml b/doc/generated/examples/libraries_ex2_1.xml new file mode 100644 index 0000000..7389203 --- /dev/null +++ b/doc/generated/examples/libraries_ex2_1.xml @@ -0,0 +1,10 @@ + +% scons -Q +cc -o f1.o -c f1.c +cc -o f2.o -c f2.c +cc -o f3.o -c f3.c +ar rc libfoo.a f1.o f2.o f3.o +ranlib libfoo.a +cc -o prog.o -c prog.c +cc -o prog prog.o -L. -lfoo -lbar + diff --git a/doc/generated/examples/libraries_ex2_2.xml b/doc/generated/examples/libraries_ex2_2.xml new file mode 100644 index 0000000..17ec5b5 --- /dev/null +++ b/doc/generated/examples/libraries_ex2_2.xml @@ -0,0 +1,10 @@ + +C:\>scons -Q +cl /Fof1.obj /c f1.c /nologo +cl /Fof2.obj /c f2.c /nologo +cl /Fof3.obj /c f3.c /nologo +lib /nologo /OUT:foo.lib f1.obj f2.obj f3.obj +cl /Foprog.obj /c prog.c /nologo +link /nologo /OUT:prog.exe /LIBPATH:. foo.lib bar.lib prog.obj +embedManifestExeCheck(target, source, env) + diff --git a/doc/generated/examples/libraries_ex3_1.xml b/doc/generated/examples/libraries_ex3_1.xml new file mode 100644 index 0000000..1b4fb3c --- /dev/null +++ b/doc/generated/examples/libraries_ex3_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +cc -o prog.o -c prog.c +cc -o prog prog.o -L/usr/lib -L/usr/local/lib -lm + diff --git a/doc/generated/examples/libraries_ex3_2.xml b/doc/generated/examples/libraries_ex3_2.xml new file mode 100644 index 0000000..2a64da1 --- /dev/null +++ b/doc/generated/examples/libraries_ex3_2.xml @@ -0,0 +1,6 @@ + +C:\>scons -Q +cl /Foprog.obj /c prog.c /nologo +link /nologo /OUT:prog.exe /LIBPATH:\usr\lib /LIBPATH:\usr\local\lib m.lib prog.obj +embedManifestExeCheck(target, source, env) + diff --git a/doc/generated/examples/libraries_objects_1.xml b/doc/generated/examples/libraries_objects_1.xml new file mode 100644 index 0000000..97623d9 --- /dev/null +++ b/doc/generated/examples/libraries_objects_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o f1.o -c f1.c +cc -o f3.o -c f3.c +ar rc libfoo.a f1.o f2.o f3.o f4.o +ranlib libfoo.a + diff --git a/doc/generated/examples/mergeflags_MergeFlags1_1.xml b/doc/generated/examples/mergeflags_MergeFlags1_1.xml new file mode 100644 index 0000000..a5a6915 --- /dev/null +++ b/doc/generated/examples/mergeflags_MergeFlags1_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +['-option', '-O1', '-whatever', '-O3'] +scons: `.' is up to date. + diff --git a/doc/generated/examples/mergeflags_MergeFlags2_1.xml b/doc/generated/examples/mergeflags_MergeFlags2_1.xml new file mode 100644 index 0000000..d807d66 --- /dev/null +++ b/doc/generated/examples/mergeflags_MergeFlags2_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +['/include', '/usr/local/include', '/usr/include', '/usr/opt/include'] +scons: `.' is up to date. + diff --git a/doc/generated/examples/mergeflags_MergeFlags3_1.xml b/doc/generated/examples/mergeflags_MergeFlags3_1.xml new file mode 100644 index 0000000..324d960 --- /dev/null +++ b/doc/generated/examples/mergeflags_MergeFlags3_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +['-option', '-O1', '-whatever', '-O3'] +['/include', '/usr/local/include', '/usr/include', '/usr/opt/include'] +scons: `.' is up to date. + diff --git a/doc/generated/examples/misc_Exit_1.xml b/doc/generated/examples/misc_Exit_1.xml new file mode 100644 index 0000000..65ccf9b --- /dev/null +++ b/doc/generated/examples/misc_Exit_1.xml @@ -0,0 +1,7 @@ + +% scons -Q FUTURE=1 +The FUTURE option is not supported yet! +% scons -Q +cc -o hello.o -c hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/misc_FindFile1a_1.xml b/doc/generated/examples/misc_FindFile1a_1.xml new file mode 100644 index 0000000..2b18f6e --- /dev/null +++ b/doc/generated/examples/misc_FindFile1a_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +None +<class 'SCons.Node.FS.File'> exists +scons: `.' is up to date. + diff --git a/doc/generated/examples/misc_FindFile1b_1.xml b/doc/generated/examples/misc_FindFile1b_1.xml new file mode 100644 index 0000000..f16dc95 --- /dev/null +++ b/doc/generated/examples/misc_FindFile1b_1.xml @@ -0,0 +1,8 @@ + +% scons -Q +nonesuch.h: None +config.h: config.h +private.h: src/include/private.h +dist.h: include/dist.h +scons: `.' is up to date. + diff --git a/doc/generated/examples/misc_FindFile1d_1.xml b/doc/generated/examples/misc_FindFile1d_1.xml new file mode 100644 index 0000000..e0e8e8d --- /dev/null +++ b/doc/generated/examples/misc_FindFile1d_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +sub1/multiple +sub2/multiple +sub3/multiple +scons: `.' is up to date. + diff --git a/doc/generated/examples/misc_FindFile2_1.xml b/doc/generated/examples/misc_FindFile2_1.xml new file mode 100644 index 0000000..5aea252 --- /dev/null +++ b/doc/generated/examples/misc_FindFile2_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +leaf +derived +cat > derived leaf + diff --git a/doc/generated/examples/misc_FindFile2_2.xml b/doc/generated/examples/misc_FindFile2_2.xml new file mode 100644 index 0000000..5aea252 --- /dev/null +++ b/doc/generated/examples/misc_FindFile2_2.xml @@ -0,0 +1,6 @@ + +% scons -Q +leaf +derived +cat > derived leaf + diff --git a/doc/generated/examples/misc_FindFile3_1.xml b/doc/generated/examples/misc_FindFile3_1.xml new file mode 100644 index 0000000..026212c --- /dev/null +++ b/doc/generated/examples/misc_FindFile3_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +build/leaf +scons: `.' is up to date. + diff --git a/doc/generated/examples/misc_Flatten1_1.xml b/doc/generated/examples/misc_Flatten1_1.xml new file mode 100644 index 0000000..b25ef5f --- /dev/null +++ b/doc/generated/examples/misc_Flatten1_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +cc -o prog1.o -c prog1.c +cc -o prog2.o -c -DFOO prog2.c +cc -o prog1 prog1.o prog2.o + diff --git a/doc/generated/examples/misc_Flatten2_1.xml b/doc/generated/examples/misc_Flatten2_1.xml new file mode 100644 index 0000000..5c9502d --- /dev/null +++ b/doc/generated/examples/misc_Flatten2_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +AttributeError: 'NodeList' object has no attribute 'abspath': + File "/home/my/project/SConstruct", line 8: + print object_file.abspath + diff --git a/doc/generated/examples/nodes_GetBuildPath_1.xml b/doc/generated/examples/nodes_GetBuildPath_1.xml new file mode 100644 index 0000000..d8160f3 --- /dev/null +++ b/doc/generated/examples/nodes_GetBuildPath_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +['foo.c', 'sub/dir/value'] +scons: `.' is up to date. + diff --git a/doc/generated/examples/nodes_ex1_1.xml b/doc/generated/examples/nodes_ex1_1.xml new file mode 100644 index 0000000..fc72480 --- /dev/null +++ b/doc/generated/examples/nodes_ex1_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +cc -o goodbye.o -c -DGOODBYE goodbye.c +cc -o hello.o -c -DHELLO hello.c +cc -o hello hello.o goodbye.o + diff --git a/doc/generated/examples/nodes_ex1_2.xml b/doc/generated/examples/nodes_ex1_2.xml new file mode 100644 index 0000000..cc92ae6 --- /dev/null +++ b/doc/generated/examples/nodes_ex1_2.xml @@ -0,0 +1,7 @@ + +C:\>scons -Q +cl /Fogoodbye.obj /c goodbye.c -DGOODBYE +cl /Fohello.obj /c hello.c -DHELLO +link /nologo /OUT:hello.exe hello.obj goodbye.obj +embedManifestExeCheck(target, source, env) + diff --git a/doc/generated/examples/nodes_exists_1.xml b/doc/generated/examples/nodes_exists_1.xml new file mode 100644 index 0000000..c618a6c --- /dev/null +++ b/doc/generated/examples/nodes_exists_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +hello does not exist! +cc -o hello.o -c hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/nodes_print_1.xml b/doc/generated/examples/nodes_print_1.xml new file mode 100644 index 0000000..dd8fcbb --- /dev/null +++ b/doc/generated/examples/nodes_print_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +The object file is: hello.o +The program file is: hello +cc -o hello.o -c hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/nodes_print_2.xml b/doc/generated/examples/nodes_print_2.xml new file mode 100644 index 0000000..58bb703 --- /dev/null +++ b/doc/generated/examples/nodes_print_2.xml @@ -0,0 +1,8 @@ + +C:\>scons -Q +The object file is: hello.obj +The program file is: hello.exe +cl /Fohello.obj /c hello.c /nologo +link /nologo /OUT:hello.exe hello.obj +embedManifestExeCheck(target, source, env) + diff --git a/doc/generated/examples/output_Progress-TARGET_1.xml b/doc/generated/examples/output_Progress-TARGET_1.xml new file mode 100644 index 0000000..29abc9f --- /dev/null +++ b/doc/generated/examples/output_Progress-TARGET_1.xml @@ -0,0 +1,15 @@ + +% scons -Q +Evaluating SConstruct +Evaluating f1.c +Evaluating f1.o +cc -o f1.o -c f1.c +Evaluating f1 +cc -o f1 f1.o +Evaluating f2.c +Evaluating f2.o +cc -o f2.o -c f2.c +Evaluating f2 +cc -o f2 f2.o +Evaluating . + diff --git a/doc/generated/examples/output_ex1_1.xml b/doc/generated/examples/output_ex1_1.xml new file mode 100644 index 0000000..2576b31 --- /dev/null +++ b/doc/generated/examples/output_ex1_1.xml @@ -0,0 +1,10 @@ + +% scons -h +scons: Reading SConscript files ... +scons: done reading SConscript files. + +Type: 'scons program' to build the production program, + 'scons debug' to build the debug version. + +Use scons -H for help about command-line options. + diff --git a/doc/generated/examples/output_ex2_1.xml b/doc/generated/examples/output_ex2_1.xml new file mode 100644 index 0000000..e206c33 --- /dev/null +++ b/doc/generated/examples/output_ex2_1.xml @@ -0,0 +1,11 @@ + +C:\>scons -h +scons: Reading SConscript files ... +scons: done reading SConscript files. + +Type: 'scons program' to build the production program. + +Type: 'scons windebug' to build the Windows debug version. + +Use scons -H for help about command-line options. + diff --git a/doc/generated/examples/output_ex2_2.xml b/doc/generated/examples/output_ex2_2.xml new file mode 100644 index 0000000..126fc54 --- /dev/null +++ b/doc/generated/examples/output_ex2_2.xml @@ -0,0 +1,9 @@ + +% scons -h +scons: Reading SConscript files ... +scons: done reading SConscript files. + +Type: 'scons program' to build the production program. + +Use scons -H for help about command-line options. + diff --git a/doc/generated/examples/output_gbf2_1.xml b/doc/generated/examples/output_gbf2_1.xml new file mode 100644 index 0000000..e72965f --- /dev/null +++ b/doc/generated/examples/output_gbf2_1.xml @@ -0,0 +1,9 @@ + +% scons -Q +scons: `.' is up to date. +Build succeeded. +% scons -Q fail=1 +scons: *** [target] Source `source' not found, needed by target `target'. +FAILED!!!! +Failed building target: Source `source' not found, needed by target `target'. + diff --git a/doc/generated/examples/parseflags_ex1_1.xml b/doc/generated/examples/parseflags_ex1_1.xml new file mode 100644 index 0000000..d385662 --- /dev/null +++ b/doc/generated/examples/parseflags_ex1_1.xml @@ -0,0 +1,8 @@ + +% scons -Q +CPPPATH ['/opt/include'] +LIBPATH ['/opt/lib'] +LIBS ['foo'] +cc -o f1.o -c -I/opt/include f1.c +cc -o f1 f1.o -L/opt/lib -lfoo + diff --git a/doc/generated/examples/parseflags_ex1_2.xml b/doc/generated/examples/parseflags_ex1_2.xml new file mode 100644 index 0000000..29985a2 --- /dev/null +++ b/doc/generated/examples/parseflags_ex1_2.xml @@ -0,0 +1,9 @@ + +C:\>scons -Q +CPPPATH ['/opt/include'] +LIBPATH ['/opt/lib'] +LIBS ['foo'] +cl /Fof1.obj /c f1.c /nologo /I\opt\include +link /nologo /OUT:f1.exe /LIBPATH:\opt\lib foo.lib f1.obj +embedManifestExeCheck(target, source, env) + diff --git a/doc/generated/examples/parseflags_ex2_1.xml b/doc/generated/examples/parseflags_ex2_1.xml new file mode 100644 index 0000000..8026ca0 --- /dev/null +++ b/doc/generated/examples/parseflags_ex2_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +CCFLAGS -whatever +cc -o f1.o -c -whatever f1.c +cc -o f1 f1.o + diff --git a/doc/generated/examples/parseflags_ex3_1.xml b/doc/generated/examples/parseflags_ex3_1.xml new file mode 100644 index 0000000..d385662 --- /dev/null +++ b/doc/generated/examples/parseflags_ex3_1.xml @@ -0,0 +1,8 @@ + +% scons -Q +CPPPATH ['/opt/include'] +LIBPATH ['/opt/lib'] +LIBS ['foo'] +cc -o f1.o -c -I/opt/include f1.c +cc -o f1 f1.o -L/opt/lib -lfoo + diff --git a/doc/generated/examples/parseflags_ex4_1.xml b/doc/generated/examples/parseflags_ex4_1.xml new file mode 100644 index 0000000..d385662 --- /dev/null +++ b/doc/generated/examples/parseflags_ex4_1.xml @@ -0,0 +1,8 @@ + +% scons -Q +CPPPATH ['/opt/include'] +LIBPATH ['/opt/lib'] +LIBS ['foo'] +cc -o f1.o -c -I/opt/include f1.c +cc -o f1 f1.o -L/opt/lib -lfoo + diff --git a/doc/generated/examples/repositories_CPPPATH3_1.xml b/doc/generated/examples/repositories_CPPPATH3_1.xml new file mode 100644 index 0000000..558678d --- /dev/null +++ b/doc/generated/examples/repositories_CPPPATH3_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +cc -o hello.o -c -Idir1 -I/r1/dir1 -I/r2/dir1 -Idir2 -I/r1/dir2 -I/r2/dir2 -Idir3 -I/r1/dir3 -I/r2/dir3 hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/repositories_CPPPATH_1.xml b/doc/generated/examples/repositories_CPPPATH_1.xml new file mode 100644 index 0000000..f5ad671 --- /dev/null +++ b/doc/generated/examples/repositories_CPPPATH_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +cc -o hello.o -c -I. -I/usr/repository1 hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/repositories_ex1_1.xml b/doc/generated/examples/repositories_ex1_1.xml new file mode 100644 index 0000000..d1250c2 --- /dev/null +++ b/doc/generated/examples/repositories_ex1_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +cc -o hello.o -c hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/repositories_ex2_1.xml b/doc/generated/examples/repositories_ex2_1.xml new file mode 100644 index 0000000..146a074 --- /dev/null +++ b/doc/generated/examples/repositories_ex2_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +cc -o hello.o -c /usr/repository1/hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/repositories_ex3_1.xml b/doc/generated/examples/repositories_ex3_1.xml new file mode 100644 index 0000000..b3f07a2 --- /dev/null +++ b/doc/generated/examples/repositories_ex3_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +cc -o hello.o -c /usr/repository2/hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/repositories_ex4_1.xml b/doc/generated/examples/repositories_ex4_1.xml new file mode 100644 index 0000000..1d3e41a --- /dev/null +++ b/doc/generated/examples/repositories_ex4_1.xml @@ -0,0 +1,8 @@ + +% cd /usr/repository1 +% scons -Q +cc -o file1.o -c file1.c +cc -o file2.o -c file2.c +cc -o hello.o -c hello.c +cc -o hello hello.o file1.o file2.o + diff --git a/doc/generated/examples/repositories_quote1_1.xml b/doc/generated/examples/repositories_quote1_1.xml new file mode 100644 index 0000000..e9f362d --- /dev/null +++ b/doc/generated/examples/repositories_quote1_1.xml @@ -0,0 +1,5 @@ + +% scons -Q +cc -o hello.o -c -I. -I/usr/repository1 /usr/repository1/hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/separate_builddir_1.xml b/doc/generated/examples/separate_builddir_1.xml new file mode 100644 index 0000000..e470a6d --- /dev/null +++ b/doc/generated/examples/separate_builddir_1.xml @@ -0,0 +1,9 @@ + +% ls src +hello.c +% scons -Q +cc -o build/hello.o -c build/hello.c +cc -o build/hello build/hello.o +% ls build +hello hello.c hello.o + diff --git a/doc/generated/examples/separate_builddir_sconscript_1.xml b/doc/generated/examples/separate_builddir_sconscript_1.xml new file mode 100644 index 0000000..34a07bd --- /dev/null +++ b/doc/generated/examples/separate_builddir_sconscript_1.xml @@ -0,0 +1,9 @@ + +% ls src +SConscript hello.c +% scons -Q +cc -o build/hello.o -c build/hello.c +cc -o build/hello build/hello.o +% ls build +SConscript hello hello.c hello.o + diff --git a/doc/generated/examples/separate_builddir_sconscript_SConstruct b/doc/generated/examples/separate_builddir_sconscript_SConstruct new file mode 100644 index 0000000..d53d1c6 --- /dev/null +++ b/doc/generated/examples/separate_builddir_sconscript_SConstruct @@ -0,0 +1,4 @@ + +VariantDir('build', 'src') +SConscript('build/SConscript') + diff --git a/doc/generated/examples/separate_duplicate0_1.xml b/doc/generated/examples/separate_duplicate0_1.xml new file mode 100644 index 0000000..13a25d3 --- /dev/null +++ b/doc/generated/examples/separate_duplicate0_1.xml @@ -0,0 +1,9 @@ + +% ls src +hello.c +% scons -Q +cc -o build/hello.o -c src/hello.c +cc -o build/hello build/hello.o +% ls build +hello hello.o + diff --git a/doc/generated/examples/separate_ex1_1.xml b/doc/generated/examples/separate_ex1_1.xml new file mode 100644 index 0000000..34a07bd --- /dev/null +++ b/doc/generated/examples/separate_ex1_1.xml @@ -0,0 +1,9 @@ + +% ls src +SConscript hello.c +% scons -Q +cc -o build/hello.o -c build/hello.c +cc -o build/hello build/hello.o +% ls build +SConscript hello hello.c hello.o + diff --git a/doc/generated/examples/separate_glob_builddir_sconscript_1.xml b/doc/generated/examples/separate_glob_builddir_sconscript_1.xml new file mode 100644 index 0000000..95b7650 --- /dev/null +++ b/doc/generated/examples/separate_glob_builddir_sconscript_1.xml @@ -0,0 +1,10 @@ + +% ls src +SConscript f1.c f2.c f2.h +% scons -Q +cc -o build/f1.o -c build/f1.c +cc -o build/f2.o -c build/f2.c +cc -o build/hello build/f1.o build/f2.o +% ls build +SConscript f1.c f1.o f2.c f2.h f2.o hello + diff --git a/doc/generated/examples/sideeffect_parallel_1.xml b/doc/generated/examples/sideeffect_parallel_1.xml new file mode 100644 index 0000000..18f834a --- /dev/null +++ b/doc/generated/examples/sideeffect_parallel_1.xml @@ -0,0 +1,5 @@ + +% scons -Q --jobs=2 +echo > file1.out data1 +echo > file2.out data2 + diff --git a/doc/generated/examples/sideeffect_shared_1.xml b/doc/generated/examples/sideeffect_shared_1.xml new file mode 100644 index 0000000..11cfec7 --- /dev/null +++ b/doc/generated/examples/sideeffect_shared_1.xml @@ -0,0 +1,5 @@ + +% scons -Q --jobs=2 +./build --log logfile.txt file1.in file1.out +./build --log logfile.txt file2.in file2.out + diff --git a/doc/generated/examples/sideeffect_simple_1.xml b/doc/generated/examples/sideeffect_simple_1.xml new file mode 100644 index 0000000..9fdf074 --- /dev/null +++ b/doc/generated/examples/sideeffect_simple_1.xml @@ -0,0 +1,10 @@ + +% scons -Q --jobs=2 + File "/home/my/project/SConstruct", line 4 + + 'echo >$TARGET data1; echo >log updated file1')) + + ^ + +SyntaxError: invalid syntax + diff --git a/doc/generated/examples/simple_Object_1.xml b/doc/generated/examples/simple_Object_1.xml new file mode 100644 index 0000000..33a86a7 --- /dev/null +++ b/doc/generated/examples/simple_Object_1.xml @@ -0,0 +1,8 @@ + +% scons +scons: Reading SConscript files ... +scons: done reading SConscript files. +scons: Building targets ... +cc -o hello.o -c hello.c +scons: done building targets. + diff --git a/doc/generated/examples/simple_Object_2.xml b/doc/generated/examples/simple_Object_2.xml new file mode 100644 index 0000000..42b773a --- /dev/null +++ b/doc/generated/examples/simple_Object_2.xml @@ -0,0 +1,8 @@ + +C:\>scons +scons: Reading SConscript files ... +scons: done reading SConscript files. +scons: Building targets ... +cl /Fohello.obj /c hello.c /nologo +scons: done building targets. + diff --git a/doc/generated/examples/simple_clean_1.xml b/doc/generated/examples/simple_clean_1.xml new file mode 100644 index 0000000..0affa24 --- /dev/null +++ b/doc/generated/examples/simple_clean_1.xml @@ -0,0 +1,16 @@ + +% scons +scons: Reading SConscript files ... +scons: done reading SConscript files. +scons: Building targets ... +cc -o hello.o -c hello.c +cc -o hello hello.o +scons: done building targets. +% scons -c +scons: Reading SConscript files ... +scons: done reading SConscript files. +scons: Cleaning targets ... +Removed hello.o +Removed hello +scons: done cleaning targets. + diff --git a/doc/generated/examples/simple_clean_2.xml b/doc/generated/examples/simple_clean_2.xml new file mode 100644 index 0000000..3ccedf4 --- /dev/null +++ b/doc/generated/examples/simple_clean_2.xml @@ -0,0 +1,17 @@ + +C:\>scons +scons: Reading SConscript files ... +scons: done reading SConscript files. +scons: Building targets ... +cl /Fohello.obj /c hello.c /nologo +link /nologo /OUT:hello.exe hello.obj +embedManifestExeCheck(target, source, env) +scons: done building targets. +C:\>scons -c +scons: Reading SConscript files ... +scons: done reading SConscript files. +scons: Cleaning targets ... +Removed hello.obj +Removed hello.exe +scons: done cleaning targets. + diff --git a/doc/generated/examples/simple_declarative_1.xml b/doc/generated/examples/simple_declarative_1.xml new file mode 100644 index 0000000..effcd54 --- /dev/null +++ b/doc/generated/examples/simple_declarative_1.xml @@ -0,0 +1,14 @@ + +% scons +scons: Reading SConscript files ... +Calling Program('hello.c') +Calling Program('goodbye.c') +Finished calling Program() +scons: done reading SConscript files. +scons: Building targets ... +cc -o goodbye.o -c goodbye.c +cc -o goodbye goodbye.o +cc -o hello.o -c hello.c +cc -o hello hello.o +scons: done building targets. + diff --git a/doc/generated/examples/simple_ex1_1.xml b/doc/generated/examples/simple_ex1_1.xml new file mode 100644 index 0000000..a855deb --- /dev/null +++ b/doc/generated/examples/simple_ex1_1.xml @@ -0,0 +1,9 @@ + +% scons +scons: Reading SConscript files ... +scons: done reading SConscript files. +scons: Building targets ... +cc -o hello.o -c hello.c +cc -o hello hello.o +scons: done building targets. + diff --git a/doc/generated/examples/simple_ex1_2.xml b/doc/generated/examples/simple_ex1_2.xml new file mode 100644 index 0000000..b3d11cd --- /dev/null +++ b/doc/generated/examples/simple_ex1_2.xml @@ -0,0 +1,10 @@ + +C:\>scons +scons: Reading SConscript files ... +scons: done reading SConscript files. +scons: Building targets ... +cl /Fohello.obj /c hello.c /nologo +link /nologo /OUT:hello.exe hello.obj +embedManifestExeCheck(target, source, env) +scons: done building targets. + diff --git a/doc/generated/examples/simple_ex1_3.xml b/doc/generated/examples/simple_ex1_3.xml new file mode 100644 index 0000000..b3d11cd --- /dev/null +++ b/doc/generated/examples/simple_ex1_3.xml @@ -0,0 +1,10 @@ + +C:\>scons +scons: Reading SConscript files ... +scons: done reading SConscript files. +scons: Building targets ... +cl /Fohello.obj /c hello.c /nologo +link /nologo /OUT:hello.exe hello.obj +embedManifestExeCheck(target, source, env) +scons: done building targets. + diff --git a/doc/generated/examples/simple_ex1_4.xml b/doc/generated/examples/simple_ex1_4.xml new file mode 100644 index 0000000..4087bcf --- /dev/null +++ b/doc/generated/examples/simple_ex1_4.xml @@ -0,0 +1,6 @@ + +C:\>scons -Q +cl /Fohello.obj /c hello.c /nologo +link /nologo /OUT:hello.exe hello.obj +embedManifestExeCheck(target, source, env) + diff --git a/doc/generated/examples/simple_java_1.xml b/doc/generated/examples/simple_java_1.xml new file mode 100644 index 0000000..53cc8aa --- /dev/null +++ b/doc/generated/examples/simple_java_1.xml @@ -0,0 +1,8 @@ + +% scons +scons: Reading SConscript files ... +scons: done reading SConscript files. +scons: Building targets ... +javac -d classes -sourcepath src src/hello.java +scons: done building targets. + diff --git a/doc/generated/examples/sourcecode_bitkeeper_1.xml b/doc/generated/examples/sourcecode_bitkeeper_1.xml new file mode 100644 index 0000000..c02c973 --- /dev/null +++ b/doc/generated/examples/sourcecode_bitkeeper_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +bk get hello.c +cc -o hello.o -c hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/sourcecode_cvs_1.xml b/doc/generated/examples/sourcecode_cvs_1.xml new file mode 100644 index 0000000..c2165cb --- /dev/null +++ b/doc/generated/examples/sourcecode_cvs_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +cvs -d /usr/local/CVS co hello.c +cc -o hello.o -c hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/sourcecode_rcs_1.xml b/doc/generated/examples/sourcecode_rcs_1.xml new file mode 100644 index 0000000..75def9c --- /dev/null +++ b/doc/generated/examples/sourcecode_rcs_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +co hello.c +cc -o hello.o -c hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/sourcecode_sccs_1.xml b/doc/generated/examples/sourcecode_sccs_1.xml new file mode 100644 index 0000000..0be5f83 --- /dev/null +++ b/doc/generated/examples/sourcecode_sccs_1.xml @@ -0,0 +1,6 @@ + +% scons -Q +sccs get hello.c +cc -o hello.o -c hello.c +cc -o hello hello.o + diff --git a/doc/generated/examples/tasks_ex1_1.xml b/doc/generated/examples/tasks_ex1_1.xml new file mode 100644 index 0000000..f8b323e --- /dev/null +++ b/doc/generated/examples/tasks_ex1_1.xml @@ -0,0 +1,7 @@ + +% scons -Q +cc -o app main.cpp +cat < foo.bar2 > foo.cpp +cc -o app2 main2.cpp foo.cpp +cat < test.bar > test.h + diff --git a/doc/generated/examples/tasks_ex1_main.cpp b/doc/generated/examples/tasks_ex1_main.cpp new file mode 100644 index 0000000..2a37cad --- /dev/null +++ b/doc/generated/examples/tasks_ex1_main.cpp @@ -0,0 +1,3 @@ + +#include "test.h" + diff --git a/doc/generated/examples/troubleshoot_Dump_1.xml b/doc/generated/examples/troubleshoot_Dump_1.xml new file mode 100644 index 0000000..d1191eb --- /dev/null +++ b/doc/generated/examples/troubleshoot_Dump_1.xml @@ -0,0 +1,74 @@ + +% scons +scons: Reading SConscript files ... +{ 'BUILDERS': {'_InternalInstall': <function InstallBuilderWrapper at 0x700000&gt;, '_InternalInstallVersionedLib': <function InstallVersionedBuilderWrapper at 0x700000&gt;, '_InternalInstallAs': <function InstallAsBuilderWrapper at 0x700000&gt;}, + 'CONFIGUREDIR': '#/.sconf_temp', + 'CONFIGURELOG': '#/config.log', + 'CPPSUFFIXES': [ '.c', + '.C', + '.cxx', + '.cpp', + '.c++', + '.cc', + '.h', + '.H', + '.hxx', + '.hpp', + '.hh', + '.F', + '.fpp', + '.FPP', + '.m', + '.mm', + '.S', + '.spp', + '.SPP', + '.sx'], + 'DSUFFIXES': ['.d'], + 'Dir': <SCons.Defaults.Variable_Method_Caller object at 0x700000&gt;, + 'Dirs': <SCons.Defaults.Variable_Method_Caller object at 0x700000&gt;, + 'ENV': { 'PATH': '/usr/local/bin:/opt/bin:/bin:/usr/bin'}, + 'ESCAPE': <function escape at 0x700000&gt;, + 'File': <SCons.Defaults.Variable_Method_Caller object at 0x700000&gt;, + 'HOST_ARCH': None, + 'HOST_OS': None, + 'IDLSUFFIXES': ['.idl', '.IDL'], + 'INSTALL': <function copyFunc at 0x700000&gt;, + 'INSTALLVERSIONEDLIB': <function copyFuncVersionedLib at 0x700000&gt;, + 'LIBPREFIX': 'lib', + 'LIBPREFIXES': ['$LIBPREFIX'], + 'LIBSUFFIX': '.a', + 'LIBSUFFIXES': ['$LIBSUFFIX', '$SHLIBSUFFIX'], + 'MAXLINELENGTH': 128072, + 'OBJPREFIX': '', + 'OBJSUFFIX': '.o', + 'PLATFORM': 'posix', + 'PROGPREFIX': '', + 'PROGSUFFIX': '', + 'PSPAWN': <function piped_env_spawn at 0x700000&gt;, + 'RDirs': <SCons.Defaults.Variable_Method_Caller object at 0x700000&gt;, + 'SCANNERS': [], + 'SHELL': 'sh', + 'SHLIBPREFIX': '$LIBPREFIX', + 'SHLIBSUFFIX': '.so', + 'SHOBJPREFIX': '$OBJPREFIX', + 'SHOBJSUFFIX': '$OBJSUFFIX', + 'SPAWN': <function spawnvpe_spawn at 0x700000&gt;, + 'TARGET_ARCH': None, + 'TARGET_OS': None, + 'TEMPFILE': <class 'SCons.Platform.TempFileMunge'>, + 'TEMPFILEPREFIX': '@', + 'TOOLS': ['install', 'install'], + '_CPPDEFFLAGS': '${_defines(CPPDEFPREFIX, CPPDEFINES, CPPDEFSUFFIX, __env__)}', + '_CPPINCFLAGS': '$( ${_concat(INCPREFIX, CPPPATH, INCSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)', + '_LIBDIRFLAGS': '$( ${_concat(LIBDIRPREFIX, LIBPATH, LIBDIRSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)', + '_LIBFLAGS': '${_concat(LIBLINKPREFIX, LIBS, LIBLINKSUFFIX, __env__)}', + '__RPATH': '$_RPATH', + '_concat': <function _concat at 0x700000&gt;, + '_defines': <function _defines at 0x700000&gt;, + '_stripixes': <function _stripixes at 0x700000&gt;} +scons: done reading SConscript files. +scons: Building targets ... +scons: `.' is up to date. +scons: done building targets. + diff --git a/doc/generated/examples/troubleshoot_Dump_2.xml b/doc/generated/examples/troubleshoot_Dump_2.xml new file mode 100644 index 0000000..2fdb1bc --- /dev/null +++ b/doc/generated/examples/troubleshoot_Dump_2.xml @@ -0,0 +1,107 @@ + +C:\>scons +scons: Reading SConscript files ... +{ 'BUILDERS': {'_InternalInstallVersionedLib': <function InstallVersionedBuilderWrapper at 0x700000&gt;, '_InternalInstall': <function InstallBuilderWrapper at 0x700000&gt;, 'Object': <SCons.Builder.CompositeBuilder object at 0x700000&gt;, 'PCH': <SCons.Builder.BuilderBase object at 0x700000&gt;, 'RES': <SCons.Builder.BuilderBase object at 0x700000&gt;, 'SharedObject': <SCons.Builder.CompositeBuilder object at 0x700000&gt;, 'StaticObject': <SCons.Builder.CompositeBuilder object at 0x700000&gt;, '_InternalInstallAs': <function InstallAsBuilderWrapper at 0x700000&gt;}, + 'CC': 'cl', + 'CCCOM': <SCons.Action.FunctionAction object at 0x700000&gt;, + 'CCFLAGS': ['/nologo'], + 'CCPCHFLAGS': ['${(PCH and "/Yu%s \\"/Fp%s\\""%(PCHSTOP or "",File(PCH))) or ""}'], + 'CCPDBFLAGS': ['${(PDB and "/Z7") or ""}'], + 'CFILESUFFIX': '.c', + 'CFLAGS': [], + 'CONFIGUREDIR': '#/.sconf_temp', + 'CONFIGURELOG': '#/config.log', + 'CPPDEFPREFIX': '/D', + 'CPPDEFSUFFIX': '', + 'CPPSUFFIXES': [ '.c', + '.C', + '.cxx', + '.cpp', + '.c++', + '.cc', + '.h', + '.H', + '.hxx', + '.hpp', + '.hh', + '.F', + '.fpp', + '.FPP', + '.m', + '.mm', + '.S', + '.spp', + '.SPP', + '.sx'], + 'CXX': '$CC', + 'CXXCOM': '${TEMPFILE("$CXX $_MSVC_OUTPUT_FLAG /c $CHANGED_SOURCES $CXXFLAGS $CCFLAGS $_CCCOMCOM")}', + 'CXXFILESUFFIX': '.cc', + 'CXXFLAGS': ['$(', '/TP', '$)'], + 'DSUFFIXES': ['.d'], + 'Dir': <SCons.Defaults.Variable_Method_Caller object at 0x700000&gt;, + 'Dirs': <SCons.Defaults.Variable_Method_Caller object at 0x700000&gt;, + 'ENV': { 'PATH': 'C:\\WINDOWS\\System32', + 'PATHEXT': '.COM;.EXE;.BAT;.CMD', + 'SystemRoot': 'C:\\WINDOWS'}, + 'ESCAPE': <function escape at 0x700000&gt;, + 'File': <SCons.Defaults.Variable_Method_Caller object at 0x700000&gt;, + 'HOST_ARCH': '', + 'HOST_OS': 'win32', + 'IDLSUFFIXES': ['.idl', '.IDL'], + 'INCPREFIX': '/I', + 'INCSUFFIX': '', + 'INSTALL': <function copyFunc at 0x700000&gt;, + 'INSTALLVERSIONEDLIB': <function copyFuncVersionedLib at 0x700000&gt;, + 'LIBPREFIX': '', + 'LIBPREFIXES': ['$LIBPREFIX'], + 'LIBSUFFIX': '.lib', + 'LIBSUFFIXES': ['$LIBSUFFIX'], + 'MAXLINELENGTH': 2048, + 'MSVC_SETUP_RUN': True, + 'OBJPREFIX': '', + 'OBJSUFFIX': '.obj', + 'PCHCOM': '$CXX /Fo${TARGETS[1]} $CXXFLAGS $CCFLAGS $CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS /c $SOURCES /Yc$PCHSTOP /Fp${TARGETS[0]} $CCPDBFLAGS $PCHPDBFLAGS', + 'PCHPDBFLAGS': ['${(PDB and "/Yd") or ""}'], + 'PLATFORM': 'win32', + 'PROGPREFIX': '', + 'PROGSUFFIX': '.exe', + 'PSPAWN': <function piped_spawn at 0x700000&gt;, + 'RC': 'rc', + 'RCCOM': <SCons.Action.FunctionAction object at 0x700000&gt;, + 'RCFLAGS': [], + 'RCSUFFIXES': ['.rc', '.rc2'], + 'RDirs': <SCons.Defaults.Variable_Method_Caller object at 0x700000&gt;, + 'SCANNERS': [], + 'SHCC': '$CC', + 'SHCCCOM': <SCons.Action.FunctionAction object at 0x700000&gt;, + 'SHCCFLAGS': ['$CCFLAGS'], + 'SHCFLAGS': ['$CFLAGS'], + 'SHCXX': '$CXX', + 'SHCXXCOM': '${TEMPFILE("$SHCXX $_MSVC_OUTPUT_FLAG /c $CHANGED_SOURCES $SHCXXFLAGS $SHCCFLAGS $_CCCOMCOM")}', + 'SHCXXFLAGS': ['$CXXFLAGS'], + 'SHELL': None, + 'SHLIBPREFIX': '', + 'SHLIBSUFFIX': '.dll', + 'SHOBJPREFIX': '$OBJPREFIX', + 'SHOBJSUFFIX': '$OBJSUFFIX', + 'SPAWN': <function spawn at 0x700000&gt;, + 'STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME': 1, + 'TARGET_ARCH': '', + 'TARGET_OS': 'win32', + 'TEMPFILE': <class 'SCons.Platform.TempFileMunge'>, + 'TEMPFILEPREFIX': '@', + 'TOOLS': ['msvc', 'install', 'install'], + '_CCCOMCOM': '$CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS $CCPCHFLAGS $CCPDBFLAGS', + '_CPPDEFFLAGS': '${_defines(CPPDEFPREFIX, CPPDEFINES, CPPDEFSUFFIX, __env__)}', + '_CPPINCFLAGS': '$( ${_concat(INCPREFIX, CPPPATH, INCSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)', + '_LIBDIRFLAGS': '$( ${_concat(LIBDIRPREFIX, LIBPATH, LIBDIRSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)', + '_LIBFLAGS': '${_concat(LIBLINKPREFIX, LIBS, LIBLINKSUFFIX, __env__)}', + '_MSVC_OUTPUT_FLAG': <function msvc_output_flag at 0x700000&gt;, + '_concat': <function _concat at 0x700000&gt;, + '_defines': <function _defines at 0x700000&gt;, + '_stripixes': <function _stripixes at 0x700000&gt;} +scons: done reading SConscript files. +scons: Building targets ... +scons: `.' is up to date. +scons: done building targets. + diff --git a/doc/generated/examples/troubleshoot_Dump_ENV_1.xml b/doc/generated/examples/troubleshoot_Dump_ENV_1.xml new file mode 100644 index 0000000..818bbcc --- /dev/null +++ b/doc/generated/examples/troubleshoot_Dump_ENV_1.xml @@ -0,0 +1,9 @@ + +% scons +scons: Reading SConscript files ... +{ 'PATH': '/usr/local/bin:/opt/bin:/bin:/usr/bin'} +scons: done reading SConscript files. +scons: Building targets ... +scons: `.' is up to date. +scons: done building targets. + diff --git a/doc/generated/examples/troubleshoot_Dump_ENV_2.xml b/doc/generated/examples/troubleshoot_Dump_ENV_2.xml new file mode 100644 index 0000000..4ea3a2f --- /dev/null +++ b/doc/generated/examples/troubleshoot_Dump_ENV_2.xml @@ -0,0 +1,11 @@ + +C:\>scons +scons: Reading SConscript files ... +{ 'PATH': 'C:\\WINDOWS\\System32', + 'PATHEXT': '.COM;.EXE;.BAT;.CMD', + 'SystemRoot': 'C:\\WINDOWS'} +scons: done reading SConscript files. +scons: Building targets ... +scons: `.' is up to date. +scons: done building targets. + diff --git a/doc/generated/examples/troubleshoot_explain1_1.xml b/doc/generated/examples/troubleshoot_explain1_1.xml new file mode 100644 index 0000000..50fb303 --- /dev/null +++ b/doc/generated/examples/troubleshoot_explain1_1.xml @@ -0,0 +1,8 @@ + +% scons -Q +cp file.in file.oout +% scons -Q +cp file.in file.oout +% scons -Q +cp file.in file.oout + diff --git a/doc/generated/examples/troubleshoot_explain1_2.xml b/doc/generated/examples/troubleshoot_explain1_2.xml new file mode 100644 index 0000000..a58a2d3 --- /dev/null +++ b/doc/generated/examples/troubleshoot_explain1_2.xml @@ -0,0 +1,5 @@ + +% scons -Q --debug=explain +scons: building `file.out' because it doesn't exist +cp file.in file.oout + diff --git a/doc/generated/examples/troubleshoot_explain1_3.xml b/doc/generated/examples/troubleshoot_explain1_3.xml new file mode 100644 index 0000000..b62be87 --- /dev/null +++ b/doc/generated/examples/troubleshoot_explain1_3.xml @@ -0,0 +1,7 @@ + +% scons -Q --warn=target-not-built +scons: building `file.out' because it doesn't exist +cp file.in file.oout + +scons: warning: Cannot find target file.out after building + diff --git a/doc/generated/examples/troubleshoot_explain2_1.xml b/doc/generated/examples/troubleshoot_explain2_1.xml new file mode 100644 index 0000000..3b5374f --- /dev/null +++ b/doc/generated/examples/troubleshoot_explain2_1.xml @@ -0,0 +1,13 @@ + +% scons -Q +cc -o file1.o -c file1.c +cc -o file2.o -c file2.c +cc -o file3.o -c file3.c +cc -o prog file1.o file2.o file3.o +% [CHANGE THE CONTENTS OF file2.c] +% scons -Q --debug=explain +scons: rebuilding `file2.o' because `file2.c' changed +cc -o file2.o -c file2.c +scons: rebuilding `prog' because `file2.o' changed +cc -o prog file1.o file2.o file3.o + diff --git a/doc/generated/examples/troubleshoot_explain3_1.xml b/doc/generated/examples/troubleshoot_explain3_1.xml new file mode 100644 index 0000000..7e89a26 --- /dev/null +++ b/doc/generated/examples/troubleshoot_explain3_1.xml @@ -0,0 +1,17 @@ + +% scons -Q +cc -o file1.o -c -I. file1.c +cc -o file2.o -c -I. file2.c +cc -o file3.o -c -I. file3.c +cc -o prog file1.o file2.o file3.o +% [CHANGE THE CONTENTS OF hello.h] +% scons -Q --debug=explain +scons: rebuilding `file1.o' because `hello.h' changed +cc -o file1.o -c -I. file1.c +scons: rebuilding `file3.o' because `hello.h' changed +cc -o file3.o -c -I. file3.c +scons: rebuilding `prog' because: + `file1.o' changed + `file3.o' changed +cc -o prog file1.o file2.o file3.o + diff --git a/doc/generated/examples/troubleshoot_findlibs_1.xml b/doc/generated/examples/troubleshoot_findlibs_1.xml new file mode 100644 index 0000000..0b34b73 --- /dev/null +++ b/doc/generated/examples/troubleshoot_findlibs_1.xml @@ -0,0 +1,14 @@ + +% scons -Q --debug=findlibs + findlibs: looking for 'libfoo.a' in 'libs1' ... + findlibs: ... FOUND 'libfoo.a' in 'libs1' + findlibs: looking for 'libfoo.so' in 'libs1' ... + findlibs: looking for 'libfoo.so' in 'libs2' ... + findlibs: looking for 'libbar.a' in 'libs1' ... + findlibs: looking for 'libbar.a' in 'libs2' ... + findlibs: ... FOUND 'libbar.a' in 'libs2' + findlibs: looking for 'libbar.so' in 'libs1' ... + findlibs: looking for 'libbar.so' in 'libs2' ... +cc -o prog.o -c prog.c +cc -o prog prog.o -Llibs1 -Llibs2 -lfoo -lbar + diff --git a/doc/generated/examples/troubleshoot_stacktrace_1.xml b/doc/generated/examples/troubleshoot_stacktrace_1.xml new file mode 100644 index 0000000..7228f77 --- /dev/null +++ b/doc/generated/examples/troubleshoot_stacktrace_1.xml @@ -0,0 +1,4 @@ + +% scons -Q +scons: *** [prog.o] Source `prog.c' not found, needed by target `prog.o'. + diff --git a/doc/generated/examples/troubleshoot_stacktrace_2.xml b/doc/generated/examples/troubleshoot_stacktrace_2.xml new file mode 100644 index 0000000..6b88dd1 --- /dev/null +++ b/doc/generated/examples/troubleshoot_stacktrace_2.xml @@ -0,0 +1,13 @@ + +% scons -Q --debug=stacktrace +scons: *** [prog.o] Source `prog.c' not found, needed by target `prog.o'. +scons: internal stack trace: + File "bootstrap/src/engine/SCons/Job.py", line 199, in start + task.prepare() + File "bootstrap/src/engine/SCons/Script/Main.py", line 168, in prepare + return SCons.Taskmaster.OutOfDateTask.prepare(self) + File "bootstrap/src/engine/SCons/Taskmaster.py", line 189, in prepare + executor.prepare() + File "bootstrap/src/engine/SCons/Executor.py", line 392, in prepare + raise SCons.Errors.StopError(msg % (s, self.batches[0].targets[0])) + diff --git a/doc/generated/examples/troubleshoot_taskmastertrace_1.xml b/doc/generated/examples/troubleshoot_taskmastertrace_1.xml new file mode 100644 index 0000000..f1c2582 --- /dev/null +++ b/doc/generated/examples/troubleshoot_taskmastertrace_1.xml @@ -0,0 +1,63 @@ + +% scons -Q --taskmastertrace=- prog + +Taskmaster: Looking for a node to evaluate +Taskmaster: Considering node <no_state 0 'prog'> and its children: +Taskmaster: <no_state 0 'prog.o'> +Taskmaster: adjusted ref count: <pending 1 'prog'>, child 'prog.o' +Taskmaster: Considering node <no_state 0 'prog.o'> and its children: +Taskmaster: <no_state 0 'prog.c'> +Taskmaster: <no_state 0 'inc.h'> +Taskmaster: adjusted ref count: <pending 1 'prog.o'>, child 'prog.c' +Taskmaster: adjusted ref count: <pending 2 'prog.o'>, child 'inc.h' +Taskmaster: Considering node <no_state 0 'prog.c'> and its children: +Taskmaster: Evaluating <pending 0 'prog.c'> + +Task.make_ready_current(): node <pending 0 'prog.c'> +Task.prepare(): node <up_to_date 0 'prog.c'> +Task.executed_with_callbacks(): node <up_to_date 0 'prog.c'> +Task.postprocess(): node <up_to_date 0 'prog.c'> +Task.postprocess(): removing <up_to_date 0 'prog.c'> +Task.postprocess(): adjusted parent ref count <pending 1 'prog.o'> + +Taskmaster: Looking for a node to evaluate +Taskmaster: Considering node <no_state 0 'inc.h'> and its children: +Taskmaster: Evaluating <pending 0 'inc.h'> + +Task.make_ready_current(): node <pending 0 'inc.h'> +Task.prepare(): node <up_to_date 0 'inc.h'> +Task.executed_with_callbacks(): node <up_to_date 0 'inc.h'> +Task.postprocess(): node <up_to_date 0 'inc.h'> +Task.postprocess(): removing <up_to_date 0 'inc.h'> +Task.postprocess(): adjusted parent ref count <pending 0 'prog.o'> + +Taskmaster: Looking for a node to evaluate +Taskmaster: Considering node <pending 0 'prog.o'> and its children: +Taskmaster: <up_to_date 0 'prog.c'> +Taskmaster: <up_to_date 0 'inc.h'> +Taskmaster: Evaluating <pending 0 'prog.o'> + +Task.make_ready_current(): node <pending 0 'prog.o'> +Task.prepare(): node <executing 0 'prog.o'> +Task.execute(): node <executing 0 'prog.o'> +cc -o prog.o -c -I. prog.c +Task.executed_with_callbacks(): node <executing 0 'prog.o'> +Task.postprocess(): node <executed 0 'prog.o'> +Task.postprocess(): removing <executed 0 'prog.o'> +Task.postprocess(): adjusted parent ref count <pending 0 'prog'> + +Taskmaster: Looking for a node to evaluate +Taskmaster: Considering node <pending 0 'prog'> and its children: +Taskmaster: <executed 0 'prog.o'> +Taskmaster: Evaluating <pending 0 'prog'> + +Task.make_ready_current(): node <pending 0 'prog'> +Task.prepare(): node <executing 0 'prog'> +Task.execute(): node <executing 0 'prog'> +cc -o prog prog.o +Task.executed_with_callbacks(): node <executing 0 'prog'> +Task.postprocess(): node <executed 0 'prog'> + +Taskmaster: Looking for a node to evaluate +Taskmaster: No candidate anymore. + diff --git a/doc/generated/examples/troubleshoot_tree1_1.xml b/doc/generated/examples/troubleshoot_tree1_1.xml new file mode 100644 index 0000000..c082c0e --- /dev/null +++ b/doc/generated/examples/troubleshoot_tree1_1.xml @@ -0,0 +1,32 @@ + +% scons -Q --tree=all +cc -o f1.o -c -I. f1.c +cc -o f2.o -c -I. f2.c +cc -o f3.o -c -I. f3.c +cc -o prog f1.o f2.o f3.o ++-. + +-SConstruct + +-f1.c + +-f1.o + | +-f1.c + | +-inc.h + +-f2.c + +-f2.o + | +-f2.c + | +-inc.h + +-f3.c + +-f3.o + | +-f3.c + | +-inc.h + +-inc.h + +-prog + +-f1.o + | +-f1.c + | +-inc.h + +-f2.o + | +-f2.c + | +-inc.h + +-f3.o + +-f3.c + +-inc.h + diff --git a/doc/generated/examples/troubleshoot_tree1_2.xml b/doc/generated/examples/troubleshoot_tree1_2.xml new file mode 100644 index 0000000..0a27f8b --- /dev/null +++ b/doc/generated/examples/troubleshoot_tree1_2.xml @@ -0,0 +1,7 @@ + +% scons -Q --tree=all f2.o +cc -o f2.o -c -I. f2.c ++-f2.o + +-f2.c + +-inc.h + diff --git a/doc/generated/examples/troubleshoot_tree1_3.xml b/doc/generated/examples/troubleshoot_tree1_3.xml new file mode 100644 index 0000000..7d26ee9 --- /dev/null +++ b/doc/generated/examples/troubleshoot_tree1_3.xml @@ -0,0 +1,11 @@ + +% scons -Q --tree=all f1.o f3.o +cc -o f1.o -c -I. f1.c ++-f1.o + +-f1.c + +-inc.h +cc -o f3.o -c -I. f3.c ++-f3.o + +-f3.c + +-inc.h + diff --git a/doc/generated/examples/troubleshoot_tree1_4.xml b/doc/generated/examples/troubleshoot_tree1_4.xml new file mode 100644 index 0000000..0d974db --- /dev/null +++ b/doc/generated/examples/troubleshoot_tree1_4.xml @@ -0,0 +1,43 @@ + +% scons -Q --tree=status +cc -o f1.o -c -I. f1.c +cc -o f2.o -c -I. f2.c +cc -o f3.o -c -I. f3.c +cc -o prog f1.o f2.o f3.o + E = exists + R = exists in repository only + b = implicit builder + B = explicit builder + S = side effect + P = precious + A = always build + C = current + N = no clean + H = no cache + +[E b ]+-. +[E C ] +-SConstruct +[E C ] +-f1.c +[E B C ] +-f1.o +[E C ] | +-f1.c +[E C ] | +-inc.h +[E C ] +-f2.c +[E B C ] +-f2.o +[E C ] | +-f2.c +[E C ] | +-inc.h +[E C ] +-f3.c +[E B C ] +-f3.o +[E C ] | +-f3.c +[E C ] | +-inc.h +[E C ] +-inc.h +[E B C ] +-prog +[E B C ] +-f1.o +[E C ] | +-f1.c +[E C ] | +-inc.h +[E B C ] +-f2.o +[E C ] | +-f2.c +[E C ] | +-inc.h +[E B C ] +-f3.o +[E C ] +-f3.c +[E C ] +-inc.h + diff --git a/doc/generated/examples/troubleshoot_tree1_5.xml b/doc/generated/examples/troubleshoot_tree1_5.xml new file mode 100644 index 0000000..a219aef --- /dev/null +++ b/doc/generated/examples/troubleshoot_tree1_5.xml @@ -0,0 +1,15 @@ + +% scons -Q --tree=derived +cc -o f1.o -c -I. f1.c +cc -o f2.o -c -I. f2.c +cc -o f3.o -c -I. f3.c +cc -o prog f1.o f2.o f3.o ++-. + +-f1.o + +-f2.o + +-f3.o + +-prog + +-f1.o + +-f2.o + +-f3.o + diff --git a/doc/generated/examples/troubleshoot_tree1_6.xml b/doc/generated/examples/troubleshoot_tree1_6.xml new file mode 100644 index 0000000..4d3c972 --- /dev/null +++ b/doc/generated/examples/troubleshoot_tree1_6.xml @@ -0,0 +1,26 @@ + +% scons -Q --tree=derived,status +cc -o f1.o -c -I. f1.c +cc -o f2.o -c -I. f2.c +cc -o f3.o -c -I. f3.c +cc -o prog f1.o f2.o f3.o + E = exists + R = exists in repository only + b = implicit builder + B = explicit builder + S = side effect + P = precious + A = always build + C = current + N = no clean + H = no cache + +[E b ]+-. +[E B C ] +-f1.o +[E B C ] +-f2.o +[E B C ] +-f3.o +[E B C ] +-prog +[E B C ] +-f1.o +[E B C ] +-f2.o +[E B C ] +-f3.o + diff --git a/doc/generated/examples/troubleshoot_tree2_1.xml b/doc/generated/examples/troubleshoot_tree2_1.xml new file mode 100644 index 0000000..7b786e3 --- /dev/null +++ b/doc/generated/examples/troubleshoot_tree2_1.xml @@ -0,0 +1,73 @@ + +% scons -Q --tree=all +cc -o f1.o -c -I. f1.c +cc -o f2.o -c -I. f2.c +cc -o f3.o -c -I. f3.c +ar rc libfoo.a f1.o f2.o f3.o +ranlib libfoo.a +cc -o prog1.o -c -I. prog1.c +cc -o prog1 prog1.o -L. -lfoo +cc -o prog2.o -c -I. prog2.c +cc -o prog2 prog2.o -L. -lfoo ++-. + +-SConstruct + +-f1.c + +-f1.o + | +-f1.c + | +-inc.h + +-f2.c + +-f2.o + | +-f2.c + | +-inc.h + +-f3.c + +-f3.o + | +-f3.c + | +-inc.h + +-inc.h + +-libfoo.a + | +-f1.o + | | +-f1.c + | | +-inc.h + | +-f2.o + | | +-f2.c + | | +-inc.h + | +-f3.o + | +-f3.c + | +-inc.h + +-prog1 + | +-prog1.o + | | +-prog1.c + | | +-inc.h + | +-libfoo.a + | +-f1.o + | | +-f1.c + | | +-inc.h + | +-f2.o + | | +-f2.c + | | +-inc.h + | +-f3.o + | +-f3.c + | +-inc.h + +-prog1.c + +-prog1.o + | +-prog1.c + | +-inc.h + +-prog2 + | +-prog2.o + | | +-prog2.c + | | +-inc.h + | +-libfoo.a + | +-f1.o + | | +-f1.c + | | +-inc.h + | +-f2.o + | | +-f2.c + | | +-inc.h + | +-f3.o + | +-f3.c + | +-inc.h + +-prog2.c + +-prog2.o + +-prog2.c + +-inc.h + diff --git a/doc/generated/examples/troubleshoot_tree2_2.xml b/doc/generated/examples/troubleshoot_tree2_2.xml new file mode 100644 index 0000000..2338622 --- /dev/null +++ b/doc/generated/examples/troubleshoot_tree2_2.xml @@ -0,0 +1,45 @@ + +% scons -Q --tree=prune +cc -o f1.o -c -I. f1.c +cc -o f2.o -c -I. f2.c +cc -o f3.o -c -I. f3.c +ar rc libfoo.a f1.o f2.o f3.o +ranlib libfoo.a +cc -o prog1.o -c -I. prog1.c +cc -o prog1 prog1.o -L. -lfoo +cc -o prog2.o -c -I. prog2.c +cc -o prog2 prog2.o -L. -lfoo ++-. + +-SConstruct + +-f1.c + +-f1.o + | +-f1.c + | +-inc.h + +-f2.c + +-f2.o + | +-f2.c + | +-inc.h + +-f3.c + +-f3.o + | +-f3.c + | +-inc.h + +-inc.h + +-libfoo.a + | +-[f1.o] + | +-[f2.o] + | +-[f3.o] + +-prog1 + | +-prog1.o + | | +-prog1.c + | | +-inc.h + | +-[libfoo.a] + +-prog1.c + +-[prog1.o] + +-prog2 + | +-prog2.o + | | +-prog2.c + | | +-inc.h + | +-[libfoo.a] + +-prog2.c + +-[prog2.o] + diff --git a/doc/generated/examples/variants_ex_1.xml b/doc/generated/examples/variants_ex_1.xml new file mode 100644 index 0000000..cbc47ab --- /dev/null +++ b/doc/generated/examples/variants_ex_1.xml @@ -0,0 +1,11 @@ + +% scons -Q OS=linux +Install file: "build/linux/world/world.h" as "export/linux/include/world.h" +cc -o build/linux/hello/hello.o -c -Iexport/linux/include build/linux/hello/hello.c +cc -o build/linux/world/world.o -c -Iexport/linux/include build/linux/world/world.c +ar rc build/linux/world/libworld.a build/linux/world/world.o +ranlib build/linux/world/libworld.a +Install file: "build/linux/world/libworld.a" as "export/linux/lib/libworld.a" +cc -o build/linux/hello/hello build/linux/hello/hello.o -Lexport/linux/lib -lworld +Install file: "build/linux/hello/hello" as "export/linux/bin/hello" + diff --git a/doc/generated/examples/variants_ex_2.xml b/doc/generated/examples/variants_ex_2.xml new file mode 100644 index 0000000..ac883de --- /dev/null +++ b/doc/generated/examples/variants_ex_2.xml @@ -0,0 +1,11 @@ + +C:\>scons -Q OS=windows +Install file: "build/windows/world/world.h" as "export/windows/include/world.h" +cl /Fobuild\windows\hello\hello.obj /c build\windows\hello\hello.c /nologo /Iexport\windows\include +cl /Fobuild\windows\world\world.obj /c build\windows\world\world.c /nologo /Iexport\windows\include +lib /nologo /OUT:build\windows\world\world.lib build\windows\world\world.obj +Install file: "build/windows/world/world.lib" as "export/windows/lib/world.lib" +link /nologo /OUT:build\windows\hello\hello.exe /LIBPATH:export\windows\lib world.lib build\windows\hello\hello.obj +embedManifestExeCheck(target, source, env) +Install file: "build/windows/hello/hello.exe" as "export/windows/bin/hello.exe" + diff --git a/doc/generated/functions.gen b/doc/generated/functions.gen new file mode 100644 index 0000000..072b91c --- /dev/null +++ b/doc/generated/functions.gen @@ -0,0 +1,5120 @@ + + + %scons; + + %builders-mod; + + %functions-mod; + + %tools-mod; + + %variables-mod; +]> + + + + + Action(action, [cmd/str/fun, [var, ...]] [option=value, ...]) + + + env.Action(action, [cmd/str/fun, [var, ...]] [option=value, ...]) + + + +Creates an Action object for +the specified +action. +See the section "Action Objects," +below, for a complete explanation of the arguments and behavior. + + + +Note that the +env.Action() +form of the invocation will expand +construction variables in any argument strings, +including the +action +argument, at the time it is called +using the construction variables in the +env +construction environment through which +env.Action() +was called. +The +Action() +form delays all variable expansion +until the Action object is actually used. + + + + + + AddMethod(object, function, [name]) + + + env.AddMethod(function, [name]) + + + +When called with the +AddMethod() +form, +adds the specified +function +to the specified +object +as the specified method +name. +When called with the +env.AddMethod() +form, +adds the specified +function +to the construction environment +env +as the specified method +name. +In both cases, if +name +is omitted or +None, +the name of the +specified +function +itself is used for the method name. + + + +Examples: + + + +# Note that the first argument to the function to +# be attached as a method must be the object through +# which the method will be called; the Python +# convention is to call it 'self'. +def my_method(self, arg): + print "my_method() got", arg + +# Use the global AddMethod() function to add a method +# to the Environment class. This +AddMethod(Environment, my_method) +env = Environment() +env.my_method('arg') + +# Add the function as a method, using the function +# name for the method call. +env = Environment() +env.AddMethod(my_method, 'other_method_name') +env.other_method_name('another arg') + + + + + + AddOption(arguments) + + + +This function adds a new command-line option to be recognized. +The specified +arguments +are the same as supported by the standard Python +optparse.add_option() +method (with a few additional capabilities noted below); +see the documentation for +optparse +for a thorough discussion of its option-processing capabities. + + + +In addition to the arguments and values supported by the +optparse.add_option() +method, +the SCons +AddOption +function allows you to set the +nargs +keyword value to +'?' +(a string with just the question mark) +to indicate that the specified long option(s) take(s) an +optional +argument. +When +nargs = '?' +is passed to the +AddOption +function, the +const +keyword argument +may be used to supply the "default" +value that should be used when the +option is specified on the command line +without an explicit argument. + + + +If no +default= +keyword argument is supplied when calling +AddOption, +the option will have a default value of +None. + + + +Once a new command-line option has been added with +AddOption, +the option value may be accessed using +GetOption +or +env.GetOption(). +The value may also be set, using +SetOption +or +env.SetOption(), +if conditions in a +SConscript +require overriding any default value. +Note, however, that a +value specified on the command line will +always +override a value set by any SConscript file. + + + +Any specified +help= +strings for the new option(s) +will be displayed by the + +or + +options +(the latter only if no other help text is +specified in the SConscript files). +The help text for the local options specified by +AddOption +will appear below the SCons options themselves, +under a separate +Local Options +heading. +The options will appear in the help text +in the order in which the +AddOption +calls occur. + + + +Example: + + + +AddOption('--prefix', + dest='prefix', + nargs=1, type='string', + action='store', + metavar='DIR', + help='installation prefix') +env = Environment(PREFIX = GetOption('prefix')) + + + + + + AddPostAction(target, action) + + + env.AddPostAction(target, action) + + + +Arranges for the specified +action +to be performed +after the specified +target +has been built. +The specified action(s) may be +an Action object, or anything that +can be converted into an Action object +(see below). + + + +When multiple targets are supplied, +the action may be called multiple times, +once after each action that generates +one or more targets in the list. + + + + + + AddPreAction(target, action) + + + env.AddPreAction(target, action) + + + +Arranges for the specified +action +to be performed +before the specified +target +is built. +The specified action(s) may be +an Action object, or anything that +can be converted into an Action object +(see below). + + + +When multiple targets are specified, +the action(s) may be called multiple times, +once before each action that generates +one or more targets in the list. + + + +Note that if any of the targets are built in multiple steps, +the action will be invoked just +before the "final" action that specifically +generates the specified target(s). +For example, when building an executable program +from a specified source +.c +file via an intermediate object file: + + + +foo = Program('foo.c') +AddPreAction(foo, 'pre_action') + + + +The specified +pre_action +would be executed before +scons +calls the link command that actually +generates the executable program binary +foo, +not before compiling the +foo.c +file into an object file. + + + + + + Alias(alias, [targets, [action]]) + + + env.Alias(alias, [targets, [action]]) + + + +Creates one or more phony targets that +expand to one or more other targets. +An optional +action +(command) +or list of actions +can be specified that will be executed +whenever the any of the alias targets are out-of-date. +Returns the Node object representing the alias, +which exists outside of any file system. +This Node object, or the alias name, +may be used as a dependency of any other target, +including another alias. +Alias +can be called multiple times for the same +alias to add additional targets to the alias, +or additional actions to the list for this alias. + + + +Examples: + + + +Alias('install') +Alias('install', '/usr/bin') +Alias(['install', 'install-lib'], '/usr/local/lib') + +env.Alias('install', ['/usr/local/bin', '/usr/local/lib']) +env.Alias('install', ['/usr/local/man']) + +env.Alias('update', ['file1', 'file2'], "update_database $SOURCES") + + + + + + AllowSubstExceptions([exception, ...]) + + + +Specifies the exceptions that will be allowed +when expanding construction variables. +By default, +any construction variable expansions that generate a +NameError +or +IndexError +exception will expand to a +'' +(a null string) and not cause scons to fail. +All exceptions not in the specified list +will generate an error message +and terminate processing. + + + +If +AllowSubstExceptions +is called multiple times, +each call completely overwrites the previous list +of allowed exceptions. + + + +Example: + + + +# Requires that all construction variable names exist. +# (You may wish to do this if you want to enforce strictly +# that all construction variables must be defined before use.) +AllowSubstExceptions() + +# Also allow a string containing a zero-division expansion +# like '${1 / 0}' to evalute to ''. +AllowSubstExceptions(IndexError, NameError, ZeroDivisionError) + + + + + + AlwaysBuild(target, ...) + + + env.AlwaysBuild(target, ...) + + + +Marks each given +target +so that it is always assumed to be out of date, +and will always be rebuilt if needed. +Note, however, that +AlwaysBuild +does not add its target(s) to the default target list, +so the targets will only be built +if they are specified on the command line, +or are a dependent of a target specified on the command line--but +they will +always +be built if so specified. +Multiple targets can be passed in to a single call to +AlwaysBuild. + + + + + + env.Append(key=val, [...]) + + + +Appends the specified keyword arguments +to the end of construction variables in the environment. +If the Environment does not have +the specified construction variable, +it is simply added to the environment. +If the values of the construction variable +and the keyword argument are the same type, +then the two values will be simply added together. +Otherwise, the construction variable +and the value of the keyword argument +are both coerced to lists, +and the lists are added together. +(See also the Prepend method, below.) + + + +Example: + + + +env.Append(CCFLAGS = ' -g', FOO = ['foo.yyy']) + + + + + + env.AppendENVPath(name, newpath, [envname, sep, delete_existing]) + + + +This appends new path elements to the given path in the +specified external environment +(ENV +by default). +This will only add +any particular path once (leaving the last one it encounters and +ignoring the rest, to preserve path order), +and to help assure this, +will normalize all paths (using +os.path.normpath +and +os.path.normcase). +This can also handle the +case where the given old path variable is a list instead of a +string, in which case a list will be returned instead of a string. + + + +If +delete_existing +is 0, then adding a path that already exists +will not move it to the end; it will stay where it is in the list. + + + +Example: + + + +print 'before:',env['ENV']['INCLUDE'] +include_path = '/foo/bar:/foo' +env.AppendENVPath('INCLUDE', include_path) +print 'after:',env['ENV']['INCLUDE'] + +yields: +before: /foo:/biz +after: /biz:/foo/bar:/foo + + + + + + env.AppendUnique(key=val, [...], delete_existing=0) + + + +Appends the specified keyword arguments +to the end of construction variables in the environment. +If the Environment does not have +the specified construction variable, +it is simply added to the environment. +If the construction variable being appended to is a list, +then any value(s) that already exist in the +construction variable will +not +be added again to the list. +However, if delete_existing is 1, +existing matching values are removed first, so +existing values in the arg list move to the end of the list. + + + +Example: + + + +env.AppendUnique(CCFLAGS = '-g', FOO = ['foo.yyy']) + + + + + + env.BitKeeper() + + + +A factory function that +returns a Builder object +to be used to fetch source files +using BitKeeper. +The returned Builder +is intended to be passed to the +SourceCode +function. + + + +This function is deprecated. For details, see the entry for the +SourceCode +function. + + + +Example: + + + +env.SourceCode('.', env.BitKeeper()) + + + + + + BuildDir(build_dir, src_dir, [duplicate]) + + + env.BuildDir(build_dir, src_dir, [duplicate]) + + + +Deprecated synonyms for +VariantDir +and +env.VariantDir(). +The +build_dir +argument becomes the +variant_dir +argument of +VariantDir +or +env.VariantDir(). + + + + + + Builder(action, [arguments]) + + + env.Builder(action, [arguments]) + + + +Creates a Builder object for +the specified +action. +See the section "Builder Objects," +below, for a complete explanation of the arguments and behavior. + + + +Note that the +env.Builder() +form of the invocation will expand +construction variables in any arguments strings, +including the +action +argument, +at the time it is called +using the construction variables in the +env +construction environment through which +env.Builder() +was called. +The +Builder +form delays all variable expansion +until after the Builder object is actually called. + + + + + + CacheDir(cache_dir) + + + env.CacheDir(cache_dir) + + + +Specifies that +scons +will maintain a cache of derived files in +cache_dir. +The derived files in the cache will be shared +among all the builds using the same +CacheDir +call. +Specifying a +cache_dir +of +None +disables derived file caching. + + + +Calling +env.CacheDir() +will only affect targets built +through the specified construction environment. +Calling +CacheDir +sets a global default +that will be used by all targets built +through construction environments +that do +not +have an +env.CacheDir() +specified. + + + +When a +CacheDir() +is being used and +scons +finds a derived file that needs to be rebuilt, +it will first look in the cache to see if a +derived file has already been built +from identical input files and an identical build action +(as incorporated into the MD5 build signature). +If so, +scons +will retrieve the file from the cache. +If the derived file is not present in the cache, +scons +will rebuild it and +then place a copy of the built file in the cache +(identified by its MD5 build signature), +so that it may be retrieved by other +builds that need to build the same derived file +from identical inputs. + + + +Use of a specified +CacheDir +may be disabled for any invocation +by using the + +option. + + + +If the + +option is used, +scons +will place a copy of +all +derived files in the cache, +even if they already existed +and were not built by this invocation. +This is useful to populate a cache +the first time +CacheDir +is added to a build, +or after using the + +option. + + + +When using +CacheDir, +scons +will report, +"Retrieved `file' from cache," +unless the + +option is being used. +When the + +option is used, +scons +will print the action that +would +have been used to build the file, +without any indication that +the file was actually retrieved from the cache. +This is useful to generate build logs +that are equivalent regardless of whether +a given derived file has been built in-place +or retrieved from the cache. + + + +The +NoCache +method can be used to disable caching of specific files. This can be +useful if inputs and/or outputs of some tool are impossible to +predict or prohibitively large. + + + + + + Clean(targets, files_or_dirs) + + + env.Clean(targets, files_or_dirs) + + + +This specifies a list of files or directories which should be removed +whenever the targets are specified with the + +command line option. +The specified targets may be a list +or an individual target. +Multiple calls to +Clean +are legal, +and create new targets or add files and directories to the +clean list for the specified targets. + + + +Multiple files or directories should be specified +either as separate arguments to the +Clean +method, or as a list. +Clean +will also accept the return value of any of the construction environment +Builder methods. +Examples: + + + +The related +NoClean +function overrides calling +Clean +for the same target, +and any targets passed to both functions will +not +be removed by the + +option. + + + +Examples: + + + +Clean('foo', ['bar', 'baz']) +Clean('dist', env.Program('hello', 'hello.c')) +Clean(['foo', 'bar'], 'something_else_to_clean') + + + +In this example, +installing the project creates a subdirectory for the documentation. +This statement causes the subdirectory to be removed +if the project is deinstalled. + + +Clean(docdir, os.path.join(docdir, projectname)) + + + + + + env.Clone([key=val, ...]) + + + +Returns a separate copy of a construction environment. +If there are any keyword arguments specified, +they are added to the returned copy, +overwriting any existing values +for the keywords. + + + +Example: + + + +env2 = env.Clone() +env3 = env.Clone(CCFLAGS = '-g') + + + +Additionally, a list of tools and a toolpath may be specified, as in +the Environment constructor: + + + +def MyTool(env): env['FOO'] = 'bar' +env4 = env.Clone(tools = ['msvc', MyTool]) + + + +The +parse_flags +keyword argument is also recognized: + + + +# create an environment for compiling programs that use wxWidgets +wx_env = env.Clone(parse_flags = '!wx-config --cflags --cxxflags') + + + + + + Command(target, source, action, [key=val, ...]) + + + env.Command(target, source, action, [key=val, ...]) + + + +Executes a specific action +(or list of actions) +to build a target file or files. +This is more convenient +than defining a separate Builder object +for a single special-case build. + + + +As a special case, the +source_scanner +keyword argument can +be used to specify +a Scanner object +that will be used to scan the sources. +(The global +DirScanner +object can be used +if any of the sources will be directories +that must be scanned on-disk for +changes to files that aren't +already specified in other Builder of function calls.) + + + +Any other keyword arguments specified override any +same-named existing construction variables. + + + +An action can be an external command, +specified as a string, +or a callable Python object; +see "Action Objects," below, +for more complete information. +Also note that a string specifying an external command +may be preceded by an +@ +(at-sign) +to suppress printing the command in question, +or by a +- +(hyphen) +to ignore the exit status of the external command. + + + +Examples: + + + +env.Command('foo.out', 'foo.in', + "$FOO_BUILD < $SOURCES > $TARGET") + +env.Command('bar.out', 'bar.in', + ["rm -f $TARGET", + "$BAR_BUILD < $SOURCES > $TARGET"], + ENV = {'PATH' : '/usr/local/bin/'}) + +def rename(env, target, source): + import os + os.rename('.tmp', str(target[0])) + +env.Command('baz.out', 'baz.in', + ["$BAZ_BUILD < $SOURCES > .tmp", + rename ]) + + + +Note that the +Command +function will usually assume, by default, +that the specified targets and/or sources are Files, +if no other part of the configuration +identifies what type of entry it is. +If necessary, you can explicitly specify +that targets or source nodes should +be treated as directoriese +by using the +Dir +or +env.Dir() +functions. + + + +Examples: + + + +env.Command('ddd.list', Dir('ddd'), 'ls -l $SOURCE > $TARGET') + +env['DISTDIR'] = 'destination/directory' +env.Command(env.Dir('$DISTDIR')), None, make_distdir) + + + +(Also note that SCons will usually +automatically create any directory necessary to hold a target file, +so you normally don't need to create directories by hand.) + + + + + + Configure(env, [custom_tests, conf_dir, log_file, config_h]) + + + env.Configure([custom_tests, conf_dir, log_file, config_h]) + + + +Creates a Configure object for integrated +functionality similar to GNU autoconf. +See the section "Configure Contexts," +below, for a complete explanation of the arguments and behavior. + + + + + + env.Copy([key=val, ...]) + + + +A now-deprecated synonym for +env.Clone(). + + + + + + env.CVS(repository, module) + + + +A factory function that +returns a Builder object +to be used to fetch source files +from the specified +CVS +repository. +The returned Builder +is intended to be passed to the +SourceCode +function. + + + +This function is deprecated. For details, see the entry for the +SourceCode +function. + + + +The optional specified +module +will be added to the beginning +of all repository path names; +this can be used, in essence, +to strip initial directory names +from the repository path names, +so that you only have to +replicate part of the repository +directory hierarchy in your +local build directory. + + + +Examples: + + + +# Will fetch foo/bar/src.c +# from /usr/local/CVSROOT/foo/bar/src.c. +env.SourceCode('.', env.CVS('/usr/local/CVSROOT')) + +# Will fetch bar/src.c +# from /usr/local/CVSROOT/foo/bar/src.c. +env.SourceCode('.', env.CVS('/usr/local/CVSROOT', 'foo')) + +# Will fetch src.c +# from /usr/local/CVSROOT/foo/bar/src.c. +env.SourceCode('.', env.CVS('/usr/local/CVSROOT', 'foo/bar')) + + + + + + Decider(function) + + + env.Decider(function) + + + +Specifies that all up-to-date decisions for +targets built through this construction environment +will be handled by the specified +function. +The +function +can be one of the following strings +that specify the type of decision function +to be performed: + + + + + +timestamp-newer + + +Specifies that a target shall be considered out of date and rebuilt +if the dependency's timestamp is newer than the target file's timestamp. +This is the behavior of the classic Make utility, +and +make +can be used a synonym for +timestamp-newer. + + + + +timestamp-match + + +Specifies that a target shall be considered out of date and rebuilt +if the dependency's timestamp is different than the +timestamp recorded the last time the target was built. +This provides behavior very similar to the classic Make utility +(in particular, files are not opened up so that their +contents can be checksummed) +except that the target will also be rebuilt if a +dependency file has been restored to a version with an +earlier +timestamp, such as can happen when restoring files from backup archives. + + + + +MD5 + + +Specifies that a target shall be considered out of date and rebuilt +if the dependency's content has changed sine the last time +the target was built, +as determined be performing an MD5 checksum +on the dependency's contents +and comparing it to the checksum recorded the +last time the target was built. +content +can be used as a synonym for +MD5. + + + + +MD5-timestamp + + +Specifies that a target shall be considered out of date and rebuilt +if the dependency's content has changed sine the last time +the target was built, +except that dependencies with a timestamp that matches +the last time the target was rebuilt will be +assumed to be up-to-date and +not +rebuilt. +This provides behavior very similar +to the +MD5 +behavior of always checksumming file contents, +with an optimization of not checking +the contents of files whose timestamps haven't changed. +The drawback is that SCons will +not +detect if a file's content has changed +but its timestamp is the same, +as might happen in an automated script +that runs a build, +updates a file, +and runs the build again, +all within a single second. + + + + + + + +Examples: + + + +# Use exact timestamp matches by default. +Decider('timestamp-match') + +# Use MD5 content signatures for any targets built +# with the attached construction environment. +env.Decider('content') + + + +In addition to the above already-available functions, +the +function +argument may be an actual Python function +that takes the following three arguments: + + + + + +dependency + + +The Node (file) which +should cause the +target +to be rebuilt +if it has "changed" since the last tme +target +was built. + + + + +target + + +The Node (file) being built. +In the normal case, +this is what should get rebuilt +if the +dependency +has "changed." + + + + +prev_ni + + +Stored information about the state of the +dependency +the last time the +target +was built. +This can be consulted to match various +file characteristics +such as the timestamp, +size, or content signature. + + + + + + + +The +function +should return a +True +(non-zero) +value if the +dependency +has "changed" since the last time +the +target +was built +(indicating that the target +should +be rebuilt), +and +False +(zero) +otherwise +(indicating that the target should +not +be rebuilt). +Note that the decision can be made +using whatever criteria are appopriate. +Ignoring some or all of the function arguments +is perfectly normal. + + + +Example: + + + +def my_decider(dependency, target, prev_ni): + return not os.path.exists(str(target)) + +env.Decider(my_decider) + + + + + + Default(targets) + + + env.Default(targets) + + + +This specifies a list of default targets, +which will be built by +scons +if no explicit targets are given on the command line. +Multiple calls to +Default +are legal, +and add to the list of default targets. + + + +Multiple targets should be specified as +separate arguments to the +Default +method, or as a list. +Default +will also accept the Node returned by any +of a construction environment's +builder methods. + + + +Examples: + + + +Default('foo', 'bar', 'baz') +env.Default(['a', 'b', 'c']) +hello = env.Program('hello', 'hello.c') +env.Default(hello) + + + +An argument to +Default +of +None +will clear all default targets. +Later calls to +Default +will add to the (now empty) default-target list +like normal. + + + +The current list of targets added using the +Default +function or method is available in the +DEFAULT_TARGETS +list; +see below. + + + + + + DefaultEnvironment([args]) + + + +Creates and returns a default construction environment object. +This construction environment is used internally by SCons +in order to execute many of the global functions in this list, +and to fetch source files transparently +from source code management systems. + + + + + + Depends(target, dependency) + + + env.Depends(target, dependency) + + + +Specifies an explicit dependency; +the +target +will be rebuilt +whenever the +dependency +has changed. +Both the specified +target +and +dependency +can be a string +(usually the path name of a file or directory) +or Node objects, +or a list of strings or Node objects +(such as returned by a Builder call). +This should only be necessary +for cases where the dependency +is not caught by a Scanner +for the file. + + + +Example: + + + +env.Depends('foo', 'other-input-file-for-foo') + +mylib = env.Library('mylib.c') +installed_lib = env.Install('lib', mylib) +bar = env.Program('bar.c') + +# Arrange for the library to be copied into the installation +# directory before trying to build the "bar" program. +# (Note that this is for example only. A "real" library +# dependency would normally be configured through the $LIBS +# and $LIBPATH variables, not using an env.Depends() call.) + +env.Depends(bar, installed_lib) + + + + + + env.Dictionary([vars]) + + + +Returns a dictionary object +containing copies of all of the +construction variables in the environment. +If there are any variable names specified, +only the specified construction +variables are returned in the dictionary. + + + +Example: + + + +dict = env.Dictionary() +cc_dict = env.Dictionary('CC', 'CCFLAGS', 'CCCOM') + + + + + + Dir(name, [directory]) + + + env.Dir(name, [directory]) + + + +This returns a Directory Node, +an object that represents the specified directory +name. +name +can be a relative or absolute path. +directory +is an optional directory that will be used as the parent directory. +If no +directory +is specified, the current script's directory is used as the parent. + + + +If +name +is a list, SCons returns a list of Dir nodes. +Construction variables are expanded in +name. + + + +Directory Nodes can be used anywhere you +would supply a string as a directory name +to a Builder method or function. +Directory Nodes have attributes and methods +that are useful in many situations; +see "File and Directory Nodes," below. + + + + + + env.Dump([key]) + + + +Returns a pretty printable representation of the environment. +key, +if not +None, +should be a string containing the name of the variable of interest. + + + +This SConstruct: + + + +env=Environment() +print env.Dump('CCCOM') + + + +will print: + + + +'$CC -c -o $TARGET $CCFLAGS $CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS $SOURCES' + + + +While this SConstruct: + + + +env=Environment() +print env.Dump() + + + +will print: + + +{ 'AR': 'ar', + 'ARCOM': '$AR $ARFLAGS $TARGET $SOURCES\n$RANLIB $RANLIBFLAGS $TARGET', + 'ARFLAGS': ['r'], + 'AS': 'as', + 'ASCOM': '$AS $ASFLAGS -o $TARGET $SOURCES', + 'ASFLAGS': [], + ... + + + + + + EnsurePythonVersion(major, minor) + + + env.EnsurePythonVersion(major, minor) + + + +Ensure that the Python version is at least +major.minor. +This function will +print out an error message and exit SCons with a non-zero exit code if the +actual Python version is not late enough. + + + +Example: + + + +EnsurePythonVersion(2,2) + + + + + + EnsureSConsVersion(major, minor, [revision]) + + + env.EnsureSConsVersion(major, minor, [revision]) + + + +Ensure that the SCons version is at least +major.minor, +or +major.minor.revision. +if +revision +is specified. +This function will +print out an error message and exit SCons with a non-zero exit code if the +actual SCons version is not late enough. + + + +Examples: + + + +EnsureSConsVersion(0,14) + +EnsureSConsVersion(0,96,90) + + + + + + Environment([key=value, ...]) + + + env.Environment([key=value, ...]) + + + +Return a new construction environment +initialized with the specified +key=value +pairs. + + + + + + Execute(action, [strfunction, varlist]) + + + env.Execute(action, [strfunction, varlist]) + + + +Executes an Action object. +The specified +action +may be an Action object +(see the section "Action Objects," +below, for a complete explanation of the arguments and behavior), +or it may be a command-line string, +list of commands, +or executable Python function, +each of which will be converted +into an Action object +and then executed. +The exit value of the command +or return value of the Python function +will be returned. + + + +Note that +scons +will print an error message if the executed +action +fails--that is, +exits with or returns a non-zero value. +scons +will +not, +however, +automatically terminate the build +if the specified +action +fails. +If you want the build to stop in response to a failed +Execute +call, +you must explicitly check for a non-zero return value: + + + +Execute(Copy('file.out', 'file.in')) + +if Execute("mkdir sub/dir/ectory"): + # The mkdir failed, don't try to build. + Exit(1) + + + + + + Exit([value]) + + + env.Exit([value]) + + + +This tells +scons +to exit immediately +with the specified +value. +A default exit value of +0 +(zero) +is used if no value is specified. + + + + + + Export(vars) + + + env.Export(vars) + + + +This tells +scons +to export a list of variables from the current +SConscript file to all other SConscript files. +The exported variables are kept in a global collection, +so subsequent calls to +Export +will over-write previous exports that have the same name. +Multiple variable names can be passed to +Export +as separate arguments or as a list. +Keyword arguments can be used to provide names and their values. +A dictionary can be used to map variables to a different name when exported. +Both local variables and global variables can be exported. + + + +Examples: + + + +env = Environment() +# Make env available for all SConscript files to Import(). +Export("env") + +package = 'my_name' +# Make env and package available for all SConscript files:. +Export("env", "package") + +# Make env and package available for all SConscript files: +Export(["env", "package"]) + +# Make env available using the name debug: +Export(debug = env) + +# Make env available using the name debug: +Export({"debug":env}) + + + +Note that the +SConscript +function supports an +exports +argument that makes it easier to to export a variable or +set of variables to a single SConscript file. +See the description of the +SConscript +function, below. + + + + + + File(name, [directory]) + + + env.File(name, [directory]) + + + +This returns a +File Node, +an object that represents the specified file +name. +name +can be a relative or absolute path. +directory +is an optional directory that will be used as the parent directory. + + + +If +name +is a list, SCons returns a list of File nodes. +Construction variables are expanded in +name. + + + +File Nodes can be used anywhere you +would supply a string as a file name +to a Builder method or function. +File Nodes have attributes and methods +that are useful in many situations; +see "File and Directory Nodes," below. + + + + + + FindFile(file, dirs) + + + env.FindFile(file, dirs) + + + +Search for +file +in the path specified by +dirs. +dirs +may be a list of directory names or a single directory name. +In addition to searching for files that exist in the filesystem, +this function also searches for derived files +that have not yet been built. + + + +Example: + + + +foo = env.FindFile('foo', ['dir1', 'dir2']) + + + + + + FindInstalledFiles() + + + env.FindInstalledFiles() + + + +Returns the list of targets set up by the +Install +or +InstallAs +builders. + + + +This function serves as a convenient method to select the contents of +a binary package. + + + +Example: + + + +Install( '/bin', [ 'executable_a', 'executable_b' ] ) + +# will return the file node list +# [ '/bin/executable_a', '/bin/executable_b' ] +FindInstalledFiles() + +Install( '/lib', [ 'some_library' ] ) + +# will return the file node list +# [ '/bin/executable_a', '/bin/executable_b', '/lib/some_library' ] +FindInstalledFiles() + + + + + + FindPathDirs(variable) + + + +Returns a function +(actually a callable Python object) +intended to be used as the +path_function +of a Scanner object. +The returned object will look up the specified +variable +in a construction environment +and treat the construction variable's value as a list of +directory paths that should be searched +(like +$CPPPATH, +$LIBPATH, +etc.). + + + +Note that use of +FindPathDirs +is generally preferable to +writing your own +path_function +for the following reasons: +1) The returned list will contain all appropriate directories +found in source trees +(when +VariantDir +is used) +or in code repositories +(when +Repository +or the + +option are used). +2) scons will identify expansions of +variable +that evaluate to the same list of directories as, +in fact, the same list, +and avoid re-scanning the directories for files, +when possible. + + + +Example: + + + +def my_scan(node, env, path, arg): + # Code to scan file contents goes here... + return include_files + +scanner = Scanner(name = 'myscanner', + function = my_scan, + path_function = FindPathDirs('MYPATH')) + + + + + + FindSourceFiles(node='"."') + + + env.FindSourceFiles(node='"."') + + + +Returns the list of nodes which serve as the source of the built files. +It does so by inspecting the dependency tree starting at the optional +argument +node +which defaults to the '"."'-node. It will then return all leaves of +node. +These are all children which have no further children. + + + +This function is a convenient method to select the contents of a Source +Package. + + + +Example: + + + +Program( 'src/main_a.c' ) +Program( 'src/main_b.c' ) +Program( 'main_c.c' ) + +# returns ['main_c.c', 'src/main_a.c', 'SConstruct', 'src/main_b.c'] +FindSourceFiles() + +# returns ['src/main_b.c', 'src/main_a.c' ] +FindSourceFiles( 'src' ) + + + +As you can see build support files (SConstruct in the above example) +will also be returned by this function. + + + + + + Flatten(sequence) + + + env.Flatten(sequence) + + + +Takes a sequence (that is, a Python list or tuple) +that may contain nested sequences +and returns a flattened list containing +all of the individual elements in any sequence. +This can be helpful for collecting +the lists returned by calls to Builders; +other Builders will automatically +flatten lists specified as input, +but direct Python manipulation of +these lists does not. + + + +Examples: + + + +foo = Object('foo.c') +bar = Object('bar.c') + +# Because `foo' and `bar' are lists returned by the Object() Builder, +# `objects' will be a list containing nested lists: +objects = ['f1.o', foo, 'f2.o', bar, 'f3.o'] + +# Passing such a list to another Builder is all right because +# the Builder will flatten the list automatically: +Program(source = objects) + +# If you need to manipulate the list directly using Python, you need to +# call Flatten() yourself, or otherwise handle nested lists: +for object in Flatten(objects): + print str(object) + + + + + + GetBuildFailures() + + + +Returns a list of exceptions for the +actions that failed while +attempting to build targets. +Each element in the returned list is a +BuildError +object +with the following attributes +that record various aspects +of the build failure: + + + +.node +The node that was being built +when the build failure occurred. + + + +.status +The numeric exit status +returned by the command or Python function +that failed when trying to build the +specified Node. + + + +.errstr +The SCons error string +describing the build failure. +(This is often a generic +message like "Error 2" +to indicate that an executed +command exited with a status of 2.) + + + +.filename +The name of the file or +directory that actually caused the failure. +This may be different from the +.node +attribute. +For example, +if an attempt to build a target named +sub/dir/target +fails because the +sub/dir +directory could not be created, +then the +.node +attribute will be +sub/dir/target +but the +.filename +attribute will be +sub/dir. + + + +.executor +The SCons Executor object +for the target Node +being built. +This can be used to retrieve +the construction environment used +for the failed action. + + + +.action +The actual SCons Action object that failed. +This will be one specific action +out of the possible list of +actions that would have been +executed to build the target. + + + +.command +The actual expanded command that was executed and failed, +after expansion of +$TARGET, +$SOURCE, +and other construction variables. + + + +Note that the +GetBuildFailures +function +will always return an empty list +until any build failure has occurred, +which means that +GetBuildFailures +will always return an empty list +while the +SConscript +files are being read. +Its primary intended use is +for functions that will be +executed before SCons exits +by passing them to the +standard Python +atexit.register() +function. +Example: + + + +import atexit + +def print_build_failures(): + from SCons.Script import GetBuildFailures + for bf in GetBuildFailures(): + print "%s failed: %s" % (bf.node, bf.errstr) + +atexit.register(print_build_failures) + + + + + + GetBuildPath(file, [...]) + + + env.GetBuildPath(file, [...]) + + + +Returns the +scons +path name (or names) for the specified +file +(or files). +The specified +file +or files +may be +scons +Nodes or strings representing path names. + + + + + + GetLaunchDir() + + + env.GetLaunchDir() + + + +Returns the absolute path name of the directory from which +scons +was initially invoked. +This can be useful when using the +, + +or + +options, which internally +change to the directory in which the +SConstruct +file is found. + + + + + + GetOption(name) + + + env.GetOption(name) + + + +This function provides a way to query the value of +SCons options set on scons command line +(or set using the +SetOption +function). +The options supported are: + + + + + +cache_debug + + +which corresponds to --cache-debug; + + + + +cache_disable + + +which corresponds to --cache-disable; + + + + +cache_force + + +which corresponds to --cache-force; + + + + +cache_show + + +which corresponds to --cache-show; + + + + +clean + + +which corresponds to -c, --clean and --remove; + + + + +config + + +which corresponds to --config; + + + + +directory + + +which corresponds to -C and --directory; + + + + +diskcheck + + +which corresponds to --diskcheck + + + + +duplicate + + +which corresponds to --duplicate; + + + + +file + + +which corresponds to -f, --file, --makefile and --sconstruct; + + + + +help + + +which corresponds to -h and --help; + + + + +ignore_errors + + +which corresponds to --ignore-errors; + + + + +implicit_cache + + +which corresponds to --implicit-cache; + + + + +implicit_deps_changed + + +which corresponds to --implicit-deps-changed; + + + + +implicit_deps_unchanged + + +which corresponds to --implicit-deps-unchanged; + + + + +interactive + + +which corresponds to --interact and --interactive; + + + + +keep_going + + +which corresponds to -k and --keep-going; + + + + +max_drift + + +which corresponds to --max-drift; + + + + +no_exec + + +which corresponds to -n, --no-exec, --just-print, --dry-run and --recon; + + + + +no_site_dir + + +which corresponds to --no-site-dir; + + + + +num_jobs + + +which corresponds to -j and --jobs; + + + + +profile_file + + +which corresponds to --profile; + + + + +question + + +which corresponds to -q and --question; + + + + +random + + +which corresponds to --random; + + + + +repository + + +which corresponds to -Y, --repository and --srcdir; + + + + +silent + + +which corresponds to -s, --silent and --quiet; + + + + +site_dir + + +which corresponds to --site-dir; + + + + +stack_size + + +which corresponds to --stack-size; + + + + +taskmastertrace_file + + +which corresponds to --taskmastertrace; and + + + + +warn + + +which corresponds to --warn and --warning. + + + + + + + +See the documentation for the +corresponding command line object for information about each specific +option. + + + + + + Glob(pattern, [ondisk, source, strings]) + + + env.Glob(pattern, [ondisk, source, strings]) + + + +Returns Nodes (or strings) that match the specified +pattern, +relative to the directory of the current +SConscript +file. +The +env.Glob() +form performs string substition on +pattern +and returns whatever matches +the resulting expanded pattern. + + + +The specified +pattern +uses Unix shell style metacharacters for matching: + + + + * matches everything + ? matches any single character + [seq] matches any character in seq + [!seq] matches any char not in seq + + + +If the first character of a filename is a dot, +it must be matched explicitly. +Character matches do +not +span directory separators. + + + +The +Glob +knows about +repositories +(see the +Repository +function) +and source directories +(see the +VariantDir +function) +and +returns a Node (or string, if so configured) +in the local (SConscript) directory +if matching Node is found +anywhere in a corresponding +repository or source directory. + + + +The +ondisk +argument may be set to +False +(or any other non-true value) +to disable the search for matches on disk, +thereby only returning matches among +already-configured File or Dir Nodes. +The default behavior is to +return corresponding Nodes +for any on-disk matches found. + + + +The +source +argument may be set to +True +(or any equivalent value) +to specify that, +when the local directory is a +VariantDir, +the returned Nodes should be from the +corresponding source directory, +not the local directory. + + + +The +strings +argument may be set to +True +(or any equivalent value) +to have the +Glob +function return strings, not Nodes, +that represent the matched files or directories. +The returned strings will be relative to +the local (SConscript) directory. +(Note that This may make it easier to perform +arbitrary manipulation of file names, +but if the returned strings are +passed to a different +SConscript +file, +any Node translation will be relative +to the other +SConscript +directory, +not the original +SConscript +directory.) + + + +Examples: + + + +Program('foo', Glob('*.c')) +Zip('/tmp/everything', Glob('.??*') + Glob('*')) + + + + + + Help(text) + + + env.Help(text) + + + +This specifies help text to be printed if the + +argument is given to +scons. +If +Help +is called multiple times, the text is appended together in the order +that +Help +is called. + + + + + + Ignore(target, dependency) + + + env.Ignore(target, dependency) + + + +The specified dependency file(s) +will be ignored when deciding if +the target file(s) need to be rebuilt. + + + +You can also use +Ignore +to remove a target from the default build. +In order to do this you must specify the directory the target will +be built in as the target, and the file you want to skip building +as the dependency. + + + +Note that this will only remove the dependencies listed from +the files built by default. It will still be built if that +dependency is needed by another object being built. +See the third and forth examples below. + + + +Examples: + + + +env.Ignore('foo', 'foo.c') +env.Ignore('bar', ['bar1.h', 'bar2.h']) +env.Ignore('.','foobar.obj') +env.Ignore('bar','bar/foobar.obj') + + + + + + Import(vars) + + + env.Import(vars) + + + +This tells +scons +to import a list of variables into the current SConscript file. This +will import variables that were exported with +Export +or in the +exports +argument to +SConscript. +Variables exported by +SConscript +have precedence. +Multiple variable names can be passed to +Import +as separate arguments or as a list. The variable "*" can be used +to import all variables. + + + +Examples: + + + +Import("env") +Import("env", "variable") +Import(["env", "variable"]) +Import("*") + + + + + + Literal(string) + + + env.Literal(string) + + + +The specified +string +will be preserved as-is +and not have construction variables expanded. + + + + + + Local(targets) + + + env.Local(targets) + + + +The specified +targets +will have copies made in the local tree, +even if an already up-to-date copy +exists in a repository. +Returns a list of the target Node or Nodes. + + + + + + env.MergeFlags(arg, [unique]) + + + +Merges the specified +arg +values to the construction environment's construction variables. +If the +arg +argument is not a dictionary, +it is converted to one by calling +env.ParseFlags +on the argument +before the values are merged. +Note that +arg +must be a single value, +so multiple strings must +be passed in as a list, +not as separate arguments to +env.MergeFlags. + + + +By default, +duplicate values are eliminated; +you can, however, specify +unique=0 +to allow duplicate +values to be added. +When eliminating duplicate values, +any construction variables that end with +the string +PATH +keep the left-most unique value. +All other construction variables keep +the right-most unique value. + + + +Examples: + + + +# Add an optimization flag to $CCFLAGS. +env.MergeFlags('-O3') + +# Combine the flags returned from running pkg-config with an optimization +# flag and merge the result into the construction variables. +env.MergeFlags(['!pkg-config gtk+-2.0 --cflags', '-O3']) + +# Combine an optimization flag with the flags returned from running pkg-config +# twice and merge the result into the construction variables. +env.MergeFlags(['-O3', + '!pkg-config gtk+-2.0 --cflags --libs', + '!pkg-config libpng12 --cflags --libs']) + + + + + + NoCache(target, ...) + + + env.NoCache(target, ...) + + + +Specifies a list of files which should +not +be cached whenever the +CacheDir +method has been activated. +The specified targets may be a list +or an individual target. + + + +Multiple files should be specified +either as separate arguments to the +NoCache +method, or as a list. +NoCache +will also accept the return value of any of the construction environment +Builder methods. + + + +Calling +NoCache +on directories and other non-File Node types has no effect because +only File Nodes are cached. + + + +Examples: + + + +NoCache('foo.elf') +NoCache(env.Program('hello', 'hello.c')) + + + + + + NoClean(target, ...) + + + env.NoClean(target, ...) + + + +Specifies a list of files or directories which should +not +be removed whenever the targets (or their dependencies) +are specified with the + +command line option. +The specified targets may be a list +or an individual target. +Multiple calls to +NoClean +are legal, +and prevent each specified target +from being removed by calls to the + +option. + + + +Multiple files or directories should be specified +either as separate arguments to the +NoClean +method, or as a list. +NoClean +will also accept the return value of any of the construction environment +Builder methods. + + + +Calling +NoClean +for a target overrides calling +Clean +for the same target, +and any targets passed to both functions will +not +be removed by the + +option. + + + +Examples: + + + +NoClean('foo.elf') +NoClean(env.Program('hello', 'hello.c')) + + + + + + env.ParseConfig(command, [function, unique]) + + + +Calls the specified +function +to modify the environment as specified by the output of +command. +The default +function +is +env.MergeFlags, +which expects the output of a typical +*-config +command +(for example, +gtk-config) +and adds the options +to the appropriate construction variables. +By default, +duplicate values are not +added to any construction variables; +you can specify +unique=0 +to allow duplicate +values to be added. + + + +Interpreted options +and the construction variables they affect +are as specified for the +env.ParseFlags +method (which this method calls). +See that method's description, below, +for a table of options and construction variables. + + + + + + ParseDepends(filename, [must_exist, only_one]) + + + env.ParseDepends(filename, [must_exist, only_one]) + + + +Parses the contents of the specified +filename +as a list of dependencies in the style of +Make +or +mkdep, +and explicitly establishes all of the listed dependencies. + + + +By default, +it is not an error +if the specified +filename +does not exist. +The optional +must_exist +argument may be set to a non-zero +value to have +scons +throw an exception and +generate an error if the file does not exist, +or is otherwise inaccessible. + + + +The optional +only_one +argument may be set to a non-zero +value to have +scons +thrown an exception and +generate an error +if the file contains dependency +information for more than one target. +This can provide a small sanity check +for files intended to be generated +by, for example, the +gcc -M +flag, +which should typically only +write dependency information for +one output file into a corresponding +.d +file. + + + +The +filename +and all of the files listed therein +will be interpreted relative to +the directory of the +SConscript +file which calls the +ParseDepends +function. + + + + + + env.ParseFlags(flags, ...) + + + +Parses one or more strings containing +typical command-line flags for GCC tool chains +and returns a dictionary with the flag values +separated into the appropriate SCons construction variables. +This is intended as a companion to the +env.MergeFlags +method, but allows for the values in the returned dictionary +to be modified, if necessary, +before merging them into the construction environment. +(Note that +env.MergeFlags +will call this method if its argument is not a dictionary, +so it is usually not necessary to call +env.ParseFlags +directly unless you want to manipulate the values.) + + + +If the first character in any string is +an exclamation mark (!), +the rest of the string is executed as a command, +and the output from the command is +parsed as GCC tool chain command-line flags +and added to the resulting dictionary. + + + +Flag values are translated accordig to the prefix found, +and added to the following construction variables: + + + +-arch CCFLAGS, LINKFLAGS +-D CPPDEFINES +-framework FRAMEWORKS +-frameworkdir= FRAMEWORKPATH +-include CCFLAGS +-isysroot CCFLAGS, LINKFLAGS +-I CPPPATH +-l LIBS +-L LIBPATH +-mno-cygwin CCFLAGS, LINKFLAGS +-mwindows LINKFLAGS +-pthread CCFLAGS, LINKFLAGS +-std= CFLAGS +-Wa, ASFLAGS, CCFLAGS +-Wl,-rpath= RPATH +-Wl,-R, RPATH +-Wl,-R RPATH +-Wl, LINKFLAGS +-Wp, CPPFLAGS +- CCFLAGS ++ CCFLAGS, LINKFLAGS + + + +Any other strings not associated with options +are assumed to be the names of libraries +and added to the +$LIBS +construction variable. + + + +Examples (all of which produce the same result): + + + +dict = env.ParseFlags('-O2 -Dfoo -Dbar=1') +dict = env.ParseFlags('-O2', '-Dfoo', '-Dbar=1') +dict = env.ParseFlags(['-O2', '-Dfoo -Dbar=1']) +dict = env.ParseFlags('-O2', '!echo -Dfoo -Dbar=1') + + + + + + env.Perforce() + + + +A factory function that +returns a Builder object +to be used to fetch source files +from the Perforce source code management system. +The returned Builder +is intended to be passed to the +SourceCode +function. + + + +This function is deprecated. For details, see the entry for the +SourceCode +function. + + + +Example: + + + +env.SourceCode('.', env.Perforce()) + + + +Perforce uses a number of external +environment variables for its operation. +Consequently, this function adds the +following variables from the user's external environment +to the construction environment's +ENV dictionary: +P4CHARSET, +P4CLIENT, +P4LANGUAGE, +P4PASSWD, +P4PORT, +P4USER, +SystemRoot, +USER, +and +USERNAME. + + + + + + Platform(string) + + + +The +Platform +form returns a callable object +that can be used to initialize +a construction environment using the +platform keyword of the +Environment +function. + + + +Example: + + + +env = Environment(platform = Platform('win32')) + + + +The +env.Platform +form applies the callable object for the specified platform +string +to the environment through which the method was called. + + + +env.Platform('posix') + + + +Note that the +win32 +platform adds the +SystemDrive +and +SystemRoot +variables from the user's external environment +to the construction environment's +$ENV +dictionary. +This is so that any executed commands +that use sockets to connect with other systems +(such as fetching source files from +external CVS repository specifications like +:pserver:anonymous@cvs.sourceforge.net:/cvsroot/scons) +will work on Windows systems. + + + + + + Precious(target, ...) + + + env.Precious(target, ...) + + + +Marks each given +target +as precious so it is not deleted before it is rebuilt. Normally +scons +deletes a target before building it. +Multiple targets can be passed in to a single call to +Precious. + + + + + + env.Prepend(key=val, [...]) + + + +Appends the specified keyword arguments +to the beginning of construction variables in the environment. +If the Environment does not have +the specified construction variable, +it is simply added to the environment. +If the values of the construction variable +and the keyword argument are the same type, +then the two values will be simply added together. +Otherwise, the construction variable +and the value of the keyword argument +are both coerced to lists, +and the lists are added together. +(See also the Append method, above.) + + + +Example: + + + +env.Prepend(CCFLAGS = '-g ', FOO = ['foo.yyy']) + + + + + + env.PrependENVPath(name, newpath, [envname, sep, delete_existing]) + + + +This appends new path elements to the given path in the +specified external environment +($ENV +by default). +This will only add +any particular path once (leaving the first one it encounters and +ignoring the rest, to preserve path order), +and to help assure this, +will normalize all paths (using +os.path.normpath +and +os.path.normcase). +This can also handle the +case where the given old path variable is a list instead of a +string, in which case a list will be returned instead of a string. + + + +If +delete_existing +is 0, then adding a path that already exists +will not move it to the beginning; +it will stay where it is in the list. + + + +Example: + + + +print 'before:',env['ENV']['INCLUDE'] +include_path = '/foo/bar:/foo' +env.PrependENVPath('INCLUDE', include_path) +print 'after:',env['ENV']['INCLUDE'] + + + +The above example will print: + + + +before: /biz:/foo +after: /foo/bar:/foo:/biz + + + + + + env.PrependUnique(key=val, delete_existing=0, [...]) + + + +Appends the specified keyword arguments +to the beginning of construction variables in the environment. +If the Environment does not have +the specified construction variable, +it is simply added to the environment. +If the construction variable being appended to is a list, +then any value(s) that already exist in the +construction variable will +not +be added again to the list. +However, if delete_existing is 1, +existing matching values are removed first, so +existing values in the arg list move to the front of the list. + + + +Example: + + + +env.PrependUnique(CCFLAGS = '-g', FOO = ['foo.yyy']) + + + + + + Progress(callable, [interval]) + + + Progress(string, [interval, file, overwrite]) + + + Progress(list_of_strings, [interval, file, overwrite]) + + + +Allows SCons to show progress made during the build +by displaying a string or calling a function while +evaluating Nodes (e.g. files). + + + +If the first specified argument is a Python callable +(a function or an object that has a +__call__() +method), +the function will be called +once every +interval +times a Node is evaluated. +The callable will be passed the evaluated Node +as its only argument. +(For future compatibility, +it's a good idea to also add +*args +and +**kw +as arguments to your function or method. +This will prevent the code from breaking +if SCons ever changes the interface +to call the function with additional arguments in the future.) + + + +An example of a simple custom progress function +that prints a string containing the Node name +every 10 Nodes: + + + +def my_progress_function(node, *args, **kw): + print 'Evaluating node %s!' % node +Progress(my_progress_function, interval=10) + + + +A more complicated example of a custom progress display object +that prints a string containing a count +every 100 evaluated Nodes. +Note the use of +\r +(a carriage return) +at the end so that the string +will overwrite itself on a display: + + + +import sys +class ProgressCounter(object): + count = 0 + def __call__(self, node, *args, **kw): + self.count += 100 + sys.stderr.write('Evaluated %s nodes\r' % self.count) +Progress(ProgressCounter(), interval=100) + + + +If the first argument +Progress +is a string, +the string will be displayed +every +interval +evaluated Nodes. +The default is to print the string on standard output; +an alternate output stream +may be specified with the +file= +argument. +The following will print a series of dots +on the error output, +one dot for every 100 evaluated Nodes: + + + +import sys +Progress('.', interval=100, file=sys.stderr) + + + +If the string contains the verbatim substring +$TARGET, +it will be replaced with the Node. +Note that, for performance reasons, this is +not +a regular SCons variable substition, +so you can not use other variables +or use curly braces. +The following example will print the name of +every evaluated Node, +using a +\r +(carriage return) to cause each line to overwritten by the next line, +and the +overwrite= +keyword argument to make sure the previously-printed +file name is overwritten with blank spaces: + + + +import sys +Progress('$TARGET\r', overwrite=True) + + + +If the first argument to +Progress +is a list of strings, +then each string in the list will be displayed +in rotating fashion every +interval +evaluated Nodes. +This can be used to implement a "spinner" +on the user's screen as follows: + + + +Progress(['-\r', '\\\r', '|\r', '/\r'], interval=5) + + + + + + Pseudo(target, ...) + + + env.Pseudo(target, ...) + + + +This indicates that each given +target +should not be created by the build rule, and if the target is created, +an error will be generated. This is similar to the gnu make .PHONY +target. However, in the vast majority of cases, an +Alias +is more appropriate. + +Multiple targets can be passed in to a single call to +Pseudo. + + + + + + env.RCS() + + + +A factory function that +returns a Builder object +to be used to fetch source files +from RCS. +The returned Builder +is intended to be passed to the +SourceCode +function: + + + +This function is deprecated. For details, see the entry for the +SourceCode +function. + + + +Examples: + + + +env.SourceCode('.', env.RCS()) + + + +Note that +scons +will fetch source files +from RCS subdirectories automatically, +so configuring RCS +as demonstrated in the above example +should only be necessary if +you are fetching from +RCS,v +files in the same +directory as the source files, +or if you need to explicitly specify RCS +for a specific subdirectory. + + + + + + env.Replace(key=val, [...]) + + + +Replaces construction variables in the Environment +with the specified keyword arguments. + + + +Example: + + + +env.Replace(CCFLAGS = '-g', FOO = 'foo.xxx') + + + + + + Repository(directory) + + + env.Repository(directory) + + + +Specifies that +directory +is a repository to be searched for files. +Multiple calls to +Repository +are legal, +and each one adds to the list of +repositories that will be searched. + + + +To +scons, +a repository is a copy of the source tree, +from the top-level directory on down, +which may contain +both source files and derived files +that can be used to build targets in +the local source tree. +The canonical example would be an +official source tree maintained by an integrator. +If the repository contains derived files, +then the derived files should have been built using +scons, +so that the repository contains the necessary +signature information to allow +scons +to figure out when it is appropriate to +use the repository copy of a derived file, +instead of building one locally. + + + +Note that if an up-to-date derived file +already exists in a repository, +scons +will +not +make a copy in the local directory tree. +In order to guarantee that a local copy +will be made, +use the +Local +method. + + + + + + Requires(target, prerequisite) + + + env.Requires(target, prerequisite) + + + +Specifies an order-only relationship +between the specified target file(s) +and the specified prerequisite file(s). +The prerequisite file(s) +will be (re)built, if necessary, +before +the target file(s), +but the target file(s) do not actually +depend on the prerequisites +and will not be rebuilt simply because +the prerequisite file(s) change. + + + +Example: + + + +env.Requires('foo', 'file-that-must-be-built-before-foo') + + + + + + Return([vars..., stop=]) + + + +By default, +this stops processing the current SConscript +file and returns to the calling SConscript file +the values of the variables named in the +vars +string arguments. +Multiple strings contaning variable names may be passed to +Return. +Any strings that contain white space + + + +The optional +stop= +keyword argument may be set to a false value +to continue processing the rest of the SConscript +file after the +Return +call. +This was the default behavior prior to SCons 0.98. +However, the values returned +are still the values of the variables in the named +vars +at the point +Return +is called. + + + +Examples: + + + +# Returns without returning a value. +Return() + +# Returns the value of the 'foo' Python variable. +Return("foo") + +# Returns the values of the Python variables 'foo' and 'bar'. +Return("foo", "bar") + +# Returns the values of Python variables 'val1' and 'val2'. +Return('val1 val2') + + + + + + Scanner(function, [argument, keys, path_function, node_class, node_factory, scan_check, recursive]) + + + env.Scanner(function, [argument, keys, path_function, node_class, node_factory, scan_check, recursive]) + + + +Creates a Scanner object for +the specified +function. +See the section "Scanner Objects," +below, for a complete explanation of the arguments and behavior. + + + + + + env.SCCS() + + + +A factory function that +returns a Builder object +to be used to fetch source files +from SCCS. +The returned Builder +is intended to be passed to the +SourceCode +function. + + + +Example: + + + +env.SourceCode('.', env.SCCS()) + + + +Note that +scons +will fetch source files +from SCCS subdirectories automatically, +so configuring SCCS +as demonstrated in the above example +should only be necessary if +you are fetching from +s.SCCS +files in the same +directory as the source files, +or if you need to explicitly specify SCCS +for a specific subdirectory. + + + + + + SConscript(scripts, [exports, variant_dir, duplicate]) + + + env.SConscript(scripts, [exports, variant_dir, duplicate]) + + + SConscript(dirs=subdirs, [name=script, exports, variant_dir, duplicate]) + + + env.SConscript(dirs=subdirs, [name=script, exports, variant_dir, duplicate]) + + + +This tells +scons +to execute +one or more subsidiary SConscript (configuration) files. +Any variables returned by a called script using +Return +will be returned by the call to +SConscript. +There are two ways to call the +SConscript +function. + + + +The first way you can call +SConscript +is to explicitly specify one or more +scripts +as the first argument. +A single script may be specified as a string; +multiple scripts must be specified as a list +(either explicitly or as created by +a function like +Split). +Examples: + + +SConscript('SConscript') # run SConscript in the current directory +SConscript('src/SConscript') # run SConscript in the src directory +SConscript(['src/SConscript', 'doc/SConscript']) +config = SConscript('MyConfig.py') + + + +The second way you can call +SConscript +is to specify a list of (sub)directory names +as a +dirs=subdirs +keyword argument. +In this case, +scons +will, by default, +execute a subsidiary configuration file named +SConscript +in each of the specified directories. +You may specify a name other than +SConscript +by supplying an optional +name=script +keyword argument. +The first three examples below have the same effect +as the first three examples above: + + +SConscript(dirs='.') # run SConscript in the current directory +SConscript(dirs='src') # run SConscript in the src directory +SConscript(dirs=['src', 'doc']) +SConscript(dirs=['sub1', 'sub2'], name='MySConscript') + + + +The optional +exports +argument provides a list of variable names or a dictionary of +named values to export to the +script(s). +These variables are locally exported only to the specified +script(s), +and do not affect the global pool of variables used by the +Export +function. + +The subsidiary +script(s) +must use the +Import +function to import the variables. +Examples: + + +foo = SConscript('sub/SConscript', exports='env') +SConscript('dir/SConscript', exports=['env', 'variable']) +SConscript(dirs='subdir', exports='env variable') +SConscript(dirs=['one', 'two', 'three'], exports='shared_info') + + + +If the optional +variant_dir +argument is present, it causes an effect equivalent to the +VariantDir +method described below. +(If +variant_dir +is not present, the + +duplicate + +argument is ignored.) +The +variant_dir + +argument is interpreted relative to the directory of the calling +SConscript +file. +See the description of the +VariantDir +function below for additional details and restrictions. + + + +If +variant_dir +is present, + +the source directory is the directory in which the +SConscript +file resides and the +SConscript +file is evaluated as if it were in the +variant_dir +directory: + + +SConscript('src/SConscript', variant_dir = 'build') + + + +is equivalent to + + + +VariantDir('build', 'src') +SConscript('build/SConscript') + + + +This later paradigm is often used when the sources are +in the same directory as the +SConstruct: + + + +SConscript('SConscript', variant_dir = 'build') + + + +is equivalent to + + + +VariantDir('build', '.') +SConscript('build/SConscript') + + + + + + + +Here are some composite examples: + + + +# collect the configuration information and use it to build src and doc +shared_info = SConscript('MyConfig.py') +SConscript('src/SConscript', exports='shared_info') +SConscript('doc/SConscript', exports='shared_info') + + + +# build debugging and production versions. SConscript +# can use Dir('.').path to determine variant. +SConscript('SConscript', variant_dir='debug', duplicate=0) +SConscript('SConscript', variant_dir='prod', duplicate=0) + + + +# build debugging and production versions. SConscript +# is passed flags to use. +opts = { 'CPPDEFINES' : ['DEBUG'], 'CCFLAGS' : '-pgdb' } +SConscript('SConscript', variant_dir='debug', duplicate=0, exports=opts) +opts = { 'CPPDEFINES' : ['NODEBUG'], 'CCFLAGS' : '-O' } +SConscript('SConscript', variant_dir='prod', duplicate=0, exports=opts) + + + +# build common documentation and compile for different architectures +SConscript('doc/SConscript', variant_dir='build/doc', duplicate=0) +SConscript('src/SConscript', variant_dir='build/x86', duplicate=0) +SConscript('src/SConscript', variant_dir='build/ppc', duplicate=0) + + + + + + SConscriptChdir(value) + + + env.SConscriptChdir(value) + + + +By default, +scons +changes its working directory +to the directory in which each +subsidiary SConscript file lives. +This behavior may be disabled +by specifying either: + + + +SConscriptChdir(0) +env.SConscriptChdir(0) + + + +in which case +scons +will stay in the top-level directory +while reading all SConscript files. +(This may be necessary when building from repositories, +when all the directories in which SConscript files may be found +don't necessarily exist locally.) +You may enable and disable +this ability by calling +SConscriptChdir() +multiple times. + + + +Example: + + + +env = Environment() +SConscriptChdir(0) +SConscript('foo/SConscript') # will not chdir to foo +env.SConscriptChdir(1) +SConscript('bar/SConscript') # will chdir to bar + + + + + + SConsignFile([file, dbm_module]) + + + env.SConsignFile([file, dbm_module]) + + + +This tells +scons +to store all file signatures +in the specified database +file. +If the +file +name is omitted, +.sconsign +is used by default. +(The actual file name(s) stored on disk +may have an appropriated suffix appended +by the + dbm_module.) +If +file +is not an absolute path name, +the file is placed in the same directory as the top-level +SConstruct +file. + + + +If +file +is +None, +then +scons +will store file signatures +in a separate +.sconsign +file in each directory, +not in one global database file. +(This was the default behavior +prior to SCons 0.96.91 and 0.97.) + + + +The optional +dbm_module +argument can be used to specify +which Python database module +The default is to use a custom +SCons.dblite +module that uses pickled +Python data structures, +and which works on all Python versions. + + + +Examples: + + + +# Explicitly stores signatures in ".sconsign.dblite" +# in the top-level SConstruct directory (the +# default behavior). +SConsignFile() + +# Stores signatures in the file "etc/scons-signatures" +# relative to the top-level SConstruct directory. +SConsignFile("etc/scons-signatures") + +# Stores signatures in the specified absolute file name. +SConsignFile("/home/me/SCons/signatures") + +# Stores signatures in a separate .sconsign file +# in each directory. +SConsignFile(None) + + + + + + env.SetDefault(key=val, [...]) + + + +Sets construction variables to default values specified with the keyword +arguments if (and only if) the variables are not already set. +The following statements are equivalent: + + + +env.SetDefault(FOO = 'foo') + +if 'FOO' not in env: env['FOO'] = 'foo' + + + + + + SetOption(name, value) + + + env.SetOption(name, value) + + + +This function provides a way to set a select subset of the scons command +line options from a SConscript file. The options supported are: + + + + + +clean + + +which corresponds to -c, --clean and --remove; + + + + +duplicate + + +which corresponds to --duplicate; + + + + +help + + +which corresponds to -h and --help; + + + + +implicit_cache + + +which corresponds to --implicit-cache; + + + + +max_drift + + +which corresponds to --max-drift; + + + + +no_exec + + +which corresponds to -n, --no-exec, --just-print, --dry-run and --recon; + + + + +num_jobs + + +which corresponds to -j and --jobs; + + + + +random + + +which corresponds to --random; and + + + + +stack_size + + +which corresponds to --stack-size. + + + + + + + +See the documentation for the +corresponding command line object for information about each specific +option. + + + +Example: + + + +SetOption('max_drift', 1) + + + + + + SideEffect(side_effect, target) + + + env.SideEffect(side_effect, target) + + + +Declares +side_effect +as a side effect of building +target. +Both +side_effect +and +target +can be a list, a file name, or a node. +A side effect is a target file that is created or updated +as a side effect of building other targets. +For example, a Windows PDB +file is created as a side effect of building the .obj +files for a static library, +and various log files are created updated +as side effects of various TeX commands. +If a target is a side effect of multiple build commands, +scons +will ensure that only one set of commands +is executed at a time. +Consequently, you only need to use this method +for side-effect targets that are built as a result of +multiple build commands. + + + +Because multiple build commands may update +the same side effect file, +by default the +side_effect +target is +not +automatically removed +when the +target +is removed by the + +option. +(Note, however, that the +side_effect +might be removed as part of +cleaning the directory in which it lives.) +If you want to make sure the +side_effect +is cleaned whenever a specific +target +is cleaned, +you must specify this explicitly +with the +Clean +or +env.Clean +function. + + + + + + SourceCode(entries, builder) + + + env.SourceCode(entries, builder) + + + +This function and its associate factory functions are deprecated. +There is no replacement. +The intended use was to keep a local tree in sync with an archive, +but in actuality the function only causes the archive +to be fetched on the first run. +Synchronizing with the archive is best done external to SCons. + + + +Arrange for non-existent source files to +be fetched from a source code management system +using the specified +builder. +The specified +entries +may be a Node, string or list of both, +and may represent either individual +source files or directories in which +source files can be found. + + + +For any non-existent source files, +scons +will search up the directory tree +and use the first +SourceCode +builder it finds. +The specified +builder +may be +None, +in which case +scons +will not use a builder to fetch +source files for the specified +entries, +even if a +SourceCode +builder has been specified +for a directory higher up the tree. + + + +scons +will, by default, +fetch files from SCCS or RCS subdirectories +without explicit configuration. +This takes some extra processing time +to search for the necessary +source code management files on disk. +You can avoid these extra searches +and speed up your build a little +by disabling these searches as follows: + + + +env.SourceCode('.', None) + + + +Note that if the specified +builder +is one you create by hand, +it must have an associated +construction environment to use +when fetching a source file. + + + +scons +provides a set of canned factory +functions that return appropriate +Builders for various popular +source code management systems. +Canonical examples of invocation include: + + + +env.SourceCode('.', env.BitKeeper('/usr/local/BKsources')) +env.SourceCode('src', env.CVS('/usr/local/CVSROOT')) +env.SourceCode('/', env.RCS()) +env.SourceCode(['f1.c', 'f2.c'], env.SCCS()) +env.SourceCode('no_source.c', None) + + + + + + + + + SourceSignatures(type) + + + env.SourceSignatures(type) + + + +Note: Although it is not yet officially deprecated, +use of this function is discouraged. +See the +Decider +function for a more flexible and straightforward way +to configure SCons' decision-making. + + + +The +SourceSignatures +function tells +scons +how to decide if a source file +(a file that is not built from any other files) +has changed since the last time it +was used to build a particular target file. +Legal values are +MD5 +or +timestamp. + + + +If the environment method is used, +the specified type of source signature +is only used when deciding whether targets +built with that environment are up-to-date or must be rebuilt. +If the global function is used, +the specified type of source signature becomes the default +used for all decisions +about whether targets are up-to-date. + + + +MD5 +means +scons +decides that a source file has changed +if the MD5 checksum of its contents has changed since +the last time it was used to rebuild a particular target file. + + + +timestamp +means +scons +decides that a source file has changed +if its timestamp (modification time) has changed since +the last time it was used to rebuild a particular target file. +(Note that although this is similar to the behavior of Make, +by default it will also rebuild if the dependency is +older +than the last time it was used to rebuild the target file.) + + + +There is no different between the two behaviors +for Python +Value +node objects. + + + +MD5 +signatures take longer to compute, +but are more accurate than +timestamp +signatures. +The default value is +MD5. + + + +Note that the default +TargetSignatures +setting (see below) +is to use this +SourceSignatures +setting for any target files that are used +to build other target files. +Consequently, changing the value of +SourceSignatures +will, by default, +affect the up-to-date decision for all files in the build +(or all files built with a specific construction environment +when +env.SourceSignatures +is used). + + + + + + Split(arg) + + + env.Split(arg) + + + +Returns a list of file names or other objects. +If arg is a string, +it will be split on strings of white-space characters +within the string, +making it easier to write long lists of file names. +If arg is already a list, +the list will be returned untouched. +If arg is any other type of object, +it will be returned as a list +containing just the object. + + + +Example: + + + +files = Split("f1.c f2.c f3.c") +files = env.Split("f4.c f5.c f6.c") +files = Split(""" + f7.c + f8.c + f9.c +""") + + + + + + env.subst(input, [raw, target, source, conv]) + + + +Performs construction variable interpolation +on the specified string or sequence argument +input. + + + +By default, +leading or trailing white space will +be removed from the result. +and all sequences of white space +will be compressed to a single space character. +Additionally, any +$( +and +$) +character sequences will be stripped from the returned string, +The optional +raw +argument may be set to +1 +if you want to preserve white space and +$(-$) +sequences. +The +raw +argument may be set to +2 +if you want to strip +all characters between +any +$( +and +$) +pairs +(as is done for signature calculation). + + + +If the input is a sequence +(list or tuple), +the individual elements of +the sequence will be expanded, +and the results will be returned as a list. + + + +The optional +target +and +source +keyword arguments +must be set to lists of +target and source nodes, respectively, +if you want the +$TARGET, +$TARGETS, +$SOURCE +and +$SOURCES +to be available for expansion. +This is usually necessary if you are +calling +env.subst +from within a Python function used +as an SCons action. + + + +Returned string values or sequence elements +are converted to their string representation by default. +The optional +conv +argument +may specify a conversion function +that will be used in place of +the default. +For example, if you want Python objects +(including SCons Nodes) +to be returned as Python objects, +you can use the Python +Λ +idiom to pass in an unnamed function +that simply returns its unconverted argument. + + + +Example: + + + +print env.subst("The C compiler is: $CC") + +def compile(target, source, env): + sourceDir = env.subst("${SOURCE.srcdir}", + target=target, + source=source) + +source_nodes = env.subst('$EXPAND_TO_NODELIST', + conv=lambda x: x) + + + + + + Tag(node, tags) + + + +Annotates file or directory Nodes with +information about how the +Package +Builder should package those files or directories. +All tags are optional. + + + +Examples: + + + +# makes sure the built library will be installed with 0644 file +# access mode +Tag( Library( 'lib.c' ), UNIX_ATTR="0644" ) + +# marks file2.txt to be a documentation file +Tag( 'file2.txt', DOC ) + + + + + + TargetSignatures(type) + + + env.TargetSignatures(type) + + + +Note: Although it is not yet officially deprecated, +use of this function is discouraged. +See the +Decider +function for a more flexible and straightforward way +to configure SCons' decision-making. + + + +The +TargetSignatures +function tells +scons +how to decide if a target file +(a file that +is +built from any other files) +has changed since the last time it +was used to build some other target file. +Legal values are +"build"; +"content" +(or its synonym +"MD5"); +"timestamp"; +or +"source". + + + +If the environment method is used, +the specified type of target signature is only used +for targets built with that environment. +If the global function is used, +the specified type of signature becomes the default +used for all target files that +don't have an explicit target signature type +specified for their environments. + + + +"content" +(or its synonym +"MD5") +means +scons +decides that a target file has changed +if the MD5 checksum of its contents has changed since +the last time it was used to rebuild some other target file. +This means +scons +will open up +MD5 sum the contents +of target files after they're built, +and may decide that it does not need to rebuild +"downstream" target files if a file was +rebuilt with exactly the same contents as the last time. + + + +"timestamp" +means +scons +decides that a target file has changed +if its timestamp (modification time) has changed since +the last time it was used to rebuild some other target file. +(Note that although this is similar to the behavior of Make, +by default it will also rebuild if the dependency is +older +than the last time it was used to rebuild the target file.) + + + +"source" +means +scons +decides that a target file has changed +as specified by the corresponding +SourceSignatures +setting +("MD5" +or +"timestamp"). +This means that +scons +will treat all input files to a target the same way, +regardless of whether they are source files +or have been built from other files. + + + +"build" +means +scons +decides that a target file has changed +if it has been rebuilt in this invocation +or if its content or timestamp have changed +as specified by the corresponding +SourceSignatures +setting. +This "propagates" the status of a rebuilt file +so that other "downstream" target files +will always be rebuilt, +even if the contents or the timestamp +have not changed. + + + +"build" +signatures are fastest because +"content" +(or +"MD5") +signatures take longer to compute, +but are more accurate than +"timestamp" +signatures, +and can prevent unnecessary "downstream" rebuilds +when a target file is rebuilt to the exact same contents +as the previous build. +The +"source" +setting provides the most consistent behavior +when other target files may be rebuilt from +both source and target input files. +The default value is +"source". + + + +Because the default setting is +"source", +using +SourceSignatures +is generally preferable to +TargetSignatures, +so that the up-to-date decision +will be consistent for all files +(or all files built with a specific construction environment). +Use of +TargetSignatures +provides specific control for how built target files +affect their "downstream" dependencies. + + + + + + Tool(string, [toolpath, **kw]) + + + env.Tool(string, [toolpath, **kw]) + + + +The +Tool +form of the function +returns a callable object +that can be used to initialize +a construction environment using the +tools keyword of the Environment() method. +The object may be called with a construction +environment as an argument, +in which case the object will +add the necessary variables +to the construction environment +and the name of the tool will be added to the +$TOOLS +construction variable. + + + +Additional keyword arguments are passed to the tool's +generate() +method. + + + +Examples: + + + +env = Environment(tools = [ Tool('msvc') ]) + +env = Environment() +t = Tool('msvc') +t(env) # adds 'msvc' to the TOOLS variable +u = Tool('opengl', toolpath = ['tools']) +u(env) # adds 'opengl' to the TOOLS variable + + + +The +env.Tool +form of the function +applies the callable object for the specified tool +string +to the environment through which the method was called. + + + +Additional keyword arguments are passed to the tool's +generate() +method. + + + +env.Tool('gcc') +env.Tool('opengl', toolpath = ['build/tools']) + + + + + + Value(value, [built_value]) + + + env.Value(value, [built_value]) + + + +Returns a Node object representing the specified Python value. Value +Nodes can be used as dependencies of targets. If the result of +calling +str(value) +changes between SCons runs, any targets depending on +Value(value) +will be rebuilt. +(This is true even when using timestamps to decide if +files are up-to-date.) +When using timestamp source signatures, Value Nodes' +timestamps are equal to the system time when the Node is created. + + + +The returned Value Node object has a +write() +method that can be used to "build" a Value Node +by setting a new value. +The optional +built_value +argument can be specified +when the Value Node is created +to indicate the Node should already be considered +"built." +There is a corresponding +read() +method that will return the built value of the Node. + + + +Examples: + + + +env = Environment() + +def create(target, source, env): + # A function that will write a 'prefix=$SOURCE' + # string into the file name specified as the + # $TARGET. + f = open(str(target[0]), 'wb') + f.write('prefix=' + source[0].get_contents()) + +# Fetch the prefix= argument, if any, from the command +# line, and use /usr/local as the default. +prefix = ARGUMENTS.get('prefix', '/usr/local') + +# Attach a .Config() builder for the above function action +# to the construction environment. +env['BUILDERS']['Config'] = Builder(action = create) +env.Config(target = 'package-config', source = Value(prefix)) + +def build_value(target, source, env): + # A function that "builds" a Python Value by updating + # the the Python value with the contents of the file + # specified as the source of the Builder call ($SOURCE). + target[0].write(source[0].get_contents()) + +output = env.Value('before') +input = env.Value('after') + +# Attach a .UpdateValue() builder for the above function +# action to the construction environment. +env['BUILDERS']['UpdateValue'] = Builder(action = build_value) +env.UpdateValue(target = Value(output), source = Value(input)) + + + + + + VariantDir(variant_dir, src_dir, [duplicate]) + + + env.VariantDir(variant_dir, src_dir, [duplicate]) + + + +Use the +VariantDir +function to create a copy of your sources in another location: +if a name under +variant_dir +is not found but exists under +src_dir, +the file or directory is copied to +variant_dir. +Target files can be built in a different directory +than the original sources by simply refering to the sources (and targets) +within the variant tree. + + + +VariantDir +can be called multiple times with the same +src_dir +to set up multiple builds with different options +(variants). +The +src_dir +location must be in or underneath the SConstruct file's directory, and +variant_dir +may not be underneath +src_dir. + + + + +The default behavior is for +scons +to physically duplicate the source files in the variant tree. +Thus, a build performed in the variant tree is guaranteed to be identical +to a build performed in the source tree even if +intermediate source files are generated during the build, +or preprocessors or other scanners search for included files +relative to the source file, +or individual compilers or other invoked tools are hard-coded +to put derived files in the same directory as source files. + + + +If possible on the platform, +the duplication is performed by linking rather than copying; +see also the + +command-line option. +Moreover, only the files needed for the build are duplicated; +files and directories that are not used are not present in +variant_dir. + + + +Duplicating the source tree may be disabled by setting the +duplicate +argument to +0 +(zero). +This will cause +scons +to invoke Builders using the path names of source files in +src_dir +and the path names of derived files within +variant_dir. +This is always more efficient than +duplicate=1, +and is usually safe for most builds +(but see above for cases that may cause problems). + + + +Note that +VariantDir +works most naturally with a subsidiary SConscript file. +However, you would then call the subsidiary SConscript file +not in the source directory, but in the +variant_dir, +regardless of the value of +duplicate. +This is how you tell +scons +which variant of a source tree to build: + + + +# run src/SConscript in two variant directories +VariantDir('build/variant1', 'src') +SConscript('build/variant1/SConscript') +VariantDir('build/variant2', 'src') +SConscript('build/variant2/SConscript') + + + +See also the +SConscript +function, described above, +for another way to specify a variant directory +in conjunction with calling a subsidiary SConscript file. + + + +Examples: + + + +# use names in the build directory, not the source directory +VariantDir('build', 'src', duplicate=0) +Program('build/prog', 'build/source.c') + + + +# this builds both the source and docs in a separate subtree +VariantDir('build', '.', duplicate=0) +SConscript(dirs=['build/src','build/doc']) + + + +# same as previous example, but only uses SConscript +SConscript(dirs='src', variant_dir='build/src', duplicate=0) +SConscript(dirs='doc', variant_dir='build/doc', duplicate=0) + + + + + + WhereIs(program, [path, pathext, reject]) + + + env.WhereIs(program, [path, pathext, reject]) + + + +Searches for the specified executable +program, +returning the full path name to the program +if it is found, +and returning None if not. +Searches the specified +path, +the value of the calling environment's PATH +(env['ENV']['PATH']), +or the user's current external PATH +(os.environ['PATH']) +by default. +On Windows systems, searches for executable +programs with any of the file extensions +listed in the specified +pathext, +the calling environment's PATHEXT +(env['ENV']['PATHEXT']) +or the user's current PATHEXT +(os.environ['PATHEXT']) +by default. +Will not select any +path name or names +in the specified +reject +list, if any. + + + + diff --git a/doc/generated/functions.mod b/doc/generated/functions.mod new file mode 100644 index 0000000..99aaa48 --- /dev/null +++ b/doc/generated/functions.mod @@ -0,0 +1,375 @@ + + + + +Action"> +AddMethod"> +AddOption"> +AddPostAction"> +AddPreAction"> +Alias"> +AllowSubstExceptions"> +AlwaysBuild"> +Append"> +AppendENVPath"> +AppendUnique"> +BitKeeper"> +BuildDir"> +Builder"> +CacheDir"> +Clean"> +Clone"> +Command"> +Configure"> +Copy"> +CVS"> +Decider"> +Default"> +DefaultEnvironment"> +Depends"> +Dictionary"> +Dir"> +Dump"> +EnsurePythonVersion"> +EnsureSConsVersion"> +Environment"> +Execute"> +Exit"> +Export"> +File"> +FindFile"> +FindInstalledFiles"> +FindPathDirs"> +FindSourceFiles"> +Flatten"> +GetBuildFailures"> +GetBuildPath"> +GetLaunchDir"> +GetOption"> +Glob"> +Help"> +Ignore"> +Import"> +Literal"> +Local"> +MergeFlags"> +NoCache"> +NoClean"> +ParseConfig"> +ParseDepends"> +ParseFlags"> +Perforce"> +Platform"> +Precious"> +Prepend"> +PrependENVPath"> +PrependUnique"> +Progress"> +Pseudo"> +RCS"> +Replace"> +Repository"> +Requires"> +Return"> +Scanner"> +SCCS"> +SConscript"> +SConscriptChdir"> +SConsignFile"> +SetDefault"> +SetOption"> +SideEffect"> +SourceCode"> +SourceSignatures"> +Split"> +subst"> +Tag"> +TargetSignatures"> +Tool"> +Value"> +VariantDir"> +WhereIs"> + +env.Action"> +env.AddMethod"> +env.AddOption"> +env.AddPostAction"> +env.AddPreAction"> +env.Alias"> +env.AllowSubstExceptions"> +env.AlwaysBuild"> +env.Append"> +env.AppendENVPath"> +env.AppendUnique"> +env.BitKeeper"> +env.BuildDir"> +env.Builder"> +env.CacheDir"> +env.Clean"> +env.Clone"> +env.Command"> +env.Configure"> +env.Copy"> +env.CVS"> +env.Decider"> +env.Default"> +env.DefaultEnvironment"> +env.Depends"> +env.Dictionary"> +env.Dir"> +env.Dump"> +env.EnsurePythonVersion"> +env.EnsureSConsVersion"> +env.Environment"> +env.Execute"> +env.Exit"> +env.Export"> +env.File"> +env.FindFile"> +env.FindInstalledFiles"> +env.FindPathDirs"> +env.FindSourceFiles"> +env.Flatten"> +env.GetBuildFailures"> +env.GetBuildPath"> +env.GetLaunchDir"> +env.GetOption"> +env.Glob"> +env.Help"> +env.Ignore"> +env.Import"> +env.Literal"> +env.Local"> +env.MergeFlags"> +env.NoCache"> +env.NoClean"> +env.ParseConfig"> +env.ParseDepends"> +env.ParseFlags"> +env.Perforce"> +env.Platform"> +env.Precious"> +env.Prepend"> +env.PrependENVPath"> +env.PrependUnique"> +env.Progress"> +env.Pseudo"> +env.RCS"> +env.Replace"> +env.Repository"> +env.Requires"> +env.Return"> +env.Scanner"> +env.SCCS"> +env.SConscript"> +env.SConscriptChdir"> +env.SConsignFile"> +env.SetDefault"> +env.SetOption"> +env.SideEffect"> +env.SourceCode"> +env.SourceSignatures"> +env.Split"> +env.subst"> +env.Tag"> +env.TargetSignatures"> +env.Tool"> +env.Value"> +env.VariantDir"> +env.WhereIs"> + + + + + +Action"> +AddMethod"> +AddOption"> +AddPostAction"> +AddPreAction"> +Alias"> +AllowSubstExceptions"> +AlwaysBuild"> +Append"> +AppendENVPath"> +AppendUnique"> +BitKeeper"> +BuildDir"> +Builder"> +CacheDir"> +Clean"> +Clone"> +Command"> +Configure"> +Copy"> +CVS"> +Decider"> +Default"> +DefaultEnvironment"> +Depends"> +Dictionary"> +Dir"> +Dump"> +EnsurePythonVersion"> +EnsureSConsVersion"> +Environment"> +Execute"> +Exit"> +Export"> +File"> +FindFile"> +FindInstalledFiles"> +FindPathDirs"> +FindSourceFiles"> +Flatten"> +GetBuildFailures"> +GetBuildPath"> +GetLaunchDir"> +GetOption"> +Glob"> +Help"> +Ignore"> +Import"> +Literal"> +Local"> +MergeFlags"> +NoCache"> +NoClean"> +ParseConfig"> +ParseDepends"> +ParseFlags"> +Perforce"> +Platform"> +Precious"> +Prepend"> +PrependENVPath"> +PrependUnique"> +Progress"> +Pseudo"> +RCS"> +Replace"> +Repository"> +Requires"> +Return"> +Scanner"> +SCCS"> +SConscript"> +SConscriptChdir"> +SConsignFile"> +SetDefault"> +SetOption"> +SideEffect"> +SourceCode"> +SourceSignatures"> +Split"> +subst"> +Tag"> +TargetSignatures"> +Tool"> +Value"> +VariantDir"> +WhereIs"> + +env.Action"> +env.AddMethod"> +env.AddOption"> +env.AddPostAction"> +env.AddPreAction"> +env.Alias"> +env.AllowSubstExceptions"> +env.AlwaysBuild"> +env.Append"> +env.AppendENVPath"> +env.AppendUnique"> +env.BitKeeper"> +env.BuildDir"> +env.Builder"> +env.CacheDir"> +env.Clean"> +env.Clone"> +env.Command"> +env.Configure"> +env.Copy"> +env.CVS"> +env.Decider"> +env.Default"> +env.DefaultEnvironment"> +env.Depends"> +env.Dictionary"> +env.Dir"> +env.Dump"> +env.EnsurePythonVersion"> +env.EnsureSConsVersion"> +env.Environment"> +env.Execute"> +env.Exit"> +env.Export"> +env.File"> +env.FindFile"> +env.FindInstalledFiles"> +env.FindPathDirs"> +env.FindSourceFiles"> +env.Flatten"> +env.GetBuildFailures"> +env.GetBuildPath"> +env.GetLaunchDir"> +env.GetOption"> +env.Glob"> +env.Help"> +env.Ignore"> +env.Import"> +env.Literal"> +env.Local"> +env.MergeFlags"> +env.NoCache"> +env.NoClean"> +env.ParseConfig"> +env.ParseDepends"> +env.ParseFlags"> +env.Perforce"> +env.Platform"> +env.Precious"> +env.Prepend"> +env.PrependENVPath"> +env.PrependUnique"> +env.Progress"> +env.Pseudo"> +env.RCS"> +env.Replace"> +env.Repository"> +env.Requires"> +env.Return"> +env.Scanner"> +env.SCCS"> +env.SConscript"> +env.SConscriptChdir"> +env.SConsignFile"> +env.SetDefault"> +env.SetOption"> +env.SideEffect"> +env.SourceCode"> +env.SourceSignatures"> +env.Split"> +env.subst"> +env.Tag"> +env.TargetSignatures"> +env.Tool"> +env.Value"> +env.VariantDir"> +env.WhereIs"> + + diff --git a/doc/generated/tools.gen b/doc/generated/tools.gen new file mode 100644 index 0000000..a0a709e --- /dev/null +++ b/doc/generated/tools.gen @@ -0,0 +1,1003 @@ + + + %scons; + + %builders-mod; + + %functions-mod; + + %tools-mod; + + %variables-mod; +]> + + + + 386asm + + +Sets construction variables for the 386ASM assembler +for the Phar Lap ETS embedded operating system. + +Sets: &cv-link-AS;, &cv-link-ASCOM;, &cv-link-ASFLAGS;, &cv-link-ASPPCOM;, &cv-link-ASPPFLAGS;.Uses: &cv-link-CC;, &cv-link-CPPFLAGS;, &cv-link-_CPPDEFFLAGS;, &cv-link-_CPPINCFLAGS;. + + + aixc++ + + +Sets construction variables for the IMB xlc / Visual Age C++ compiler. + +Sets: &cv-link-CXX;, &cv-link-CXXVERSION;, &cv-link-SHCXX;, &cv-link-SHOBJSUFFIX;. + + + aixcc + + +Sets construction variables for the IBM xlc / Visual Age C compiler. + +Sets: &cv-link-CC;, &cv-link-CCVERSION;, &cv-link-SHCC;. + + + aixf77 + + +Sets construction variables for the IBM Visual Age f77 Fortran compiler. + +Sets: &cv-link-F77;, &cv-link-SHF77;. + + + aixlink + + +Sets construction variables for the IBM Visual Age linker. + +Sets: &cv-link-LINKFLAGS;, &cv-link-SHLIBSUFFIX;, &cv-link-SHLINKFLAGS;. + + + applelink + + +Sets construction variables for the Apple linker +(similar to the GNU linker). + +Sets: &cv-link-FRAMEWORKPATHPREFIX;, &cv-link-LDMODULECOM;, &cv-link-LDMODULEFLAGS;, &cv-link-LDMODULEPREFIX;, &cv-link-LDMODULESUFFIX;, &cv-link-LINKCOM;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;, &cv-link-_FRAMEWORKPATH;, &cv-link-_FRAMEWORKS;.Uses: &cv-link-FRAMEWORKSFLAGS;. + + + ar + + +Sets construction variables for the ar library archiver. + +Sets: &cv-link-AR;, &cv-link-ARCOM;, &cv-link-ARFLAGS;, &cv-link-LIBPREFIX;, &cv-link-LIBSUFFIX;, &cv-link-RANLIB;, &cv-link-RANLIBCOM;, &cv-link-RANLIBFLAGS;. + + + as + + +Sets construction variables for the as assembler. + +Sets: &cv-link-AS;, &cv-link-ASCOM;, &cv-link-ASFLAGS;, &cv-link-ASPPCOM;, &cv-link-ASPPFLAGS;.Uses: &cv-link-CC;, &cv-link-CPPFLAGS;, &cv-link-_CPPDEFFLAGS;, &cv-link-_CPPINCFLAGS;. + + + bcc32 + + +Sets construction variables for the bcc32 compiler. + +Sets: &cv-link-CC;, &cv-link-CCCOM;, &cv-link-CCFLAGS;, &cv-link-CFILESUFFIX;, &cv-link-CFLAGS;, &cv-link-CPPDEFPREFIX;, &cv-link-CPPDEFSUFFIX;, &cv-link-INCPREFIX;, &cv-link-INCSUFFIX;, &cv-link-SHCC;, &cv-link-SHCCCOM;, &cv-link-SHCCFLAGS;, &cv-link-SHCFLAGS;, &cv-link-SHOBJSUFFIX;.Uses: &cv-link-_CPPDEFFLAGS;, &cv-link-_CPPINCFLAGS;. + + + BitKeeper + + +Sets construction variables for the BitKeeper +source code control system. + +Sets: &cv-link-BITKEEPER;, &cv-link-BITKEEPERCOM;, &cv-link-BITKEEPERGET;, &cv-link-BITKEEPERGETFLAGS;.Uses: &cv-link-BITKEEPERCOMSTR;. + + + cc + + +Sets construction variables for generic POSIX C copmilers. + +Sets: &cv-link-CC;, &cv-link-CCCOM;, &cv-link-CCFLAGS;, &cv-link-CFILESUFFIX;, &cv-link-CFLAGS;, &cv-link-CPPDEFPREFIX;, &cv-link-CPPDEFSUFFIX;, &cv-link-FRAMEWORKPATH;, &cv-link-FRAMEWORKS;, &cv-link-INCPREFIX;, &cv-link-INCSUFFIX;, &cv-link-SHCC;, &cv-link-SHCCCOM;, &cv-link-SHCCFLAGS;, &cv-link-SHCFLAGS;, &cv-link-SHOBJSUFFIX;.Uses: &cv-link-PLATFORM;. + + + cvf + + +Sets construction variables for the Compaq Visual Fortran compiler. + +Sets: &cv-link-FORTRAN;, &cv-link-FORTRANCOM;, &cv-link-FORTRANMODDIR;, &cv-link-FORTRANMODDIRPREFIX;, &cv-link-FORTRANMODDIRSUFFIX;, &cv-link-FORTRANPPCOM;, &cv-link-OBJSUFFIX;, &cv-link-SHFORTRANCOM;, &cv-link-SHFORTRANPPCOM;.Uses: &cv-link-CPPFLAGS;, &cv-link-FORTRANFLAGS;, &cv-link-SHFORTRANFLAGS;, &cv-link-_CPPDEFFLAGS;, &cv-link-_FORTRANINCFLAGS;, &cv-link-_FORTRANMODFLAG;. + + + CVS + + +Sets construction variables for the CVS source code +management system. + +Sets: &cv-link-CVS;, &cv-link-CVSCOFLAGS;, &cv-link-CVSCOM;, &cv-link-CVSFLAGS;.Uses: &cv-link-CVSCOMSTR;. + + + cXX + + +Sets construction variables for generic POSIX C++ compilers. + +Sets: &cv-link-CPPDEFPREFIX;, &cv-link-CPPDEFSUFFIX;, &cv-link-CXX;, &cv-link-CXXCOM;, &cv-link-CXXFILESUFFIX;, &cv-link-CXXFLAGS;, &cv-link-INCPREFIX;, &cv-link-INCSUFFIX;, &cv-link-OBJSUFFIX;, &cv-link-SHCXX;, &cv-link-SHCXXCOM;, &cv-link-SHCXXFLAGS;, &cv-link-SHOBJSUFFIX;.Uses: &cv-link-CXXCOMSTR;. + + + default + + +Sets variables by calling a default list of Tool modules +for the platform on which SCons is running. + + + + + dmd + + +Sets construction variables for D language compilers +(the Digital Mars D compiler, or GDC). + + + + + docbook + +This tool tries to make working with Docbook in SCons a little easier. +It provides several toolchains for creating different output formats, +like HTML or PDF. Contained in the package is +a distribution of the Docbook XSL stylesheets as of version 1.76.1. +As long as you don't specify your own stylesheets for customization, +these official versions are picked as default...which should reduce +the inevitable setup hassles for you. + +Implicit dependencies to images and XIncludes are detected automatically +if you meet the HTML requirements. The additional +stylesheet utils/xmldepend.xsl by Paul DuBois is used for this purpose. + +Note, that there is no support for XML catalog resolving offered! This tool calls +the XSLT processors and PDF renderers with the stylesheets you specified, that's it. +The rest lies in your hands and you still have to know what you're doing when +resolving names via a catalog. + +For activating the tool "docbook", you have to add its name to the Environment constructor, +like this + +env = Environment(tools=['docbook']) + +On its startup, the Docbook tool tries to find a required xsltproc processor, and +a PDF renderer, e.g. fop. So make sure that these are added to your system's environment +PATH and can be called directly, without specifying their full path. + +For the most basic processing of Docbook to HTML, you need to have installed + +the Python lxml binding to libxml2, or + + +the direct Python bindings for libxml2/libxslt, or + + +a standalone XSLT processor, currently detected are xsltproc, saxon, saxon-xslt +and xalan. + + + +Rendering to PDF requires you to have one of the applications +fop or xep installed. + + +Creating a HTML or PDF document is very simple and straightforward. Say + +env = Environment(tools=['docbook']) +env.DocbookHtml('manual.html', 'manual.xml') +env.DocbookPdf('manual.pdf', 'manual.xml') + +to get both outputs from your XML source manual.xml. As a shortcut, you can +give the stem of the filenames alone, like this: + +env = Environment(tools=['docbook']) +env.DocbookHtml('manual') +env.DocbookPdf('manual') + +and get the same result. Target and source lists are also supported: + +env = Environment(tools=['docbook']) +env.DocbookHtml(['manual.html','reference.html'], ['manual.xml','reference.xml']) + +or even + +env = Environment(tools=['docbook']) +env.DocbookHtml(['manual','reference']) + +Whenever you leave out the list of sources, you may not specify a file extension! The +Tool uses the given names as file stems, and adds the suffixes for target and source files +accordingly. + + +The rules given above are valid for the Builders DocbookHtml, +DocbookPdf, DocbookEpub, DocbookSlidesPdf and DocbookXInclude. For the +DocbookMan transformation you +can specify a target name, but the actual output names are automatically +set from the refname entries in your XML source. + + +The Builders DocbookHtmlChunked, DocbookHtmlhelp and +DocbookSlidesHtml are special, in that: + +they create a large set of files, where the exact names and their number depend +on the content of the source file, and + + +the main target is always named index.html, i.e. the output name for the +XSL transformation is not picked up by the stylesheets. + + + +As a result, there is simply no use in specifying a target HTML name. +So the basic syntax for these builders is always: + +env = Environment(tools=['docbook']) +env.DocbookHtmlhelp('manual') + + +If you want to use a specific XSL file, you can set the +additional xsl parameter to your +Builder call as follows: + +env.DocbookHtml('other.html', 'manual.xml', xsl='html.xsl') + +Since this may get tedious if you always use the same local naming for your customized XSL files, +e.g. html.xsl for HTML and pdf.xsl for PDF output, a set of +variables for setting the default XSL name is provided. These are: + +DOCBOOK_DEFAULT_XSL_HTML +DOCBOOK_DEFAULT_XSL_HTMLCHUNKED +DOCBOOK_DEFAULT_XSL_HTMLHELP +DOCBOOK_DEFAULT_XSL_PDF +DOCBOOK_DEFAULT_XSL_EPUB +DOCBOOK_DEFAULT_XSL_MAN +DOCBOOK_DEFAULT_XSL_SLIDESPDF +DOCBOOK_DEFAULT_XSL_SLIDESHTML + +and you can set them when constructing your environment: + +env = Environment(tools=['docbook'], + DOCBOOK_DEFAULT_XSL_HTML='html.xsl', + DOCBOOK_DEFAULT_XSL_PDF='pdf.xsl') +env.DocbookHtml('manual') # now uses html.xsl + +Sets: &cv-link-DOCBOOK_DEFAULT_XSL_EPUB;, &cv-link-DOCBOOK_DEFAULT_XSL_HTML;, &cv-link-DOCBOOK_DEFAULT_XSL_HTMLCHUNKED;, &cv-link-DOCBOOK_DEFAULT_XSL_HTMLHELP;, &cv-link-DOCBOOK_DEFAULT_XSL_MAN;, &cv-link-DOCBOOK_DEFAULT_XSL_PDF;, &cv-link-DOCBOOK_DEFAULT_XSL_SLIDESHTML;, &cv-link-DOCBOOK_DEFAULT_XSL_SLIDESPDF;, &cv-link-DOCBOOK_FOP;, &cv-link-DOCBOOK_FOPCOM;, &cv-link-DOCBOOK_FOPFLAGS;, &cv-link-DOCBOOK_XMLLINT;, &cv-link-DOCBOOK_XMLLINTCOM;, &cv-link-DOCBOOK_XMLLINTFLAGS;, &cv-link-DOCBOOK_XSLTPROC;, &cv-link-DOCBOOK_XSLTPROCCOM;, &cv-link-DOCBOOK_XSLTPROCFLAGS;, &cv-link-DOCBOOK_XSLTPROCPARAMS;.Uses: &cv-link-DOCBOOK_FOPCOMSTR;, &cv-link-DOCBOOK_XMLLINTCOMSTR;, &cv-link-DOCBOOK_XSLTPROCCOMSTR;. + + + dvi + + +Attaches the DVI builder to the +construction environment. + + + + + dvipdf + + +Sets construction variables for the dvipdf utility. + +Sets: &cv-link-DVIPDF;, &cv-link-DVIPDFCOM;, &cv-link-DVIPDFFLAGS;.Uses: &cv-link-DVIPDFCOMSTR;. + + + dvips + + +Sets construction variables for the dvips utility. + +Sets: &cv-link-DVIPS;, &cv-link-DVIPSFLAGS;, &cv-link-PSCOM;, &cv-link-PSPREFIX;, &cv-link-PSSUFFIX;.Uses: &cv-link-PSCOMSTR;. + + + f03 + + +Set construction variables for generic POSIX Fortran 03 compilers. + +Sets: &cv-link-F03;, &cv-link-F03COM;, &cv-link-F03FLAGS;, &cv-link-F03PPCOM;, &cv-link-SHF03;, &cv-link-SHF03COM;, &cv-link-SHF03FLAGS;, &cv-link-SHF03PPCOM;, &cv-link-_F03INCFLAGS;.Uses: &cv-link-F03COMSTR;, &cv-link-F03PPCOMSTR;, &cv-link-SHF03COMSTR;, &cv-link-SHF03PPCOMSTR;. + + + f77 + + +Set construction variables for generic POSIX Fortran 77 compilers. + +Sets: &cv-link-F77;, &cv-link-F77COM;, &cv-link-F77FILESUFFIXES;, &cv-link-F77FLAGS;, &cv-link-F77PPCOM;, &cv-link-F77PPFILESUFFIXES;, &cv-link-FORTRAN;, &cv-link-FORTRANCOM;, &cv-link-FORTRANFLAGS;, &cv-link-SHF77;, &cv-link-SHF77COM;, &cv-link-SHF77FLAGS;, &cv-link-SHF77PPCOM;, &cv-link-SHFORTRAN;, &cv-link-SHFORTRANCOM;, &cv-link-SHFORTRANFLAGS;, &cv-link-SHFORTRANPPCOM;, &cv-link-_F77INCFLAGS;.Uses: &cv-link-F77COMSTR;, &cv-link-F77PPCOMSTR;, &cv-link-FORTRANCOMSTR;, &cv-link-FORTRANPPCOMSTR;, &cv-link-SHF77COMSTR;, &cv-link-SHF77PPCOMSTR;, &cv-link-SHFORTRANCOMSTR;, &cv-link-SHFORTRANPPCOMSTR;. + + + f90 + + +Set construction variables for generic POSIX Fortran 90 compilers. + +Sets: &cv-link-F90;, &cv-link-F90COM;, &cv-link-F90FLAGS;, &cv-link-F90PPCOM;, &cv-link-SHF90;, &cv-link-SHF90COM;, &cv-link-SHF90FLAGS;, &cv-link-SHF90PPCOM;, &cv-link-_F90INCFLAGS;.Uses: &cv-link-F90COMSTR;, &cv-link-F90PPCOMSTR;, &cv-link-SHF90COMSTR;, &cv-link-SHF90PPCOMSTR;. + + + f95 + + +Set construction variables for generic POSIX Fortran 95 compilers. + +Sets: &cv-link-F95;, &cv-link-F95COM;, &cv-link-F95FLAGS;, &cv-link-F95PPCOM;, &cv-link-SHF95;, &cv-link-SHF95COM;, &cv-link-SHF95FLAGS;, &cv-link-SHF95PPCOM;, &cv-link-_F95INCFLAGS;.Uses: &cv-link-F95COMSTR;, &cv-link-F95PPCOMSTR;, &cv-link-SHF95COMSTR;, &cv-link-SHF95PPCOMSTR;. + + + fortran + + +Set construction variables for generic POSIX Fortran compilers. + +Sets: &cv-link-FORTRAN;, &cv-link-FORTRANCOM;, &cv-link-FORTRANFLAGS;, &cv-link-SHFORTRAN;, &cv-link-SHFORTRANCOM;, &cv-link-SHFORTRANFLAGS;, &cv-link-SHFORTRANPPCOM;.Uses: &cv-link-FORTRANCOMSTR;, &cv-link-FORTRANPPCOMSTR;, &cv-link-SHFORTRANCOMSTR;, &cv-link-SHFORTRANPPCOMSTR;. + + + g++ + + +Set construction variables for the gXX C++ compiler. + +Sets: &cv-link-CXX;, &cv-link-CXXVERSION;, &cv-link-SHCXXFLAGS;, &cv-link-SHOBJSUFFIX;. + + + g77 + + +Set construction variables for the g77 Fortran compiler. +Calls the f77 Tool module +to set variables. + + + + + gas + + +Sets construction variables for the gas assembler. +Calls the as module. + +Sets: &cv-link-AS;. + + + gcc + + +Set construction variables for the gcc C compiler. + +Sets: &cv-link-CC;, &cv-link-CCVERSION;, &cv-link-SHCCFLAGS;. + + + gettext + + +This is actually a toolset, which supports internationalization and +localization of sofware being constructed with SCons. The toolset loads +following tools: + + + + + + xgettext - to extract internationalized messages from source code to + POT file(s), + + + msginit - may be optionally used to initialize PO + files, + + + msgmerge - to update PO files, that already contain + translated messages, + + msgfmt - to compile textual PO file to binary + installable MO file. + + + + + +When you enable gettext, it internally loads all abovementioned tools, +so you're encouraged to see their individual documentation. + + + +Each of the above tools provides its own builder(s) which may be used to +perform particular activities related to software internationalization. You +may be however interested in top-level builder +Translate described few paragraphs later. + + + +To use gettext tools add 'gettext' tool to your +environment: + + + env = Environment( tools = ['default', 'gettext'] ) + + + + + gfortran + + +Sets construction variables for the GNU F95/F2003 GNU compiler. + +Sets: &cv-link-F77;, &cv-link-F90;, &cv-link-F95;, &cv-link-FORTRAN;, &cv-link-SHF77;, &cv-link-SHF77FLAGS;, &cv-link-SHF90;, &cv-link-SHF90FLAGS;, &cv-link-SHF95;, &cv-link-SHF95FLAGS;, &cv-link-SHFORTRAN;, &cv-link-SHFORTRANFLAGS;. + + + gnulink + + +Set construction variables for GNU linker/loader. + +Sets: &cv-link-RPATHPREFIX;, &cv-link-RPATHSUFFIX;, &cv-link-SHLINKFLAGS;. + + + gs + + +This Tool sets the required construction variables for working with +the Ghostscript command. It also registers an appropriate Action +with the PDF Builder (PDF), such that the conversion from +PS/EPS to PDF happens automatically for the TeX/LaTeX toolchain. +Finally, it adds an explicit Ghostscript Builder (Gs) to the +environment. + +Sets: &cv-link-GS;, &cv-link-GSCOM;, &cv-link-GSFLAGS;.Uses: &cv-link-GSCOMSTR;. + + + hpc++ + + +Set construction variables for the compilers aCC on HP/UX systems. + + + + + hpcc + + +Set construction variables for the +aCC on HP/UX systems. +Calls the cXX tool for additional variables. + +Sets: &cv-link-CXX;, &cv-link-CXXVERSION;, &cv-link-SHCXXFLAGS;. + + + hplink + + +Sets construction variables for the linker on HP/UX systems. + +Sets: &cv-link-LINKFLAGS;, &cv-link-SHLIBSUFFIX;, &cv-link-SHLINKFLAGS;. + + + icc + + +Sets construction variables for the +icc compiler on OS/2 systems. + +Sets: &cv-link-CC;, &cv-link-CCCOM;, &cv-link-CFILESUFFIX;, &cv-link-CPPDEFPREFIX;, &cv-link-CPPDEFSUFFIX;, &cv-link-CXXCOM;, &cv-link-CXXFILESUFFIX;, &cv-link-INCPREFIX;, &cv-link-INCSUFFIX;.Uses: &cv-link-CCFLAGS;, &cv-link-CFLAGS;, &cv-link-CPPFLAGS;, &cv-link-_CPPDEFFLAGS;, &cv-link-_CPPINCFLAGS;. + + + icl + + +Sets construction variables for the Intel C/C++ compiler. +Calls the intelc Tool module to set its variables. + + + + + ifl + + +Sets construction variables for the Intel Fortran compiler. + +Sets: &cv-link-FORTRAN;, &cv-link-FORTRANCOM;, &cv-link-FORTRANPPCOM;, &cv-link-SHFORTRANCOM;, &cv-link-SHFORTRANPPCOM;.Uses: &cv-link-CPPFLAGS;, &cv-link-FORTRANFLAGS;, &cv-link-_CPPDEFFLAGS;, &cv-link-_FORTRANINCFLAGS;. + + + ifort + + +Sets construction variables for newer versions +of the Intel Fortran compiler for Linux. + +Sets: &cv-link-F77;, &cv-link-F90;, &cv-link-F95;, &cv-link-FORTRAN;, &cv-link-SHF77;, &cv-link-SHF77FLAGS;, &cv-link-SHF90;, &cv-link-SHF90FLAGS;, &cv-link-SHF95;, &cv-link-SHF95FLAGS;, &cv-link-SHFORTRAN;, &cv-link-SHFORTRANFLAGS;. + + + ilink + + +Sets construction variables for the +ilink linker on OS/2 systems. + +Sets: &cv-link-LIBDIRPREFIX;, &cv-link-LIBDIRSUFFIX;, &cv-link-LIBLINKPREFIX;, &cv-link-LIBLINKSUFFIX;, &cv-link-LINK;, &cv-link-LINKCOM;, &cv-link-LINKFLAGS;. + + + ilink32 + + +Sets construction variables for the Borland +ilink32 linker. + +Sets: &cv-link-LIBDIRPREFIX;, &cv-link-LIBDIRSUFFIX;, &cv-link-LIBLINKPREFIX;, &cv-link-LIBLINKSUFFIX;, &cv-link-LINK;, &cv-link-LINKCOM;, &cv-link-LINKFLAGS;. + + + install + + +Sets construction variables for file +and directory installation. + +Sets: &cv-link-INSTALL;, &cv-link-INSTALLSTR;. + + + intelc + + +Sets construction variables for the Intel C/C++ compiler +(Linux and Windows, version 7 and later). +Calls the gcc or msvc +(on Linux and Windows, respectively) +to set underlying variables. + +Sets: &cv-link-AR;, &cv-link-CC;, &cv-link-CXX;, &cv-link-INTEL_C_COMPILER_VERSION;, &cv-link-LINK;. + + + jar + + +Sets construction variables for the jar utility. + +Sets: &cv-link-JAR;, &cv-link-JARCOM;, &cv-link-JARFLAGS;, &cv-link-JARSUFFIX;.Uses: &cv-link-JARCOMSTR;. + + + javac + + +Sets construction variables for the javac compiler. + +Sets: &cv-link-JAVABOOTCLASSPATH;, &cv-link-JAVAC;, &cv-link-JAVACCOM;, &cv-link-JAVACFLAGS;, &cv-link-JAVACLASSPATH;, &cv-link-JAVACLASSSUFFIX;, &cv-link-JAVASOURCEPATH;, &cv-link-JAVASUFFIX;.Uses: &cv-link-JAVACCOMSTR;. + + + javah + + +Sets construction variables for the javah tool. + +Sets: &cv-link-JAVACLASSSUFFIX;, &cv-link-JAVAH;, &cv-link-JAVAHCOM;, &cv-link-JAVAHFLAGS;.Uses: &cv-link-JAVACLASSPATH;, &cv-link-JAVAHCOMSTR;. + + + latex + + +Sets construction variables for the latex utility. + +Sets: &cv-link-LATEX;, &cv-link-LATEXCOM;, &cv-link-LATEXFLAGS;.Uses: &cv-link-LATEXCOMSTR;. + + + lex + + +Sets construction variables for the lex lexical analyser. + +Sets: &cv-link-LEX;, &cv-link-LEXCOM;, &cv-link-LEXFLAGS;.Uses: &cv-link-LEXCOMSTR;. + + + link + + +Sets construction variables for generic POSIX linkers. + +Sets: &cv-link-LDMODULE;, &cv-link-LDMODULECOM;, &cv-link-LDMODULEFLAGS;, &cv-link-LDMODULEPREFIX;, &cv-link-LDMODULESUFFIX;, &cv-link-LIBDIRPREFIX;, &cv-link-LIBDIRSUFFIX;, &cv-link-LIBLINKPREFIX;, &cv-link-LIBLINKSUFFIX;, &cv-link-LINK;, &cv-link-LINKCOM;, &cv-link-LINKFLAGS;, &cv-link-SHLIBSUFFIX;, &cv-link-SHLINK;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;.Uses: &cv-link-LDMODULECOMSTR;, &cv-link-LINKCOMSTR;, &cv-link-SHLINKCOMSTR;. + + + linkloc + + +Sets construction variables for the +LinkLoc +linker for the Phar Lap ETS embedded operating system. + +Sets: &cv-link-LIBDIRPREFIX;, &cv-link-LIBDIRSUFFIX;, &cv-link-LIBLINKPREFIX;, &cv-link-LIBLINKSUFFIX;, &cv-link-LINK;, &cv-link-LINKCOM;, &cv-link-LINKFLAGS;, &cv-link-SHLINK;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;.Uses: &cv-link-LINKCOMSTR;, &cv-link-SHLINKCOMSTR;. + + + m4 + + +Sets construction variables for the m4 macro processor. + +Sets: &cv-link-M4;, &cv-link-M4COM;, &cv-link-M4FLAGS;.Uses: &cv-link-M4COMSTR;. + + + masm + + +Sets construction variables for the Microsoft assembler. + +Sets: &cv-link-AS;, &cv-link-ASCOM;, &cv-link-ASFLAGS;, &cv-link-ASPPCOM;, &cv-link-ASPPFLAGS;.Uses: &cv-link-ASCOMSTR;, &cv-link-ASPPCOMSTR;, &cv-link-CPPFLAGS;, &cv-link-_CPPDEFFLAGS;, &cv-link-_CPPINCFLAGS;. + + + midl + + +Sets construction variables for the Microsoft IDL compiler. + +Sets: &cv-link-MIDL;, &cv-link-MIDLCOM;, &cv-link-MIDLFLAGS;.Uses: &cv-link-MIDLCOMSTR;. + + + mingw + + +Sets construction variables for MinGW (Minimal Gnu on Windows). + +Sets: &cv-link-AS;, &cv-link-CC;, &cv-link-CXX;, &cv-link-LDMODULECOM;, &cv-link-LIBPREFIX;, &cv-link-LIBSUFFIX;, &cv-link-OBJSUFFIX;, &cv-link-RC;, &cv-link-RCCOM;, &cv-link-RCFLAGS;, &cv-link-RCINCFLAGS;, &cv-link-RCINCPREFIX;, &cv-link-RCINCSUFFIX;, &cv-link-SHCCFLAGS;, &cv-link-SHCXXFLAGS;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;, &cv-link-SHOBJSUFFIX;, &cv-link-WINDOWSDEFPREFIX;, &cv-link-WINDOWSDEFSUFFIX;.Uses: &cv-link-RCCOMSTR;, &cv-link-SHLINKCOMSTR;. + + + msgfmt + + +This scons tool is a part of scons gettext toolset. It provides scons +interface to msgfmt(1) command, which generates binary +message catalog (MO) from a textual translation description +(PO). + +Sets: &cv-link-MOSUFFIX;, &cv-link-MSGFMT;, &cv-link-MSGFMTCOM;, &cv-link-MSGFMTCOMSTR;, &cv-link-MSGFMTFLAGS;, &cv-link-POSUFFIX;.Uses: &cv-link-LINGUAS_FILE;. + + + msginit + + +This scons tool is a part of scons gettext toolset. It provides +scons interface to msginit(1) program, which creates new +PO file, initializing the meta information with values from +user's environment (or options). + +Sets: &cv-link-MSGINIT;, &cv-link-MSGINITCOM;, &cv-link-MSGINITCOMSTR;, &cv-link-MSGINITFLAGS;, &cv-link-POAUTOINIT;, &cv-link-POCREATE_ALIAS;, &cv-link-POSUFFIX;, &cv-link-POTSUFFIX;, &cv-link-_MSGINITLOCALE;.Uses: &cv-link-LINGUAS_FILE;, &cv-link-POAUTOINIT;, &cv-link-POTDOMAIN;. + + + msgmerge + + +This scons tool is a part of scons gettext toolset. It provides +scons interface to msgmerge(1) command, which merges two +Uniform style .po files together. + +Sets: &cv-link-MSGMERGE;, &cv-link-MSGMERGECOM;, &cv-link-MSGMERGECOMSTR;, &cv-link-MSGMERGEFLAGS;, &cv-link-POSUFFIX;, &cv-link-POTSUFFIX;, &cv-link-POUPDATE_ALIAS;.Uses: &cv-link-LINGUAS_FILE;, &cv-link-POAUTOINIT;, &cv-link-POTDOMAIN;. + + + mslib + + +Sets construction variables for the Microsoft +mslib +library archiver. + +Sets: &cv-link-AR;, &cv-link-ARCOM;, &cv-link-ARFLAGS;, &cv-link-LIBPREFIX;, &cv-link-LIBSUFFIX;.Uses: &cv-link-ARCOMSTR;. + + + mslink + + +Sets construction variables for the Microsoft linker. + +Sets: &cv-link-LDMODULE;, &cv-link-LDMODULECOM;, &cv-link-LDMODULEFLAGS;, &cv-link-LDMODULEPREFIX;, &cv-link-LDMODULESUFFIX;, &cv-link-LIBDIRPREFIX;, &cv-link-LIBDIRSUFFIX;, &cv-link-LIBLINKPREFIX;, &cv-link-LIBLINKSUFFIX;, &cv-link-LINK;, &cv-link-LINKCOM;, &cv-link-LINKFLAGS;, &cv-link-REGSVR;, &cv-link-REGSVRCOM;, &cv-link-REGSVRFLAGS;, &cv-link-SHLINK;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;, &cv-link-WIN32DEFPREFIX;, &cv-link-WIN32DEFSUFFIX;, &cv-link-WIN32EXPPREFIX;, &cv-link-WIN32EXPSUFFIX;, &cv-link-WINDOWSDEFPREFIX;, &cv-link-WINDOWSDEFSUFFIX;, &cv-link-WINDOWSEXPPREFIX;, &cv-link-WINDOWSEXPSUFFIX;, &cv-link-WINDOWSPROGMANIFESTPREFIX;, &cv-link-WINDOWSPROGMANIFESTSUFFIX;, &cv-link-WINDOWSSHLIBMANIFESTPREFIX;, &cv-link-WINDOWSSHLIBMANIFESTSUFFIX;, &cv-link-WINDOWS_INSERT_DEF;.Uses: &cv-link-LDMODULECOMSTR;, &cv-link-LINKCOMSTR;, &cv-link-REGSVRCOMSTR;, &cv-link-SHLINKCOMSTR;. + + + mssdk + + +Sets variables for Microsoft Platform SDK and/or Windows SDK. +Note that unlike most other Tool modules, +mssdk does not set construction variables, +but sets the environment variables +in the environment SCons uses to execute +the Microsoft toolchain: +%INCLUDE%, +%LIB%, +%LIBPATH% and +%PATH%. + +Uses: &cv-link-MSSDK_DIR;, &cv-link-MSSDK_VERSION;, &cv-link-MSVS_VERSION;. + + + msvc + + +Sets construction variables for the Microsoft Visual C/C++ compiler. + +Sets: &cv-link-BUILDERS;, &cv-link-CC;, &cv-link-CCCOM;, &cv-link-CCFLAGS;, &cv-link-CCPCHFLAGS;, &cv-link-CCPDBFLAGS;, &cv-link-CFILESUFFIX;, &cv-link-CFLAGS;, &cv-link-CPPDEFPREFIX;, &cv-link-CPPDEFSUFFIX;, &cv-link-CXX;, &cv-link-CXXCOM;, &cv-link-CXXFILESUFFIX;, &cv-link-CXXFLAGS;, &cv-link-INCPREFIX;, &cv-link-INCSUFFIX;, &cv-link-OBJPREFIX;, &cv-link-OBJSUFFIX;, &cv-link-PCHCOM;, &cv-link-PCHPDBFLAGS;, &cv-link-RC;, &cv-link-RCCOM;, &cv-link-RCFLAGS;, &cv-link-SHCC;, &cv-link-SHCCCOM;, &cv-link-SHCCFLAGS;, &cv-link-SHCFLAGS;, &cv-link-SHCXX;, &cv-link-SHCXXCOM;, &cv-link-SHCXXFLAGS;, &cv-link-SHOBJPREFIX;, &cv-link-SHOBJSUFFIX;.Uses: &cv-link-CCCOMSTR;, &cv-link-CXXCOMSTR;, &cv-link-PCH;, &cv-link-PCHSTOP;, &cv-link-PDB;, &cv-link-SHCCCOMSTR;, &cv-link-SHCXXCOMSTR;. + + + msvs + + +Sets construction variables for Microsoft Visual Studio. + +Sets: &cv-link-MSVSBUILDCOM;, &cv-link-MSVSCLEANCOM;, &cv-link-MSVSENCODING;, &cv-link-MSVSPROJECTCOM;, &cv-link-MSVSREBUILDCOM;, &cv-link-MSVSSCONS;, &cv-link-MSVSSCONSCOM;, &cv-link-MSVSSCONSCRIPT;, &cv-link-MSVSSCONSFLAGS;, &cv-link-MSVSSOLUTIONCOM;. + + + mwcc + + +Sets construction variables for the Metrowerks CodeWarrior compiler. + +Sets: &cv-link-CC;, &cv-link-CCCOM;, &cv-link-CFILESUFFIX;, &cv-link-CPPDEFPREFIX;, &cv-link-CPPDEFSUFFIX;, &cv-link-CXX;, &cv-link-CXXCOM;, &cv-link-CXXFILESUFFIX;, &cv-link-INCPREFIX;, &cv-link-INCSUFFIX;, &cv-link-MWCW_VERSION;, &cv-link-MWCW_VERSIONS;, &cv-link-SHCC;, &cv-link-SHCCCOM;, &cv-link-SHCCFLAGS;, &cv-link-SHCFLAGS;, &cv-link-SHCXX;, &cv-link-SHCXXCOM;, &cv-link-SHCXXFLAGS;.Uses: &cv-link-CCCOMSTR;, &cv-link-CXXCOMSTR;, &cv-link-SHCCCOMSTR;, &cv-link-SHCXXCOMSTR;. + + + mwld + + +Sets construction variables for the Metrowerks CodeWarrior linker. + +Sets: &cv-link-AR;, &cv-link-ARCOM;, &cv-link-LIBDIRPREFIX;, &cv-link-LIBDIRSUFFIX;, &cv-link-LIBLINKPREFIX;, &cv-link-LIBLINKSUFFIX;, &cv-link-LINK;, &cv-link-LINKCOM;, &cv-link-SHLINK;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;. + + + nasm + + +Sets construction variables for the +nasm Netwide Assembler. + +Sets: &cv-link-AS;, &cv-link-ASCOM;, &cv-link-ASFLAGS;, &cv-link-ASPPCOM;, &cv-link-ASPPFLAGS;.Uses: &cv-link-ASCOMSTR;, &cv-link-ASPPCOMSTR;. + + + packaging + + +A framework for building binary and source packages. + + + + + Packaging + + +Sets construction variables for the Package Builder. + + + + + pdf + + +Sets construction variables for the Portable Document Format builder. + +Sets: &cv-link-PDFPREFIX;, &cv-link-PDFSUFFIX;. + + + pdflatex + + +Sets construction variables for the pdflatex utility. + +Sets: &cv-link-LATEXRETRIES;, &cv-link-PDFLATEX;, &cv-link-PDFLATEXCOM;, &cv-link-PDFLATEXFLAGS;.Uses: &cv-link-PDFLATEXCOMSTR;. + + + pdftex + + +Sets construction variables for the pdftex utility. + +Sets: &cv-link-LATEXRETRIES;, &cv-link-PDFLATEX;, &cv-link-PDFLATEXCOM;, &cv-link-PDFLATEXFLAGS;, &cv-link-PDFTEX;, &cv-link-PDFTEXCOM;, &cv-link-PDFTEXFLAGS;.Uses: &cv-link-PDFLATEXCOMSTR;, &cv-link-PDFTEXCOMSTR;. + + + Perforce + + +Sets construction variables for interacting with the +Perforce source code management system. + +Sets: &cv-link-P4;, &cv-link-P4COM;, &cv-link-P4FLAGS;.Uses: &cv-link-P4COMSTR;. + + + qt + + +Sets construction variables for building Qt applications. + +Sets: &cv-link-QTDIR;, &cv-link-QT_AUTOSCAN;, &cv-link-QT_BINPATH;, &cv-link-QT_CPPPATH;, &cv-link-QT_LIB;, &cv-link-QT_LIBPATH;, &cv-link-QT_MOC;, &cv-link-QT_MOCCXXPREFIX;, &cv-link-QT_MOCCXXSUFFIX;, &cv-link-QT_MOCFROMCXXCOM;, &cv-link-QT_MOCFROMCXXFLAGS;, &cv-link-QT_MOCFROMHCOM;, &cv-link-QT_MOCFROMHFLAGS;, &cv-link-QT_MOCHPREFIX;, &cv-link-QT_MOCHSUFFIX;, &cv-link-QT_UIC;, &cv-link-QT_UICCOM;, &cv-link-QT_UICDECLFLAGS;, &cv-link-QT_UICDECLPREFIX;, &cv-link-QT_UICDECLSUFFIX;, &cv-link-QT_UICIMPLFLAGS;, &cv-link-QT_UICIMPLPREFIX;, &cv-link-QT_UICIMPLSUFFIX;, &cv-link-QT_UISUFFIX;. + + + RCS + + +Sets construction variables for the interaction +with the Revision Control System. + +Sets: &cv-link-RCS;, &cv-link-RCS_CO;, &cv-link-RCS_COCOM;, &cv-link-RCS_COFLAGS;.Uses: &cv-link-RCS_COCOMSTR;. + + + rmic + + +Sets construction variables for the rmic utility. + +Sets: &cv-link-JAVACLASSSUFFIX;, &cv-link-RMIC;, &cv-link-RMICCOM;, &cv-link-RMICFLAGS;.Uses: &cv-link-RMICCOMSTR;. + + + rpcgen + + +Sets construction variables for building with RPCGEN. + +Sets: &cv-link-RPCGEN;, &cv-link-RPCGENCLIENTFLAGS;, &cv-link-RPCGENFLAGS;, &cv-link-RPCGENHEADERFLAGS;, &cv-link-RPCGENSERVICEFLAGS;, &cv-link-RPCGENXDRFLAGS;. + + + SCCS + + +Sets construction variables for interacting with the +Source Code Control System. + +Sets: &cv-link-SCCS;, &cv-link-SCCSCOM;, &cv-link-SCCSFLAGS;, &cv-link-SCCSGETFLAGS;.Uses: &cv-link-SCCSCOMSTR;. + + + sgiar + + +Sets construction variables for the SGI library archiver. + +Sets: &cv-link-AR;, &cv-link-ARCOMSTR;, &cv-link-ARFLAGS;, &cv-link-LIBPREFIX;, &cv-link-LIBSUFFIX;, &cv-link-SHLINK;, &cv-link-SHLINKFLAGS;.Uses: &cv-link-ARCOMSTR;, &cv-link-SHLINKCOMSTR;. + + + sgic++ + + +Sets construction variables for the SGI C++ compiler. + +Sets: &cv-link-CXX;, &cv-link-CXXFLAGS;, &cv-link-SHCXX;, &cv-link-SHOBJSUFFIX;. + + + sgicc + + +Sets construction variables for the SGI C compiler. + +Sets: &cv-link-CXX;, &cv-link-SHOBJSUFFIX;. + + + sgilink + + +Sets construction variables for the SGI linker. + +Sets: &cv-link-LINK;, &cv-link-RPATHPREFIX;, &cv-link-RPATHSUFFIX;, &cv-link-SHLINKFLAGS;. + + + sunar + + +Sets construction variables for the Sun library archiver. + +Sets: &cv-link-AR;, &cv-link-ARCOM;, &cv-link-ARFLAGS;, &cv-link-LIBPREFIX;, &cv-link-LIBSUFFIX;, &cv-link-SHLINK;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;.Uses: &cv-link-ARCOMSTR;, &cv-link-SHLINKCOMSTR;. + + + sunc++ + + +Sets construction variables for the Sun C++ compiler. + +Sets: &cv-link-CXX;, &cv-link-CXXVERSION;, &cv-link-SHCXX;, &cv-link-SHCXXFLAGS;, &cv-link-SHOBJPREFIX;, &cv-link-SHOBJSUFFIX;. + + + suncc + + +Sets construction variables for the Sun C compiler. + +Sets: &cv-link-CXX;, &cv-link-SHCCFLAGS;, &cv-link-SHOBJPREFIX;, &cv-link-SHOBJSUFFIX;. + + + sunf77 + + +Set construction variables for the Sun f77 Fortran compiler. + +Sets: &cv-link-F77;, &cv-link-FORTRAN;, &cv-link-SHF77;, &cv-link-SHF77FLAGS;, &cv-link-SHFORTRAN;, &cv-link-SHFORTRANFLAGS;. + + + sunf90 + + +Set construction variables for the Sun f90 Fortran compiler. + +Sets: &cv-link-F90;, &cv-link-FORTRAN;, &cv-link-SHF90;, &cv-link-SHF90FLAGS;, &cv-link-SHFORTRAN;, &cv-link-SHFORTRANFLAGS;. + + + sunf95 + + +Set construction variables for the Sun f95 Fortran compiler. + +Sets: &cv-link-F95;, &cv-link-FORTRAN;, &cv-link-SHF95;, &cv-link-SHF95FLAGS;, &cv-link-SHFORTRAN;, &cv-link-SHFORTRANFLAGS;. + + + sunlink + + +Sets construction variables for the Sun linker. + +Sets: &cv-link-RPATHPREFIX;, &cv-link-RPATHSUFFIX;, &cv-link-SHLINKFLAGS;. + + + swig + + +Sets construction variables for the SWIG interface generator. + +Sets: &cv-link-SWIG;, &cv-link-SWIGCFILESUFFIX;, &cv-link-SWIGCOM;, &cv-link-SWIGCXXFILESUFFIX;, &cv-link-SWIGDIRECTORSUFFIX;, &cv-link-SWIGFLAGS;, &cv-link-SWIGINCPREFIX;, &cv-link-SWIGINCSUFFIX;, &cv-link-SWIGPATH;, &cv-link-SWIGVERSION;, &cv-link-_SWIGINCFLAGS;.Uses: &cv-link-SWIGCOMSTR;. + + + tar + + +Sets construction variables for the tar archiver. + +Sets: &cv-link-TAR;, &cv-link-TARCOM;, &cv-link-TARFLAGS;, &cv-link-TARSUFFIX;.Uses: &cv-link-TARCOMSTR;. + + + tex + + +Sets construction variables for the TeX formatter and typesetter. + +Sets: &cv-link-BIBTEX;, &cv-link-BIBTEXCOM;, &cv-link-BIBTEXFLAGS;, &cv-link-LATEX;, &cv-link-LATEXCOM;, &cv-link-LATEXFLAGS;, &cv-link-MAKEINDEX;, &cv-link-MAKEINDEXCOM;, &cv-link-MAKEINDEXFLAGS;, &cv-link-TEX;, &cv-link-TEXCOM;, &cv-link-TEXFLAGS;.Uses: &cv-link-BIBTEXCOMSTR;, &cv-link-LATEXCOMSTR;, &cv-link-MAKEINDEXCOMSTR;, &cv-link-TEXCOMSTR;. + + + textfile + + +Set construction variables for the Textfile and Substfile builders. + +Sets: &cv-link-LINESEPARATOR;, &cv-link-SUBSTFILEPREFIX;, &cv-link-SUBSTFILESUFFIX;, &cv-link-TEXTFILEPREFIX;, &cv-link-TEXTFILESUFFIX;.Uses: &cv-link-SUBST_DICT;. + + + tlib + + +Sets construction variables for the Borlan +tib library archiver. + +Sets: &cv-link-AR;, &cv-link-ARCOM;, &cv-link-ARFLAGS;, &cv-link-LIBPREFIX;, &cv-link-LIBSUFFIX;.Uses: &cv-link-ARCOMSTR;. + + + xgettext + + +This scons tool is a part of scons gettext toolset. It provides +scons interface to xgettext(1) +program, which extracts internationalized messages from source code. The tool +provides POTUpdate builder to make PO +Template files. + +Sets: &cv-link-POTSUFFIX;, &cv-link-POTUPDATE_ALIAS;, &cv-link-XGETTEXTCOM;, &cv-link-XGETTEXTCOMSTR;, &cv-link-XGETTEXTFLAGS;, &cv-link-XGETTEXTFROM;, &cv-link-XGETTEXTFROMPREFIX;, &cv-link-XGETTEXTFROMSUFFIX;, &cv-link-XGETTEXTPATH;, &cv-link-XGETTEXTPATHPREFIX;, &cv-link-XGETTEXTPATHSUFFIX;, &cv-link-_XGETTEXTDOMAIN;, &cv-link-_XGETTEXTFROMFLAGS;, &cv-link-_XGETTEXTPATHFLAGS;.Uses: &cv-link-POTDOMAIN;. + + + yacc + + +Sets construction variables for the yacc parse generator. + +Sets: &cv-link-YACC;, &cv-link-YACCCOM;, &cv-link-YACCFLAGS;, &cv-link-YACCHFILESUFFIX;, &cv-link-YACCHXXFILESUFFIX;, &cv-link-YACCVCGFILESUFFIX;.Uses: &cv-link-YACCCOMSTR;. + + + zip + + +Sets construction variables for the zip archiver. + +Sets: &cv-link-ZIP;, &cv-link-ZIPCOM;, &cv-link-ZIPCOMPRESSION;, &cv-link-ZIPFLAGS;, &cv-link-ZIPSUFFIX;.Uses: &cv-link-ZIPCOMSTR;. + + diff --git a/doc/generated/tools.mod b/doc/generated/tools.mod new file mode 100644 index 0000000..0a746b0 --- /dev/null +++ b/doc/generated/tools.mod @@ -0,0 +1,217 @@ + + + + +386asm"> +aixc++"> +aixcc"> +aixf77"> +aixlink"> +applelink"> +ar"> +as"> +bcc32"> +BitKeeper"> +cc"> +cvf"> +CVS"> +cXX"> +default"> +dmd"> +docbook"> +dvi"> +dvipdf"> +dvips"> +f03"> +f77"> +f90"> +f95"> +fortran"> +g++"> +g77"> +gas"> +gcc"> +gettext"> +gfortran"> +gnulink"> +gs"> +hpc++"> +hpcc"> +hplink"> +icc"> +icl"> +ifl"> +ifort"> +ilink"> +ilink32"> +install"> +intelc"> +jar"> +javac"> +javah"> +latex"> +lex"> +link"> +linkloc"> +m4"> +masm"> +midl"> +mingw"> +msgfmt"> +msginit"> +msgmerge"> +mslib"> +mslink"> +mssdk"> +msvc"> +msvs"> +mwcc"> +mwld"> +nasm"> +packaging"> +Packaging"> +pdf"> +pdflatex"> +pdftex"> +Perforce"> +qt"> +RCS"> +rmic"> +rpcgen"> +SCCS"> +sgiar"> +sgic++"> +sgicc"> +sgilink"> +sunar"> +sunc++"> +suncc"> +sunf77"> +sunf90"> +sunf95"> +sunlink"> +swig"> +tar"> +tex"> +textfile"> +tlib"> +xgettext"> +yacc"> +zip"> + + + + + +386asm"> +aixc++"> +aixcc"> +aixf77"> +aixlink"> +applelink"> +ar"> +as"> +bcc32"> +BitKeeper"> +cc"> +cvf"> +CVS"> +cXX"> +default"> +dmd"> +docbook"> +dvi"> +dvipdf"> +dvips"> +f03"> +f77"> +f90"> +f95"> +fortran"> +g++"> +g77"> +gas"> +gcc"> +gettext"> +gfortran"> +gnulink"> +gs"> +hpc++"> +hpcc"> +hplink"> +icc"> +icl"> +ifl"> +ifort"> +ilink"> +ilink32"> +install"> +intelc"> +jar"> +javac"> +javah"> +latex"> +lex"> +link"> +linkloc"> +m4"> +masm"> +midl"> +mingw"> +msgfmt"> +msginit"> +msgmerge"> +mslib"> +mslink"> +mssdk"> +msvc"> +msvs"> +mwcc"> +mwld"> +nasm"> +packaging"> +Packaging"> +pdf"> +pdflatex"> +pdftex"> +Perforce"> +qt"> +RCS"> +rmic"> +rpcgen"> +SCCS"> +sgiar"> +sgic++"> +sgicc"> +sgilink"> +sunar"> +sunc++"> +suncc"> +sunf77"> +sunf90"> +sunf95"> +sunlink"> +swig"> +tar"> +tex"> +textfile"> +tlib"> +xgettext"> +yacc"> +zip"> + + diff --git a/doc/generated/variables.gen b/doc/generated/variables.gen new file mode 100644 index 0000000..efdac8e --- /dev/null +++ b/doc/generated/variables.gen @@ -0,0 +1,7398 @@ + + + %scons; + + %builders-mod; + + %functions-mod; + + %tools-mod; + + %variables-mod; +]> + + + + AR + + +The static library archiver. + + + + + ARCHITECTURE + + +Specifies the system architecture for which +the package is being built. +The default is the system architecture +of the machine on which SCons is running. +This is used to fill in the +Architecture: +field in an Ipkg +control file, +and as part of the name of a generated RPM file. + + + + + ARCOM + + +The command line used to generate a static library from object files. + + + + + ARCOMSTR + + +The string displayed when an object file +is generated from an assembly-language source file. +If this is not set, then $ARCOM (the command line) is displayed. + + + +env = Environment(ARCOMSTR = "Archiving $TARGET") + + + + + ARFLAGS + + +General options passed to the static library archiver. + + + + + AS + + +The assembler. + + + + + ASCOM + + +The command line used to generate an object file +from an assembly-language source file. + + + + + ASCOMSTR + + +The string displayed when an object file +is generated from an assembly-language source file. +If this is not set, then $ASCOM (the command line) is displayed. + + + +env = Environment(ASCOMSTR = "Assembling $TARGET") + + + + + ASFLAGS + + +General options passed to the assembler. + + + + + ASPPCOM + + +The command line used to assemble an assembly-language +source file into an object file +after first running the file through the C preprocessor. +Any options specified +in the $ASFLAGS and $CPPFLAGS construction variables +are included on this command line. + + + + + ASPPCOMSTR + + +The string displayed when an object file +is generated from an assembly-language source file +after first running the file through the C preprocessor. +If this is not set, then $ASPPCOM (the command line) is displayed. + + + +env = Environment(ASPPCOMSTR = "Assembling $TARGET") + + + + + ASPPFLAGS + + +General options when an assembling an assembly-language +source file into an object file +after first running the file through the C preprocessor. +The default is to use the value of $ASFLAGS. + + + + + BIBTEX + + +The bibliography generator for the TeX formatter and typesetter and the +LaTeX structured formatter and typesetter. + + + + + BIBTEXCOM + + +The command line used to call the bibliography generator for the +TeX formatter and typesetter and the LaTeX structured formatter and +typesetter. + + + + + BIBTEXCOMSTR + + +The string displayed when generating a bibliography +for TeX or LaTeX. +If this is not set, then $BIBTEXCOM (the command line) is displayed. + + + +env = Environment(BIBTEXCOMSTR = "Generating bibliography $TARGET") + + + + + BIBTEXFLAGS + + +General options passed to the bibliography generator for the TeX formatter +and typesetter and the LaTeX structured formatter and typesetter. + + + + + BITKEEPER + + +The BitKeeper executable. + + + + + BITKEEPERCOM + + +The command line for +fetching source files using BitKeeper. + + + + + BITKEEPERCOMSTR + + +The string displayed when fetching +a source file using BitKeeper. +If this is not set, then $BITKEEPERCOM +(the command line) is displayed. + + + + + BITKEEPERGET + + +The command ($BITKEEPER) and subcommand +for fetching source files using BitKeeper. + + + + + BITKEEPERGETFLAGS + + +Options that are passed to the BitKeeper +get +subcommand. + + + + + BUILDERS + + +A dictionary mapping the names of the builders +available through this environment +to underlying Builder objects. +Builders named +Alias, CFile, CXXFile, DVI, Library, Object, PDF, PostScript, and Program +are available by default. +If you initialize this variable when an +Environment is created: + + + +env = Environment(BUILDERS = {'NewBuilder' : foo}) + + + +the default Builders will no longer be available. +To use a new Builder object in addition to the default Builders, +add your new Builder object like this: + + + +env = Environment() +env.Append(BUILDERS = {'NewBuilder' : foo}) + + + +or this: + + + +env = Environment() +env['BUILDERS]['NewBuilder'] = foo + + + + + CC + + +The C compiler. + + + + + CCCOM + + +The command line used to compile a C source file to a (static) object +file. Any options specified in the $CFLAGS, $CCFLAGS and +$CPPFLAGS construction variables are included on this command +line. + + + + + CCCOMSTR + + +The string displayed when a C source file +is compiled to a (static) object file. +If this is not set, then $CCCOM (the command line) is displayed. + + + +env = Environment(CCCOMSTR = "Compiling static object $TARGET") + + + + + CCFLAGS + + +General options that are passed to the C and C++ compilers. + + + + + CCPCHFLAGS + + +Options added to the compiler command line +to support building with precompiled headers. +The default value expands expands to the appropriate +Microsoft Visual C++ command-line options +when the $PCH construction variable is set. + + + + + CCPDBFLAGS + + +Options added to the compiler command line +to support storing debugging information in a +Microsoft Visual C++ PDB file. +The default value expands expands to appropriate +Microsoft Visual C++ command-line options +when the $PDB construction variable is set. + + + +The Visual C++ compiler option that SCons uses by default +to generate PDB information is . +This works correctly with parallel () builds +because it embeds the debug information in the intermediate object files, +as opposed to sharing a single PDB file between multiple object files. +This is also the only way to get debug information +embedded into a static library. +Using the instead may yield improved +link-time performance, +although parallel builds will no longer work. + + + +You can generate PDB files with the +switch by overriding the default $CCPDBFLAGS variable as follows: + + + +env['CCPDBFLAGS'] = ['${(PDB and "/Zi /Fd%s" % File(PDB)) or ""}'] + + + +An alternative would be to use the +to put the debugging information in a separate .pdb +file for each object file by overriding +the $CCPDBFLAGS variable as follows: + + + +env['CCPDBFLAGS'] = '/Zi /Fd${TARGET}.pdb' + + + + + CCVERSION + + +The version number of the C compiler. +This may or may not be set, +depending on the specific C compiler being used. + + + + + CFILESUFFIX + + +The suffix for C source files. +This is used by the internal CFile builder +when generating C files from Lex (.l) or YACC (.y) input files. +The default suffix, of course, is +.c +(lower case). +On case-insensitive systems (like Windows), +SCons also treats +.C +(upper case) files +as C files. + + + + + CFLAGS + + +General options that are passed to the C compiler (C only; not C++). + + + + + CHANGE_SPECFILE + + +A hook for modifying the file that controls the packaging build +(the .spec for RPM, +the control for Ipkg, +the .wxs for MSI). +If set, the function will be called +after the SCons template for the file has been written. +XXX + + + + + CHANGED_SOURCES + + +A reserved variable name +that may not be set or used in a construction environment. +(See "Variable Substitution," below.) + + + + + CHANGED_TARGETS + + +A reserved variable name +that may not be set or used in a construction environment. +(See "Variable Substitution," below.) + + + + + CHANGELOG + + +The name of a file containing the change log text +to be included in the package. +This is included as the +%changelog +section of the RPM +.spec file. + + + + + _concat + + +A function used to produce variables like $_CPPINCFLAGS. It takes +four or five +arguments: a prefix to concatenate onto each element, a list of +elements, a suffix to concatenate onto each element, an environment +for variable interpolation, and an optional function that will be +called to transform the list before concatenation. + + + +env['_CPPINCFLAGS'] = '$( ${_concat(INCPREFIX, CPPPATH, INCSUFFIX, __env__, RDirs)} $)', + + + + + CONFIGUREDIR + + +The name of the directory in which +Configure context test files are written. +The default is +.sconf_temp +in the top-level directory +containing the +SConstruct +file. + + + + + CONFIGURELOG + + +The name of the Configure context log file. +The default is +config.log +in the top-level directory +containing the +SConstruct +file. + + + + + _CPPDEFFLAGS + + +An automatically-generated construction variable +containing the C preprocessor command-line options +to define values. +The value of $_CPPDEFFLAGS is created +by appending $CPPDEFPREFIX and $CPPDEFSUFFIX +to the beginning and end +of each definition in $CPPDEFINES. + + + + + CPPDEFINES + + +A platform independent specification of C preprocessor definitions. +The definitions will be added to command lines +through the automatically-generated +$_CPPDEFFLAGS construction variable (see above), +which is constructed according to +the type of value of $CPPDEFINES: + + + +If $CPPDEFINES is a string, +the values of the +$CPPDEFPREFIX and $CPPDEFSUFFIX +construction variables +will be added to the beginning and end. + + + +# Will add -Dxyz to POSIX compiler command lines, +# and /Dxyz to Microsoft Visual C++ command lines. +env = Environment(CPPDEFINES='xyz') + + + +If $CPPDEFINES is a list, +the values of the +$CPPDEFPREFIX and $CPPDEFSUFFIX +construction variables +will be appended to the beginning and end +of each element in the list. +If any element is a list or tuple, +then the first item is the name being +defined and the second item is its value: + + + +# Will add -DB=2 -DA to POSIX compiler command lines, +# and /DB=2 /DA to Microsoft Visual C++ command lines. +env = Environment(CPPDEFINES=[('B', 2), 'A']) + + + +If $CPPDEFINES is a dictionary, +the values of the +$CPPDEFPREFIX and $CPPDEFSUFFIX +construction variables +will be appended to the beginning and end +of each item from the dictionary. +The key of each dictionary item +is a name being defined +to the dictionary item's corresponding value; +if the value is +None, +then the name is defined without an explicit value. +Note that the resulting flags are sorted by keyword +to ensure that the order of the options on the +command line is consistent each time +scons +is run. + + + +# Will add -DA -DB=2 to POSIX compiler command lines, +# and /DA /DB=2 to Microsoft Visual C++ command lines. +env = Environment(CPPDEFINES={'B':2, 'A':None}) + + + + + CPPDEFPREFIX + + +The prefix used to specify preprocessor definitions +on the C compiler command line. +This will be appended to the beginning of each definition +in the $CPPDEFINES construction variable +when the $_CPPDEFFLAGS variable is automatically generated. + + + + + CPPDEFSUFFIX + + +The suffix used to specify preprocessor definitions +on the C compiler command line. +This will be appended to the end of each definition +in the $CPPDEFINES construction variable +when the $_CPPDEFFLAGS variable is automatically generated. + + + + + CPPFLAGS + + +User-specified C preprocessor options. +These will be included in any command that uses the C preprocessor, +including not just compilation of C and C++ source files +via the $CCCOM, +$SHCCCOM, +$CXXCOM and +$SHCXXCOM command lines, +but also the $FORTRANPPCOM, +$SHFORTRANPPCOM, +$F77PPCOM and +$SHF77PPCOM command lines +used to compile a Fortran source file, +and the $ASPPCOM command line +used to assemble an assembly language source file, +after first running each file through the C preprocessor. +Note that this variable does +not +contain + +(or similar) include search path options +that scons generates automatically from $CPPPATH. +See $_CPPINCFLAGS, below, +for the variable that expands to those options. + + + + + _CPPINCFLAGS + + +An automatically-generated construction variable +containing the C preprocessor command-line options +for specifying directories to be searched for include files. +The value of $_CPPINCFLAGS is created +by appending $INCPREFIX and $INCSUFFIX +to the beginning and end +of each directory in $CPPPATH. + + + + + CPPPATH + + +The list of directories that the C preprocessor will search for include +directories. The C/C++ implicit dependency scanner will search these +directories for include files. Don't explicitly put include directory +arguments in CCFLAGS or CXXFLAGS because the result will be non-portable +and the directories will not be searched by the dependency scanner. Note: +directory names in CPPPATH will be looked-up relative to the SConscript +directory when they are used in a command. To force +scons +to look-up a directory relative to the root of the source tree use #: + + + +env = Environment(CPPPATH='#/include') + + + +The directory look-up can also be forced using the +Dir() +function: + + + +include = Dir('include') +env = Environment(CPPPATH=include) + + + +The directory list will be added to command lines +through the automatically-generated +$_CPPINCFLAGS +construction variable, +which is constructed by +appending the values of the +$INCPREFIX and $INCSUFFIX +construction variables +to the beginning and end +of each directory in $CPPPATH. +Any command lines you define that need +the CPPPATH directory list should +include $_CPPINCFLAGS: + + + +env = Environment(CCCOM="my_compiler $_CPPINCFLAGS -c -o $TARGET $SOURCE") + + + + + CPPSUFFIXES + + +The list of suffixes of files that will be scanned +for C preprocessor implicit dependencies +(#include lines). +The default list is: + + + +[".c", ".C", ".cxx", ".cpp", ".c++", ".cc", + ".h", ".H", ".hxx", ".hpp", ".hh", + ".F", ".fpp", ".FPP", + ".m", ".mm", + ".S", ".spp", ".SPP"] + + + + + CVS + + +The CVS executable. + + + + + CVSCOFLAGS + + +Options that are passed to the CVS checkout subcommand. + + + + + CVSCOM + + +The command line used to +fetch source files from a CVS repository. + + + + + CVSCOMSTR + + +The string displayed when fetching +a source file from a CVS repository. +If this is not set, then $CVSCOM +(the command line) is displayed. + + + + + CVSFLAGS + + +General options that are passed to CVS. +By default, this is set to +-d $CVSREPOSITORY +to specify from where the files must be fetched. + + + + + CVSREPOSITORY + + +The path to the CVS repository. +This is referenced in the default +$CVSFLAGS value. + + + + + CXX + + +The C++ compiler. + + + + + CXXCOM + + +The command line used to compile a C++ source file to an object file. +Any options specified in the $CXXFLAGS and +$CPPFLAGS construction variables +are included on this command line. + + + + + CXXCOMSTR + + +The string displayed when a C++ source file +is compiled to a (static) object file. +If this is not set, then $CXXCOM (the command line) is displayed. + + + +env = Environment(CXXCOMSTR = "Compiling static object $TARGET") + + + + + CXXFILESUFFIX + + +The suffix for C++ source files. +This is used by the internal CXXFile builder +when generating C++ files from Lex (.ll) or YACC (.yy) input files. +The default suffix is +.cc. +SCons also treats files with the suffixes +.cpp, +.cxx, +.c++, +and +.C++ +as C++ files, +and files with +.mm +suffixes as Objective C++ files. +On case-sensitive systems (Linux, UNIX, and other POSIX-alikes), +SCons also treats +.C +(upper case) files +as C++ files. + + + + + CXXFLAGS + + +General options that are passed to the C++ compiler. +By default, this includes the value of $CCFLAGS, +so that setting $CCFLAGS affects both C and C++ compilation. +If you want to add C++-specific flags, +you must set or override the value of $CXXFLAGS. + + + + + CXXVERSION + + +The version number of the C++ compiler. +This may or may not be set, +depending on the specific C++ compiler being used. + + + + + DESCRIPTION + + +A long description of the project being packaged. +This is included in the relevant section +of the file that controls the packaging build. + + + + + DESCRIPTION_lang + + +A language-specific long description for +the specified lang. +This is used to populate a +%description -l +section of an RPM +.spec file. + + + + + Dir + + +A function that converts a string +into a Dir instance relative to the target being built. + + + +A function that converts a string +into a Dir instance relative to the target being built. + + + + + Dirs + + +A function that converts a list of strings +into a list of Dir instances relative to the target being built. + + + + + DOCBOOK_DEFAULT_XSL_EPUB + + +The default XSLT file for the DocbookEpub builder within the +current environment, if no other XSLT gets specified via keyword. + + + + + DOCBOOK_DEFAULT_XSL_HTML + + +The default XSLT file for the DocbookHtml builder within the +current environment, if no other XSLT gets specified via keyword. + + + + + DOCBOOK_DEFAULT_XSL_HTMLCHUNKED + + +The default XSLT file for the DocbookHtmlChunked builder within the +current environment, if no other XSLT gets specified via keyword. + + + + + DOCBOOK_DEFAULT_XSL_HTMLHELP + + +The default XSLT file for the DocbookHtmlhelp builder within the +current environment, if no other XSLT gets specified via keyword. + + + + + DOCBOOK_DEFAULT_XSL_MAN + + +The default XSLT file for the DocbookMan builder within the +current environment, if no other XSLT gets specified via keyword. + + + + + DOCBOOK_DEFAULT_XSL_PDF + + +The default XSLT file for the DocbookPdf builder within the +current environment, if no other XSLT gets specified via keyword. + + + + + DOCBOOK_DEFAULT_XSL_SLIDESHTML + + +The default XSLT file for the DocbookSlidesHtml builder within the +current environment, if no other XSLT gets specified via keyword. + + + + + DOCBOOK_DEFAULT_XSL_SLIDESPDF + + +The default XSLT file for the DocbookSlidesPdf builder within the +current environment, if no other XSLT gets specified via keyword. + + + + + DOCBOOK_FOP + + +The path to the PDF renderer fop or xep, +if one of them is installed (fop gets checked first). + + + + + DOCBOOK_FOPCOM + + +The full command-line for the +PDF renderer fop or xep. + + + + + DOCBOOK_FOPCOMSTR + + +The string displayed when a renderer like fop or +xep is used to create PDF output from an XML file. + + + + + DOCBOOK_FOPFLAGS + + +Additonal command-line flags for the +PDF renderer fop or xep. + + + + + DOCBOOK_XMLLINT + + +The path to the external executable xmllint, if it's installed. +Note, that this is only used as last fallback for resolving +XIncludes, if no libxml2 or lxml Python binding can be imported +in the current system. + + + + + DOCBOOK_XMLLINTCOM + + +The full command-line for the external executable +xmllint. + + + + + DOCBOOK_XMLLINTCOMSTR + + +The string displayed when xmllint is used to resolve +XIncludes for a given XML file. + + + + + DOCBOOK_XMLLINTFLAGS + + +Additonal command-line flags for the external executable +xmllint. + + + + + DOCBOOK_XSLTPROC + + +The path to the external executable xsltproc +(or saxon, xalan), if one of them +is installed. +Note, that this is only used as last fallback for XSL transformations, if +no libxml2 or lxml Python binding can be imported in the current system. + + + + + DOCBOOK_XSLTPROCCOM + + +The full command-line for the external executable +xsltproc (or saxon, +xalan). + + + + + DOCBOOK_XSLTPROCCOMSTR + + +The string displayed when xsltproc is used to transform +an XML file via a given XSLT stylesheet. + + + + + DOCBOOK_XSLTPROCFLAGS + + +Additonal command-line flags for the external executable +xsltproc (or saxon, +xalan). + + + + + DOCBOOK_XSLTPROCPARAMS + + +Additonal parameters that are not intended for the XSLT processor executable, but +the XSL processing itself. By default, they get appended at the end of the command line +for saxon and saxon-xslt, respectively. + + + + + DSUFFIXES + + +The list of suffixes of files that will be scanned +for imported D package files. +The default list is: + + + +['.d'] + + + + + DVIPDF + + +The TeX DVI file to PDF file converter. + + + + + DVIPDFCOM + + +The command line used to convert TeX DVI files into a PDF file. + + + + + DVIPDFCOMSTR + + +The string displayed when a TeX DVI file +is converted into a PDF file. +If this is not set, then $DVIPDFCOM (the command line) is displayed. + + + + + DVIPDFFLAGS + + +General options passed to the TeX DVI file to PDF file converter. + + + + + DVIPS + + +The TeX DVI file to PostScript converter. + + + + + DVIPSFLAGS + + +General options passed to the TeX DVI file to PostScript converter. + + + + + ENV + + +A dictionary of environment variables +to use when invoking commands. When +$ENV is used in a command all list +values will be joined using the path separator and any other non-string +values will simply be coerced to a string. +Note that, by default, +scons +does +not +propagate the environment in force when you +execute +scons +to the commands used to build target files. +This is so that builds will be guaranteed +repeatable regardless of the environment +variables set at the time +scons +is invoked. + + + +If you want to propagate your +environment variables +to the commands executed +to build target files, +you must do so explicitly: + + + +import os +env = Environment(ENV = os.environ) + + + +Note that you can choose only to propagate +certain environment variables. +A common example is +the system +PATH +environment variable, +so that +scons +uses the same utilities +as the invoking shell (or other process): + + + +import os +env = Environment(ENV = {'PATH' : os.environ['PATH']}) + + + + + ESCAPE + + +A function that will be called to escape shell special characters in +command lines. The function should take one argument: the command line +string to escape; and should return the escaped command line. + + + + + F03 + + +The Fortran 03 compiler. +You should normally set the $FORTRAN variable, +which specifies the default Fortran compiler +for all Fortran versions. +You only need to set $F03 if you need to use a specific compiler +or compiler version for Fortran 03 files. + + + + + F03COM + + +The command line used to compile a Fortran 03 source file to an object file. +You only need to set $F03COM if you need to use a specific +command line for Fortran 03 files. +You should normally set the $FORTRANCOM variable, +which specifies the default command line +for all Fortran versions. + + + + + F03COMSTR + + +The string displayed when a Fortran 03 source file +is compiled to an object file. +If this is not set, then $F03COM or $FORTRANCOM +(the command line) is displayed. + + + + + F03FILESUFFIXES + + +The list of file extensions for which the F03 dialect will be used. By +default, this is ['.f03'] + + + + + F03FLAGS + + +General user-specified options that are passed to the Fortran 03 compiler. +Note that this variable does +not +contain + +(or similar) include search path options +that scons generates automatically from $F03PATH. +See +$_F03INCFLAGS +below, +for the variable that expands to those options. +You only need to set $F03FLAGS if you need to define specific +user options for Fortran 03 files. +You should normally set the $FORTRANFLAGS variable, +which specifies the user-specified options +passed to the default Fortran compiler +for all Fortran versions. + + + + + _F03INCFLAGS + + +An automatically-generated construction variable +containing the Fortran 03 compiler command-line options +for specifying directories to be searched for include files. +The value of $_F03INCFLAGS is created +by appending $INCPREFIX and $INCSUFFIX +to the beginning and end +of each directory in $F03PATH. + + + + + F03PATH + + +The list of directories that the Fortran 03 compiler will search for include +directories. The implicit dependency scanner will search these +directories for include files. Don't explicitly put include directory +arguments in $F03FLAGS because the result will be non-portable +and the directories will not be searched by the dependency scanner. Note: +directory names in $F03PATH will be looked-up relative to the SConscript +directory when they are used in a command. To force +scons +to look-up a directory relative to the root of the source tree use #: +You only need to set $F03PATH if you need to define a specific +include path for Fortran 03 files. +You should normally set the $FORTRANPATH variable, +which specifies the include path +for the default Fortran compiler +for all Fortran versions. + + + +env = Environment(F03PATH='#/include') + + + +The directory look-up can also be forced using the +Dir() +function: + + + +include = Dir('include') +env = Environment(F03PATH=include) + + + +The directory list will be added to command lines +through the automatically-generated +$_F03INCFLAGS +construction variable, +which is constructed by +appending the values of the +$INCPREFIX and $INCSUFFIX +construction variables +to the beginning and end +of each directory in $F03PATH. +Any command lines you define that need +the F03PATH directory list should +include $_F03INCFLAGS: + + + +env = Environment(F03COM="my_compiler $_F03INCFLAGS -c -o $TARGET $SOURCE") + + + + + F03PPCOM + + +The command line used to compile a Fortran 03 source file to an object file +after first running the file through the C preprocessor. +Any options specified in the $F03FLAGS and $CPPFLAGS construction variables +are included on this command line. +You only need to set $F03PPCOM if you need to use a specific +C-preprocessor command line for Fortran 03 files. +You should normally set the $FORTRANPPCOM variable, +which specifies the default C-preprocessor command line +for all Fortran versions. + + + + + F03PPCOMSTR + + +The string displayed when a Fortran 03 source file +is compiled to an object file +after first running the file through the C preprocessor. +If this is not set, then $F03PPCOM or $FORTRANPPCOM +(the command line) is displayed. + + + + + F03PPFILESUFFIXES + + +The list of file extensions for which the compilation + preprocessor pass for +F03 dialect will be used. By default, this is empty + + + + + F77 + + +The Fortran 77 compiler. +You should normally set the $FORTRAN variable, +which specifies the default Fortran compiler +for all Fortran versions. +You only need to set $F77 if you need to use a specific compiler +or compiler version for Fortran 77 files. + + + + + F77COM + + +The command line used to compile a Fortran 77 source file to an object file. +You only need to set $F77COM if you need to use a specific +command line for Fortran 77 files. +You should normally set the $FORTRANCOM variable, +which specifies the default command line +for all Fortran versions. + + + + + F77COMSTR + + +The string displayed when a Fortran 77 source file +is compiled to an object file. +If this is not set, then $F77COM or $FORTRANCOM +(the command line) is displayed. + + + + + F77FILESUFFIXES + + +The list of file extensions for which the F77 dialect will be used. By +default, this is ['.f77'] + + + + + F77FLAGS + + +General user-specified options that are passed to the Fortran 77 compiler. +Note that this variable does +not +contain + +(or similar) include search path options +that scons generates automatically from $F77PATH. +See +$_F77INCFLAGS +below, +for the variable that expands to those options. +You only need to set $F77FLAGS if you need to define specific +user options for Fortran 77 files. +You should normally set the $FORTRANFLAGS variable, +which specifies the user-specified options +passed to the default Fortran compiler +for all Fortran versions. + + + + + _F77INCFLAGS + + +An automatically-generated construction variable +containing the Fortran 77 compiler command-line options +for specifying directories to be searched for include files. +The value of $_F77INCFLAGS is created +by appending $INCPREFIX and $INCSUFFIX +to the beginning and end +of each directory in $F77PATH. + + + + + F77PATH + + +The list of directories that the Fortran 77 compiler will search for include +directories. The implicit dependency scanner will search these +directories for include files. Don't explicitly put include directory +arguments in $F77FLAGS because the result will be non-portable +and the directories will not be searched by the dependency scanner. Note: +directory names in $F77PATH will be looked-up relative to the SConscript +directory when they are used in a command. To force +scons +to look-up a directory relative to the root of the source tree use #: +You only need to set $F77PATH if you need to define a specific +include path for Fortran 77 files. +You should normally set the $FORTRANPATH variable, +which specifies the include path +for the default Fortran compiler +for all Fortran versions. + + + +env = Environment(F77PATH='#/include') + + + +The directory look-up can also be forced using the +Dir() +function: + + + +include = Dir('include') +env = Environment(F77PATH=include) + + + +The directory list will be added to command lines +through the automatically-generated +$_F77INCFLAGS +construction variable, +which is constructed by +appending the values of the +$INCPREFIX and $INCSUFFIX +construction variables +to the beginning and end +of each directory in $F77PATH. +Any command lines you define that need +the F77PATH directory list should +include $_F77INCFLAGS: + + + +env = Environment(F77COM="my_compiler $_F77INCFLAGS -c -o $TARGET $SOURCE") + + + + + F77PPCOM + + +The command line used to compile a Fortran 77 source file to an object file +after first running the file through the C preprocessor. +Any options specified in the $F77FLAGS and $CPPFLAGS construction variables +are included on this command line. +You only need to set $F77PPCOM if you need to use a specific +C-preprocessor command line for Fortran 77 files. +You should normally set the $FORTRANPPCOM variable, +which specifies the default C-preprocessor command line +for all Fortran versions. + + + + + F77PPCOMSTR + + +The string displayed when a Fortran 77 source file +is compiled to an object file +after first running the file through the C preprocessor. +If this is not set, then $F77PPCOM or $FORTRANPPCOM +(the command line) is displayed. + + + + + F77PPFILESUFFIXES + + +The list of file extensions for which the compilation + preprocessor pass for +F77 dialect will be used. By default, this is empty + + + + + F90 + + +The Fortran 90 compiler. +You should normally set the $FORTRAN variable, +which specifies the default Fortran compiler +for all Fortran versions. +You only need to set $F90 if you need to use a specific compiler +or compiler version for Fortran 90 files. + + + + + F90COM + + +The command line used to compile a Fortran 90 source file to an object file. +You only need to set $F90COM if you need to use a specific +command line for Fortran 90 files. +You should normally set the $FORTRANCOM variable, +which specifies the default command line +for all Fortran versions. + + + + + F90COMSTR + + +The string displayed when a Fortran 90 source file +is compiled to an object file. +If this is not set, then $F90COM or $FORTRANCOM +(the command line) is displayed. + + + + + F90FILESUFFIXES + + +The list of file extensions for which the F90 dialect will be used. By +default, this is ['.f90'] + + + + + F90FLAGS + + +General user-specified options that are passed to the Fortran 90 compiler. +Note that this variable does +not +contain + +(or similar) include search path options +that scons generates automatically from $F90PATH. +See +$_F90INCFLAGS +below, +for the variable that expands to those options. +You only need to set $F90FLAGS if you need to define specific +user options for Fortran 90 files. +You should normally set the $FORTRANFLAGS variable, +which specifies the user-specified options +passed to the default Fortran compiler +for all Fortran versions. + + + + + _F90INCFLAGS + + +An automatically-generated construction variable +containing the Fortran 90 compiler command-line options +for specifying directories to be searched for include files. +The value of $_F90INCFLAGS is created +by appending $INCPREFIX and $INCSUFFIX +to the beginning and end +of each directory in $F90PATH. + + + + + F90PATH + + +The list of directories that the Fortran 90 compiler will search for include +directories. The implicit dependency scanner will search these +directories for include files. Don't explicitly put include directory +arguments in $F90FLAGS because the result will be non-portable +and the directories will not be searched by the dependency scanner. Note: +directory names in $F90PATH will be looked-up relative to the SConscript +directory when they are used in a command. To force +scons +to look-up a directory relative to the root of the source tree use #: +You only need to set $F90PATH if you need to define a specific +include path for Fortran 90 files. +You should normally set the $FORTRANPATH variable, +which specifies the include path +for the default Fortran compiler +for all Fortran versions. + + + +env = Environment(F90PATH='#/include') + + + +The directory look-up can also be forced using the +Dir() +function: + + + +include = Dir('include') +env = Environment(F90PATH=include) + + + +The directory list will be added to command lines +through the automatically-generated +$_F90INCFLAGS +construction variable, +which is constructed by +appending the values of the +$INCPREFIX and $INCSUFFIX +construction variables +to the beginning and end +of each directory in $F90PATH. +Any command lines you define that need +the F90PATH directory list should +include $_F90INCFLAGS: + + + +env = Environment(F90COM="my_compiler $_F90INCFLAGS -c -o $TARGET $SOURCE") + + + + + F90PPCOM + + +The command line used to compile a Fortran 90 source file to an object file +after first running the file through the C preprocessor. +Any options specified in the $F90FLAGS and $CPPFLAGS construction variables +are included on this command line. +You only need to set $F90PPCOM if you need to use a specific +C-preprocessor command line for Fortran 90 files. +You should normally set the $FORTRANPPCOM variable, +which specifies the default C-preprocessor command line +for all Fortran versions. + + + + + F90PPCOMSTR + + +The string displayed when a Fortran 90 source file +is compiled after first running the file through the C preprocessor. +If this is not set, then $F90PPCOM or $FORTRANPPCOM +(the command line) is displayed. + + + + + F90PPFILESUFFIXES + + +The list of file extensions for which the compilation + preprocessor pass for +F90 dialect will be used. By default, this is empty + + + + + F95 + + +The Fortran 95 compiler. +You should normally set the $FORTRAN variable, +which specifies the default Fortran compiler +for all Fortran versions. +You only need to set $F95 if you need to use a specific compiler +or compiler version for Fortran 95 files. + + + + + F95COM + + +The command line used to compile a Fortran 95 source file to an object file. +You only need to set $F95COM if you need to use a specific +command line for Fortran 95 files. +You should normally set the $FORTRANCOM variable, +which specifies the default command line +for all Fortran versions. + + + + + F95COMSTR + + +The string displayed when a Fortran 95 source file +is compiled to an object file. +If this is not set, then $F95COM or $FORTRANCOM +(the command line) is displayed. + + + + + F95FILESUFFIXES + + +The list of file extensions for which the F95 dialect will be used. By +default, this is ['.f95'] + + + + + F95FLAGS + + +General user-specified options that are passed to the Fortran 95 compiler. +Note that this variable does +not +contain + +(or similar) include search path options +that scons generates automatically from $F95PATH. +See +$_F95INCFLAGS +below, +for the variable that expands to those options. +You only need to set $F95FLAGS if you need to define specific +user options for Fortran 95 files. +You should normally set the $FORTRANFLAGS variable, +which specifies the user-specified options +passed to the default Fortran compiler +for all Fortran versions. + + + + + _F95INCFLAGS + + +An automatically-generated construction variable +containing the Fortran 95 compiler command-line options +for specifying directories to be searched for include files. +The value of $_F95INCFLAGS is created +by appending $INCPREFIX and $INCSUFFIX +to the beginning and end +of each directory in $F95PATH. + + + + + F95PATH + + +The list of directories that the Fortran 95 compiler will search for include +directories. The implicit dependency scanner will search these +directories for include files. Don't explicitly put include directory +arguments in $F95FLAGS because the result will be non-portable +and the directories will not be searched by the dependency scanner. Note: +directory names in $F95PATH will be looked-up relative to the SConscript +directory when they are used in a command. To force +scons +to look-up a directory relative to the root of the source tree use #: +You only need to set $F95PATH if you need to define a specific +include path for Fortran 95 files. +You should normally set the $FORTRANPATH variable, +which specifies the include path +for the default Fortran compiler +for all Fortran versions. + + + +env = Environment(F95PATH='#/include') + + + +The directory look-up can also be forced using the +Dir() +function: + + + +include = Dir('include') +env = Environment(F95PATH=include) + + + +The directory list will be added to command lines +through the automatically-generated +$_F95INCFLAGS +construction variable, +which is constructed by +appending the values of the +$INCPREFIX and $INCSUFFIX +construction variables +to the beginning and end +of each directory in $F95PATH. +Any command lines you define that need +the F95PATH directory list should +include $_F95INCFLAGS: + + + +env = Environment(F95COM="my_compiler $_F95INCFLAGS -c -o $TARGET $SOURCE") + + + + + F95PPCOM + + +The command line used to compile a Fortran 95 source file to an object file +after first running the file through the C preprocessor. +Any options specified in the $F95FLAGS and $CPPFLAGS construction variables +are included on this command line. +You only need to set $F95PPCOM if you need to use a specific +C-preprocessor command line for Fortran 95 files. +You should normally set the $FORTRANPPCOM variable, +which specifies the default C-preprocessor command line +for all Fortran versions. + + + + + F95PPCOMSTR + + +The string displayed when a Fortran 95 source file +is compiled to an object file +after first running the file through the C preprocessor. +If this is not set, then $F95PPCOM or $FORTRANPPCOM +(the command line) is displayed. + + + + + F95PPFILESUFFIXES + + +The list of file extensions for which the compilation + preprocessor pass for +F95 dialect will be used. By default, this is empty + + + + + File + + +A function that converts a string into a File instance relative to the +target being built. + + + +A function that converts a string into a File instance relative to the +target being built. + + + + + FORTRAN + + +The default Fortran compiler +for all versions of Fortran. + + + + + FORTRANCOM + + +The command line used to compile a Fortran source file to an object file. +By default, any options specified +in the $FORTRANFLAGS, +$CPPFLAGS, +$_CPPDEFFLAGS, +$_FORTRANMODFLAG, and +$_FORTRANINCFLAGS construction variables +are included on this command line. + + + + + FORTRANCOMSTR + + +The string displayed when a Fortran source file +is compiled to an object file. +If this is not set, then $FORTRANCOM +(the command line) is displayed. + + + + + FORTRANFILESUFFIXES + + +The list of file extensions for which the FORTRAN dialect will be used. By +default, this is ['.f', '.for', '.ftn'] + + + + + FORTRANFLAGS + + +General user-specified options that are passed to the Fortran compiler. +Note that this variable does +not +contain + +(or similar) include or module search path options +that scons generates automatically from $FORTRANPATH. +See +$_FORTRANINCFLAGS and $_FORTRANMODFLAG, +below, +for the variables that expand those options. + + + + + _FORTRANINCFLAGS + + +An automatically-generated construction variable +containing the Fortran compiler command-line options +for specifying directories to be searched for include +files and module files. +The value of $_FORTRANINCFLAGS is created +by prepending/appending $INCPREFIX and $INCSUFFIX +to the beginning and end +of each directory in $FORTRANPATH. + + + + + FORTRANMODDIR + + +Directory location where the Fortran compiler should place +any module files it generates. This variable is empty, by default. Some +Fortran compilers will internally append this directory in the search path +for module files, as well. + + + + + FORTRANMODDIRPREFIX + + +The prefix used to specify a module directory on the Fortran compiler command +line. +This will be appended to the beginning of the directory +in the $FORTRANMODDIR construction variables +when the $_FORTRANMODFLAG variables is automatically generated. + + + + + FORTRANMODDIRSUFFIX + + +The suffix used to specify a module directory on the Fortran compiler command +line. +This will be appended to the beginning of the directory +in the $FORTRANMODDIR construction variables +when the $_FORTRANMODFLAG variables is automatically generated. + + + + + _FORTRANMODFLAG + + +An automatically-generated construction variable +containing the Fortran compiler command-line option +for specifying the directory location where the Fortran +compiler should place any module files that happen to get +generated during compilation. +The value of $_FORTRANMODFLAG is created +by prepending/appending $FORTRANMODDIRPREFIX and +$FORTRANMODDIRSUFFIX +to the beginning and end of the directory in $FORTRANMODDIR. + + + + + FORTRANMODPREFIX + + +The module file prefix used by the Fortran compiler. SCons assumes that +the Fortran compiler follows the quasi-standard naming convention for +module files of +module_name.mod. +As a result, this variable is left empty, by default. For situations in +which the compiler does not necessarily follow the normal convention, +the user may use this variable. Its value will be appended to every +module file name as scons attempts to resolve dependencies. + + + + + FORTRANMODSUFFIX + + +The module file suffix used by the Fortran compiler. SCons assumes that +the Fortran compiler follows the quasi-standard naming convention for +module files of +module_name.mod. +As a result, this variable is set to ".mod", by default. For situations +in which the compiler does not necessarily follow the normal convention, +the user may use this variable. Its value will be appended to every +module file name as scons attempts to resolve dependencies. + + + + + FORTRANPATH + + +The list of directories that the Fortran compiler will search for +include files and (for some compilers) module files. The Fortran implicit +dependency scanner will search these directories for include files (but +not module files since they are autogenerated and, as such, may not +actually exist at the time the scan takes place). Don't explicitly put +include directory arguments in FORTRANFLAGS because the result will be +non-portable and the directories will not be searched by the dependency +scanner. Note: directory names in FORTRANPATH will be looked-up relative +to the SConscript directory when they are used in a command. To force +scons +to look-up a directory relative to the root of the source tree use #: + + + +env = Environment(FORTRANPATH='#/include') + + + +The directory look-up can also be forced using the +Dir() +function: + + + +include = Dir('include') +env = Environment(FORTRANPATH=include) + + + +The directory list will be added to command lines +through the automatically-generated +$_FORTRANINCFLAGS +construction variable, +which is constructed by +appending the values of the +$INCPREFIX and $INCSUFFIX +construction variables +to the beginning and end +of each directory in $FORTRANPATH. +Any command lines you define that need +the FORTRANPATH directory list should +include $_FORTRANINCFLAGS: + + + +env = Environment(FORTRANCOM="my_compiler $_FORTRANINCFLAGS -c -o $TARGET $SOURCE") + + + + + FORTRANPPCOM + + +The command line used to compile a Fortran source file to an object file +after first running the file through the C preprocessor. +By default, any options specified in the $FORTRANFLAGS, +$CPPFLAGS, +$_CPPDEFFLAGS, +$_FORTRANMODFLAG, and +$_FORTRANINCFLAGS +construction variables are included on this command line. + + + + + FORTRANPPCOMSTR + + +The string displayed when a Fortran source file +is compiled to an object file +after first running the file through the C preprocessor. +If this is not set, then $FORTRANPPCOM +(the command line) is displayed. + + + + + FORTRANPPFILESUFFIXES + + +The list of file extensions for which the compilation + preprocessor pass for +FORTRAN dialect will be used. By default, this is ['.fpp', '.FPP'] + + + + + FORTRANSUFFIXES + + +The list of suffixes of files that will be scanned +for Fortran implicit dependencies +(INCLUDE lines and USE statements). +The default list is: + + + +[".f", ".F", ".for", ".FOR", ".ftn", ".FTN", ".fpp", ".FPP", +".f77", ".F77", ".f90", ".F90", ".f95", ".F95"] + + + + + FRAMEWORKPATH + + +On Mac OS X with gcc, +a list containing the paths to search for frameworks. +Used by the compiler to find framework-style includes like +#include <Fmwk/Header.h>. +Used by the linker to find user-specified frameworks when linking (see +$FRAMEWORKS). +For example: + + + + env.AppendUnique(FRAMEWORKPATH='#myframeworkdir') + + + +will add + + + + ... -Fmyframeworkdir + + + +to the compiler and linker command lines. + + + + + _FRAMEWORKPATH + + +On Mac OS X with gcc, an automatically-generated construction variable +containing the linker command-line options corresponding to +$FRAMEWORKPATH. + + + + + FRAMEWORKPATHPREFIX + + +On Mac OS X with gcc, the prefix to be used for the FRAMEWORKPATH entries. +(see $FRAMEWORKPATH). +The default value is +. + + + + + FRAMEWORKPREFIX + + +On Mac OS X with gcc, +the prefix to be used for linking in frameworks +(see $FRAMEWORKS). +The default value is +. + + + + + _FRAMEWORKS + + +On Mac OS X with gcc, +an automatically-generated construction variable +containing the linker command-line options +for linking with FRAMEWORKS. + + + + + FRAMEWORKS + + +On Mac OS X with gcc, a list of the framework names to be linked into a +program or shared library or bundle. +The default value is the empty list. +For example: + + + + env.AppendUnique(FRAMEWORKS=Split('System Cocoa SystemConfiguration')) + + + + + + FRAMEWORKSFLAGS + + +On Mac OS X with gcc, +general user-supplied frameworks options to be added at +the end of a command +line building a loadable module. +(This has been largely superseded by +the $FRAMEWORKPATH, $FRAMEWORKPATHPREFIX, +$FRAMEWORKPREFIX and $FRAMEWORKS variables +described above.) + + + + + GS + + +The Ghostscript program used, e.g. to convert PostScript to PDF files. + + + + + GSCOM + + +The full Ghostscript command line used for the conversion process. Its default +value is $GS $GSFLAGS -sOutputFile=$TARGET $SOURCES. + + + + + GSCOMSTR + + +The string displayed when +Ghostscript is called for the conversion process. +If this is not set (the default), then $GSCOM (the command line) is displayed. + + + + + GSFLAGS + + +General options passed to the Ghostscript program, +when converting PostScript to PDF files for example. Its default value +is -dNOPAUSE -dBATCH -sDEVICE=pdfwrite + + + + + HOST_ARCH + + +Sets the host architecture for Visual Studio compiler. If not set, +default to the detected host architecture: note that this may depend +on the python you are using. +This variable must be passed as an argument to the Environment() +constructor; setting it later has no effect. + + + +Valid values are the same as for $TARGET_ARCH. + + + +This is currently only used on Windows, but in the future it will be +used on other OSes as well. + + + + The name of the host hardware architecture used to create the Environment. + If a platform is specified when creating the Environment, then + that Platform's logic will handle setting this value. + This value is immutable, and should not be changed by the user after + the Environment is initialized. + Currently only set for Win32. + + + + + HOST_OS + + + The name of the host operating system used to create the Environment. + If a platform is specified when creating the Environment, then + that Platform's logic will handle setting this value. + This value is immutable, and should not be changed by the user after + the Environment is initialized. + Currently only set for Win32. + + + + + IDLSUFFIXES + + +The list of suffixes of files that will be scanned +for IDL implicit dependencies +(#include or import lines). +The default list is: + + + +[".idl", ".IDL"] + + + + + IMPLICIT_COMMAND_DEPENDENCIES + + +Controls whether or not SCons will +add implicit dependencies for the commands +executed to build targets. + + + +By default, SCons will add +to each target +an implicit dependency on the command +represented by the first argument on any +command line it executes. +The specific file for the dependency is +found by searching the +PATH +variable in the +ENV +environment used to execute the command. + + + +If the construction variable +$IMPLICIT_COMMAND_DEPENDENCIES +is set to a false value +(None, +False, +0, +etc.), +then the implicit dependency will +not be added to the targets +built with that construction environment. + + + +env = Environment(IMPLICIT_COMMAND_DEPENDENCIES = 0) + + + + + INCPREFIX + + +The prefix used to specify an include directory on the C compiler command +line. +This will be appended to the beginning of each directory +in the $CPPPATH and $FORTRANPATH construction variables +when the $_CPPINCFLAGS and $_FORTRANINCFLAGS +variables are automatically generated. + + + + + INCSUFFIX + + +The suffix used to specify an include directory on the C compiler command +line. +This will be appended to the end of each directory +in the $CPPPATH and $FORTRANPATH construction variables +when the $_CPPINCFLAGS and $_FORTRANINCFLAGS +variables are automatically generated. + + + + + INSTALL + + +A function to be called to install a file into a +destination file name. +The default function copies the file into the destination +(and sets the destination file's mode and permission bits +to match the source file's). +The function takes the following arguments: + + + +def install(dest, source, env): + + + +dest +is the path name of the destination file. +source +is the path name of the source file. +env +is the construction environment +(a dictionary of construction values) +in force for this file installation. + + + + + INSTALLSTR + + +The string displayed when a file is +installed into a destination file name. +The default is: + + +Install file: "$SOURCE" as "$TARGET" + + + + + INTEL_C_COMPILER_VERSION + + +Set by the "intelc" Tool +to the major version number of the Intel C compiler +selected for use. + + + + + JAR + + +The Java archive tool. + + + +The Java archive tool. + + + + + JARCHDIR + + +The directory to which the Java archive tool should change +(using the + +option). + + + +The directory to which the Java archive tool should change +(using the + +option). + + + + + JARCOM + + +The command line used to call the Java archive tool. + + + +The command line used to call the Java archive tool. + + + + + JARCOMSTR + + +The string displayed when the Java archive tool +is called +If this is not set, then $JARCOM (the command line) is displayed. + + + +env = Environment(JARCOMSTR = "JARchiving $SOURCES into $TARGET") + + + +The string displayed when the Java archive tool +is called +If this is not set, then $JARCOM (the command line) is displayed. + + + +env = Environment(JARCOMSTR = "JARchiving $SOURCES into $TARGET") + + + + + JARFLAGS + + +General options passed to the Java archive tool. +By default this is set to + +to create the necessary +jar +file. + + + +General options passed to the Java archive tool. +By default this is set to + +to create the necessary +jar +file. + + + + + JARSUFFIX + + +The suffix for Java archives: +.jar +by default. + + + +The suffix for Java archives: +.jar +by default. + + + + + JAVABOOTCLASSPATH + + +Specifies the list of directories that +will be added to the +javac command line +via the option. +The individual directory names will be +separated by the operating system's path separate character +(: on UNIX/Linux/POSIX, +; on Windows). + + + + + JAVAC + + +The Java compiler. + + + + + JAVACCOM + + +The command line used to compile a directory tree containing +Java source files to +corresponding Java class files. +Any options specified in the $JAVACFLAGS construction variable +are included on this command line. + + + + + JAVACCOMSTR + + +The string displayed when compiling +a directory tree of Java source files to +corresponding Java class files. +If this is not set, then $JAVACCOM (the command line) is displayed. + + + +env = Environment(JAVACCOMSTR = "Compiling class files $TARGETS from $SOURCES") + + + + + JAVACFLAGS + + +General options that are passed to the Java compiler. + + + + + JAVACLASSDIR + + +The directory in which Java class files may be found. +This is stripped from the beginning of any Java .class +file names supplied to the +JavaH +builder. + + + + + JAVACLASSPATH + + +Specifies the list of directories that +will be searched for Java +.class file. +The directories in this list will be added to the +javac and javah command lines +via the option. +The individual directory names will be +separated by the operating system's path separate character +(: on UNIX/Linux/POSIX, +; on Windows). + + + +Note that this currently just adds the specified +directory via the option. +SCons does not currently search the +$JAVACLASSPATH directories for dependency +.class files. + + + + + JAVACLASSSUFFIX + + +The suffix for Java class files; +.class +by default. + + + + + JAVAH + + +The Java generator for C header and stub files. + + + + + JAVAHCOM + + +The command line used to generate C header and stub files +from Java classes. +Any options specified in the $JAVAHFLAGS construction variable +are included on this command line. + + + + + JAVAHCOMSTR + + +The string displayed when C header and stub files +are generated from Java classes. +If this is not set, then $JAVAHCOM (the command line) is displayed. + + + +env = Environment(JAVAHCOMSTR = "Generating header/stub file(s) $TARGETS from $SOURCES") + + + + + JAVAHFLAGS + + +General options passed to the C header and stub file generator +for Java classes. + + + + + JAVASOURCEPATH + + +Specifies the list of directories that +will be searched for input +.java file. +The directories in this list will be added to the +javac command line +via the option. +The individual directory names will be +separated by the operating system's path separate character +(: on UNIX/Linux/POSIX, +; on Windows). + + + +Note that this currently just adds the specified +directory via the option. +SCons does not currently search the +$JAVASOURCEPATH directories for dependency +.java files. + + + + + JAVASUFFIX + + +The suffix for Java files; +.java +by default. + + + + + JAVAVERSION + + +Specifies the Java version being used by the Java builder. +This is not currently used to select one +version of the Java compiler vs. another. +Instead, you should set this to specify the version of Java +supported by your javac compiler. +The default is 1.4. + + + +This is sometimes necessary because +Java 1.5 changed the file names that are created +for nested anonymous inner classes, +which can cause a mismatch with the files +that SCons expects will be generated by the javac compiler. +Setting $JAVAVERSION to 1.5 +(or 1.6, as appropriate) +can make SCons realize that a Java 1.5 or 1.6 +build is actually up to date. + + + + + LATEX + + +The LaTeX structured formatter and typesetter. + + + + + LATEXCOM + + +The command line used to call the LaTeX structured formatter and typesetter. + + + + + LATEXCOMSTR + + +The string displayed when calling +the LaTeX structured formatter and typesetter. +If this is not set, then $LATEXCOM (the command line) is displayed. + + + +env = Environment(LATEXCOMSTR = "Building $TARGET from LaTeX input $SOURCES") + + + + + LATEXFLAGS + + +General options passed to the LaTeX structured formatter and typesetter. + + + + + LATEXRETRIES + + +The maximum number of times that LaTeX +will be re-run if the +.log +generated by the $LATEXCOM command +indicates that there are undefined references. +The default is to try to resolve undefined references +by re-running LaTeX up to three times. + + + + + LATEXSUFFIXES + + +The list of suffixes of files that will be scanned +for LaTeX implicit dependencies +(\include or \import files). +The default list is: + + + +[".tex", ".ltx", ".latex"] + + + + + LDMODULE + + +The linker for building loadable modules. +By default, this is the same as $SHLINK. + + + + + LDMODULECOM + + +The command line for building loadable modules. +On Mac OS X, this uses the $LDMODULE, +$LDMODULEFLAGS and +$FRAMEWORKSFLAGS variables. +On other systems, this is the same as $SHLINK. + + + + + LDMODULECOMSTR + + +The string displayed when building loadable modules. +If this is not set, then $LDMODULECOM (the command line) is displayed. + + + + + LDMODULEFLAGS + + +General user options passed to the linker for building loadable modules. + + + + + LDMODULEPREFIX + + +The prefix used for loadable module file names. +On Mac OS X, this is null; +on other systems, this is +the same as $SHLIBPREFIX. + + + + + LDMODULESUFFIX + + +The suffix used for loadable module file names. +On Mac OS X, this is null; +on other systems, this is +the same as $SHLIBSUFFIX. + + + + + LEX + + +The lexical analyzer generator. + + + + + LEXCOM + + +The command line used to call the lexical analyzer generator +to generate a source file. + + + + + LEXCOMSTR + + +The string displayed when generating a source file +using the lexical analyzer generator. +If this is not set, then $LEXCOM (the command line) is displayed. + + + +env = Environment(LEXCOMSTR = "Lex'ing $TARGET from $SOURCES") + + + + + LEXFLAGS + + +General options passed to the lexical analyzer generator. + + + + + _LIBDIRFLAGS + + +An automatically-generated construction variable +containing the linker command-line options +for specifying directories to be searched for library. +The value of $_LIBDIRFLAGS is created +by appending $LIBDIRPREFIX and $LIBDIRSUFFIX +to the beginning and end +of each directory in $LIBPATH. + + + + + LIBDIRPREFIX + + +The prefix used to specify a library directory on the linker command line. +This will be appended to the beginning of each directory +in the $LIBPATH construction variable +when the $_LIBDIRFLAGS variable is automatically generated. + + + + + LIBDIRSUFFIX + + +The suffix used to specify a library directory on the linker command line. +This will be appended to the end of each directory +in the $LIBPATH construction variable +when the $_LIBDIRFLAGS variable is automatically generated. + + + + + LIBEMITTER + + +TODO + + + + + _LIBFLAGS + + +An automatically-generated construction variable +containing the linker command-line options +for specifying libraries to be linked with the resulting target. +The value of $_LIBFLAGS is created +by appending $LIBLINKPREFIX and $LIBLINKSUFFIX +to the beginning and end +of each filename in $LIBS. + + + + + LIBLINKPREFIX + + +The prefix used to specify a library to link on the linker command line. +This will be appended to the beginning of each library +in the $LIBS construction variable +when the $_LIBFLAGS variable is automatically generated. + + + + + LIBLINKSUFFIX + + +The suffix used to specify a library to link on the linker command line. +This will be appended to the end of each library +in the $LIBS construction variable +when the $_LIBFLAGS variable is automatically generated. + + + + + LIBPATH + + +The list of directories that will be searched for libraries. +The implicit dependency scanner will search these +directories for include files. Don't explicitly put include directory +arguments in $LINKFLAGS or $SHLINKFLAGS +because the result will be non-portable +and the directories will not be searched by the dependency scanner. Note: +directory names in LIBPATH will be looked-up relative to the SConscript +directory when they are used in a command. To force +scons +to look-up a directory relative to the root of the source tree use #: + + + +env = Environment(LIBPATH='#/libs') + + + +The directory look-up can also be forced using the +Dir() +function: + + + +libs = Dir('libs') +env = Environment(LIBPATH=libs) + + + +The directory list will be added to command lines +through the automatically-generated +$_LIBDIRFLAGS +construction variable, +which is constructed by +appending the values of the +$LIBDIRPREFIX and $LIBDIRSUFFIX +construction variables +to the beginning and end +of each directory in $LIBPATH. +Any command lines you define that need +the LIBPATH directory list should +include $_LIBDIRFLAGS: + + + +env = Environment(LINKCOM="my_linker $_LIBDIRFLAGS $_LIBFLAGS -o $TARGET $SOURCE") + + + + + LIBPREFIX + + +The prefix used for (static) library file names. +A default value is set for each platform +(posix, win32, os2, etc.), +but the value is overridden by individual tools +(ar, mslib, sgiar, sunar, tlib, etc.) +to reflect the names of the libraries they create. + + + + + LIBPREFIXES + + +A list of all legal prefixes for library file names. +When searching for library dependencies, +SCons will look for files with these prefixes, +the base library name, +and suffixes in the $LIBSUFFIXES list. + + + + + LIBS + + +A list of one or more libraries +that will be linked with +any executable programs +created by this environment. + + + +The library list will be added to command lines +through the automatically-generated +$_LIBFLAGS +construction variable, +which is constructed by +appending the values of the +$LIBLINKPREFIX and $LIBLINKSUFFIX +construction variables +to the beginning and end +of each filename in $LIBS. +Any command lines you define that need +the LIBS library list should +include $_LIBFLAGS: + + + +env = Environment(LINKCOM="my_linker $_LIBDIRFLAGS $_LIBFLAGS -o $TARGET $SOURCE") + + + +If you add a +File +object to the +$LIBS +list, the name of that file will be added to +$_LIBFLAGS, +and thus the link line, as is, without +$LIBLINKPREFIX +or +$LIBLINKSUFFIX. +For example: + + + +env.Append(LIBS=File('/tmp/mylib.so')) + + + +In all cases, scons will add dependencies from the executable program to +all the libraries in this list. + + + + + LIBSUFFIX + + +The suffix used for (static) library file names. +A default value is set for each platform +(posix, win32, os2, etc.), +but the value is overridden by individual tools +(ar, mslib, sgiar, sunar, tlib, etc.) +to reflect the names of the libraries they create. + + + + + LIBSUFFIXES + + +A list of all legal suffixes for library file names. +When searching for library dependencies, +SCons will look for files with prefixes, in the $LIBPREFIXES list, +the base library name, +and these suffixes. + + + + + LICENSE + + +The abbreviated name of the license under which +this project is released (gpl, lpgl, bsd etc.). +See http://www.opensource.org/licenses/alphabetical +for a list of license names. + + + + + LINESEPARATOR + + +The separator used by the Substfile and Textfile builders. +This value is used between sources when constructing the target. +It defaults to the current system line separator. + + + + + LINGUAS_FILE + + +The $LINGUAS_FILE defines file(s) containing list of additional linguas +to be processed by POInit, POUpdate or MOFiles +builders. It also affects Translate builder. If the variable contains +a string, it defines name of the list file. The $LINGUAS_FILE may be a +list of file names as well. If $LINGUAS_FILE is set to +True (or non-zero numeric value), the list will be read from +default file named +LINGUAS. + + + + + + LINK + + +The linker. + + + + + LINKCOM + + +The command line used to link object files into an executable. + + + + + LINKCOMSTR + + +The string displayed when object files +are linked into an executable. +If this is not set, then $LINKCOM (the command line) is displayed. + + + +env = Environment(LINKCOMSTR = "Linking $TARGET") + + + + + LINKFLAGS + + +General user options passed to the linker. +Note that this variable should +not +contain + +(or similar) options for linking with the libraries listed in $LIBS, +nor + +(or similar) library search path options +that scons generates automatically from $LIBPATH. +See +$_LIBFLAGS +above, +for the variable that expands to library-link options, +and +$_LIBDIRFLAGS +above, +for the variable that expands to library search path options. + + + + + M4 + + +The M4 macro preprocessor. + + + + + M4COM + + +The command line used to pass files through the M4 macro preprocessor. + + + + + M4COMSTR + + +The string displayed when +a file is passed through the M4 macro preprocessor. +If this is not set, then $M4COM (the command line) is displayed. + + + + + M4FLAGS + + +General options passed to the M4 macro preprocessor. + + + + + MAKEINDEX + + +The makeindex generator for the TeX formatter and typesetter and the +LaTeX structured formatter and typesetter. + + + + + MAKEINDEXCOM + + +The command line used to call the makeindex generator for the +TeX formatter and typesetter and the LaTeX structured formatter and +typesetter. + + + + + MAKEINDEXCOMSTR + + +The string displayed when calling the makeindex generator for the +TeX formatter and typesetter +and the LaTeX structured formatter and typesetter. +If this is not set, then $MAKEINDEXCOM (the command line) is displayed. + + + + + MAKEINDEXFLAGS + + +General options passed to the makeindex generator for the TeX formatter +and typesetter and the LaTeX structured formatter and typesetter. + + + + + MAXLINELENGTH + + +The maximum number of characters allowed on an external command line. +On Win32 systems, +link lines longer than this many characters +are linked via a temporary file name. + + + + + MIDL + + +The Microsoft IDL compiler. + + + + + MIDLCOM + + +The command line used to pass files to the Microsoft IDL compiler. + + + + + MIDLCOMSTR + + +The string displayed when +the Microsoft IDL copmiler is called. +If this is not set, then $MIDLCOM (the command line) is displayed. + + + + + MIDLFLAGS + + +General options passed to the Microsoft IDL compiler. + + + + + MOSUFFIX + + +Suffix used for MO files (default: '.mo'). +See msgfmt tool and MOFiles builder. + + + + + MSGFMT + + +Absolute path to msgfmt(1) binary, found by +Detect(). +See msgfmt tool and MOFiles builder. + + + + + MSGFMTCOM + + +Complete command line to run msgfmt(1) program. +See msgfmt tool and MOFiles builder. + + + + + MSGFMTCOMSTR + + +String to display when msgfmt(1) is invoked +(default: '', which means ``print $MSGFMTCOM''). +See msgfmt tool and MOFiles builder. + + + + + MSGFMTFLAGS + + +Additional flags to msgfmt(1). +See msgfmt tool and MOFiles builder. + + + + + MSGINIT + + +Path to msginit(1) program (found via +Detect()). +See msginit tool and POInit builder. + + + + + MSGINITCOM + + +Complete command line to run msginit(1) program. +See msginit tool and POInit builder. + + + + + MSGINITCOMSTR + + +String to display when msginit(1) is invoked +(default: '', which means ``print $MSGINITCOM''). +See msginit tool and POInit builder. + + + + + MSGINITFLAGS + + +List of additional flags to msginit(1) (default: +[]). +See msginit tool and POInit builder. + + + + + _MSGINITLOCALE + + +Internal ``macro''. Computes locale (language) name based on target filename +(default: '${TARGET.filebase}' ). + + +See msginit tool and POInit builder. + + + + + MSGMERGE + + +Absolute path to msgmerge(1) binary as found by +Detect(). +See msgmerge tool and POUpdate builder. + + + + + MSGMERGECOM + + +Complete command line to run msgmerge(1) command. +See msgmerge tool and POUpdate builder. + + + + + MSGMERGECOMSTR + + +String to be displayed when msgmerge(1) is invoked +(default: '', which means ``print $MSGMERGECOM''). +See msgmerge tool and POUpdate builder. + + + + + MSGMERGEFLAGS + + +Additional flags to msgmerge(1) command. +See msgmerge tool and POUpdate builder. + + + + + MSSDK_DIR + + +The directory containing the Microsoft SDK +(either Platform SDK or Windows SDK) +to be used for compilation. + + + + + MSSDK_VERSION + + +The version string of the Microsoft SDK +(either Platform SDK or Windows SDK) +to be used for compilation. +Supported versions include +6.1, +6.0A, +6.0, +2003R2 +and +2003R1. + + + + + MSVC_BATCH + + +When set to any true value, +specifies that SCons should batch +compilation of object files +when calling the Microsoft Visual C/C++ compiler. +All compilations of source files from the same source directory +that generate target files in a same output directory +and were configured in SCons using the same construction environment +will be built in a single call to the compiler. +Only source files that have changed since their +object files were built will be passed to each compiler invocation +(via the $CHANGED_SOURCES construction variable). +Any compilations where the object (target) file base name +(minus the .obj) +does not match the source file base name +will be compiled separately. + + + + + MSVC_USE_SCRIPT + + +Use a batch script to set up Microsoft Visual Studio compiler + + + +$MSVC_USE_SCRIPT overrides $MSVC_VERSION and $TARGET_ARCH. +If set to the name of a Visual Studio .bat file (e.g. vcvars.bat), +SCons will run that bat file and extract the relevant variables from +the result (typically %INCLUDE%, %LIB%, and %PATH%). Setting +MSVC_USE_SCRIPT to None bypasses the Visual Studio autodetection +entirely; use this if you are running SCons in a Visual Studio cmd +window and importing the shell's environment variables. + + + + + MSVC_VERSION + + +Sets the preferred version of Microsoft Visual C/C++ to use. + + + +If $MSVC_VERSION is not set, SCons will (by default) select the +latest version of Visual C/C++ installed on your system. If the +specified version isn't installed, tool initialization will fail. +This variable must be passed as an argument to the Environment() +constructor; setting it later has no effect. Set it to an unexpected +value (e.g. "XXX") to see the valid values on your system. + + + + + MSVS + + +When the Microsoft Visual Studio tools are initialized, they set up +this dictionary with the following keys: + + + +VERSION: +the version of MSVS being used (can be set via +$MSVS_VERSION) + + + +VERSIONS: +the available versions of MSVS installed + + + +VCINSTALLDIR: +installed directory of Visual C++ + + + +VSINSTALLDIR: +installed directory of Visual Studio + + + +FRAMEWORKDIR: +installed directory of the .NET framework + + + +FRAMEWORKVERSIONS: +list of installed versions of the .NET framework, sorted latest to oldest. + + + +FRAMEWORKVERSION: +latest installed version of the .NET framework + + + +FRAMEWORKSDKDIR: +installed location of the .NET SDK. + + + +PLATFORMSDKDIR: +installed location of the Platform SDK. + + + +PLATFORMSDK_MODULES: +dictionary of installed Platform SDK modules, +where the dictionary keys are keywords for the various modules, and +the values are 2-tuples where the first is the release date, and the +second is the version number. + + + +If a value isn't set, it wasn't available in the registry. + + + + + MSVS_ARCH + + +Sets the architecture for which the generated project(s) should build. + + + +The default value is x86. +amd64 is also supported +by SCons for some Visual Studio versions. +Trying to set $MSVS_ARCH to an architecture that's not +supported for a given Visual Studio version +will generate an error. + + + + + MSVS_PROJECT_GUID + + +The string +placed in a generated Microsoft Visual Studio project file +as the value of the +ProjectGUID +attribute. +There is no default value. If not defined, a new GUID is generated. + + + + + MSVS_SCC_AUX_PATH + + +The path name +placed in a generated Microsoft Visual Studio project file +as the value of the +SccAuxPath +attribute +if the +MSVS_SCC_PROVIDER +construction variable is also set. +There is no default value. + + + + + MSVS_SCC_CONNECTION_ROOT + + +The root path of projects in your SCC workspace, i.e the path under which +all project and solution files will be generated. It is used as a +reference path from which the relative paths of the generated +Microsoft Visual Studio project and solution files are computed. +The relative project file path is placed as the value of the +SccLocalPath +attribute +of the project file +and as the values of the +SccProjectFilePathRelativizedFromConnection[i] +(where [i] ranges from 0 to the number of projects in the solution) +attributes of the +GlobalSection(SourceCodeControl) +section of the Microsoft Visual Studio solution file. +Similarly the relative solution file path is placed as the values of the +SccLocalPath[i] +(where [i] ranges from 0 to the number of projects in the solution) +attributes of the +GlobalSection(SourceCodeControl) +section of the Microsoft Visual Studio solution file. +This is used only +if the +MSVS_SCC_PROVIDER +construction variable is also set. +The default value is the current working directory. + + + + + MSVS_SCC_PROJECT_NAME + + +The project name +placed in a generated Microsoft Visual Studio project file +as the value of the +SccProjectName +attribute +if the +MSVS_SCC_PROVIDER +construction variable is also set. +In this case the string is also placed in the +SccProjectName0 +attribute of the +GlobalSection(SourceCodeControl) +section of the Microsoft Visual Studio solution file. +There is no default value. + + + + + MSVS_SCC_PROVIDER + + +The string +placed in a generated Microsoft Visual Studio project file +as the value of the +SccProvider +attribute. +The string is also placed in the +SccProvider0 +attribute of the +GlobalSection(SourceCodeControl) +section of the Microsoft Visual Studio solution file. +There is no default value. + + + + + MSVS_VERSION + + +Sets the preferred version of Microsoft Visual Studio to use. + + + +If $MSVS_VERSION is not set, +SCons will (by default) select the latest version +of Visual Studio installed on your system. +So, if you have version 6 and version 7 (MSVS .NET) installed, +it will prefer version 7. +You can override this by +specifying the +MSVS_VERSION +variable in the Environment initialization, setting it to the +appropriate version ('6.0' or '7.0', for example). +If the specified version isn't installed, +tool initialization will fail. + + + +This is obsolete: use $MSVC_VERSION instead. If $MSVS_VERSION is set and +$MSVC_VERSION is not, $MSVC_VERSION will be set automatically to $MSVS_VERSION. +If both are set to different values, scons will raise an error. + + + + + MSVSBUILDCOM + + +The build command line placed in +a generated Microsoft Visual Studio project file. +The default is to have Visual Studio invoke SCons with any specified +build targets. + + + + + MSVSCLEANCOM + + +The clean command line placed in +a generated Microsoft Visual Studio project file. +The default is to have Visual Studio invoke SCons with the -c option +to remove any specified targets. + + + + + MSVSENCODING + + +The encoding string placed in +a generated Microsoft Visual Studio project file. +The default is encoding +Windows-1252. + + + + + MSVSPROJECTCOM + + +The action used to generate Microsoft Visual Studio project files. + + + + + MSVSPROJECTSUFFIX + + +The suffix used for Microsoft Visual Studio project (DSP) files. +The default value is +.vcproj +when using Visual Studio version 7.x (.NET) +or later version, +and +.dsp +when using earlier versions of Visual Studio. + + + + + MSVSREBUILDCOM + + +The rebuild command line placed in +a generated Microsoft Visual Studio project file. +The default is to have Visual Studio invoke SCons with any specified +rebuild targets. + + + + + MSVSSCONS + + +The SCons used in generated Microsoft Visual Studio project files. +The default is the version of SCons being +used to generate the project file. + + + + + MSVSSCONSCOM + + +The default SCons command used in generated Microsoft Visual Studio +project files. + + + + + MSVSSCONSCRIPT + + +The sconscript file +(that is, +SConstruct +or +SConscript +file) +that will be invoked by Visual Studio +project files +(through the +$MSVSSCONSCOM +variable). +The default is the same sconscript file +that contains the call to +MSVSProject +to build the project file. + + + + + MSVSSCONSFLAGS + + +The SCons flags used in generated Microsoft Visual Studio +project files. + + + + + MSVSSOLUTIONCOM + + +The action used to generate Microsoft Visual Studio solution files. + + + + + MSVSSOLUTIONSUFFIX + + +The suffix used for Microsoft Visual Studio solution (DSW) files. +The default value is +.sln +when using Visual Studio version 7.x (.NET), +and +.dsw +when using earlier versions of Visual Studio. + + + + + MT + + +The program used on Windows systems to embed manifests into DLLs and EXEs. +See also $WINDOWS_EMBED_MANIFEST. + + + + + MTEXECOM + + +The Windows command line used to embed manifests into executables. +See also $MTSHLIBCOM. + + + + + MTFLAGS + + +Flags passed to the $MT manifest embedding program (Windows only). + + + + + MTSHLIBCOM + + +The Windows command line used to embed manifests into shared libraries (DLLs). +See also $MTEXECOM. + + + + + MWCW_VERSION + + +The version number of the MetroWerks CodeWarrior C compiler +to be used. + + + + + MWCW_VERSIONS + + +A list of installed versions of the MetroWerks CodeWarrior C compiler +on this system. + + + + + NAME + + +Specfies the name of the project to package. + + + + + no_import_lib + + +When set to non-zero, +suppresses creation of a corresponding Windows static import lib by the +SharedLibrary +builder when used with +MinGW, Microsoft Visual Studio or Metrowerks. +This also suppresses creation +of an export (.exp) file +when using Microsoft Visual Studio. + + + + + OBJPREFIX + + +The prefix used for (static) object file names. + + + + + OBJSUFFIX + + +The suffix used for (static) object file names. + + + + + P4 + + +The Perforce executable. + + + + + P4COM + + +The command line used to +fetch source files from Perforce. + + + + + P4COMSTR + + +The string displayed when +fetching a source file from Perforce. +If this is not set, then $P4COM (the command line) is displayed. + + + + + P4FLAGS + + +General options that are passed to Perforce. + + + + + PACKAGEROOT + + +Specifies the directory where all files in resulting archive will be +placed if applicable. The default value is "$NAME-$VERSION". + + + + + PACKAGETYPE + + +Selects the package type to build. Currently these are available: + + + + * msi - Microsoft Installer + * rpm - Redhat Package Manger + * ipkg - Itsy Package Management System + * tarbz2 - compressed tar + * targz - compressed tar + * zip - zip file + * src_tarbz2 - compressed tar source + * src_targz - compressed tar source + * src_zip - zip file source + + + +This may be overridden with the "package_type" command line option. + + + + + PACKAGEVERSION + + +The version of the package (not the underlying project). +This is currently only used by the rpm packager +and should reflect changes in the packaging, +not the underlying project code itself. + + + + + PCH + + +The Microsoft Visual C++ precompiled header that will be used when compiling +object files. This variable is ignored by tools other than Microsoft Visual C++. +When this variable is +defined SCons will add options to the compiler command line to +cause it to use the precompiled header, and will also set up the +dependencies for the PCH file. +Example: + + + +env['PCH'] = 'StdAfx.pch' + + + + + PCHCOM + + +The command line used by the +PCH +builder to generated a precompiled header. + + + + + PCHCOMSTR + + +The string displayed when generating a precompiled header. +If this is not set, then $PCHCOM (the command line) is displayed. + + + + + PCHPDBFLAGS + + +A construction variable that, when expanded, +adds the /yD flag to the command line +only if the $PDB construction variable is set. + + + + + PCHSTOP + + +This variable specifies how much of a source file is precompiled. This +variable is ignored by tools other than Microsoft Visual C++, or when +the PCH variable is not being used. When this variable is define it +must be a string that is the name of the header that +is included at the end of the precompiled portion of the source files, or +the empty string if the "#pragma hrdstop" construct is being used: + + + +env['PCHSTOP'] = 'StdAfx.h' + + + + + PDB + + +The Microsoft Visual C++ PDB file that will store debugging information for +object files, shared libraries, and programs. This variable is ignored by +tools other than Microsoft Visual C++. +When this variable is +defined SCons will add options to the compiler and linker command line to +cause them to generate external debugging information, and will also set up the +dependencies for the PDB file. +Example: + + + +env['PDB'] = 'hello.pdb' + + + +The Visual C++ compiler switch that SCons uses by default +to generate PDB information is . +This works correctly with parallel () builds +because it embeds the debug information in the intermediate object files, +as opposed to sharing a single PDB file between multiple object files. +This is also the only way to get debug information +embedded into a static library. +Using the instead may yield improved +link-time performance, +although parallel builds will no longer work. +You can generate PDB files with the +switch by overriding the default $CCPDBFLAGS variable; +see the entry for that variable for specific examples. + + + + + PDFCOM + + +A deprecated synonym for $DVIPDFCOM. + + + + + PDFLATEX + + +The pdflatex utility. + + + + + PDFLATEXCOM + + +The command line used to call the pdflatex utility. + + + + + PDFLATEXCOMSTR + + +The string displayed when calling the pdflatex utility. +If this is not set, then $PDFLATEXCOM (the command line) is displayed. + + + +env = Environment(PDFLATEX;COMSTR = "Building $TARGET from LaTeX input $SOURCES") + + + + + PDFLATEXFLAGS + + +General options passed to the pdflatex utility. + + + + + PDFPREFIX + + +The prefix used for PDF file names. + + + + + PDFSUFFIX + + +The suffix used for PDF file names. + + + + + PDFTEX + + +The pdftex utility. + + + + + PDFTEXCOM + + +The command line used to call the pdftex utility. + + + + + PDFTEXCOMSTR + + +The string displayed when calling the pdftex utility. +If this is not set, then $PDFTEXCOM (the command line) is displayed. + + + +env = Environment(PDFTEXCOMSTR = "Building $TARGET from TeX input $SOURCES") + + + + + PDFTEXFLAGS + + +General options passed to the pdftex utility. + + + + + PKGCHK + + +On Solaris systems, +the package-checking program that will +be used (along with $PKGINFO) +to look for installed versions of +the Sun PRO C++ compiler. +The default is +/usr/sbin/pgkchk. + + + + + PKGINFO + + +On Solaris systems, +the package information program that will +be used (along with $PKGCHK) +to look for installed versions of +the Sun PRO C++ compiler. +The default is +pkginfo. + + + + + PLATFORM + + +The name of the platform used to create the Environment. If no platform is +specified when the Environment is created, +scons +autodetects the platform. + + + +env = Environment(tools = []) +if env['PLATFORM'] == 'cygwin': + Tool('mingw')(env) +else: + Tool('msvc')(env) + + + + + POAUTOINIT + + +The $POAUTOINIT variable, if set to True (on non-zero +numeric value), let the msginit tool to automatically initialize +missing PO files with +msginit(1). This applies to both, +POInit and POUpdate builders (and others that use any of +them). + + + + + POCREATE_ALIAS + + +Common alias for all PO files created with POInit +builder (default: 'po-create'). +See msginit tool and POInit builder. + + + + + POSUFFIX + + +Suffix used for PO files (default: '.po') +See msginit tool and POInit builder. + + + + + POTDOMAIN + + +The $POTDOMAIN defines default domain, used to generate +POT filename as $POTDOMAIN.pot when +no POT file name is provided by the user. This applies to +POTUpdate, POInit and POUpdate builders (and +builders, that use them, e.g. Translate). Normally (if $POTDOMAIN is +not defined), the builders use messages.pot as default +POT file name. + + + + + POTSUFFIX + + +Suffix used for PO Template files (default: '.pot'). +See xgettext tool and POTUpdate builder. + + + + + POTUPDATE_ALIAS + + +Name of the common phony target for all PO Templates created with +POUpdate (default: 'pot-update'). +See xgettext tool and POTUpdate builder. + + + + + POUPDATE_ALIAS + + +Common alias for all PO files being defined with +POUpdate builder (default: 'po-update'). +See msgmerge tool and POUpdate builder. + + + + + PRINT_CMD_LINE_FUNC + + +A Python function used to print the command lines as they are executed +(assuming command printing is not disabled by the + +or + +options or their equivalents). +The function should take four arguments: +s, +the command being executed (a string), +target, +the target being built (file node, list, or string name(s)), +source, +the source(s) used (file node, list, or string name(s)), and +env, +the environment being used. + + + +The function must do the printing itself. The default implementation, +used if this variable is not set or is None, is: + + +def print_cmd_line(s, target, source, env): + sys.stdout.write(s + "\n") + + + +Here's an example of a more interesting function: + + + +def print_cmd_line(s, target, source, env): + sys.stdout.write("Building %s -> %s...\n" % + (' and '.join([str(x) for x in source]), + ' and '.join([str(x) for x in target]))) +env=Environment(PRINT_CMD_LINE_FUNC=print_cmd_line) +env.Program('foo', 'foo.c') + + + +This just prints "Building targetname from sourcename..." instead +of the actual commands. +Such a function could also log the actual commands to a log file, +for example. + + + + + PROGEMITTER + + +TODO + + + + + PROGPREFIX + + +The prefix used for executable file names. + + + + + PROGSUFFIX + + +The suffix used for executable file names. + + + + + PSCOM + + +The command line used to convert TeX DVI files into a PostScript file. + + + + + PSCOMSTR + + +The string displayed when a TeX DVI file +is converted into a PostScript file. +If this is not set, then $PSCOM (the command line) is displayed. + + + + + PSPREFIX + + +The prefix used for PostScript file names. + + + + + PSSUFFIX + + +The prefix used for PostScript file names. + + + + + QT_AUTOSCAN + + +Turn off scanning for mocable files. Use the Moc Builder to explicitly +specify files to run moc on. + + + + + QT_BINPATH + + +The path where the qt binaries are installed. +The default value is '$QTDIR/bin'. + + + + + QT_CPPPATH + + +The path where the qt header files are installed. +The default value is '$QTDIR/include'. +Note: If you set this variable to None, +the tool won't change the $CPPPATH +construction variable. + + + + + QT_DEBUG + + +Prints lots of debugging information while scanning for moc files. + + + + + QT_LIB + + +Default value is 'qt'. You may want to set this to 'qt-mt'. Note: If you set +this variable to None, the tool won't change the $LIBS variable. + + + + + QT_LIBPATH + + +The path where the qt libraries are installed. +The default value is '$QTDIR/lib'. +Note: If you set this variable to None, +the tool won't change the $LIBPATH +construction variable. + + + + + QT_MOC + + +Default value is '$QT_BINPATH/moc'. + + + + + QT_MOCCXXPREFIX + + +Default value is ''. Prefix for moc output files, when source is a cxx file. + + + + + QT_MOCCXXSUFFIX + + +Default value is '.moc'. Suffix for moc output files, when source is a cxx +file. + + + + + QT_MOCFROMCXXCOM + + +Command to generate a moc file from a cpp file. + + + + + QT_MOCFROMCXXCOMSTR + + +The string displayed when generating a moc file from a cpp file. +If this is not set, then $QT_MOCFROMCXXCOM (the command line) is displayed. + + + + + QT_MOCFROMCXXFLAGS + + +Default value is '-i'. These flags are passed to moc, when moccing a +C++ file. + + + + + QT_MOCFROMHCOM + + +Command to generate a moc file from a header. + + + + + QT_MOCFROMHCOMSTR + + +The string displayed when generating a moc file from a cpp file. +If this is not set, then $QT_MOCFROMHCOM (the command line) is displayed. + + + + + QT_MOCFROMHFLAGS + + +Default value is ''. These flags are passed to moc, when moccing a header +file. + + + + + QT_MOCHPREFIX + + +Default value is 'moc_'. Prefix for moc output files, when source is a header. + + + + + QT_MOCHSUFFIX + + +Default value is '$CXXFILESUFFIX'. Suffix for moc output files, when source is +a header. + + + + + QT_UIC + + +Default value is '$QT_BINPATH/uic'. + + + + + QT_UICCOM + + +Command to generate header files from .ui files. + + + + + QT_UICCOMSTR + + +The string displayed when generating header files from .ui files. +If this is not set, then $QT_UICCOM (the command line) is displayed. + + + + + QT_UICDECLFLAGS + + +Default value is ''. These flags are passed to uic, when creating a a h +file from a .ui file. + + + + + QT_UICDECLPREFIX + + +Default value is ''. Prefix for uic generated header files. + + + + + QT_UICDECLSUFFIX + + +Default value is '.h'. Suffix for uic generated header files. + + + + + QT_UICIMPLFLAGS + + +Default value is ''. These flags are passed to uic, when creating a cxx +file from a .ui file. + + + + + QT_UICIMPLPREFIX + + +Default value is 'uic_'. Prefix for uic generated implementation files. + + + + + QT_UICIMPLSUFFIX + + +Default value is '$CXXFILESUFFIX'. Suffix for uic generated implementation +files. + + + + + QT_UISUFFIX + + +Default value is '.ui'. Suffix of designer input files. + + + + + QTDIR + + +The qt tool tries to take this from os.environ. +It also initializes all QT_* +construction variables listed below. +(Note that all paths are constructed +with python's os.path.join() method, +but are listed here with the '/' separator +for easier reading.) +In addition, the construction environment +variables $CPPPATH, +$LIBPATH and +$LIBS may be modified +and the variables +$PROGEMITTER, $SHLIBEMITTER and $LIBEMITTER +are modified. Because the build-performance is affected when using this tool, +you have to explicitly specify it at Environment creation: + + + +Environment(tools=['default','qt']) + + + +The qt tool supports the following operations: + + + +Automatic moc file generation from header files. +You do not have to specify moc files explicitly, the tool does it for you. +However, there are a few preconditions to do so: Your header file must have +the same filebase as your implementation file and must stay in the same +directory. It must have one of the suffixes .h, .hpp, .H, .hxx, .hh. You +can turn off automatic moc file generation by setting QT_AUTOSCAN to 0. +See also the corresponding +Moc() +builder method. + + + +Automatic moc file generation from cxx files. +As stated in the qt documentation, include the moc file at the end of +the cxx file. Note that you have to include the file, which is generated +by the transformation ${QT_MOCCXXPREFIX}<basename>${QT_MOCCXXSUFFIX}, by default +<basename>.moc. A warning is generated after building the moc file, if you +do not include the correct file. If you are using VariantDir, you may +need to specify duplicate=1. You can turn off automatic moc file generation +by setting QT_AUTOSCAN to 0. See also the corresponding +Moc +builder method. + + + +Automatic handling of .ui files. +The implementation files generated from .ui files are handled much the same +as yacc or lex files. Each .ui file given as a source of Program, Library or +SharedLibrary will generate three files, the declaration file, the +implementation file and a moc file. Because there are also generated headers, +you may need to specify duplicate=1 in calls to VariantDir. +See also the corresponding +Uic +builder method. + + + + + RANLIB + + +The archive indexer. + + + + + RANLIBCOM + + +The command line used to index a static library archive. + + + + + RANLIBCOMSTR + + +The string displayed when a static library archive is indexed. +If this is not set, then $RANLIBCOM (the command line) is displayed. + + + +env = Environment(RANLIBCOMSTR = "Indexing $TARGET") + + + + + RANLIBFLAGS + + +General options passed to the archive indexer. + + + + + RC + + +The resource compiler used to build +a Microsoft Visual C++ resource file. + + + + + RCCOM + + +The command line used to build +a Microsoft Visual C++ resource file. + + + + + RCCOMSTR + + +The string displayed when invoking the resource compiler +to build a Microsoft Visual C++ resource file. +If this is not set, then $RCCOM (the command line) is displayed. + + + + + RCFLAGS + + +The flags passed to the resource compiler by the RES builder. + + + + + RCINCFLAGS + + +An automatically-generated construction variable +containing the command-line options +for specifying directories to be searched +by the resource compiler. +The value of $RCINCFLAGS is created +by appending $RCINCPREFIX and $RCINCSUFFIX +to the beginning and end +of each directory in $CPPPATH. + + + + + RCINCPREFIX + + +The prefix (flag) used to specify an include directory +on the resource compiler command line. +This will be appended to the beginning of each directory +in the $CPPPATH construction variable +when the $RCINCFLAGS variable is expanded. + + + + + RCINCSUFFIX + + +The suffix used to specify an include directory +on the resource compiler command line. +This will be appended to the end of each directory +in the $CPPPATH construction variable +when the $RCINCFLAGS variable is expanded. + + + + + RCS + + +The RCS executable. +Note that this variable is not actually used +for the command to fetch source files from RCS; +see the +$RCS_CO +construction variable, below. + + + + + RCS_CO + + +The RCS "checkout" executable, +used to fetch source files from RCS. + + + + + RCS_COCOM + + +The command line used to +fetch (checkout) source files from RCS. + + + + + RCS_COCOMSTR + + +The string displayed when fetching +a source file from RCS. +If this is not set, then $RCS_COCOM +(the command line) is displayed. + + + + + RCS_COFLAGS + + +Options that are passed to the $RCS_CO command. + + + + + RDirs + + +A function that converts a string into a list of Dir instances by +searching the repositories. + + + + + REGSVR + + +The program used on Windows systems +to register a newly-built DLL library +whenever the SharedLibrary builder +is passed a keyword argument of register=1. + + + + + REGSVRCOM + + +The command line used on Windows systems +to register a newly-built DLL library +whenever the SharedLibrary builder +is passed a keyword argument of register=1. + + + + + REGSVRCOMSTR + + +The string displayed when registering a newly-built DLL file. +If this is not set, then $REGSVRCOM (the command line) is displayed. + + + + + REGSVRFLAGS + + +Flags passed to the DLL registration program +on Windows systems when a newly-built DLL library is registered. +By default, +this includes the +that prevents dialog boxes from popping up +and requiring user attention. + + + + + RMIC + + +The Java RMI stub compiler. + + + + + RMICCOM + + +The command line used to compile stub +and skeleton class files +from Java classes that contain RMI implementations. +Any options specified in the $RMICFLAGS construction variable +are included on this command line. + + + + + RMICCOMSTR + + +The string displayed when compiling +stub and skeleton class files +from Java classes that contain RMI implementations. +If this is not set, then $RMICCOM (the command line) is displayed. + + + +env = Environment(RMICCOMSTR = "Generating stub/skeleton class files $TARGETS from $SOURCES") + + + + + RMICFLAGS + + +General options passed to the Java RMI stub compiler. + + + + + _RPATH + + +An automatically-generated construction variable +containing the rpath flags to be used when linking +a program with shared libraries. +The value of $_RPATH is created +by appending $RPATHPREFIX and $RPATHSUFFIX +to the beginning and end +of each directory in $RPATH. + + + + + RPATH + + +A list of paths to search for shared libraries when running programs. +Currently only used in the GNU (gnulink), +IRIX (sgilink) and Sun (sunlink) linkers. +Ignored on platforms and toolchains that don't support it. +Note that the paths added to RPATH +are not transformed by +scons +in any way: if you want an absolute +path, you must make it absolute yourself. + + + + + RPATHPREFIX + + +The prefix used to specify a directory to be searched for +shared libraries when running programs. +This will be appended to the beginning of each directory +in the $RPATH construction variable +when the $_RPATH variable is automatically generated. + + + + + RPATHSUFFIX + + +The suffix used to specify a directory to be searched for +shared libraries when running programs. +This will be appended to the end of each directory +in the $RPATH construction variable +when the $_RPATH variable is automatically generated. + + + + + RPCGEN + + +The RPC protocol compiler. + + + + + RPCGENCLIENTFLAGS + + +Options passed to the RPC protocol compiler +when generating client side stubs. +These are in addition to any flags specified in the +$RPCGENFLAGS +construction variable. + + + + + RPCGENFLAGS + + +General options passed to the RPC protocol compiler. + + + + + RPCGENHEADERFLAGS + + +Options passed to the RPC protocol compiler +when generating a header file. +These are in addition to any flags specified in the +$RPCGENFLAGS +construction variable. + + + + + RPCGENSERVICEFLAGS + + +Options passed to the RPC protocol compiler +when generating server side stubs. +These are in addition to any flags specified in the +$RPCGENFLAGS +construction variable. + + + + + RPCGENXDRFLAGS + + +Options passed to the RPC protocol compiler +when generating XDR routines. +These are in addition to any flags specified in the +$RPCGENFLAGS +construction variable. + + + + + SCANNERS + + +A list of the available implicit dependency scanners. +New file scanners may be added by +appending to this list, +although the more flexible approach +is to associate scanners +with a specific Builder. +See the sections "Builder Objects" +and "Scanner Objects," +below, for more information. + + + + + SCCS + + +The SCCS executable. + + + + + SCCSCOM + + +The command line used to +fetch source files from SCCS. + + + + + SCCSCOMSTR + + +The string displayed when fetching +a source file from a CVS repository. +If this is not set, then $SCCSCOM +(the command line) is displayed. + + + + + SCCSFLAGS + + +General options that are passed to SCCS. + + + + + SCCSGETFLAGS + + +Options that are passed specifically to the SCCS "get" subcommand. +This can be set, for example, to + +to check out editable files from SCCS. + + + + + SCONS_HOME + + +The (optional) path to the SCons library directory, +initialized from the external environment. +If set, this is used to construct a shorter and more +efficient search path in the +$MSVSSCONS +command line executed +from Microsoft Visual Studio project files. + + + + + SHCC + + +The C compiler used for generating shared-library objects. + + + + + SHCCCOM + + +The command line used to compile a C source file +to a shared-library object file. +Any options specified in the $SHCFLAGS, +$SHCCFLAGS and +$CPPFLAGS construction variables +are included on this command line. + + + + + SHCCCOMSTR + + +The string displayed when a C source file +is compiled to a shared object file. +If this is not set, then $SHCCCOM (the command line) is displayed. + + + +env = Environment(SHCCCOMSTR = "Compiling shared object $TARGET") + + + + + SHCCFLAGS + + +Options that are passed to the C and C++ compilers +to generate shared-library objects. + + + + + SHCFLAGS + + +Options that are passed to the C compiler (only; not C++) +to generate shared-library objects. + + + + + SHCXX + + +The C++ compiler used for generating shared-library objects. + + + + + SHCXXCOM + + +The command line used to compile a C++ source file +to a shared-library object file. +Any options specified in the $SHCXXFLAGS and +$CPPFLAGS construction variables +are included on this command line. + + + + + SHCXXCOMSTR + + +The string displayed when a C++ source file +is compiled to a shared object file. +If this is not set, then $SHCXXCOM (the command line) is displayed. + + + +env = Environment(SHCXXCOMSTR = "Compiling shared object $TARGET") + + + + + SHCXXFLAGS + + +Options that are passed to the C++ compiler +to generate shared-library objects. + + + + + SHELL + + +A string naming the shell program that will be passed to the +$SPAWN +function. +See the +$SPAWN +construction variable for more information. + + + + + SHF03 + + +The Fortran 03 compiler used for generating shared-library objects. +You should normally set the $SHFORTRAN variable, +which specifies the default Fortran compiler +for all Fortran versions. +You only need to set $SHF03 if you need to use a specific compiler +or compiler version for Fortran 03 files. + + + + + SHF03COM + + +The command line used to compile a Fortran 03 source file +to a shared-library object file. +You only need to set $SHF03COM if you need to use a specific +command line for Fortran 03 files. +You should normally set the $SHFORTRANCOM variable, +which specifies the default command line +for all Fortran versions. + + + + + SHF03COMSTR + + +The string displayed when a Fortran 03 source file +is compiled to a shared-library object file. +If this is not set, then $SHF03COM or $SHFORTRANCOM +(the command line) is displayed. + + + + + SHF03FLAGS + + +Options that are passed to the Fortran 03 compiler +to generated shared-library objects. +You only need to set $SHF03FLAGS if you need to define specific +user options for Fortran 03 files. +You should normally set the $SHFORTRANFLAGS variable, +which specifies the user-specified options +passed to the default Fortran compiler +for all Fortran versions. + + + + + SHF03PPCOM + + +The command line used to compile a Fortran 03 source file to a +shared-library object file +after first running the file through the C preprocessor. +Any options specified in the $SHF03FLAGS and $CPPFLAGS construction variables +are included on this command line. +You only need to set $SHF03PPCOM if you need to use a specific +C-preprocessor command line for Fortran 03 files. +You should normally set the $SHFORTRANPPCOM variable, +which specifies the default C-preprocessor command line +for all Fortran versions. + + + + + SHF03PPCOMSTR + + +The string displayed when a Fortran 03 source file +is compiled to a shared-library object file +after first running the file through the C preprocessor. +If this is not set, then $SHF03PPCOM or $SHFORTRANPPCOM +(the command line) is displayed. + + + + + SHF77 + + +The Fortran 77 compiler used for generating shared-library objects. +You should normally set the $SHFORTRAN variable, +which specifies the default Fortran compiler +for all Fortran versions. +You only need to set $SHF77 if you need to use a specific compiler +or compiler version for Fortran 77 files. + + + + + SHF77COM + + +The command line used to compile a Fortran 77 source file +to a shared-library object file. +You only need to set $SHF77COM if you need to use a specific +command line for Fortran 77 files. +You should normally set the $SHFORTRANCOM variable, +which specifies the default command line +for all Fortran versions. + + + + + SHF77COMSTR + + +The string displayed when a Fortran 77 source file +is compiled to a shared-library object file. +If this is not set, then $SHF77COM or $SHFORTRANCOM +(the command line) is displayed. + + + + + SHF77FLAGS + + +Options that are passed to the Fortran 77 compiler +to generated shared-library objects. +You only need to set $SHF77FLAGS if you need to define specific +user options for Fortran 77 files. +You should normally set the $SHFORTRANFLAGS variable, +which specifies the user-specified options +passed to the default Fortran compiler +for all Fortran versions. + + + + + SHF77PPCOM + + +The command line used to compile a Fortran 77 source file to a +shared-library object file +after first running the file through the C preprocessor. +Any options specified in the $SHF77FLAGS and $CPPFLAGS construction variables +are included on this command line. +You only need to set $SHF77PPCOM if you need to use a specific +C-preprocessor command line for Fortran 77 files. +You should normally set the $SHFORTRANPPCOM variable, +which specifies the default C-preprocessor command line +for all Fortran versions. + + + + + SHF77PPCOMSTR + + +The string displayed when a Fortran 77 source file +is compiled to a shared-library object file +after first running the file through the C preprocessor. +If this is not set, then $SHF77PPCOM or $SHFORTRANPPCOM +(the command line) is displayed. + + + + + SHF90 + + +The Fortran 90 compiler used for generating shared-library objects. +You should normally set the $SHFORTRAN variable, +which specifies the default Fortran compiler +for all Fortran versions. +You only need to set $SHF90 if you need to use a specific compiler +or compiler version for Fortran 90 files. + + + + + SHF90COM + + +The command line used to compile a Fortran 90 source file +to a shared-library object file. +You only need to set $SHF90COM if you need to use a specific +command line for Fortran 90 files. +You should normally set the $SHFORTRANCOM variable, +which specifies the default command line +for all Fortran versions. + + + + + SHF90COMSTR + + +The string displayed when a Fortran 90 source file +is compiled to a shared-library object file. +If this is not set, then $SHF90COM or $SHFORTRANCOM +(the command line) is displayed. + + + + + SHF90FLAGS + + +Options that are passed to the Fortran 90 compiler +to generated shared-library objects. +You only need to set $SHF90FLAGS if you need to define specific +user options for Fortran 90 files. +You should normally set the $SHFORTRANFLAGS variable, +which specifies the user-specified options +passed to the default Fortran compiler +for all Fortran versions. + + + + + SHF90PPCOM + + +The command line used to compile a Fortran 90 source file to a +shared-library object file +after first running the file through the C preprocessor. +Any options specified in the $SHF90FLAGS and $CPPFLAGS construction variables +are included on this command line. +You only need to set $SHF90PPCOM if you need to use a specific +C-preprocessor command line for Fortran 90 files. +You should normally set the $SHFORTRANPPCOM variable, +which specifies the default C-preprocessor command line +for all Fortran versions. + + + + + SHF90PPCOMSTR + + +The string displayed when a Fortran 90 source file +is compiled to a shared-library object file +after first running the file through the C preprocessor. +If this is not set, then $SHF90PPCOM or $SHFORTRANPPCOM +(the command line) is displayed. + + + + + SHF95 + + +The Fortran 95 compiler used for generating shared-library objects. +You should normally set the $SHFORTRAN variable, +which specifies the default Fortran compiler +for all Fortran versions. +You only need to set $SHF95 if you need to use a specific compiler +or compiler version for Fortran 95 files. + + + + + SHF95COM + + +The command line used to compile a Fortran 95 source file +to a shared-library object file. +You only need to set $SHF95COM if you need to use a specific +command line for Fortran 95 files. +You should normally set the $SHFORTRANCOM variable, +which specifies the default command line +for all Fortran versions. + + + + + SHF95COMSTR + + +The string displayed when a Fortran 95 source file +is compiled to a shared-library object file. +If this is not set, then $SHF95COM or $SHFORTRANCOM +(the command line) is displayed. + + + + + SHF95FLAGS + + +Options that are passed to the Fortran 95 compiler +to generated shared-library objects. +You only need to set $SHF95FLAGS if you need to define specific +user options for Fortran 95 files. +You should normally set the $SHFORTRANFLAGS variable, +which specifies the user-specified options +passed to the default Fortran compiler +for all Fortran versions. + + + + + SHF95PPCOM + + +The command line used to compile a Fortran 95 source file to a +shared-library object file +after first running the file through the C preprocessor. +Any options specified in the $SHF95FLAGS and $CPPFLAGS construction variables +are included on this command line. +You only need to set $SHF95PPCOM if you need to use a specific +C-preprocessor command line for Fortran 95 files. +You should normally set the $SHFORTRANPPCOM variable, +which specifies the default C-preprocessor command line +for all Fortran versions. + + + + + SHF95PPCOMSTR + + +The string displayed when a Fortran 95 source file +is compiled to a shared-library object file +after first running the file through the C preprocessor. +If this is not set, then $SHF95PPCOM or $SHFORTRANPPCOM +(the command line) is displayed. + + + + + SHFORTRAN + + +The default Fortran compiler used for generating shared-library objects. + + + + + SHFORTRANCOM + + +The command line used to compile a Fortran source file +to a shared-library object file. + + + + + SHFORTRANCOMSTR + + +The string displayed when a Fortran source file +is compiled to a shared-library object file. +If this is not set, then $SHFORTRANCOM +(the command line) is displayed. + + + + + SHFORTRANFLAGS + + +Options that are passed to the Fortran compiler +to generate shared-library objects. + + + + + SHFORTRANPPCOM + + +The command line used to compile a Fortran source file to a +shared-library object file +after first running the file through the C preprocessor. +Any options specified +in the $SHFORTRANFLAGS and +$CPPFLAGS construction variables +are included on this command line. + + + + + SHFORTRANPPCOMSTR + + +The string displayed when a Fortran source file +is compiled to a shared-library object file +after first running the file through the C preprocessor. +If this is not set, then $SHFORTRANPPCOM +(the command line) is displayed. + + + + + SHLIBEMITTER + + +TODO + + + + + SHLIBPREFIX + + +The prefix used for shared library file names. + + + + + SHLIBSUFFIX + + +The suffix used for shared library file names. + + + + + SHLIBVERSION + + +When this construction variable is defined, a versioned shared library +is created. This modifies the $SHLINKFLAGS as required, adds +the version number to the library name, and creates the symlinks that +are needed. $SHLIBVERSION needs to be of the form X.Y.Z, +where X and Y are numbers, and Z is a number but can also contain +letters to designate alpha, beta, or release candidate patch levels. + + + + + SHLINK + + +The linker for programs that use shared libraries. + + + + + SHLINKCOM + + +The command line used to link programs using shared libraries. + + + + + SHLINKCOMSTR + + +The string displayed when programs using shared libraries are linked. +If this is not set, then $SHLINKCOM (the command line) is displayed. + + + +env = Environment(SHLINKCOMSTR = "Linking shared $TARGET") + + + + + SHLINKFLAGS + + +General user options passed to the linker for programs using shared libraries. +Note that this variable should +not +contain + +(or similar) options for linking with the libraries listed in $LIBS, +nor + +(or similar) include search path options +that scons generates automatically from $LIBPATH. +See +$_LIBFLAGS +above, +for the variable that expands to library-link options, +and +$_LIBDIRFLAGS +above, +for the variable that expands to library search path options. + + + + + SHOBJPREFIX + + +The prefix used for shared object file names. + + + + + SHOBJSUFFIX + + +The suffix used for shared object file names. + + + + + SOURCE + + +A reserved variable name +that may not be set or used in a construction environment. +(See "Variable Substitution," below.) + + + + + SOURCE_URL + + +The URL +(web address) +of the location from which the project was retrieved. +This is used to fill in the +Source: +field in the controlling information for Ipkg and RPM packages. + + + + + SOURCES + + +A reserved variable name +that may not be set or used in a construction environment. +(See "Variable Substitution," below.) + + + + + SPAWN + + +A command interpreter function that will be called to execute command line +strings. The function must expect the following arguments: + + + +def spawn(shell, escape, cmd, args, env): + + + +sh +is a string naming the shell program to use. +escape +is a function that can be called to escape shell special characters in +the command line. +cmd +is the path to the command to be executed. +args +is the arguments to the command. +env +is a dictionary of the environment variables +in which the command should be executed. + + + + + SUBST_DICT + + +The dictionary used by the Substfile or Textfile builders +for substitution values. +It can be anything acceptable to the dict() constructor, +so in addition to a dictionary, +lists of tuples are also acceptable. + + + + + SUBSTFILEPREFIX + + +The prefix used for Substfile file names, +the null string by default. + + + + + SUBSTFILESUFFIX + + +The suffix used for Substfile file names, +the null string by default. + + + + + SUMMARY + + +A short summary of what the project is about. +This is used to fill in the +Summary: +field in the controlling information for Ipkg and RPM packages, +and as the +Description: +field in MSI packages. + + + + + SWIG + + +The scripting language wrapper and interface generator. + + + + + SWIGCFILESUFFIX + + +The suffix that will be used for intermediate C +source files generated by +the scripting language wrapper and interface generator. +The default value is +_wrap$CFILESUFFIX. +By default, this value is used whenever the + +option is +not +specified as part of the +$SWIGFLAGS +construction variable. + + + + + SWIGCOM + + +The command line used to call +the scripting language wrapper and interface generator. + + + + + SWIGCOMSTR + + +The string displayed when calling +the scripting language wrapper and interface generator. +If this is not set, then $SWIGCOM (the command line) is displayed. + + + + + SWIGCXXFILESUFFIX + + +The suffix that will be used for intermediate C++ +source files generated by +the scripting language wrapper and interface generator. +The default value is +_wrap$CFILESUFFIX. +By default, this value is used whenever the +-c++ +option is specified as part of the +$SWIGFLAGS +construction variable. + + + + + SWIGDIRECTORSUFFIX + + +The suffix that will be used for intermediate C++ header +files generated by the scripting language wrapper and interface generator. +These are only generated for C++ code when the SWIG 'directors' feature is +turned on. +The default value is +_wrap.h. + + + + + SWIGFLAGS + + +General options passed to +the scripting language wrapper and interface generator. +This is where you should set +, +, +, +or whatever other options you want to specify to SWIG. +If you set the + +option in this variable, +scons +will, by default, +generate a C++ intermediate source file +with the extension that is specified as the +$CXXFILESUFFIX +variable. + + + + + _SWIGINCFLAGS + + +An automatically-generated construction variable +containing the SWIG command-line options +for specifying directories to be searched for included files. +The value of $_SWIGINCFLAGS is created +by appending $SWIGINCPREFIX and $SWIGINCSUFFIX +to the beginning and end +of each directory in $SWIGPATH. + + + + + SWIGINCPREFIX + + +The prefix used to specify an include directory on the SWIG command line. +This will be appended to the beginning of each directory +in the $SWIGPATH construction variable +when the $_SWIGINCFLAGS variable is automatically generated. + + + + + SWIGINCSUFFIX + + +The suffix used to specify an include directory on the SWIG command line. +This will be appended to the end of each directory +in the $SWIGPATH construction variable +when the $_SWIGINCFLAGS variable is automatically generated. + + + + + SWIGOUTDIR + + +Specifies the output directory in which +the scripting language wrapper and interface generator +should place generated language-specific files. +This will be used by SCons to identify +the files that will be generated by the swig call, +and translated into the +swig -outdir option on the command line. + + + + + SWIGPATH + + +The list of directories that the scripting language wrapper +and interface generate will search for included files. +The SWIG implicit dependency scanner will search these +directories for include files. +The default is to use the same path +specified as $CPPPATH. + + + +Don't explicitly put include directory +arguments in SWIGFLAGS; +the result will be non-portable +and the directories will not be searched by the dependency scanner. +Note: directory names in SWIGPATH will be looked-up relative to the SConscript +directory when they are used in a command. +To force +scons +to look-up a directory relative to the root of the source tree use #: + + + +env = Environment(SWIGPATH='#/include') + + + +The directory look-up can also be forced using the +Dir() +function: + + + +include = Dir('include') +env = Environment(SWIGPATH=include) + + + +The directory list will be added to command lines +through the automatically-generated +$_SWIGINCFLAGS +construction variable, +which is constructed by +appending the values of the +$SWIGINCPREFIX and $SWIGINCSUFFIX +construction variables +to the beginning and end +of each directory in $SWIGPATH. +Any command lines you define that need +the SWIGPATH directory list should +include $_SWIGINCFLAGS: + + + +env = Environment(SWIGCOM="my_swig -o $TARGET $_SWIGINCFLAGS $SORUCES") + + + + + SWIGVERSION + + +The version number of the SWIG tool. + + + + + TAR + + +The tar archiver. + + + + + TARCOM + + +The command line used to call the tar archiver. + + + + + TARCOMSTR + + +The string displayed when archiving files +using the tar archiver. +If this is not set, then $TARCOM (the command line) is displayed. + + + +env = Environment(TARCOMSTR = "Archiving $TARGET") + + + + + TARFLAGS + + +General options passed to the tar archiver. + + + + + TARGET + + +A reserved variable name +that may not be set or used in a construction environment. +(See "Variable Substitution," below.) + + + + + TARGET_ARCH + + +Sets the target architecture for Visual Studio compiler (i.e. the arch +of the binaries generated by the compiler). If not set, default to +$HOST_ARCH, or, if that is unset, to the architecture of the +running machine's OS (note that the python build or architecture has no +effect). +This variable must be passed as an argument to the Environment() +constructor; setting it later has no effect. +This is currently only used on Windows, but in the future it will be +used on other OSes as well. + + + +Valid values for Windows are +x86, +i386 +(for 32 bits); +amd64, +emt64, +x86_64 +(for 64 bits); +and ia64 (Itanium). +For example, if you want to compile 64-bit binaries, you would set +TARGET_ARCH='x86_64' in your SCons environment. + + + + The name of the target hardware architecture for the compiled objects + created by this Environment. + This defaults to the value of HOST_ARCH, and the user can override it. + Currently only set for Win32. + + + + + TARGET_OS + + + The name of the target operating system for the compiled objects + created by this Environment. + This defaults to the value of HOST_OS, and the user can override it. + Currently only set for Win32. + + + + + TARGETS + + +A reserved variable name +that may not be set or used in a construction environment. +(See "Variable Substitution," below.) + + + + + TARSUFFIX + + +The suffix used for tar file names. + + + + + TEMPFILEPREFIX + + +The prefix for a temporary file used +to execute lines longer than $MAXLINELENGTH. +The default is '@'. +This may be set for toolchains that use other values, +such as '-@' for the diab compiler +or '-via' for ARM toolchain. + + + + + TEX + + +The TeX formatter and typesetter. + + + + + TEXCOM + + +The command line used to call the TeX formatter and typesetter. + + + + + TEXCOMSTR + + +The string displayed when calling +the TeX formatter and typesetter. +If this is not set, then $TEXCOM (the command line) is displayed. + + + +env = Environment(TEXCOMSTR = "Building $TARGET from TeX input $SOURCES") + + + + + TEXFLAGS + + +General options passed to the TeX formatter and typesetter. + + + + + TEXINPUTS + + +List of directories that the LaTeX program will search +for include directories. +The LaTeX implicit dependency scanner will search these +directories for \include and \import files. + + + + + TEXTFILEPREFIX + + +The prefix used for Textfile file names, +the null string by default. + + + + + TEXTFILESUFFIX + + +The suffix used for Textfile file names; +.txt by default. + + + + + TOOLS + + +A list of the names of the Tool specifications +that are part of this construction environment. + + + + + UNCHANGED_SOURCES + + +A reserved variable name +that may not be set or used in a construction environment. +(See "Variable Substitution," below.) + + + + + UNCHANGED_TARGETS + + +A reserved variable name +that may not be set or used in a construction environment. +(See "Variable Substitution," below.) + + + + + VENDOR + + +The person or organization who supply the packaged software. +This is used to fill in the +Vendor: +field in the controlling information for RPM packages, +and the +Manufacturer: +field in the controlling information for MSI packages. + + + + + VERSION + + +The version of the project, specified as a string. + + + + + WIN32_INSERT_DEF + + +A deprecated synonym for $WINDOWS_INSERT_DEF. + + + + + WIN32DEFPREFIX + + +A deprecated synonym for $WINDOWSDEFPREFIX. + + + + + WIN32DEFSUFFIX + + +A deprecated synonym for $WINDOWSDEFSUFFIX. + + + + + WIN32EXPPREFIX + + +A deprecated synonym for $WINDOWSEXPSUFFIX. + + + + + WIN32EXPSUFFIX + + +A deprecated synonym for $WINDOWSEXPSUFFIX. + + + + + WINDOWS_EMBED_MANIFEST + + +Set this variable to True or 1 to embed the compiler-generated manifest +(normally ${TARGET}.manifest) +into all Windows exes and DLLs built with this environment, +as a resource during their link step. +This is done using $MT and $MTEXECOM and $MTSHLIBCOM. + + + + + WINDOWS_INSERT_DEF + + +When this is set to true, +a library build of a Windows shared library +(.dll file) +will also build a corresponding .def file +at the same time, +if a .def file +is not already listed as a build target. +The default is 0 (do not build a .def file). + + + + + WINDOWS_INSERT_MANIFEST + + +When this is set to true, +scons +will be aware of the +.manifest +files generated by Microsoft Visua C/C++ 8. + + + + + WINDOWSDEFPREFIX + + +The prefix used for Windows .def file names. + + + + + WINDOWSDEFSUFFIX + + +The suffix used for Windows .def file names. + + + + + WINDOWSEXPPREFIX + + +The prefix used for Windows .exp file names. + + + + + WINDOWSEXPSUFFIX + + +The suffix used for Windows .exp file names. + + + + + WINDOWSPROGMANIFESTPREFIX + + +The prefix used for executable program .manifest files +generated by Microsoft Visual C/C++. + + + + + WINDOWSPROGMANIFESTSUFFIX + + +The suffix used for executable program .manifest files +generated by Microsoft Visual C/C++. + + + + + WINDOWSSHLIBMANIFESTPREFIX + + +The prefix used for shared library .manifest files +generated by Microsoft Visual C/C++. + + + + + WINDOWSSHLIBMANIFESTSUFFIX + + +The suffix used for shared library .manifest files +generated by Microsoft Visual C/C++. + + + + + X_IPK_DEPENDS + + +This is used to fill in the +Depends: +field in the controlling information for Ipkg packages. + + + + + X_IPK_DESCRIPTION + + +This is used to fill in the +Description: +field in the controlling information for Ipkg packages. +The default value is +$SUMMARY\n$DESCRIPTION + + + + + X_IPK_MAINTAINER + + +This is used to fill in the +Maintainer: +field in the controlling information for Ipkg packages. + + + + + X_IPK_PRIORITY + + +This is used to fill in the +Priority: +field in the controlling information for Ipkg packages. + + + + + X_IPK_SECTION + + +This is used to fill in the +Section: +field in the controlling information for Ipkg packages. + + + + + X_MSI_LANGUAGE + + +This is used to fill in the +Language: +attribute in the controlling information for MSI packages. + + + + + X_MSI_LICENSE_TEXT + + +The text of the software license in RTF format. +Carriage return characters will be +replaced with the RTF equivalent \\par. + + + + + X_MSI_UPGRADE_CODE + + +TODO + + + + + X_RPM_AUTOREQPROV + + +This is used to fill in the +AutoReqProv: +field in the RPM +.spec file. + + + + + X_RPM_BUILD + + +internal, but overridable + + + + + X_RPM_BUILDREQUIRES + + +This is used to fill in the +BuildRequires: +field in the RPM +.spec file. + + + + + X_RPM_BUILDROOT + + +internal, but overridable + + + + + X_RPM_CLEAN + + +internal, but overridable + + + + + X_RPM_CONFLICTS + + +This is used to fill in the +Conflicts: +field in the RPM +.spec file. + + + + + X_RPM_DEFATTR + + +This value is used as the default attributes +for the files in the RPM package. +The default value is +(-,root,root). + + + + + X_RPM_DISTRIBUTION + + +This is used to fill in the +Distribution: +field in the RPM +.spec file. + + + + + X_RPM_EPOCH + + +This is used to fill in the +Epoch: +field in the controlling information for RPM packages. + + + + + X_RPM_EXCLUDEARCH + + +This is used to fill in the +ExcludeArch: +field in the RPM +.spec file. + + + + + X_RPM_EXLUSIVEARCH + + +This is used to fill in the +ExclusiveArch: +field in the RPM +.spec file. + + + + + X_RPM_GROUP + + +This is used to fill in the +Group: +field in the RPM +.spec file. + + + + + X_RPM_GROUP_lang + + +This is used to fill in the +Group(lang): +field in the RPM +.spec file. +Note that +lang +is not literal +and should be replaced by +the appropriate language code. + + + + + X_RPM_ICON + + +This is used to fill in the +Icon: +field in the RPM +.spec file. + + + + + X_RPM_INSTALL + + +internal, but overridable + + + + + X_RPM_PACKAGER + + +This is used to fill in the +Packager: +field in the RPM +.spec file. + + + + + X_RPM_POSTINSTALL + + +This is used to fill in the +%post: +section in the RPM +.spec file. + + + + + X_RPM_POSTUNINSTALL + + +This is used to fill in the +%postun: +section in the RPM +.spec file. + + + + + X_RPM_PREFIX + + +This is used to fill in the +Prefix: +field in the RPM +.spec file. + + + + + X_RPM_PREINSTALL + + +This is used to fill in the +%pre: +section in the RPM +.spec file. + + + + + X_RPM_PREP + + +internal, but overridable + + + + + X_RPM_PREUNINSTALL + + +This is used to fill in the +%preun: +section in the RPM +.spec file. + + + + + X_RPM_PROVIDES + + +This is used to fill in the +Provides: +field in the RPM +.spec file. + + + + + X_RPM_REQUIRES + + +This is used to fill in the +Requires: +field in the RPM +.spec file. + + + + + X_RPM_SERIAL + + +This is used to fill in the +Serial: +field in the RPM +.spec file. + + + + + X_RPM_URL + + +This is used to fill in the +Url: +field in the RPM +.spec file. + + + + + XGETTEXT + + +Path to xgettext(1) program (found via +Detect()). +See xgettext tool and POTUpdate builder. + + + + + XGETTEXTCOM + + +Complete xgettext command line. +See xgettext tool and POTUpdate builder. + + + + + XGETTEXTCOMSTR + + +A string that is shown when xgettext(1) command is invoked +(default: '', which means "print $XGETTEXTCOM"). +See xgettext tool and POTUpdate builder. + + + + + _XGETTEXTDOMAIN + + +Internal "macro". Generates xgettext domain name +form source and target (default: '${TARGET.filebase}'). + + + + + XGETTEXTFLAGS + + +Additional flags to xgettext(1). +See xgettext tool and POTUpdate builder. + + + + + XGETTEXTFROM + + +Name of file containing list of xgettext(1)'s source +files. Autotools' users know this as POTFILES.in so they +will in most cases set XGETTEXTFROM="POTFILES.in" here. +The $XGETTEXTFROM files have same syntax and semantics as the well known +GNU POTFILES.in. +See xgettext tool and POTUpdate builder. + + + + + _XGETTEXTFROMFLAGS + + +Internal "macro". Genrates list of -D<dir> flags +from the $XGETTEXTPATH list. + + + + + XGETTEXTFROMPREFIX + + +This flag is used to add single $XGETTEXTFROM file to +xgettext(1)'s commandline (default: +'-f'). + + + + + XGETTEXTFROMSUFFIX + + +(default: '') + + + + + XGETTEXTPATH + + +List of directories, there xgettext(1) will look for +source files (default: []). + +This variable works only together with $XGETTEXTFROM + +See also xgettext tool and POTUpdate builder. + + + + + _XGETTEXTPATHFLAGS + + +Internal "macro". Generates list of -f<file> flags +from $XGETTEXTFROM. + + + + + XGETTEXTPATHPREFIX + + +This flag is used to add single search path to +xgettext(1)'s commandline (default: +'-D'). + + + + + XGETTEXTPATHSUFFIX + + +(default: '') + + + + + YACC + + +The parser generator. + + + + + YACCCOM + + +The command line used to call the parser generator +to generate a source file. + + + + + YACCCOMSTR + + +The string displayed when generating a source file +using the parser generator. +If this is not set, then $YACCCOM (the command line) is displayed. + + + +env = Environment(YACCCOMSTR = "Yacc'ing $TARGET from $SOURCES") + + + + + YACCFLAGS + + +General options passed to the parser generator. +If $YACCFLAGS contains a option, +SCons assumes that the call will also create a .h file +(if the yacc source file ends in a .y suffix) +or a .hpp file +(if the yacc source file ends in a .yy suffix) + + + + + YACCHFILESUFFIX + + +The suffix of the C +header file generated by the parser generator +when the + +option is used. +Note that setting this variable does not cause +the parser generator to generate a header +file with the specified suffix, +it exists to allow you to specify +what suffix the parser generator will use of its own accord. +The default value is +.h. + + + + + YACCHXXFILESUFFIX + + +The suffix of the C++ +header file generated by the parser generator +when the + +option is used. +Note that setting this variable does not cause +the parser generator to generate a header +file with the specified suffix, +it exists to allow you to specify +what suffix the parser generator will use of its own accord. +The default value is +.hpp, +except on Mac OS X, +where the default is +${TARGET.suffix}.h. +because the default bison parser generator just +appends .h +to the name of the generated C++ file. + + + + + YACCVCGFILESUFFIX + + +The suffix of the file +containing the VCG grammar automaton definition +when the + +option is used. +Note that setting this variable does not cause +the parser generator to generate a VCG +file with the specified suffix, +it exists to allow you to specify +what suffix the parser generator will use of its own accord. +The default value is +.vcg. + + + + + ZIP + + +The zip compression and file packaging utility. + + + + + ZIPCOM + + +The command line used to call the zip utility, +or the internal Python function used to create a +zip archive. + + + + + ZIPCOMPRESSION + + +The +compression +flag +from the Python +zipfile +module used by the internal Python function +to control whether the zip archive +is compressed or not. +The default value is +zipfile.ZIP_DEFLATED, +which creates a compressed zip archive. +This value has no effect if the +zipfile +module is unavailable. + + + + + ZIPCOMSTR + + +The string displayed when archiving files +using the zip utility. +If this is not set, then $ZIPCOM +(the command line or internal Python function) is displayed. + + + +env = Environment(ZIPCOMSTR = "Zipping $TARGET") + + + + + ZIPFLAGS + + +General options passed to the zip utility. + + + + + ZIPROOT + + +An optional zip root directory (default empty). The filenames stored +in the zip file will be relative to this directory, if given. +Otherwise the filenames are relative to the current directory of the +command. +For instance: + + +env = Environment() +env.Zip('foo.zip', 'subdir1/subdir2/file1', ZIPROOT='subdir1') + + +will produce a zip file foo.zip +containing a file with the name +subdir2/file1 rather than +subdir1/subdir2/file1. + + + + + ZIPSUFFIX + + +The suffix used for zip file names. + + + + diff --git a/doc/generated/variables.mod b/doc/generated/variables.mod new file mode 100644 index 0000000..b55b218 --- /dev/null +++ b/doc/generated/variables.mod @@ -0,0 +1,1167 @@ + + + + +$AR"> +$ARCHITECTURE"> +$ARCOM"> +$ARCOMSTR"> +$ARFLAGS"> +$AS"> +$ASCOM"> +$ASCOMSTR"> +$ASFLAGS"> +$ASPPCOM"> +$ASPPCOMSTR"> +$ASPPFLAGS"> +$BIBTEX"> +$BIBTEXCOM"> +$BIBTEXCOMSTR"> +$BIBTEXFLAGS"> +$BITKEEPER"> +$BITKEEPERCOM"> +$BITKEEPERCOMSTR"> +$BITKEEPERGET"> +$BITKEEPERGETFLAGS"> +$BUILDERS"> +$CC"> +$CCCOM"> +$CCCOMSTR"> +$CCFLAGS"> +$CCPCHFLAGS"> +$CCPDBFLAGS"> +$CCVERSION"> +$CFILESUFFIX"> +$CFLAGS"> +$CHANGE_SPECFILE"> +$CHANGED_SOURCES"> +$CHANGED_TARGETS"> +$CHANGELOG"> +$_concat"> +$CONFIGUREDIR"> +$CONFIGURELOG"> +$_CPPDEFFLAGS"> +$CPPDEFINES"> +$CPPDEFPREFIX"> +$CPPDEFSUFFIX"> +$CPPFLAGS"> +$_CPPINCFLAGS"> +$CPPPATH"> +$CPPSUFFIXES"> +$CVS"> +$CVSCOFLAGS"> +$CVSCOM"> +$CVSCOMSTR"> +$CVSFLAGS"> +$CVSREPOSITORY"> +$CXX"> +$CXXCOM"> +$CXXCOMSTR"> +$CXXFILESUFFIX"> +$CXXFLAGS"> +$CXXVERSION"> +$DESCRIPTION"> +$DESCRIPTION_lang"> +$Dir"> +$Dirs"> +$DOCBOOK_DEFAULT_XSL_EPUB"> +$DOCBOOK_DEFAULT_XSL_HTML"> +$DOCBOOK_DEFAULT_XSL_HTMLCHUNKED"> +$DOCBOOK_DEFAULT_XSL_HTMLHELP"> +$DOCBOOK_DEFAULT_XSL_MAN"> +$DOCBOOK_DEFAULT_XSL_PDF"> +$DOCBOOK_DEFAULT_XSL_SLIDESHTML"> +$DOCBOOK_DEFAULT_XSL_SLIDESPDF"> +$DOCBOOK_FOP"> +$DOCBOOK_FOPCOM"> +$DOCBOOK_FOPCOMSTR"> +$DOCBOOK_FOPFLAGS"> +$DOCBOOK_XMLLINT"> +$DOCBOOK_XMLLINTCOM"> +$DOCBOOK_XMLLINTCOMSTR"> +$DOCBOOK_XMLLINTFLAGS"> +$DOCBOOK_XSLTPROC"> +$DOCBOOK_XSLTPROCCOM"> +$DOCBOOK_XSLTPROCCOMSTR"> +$DOCBOOK_XSLTPROCFLAGS"> +$DOCBOOK_XSLTPROCPARAMS"> +$DSUFFIXES"> +$DVIPDF"> +$DVIPDFCOM"> +$DVIPDFCOMSTR"> +$DVIPDFFLAGS"> +$DVIPS"> +$DVIPSFLAGS"> +$ENV"> +$ESCAPE"> +$F03"> +$F03COM"> +$F03COMSTR"> +$F03FILESUFFIXES"> +$F03FLAGS"> +$_F03INCFLAGS"> +$F03PATH"> +$F03PPCOM"> +$F03PPCOMSTR"> +$F03PPFILESUFFIXES"> +$F77"> +$F77COM"> +$F77COMSTR"> +$F77FILESUFFIXES"> +$F77FLAGS"> +$_F77INCFLAGS"> +$F77PATH"> +$F77PPCOM"> +$F77PPCOMSTR"> +$F77PPFILESUFFIXES"> +$F90"> +$F90COM"> +$F90COMSTR"> +$F90FILESUFFIXES"> +$F90FLAGS"> +$_F90INCFLAGS"> +$F90PATH"> +$F90PPCOM"> +$F90PPCOMSTR"> +$F90PPFILESUFFIXES"> +$F95"> +$F95COM"> +$F95COMSTR"> +$F95FILESUFFIXES"> +$F95FLAGS"> +$_F95INCFLAGS"> +$F95PATH"> +$F95PPCOM"> +$F95PPCOMSTR"> +$F95PPFILESUFFIXES"> +$File"> +$FORTRAN"> +$FORTRANCOM"> +$FORTRANCOMSTR"> +$FORTRANFILESUFFIXES"> +$FORTRANFLAGS"> +$_FORTRANINCFLAGS"> +$FORTRANMODDIR"> +$FORTRANMODDIRPREFIX"> +$FORTRANMODDIRSUFFIX"> +$_FORTRANMODFLAG"> +$FORTRANMODPREFIX"> +$FORTRANMODSUFFIX"> +$FORTRANPATH"> +$FORTRANPPCOM"> +$FORTRANPPCOMSTR"> +$FORTRANPPFILESUFFIXES"> +$FORTRANSUFFIXES"> +$FRAMEWORKPATH"> +$_FRAMEWORKPATH"> +$FRAMEWORKPATHPREFIX"> +$FRAMEWORKPREFIX"> +$_FRAMEWORKS"> +$FRAMEWORKS"> +$FRAMEWORKSFLAGS"> +$GS"> +$GSCOM"> +$GSCOMSTR"> +$GSFLAGS"> +$HOST_ARCH"> +$HOST_OS"> +$IDLSUFFIXES"> +$IMPLICIT_COMMAND_DEPENDENCIES"> +$INCPREFIX"> +$INCSUFFIX"> +$INSTALL"> +$INSTALLSTR"> +$INTEL_C_COMPILER_VERSION"> +$JAR"> +$JARCHDIR"> +$JARCOM"> +$JARCOMSTR"> +$JARFLAGS"> +$JARSUFFIX"> +$JAVABOOTCLASSPATH"> +$JAVAC"> +$JAVACCOM"> +$JAVACCOMSTR"> +$JAVACFLAGS"> +$JAVACLASSDIR"> +$JAVACLASSPATH"> +$JAVACLASSSUFFIX"> +$JAVAH"> +$JAVAHCOM"> +$JAVAHCOMSTR"> +$JAVAHFLAGS"> +$JAVASOURCEPATH"> +$JAVASUFFIX"> +$JAVAVERSION"> +$LATEX"> +$LATEXCOM"> +$LATEXCOMSTR"> +$LATEXFLAGS"> +$LATEXRETRIES"> +$LATEXSUFFIXES"> +$LDMODULE"> +$LDMODULECOM"> +$LDMODULECOMSTR"> +$LDMODULEFLAGS"> +$LDMODULEPREFIX"> +$LDMODULESUFFIX"> +$LEX"> +$LEXCOM"> +$LEXCOMSTR"> +$LEXFLAGS"> +$_LIBDIRFLAGS"> +$LIBDIRPREFIX"> +$LIBDIRSUFFIX"> +$LIBEMITTER"> +$_LIBFLAGS"> +$LIBLINKPREFIX"> +$LIBLINKSUFFIX"> +$LIBPATH"> +$LIBPREFIX"> +$LIBPREFIXES"> +$LIBS"> +$LIBSUFFIX"> +$LIBSUFFIXES"> +$LICENSE"> +$LINESEPARATOR"> +$LINGUAS_FILE"> +$LINK"> +$LINKCOM"> +$LINKCOMSTR"> +$LINKFLAGS"> +$M4"> +$M4COM"> +$M4COMSTR"> +$M4FLAGS"> +$MAKEINDEX"> +$MAKEINDEXCOM"> +$MAKEINDEXCOMSTR"> +$MAKEINDEXFLAGS"> +$MAXLINELENGTH"> +$MIDL"> +$MIDLCOM"> +$MIDLCOMSTR"> +$MIDLFLAGS"> +$MOSUFFIX"> +$MSGFMT"> +$MSGFMTCOM"> +$MSGFMTCOMSTR"> +$MSGFMTFLAGS"> +$MSGINIT"> +$MSGINITCOM"> +$MSGINITCOMSTR"> +$MSGINITFLAGS"> +$_MSGINITLOCALE"> +$MSGMERGE"> +$MSGMERGECOM"> +$MSGMERGECOMSTR"> +$MSGMERGEFLAGS"> +$MSSDK_DIR"> +$MSSDK_VERSION"> +$MSVC_BATCH"> +$MSVC_USE_SCRIPT"> +$MSVC_VERSION"> +$MSVS"> +$MSVS_ARCH"> +$MSVS_PROJECT_GUID"> +$MSVS_SCC_AUX_PATH"> +$MSVS_SCC_CONNECTION_ROOT"> +$MSVS_SCC_PROJECT_NAME"> +$MSVS_SCC_PROVIDER"> +$MSVS_VERSION"> +$MSVSBUILDCOM"> +$MSVSCLEANCOM"> +$MSVSENCODING"> +$MSVSPROJECTCOM"> +$MSVSPROJECTSUFFIX"> +$MSVSREBUILDCOM"> +$MSVSSCONS"> +$MSVSSCONSCOM"> +$MSVSSCONSCRIPT"> +$MSVSSCONSFLAGS"> +$MSVSSOLUTIONCOM"> +$MSVSSOLUTIONSUFFIX"> +$MT"> +$MTEXECOM"> +$MTFLAGS"> +$MTSHLIBCOM"> +$MWCW_VERSION"> +$MWCW_VERSIONS"> +$NAME"> +$no_import_lib"> +$OBJPREFIX"> +$OBJSUFFIX"> +$P4"> +$P4COM"> +$P4COMSTR"> +$P4FLAGS"> +$PACKAGEROOT"> +$PACKAGETYPE"> +$PACKAGEVERSION"> +$PCH"> +$PCHCOM"> +$PCHCOMSTR"> +$PCHPDBFLAGS"> +$PCHSTOP"> +$PDB"> +$PDFCOM"> +$PDFLATEX"> +$PDFLATEXCOM"> +$PDFLATEXCOMSTR"> +$PDFLATEXFLAGS"> +$PDFPREFIX"> +$PDFSUFFIX"> +$PDFTEX"> +$PDFTEXCOM"> +$PDFTEXCOMSTR"> +$PDFTEXFLAGS"> +$PKGCHK"> +$PKGINFO"> +$PLATFORM"> +$POAUTOINIT"> +$POCREATE_ALIAS"> +$POSUFFIX"> +$POTDOMAIN"> +$POTSUFFIX"> +$POTUPDATE_ALIAS"> +$POUPDATE_ALIAS"> +$PRINT_CMD_LINE_FUNC"> +$PROGEMITTER"> +$PROGPREFIX"> +$PROGSUFFIX"> +$PSCOM"> +$PSCOMSTR"> +$PSPREFIX"> +$PSSUFFIX"> +$QT_AUTOSCAN"> +$QT_BINPATH"> +$QT_CPPPATH"> +$QT_DEBUG"> +$QT_LIB"> +$QT_LIBPATH"> +$QT_MOC"> +$QT_MOCCXXPREFIX"> +$QT_MOCCXXSUFFIX"> +$QT_MOCFROMCXXCOM"> +$QT_MOCFROMCXXCOMSTR"> +$QT_MOCFROMCXXFLAGS"> +$QT_MOCFROMHCOM"> +$QT_MOCFROMHCOMSTR"> +$QT_MOCFROMHFLAGS"> +$QT_MOCHPREFIX"> +$QT_MOCHSUFFIX"> +$QT_UIC"> +$QT_UICCOM"> +$QT_UICCOMSTR"> +$QT_UICDECLFLAGS"> +$QT_UICDECLPREFIX"> +$QT_UICDECLSUFFIX"> +$QT_UICIMPLFLAGS"> +$QT_UICIMPLPREFIX"> +$QT_UICIMPLSUFFIX"> +$QT_UISUFFIX"> +$QTDIR"> +$RANLIB"> +$RANLIBCOM"> +$RANLIBCOMSTR"> +$RANLIBFLAGS"> +$RC"> +$RCCOM"> +$RCCOMSTR"> +$RCFLAGS"> +$RCINCFLAGS"> +$RCINCPREFIX"> +$RCINCSUFFIX"> +$RCS"> +$RCS_CO"> +$RCS_COCOM"> +$RCS_COCOMSTR"> +$RCS_COFLAGS"> +$RDirs"> +$REGSVR"> +$REGSVRCOM"> +$REGSVRCOMSTR"> +$REGSVRFLAGS"> +$RMIC"> +$RMICCOM"> +$RMICCOMSTR"> +$RMICFLAGS"> +$_RPATH"> +$RPATH"> +$RPATHPREFIX"> +$RPATHSUFFIX"> +$RPCGEN"> +$RPCGENCLIENTFLAGS"> +$RPCGENFLAGS"> +$RPCGENHEADERFLAGS"> +$RPCGENSERVICEFLAGS"> +$RPCGENXDRFLAGS"> +$SCANNERS"> +$SCCS"> +$SCCSCOM"> +$SCCSCOMSTR"> +$SCCSFLAGS"> +$SCCSGETFLAGS"> +$SCONS_HOME"> +$SHCC"> +$SHCCCOM"> +$SHCCCOMSTR"> +$SHCCFLAGS"> +$SHCFLAGS"> +$SHCXX"> +$SHCXXCOM"> +$SHCXXCOMSTR"> +$SHCXXFLAGS"> +$SHELL"> +$SHF03"> +$SHF03COM"> +$SHF03COMSTR"> +$SHF03FLAGS"> +$SHF03PPCOM"> +$SHF03PPCOMSTR"> +$SHF77"> +$SHF77COM"> +$SHF77COMSTR"> +$SHF77FLAGS"> +$SHF77PPCOM"> +$SHF77PPCOMSTR"> +$SHF90"> +$SHF90COM"> +$SHF90COMSTR"> +$SHF90FLAGS"> +$SHF90PPCOM"> +$SHF90PPCOMSTR"> +$SHF95"> +$SHF95COM"> +$SHF95COMSTR"> +$SHF95FLAGS"> +$SHF95PPCOM"> +$SHF95PPCOMSTR"> +$SHFORTRAN"> +$SHFORTRANCOM"> +$SHFORTRANCOMSTR"> +$SHFORTRANFLAGS"> +$SHFORTRANPPCOM"> +$SHFORTRANPPCOMSTR"> +$SHLIBEMITTER"> +$SHLIBPREFIX"> +$SHLIBSUFFIX"> +$SHLIBVERSION"> +$SHLINK"> +$SHLINKCOM"> +$SHLINKCOMSTR"> +$SHLINKFLAGS"> +$SHOBJPREFIX"> +$SHOBJSUFFIX"> +$SOURCE"> +$SOURCE_URL"> +$SOURCES"> +$SPAWN"> +$SUBST_DICT"> +$SUBSTFILEPREFIX"> +$SUBSTFILESUFFIX"> +$SUMMARY"> +$SWIG"> +$SWIGCFILESUFFIX"> +$SWIGCOM"> +$SWIGCOMSTR"> +$SWIGCXXFILESUFFIX"> +$SWIGDIRECTORSUFFIX"> +$SWIGFLAGS"> +$_SWIGINCFLAGS"> +$SWIGINCPREFIX"> +$SWIGINCSUFFIX"> +$SWIGOUTDIR"> +$SWIGPATH"> +$SWIGVERSION"> +$TAR"> +$TARCOM"> +$TARCOMSTR"> +$TARFLAGS"> +$TARGET"> +$TARGET_ARCH"> +$TARGET_OS"> +$TARGETS"> +$TARSUFFIX"> +$TEMPFILEPREFIX"> +$TEX"> +$TEXCOM"> +$TEXCOMSTR"> +$TEXFLAGS"> +$TEXINPUTS"> +$TEXTFILEPREFIX"> +$TEXTFILESUFFIX"> +$TOOLS"> +$UNCHANGED_SOURCES"> +$UNCHANGED_TARGETS"> +$VENDOR"> +$VERSION"> +$WIN32_INSERT_DEF"> +$WIN32DEFPREFIX"> +$WIN32DEFSUFFIX"> +$WIN32EXPPREFIX"> +$WIN32EXPSUFFIX"> +$WINDOWS_EMBED_MANIFEST"> +$WINDOWS_INSERT_DEF"> +$WINDOWS_INSERT_MANIFEST"> +$WINDOWSDEFPREFIX"> +$WINDOWSDEFSUFFIX"> +$WINDOWSEXPPREFIX"> +$WINDOWSEXPSUFFIX"> +$WINDOWSPROGMANIFESTPREFIX"> +$WINDOWSPROGMANIFESTSUFFIX"> +$WINDOWSSHLIBMANIFESTPREFIX"> +$WINDOWSSHLIBMANIFESTSUFFIX"> +$X_IPK_DEPENDS"> +$X_IPK_DESCRIPTION"> +$X_IPK_MAINTAINER"> +$X_IPK_PRIORITY"> +$X_IPK_SECTION"> +$X_MSI_LANGUAGE"> +$X_MSI_LICENSE_TEXT"> +$X_MSI_UPGRADE_CODE"> +$X_RPM_AUTOREQPROV"> +$X_RPM_BUILD"> +$X_RPM_BUILDREQUIRES"> +$X_RPM_BUILDROOT"> +$X_RPM_CLEAN"> +$X_RPM_CONFLICTS"> +$X_RPM_DEFATTR"> +$X_RPM_DISTRIBUTION"> +$X_RPM_EPOCH"> +$X_RPM_EXCLUDEARCH"> +$X_RPM_EXLUSIVEARCH"> +$X_RPM_GROUP"> +$X_RPM_GROUP_lang"> +$X_RPM_ICON"> +$X_RPM_INSTALL"> +$X_RPM_PACKAGER"> +$X_RPM_POSTINSTALL"> +$X_RPM_POSTUNINSTALL"> +$X_RPM_PREFIX"> +$X_RPM_PREINSTALL"> +$X_RPM_PREP"> +$X_RPM_PREUNINSTALL"> +$X_RPM_PROVIDES"> +$X_RPM_REQUIRES"> +$X_RPM_SERIAL"> +$X_RPM_URL"> +$XGETTEXT"> +$XGETTEXTCOM"> +$XGETTEXTCOMSTR"> +$_XGETTEXTDOMAIN"> +$XGETTEXTFLAGS"> +$XGETTEXTFROM"> +$_XGETTEXTFROMFLAGS"> +$XGETTEXTFROMPREFIX"> +$XGETTEXTFROMSUFFIX"> +$XGETTEXTPATH"> +$_XGETTEXTPATHFLAGS"> +$XGETTEXTPATHPREFIX"> +$XGETTEXTPATHSUFFIX"> +$YACC"> +$YACCCOM"> +$YACCCOMSTR"> +$YACCFLAGS"> +$YACCHFILESUFFIX"> +$YACCHXXFILESUFFIX"> +$YACCVCGFILESUFFIX"> +$ZIP"> +$ZIPCOM"> +$ZIPCOMPRESSION"> +$ZIPCOMSTR"> +$ZIPFLAGS"> +$ZIPROOT"> +$ZIPSUFFIX"> + + + + + +$AR"> +$ARCHITECTURE"> +$ARCOM"> +$ARCOMSTR"> +$ARFLAGS"> +$AS"> +$ASCOM"> +$ASCOMSTR"> +$ASFLAGS"> +$ASPPCOM"> +$ASPPCOMSTR"> +$ASPPFLAGS"> +$BIBTEX"> +$BIBTEXCOM"> +$BIBTEXCOMSTR"> +$BIBTEXFLAGS"> +$BITKEEPER"> +$BITKEEPERCOM"> +$BITKEEPERCOMSTR"> +$BITKEEPERGET"> +$BITKEEPERGETFLAGS"> +$BUILDERS"> +$CC"> +$CCCOM"> +$CCCOMSTR"> +$CCFLAGS"> +$CCPCHFLAGS"> +$CCPDBFLAGS"> +$CCVERSION"> +$CFILESUFFIX"> +$CFLAGS"> +$CHANGE_SPECFILE"> +$CHANGED_SOURCES"> +$CHANGED_TARGETS"> +$CHANGELOG"> +$_concat"> +$CONFIGUREDIR"> +$CONFIGURELOG"> +$_CPPDEFFLAGS"> +$CPPDEFINES"> +$CPPDEFPREFIX"> +$CPPDEFSUFFIX"> +$CPPFLAGS"> +$_CPPINCFLAGS"> +$CPPPATH"> +$CPPSUFFIXES"> +$CVS"> +$CVSCOFLAGS"> +$CVSCOM"> +$CVSCOMSTR"> +$CVSFLAGS"> +$CVSREPOSITORY"> +$CXX"> +$CXXCOM"> +$CXXCOMSTR"> +$CXXFILESUFFIX"> +$CXXFLAGS"> +$CXXVERSION"> +$DESCRIPTION"> +$DESCRIPTION_lang"> +$Dir"> +$Dirs"> +$DOCBOOK_DEFAULT_XSL_EPUB"> +$DOCBOOK_DEFAULT_XSL_HTML"> +$DOCBOOK_DEFAULT_XSL_HTMLCHUNKED"> +$DOCBOOK_DEFAULT_XSL_HTMLHELP"> +$DOCBOOK_DEFAULT_XSL_MAN"> +$DOCBOOK_DEFAULT_XSL_PDF"> +$DOCBOOK_DEFAULT_XSL_SLIDESHTML"> +$DOCBOOK_DEFAULT_XSL_SLIDESPDF"> +$DOCBOOK_FOP"> +$DOCBOOK_FOPCOM"> +$DOCBOOK_FOPCOMSTR"> +$DOCBOOK_FOPFLAGS"> +$DOCBOOK_XMLLINT"> +$DOCBOOK_XMLLINTCOM"> +$DOCBOOK_XMLLINTCOMSTR"> +$DOCBOOK_XMLLINTFLAGS"> +$DOCBOOK_XSLTPROC"> +$DOCBOOK_XSLTPROCCOM"> +$DOCBOOK_XSLTPROCCOMSTR"> +$DOCBOOK_XSLTPROCFLAGS"> +$DOCBOOK_XSLTPROCPARAMS"> +$DSUFFIXES"> +$DVIPDF"> +$DVIPDFCOM"> +$DVIPDFCOMSTR"> +$DVIPDFFLAGS"> +$DVIPS"> +$DVIPSFLAGS"> +$ENV"> +$ESCAPE"> +$F03"> +$F03COM"> +$F03COMSTR"> +$F03FILESUFFIXES"> +$F03FLAGS"> +$_F03INCFLAGS"> +$F03PATH"> +$F03PPCOM"> +$F03PPCOMSTR"> +$F03PPFILESUFFIXES"> +$F77"> +$F77COM"> +$F77COMSTR"> +$F77FILESUFFIXES"> +$F77FLAGS"> +$_F77INCFLAGS"> +$F77PATH"> +$F77PPCOM"> +$F77PPCOMSTR"> +$F77PPFILESUFFIXES"> +$F90"> +$F90COM"> +$F90COMSTR"> +$F90FILESUFFIXES"> +$F90FLAGS"> +$_F90INCFLAGS"> +$F90PATH"> +$F90PPCOM"> +$F90PPCOMSTR"> +$F90PPFILESUFFIXES"> +$F95"> +$F95COM"> +$F95COMSTR"> +$F95FILESUFFIXES"> +$F95FLAGS"> +$_F95INCFLAGS"> +$F95PATH"> +$F95PPCOM"> +$F95PPCOMSTR"> +$F95PPFILESUFFIXES"> +$File"> +$FORTRAN"> +$FORTRANCOM"> +$FORTRANCOMSTR"> +$FORTRANFILESUFFIXES"> +$FORTRANFLAGS"> +$_FORTRANINCFLAGS"> +$FORTRANMODDIR"> +$FORTRANMODDIRPREFIX"> +$FORTRANMODDIRSUFFIX"> +$_FORTRANMODFLAG"> +$FORTRANMODPREFIX"> +$FORTRANMODSUFFIX"> +$FORTRANPATH"> +$FORTRANPPCOM"> +$FORTRANPPCOMSTR"> +$FORTRANPPFILESUFFIXES"> +$FORTRANSUFFIXES"> +$FRAMEWORKPATH"> +$_FRAMEWORKPATH"> +$FRAMEWORKPATHPREFIX"> +$FRAMEWORKPREFIX"> +$_FRAMEWORKS"> +$FRAMEWORKS"> +$FRAMEWORKSFLAGS"> +$GS"> +$GSCOM"> +$GSCOMSTR"> +$GSFLAGS"> +$HOST_ARCH"> +$HOST_OS"> +$IDLSUFFIXES"> +$IMPLICIT_COMMAND_DEPENDENCIES"> +$INCPREFIX"> +$INCSUFFIX"> +$INSTALL"> +$INSTALLSTR"> +$INTEL_C_COMPILER_VERSION"> +$JAR"> +$JARCHDIR"> +$JARCOM"> +$JARCOMSTR"> +$JARFLAGS"> +$JARSUFFIX"> +$JAVABOOTCLASSPATH"> +$JAVAC"> +$JAVACCOM"> +$JAVACCOMSTR"> +$JAVACFLAGS"> +$JAVACLASSDIR"> +$JAVACLASSPATH"> +$JAVACLASSSUFFIX"> +$JAVAH"> +$JAVAHCOM"> +$JAVAHCOMSTR"> +$JAVAHFLAGS"> +$JAVASOURCEPATH"> +$JAVASUFFIX"> +$JAVAVERSION"> +$LATEX"> +$LATEXCOM"> +$LATEXCOMSTR"> +$LATEXFLAGS"> +$LATEXRETRIES"> +$LATEXSUFFIXES"> +$LDMODULE"> +$LDMODULECOM"> +$LDMODULECOMSTR"> +$LDMODULEFLAGS"> +$LDMODULEPREFIX"> +$LDMODULESUFFIX"> +$LEX"> +$LEXCOM"> +$LEXCOMSTR"> +$LEXFLAGS"> +$_LIBDIRFLAGS"> +$LIBDIRPREFIX"> +$LIBDIRSUFFIX"> +$LIBEMITTER"> +$_LIBFLAGS"> +$LIBLINKPREFIX"> +$LIBLINKSUFFIX"> +$LIBPATH"> +$LIBPREFIX"> +$LIBPREFIXES"> +$LIBS"> +$LIBSUFFIX"> +$LIBSUFFIXES"> +$LICENSE"> +$LINESEPARATOR"> +$LINGUAS_FILE"> +$LINK"> +$LINKCOM"> +$LINKCOMSTR"> +$LINKFLAGS"> +$M4"> +$M4COM"> +$M4COMSTR"> +$M4FLAGS"> +$MAKEINDEX"> +$MAKEINDEXCOM"> +$MAKEINDEXCOMSTR"> +$MAKEINDEXFLAGS"> +$MAXLINELENGTH"> +$MIDL"> +$MIDLCOM"> +$MIDLCOMSTR"> +$MIDLFLAGS"> +$MOSUFFIX"> +$MSGFMT"> +$MSGFMTCOM"> +$MSGFMTCOMSTR"> +$MSGFMTFLAGS"> +$MSGINIT"> +$MSGINITCOM"> +$MSGINITCOMSTR"> +$MSGINITFLAGS"> +$_MSGINITLOCALE"> +$MSGMERGE"> +$MSGMERGECOM"> +$MSGMERGECOMSTR"> +$MSGMERGEFLAGS"> +$MSSDK_DIR"> +$MSSDK_VERSION"> +$MSVC_BATCH"> +$MSVC_USE_SCRIPT"> +$MSVC_VERSION"> +$MSVS"> +$MSVS_ARCH"> +$MSVS_PROJECT_GUID"> +$MSVS_SCC_AUX_PATH"> +$MSVS_SCC_CONNECTION_ROOT"> +$MSVS_SCC_PROJECT_NAME"> +$MSVS_SCC_PROVIDER"> +$MSVS_VERSION"> +$MSVSBUILDCOM"> +$MSVSCLEANCOM"> +$MSVSENCODING"> +$MSVSPROJECTCOM"> +$MSVSPROJECTSUFFIX"> +$MSVSREBUILDCOM"> +$MSVSSCONS"> +$MSVSSCONSCOM"> +$MSVSSCONSCRIPT"> +$MSVSSCONSFLAGS"> +$MSVSSOLUTIONCOM"> +$MSVSSOLUTIONSUFFIX"> +$MT"> +$MTEXECOM"> +$MTFLAGS"> +$MTSHLIBCOM"> +$MWCW_VERSION"> +$MWCW_VERSIONS"> +$NAME"> +$no_import_lib"> +$OBJPREFIX"> +$OBJSUFFIX"> +$P4"> +$P4COM"> +$P4COMSTR"> +$P4FLAGS"> +$PACKAGEROOT"> +$PACKAGETYPE"> +$PACKAGEVERSION"> +$PCH"> +$PCHCOM"> +$PCHCOMSTR"> +$PCHPDBFLAGS"> +$PCHSTOP"> +$PDB"> +$PDFCOM"> +$PDFLATEX"> +$PDFLATEXCOM"> +$PDFLATEXCOMSTR"> +$PDFLATEXFLAGS"> +$PDFPREFIX"> +$PDFSUFFIX"> +$PDFTEX"> +$PDFTEXCOM"> +$PDFTEXCOMSTR"> +$PDFTEXFLAGS"> +$PKGCHK"> +$PKGINFO"> +$PLATFORM"> +$POAUTOINIT"> +$POCREATE_ALIAS"> +$POSUFFIX"> +$POTDOMAIN"> +$POTSUFFIX"> +$POTUPDATE_ALIAS"> +$POUPDATE_ALIAS"> +$PRINT_CMD_LINE_FUNC"> +$PROGEMITTER"> +$PROGPREFIX"> +$PROGSUFFIX"> +$PSCOM"> +$PSCOMSTR"> +$PSPREFIX"> +$PSSUFFIX"> +$QT_AUTOSCAN"> +$QT_BINPATH"> +$QT_CPPPATH"> +$QT_DEBUG"> +$QT_LIB"> +$QT_LIBPATH"> +$QT_MOC"> +$QT_MOCCXXPREFIX"> +$QT_MOCCXXSUFFIX"> +$QT_MOCFROMCXXCOM"> +$QT_MOCFROMCXXCOMSTR"> +$QT_MOCFROMCXXFLAGS"> +$QT_MOCFROMHCOM"> +$QT_MOCFROMHCOMSTR"> +$QT_MOCFROMHFLAGS"> +$QT_MOCHPREFIX"> +$QT_MOCHSUFFIX"> +$QT_UIC"> +$QT_UICCOM"> +$QT_UICCOMSTR"> +$QT_UICDECLFLAGS"> +$QT_UICDECLPREFIX"> +$QT_UICDECLSUFFIX"> +$QT_UICIMPLFLAGS"> +$QT_UICIMPLPREFIX"> +$QT_UICIMPLSUFFIX"> +$QT_UISUFFIX"> +$QTDIR"> +$RANLIB"> +$RANLIBCOM"> +$RANLIBCOMSTR"> +$RANLIBFLAGS"> +$RC"> +$RCCOM"> +$RCCOMSTR"> +$RCFLAGS"> +$RCINCFLAGS"> +$RCINCPREFIX"> +$RCINCSUFFIX"> +$RCS"> +$RCS_CO"> +$RCS_COCOM"> +$RCS_COCOMSTR"> +$RCS_COFLAGS"> +$RDirs"> +$REGSVR"> +$REGSVRCOM"> +$REGSVRCOMSTR"> +$REGSVRFLAGS"> +$RMIC"> +$RMICCOM"> +$RMICCOMSTR"> +$RMICFLAGS"> +$_RPATH"> +$RPATH"> +$RPATHPREFIX"> +$RPATHSUFFIX"> +$RPCGEN"> +$RPCGENCLIENTFLAGS"> +$RPCGENFLAGS"> +$RPCGENHEADERFLAGS"> +$RPCGENSERVICEFLAGS"> +$RPCGENXDRFLAGS"> +$SCANNERS"> +$SCCS"> +$SCCSCOM"> +$SCCSCOMSTR"> +$SCCSFLAGS"> +$SCCSGETFLAGS"> +$SCONS_HOME"> +$SHCC"> +$SHCCCOM"> +$SHCCCOMSTR"> +$SHCCFLAGS"> +$SHCFLAGS"> +$SHCXX"> +$SHCXXCOM"> +$SHCXXCOMSTR"> +$SHCXXFLAGS"> +$SHELL"> +$SHF03"> +$SHF03COM"> +$SHF03COMSTR"> +$SHF03FLAGS"> +$SHF03PPCOM"> +$SHF03PPCOMSTR"> +$SHF77"> +$SHF77COM"> +$SHF77COMSTR"> +$SHF77FLAGS"> +$SHF77PPCOM"> +$SHF77PPCOMSTR"> +$SHF90"> +$SHF90COM"> +$SHF90COMSTR"> +$SHF90FLAGS"> +$SHF90PPCOM"> +$SHF90PPCOMSTR"> +$SHF95"> +$SHF95COM"> +$SHF95COMSTR"> +$SHF95FLAGS"> +$SHF95PPCOM"> +$SHF95PPCOMSTR"> +$SHFORTRAN"> +$SHFORTRANCOM"> +$SHFORTRANCOMSTR"> +$SHFORTRANFLAGS"> +$SHFORTRANPPCOM"> +$SHFORTRANPPCOMSTR"> +$SHLIBEMITTER"> +$SHLIBPREFIX"> +$SHLIBSUFFIX"> +$SHLIBVERSION"> +$SHLINK"> +$SHLINKCOM"> +$SHLINKCOMSTR"> +$SHLINKFLAGS"> +$SHOBJPREFIX"> +$SHOBJSUFFIX"> +$SOURCE"> +$SOURCE_URL"> +$SOURCES"> +$SPAWN"> +$SUBST_DICT"> +$SUBSTFILEPREFIX"> +$SUBSTFILESUFFIX"> +$SUMMARY"> +$SWIG"> +$SWIGCFILESUFFIX"> +$SWIGCOM"> +$SWIGCOMSTR"> +$SWIGCXXFILESUFFIX"> +$SWIGDIRECTORSUFFIX"> +$SWIGFLAGS"> +$_SWIGINCFLAGS"> +$SWIGINCPREFIX"> +$SWIGINCSUFFIX"> +$SWIGOUTDIR"> +$SWIGPATH"> +$SWIGVERSION"> +$TAR"> +$TARCOM"> +$TARCOMSTR"> +$TARFLAGS"> +$TARGET"> +$TARGET_ARCH"> +$TARGET_OS"> +$TARGETS"> +$TARSUFFIX"> +$TEMPFILEPREFIX"> +$TEX"> +$TEXCOM"> +$TEXCOMSTR"> +$TEXFLAGS"> +$TEXINPUTS"> +$TEXTFILEPREFIX"> +$TEXTFILESUFFIX"> +$TOOLS"> +$UNCHANGED_SOURCES"> +$UNCHANGED_TARGETS"> +$VENDOR"> +$VERSION"> +$WIN32_INSERT_DEF"> +$WIN32DEFPREFIX"> +$WIN32DEFSUFFIX"> +$WIN32EXPPREFIX"> +$WIN32EXPSUFFIX"> +$WINDOWS_EMBED_MANIFEST"> +$WINDOWS_INSERT_DEF"> +$WINDOWS_INSERT_MANIFEST"> +$WINDOWSDEFPREFIX"> +$WINDOWSDEFSUFFIX"> +$WINDOWSEXPPREFIX"> +$WINDOWSEXPSUFFIX"> +$WINDOWSPROGMANIFESTPREFIX"> +$WINDOWSPROGMANIFESTSUFFIX"> +$WINDOWSSHLIBMANIFESTPREFIX"> +$WINDOWSSHLIBMANIFESTSUFFIX"> +$X_IPK_DEPENDS"> +$X_IPK_DESCRIPTION"> +$X_IPK_MAINTAINER"> +$X_IPK_PRIORITY"> +$X_IPK_SECTION"> +$X_MSI_LANGUAGE"> +$X_MSI_LICENSE_TEXT"> +$X_MSI_UPGRADE_CODE"> +$X_RPM_AUTOREQPROV"> +$X_RPM_BUILD"> +$X_RPM_BUILDREQUIRES"> +$X_RPM_BUILDROOT"> +$X_RPM_CLEAN"> +$X_RPM_CONFLICTS"> +$X_RPM_DEFATTR"> +$X_RPM_DISTRIBUTION"> +$X_RPM_EPOCH"> +$X_RPM_EXCLUDEARCH"> +$X_RPM_EXLUSIVEARCH"> +$X_RPM_GROUP"> +$X_RPM_GROUP_lang"> +$X_RPM_ICON"> +$X_RPM_INSTALL"> +$X_RPM_PACKAGER"> +$X_RPM_POSTINSTALL"> +$X_RPM_POSTUNINSTALL"> +$X_RPM_PREFIX"> +$X_RPM_PREINSTALL"> +$X_RPM_PREP"> +$X_RPM_PREUNINSTALL"> +$X_RPM_PROVIDES"> +$X_RPM_REQUIRES"> +$X_RPM_SERIAL"> +$X_RPM_URL"> +$XGETTEXT"> +$XGETTEXTCOM"> +$XGETTEXTCOMSTR"> +$_XGETTEXTDOMAIN"> +$XGETTEXTFLAGS"> +$XGETTEXTFROM"> +$_XGETTEXTFROMFLAGS"> +$XGETTEXTFROMPREFIX"> +$XGETTEXTFROMSUFFIX"> +$XGETTEXTPATH"> +$_XGETTEXTPATHFLAGS"> +$XGETTEXTPATHPREFIX"> +$XGETTEXTPATHSUFFIX"> +$YACC"> +$YACCCOM"> +$YACCCOMSTR"> +$YACCFLAGS"> +$YACCHFILESUFFIX"> +$YACCHXXFILESUFFIX"> +$YACCVCGFILESUFFIX"> +$ZIP"> +$ZIPCOM"> +$ZIPCOMPRESSION"> +$ZIPCOMSTR"> +$ZIPFLAGS"> +$ZIPROOT"> +$ZIPSUFFIX"> + + -- cgit v1.2.3