aboutsummaryrefslogtreecommitdiff
path: root/llvm/docs/GettingStarted.rst
AgeCommit message (Collapse)AuthorFilesLines
14 days[docs] Fix enumeration in GettingStarted.rst (#96684)Ivan Dzuhan1-4/+4
2025-09-20[llvm] Proofread GettingStarted.rst (#159904)Kazu Hirata1-14/+14
2025-08-01[llvm] Proofread *.rst (#151087)Kazu Hirata1-2/+2
This patch hyphenates words that are used as adjecives, such as: - architecture specific - human readable - implementation defined - language independent - language specific - machine readable - machine specific - target independent - target specific
2025-07-28[llvm][docs] Update list of working Linux host platforms (#149503)David Spickett1-0/+2
RISC-V and LoongArch to my knowledge are quite well supported.
2025-07-21[llvm] Improve grammar and punctuation of several documents (#149630)Kazu Hirata1-21/+21
2025-02-27[docs] Fix typo in GettingStarted.rst Unlinke -> Unlike (NFC) (#128616)bodqhrohro1-1/+1
2025-01-07[llvm][Docs] Update supported hardware (#121743)David Spickett1-4/+10
Since someone on Discord asked why macOS arm64 was not listed. https://llvm.org/docs/GettingStarted.html#hardware Add a few known platforms: * Linux AArch64 * FreeBSD AArch64 * macOS arm64 (Clang build only, there might be a GCC port but I've not used it myself) * Windows on Arm (ARM64 as Microsoft refers to it)
2024-12-06Bump minimum MSVC version by one dot release to VS 2019 16.8 (#118833)Chandler Carruth1-1/+1
This is a small change, but unblocks using longer string literals in LLVM's source code, and hopefully isn't disruptive. Discussed in an RFC here: https://discourse.llvm.org/t/rfc-raising-minimum-msvc-version-by-one-dot-release/
2024-10-08[llvm][docs] Improve the formatting of the Common Problems section (#108522)David Spickett1-29/+51
...and add shared libs as a suggestion. * Mark options, option values and program names as plain text. * Add a blank line between the option and the explanatory text so that it doesn't get printed on the same line. (this seems to be the original intent of the rst source anyway) * Update the phrasing of a couple of the options. * Add BUILD_SHARED_LIBS to suggestions.
2024-07-26[libc] Updated GettingStarted.rst with PyYAML version (#100649)RoseZhang031-1/+3
New Headergen requires PyYAML version 5.1 or newer in order to generate header files .
2024-06-07Reland "[python] Bump Python minimum version to 3.8 (#78828)"Aiden Grossman1-4/+4
This reverts commit b6824c9d459da059e247a60c1ebd1aeb580dacc2. This relands commit 0a6c74e21cc6750c843310ab35b47763cddaaf32. The original commit was reverted due to buildbot failures. These bots should be updated now, so hopefully this will stick.
2024-04-20Revert "Reland "[python] Bump Python minimum version to 3.8 (#78828)""Aiden Grossman1-4/+4
This reverts commit f2931182fc877e813974a5f53721f859bfb5b130. This was again causing buildbot failures. #83962 has been updated with the new failures, notifying the buildbot maintainers that they need to update their bots.
2024-04-20Reland "[python] Bump Python minimum version to 3.8 (#78828)"Aiden Grossman1-4/+4
This reverts commit 2dfa30d0ca6fb6991640a18e53401d82f567f8ff. This relands commit 0a6c74e21cc6750c843310ab35b47763cddaaf32. This patch originally caused a host of buildbot failures due to several buildbots not having the necessary python version. That was tracked in issue #83962, and all bots that failed in the first round have now been updated. This is an attempt to reland the patch to see if it sticks or if there are a number of long-running bots where this patch will cause failures.
2024-03-12Update GettingStarted.rst doc with negative refspec to filter user branches ↵Mehdi Amini1-3/+7
(#75015) This allows to keep fetching release branches as well.
2024-03-12[CMake] Add tablegen job pool support (#84762)David Stuttard1-3/+3
Add the ability to set the number of tablegen jobs that can run in parallel similar to the LLVM_PARALLEL_[COMPILE|LINK]_JOBS options that already exist.
2024-02-26[llvm][docs] Update the Python version requirement to 3.8.0 for lit testing ↵Tom Honermann1-2/+3
on Windows with substitute (virtual) drives. (#81663) Following the changes made for: - https://reviews.llvm.org/D154130: [lit][clang] Avoid realpath on Windows due to MAX_PATH limitations in commit: - 05d613ea931b6de1b46dfe04b8e55285359047f4 Python 3.8.0 or newer is now required by at least the following tests when they are run on Windows from a substitute (virtual) drive. A substitute drive is often used as a workaround for `MAX_PATH` limitations on Windows. These tests are impacted because they use the lit `%{?:real}` path expansion syntax to expand symbolic links and substitute drives. This path expansion is implemented with Python's `os.path.realpath()` function which changed behavior in Python 3.8.0 with regard to expansion of substitute drives. The changes mentioned above rely on the newer Python behavior. - `clang/test/Lexer/case-insensitive-include-absolute.c` - `clang/test/Lexer/case-insensitive-include-win.c` This change updates the LLVM Getting Started guide to note this newer Python version dependency for this relatively niche case. Python 3.6.0 remains the minimum required Python version otherwise.
2024-02-19Revert "[python] Bump Python minimum version to 3.8 (#78828)"Aiden Grossman1-3/+2
This reverts commit 0a6c74e21cc6750c843310ab35b47763cddaaf32. This created a lot of post-commit failures due to buildbots running older versions of Python.
2024-02-19[python] Bump Python minimum version to 3.8 (#78828)Craig Hesling1-2/+3
As per the RFC https://discourse.llvm.org/t/rfc-upgrading-llvms-minimum-required-python-version/67571, raise the minimum Python version to ensure that the Python syntax doesn't become overly obsolete, to enable new Python feature usage, and to improve the maintainability of CI. One of the primary use cases for this higher Python version is to enable python type annotations that are more aligned with current Python best practices. This is not only important for our own internal Python for testing, but for the Python bindings that are exposed to users.
2024-02-08docs/GettingStarted: document linker-related cmake options (#80932)Nicolai Hähnle1-69/+17
Both LLVM_LINK_LLVM_DYLIB and LLVM_PARALLEL_LINK_JOBS help with some common gotchas. It seems worth documenting them here explicitly. Based on a review comment, also "refactor" the documentation to avoid duplication.
2024-01-29[docs] Remove second "getting sources" section in GettingStarted.rst (#79663)Arthur Eubanks1-54/+2
The very beginning already talks about how to git clone the repo. The section about checking out specific versions doesn't really belong in GettingStarted and seems unnecessary.
2024-01-29[llvm][Docs] Update MyFirstTypoFix doc (#79149)David Spickett1-0/+2
I've not tried to change the purpose or style of the doc, just edited for clarity and removed any Phabricator related language in favour of GitHub terms. Where possible, I've swapped direct links to LLVM's website with RST links to the local documents. Which should be a bit more resilient. Also it's less confusing if you're editing multiple pages locally, you don't accidentally end up on the live site.
2023-12-09[docs] Add missing quotation mark after #73774Fangrui Song1-1/+1
2023-12-04Update GitHub doc to mention that we accepts user branches for Stacked PRs ↵Mehdi Amini1-0/+5
(#73774) This isn't yet a guide on how to do stacked PRs.
2023-08-01Remove stale info and fix superscript numberingAaron Ballman1-6/+3
This amends 1e06b82bded69fe627d6cd62ecff236fca15f39b
2023-07-31[docs] Bump minimum GCC version to 7.4Fangrui Song1-4/+3
GCC 7.3 cannot build 16.x releases. ``` In file included from /tmp/llvm-16/llvm/lib/Transforms/IPO/AttributorAttributes.cpp:14:0: /tmp/llvm-16/llvm/include/llvm/Transforms/IPO/Attributor.h:1137:32: error: duplicate initialization of ‘llvm::AnalysisGetter::HasLegacyWrapper<Analysis, std::void_t<typename Analysis::Lega cyWrapper> >’ constexpr bool AnalysisGetter::HasLegacyWrapper< ^~~~~~~~~~~~~~~~~ Analysis, std::void_t<typename Analysis::LegacyWrapper>> = true; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /tmp/llvm-16/llvm/include/llvm/Transforms/IPO/Attributor.h:1137:32: error: got 1 template parameters for ‘constexpr const bool llvm::AnalysisGetter::HasLegacyWrapper< <template-parameter-1 -1>, <template-parameter-1-2> >’ /tmp/llvm-16/llvm/include/llvm/Transforms/IPO/Attributor.h:1137:32: error: but 2 required ``` The 17.x and main branches have more failures, e.g. ``` llvm/lib/Transforms/Vectorize/LoopVectorize.cpp: `error: cannot decompose class type ‘std::pair<llvm::Value*, const llvm::SCEV*>’: ...` ``` We probably should just give up 7.1 and say that GCC<=7.3 is unsupported. There is evidence that GCC 7.4 works. I have verified that GCC 7.5 is able to build `check-{llvm,clang,clang-tools,lldb,lld,polly,mlir,bolt}`, but not flang due to at least `flang/Common/enum-class.h` and a `<charconv`> in a unittest. Link: https://discourse.llvm.org/t/require-gcc-7-5-as-gcc-7-3-cannot-build-llvm/72310 Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D156286
2023-07-15[docs] GettingStarted.rst cmake should reference buildFarid Zakaria1-3/+3
The next sections in GettingStarted assume you are still in the root directory llvm-project when using ninja. Make the `cmake --build` command match it as well. Note: I am a new cmake user and this confused me. Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D153727
2023-05-27Reland "[CMake] Bumps minimum version to 3.20.0.Mark de Wever1-1/+1
This reverts commit d763c6e5e2d0a6b34097aa7dabca31e9aff9b0b6. Adds the patch by @hans from https://github.com/llvm/llvm-project/issues/62719 This patch fixes the Windows build. d763c6e5e2d0a6b34097aa7dabca31e9aff9b0b6 reverted the reviews D144509 [CMake] Bumps minimum version to 3.20.0. This partly undoes D137724. This change has been discussed on discourse https://discourse.llvm.org/t/rfc-upgrading-llvms-minimum-required-cmake-version/66193 Note this does not remove work-arounds for older CMake versions, that will be done in followup patches. D150532 [OpenMP] Compile assembly files as ASM, not C Since CMake 3.20, CMake explicitly passes "-x c" (or equivalent) when compiling a file which has been set as having the language C. This behaviour change only takes place if "cmake_minimum_required" is set to 3.20 or newer, or if the policy CMP0119 is set to new. Attempting to compile assembly files with "-x c" fails, however this is workarounded in many cases, as OpenMP overrides this with "-x assembler-with-cpp", however this is only added for non-Windows targets. Thus, after increasing cmake_minimum_required to 3.20, this breaks compiling the GNU assembly for Windows targets; the GNU assembly is used for ARM and AArch64 Windows targets when building with Clang. This patch unbreaks that. D150688 [cmake] Set CMP0091 to fix Windows builds after the cmake_minimum_required bump The build uses other mechanism to select the runtime. Fixes #62719 Reviewed By: #libc, Mordante Differential Revision: https://reviews.llvm.org/D151344
2023-05-17Revert "Reland "[CMake] Bumps minimum version to 3.20.0.""Nico Weber1-1/+1
This reverts commit 65429b9af6a2c99d340ab2dcddd41dab201f399c. Broke several projects, see https://reviews.llvm.org/D144509#4347562 onwards. Also reverts follow-up commit "[OpenMP] Compile assembly files as ASM, not C" This reverts commit 4072c8aee4c89c4457f4f30d01dc9bb4dfa52559. Also reverts fix attempt "[cmake] Set CMP0091 to fix Windows builds after the cmake_minimum_required bump" This reverts commit 7d47dac5f828efd1d378ba44a97559114f00fb64.
2023-05-13Reland "[CMake] Bumps minimum version to 3.20.0."Mark de Wever1-1/+1
The owner of the last two failing buildbots updated CMake. This reverts commit e8e8707b4aa6e4cc04c0cffb2de01d2de71165fc.
2023-05-06Revert "Reland "[CMake] Bumps minimum version to 3.20.0.""Mark de Wever1-1/+1
Unfortunatly not all buildbots are updated. This reverts commit ffb807ab5375b3f78df198dc5d4302b3b552242f.
2023-05-06Reland "[CMake] Bumps minimum version to 3.20.0."Mark de Wever1-1/+1
All build bots should be updated now. This reverts commit 44d38022ab29a3156349602733b3459df5beef93.
2023-04-19[docs] Fix the CMAKE_BUILD_TYPE option in the cmake command in ↵terrydang1-1/+1
GettingStarted.rst The cmake command contained a duplicate CMAKE_BUILD_TYPE option in the section "Compiling the LLVM Suite Source Code".
2023-04-15Revert "Revert "Revert "[CMake] Bumps minimum version to 3.20.0."""Mark de Wever1-1/+1
This reverts commit 1ef4c3c859728008cf707cad8d67f45ae5070ae1. Two buildbots still haven't been updated.
2023-04-15Revert "Revert "[CMake] Bumps minimum version to 3.20.0.""Mark de Wever1-1/+1
This reverts commit 92523a35a827539db8557bbc3ecab7f9ea3f6ade. Reland to see whether CIs are updated.
2023-04-06[Docs][typo] Done the required fix for the #61690aabhinavg1-1/+1
Differential Revision: https://reviews.llvm.org/D146898
2023-03-18Revert "Reland "[CMake] Bumps minimum version to 3.20.0.""Mark de Wever1-1/+1
This reverts commit a72165e5df59032cdd54dcb18155f2630d73abd1. Some buildbots have not been updated yet.
2023-03-18Reland "[CMake] Bumps minimum version to 3.20.0."Mark de Wever1-1/+1
This reverts commit 92523a35a827539db8557bbc3ecab7f9ea3f6ade. Test whether all CI runners are updated.
2023-03-09[docs] Mention LLVM_USE_LINKER/LLVM_PARALLEL_{COMPILE,LINK}_JOBS in ↵Arthur Eubanks1-0/+10
GettingStarted As requested in D145413. Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D145714
2023-03-08[docs] Update README and GettingStartedArthur Eubanks1-27/+37
Funnel fetching and building LLVM instructions into GettingStarted. Modernize the build steps a little. Remove comments saying CMAKE_BUILD_TYPE defaults to Debug as that's not true anymore (must explicitly pass it). Reviewed By: MaskRay, hans Differential Revision: https://reviews.llvm.org/D145413
2023-03-04Revert "[CMake] Bumps minimum version to 3.20.0."Mark de Wever1-1/+1
Some build bots have not been updated to the new minimal CMake version. Reverting for now and ping the buildbot owners. This reverts commit 44c6b905f8527635e49bb3ea97dea315f92d38ec.
2023-03-04[CMake] Bumps minimum version to 3.20.0.Mark de Wever1-1/+1
This partly undoes D137724. This change has been discussed on discourse https://discourse.llvm.org/t/rfc-upgrading-llvms-minimum-required-cmake-version/66193 Note this does not remove work-arounds for older CMake versions, that will be done in followup patches. Reviewed By: mehdi_amini, MaskRay, ChuanqiXu, to268, thieta, tschuett, phosek, #libunwind, #libc_vendors, #libc, #libc_abi, sivachandra, philnik, zibi Differential Revision: https://reviews.llvm.org/D144509
2023-01-24[llvm][docs] Fix indentation of item list. [NFCI]Francesco Petrogalli1-2/+2
This fixes the rendering of the items at https://llvm.org/docs/GettingStarted.html#stand-alone-builds Differential Revision: https://reviews.llvm.org/D142457
2023-01-16[docs] Expand example on stand-alone builds.Francesco Petrogalli1-7/+40
1. Make explicit that the folder where to build a subproject in stand-alone mode can not be the same folder where LLVM was build. 2. Add a cut 'n paste example for building stand-alone `clang`. Differential Revision: https://reviews.llvm.org/D141825
2023-01-05Remove documentation about the Go bindingsAaron Ballman1-1/+1
We removed the Go bindings in https://reviews.llvm.org/D135436 but missed documentation that talks about the bindings.
2022-12-24[Doc] Replace PYTHON_EXECUTABLE with Python3_EXECUTABLEeopXD1-1/+1
As topic, the variable to specify the python executable now should be this. This is probably something that was left out in D78762. Reviewed By: JDevlieghere Differential Revision: https://reviews.llvm.org/D140652
2022-11-11docs: add instructions for stand-alone builds of lldTom Stellard1-0/+1
Reviewed By: kwk, MaskRay Differential Revision: https://reviews.llvm.org/D124405
2022-11-10docs: Add instructions for stand-alone builds of clangTom Stellard1-0/+52
More sub-projects will be added to the table once they have been verified to be buildable in stand-alone mode. Reviewed By: MaskRay, mgorny Differential Revision: https://reviews.llvm.org/D123968
2022-10-28[llvm] Fix minimum Apple Clang requirementKadir Cetinkaya1-1/+1
This was stated as 9.3, but as pointed out in https://discourse.llvm.org/t/rfc-bump-minimal-requirements-apple-clang-9-3-10-0-0-before-4th-tue-in-january/66156/7?u=kadircet 9.3 doesn't exist, hence this was effectively 10.0. This patch merely reflects the reality more closely. Differential Revision: https://reviews.llvm.org/D136609
2022-07-07[docs] Move code contribution from GettingStarted.rst to Contributing.rstFangrui Song1-103/+1
For code contribution, GettingStarted.rst duplicates information in Contributing.rst. The dedicated Contributing.rst is a better place for code contribution, so move the content there. Notes: * D41665 added `Contributing.rst` * D110976 mentioned `git cherry-pick e3659d43d8911e91739f3b0c5935598bceb859aa` workaround Reviewed By: cjdb, fhahn, nickdesaulniers Differential Revision: https://reviews.llvm.org/D129255
2022-05-04[CMake] Make omitting CMAKE_BUILD_TYPE an errorTobias Hieta1-4/+4
After a lot of discussion in this diff the consensus was that it is really hard to guess the users intention with their LLVM build. Instead of trying to guess if Debug or Release is the correct default option we opted for just not specifying CMAKE_BUILD_TYPE a error. Discussion on discourse here: https://discourse.llvm.org/t/rfc-select-a-better-linker-by-default-or-warn-about-using-bfd Reviewed By: hans, mehdi_amini, aaron.ballman, jhenderson, MaskRay, awarzynski Differential Revision: https://reviews.llvm.org/D124153