edebbb8e6f
Miscellaneous features * Added expected failures support to test cases and atf-run. These include, for example, expected clean exits, expected reception of fatal signals, expected timeouts and expected errors in condition checks. These statuses can be used to denote test cases that are known to fail due to a bug in the code they are testing. atf-report reports these tests separately but they do not count towards the failed test cases amount. * Added the ATF_CHECK_ERRNO and ATF_REQUIRE_ERRNO to the C library to allow easy checking of call failures that update errno. * Added the has.cleanup meta-data property to test caes that specifies whether the test case has a cleanup routine or not; its value is automatically set. This property is read by atf-run to know if it has to run the cleanup routine; skipping this run for every test case significantly speeds up the run time of test suites. * Reversed the order of the ATF_CHECK_THROW macro in the C++ binding to take the expected exception as the first argument and the statement to execute as the second argument. Changes in atf-check * Changed atf-check to support negating the status and output checks by prefixing them with not- and added support to specify multiple checkers for stdout and stderr, not only one. * Added the match output checker to atf-check to look for regular expressions in the stdout and stderr of commands. * Modified the exit checks in atf-check to support checking for the reception of signals. Code simplifications and cleanups * Removed usage messages from test programs to simplify the implementation of every binding by a significant amount. They just now refer the user to the appropriate manual page and do not attempt to wrap lines on terminal boundaries. Test programs are not supposed to be run by users directly so this minor interface regression is not important. * Removed the atf-format internal utility, which is unused after the change documented above. * Removed the atf-cleanup internal utility. It has been unused since the test case isolation was moved to atf-run in 0.8 * Splitted the Makefile.am into smaller files for easier maintenance and dropped the use of M4. Only affects users building from the repository sources. * Intermixed tests with the source files in the source tree to provide them more visibility and easier access. The tests directory is gone from the source tree and tests are now suffixed by _test, not prefixed by t_. * Simplifications to the atf-c library: removed the io, tcr and ui modules as they had become unnecessary after all simplifications introduced since the 0.8 release. * Removed the application/X-atf-tcr format introduced in 0.8 release. Tests now print a much simplified format that is easy to parse and nicer to read by end users. As a side effect, the default for test cases is now to print their results to stdout unless otherwise stated by providing the -r flag. * Removed XML distribution documents and replaced them with plain-text documents. They provided little value and introduced a lot of complexity to the build system. * Simplified the output of atf-version by not attempting to print a revision number when building form a distfile. Makes the build system easier to maintain. |
||
---|---|---|
.. | ||
apache2 | ||
bsd | ||
cddl | ||
gpl2 | ||
gpl3 | ||
ibm-public | ||
intel-fw-eula | ||
intel-fw-public | ||
intel-public | ||
lib | ||
mit/xorg | ||
zlib/pigz | ||
Makefile | ||
README |
$NetBSD: README,v 1.9 2010/05/01 19:51:33 christos Exp $ Organization of Sources: This directory hierarchy is using an organization that separates source for programs that we have obtained from external third parties (where NetBSD is not the primary maintainer) from the system source. The hierarchy is grouped by license, and then package per license, and is organized as follows: external/ Makefile Descend into the license sub-directories. <license>/ Per-license sub-directories. Makefile Descend into the package sub-directories. <package>/ Per-package sub-directories. Makefile Build the package. dist/ The third-party source for a given package. bin/ lib/ sbin/ BSD makefiles "reach over" from these into "../dist/". This arrangement allows for packages to be easily disabled or excised as necessary, either on a per-license or per-package basis. The licenses currently used are: apache2 Apache 2.0 license. http://www.opensource.org/licenses/apache2.0.php bsd BSD (or equivalent) licensed software, possibly with the "advertising clause". http://www.opensource.org/licenses/bsd-license.php cddl Common Development and Distribution License (the sun license which is based on the Mozilla Public License version 1.1). http://www.opensource.org/licenses/cddl1.php gpl2 GNU Public License, version 2 (or earlier). http://www.opensource.org/licenses/gpl-2.0.php gpl3 GNU Public License, version 3. http://www.opensource.org/licenses/gpl-3.0.html ibm-public IBM's public license: http://www.opensource.org/licenses/ibmpl.php intel-fw-eula Intel firmware license with redistribution restricted to OEM. intel-fw-public Intel firmware license permitting redistribution with terms similar to BSD licensed software. intel-public Intel license permitting redistribution with terms similar to BSD licensed software. mit MIT (X11) style license. http://www.opensource.org/licenses/mit-license.php If a package has components covered by different licenses (for example, GPL2 and the LGPL), use the <license> subdirectory for the more restrictive license. If a package allows the choice of a license to use, we'll generally use the less restrictive license. If in doubt about where a package should be located, please contact <core@NetBSD.org> for advice. Migration Strategy: Eventually src/dist (and associated framework in other base source directories) and src/gnu will be migrated to this hierarchy. Maintenance Strategy: The sources under src/external/<license>/<package>/dist/ are generally a combination of a published distribution plus changes that we submit to the maintainers and that are not yet published by them. Make sure all changes made to the external sources are submitted to the appropriate maintainer, but only after coordinating with the NetBSD maintainers.