Skip to content

[lldb][Docs] Add simpler "automatic" cross-compile option to build docs #65311

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Sep 6, 2023

Conversation

DavidSpickett
Copy link
Collaborator

The main way I cross build lldb is to point CMake at an existing host build to get the native tablegen tools. This is what we had documented before.

There is another option where you start from scratch and the host tools are built for you. This patch documents that and explains which one to choose.

Added another arm64 example which uses this. So the frst one is the "automatic" build and the second is the traditional approach.

For ease of copy paste and understanding, I've kept the full command in each section and noted the one difference between them.

Along the way I updated some of the preamble to explain the two approaches and updated some language e.g. removing "just ...". Eveyone's "just" is different, doubly so when cross-compiling.

@DavidSpickett
Copy link
Collaborator Author

This isn't worth documenting but just for review background, you end up with these tools:

$ ls /work/open_source/test_lldb_cross/NATIVE/bin/
clang-tblgen  lldb-tblgen  llvm-config  llvm-lit  llvm-min-tblgen  llvm-tblgen

Previous update to these docs was https://reviews.llvm.org/D158085.

@DavidSpickett
Copy link
Collaborator Author

Also, Github is able to preview the rst which is very nice for review.

The main way I cross build lldb is to point CMake at an existing host
build to get the native tablegen tools. This is what we had
documented before.

There is another option where you start from scratch and the host
tools are built for you. This patch documents that and explains
which one to choose.

Added another arm64 example which uses this. So the frst one
is the "automatic" build and the second is the traditional approach.

For ease of copy paste and understanding, I've kept the full command
in each section and noted the one difference between them.

Along the way I updated some of the preamble to explain the two
approaches and updated some language e.g. removing "just ...".
Eveyone's "just" is different, doubly so when cross-compiling.
Copy link
Member

@bulbazord bulbazord left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! Big fan of removing the "just" everywhere, I definitely agree that everyone's perspective is different;.

@DavidSpickett DavidSpickett merged commit 6c3232b into llvm:main Sep 6, 2023
@DavidSpickett DavidSpickett deleted the lldb-cross-docs branch September 6, 2023 07:48
avillega pushed a commit to avillega/llvm-project that referenced this pull request Sep 11, 2023
…cs (llvm#65311)

The main way I cross build lldb is to point CMake at an existing host
build to get the native tablegen tools. This is what we had documented
before.

There is another option where you start from scratch and the host tools
are built for you. This patch documents that and explains which one to
choose.

Added another arm64 example which uses this. So the frst one is the
"automatic" build and the second is the traditional approach.

For ease of copy paste and understanding, I've kept the full command in
each section and noted the one difference between them.

Along the way I updated some of the preamble to explain the two
approaches and updated some language e.g. removing "just ...". Eveyone's
"just" is different, doubly so when cross-compiling.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants