CHANGES IN WAF 2.1 ------------------ + Added wafcache - Remove waflib.Runner.PriorityTasks.appendleft - Remove waflib.Task.TaskBase - Remove the upper class of waflib.Task.Task (metaclass syntax) - Remove Winphone/WinCE detection in msvc.py NEW IN WAF 2.0.19 ----------------- * Fix negative values for -j #2256 * Fix the Swig example compatibility with Python3 #2259 * Add extras/wafcache * Tune the application name on --help #2254 NEW IN WAF 2.0.18 ----------------- * Fix a deadlock with cython and subst tasks #2244 * Fix rpath processing so that it no longer breaks dependency chains * Fix fast_partial.py failures on configuration tests * Fix duplicate -fno-strict-aliasing flags in Python compilation flags detection * Fix annoying PIE errors in demos/asm/ * Improve configuration tests cache accuracy #2251 * Improve extras/fast_partial.py compatibility * Improve extras/doxygen.py outdir parameter settings #2255 * Add a dependency scanner for assembly files (Gas/Yasm) * Add executable arguments for configuration tests / execute=True * Add a QtTest example to demos/qt5/ #2241 * Add a cross-compilation option to extras/objcopy.py #2247 NEW IN WAF 2.0.17 ----------------- * Improve build performance on FreeBSD and Python3 #2241 * Add Python 3.8 flag detection for building embedded interpreters #2239 * Prevent Qt5 uninstallation errors when c++ files are generated * Improve installation/uninstallation colors NEW IN WAF 2.0.16 ----------------- * Fix task semaphore errors on stateful tasks #2232 * Fix encoding errors with UTF-8 paths on Python 2 #2230 * Fix encoding errors in waf_unit_test #2220 * Improve dependency between javac task and use-d generated jars nodes * Install pdb files with /debug:* flags #2224 * Make javadoc detection optional #2225 * Improve md5_tstamp documentation #2221 * Add extras/color_msvc to colorizes MSVC outputs #2221 * Fix symbol regex on mac-o binaries in extras/syms #2222 * Maintain order of lines in doxyfile in extras/doxygen #2223 * Improve extras/msvcdeps path handling * Add extras/clang_cross for cross-compilation using clang NEW IN WAF 2.0.15 ----------------- * Fix Python path detection under Git-Bash #2217 * Provide an option to disable args files #2216 * Improve command line length calculation for args files #2214 * Add libs/stubs to Cuda library path #2213 * Suppress ant_glob java warnings #2212 * Support multiple 'default_cmd' #2211 * Warn when buildcopy is used without any files to copy #2210 * Protobuf examples enhancements #2208 #2209 * Fix all DeprecationWarning: invalid escape sequence #2207 NEW IN WAF 2.0.14 ----------------- * Support Fortran 2008 submodules #2205 * Possible solution for Msys/Python 3.6 path issues #2217 * Support NEC SX-Aurora TSUBASA system's Fortran compiler extras/fc_nfort.py #2206 * Fix ignored configuration flags in gccdeps extras/gccdeps.py #2203 * Fix included protoc search on nested wscripts extras/protoc.py #2202 * Support extra taskgen and out of project include directories extras/protoc.py #2204 NEW IN WAF 2.0.13 ----------------- * Fix "broken revdeps" extra error message on certain build failures * Avoid duplicate flags in Python configuration tests * Find more Swig dependencies #2206 * Avoid spawning threads with -j1 on AIX systems NEW IN WAF 2.0.12 ----------------- * Fix broken inheritance task trees #2194 NEW IN WAF 2.0.11 ----------------- * Do not raise an exception on check_cfg/mandatory=False/-vv #2193 * Post past task generators in lazy sub-folder builds #2191 * Disable warnings on versioned library installation * Fix cpplint concurrent execution problems NEW IN WAF 2.0.10 ----------------- * Add a task semaphore system * Fix --help when no wscript is supplied #2184 * Fix Fortran processing with generated Fortran files NEW IN WAF 2.0.9 ---------------- * Add dependencies on scriptlet outputs * Made options optional for cython waftool * Improve doxygen error handling NEW IN WAF 2.0.8 ---------------- * Improve Windows console encoding outputs on Python 3.6 and Japanese code page #2163 * Improve msvc detection on Python 3.6 and Japanese code page #2155 * Improve moc/rcc flag parsing with msvc #2169 * Improve Eclipse project generation #2166 #2165 #2164 #2149 #2145 * Improve Boost project detection on dpkg-based systems #2146 NEW IN WAF 2.0.7 ---------------- * Apply priorities to dynamically-generated tasks #2137 * Fix upcoming Python 3.7 incompatibilities #2126 * Fix Python3 support in extras/xcode6.py #2121 * Improve priority support in extras/swig.py #2137 * Improve support extras/protoc.py #2135 * Improve argument handling in extras/clang_compilation_database.py #2127 * Add glib DBus bindings in extras/gdbus.py #2134 * Avoid name collisions for precompiled headers and libraries with similar names in extras/pch.py #2122 NEW IN WAF 2.0.6 ---------------- * Add Task.deep_inputs to enable further dependencies on input file tasks * Set unit tests to depend on input file tasks instead of timestamps NEW IN WAF 2.0.5 ---------------- * Force unit tests to depend on the executable creation time besides file contents * Enhance the Eclipse project generator * Update the cuda examples NEW IN WAF 2.0.4 ---------------- * Enable more advanced warnings of ant_glob on build folders in verbose mode * Defer node.ant_glob(..., generator=True) evaluation * Enable 'waf clean' to get the list of files to remove from bld.clean_files * Define the environment variable WAF_NO_PREFORK to skip pre-forking * Fix Can't pickle local object '_createenviron..encode' exceptions (Python 3.6) * Improve the Erlang module #2095 * Add task target to parallel_debug outputs #2091 NEW IN WAF 2.0.3 ---------------- * Enable install_path=None for Python targets #2087 * Skip empty or duplicates in java user classpath #2084 * Change the unit test summary color scheme to use green and red colors * Improve the deadlock error message * Report sys.path values from Context.load_tool to improve error messages * Cache qrc uic->h conversions to enable qrc re-use across targets * Output long-running tasks outputs immediately using bld(rule=..., stdout=None) NEW IN WAF 2.0.2 ---------------- * Improve Intel Fortran compiler detection on Windows #2063 * Ensure that the task count starts at 1 in the build outputs * Add a --pdb option to start pdb on unexpected exceptions #2052 * Fix conflicting qm/qrc re-used output files for multiple targets #2065 * Add java support in protobuf (extras) #2049 * Add a java test example (extras) #2062 * Enable symbol processing for empty targets (extras) #2053 NEW IN WAF 2.0.1 ---------------- * Improve the default preprocessor behaviour for gcc/msvc * Accept task objects in Build.add_to_group for compatibility reasons * Prevent xcode generator from overwriting existing features #2038 * Fix self.includes data scope #2035 * Fix Node.ant_glob case sensitivity regression #2034 * Fix Logs.verbose options regression #2033 NEW IN WAF 2.0.0 ---------------- * Provide a new priority system to improve scalability on complex builds * Provide TaskGroup objects to improve scalability on complex builds * Force new files into the build directory by default (use Node objects to bypass) * Provide built-in support for building over UNC paths * Simplify the Task class hierarchy; TaskBase is removed * Display commands as string with "WAF_CMD_FORMAT=string waf build -v" * Have ant_glob(..., generator=True) return a Python generator * Accept nested lists and generators in bld(source=...) * Sort TaskGen methods in alphabetical order by reversing TaskGen.prec order * Remove 'ut_fun' from waf_unit_test.py * Remove Node.sig and Node.cache_sig * Remove the BuildContext.rule decorator * Remove Task.update_outputs, Task.always_run * Remove atleast-version, exact-version and max-version from conf.check_cfg * Remove c_preproc.trimquotes * Remove field_name, type_name, function_name from conf.check() tests * Remove extras/mem_reducer.py as a better solution has been merged * Remove Utils.ex_stack (use traceback.format_exc())