build(cmake)!: move CMakeLists.txt to the source root

This commit is contained in:
kilo52 2025-09-06 10:31:56 +02:00 committed by Amaan Qureshi
parent 5528cfee17
commit d1160cb820
5 changed files with 15 additions and 15 deletions

View file

@ -175,7 +175,7 @@ jobs:
if: ${{ matrix.platform == 'windows-x64' }}
shell: msys2 {0}
run: |
cmake -G Ninja -S lib -B build/static \
cmake -G Ninja -S . -B build/static \
-DBUILD_SHARED_LIBS=OFF \
-DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_COMPILE_WARNING_AS_ERROR=ON \
@ -184,7 +184,7 @@ jobs:
cmake --build build/static
rm -rf build/static
cmake -G Ninja -S lib -B build/shared \
cmake -G Ninja -S . -B build/shared \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_COMPILE_WARNING_AS_ERROR=ON \
@ -225,14 +225,14 @@ jobs:
- name: Build C library (CMake)
if: ${{ !matrix.use-cross }}
run: |
cmake -S lib -B build/static \
cmake -S . -B build/static \
-DBUILD_SHARED_LIBS=OFF \
-DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_COMPILE_WARNING_AS_ERROR=ON \
-DTREE_SITTER_FEATURE_WASM=$WASM
cmake --build build/static --verbose
cmake -S lib -B build/shared \
cmake -S . -B build/shared \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_COMPILE_WARNING_AS_ERROR=ON \

View file

@ -11,7 +11,7 @@ on:
paths:
- lib/include/tree_sitter/api.h
- lib/binding_rust/bindings.rs
- lib/CMakeLists.txt
- CMakeLists.txt
jobs:
check-wasm-exports:

View file

@ -11,15 +11,15 @@ option(TREE_SITTER_FEATURE_WASM "Enable the Wasm feature" OFF)
option(AMALGAMATED "Build using an amalgamated source" OFF)
if(AMALGAMATED)
set(TS_SOURCE_FILES "${PROJECT_SOURCE_DIR}/src/lib.c")
set(TS_SOURCE_FILES "${PROJECT_SOURCE_DIR}/lib/src/lib.c")
else()
file(GLOB TS_SOURCE_FILES src/*.c)
list(REMOVE_ITEM TS_SOURCE_FILES "${PROJECT_SOURCE_DIR}/src/lib.c")
file(GLOB TS_SOURCE_FILES lib/src/*.c)
list(REMOVE_ITEM TS_SOURCE_FILES "${PROJECT_SOURCE_DIR}/lib/src/lib.c")
endif()
add_library(tree-sitter ${TS_SOURCE_FILES})
target_include_directories(tree-sitter PRIVATE src src/wasm PUBLIC include)
target_include_directories(tree-sitter PRIVATE lib/src lib/src/wasm PUBLIC lib/include)
if(MSVC)
target_compile_options(tree-sitter PRIVATE
@ -85,9 +85,9 @@ target_compile_definitions(tree-sitter PRIVATE _POSIX_C_SOURCE=200112L _DEFAULT_
include(GNUInstallDirs)
configure_file(tree-sitter.pc.in "${CMAKE_CURRENT_BINARY_DIR}/tree-sitter.pc" @ONLY)
configure_file(lib/tree-sitter.pc.in "${CMAKE_CURRENT_BINARY_DIR}/tree-sitter.pc" @ONLY)
install(FILES include/tree_sitter/api.h
install(FILES lib/include/tree_sitter/api.h
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/tree_sitter")
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/tree-sitter.pc"
DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")

View file

@ -190,7 +190,7 @@ fn tag_next_version(next_version: &Version) -> Result<()> {
"crates/highlight/Cargo.toml",
"crates/loader/Cargo.toml",
"crates/tags/Cargo.toml",
"lib/CMakeLists.txt",
"CMakeLists.txt",
"lib/Cargo.toml",
"lib/binding_web/package.json",
"lib/binding_web/package-lock.json",
@ -241,7 +241,7 @@ fn update_makefile(next_version: &Version) -> Result<()> {
}
fn update_cmake(next_version: &Version) -> Result<()> {
let cmake = std::fs::read_to_string("lib/CMakeLists.txt")?;
let cmake = std::fs::read_to_string("CMakeLists.txt")?;
let cmake = cmake
.lines()
.map(|line| {
@ -261,7 +261,7 @@ fn update_cmake(next_version: &Version) -> Result<()> {
.join("\n")
+ "\n";
std::fs::write("lib/CMakeLists.txt", cmake)?;
std::fs::write("CMakeLists.txt", cmake)?;
Ok(())
}

View file

@ -15,7 +15,7 @@ stdenv.mkDerivation {
pkg-config
];
sourceRoot = "source/lib";
sourceRoot = "source";
cmakeFlags = [
"-DBUILD_SHARED_LIBS=ON"