Commit Graph

142 Commits

Author SHA1 Message Date
dholland
b7b7574d3b Reorg docs, part 1:
Move all the reference manuals to subdirs of /usr/share/doc/reference.
We have subdirs ref1-ref9, corresponding to man page sections 1-9.

Everything that's the reference manual for a program (sections 1, 6,
8), C interface (sections 2, 3), driver or file system (section 4),
format or configuration (section 5), or kernel internal interface
(section 9) belongs in here.

Section 7 is a little less clear: some things that might go in section
7 if they were a man page aren't really reference manuals. So I'm only
putting things in reference section 7 that are (to me) clearly
reference material, rather than e.g. tutorials, guides, FAQs, etc.
This obviously leaves some room for debate, especially without first
editing the docs with this distinction in mind, but if people hate
what I've done things can always be moved again.

Note also that while roff macro man pages traditionally go in section
7, I have put all the roff documentation (macros, tools, etc.) in one
place in reference/ref1/roff. This will make it easier to find and
also easier to edit it into some kind of coherent form.
2014-07-05 19:22:41 +00:00
jmmv
ba38cec1e2 Avoid running a helper program for atf-sh as a test.
Should fix failures observed in PR bin/48624.
2014-03-03 19:56:32 +00:00
jmmv
285456ed54 Fix bundling of the atf version into pkgconfig files and atf-version.
Sigh; one more attempt.  This time I'm sure I've verified that the
.pc files contain the right number and that atf-version also outputs
the right stuff...  Both with a clean and non-clean obj directory.

Should fix part of the problems reported in PR bin/48624.
2014-03-02 22:50:13 +00:00
jmmv
d9eee690ca Obviously, we want ATFFILE and KYUAFILE to be set to yes... 2014-02-15 22:32:26 +00:00
jmmv
5ecd3e3027 Prevent registering the helper programs as test programs.
Same trick as with atf/test-programs: provide hand-generated Atffile and
Kyuafile files so that the helpers that we build as test programs do not
end up in them.

Reported by gson@.
2014-02-15 19:33:54 +00:00
jmmv
752fe084c0 Fix the bundling of the version number in built files.
Yes, attempting yet another fix at this so that the version number that
gets recorded in the pkgconfig files and inside atf-version really matches
the latest imported version.  Should resolve issues where the built files
get stuck with an older version number during update builds.

This time, I'm trying the same approach I applied in the FreeBSD source
tree, which has been working fine so far across various release imports.
2014-02-15 04:19:46 +00:00
jmmv
70bbcb4b33 Prevent registering the helper programs as test programs.
They are not intended to be run neither by atf-run nor Kyua, and doing so
results in test failures.  The easiest way to do this for now is to just
ship custom Atffile and Kyuafile files.  (This broke because with atf-0.20
we started using the auto-generated versions of these, and due to the way
bsd.test.mk works, these registered the helpers as well.)

Problem reported by martin@.
2014-02-15 04:15:20 +00:00
jmmv
3e03992881 Fix path to libtools.a.
The build would break when we do not use MAKEOBJDIR* but do use OBJMACHINE.
Problem found by B Harder and fix based on patch from NONAKA Kimihiro as
posted on current-users.
2014-02-15 02:02:39 +00:00
jmmv
a38e0b43c5 Homogenize reachover build file structure with that of kyua-cli:
- Move the majority of the common build definitions to the top-level
  Makefile.inc and ensure this gets included everywhere.
- Move the bconfig.h file to the top-level directory.
- Add a statically-generated defs.h file instead of creating one
  during the build.  Easier to understand and less chances for things
  to go wrong.
- Make sure all files using ATF_VERSION have the right dependency to
  trigger a rebuild when the value changes.
- Clean up stale -I flags.

This is all mostly for simplicity reasons and to reduce the cognitive
load required to understand the build of the atf and kyua-* packages.

I have tested this with both MKKYUA=no/yes and non-clean/clean builds
so hopefully I got the details right.  But if not, let me know please.
2014-02-12 04:08:31 +00:00
jmmv
5506dc87b2 Remove unused reachover Makefiles.
The content of these was subsumed into the sibling 'tools' subdirectory
during the import of atf-0.19.
2014-02-12 03:47:21 +00:00
jmmv
646fe152bb Remove portability-related guards from the atf tools.
Just assume we are building for NetBSD given that the tools code is now
owned by the NetBSD tree.
2014-02-11 18:13:45 +00:00
jmmv
892cb06d80 Remove revision.h and associated complexity from atf-version.
Arguably, this was never needed and only made the code and the build system
more complex for no real reason.
2014-02-11 18:07:30 +00:00
jmmv
fd47ea3b40 Stop using bconfig.h in the tools code.
Just assume the code is being built for NetBSD for simplicity reasons.
2014-02-11 17:28:20 +00:00
jmmv
ad23a81712 Remove defs.hpp.
Because we now own the 'tools' subdirectory in the tree, we can yank some
of the upstream autoconf-related complexity.  Start doing so by removing
defs.hpp and using the real compiler attributes where necessary.
2014-02-11 16:31:38 +00:00
jmmv
25347c603f Update reachover build files for atf-0.20. 2014-02-11 16:11:28 +00:00
jmmv
6b0aadc835 Merge atf-0.20.
The upstream Atffiles are gone so we will just rely on our automatic
generation of such files from bsd.test.mk.
2014-02-11 16:10:40 +00:00
jmmv
940a202b3a Import atf-0.20:
Experimental version released on February 7th, 2014.

This is the first release without the code for the deprecated tools.  If
you require such code, please fetch a copy of the 0.19 release and extract
the 'tools' directory for your own consumption.

* Removed the deprecated tools.  This includes atf-config, atf-report,
  atf-run and atf-version.
2014-02-11 16:07:06 +00:00
jmmv
fd82d5173d Update for atf 0.19. 2014-02-09 14:02:39 +00:00
jmmv
152d2ecbea Adjust reachover Makefiles for atf-0.19.
The main change here is that the atf-config, atf-report, atf-run and
atf-version tools no longer depend on libatf-c nor libatf-c++.  Instead,
they depend on an internal libtools.a that contains code specifically
for these tools and nothing else, making them self-contained.
2014-02-08 19:15:33 +00:00
jmmv
97bff2045d Merge atf-0.19. 2014-02-08 19:13:43 +00:00
jmmv
d780102efe Import atf 0.19:
Changes in version 0.19
***********************

Experimental version released on February 7th, 2014.

This is the last release to bundle the code for the deprecated tools.
The next release will drop their code and will stop worrying about
backwards compatibility between the ATF libraries and what the old tools
may or may not support.

If you still require the old tools for some reason, grab a copy of the
'tools' directory now.  The code in this directory is standalone and
does not depend on any internal details of atf-c++ any longer.

* Various fixes and improvements to support running as part of the FreeBSD
  test suite.

* Project hosting moved from Google Code (as a subproject of Kyua) to
  GitHub (as a first-class project).  The main reason for the change is
  the suppression of binary downloads in Google Code on Jan 15th, 2014.
  See https://github.com/jmmv/atf/

* Removed builtin help from atf-sh(1) and atf-check(1) for simplicity
  reasons.  In other words, their -h option is gone.

* Moved the code of the deprecated tools into a 'tools' directory and
  completely decoupled their code from the internals of atf-c++.  The
  reason for this is to painlessly allow a third-party to maintain a
  copy of these tools after we delete them because upcoming changes to
  atf-c++ would break the stale tools.


Changes in version 0.18
***********************

Experimental version released on November 16th, 2013.

* Issue 45: Added require.memory support in atf-run for FreeBSD.

* Fixed an issue with the handling of cin with libc++.

* Issue 64: Fixed various mandoc formatting warnings.

* NetBSD PR bin/48284: Made atf-check flush its progress message to
  stdout so that an interrupted test case always shows the last message
  being executed.

* NetBSD PR bin/48285: Fixed atf_check examples in atf-sh-api(3).
2014-02-08 19:11:29 +00:00
jmmv
01fb61d6eb Adjust for import of atf 0.19.
- Delete some unnecessary files.
- Print out both the list of deleted files and added files in the import.
  Useful when adjusting file lists and the reachover Makefiles.
2014-02-08 19:06:05 +00:00
christos
558f21b60f Undo previous; unfortunately the cleanup routine gets called in a different
shell so it can't cleanup stuff set in the environment of the first shell.
There are 2 problems:
	- calling the test routine directly does not cleanup (not using
	  atf-run)
	- when using atf-run, the cleanup routine needs state from the
	  running code which can only be stored in files. This will never
	  allow us to run tests in parallel since we need to keep a known
	  place to pass state.
2014-01-10 01:39:32 +00:00
christos
beed3378d3 Make cleanup work as documented; note there are no tests testing that cleanup
works.
2014-01-10 01:16:07 +00:00
joerg
d29a92a31f Format string annotations and fixes for resulting fallout. 2014-01-07 02:06:42 +00:00
joerg
36a6d19157 Handle dependency on libstdc++ / libc++ in bsd.lib.mk. 2013-09-12 17:14:20 +00:00
joerg
1031501f81 It is unclear whether cin is guaranteed to buffer the last input
character of a get() for ungetch() to work. Prefer putback() to make it
work with current implementations of cin in libc++. Tracked as
http://llvm.org/bugs/show_bug.cgi?id=15867 with test case.
2013-04-30 00:31:56 +00:00
jmmv
4efe0dfefd Mark the atf/atf-{c,c++}/pkg_config_test:version tests as needing atf-version. 2013-03-16 04:21:19 +00:00
jmmv
29a902d3bf Deduce the version number to encode in pkgconfig files by getting it from
bconfig.h.  Also make the build of these files depends on bconfig.h itself.

This should fix once and for all the problems of the
atf/atf-{c,c++}/pkg_config_test:version tests breaking because the
pkgconfig files hold an old version number during update builds.
2013-03-14 07:10:05 +00:00
jmmv
8c23905fbe Do not install atf-config, atf-report, atf-run nor atf-version when
MKKYUA!=no.  The newly imported kyua-atf-compat module provides a
backwards-compatibility implementation of atf-report and atf-run
based on kyua(1).
2013-02-25 00:22:10 +00:00
jmmv
2ff3d6baf3 Fix atf version in pkgconfig files (should be 0.17).
Keeping these files up to date with every new import is too easy to get
wrong.  Would be nice if we'd extract the version number in some other
manner, like from lib/libatf-c/bconfig.h.

Found by martin@.
2013-02-19 15:35:42 +00:00
jmmv
a9d87426d0 Update reachover Makefiles for atf 0.17. 2013-02-15 17:08:34 +00:00
jmmv
6f587c9882 Fix merge conflicts after import of atf 0.17. 2013-02-15 17:07:59 +00:00
jmmv
0659fc670c Import atf 0.17:
Experimental version released on February 14th, 2013.

* Added the atf_utils_cat_file, atf_utils_compare_file,
  atf_utils_copy_file, atf_utils_create_file, atf_utils_file_exists,
  atf_utils_fork, atf_utils_grep_file, atf_utils_grep_string,
  atf_utils_readline, atf_utils_redirect and atf_utils_wait utility
  functions to atf-c-api.  Documented the already-public
  atf_utils_free_charpp function.

* Added the cat_file, compare_file, copy_file, create_file, file_exists,
  fork, grep_collection, grep_file, grep_string, redirect and wait
  functions to the atf::utils namespace of atf-c++-api.  These are
  wrappers around the same functions added to the atf-c-api library.

* Added the ATF_CHECK_MATCH, ATF_CHECK_MATCH_MSG, ATF_REQUIRE_MATCH and
  ATF_REQUIRE_MATCH_MSG macros to atf-c to simplify the validation of a
  string against a regular expression.

* Miscellaneous fixes for manpage typos and compilation problems with
  clang.

* Added caching of the results of those configure tests that rely on
  executing a test program.  This should help crossbuild systems by
  providing a mechanism to pre-specify what the results should be.

* PR bin/45690: Make atf-report convert any non-printable characters to
  a plain-text representation (matching their corresponding hexadecimal
  entities) in XML output files.  This is to prevent the output of test
  cases from breaking xsltproc later.
2013-02-15 17:04:15 +00:00
joerg
fa51ffa63a now sense -> no sense 2012-09-26 23:27:34 +00:00
joerg
ed602fb487 Don't use const foo const as type, one const is enough. 2012-09-13 21:44:49 +00:00
joerg
cbb088a668 Clang supports -Wno-stack-protector. 2012-08-10 17:12:11 +00:00
abs
e1e1c8c184 Check for ${HAVE_GCC} and pick the right path to stdc++ 2012-07-15 00:05:51 +00:00
christos
b48e242cbc depend on more libraries 2012-07-12 22:15:29 +00:00
christos
a931a66df8 Properly include dependent library, unbreaks objdir build. 2012-07-12 16:15:40 +00:00
jmmv
5b0d95a977 Update reachover Makefiles for atf 0.16.
As part of this change (and as done upstream and in various packaging
systems), start shipping shared libraries of both libatf-c and libatf-c++.
2012-07-11 22:40:16 +00:00
jmmv
9e6674dcce Post-import merge of atf 0.16. 2012-07-11 22:38:40 +00:00
jmmv
4e0366868d Import atf 0.16:
Experimental version released on July 10th, 2012.

* Added a --enable-tools flag to configure to request the build of the
  deprecated ATF tools, whose build is now disabled by default.  In order
  to continue running tests, you should migrate to Kyua instead of enabling
  the build of the deprecated tools.  The kyua-atf-compat package provides
  transitional compatibility versions of atf-run and atf-report built on
  top of Kyua.

* Tweaked the ATF_TEST_CASE macro of atf-c++ so that the compiler can
  detect defined but unused test cases.

* PR bin/45859: Fixed some XSLT bugs that resulted in the tc-time and
  tp-time XML tags leaking into the generated HTML file.  Also improved
  the CSS file slightly to correct alignment and color issues with the
  timestamps column.

* Optimized atf-c++/macros.hpp so that GNU G++ consumes less memory during
  compilation with GNU G++.

* Flipped the default to building shared libraries for atf-c and atf-c++,
  and started versioning them.  As a side-effect, this removes the
  --enable-unstable-shared flag from configure that appears to not work any
  more (under NetBSD).  Additionally, some distributions require the use of
  shared libraries for proper dependency tracking (e.g. Fedora), so it is
  better if we do the right versioning upstream.

* Project hosting moved from an adhoc solution (custom web site and
  Monotone repository) to Google Code (standard wiki and Git).  ATF now
  lives in a subcomponent of the Kyua project.
2012-07-11 22:37:05 +00:00
joerg
8df5dadc39 Don't bail out on unused private fields. 2012-06-16 17:02:33 +00:00
jmmv
a2edf997c0 Fix retry logic to avoid triggering an assertion. 2012-04-05 01:04:18 +00:00
jmmv
a5f84fa6bf Pull up upstream revision db8568696ad5a100ab3f118ac1cde53ee61ccbc3:
Fix some XSLT/CSS bugs that leaked some internal tags into the HTML file.
This, together with some CSS inconsistency, supposedly prevented the
timestamp column from being right-aligned... although I have not been able
to reproduce it with neither Chrome nor Firefox.  That said, the changes
in here should fix this.

While doing this, also change the background color of the timestamp column
for test programs to improve the divider bar between test programs.

Based on patches and ideas from pgoyette@.  Should fix PR bin/45859.
2012-01-23 23:03:39 +00:00
jmmv
5436766ad5 Update reachover build files and scripts to deal with the just-imported
atf 0.15.
2012-01-16 22:42:40 +00:00
jmmv
36b886fe83 Resolve conflicts after the import of atf 0.15. 2012-01-16 22:41:30 +00:00
jmmv
a551a20f66 Import atf 0.15: the major goal of this import is to reconcile any local
changes to the atf codebase with upstream code.  All local changes should
have been backported, with appropriate portability workarounds where
necessary.

This new release also includes other changes though, such as performance
improvements and bug fixes, and also a major new feature partially
implemented by pgoyette@: the time to execute each test cases and test
program is now recorded and included in the output reports.

The import into NetBSD has been tested natively on amd64 and macppc, and
the full test suite has also been run through anita on amd64 and i386.
No regressions observed... but you never know.

From the NEWS file, the changes in this version are as follows:

Experimental version released on January 16th, 2012.

* Respect stdin in atf-check.  The previous release silenced stdin for any
  processes spawned by atf, not only test programs, which caused breakage
  in tests that pipe data through atf-check.

* Performance improvements to atf-sh.

* Enabled detection of unused parameters and variables in the code and
  fixed all warnings.

* Changed the behavior of "developer mode".  Compiler warnings are now
  enabled unconditionally regardless of whether we are in developer mode or
  not; developer mode is now only used to perform strict warning checks and
  to enable assertions.  Additionally, developer mode is now only
  automatically enabled when building from the repository, not for formal
  releases.

* Added new Autoconf M4 macros (ATF_ARG_WITH, ATF_CHECK_C and
  ATF_CHECK_CXX) to provide a consistent way of defining a --with-arg flag
  in configure scripts and detecting the presence of any of the ATF
  bindings.  Note that ATF_CHECK_SH was already introduced in 0.14, but it
  has now been modified to also honor --with-atf if instantiated.

* Added timing support to atf-run / atf-report.

* Added support for a 'require.memory' property, to specify the minimum
  amount of physical memory needed by the test case to yield valid results.

* PR bin/45690: Force an ISO-8859-1 encoding in the XML files generated by
  atf-report so that invalid data in the output of test cases does not
  mangle our report.
2012-01-16 22:36:30 +00:00
christos
f0196baaf5 - make all the ifdefs match
- make it compile, and test
2011-12-19 22:25:45 +00:00