Skip to content

Commit 935d8ab

Browse files
authored
Update README.md build instructions to be closer to ci build instructions (#332)
1 parent 0f406da commit 935d8ab

File tree

1 file changed

+30
-25
lines changed

1 file changed

+30
-25
lines changed

README.md

Lines changed: 30 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
[![Anaconda-Server Badge](https://anaconda.org/conda-forge/cppinterop/badges/downloads.svg)](https://github.com/conda-forge/cppinterop-feedstock)
1212

1313

14-
CppInterOp exposes API from [Clang](http://clang.llvm.org/) and [LLVM](https://llvm.org) in a backward compatibe way. The API support downstream tools that utilize interactive C++ by using the compiler as a service. That is, embed Clang and LLVM as a libraries in their codebases. The API are designed to be minimalistic and aid non-trivial tasks such as language interoperability on the fly. In such scenarios CppInterOp can be used to provide the necessary introspection information to the other side helping the language cross talk.
14+
CppInterOp exposes API from [Clang](http://clang.llvm.org/) and [LLVM](https://llvm.org) in a backward compatible way. The API support downstream tools that utilize interactive C++ by using the compiler as a service. That is, embed Clang and LLVM as a libraries in their codebases. The API are designed to be minimalistic and aid non-trivial tasks such as language interoperability on the fly. In such scenarios CppInterOp can be used to provide the necessary introspection information to the other side helping the language cross talk.
1515

1616

1717
#### [Installation](#build-instructions-for-linux) | [Documentation](https://cppinterop.readthedocs.io/en/latest/index.html) | [CppInterOp API Documentation](https://cppinterop.readthedocs.io/en/latest/build/html/index.html)
@@ -77,9 +77,9 @@ git clone --depth=1 https://github.com/compiler-research/cppyy-backend.git
7777
```
7878

7979
#### Setup Clang-REPL
80-
Clone the 18.x release of the LLVM project repository.
80+
Clone the 19.x release of the LLVM project repository.
8181
```
82-
git clone --depth=1 --branch release/18.x https://github.com/llvm/llvm-project.git
82+
git clone --depth=1 --branch release/19.x https://github.com/llvm/llvm-project.git
8383
cd llvm-project
8484
```
8585

@@ -101,17 +101,19 @@ command
101101
```
102102
mkdir build
103103
cd build
104-
cmake -DLLVM_ENABLE_PROJECTS=clang \
105-
-DLLVM_TARGETS_TO_BUILD="host;NVPTX" \
106-
-DCMAKE_BUILD_TYPE=Release \
107-
-DLLVM_ENABLE_ASSERTIONS=ON \
108-
-DLLVM_USE_LINKER=lld \
109-
-DCLANG_ENABLE_STATIC_ANALYZER=OFF \
110-
-DCLANG_ENABLE_ARCMT=OFF \
111-
-DCLANG_ENABLE_FORMAT=OFF \
112-
-DCLANG_ENABLE_BOOTSTRAP=OFF \
104+
cmake -DLLVM_ENABLE_PROJECTS="clang;lld" \
105+
-DLLVM_TARGETS_TO_BUILD="WebAssembly;host;NVPTX" \
106+
-DCMAKE_BUILD_TYPE=Release \
107+
-DLLVM_ENABLE_ASSERTIONS=ON \
108+
-DCLANG_ENABLE_STATIC_ANALYZER=OFF \
109+
-DCLANG_ENABLE_ARCMT=OFF \
110+
-DCLANG_ENABLE_FORMAT=OFF \
111+
-DCLANG_ENABLE_BOOTSTRAP=OFF \
112+
-DLLVM_ENABLE_ZSTD=OFF \
113+
-DLLVM_ENABLE_TERMINFO=OFF \
114+
-DLLVM_ENABLE_LIBXML2=OFF \
113115
../llvm
114-
cmake --build . --target clang clang-repl --parallel $(nproc --all)
116+
cmake --build . --target clang clang-repl lld --parallel $(nproc --all)
115117
```
116118
On Windows you would do this by executing the following
117119
```
@@ -155,18 +157,21 @@ cd ..
155157
git clone --depth=1 -b cling-llvm13 https://github.com/root-project/llvm-project.git
156158
mkdir llvm-project/build
157159
cd llvm-project/build
158-
cmake -DLLVM_ENABLE_PROJECTS=clang \
159-
-DLLVM_EXTERNAL_PROJECTS=cling \
160-
-DLLVM_EXTERNAL_CLING_SOURCE_DIR=../../cling \
161-
-DLLVM_TARGETS_TO_BUILD="host;NVPTX" \
162-
-DCMAKE_BUILD_TYPE=Release \
163-
-DLLVM_ENABLE_ASSERTIONS=ON \
164-
-DLLVM_USE_LINKER=lld \
165-
-DCLANG_ENABLE_STATIC_ANALYZER=OFF \
166-
-DCLANG_ENABLE_ARCMT=OFF \
167-
-DCLANG_ENABLE_FORMAT=OFF \
168-
-DCLANG_ENABLE_BOOTSTRAP=OFF \
169-
../llvm
160+
cmake -DLLVM_ENABLE_PROJECTS="clang;lld" \
161+
-DLLVM_EXTERNAL_PROJECTS=cling \
162+
-DLLVM_EXTERNAL_CLING_SOURCE_DIR=../../cling \
163+
-DLLVM_TARGETS_TO_BUILD="WebAssembly;host;NVPTX" \
164+
-DCMAKE_BUILD_TYPE=Release \
165+
-DLLVM_ENABLE_ASSERTIONS=ON \
166+
-DCLANG_ENABLE_STATIC_ANALYZER=OFF \
167+
-DCLANG_ENABLE_ARCMT=OFF \
168+
-DCLANG_ENABLE_FORMAT=OFF \
169+
-DCLANG_ENABLE_BOOTSTRAP=OFF \
170+
-DLLVM_ENABLE_ZSTD=OFF \
171+
-DLLVM_ENABLE_TERMINFO=OFF \
172+
-DLLVM_ENABLE_LIBXML2=OFF \
173+
../llvm
174+
cmake --build . --target lld --parallel $(nproc --all)
170175
cmake --build . --target clang --parallel $(nproc --all)
171176
cmake --build . --target cling --parallel $(nproc --all)
172177
cmake --build . --target gtest_main --parallel $(nproc --all)

0 commit comments

Comments
 (0)