35 Commits

Author SHA1 Message Date
Mark Mentovai
ded751da3d doc: Update Doxyfile to 1.8.13
$ doxygen -u doc/support/crashpad.doxy
Configuration file `doc/support/crashpad.doxy' updated.
$ doxygen -v
1.8.13

Change-Id: I7b886e328aa1dbe91e314433c0e01acc0f18b314
Reviewed-on: https://chromium-review.googlesource.com/446598
Reviewed-by: Robert Sesek <rsesek@chromium.org>
2017-02-23 15:19:31 +00:00
Mark Mentovai
dd85381a32 GCC fix: Disable -Wmultichar warning throughout Crashpad
-Wmultichar is enabled by default with GCC (but not clang). It is
impossible to disable this warning with #pragma GCC diagnostic ignored.
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53431

While compiling, for example, minidump_file_writer.cc:

In file included from ../../minidump/minidump_extensions.h:25:0,
                 from ../../minidump/minidump_file_writer.h:27,
                 from ../../minidump/minidump_file_writer.cc:15:
../../util/misc/pdb_structures.h:45:38: error: multi-character character constan
t [-Werror=multichar]
   static const uint32_t kSignature = '01BN';
                                      ^~~~~~
../../util/misc/pdb_structures.h:106:38: error: multi-character character consta
nt [-Werror=multichar]
   static const uint32_t kSignature = 'SDSR';
                                      ^~~~~~
../../minidump/minidump_file_writer.cc:190:23: error: multi-character character
constant [-Werror=multichar]
   header_.Signature = MINIDUMP_SIGNATURE;
                       ^~~~~~~~~~~~~~~~~~

doc/developing.md is also updated to provide GCC build instructions for
Android.

Tested with:
 - GCC 4.9 from NDK r13 targeting arm with SDK 16
 - GCC 4.9 from NDK r13 targeting arm64 with SDK 21
 - GCC 6.2 targeting x86_64

BUG=crashpad:30

Change-Id: I9e7993761f5461281c9f4d8b4c56e8407e2c5b47
Reviewed-on: https://chromium-review.googlesource.com/409776
Reviewed-by: Robert Sesek <rsesek@chromium.org>
2016-11-11 17:35:25 +00:00
Mark Mentovai
ac2e7cfbb2 doc: Make Doxygen-generated HTML interface documentation prettier
This provides custom CSS to override Doxygen’s default font choices.
It uses the Open Sans and Source Code Pro as used on Gitiles and
PolyGerrit.

A slightly-improved Doxygen main page is included as well.

Change-Id: Ib9f7e7d3eef7d3b78231e2dc9430aa8758590773
Reviewed-on: https://chromium-review.googlesource.com/408715
Reviewed-by: Robert Sesek <rsesek@chromium.org>
2016-11-08 19:25:26 +00:00
Mark Mentovai
acabe35928 doc: Fix all Doxygen warnings, cleaning up some generated documentation
This makes Doxygen’s output more actionable by setting QUIET = YES to
suppress verbose progress spew, and WARN_IF_UNDOCUMENTED = NO to prevent
warnings for undocumented classes and members from being generated. The
latter is too noisy, producing 721 warnings in the current codebase.

The remaining warnings produced by Doxygen were useful and actionable.
They fell into two categories: abuses of Doxygen’s markup syntax, and
missing (or misspelled) parameter documentation. In a small number of
cases, pass-through parameters had intentionally been left undocumented.
In these cases, they are now given blank \param descriptions. This is
not optimal, but there doesn’t appear to be any other way to tell
Doxygen to allow a single parameter to be undocumented.

Some tricky Doxygen errors were resolved by asking it to not enter
directiores that we do not provide documentation in (such as the
“on-platform” compat directories, compat/mac and compat/win, as well as
compat/non_cxx11_lib) while allowing it to enter the
“off-platform” directories that we do document (compat/non_mac and
compat/non_win).

A Doxygen run (doc/support/generate_doxygen.sh) now produces no output
at all. It would produce warnings if any were triggered.

Not directly related, but still relevant to documentation,
doc/support/generate.sh is updated to remove temporary removals of
now-extinct files and directories. doc/appengine/README is updated so
that a consistent path to “goapp” is used throughout the file.

Change-Id: I300730c04de4d3340551ea3086ca70cc5ff862d1
Reviewed-on: https://chromium-review.googlesource.com/408812
Reviewed-by: Robert Sesek <rsesek@chromium.org>
2016-11-08 19:24:05 +00:00
Mark Mentovai
8e3e65178a Update Doxyfile to 1.8.12
$ doxygen -u doc/support/crashpad.doxy
Configuration file `doc/support/crashpad.doxy' updated.
$ doxygen -v
1.8.12

Change-Id: I1a04869f8d60d15e97de618cc084f5a1fa403103
Reviewed-on: https://chromium-review.googlesource.com/408632
Reviewed-by: Robert Sesek <rsesek@chromium.org>
2016-11-07 20:20:21 +00:00
Mark Mentovai
f5e869c51f doc: Check in the man page index instead of generating it
The generated page’s benefit-to-complexity ratio was too low.

BUG=crashpad:138

Change-Id: I5324c33b6b7f83e973c40b256b06e25c763b23c4
Reviewed-on: https://chromium-review.googlesource.com/408268
Reviewed-by: Robert Sesek <rsesek@chromium.org>
2016-11-07 18:45:58 +00:00
Mark Mentovai
1f2a2c82c6 doc: Small updates after Markdown migration
The strangest discovery relates to the # <h1> title in navbar.md.
Gitiles renders it small unless there’s a [home] reference, so use that.
This should only affect wrapping the site logo in the [home] link, but
it appears to control the size of the navbar title too. See
https://code.google.com/p/gitiles/issues/detail?id=130.

BUG=crashpad:138,gitiles:130

Change-Id: I11b3a79f045efa22358b3c3ef4b50ce2e6b3282e
Reviewed-on: https://chromium-review.googlesource.com/408458
Reviewed-by: Robert Sesek <rsesek@chromium.org>
2016-11-07 18:43:18 +00:00
Mark Mentovai
3830e4e5c1 Update the link to mini_chromium’s README
Also, update mini_chromium to 414d59602ac38e24f1e93929fda3d79d72cea139

7bfe6cd9579b README→README.md; convert plain text to Markdown
414d59602ac3 Fix mailto: link in README.md

BUG=crashpad:138

Change-Id: Ibd3c054a3e7f08a740fe6aca408cf23797d992ae
Reviewed-on: https://chromium-review.googlesource.com/408316
Reviewed-by: Robert Sesek <rsesek@chromium.org>
2016-11-04 21:53:31 +00:00
Mark Mentovai
0c41b15496 Convert AsciiDoc documentation to Markdown
Most of the world, including the Chromium universe, seems to be
standardizing on Markdown for documentation. Markdown provides the
benefit of automatic rendering on Gitiles (Gerrit), and on GitHub
mirrors as well. Crashpad should fit in with its surroundings.

There are two quirks that I was unable to resolve.

 - Markdown does not allow **emphasis** within a ```code fence```
   region. In blocks showing interactive examples, the AsciiDoc
   documentation used this to highlight what the user was expected to
   type.
 - Markdown does not have a “definition list” (<dl>). This would have
   been nice in man pages for the Options and Exit Status sections.
   In its place, I used unnumbered lists. This is a little ugly, but
   it’s not the end of the world.

The new Markdown-formatted documentation is largely identical to the
AsciiDoc that it replaces. Minor editorial revisions were made.
References to Mac OS X now mention macOS, and tool man pages describing
tools that that access task ports now mention System Integrity
Protection (SIP).

The AppEngine-based https://crashpad.chromium.org/ app in doc/appengine
is still necessary to serve Doxygen-generated documentation. This app is
updated to redirect existing generated-HTML URLs to Gitiles’ automatic
Markdown rendering.

Scripts in doc/support are updated to adapt to this change. All AsciiDoc
support files in doc/support have been removed.

BUG=crashpad:138

Change-Id: I15ad423d5b7aa1b7aa2ed1d2cb72639eec7c81aa
Reviewed-on: https://chromium-review.googlesource.com/408256
Reviewed-by: Robert Sesek <rsesek@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
2016-11-04 21:13:53 +00:00
Mark Mentovai
c55e49c13d doc: Remove errant parenthesis
Also add a link to codereview.settings.

Change-Id: Id6676e16fa3e10e34805c47b2d41e82e524af09a
Reviewed-on: https://chromium-review.googlesource.com/406707
Reviewed-by: Robert Sesek <rsesek@chromium.org>
2016-11-02 15:26:12 +00:00
Mark Mentovai
e616638c9d Replace Rietveld with Gerrit in the developer documentation
Also, update a few links for good measure.

Change-Id: I47113a4f324e4ad6ba02aa46bae821eefd4d98ea
Reviewed-on: https://chromium-review.googlesource.com/406347
Reviewed-by: Robert Sesek <rsesek@chromium.org>
2016-11-01 18:59:36 +00:00
Mark Mentovai
e7bd798af4 Update build/test and status documentation to reflect Android
BUG=crashpad:30

Change-Id: I0170e95e43146f6a2af6b6753c5197794bd83817
Reviewed-on: https://chromium-review.googlesource.com/406307
Reviewed-by: Robert Sesek <rsesek@chromium.org>
2016-11-01 18:34:56 +00:00
Mark Mentovai
74c3eb8d0f doc: Fix links with plus signs in rendered output
Change-Id: Ie9cea7e74c5954fc405fbbcfe1af09372f270ba3
Reviewed-on: https://chromium-review.googlesource.com/333054
Reviewed-by: Scott Graham <scottmg@chromium.org>
2016-03-17 16:12:20 +00:00
Scott Graham
f64ef73d8b Update project status docs for Windows
Change-Id: Iefd22eace38e1af3003020de8a08d851da8cec9a
Reviewed-on: https://chromium-review.googlesource.com/332663
Reviewed-by: Mark Mentovai <mark@chromium.org>
2016-03-15 22:34:09 +00:00
Mark Mentovai
142b139305 package.h, man_footer.ad: Update copyright year to 2016
For perceived freshness of command-line tools

R=scottmg@chromium.org

Review URL: https://codereview.chromium.org/1567723003 .
2016-01-06 16:25:49 -05:00
Mark Mentovai
7efdc94f59 Fixes for Chromium checkperms.py PRESUBMIT
BUG=chromium:472900
R=scottmg@chromium.org

Review URL: https://codereview.chromium.org/1508193002 .
2015-12-08 16:24:54 -05:00
Mark Mentovai
e86d9bdc55 doc: “Crashpad issue tracker” should go to the list, not the entry page
R=rsesek@chromium.org

Review URL: https://codereview.chromium.org/1427193002 .
2015-10-30 18:47:18 -04:00
Mark Mentovai
cd0e25f1ba Update all URLs to point to https://crashpad.chromium.org/
All other links to code.google.com and googlecode.com are fixed to point
to their proper new homes as well.

R=rsesek@chromium.org

Review URL: https://codereview.chromium.org/1414243005 .
2015-10-29 18:31:20 -04:00
Mark Mentovai
0615a59285 doc: Update status to reflect Windows and Android progress
R=scottmg@chromium.org

Review URL: https://codereview.chromium.org/1415313003 .
2015-10-21 18:41:39 -04:00
Mark Mentovai
3ac40a54d0 doc: Add generate_git.sh, which updates the checked-in generated docs
BUG=crashpad:67
R=agable@chromium.org

Review URL: https://codereview.chromium.org/1399623002 .
2015-10-21 13:22:51 -04:00
Mark Mentovai
af8c7fcbee Add a README for the App Engine app with notes for maintaining it
R=andybons@chromium.org

Review URL: https://codereview.chromium.org/1416833003 .
2015-10-21 11:20:10 -04:00
Mark Mentovai
0ed0106aa4 Add /bug redirects to the home page AppEngine app
/bug/ redirects to the Crashpad project on Monorail. /bug/new redirects
to the “new issue” screen, and /bug/123 redirects to the named bug.

R=andybons@chromium.org

Review URL: https://codereview.chromium.org/1415063002 .
2015-10-21 09:42:29 -04:00
Mark Mentovai
53ccd8fc5e doc/developing.ad: replace removed backslash
Having two ~s in one block confused doc generation.

R=rsesek@chromium.org

Review URL: https://codereview.chromium.org/1413203002 .
2015-10-19 17:17:09 -04:00
Mark Mentovai
2adcd13fd6 Update developer documentation to recommend the “fetch” tool
“fetch crashpad“ is possible since depot_tools ea1b3d5ed88b.

R=rsesek@chromium.org

Review URL: https://codereview.chromium.org/1408133003 .
2015-10-19 13:51:52 -04:00
Andrew Bonventre
a2740b23a2 Add app engine app to mirror html docs from chromium.googlesource.com
BUG=crashpad:67
R=mark@chromium.org, rsesek@chromium.org

Review URL: https://codereview.chromium.org/1393353002 .

Patch from Andrew Bonventre <andybons@chromium.org>.
2015-10-09 15:59:32 -04:00
Mark Mentovai
2bee026ca1 doc: Use relative links in generated index.html when possible
BUG=crashpad:67

Review URL: https://codereview.chromium.org/1397173002 .
2015-10-09 15:50:38 -04:00
Mark Mentovai
075eb0c60c doc: Update absolute links to point to their new homes
BUG=crashpad:67
R=andybons@chromium.org, rsesek@chromium.org

Review URL: https://codereview.chromium.org/1389333006 .
2015-10-08 15:56:01 -04:00
Mark Mentovai
25571f864e doc/support/generate.sh: Remove extra copy of doc/index.html
BUG=crashpad:67
R=rsesek@chromium.org

Review URL: https://codereview.chromium.org/1390353004 .
2015-10-08 15:16:33 -04:00
Mark Mentovai
3e5e5b570a Add doc/support/generate.sh
This script populates doc/generated. This directory is named in
.gitignore on the master branch, but will not be ignored on the doc
branch. The plan is to merge master into doc and run this script to
generate and check in a new set of generated docs.

BUG=crashpad:67
R=rsesek@chromium.org

Review URL: https://codereview.chromium.org/1397683003 .
2015-10-08 14:38:10 -04:00
Scott Graham
5de461e8c8 Refactor handler/main for Windows, implement CrashHandlerExceptionServer
BUG=crashpad:1
R=mark@chromium.org

Review URL: https://codereview.chromium.org/1314093002 .
2015-09-03 13:31:19 -07:00
Mark Mentovai
eb7ca8c374 Fix a few pieces of documentation
These problems were noticed while perusing
http://docs.crashpad.googlecode.com/git/doxygen/namespacecrashpad.html

R=scottmg@chromium.org

Review URL: https://codereview.chromium.org/1278423002 .
2015-08-10 12:23:50 -04:00
Mark Mentovai
71b8efef96 doc: Add introduction.ad.
This document contains the contents of the current project home page
wiki, visible at https://crashpad.googlecode.com/.

R=rsesek@chromium.org

Review URL: https://codereview.chromium.org/1053673003
2015-04-01 13:46:00 -04:00
Mark Mentovai
332e8219ed Migrate content from wiki.
The wiki existed at https://code.google.com/p/crashpad/wiki, but given
Google Code Project Hosting’s impending shutdown[1], it’s prudent to
move wiki documents into the source code repository.

This change moves the existing contents of doc into doc/support, to make
way for documentation in doc. The two existing wiki pages, ProjectStatus
and DevelopingCrashpad, are converted to AsciiDoc format (a fairly
straightforward conversion) and checked in to doc. generate_asciidoc.sh
is updated to produce HTML output from these files. The generated HTML
will show up at http://docs.crashpad.googlecode.com/git/doc/. Note that
generated HTML is still hosted on Google Code Project Hosting, but it’ll
be easy to find a new home for them.

[1]
http://google-opensource.blogspot.com/2015/03/farewell-to-google-code.html

R=rsesek@chromium.org

Review URL: https://codereview.chromium.org/1055523002
2015-04-01 12:39:53 -04:00
Mark Mentovai
af9e78940e Allow man pages to link to each other
R=rsesek@chromium.org

Review URL: https://codereview.chromium.org/1018023002
2015-03-18 17:13:22 -04:00
Mark Mentovai
c2502f45c9 doc: Add documentation-generating scripts to the Crashpad tree.
R=rsesek@chromium.org

Review URL: https://codereview.chromium.org/1009223003
2015-03-18 17:10:12 -04:00