blob: 21d4c03d2c41d8f335c13e51211d12f25d56635c [file] [log] [blame] [view]
nodir469b2a12015-09-14 16:20:211# Chromium docs
2
Ming-Ying Chungd8eebd2c2022-07-19 08:02:233This directory contains [chromium project](https://www.chromium.org/Home/)
4documentation in [Gitiles-flavored Markdown]. It is automatically
5[rendered by Gitiles].
Vincent Scheibde853a02017-07-13 23:31:186
7[Gitiles-flavored Markdown]: https://gerrit.googlesource.com/gitiles/+/master/Documentation/markdown.md
John Palmer046f9872021-05-24 01:24:568[rendered by Gitiles]: https://chromium.googlesource.com/chromium/src/+/main/docs/
nodir469b2a12015-09-14 16:20:219
Ming-Ying Chungd8eebd2c2022-07-19 08:02:2310**If you add new documents, please also add a link to them in the Document Index
11below.**
justincarlson90a1c8c2017-04-14 00:34:2512
13[TOC]
14
Vincent Scheib394b907a2017-07-14 22:30:0615## Creating Documentation
nodir469b2a12015-09-14 16:20:2116
Ming-Ying Chungd8eebd2c2022-07-19 08:02:2317### Guidelines
nodir469b2a12015-09-14 16:20:2118
Qi Xiao4a80b1e2022-07-27 10:08:2919* See the [Chromium Documentation Guidelines](documentation_guidelines.md)
Ming-Ying Chungd8eebd2c2022-07-19 08:02:2320 and the
Qi Xiao4a80b1e2022-07-27 10:08:2921 [Chromium Documentation Best Practices](documentation_best_practices.md).
Ming-Ying Chungd8eebd2c2022-07-19 08:02:2322* Markdown documents must follow the
Ming-Ying Chung99ebfd72023-03-03 01:01:4823 [Markdown Style
24 Guide](https://chromium.googlesource.com/chromium/src/+/HEAD/styleguide/markdown/markdown.md).
Ming-Ying Chungd8eebd2c2022-07-19 08:02:2325
26### Previewing changes
27
28#### Locally using [md_browser](../tools/md_browser/)
nodir6efa4992015-12-20 00:54:3329
30```bash
31# in chromium checkout
agabled40b9542016-05-11 01:15:0632./tools/md_browser/md_browser.py
nodir6efa4992015-12-20 00:54:3333```
34
Vincent Scheib394b907a2017-07-14 22:30:0635This is only an estimate. The **gitiles** view may differ.
nodir6efa4992015-12-20 00:54:3336
Ming-Ying Chungd8eebd2c2022-07-19 08:02:2337#### Online with Gerrit's links to gitiles
Vincent Scheib394b907a2017-07-14 22:30:0638
Mathieu Perreault339625382017-07-29 00:32:58391. Upload a patch to gerrit, or receive a review request.
Roland Bockfdc88ec2022-01-05 08:32:5440 e.g. https://chromium-review.googlesource.com/c/3362532
Mathieu Perreault339625382017-07-29 00:32:58412. View a specific .md file.
Roland Bockfdc88ec2022-01-05 08:32:5442 e.g. https://chromium-review.googlesource.com/c/3362532/2/docs/README.md
433. You will see something like <br>
44 Base
Qi Xiao4a80b1e2022-07-27 10:08:2945 [preview](https://chromium.googlesource.com/chromium/src/+/ad44f6081ccc6b92479b12f1eb7e9482f474859d/docs/README.md)
Roland Bockfdc88ec2022-01-05 08:32:5446 -> Patchset 3
Qi Xiao4a80b1e2022-07-27 10:08:2947 [preview](https://chromium.googlesource.com/chromium/src/+/refs/changes/32/3362532/3/docs/README.md)
Roland Bockfdc88ec2022-01-05 08:32:5448 | DOWNLOAD <br>
Ming-Ying Chungd8eebd2c2022-07-19 08:02:2349 at the top left of the page. Click on the second
Qi Xiao4a80b1e2022-07-27 10:08:2950 "[preview](https://chromium.googlesource.com/chromium/src/+/refs/changes/32/3362532/3/docs/README.md)"
Roland Bockfdc88ec2022-01-05 08:32:5451 link to open the preview for the current patch set.
Vincent Scheib394b907a2017-07-14 22:30:0652
53This **gitiles** view is the authoritative view, exactly the same as will be
54used when committed.
nodir6efa4992015-12-20 00:54:3355
justincarlson90a1c8c2017-04-14 00:34:2556## Document Index
57
58### Checking Out and Building
Tom Anderson93e49e492019-12-23 19:55:3759* [Linux Build Instructions](linux/build_instructions.md) - Linux
justincarlson90a1c8c2017-04-14 00:34:2560* [Mac Build Instructions](mac_build_instructions.md) - MacOS
61* [Windows Build Instructions](windows_build_instructions.md) - Windows
62* [Android Build Instructions](android_build_instructions.md) - Android target
63 (on a Linux host)
Tom Anderson93e49e492019-12-23 19:55:3764* [Cast Build Instructions](linux/cast_build_instructions.md) - Cast target
justincarlson90a1c8c2017-04-14 00:34:2565 (on a Linux host)
66* [Cast for Android Build Instructions](android_cast_build_instructions.md) -
67 Cast for Android (on a Linux host)
Chong Gu4749ec12021-02-17 01:41:0668* [Fuchsia Build Instructions](fuchsia/build_instructions.md) -
69 Fuchsia target (on a Linux host)
justincarlson90a1c8c2017-04-14 00:34:2570* [iOS Build Instructions](ios/build_instructions.md) - iOS target (on a MacOS
71 host)
Euisang Lim1f253912018-04-30 01:46:3272* [Chrome OS Build Instructions](chromeos_build_instructions.md) - Chrome OS
Sven Zhengf86cdf22022-11-19 02:16:0573* [Lacros Build Instructions](lacros/build_instructions.md) - Lacros
Tom Anderson93e49e492019-12-23 19:55:3774* [Linux Chromium ARM Recipes](linux/chromium_arm.md) - Recipes for building
justincarlson90a1c8c2017-04-14 00:34:2575 Chromium for ARM on Linux.
justincarlson90a1c8c2017-04-14 00:34:2576* [Chrome Component Build](component_build.md) - Faster builds using more
77 libraries
78* [Using the BuildRunner](using_build_runner.md) - Scripts that extract build
79 stops from builders and runs them locally on a slave
80* [Cr User Manual](cr_user_manual.md) - Manual for `cr`, a tool that tries to
81 hide some of the tools used for working on Chromium behind an abstraction
82 layer
83
justincarlsonad589ce2017-04-20 17:26:0784### Design Docs
85* See [design/README.md](design/README.md)
86
justincarlson90a1c8c2017-04-14 00:34:2587### Integrated Development Environment (IDE) Set Up Guides
88* [Android Studio](android_studio.md) - Android Studio for Android builds
manukh080b47e2019-12-19 22:06:1989* [Atom](atom.md) - Atom multi-platform code editor
90* [CLion](clion.md) - CLion IDE, supports GUI debugging.
justincarlson90a1c8c2017-04-14 00:34:2591* [Eclipse for Android](eclipse.md) - Eclipse for Android
Vincent Scheib196c7b42019-12-21 00:29:1992* [Eclipse for Linux](linux/eclipse_dev.md) - Eclipse for other platforms
justincarlson90a1c8c2017-04-14 00:34:2593 (This guide was written for Linux, but is probably usable on Windows/MacOS
94 as well)
justincarlson90a1c8c2017-04-14 00:34:2595* [EMACS Notes](emacs.md) - EMACS commands/styles/tool integrations
manukh080b47e2019-12-19 22:06:1996* [Qt Creator](qtcreator.md) - Using Qt Creator as an IDE or GUI debugger
97* [Visual Studio Code](vscode.md) - Visual Studio Code
justincarlson90a1c8c2017-04-14 00:34:2598
99### Git
100* [Git Cookbook](git_cookbook.md) - A collection of git recipes for common
101 tasks
102* [Git Tips](git_tips.md) - More git tips
103
104### Clang
105* [Clang Compiler](clang.md) - General information on the clang compiler, used
106 by default on Mac and Linux
107* [Clang Tool Refactoring](clang_tool_refactoring.md) - Leveraging clang tools
108 to perform refactorings that are AST-aware
109* [The Clang Static Analyzer](clang_static_analyzer.md) - How to enable static
110 analysis at build time
Yuke Liaobb571bd62018-10-31 21:51:52111* [Clang Code Coverage Wrapper](clang_code_coverage_wrapper.md) - Enable Clang
112 code coverage instrumentation for a subset of source files.
justincarlson90a1c8c2017-04-14 00:34:25113* [Writing Clang Plugins](writing_clang_plugins.md) - Don't write a clang
114 plugin, but if you do, read this
115* [Updating Clang](updating_clang.md) - Updating the version of Clang used to
116 build
117* [Using clang-format on Chromium C++ Code](clang_format.md) - Various ways to
118 invoke clang-format on C++ code
119* [Clang Tidy](clang_tidy.md) - Support for the `clang-tidy` tool in Chromium
120* [Updating Clang Format Binaries](updating_clang_format_binaries.md) - How up
121 update the clang-format binaries that come with a checkout of Chromium
122
123### General Development
Toby Huang5105f812019-08-08 23:47:57124* [Contributing to Chromium](contributing.md) - Reference workflow process for
125 contributing to the Chromium code base.
126* [Commit Checklist](commit_checklist.md) - Streamlined checklist to go
127 through before uploading CLs on Gerrit.
justincarlson90a1c8c2017-04-14 00:34:25128* [Code Reviews](code_reviews.md) - Code review requirements and guidelines
Mathieu Perreault339625382017-07-29 00:32:58129* [Respectful Code Reviews](cr_respect.md) - A guide for code reviewers
130* [Respectful Changes](cl_respect.md) - A guide for code authors
Yulan Lin55ae6a32020-07-31 17:58:29131* [Mandatory Code-Review Rollout](code_review_owners.md) - Upcoming policy changes related to code review and OWNERS
Eric Foo6ea4fbd2018-01-17 04:04:50132* [LUCI Migration FAQ](luci_migration_faq.md) - FAQ on Buildbot-to-LUCI
133 builder migration for Chromium
Eric Fooff7b4982017-12-19 01:59:15134* [Tour of Continuous Integration UI](tour_of_luci_ui.md) - A tour of our
Eric Foo6ea4fbd2018-01-17 04:04:50135 the user interface for LUCI, our continuous integration system
erikchenb83e010a2018-10-08 21:34:01136* [Parsing Test Results](parsing_test_results.md) - An introduction for how to