[libclc] [libclc] Update build instructions in readme (PR #111369)

David Spickett via cfe-commits cfe-commits at lists.llvm.org
Mon Oct 7 07:19:57 PDT 2024


================
@@ -23,29 +23,41 @@ generic implementations of most library requirements, allowing the target
 to override the generic implementation at the granularity of individual
 functions.
 
-libclc currently only supports the PTX target, but support for more
+libclc currently supports NVPTX, AMDGPU and SPIRV targets, but support for more
 targets is welcome.
 
-Compiling and installing with Make
-----------------------------------
+Compiling and installing
+------------------------
 
-$ ./configure.py --with-llvm-config=/path/to/llvm-config && make
-$ make install
+(in the following instructions you can use make or ninja)
 
-Note you can use the DESTDIR Makefile variable to do staged installs.
+For an in-tree build, Clang must also be built at the same time:
 
-$ make install DESTDIR=/path/for/staged/install
+$ cmake <path-to>/llvm-project/llvm/CMakeLists.txt -DLLVM_ENABLE_PROJECTS="libclc;clang" \
+    -DCMAKE_BUILD_TYPE=Release -G Ninja
+$ ninja
 
-Compiling and installing with Ninja
------------------------------------
+Then install:
 
-$ ./configure.py -g ninja --with-llvm-config=/path/to/llvm-config && ninja
 $ ninja install
 
-Note you can use the DESTDIR environment variable to do staged installs.
+Note you can use the DESTDIR Makefile variable to do staged installs.
 
 $ DESTDIR=/path/for/staged/install ninja install
 
+To build against an existing LLVM build or install:
+
+$ cmake <path-to>/llvm-project/libclc/CMakeLists.txt -DCMAKE_BUILD_TYPE=Release \
+  -G Ninja -DLLVM_DIR=$(<path-to>/llvm-config --cmakedir)
+$ ninja
+
+Then install as before.
+
+In both cases, the LLVM used must include the targets you want libclc support for.
----------------
DavidSpickett wrote:

I was going off a few of the 'unknown target spirv-...' messages the build produced. Though it did complete but I thought maybe that's just a bug too.

I'll update this bit.

https://github.com/llvm/llvm-project/pull/111369


More information about the cfe-commits mailing list