Commit 5fcfada500073ddd4acbfa0b0906e37025b45556

Edward Thomson 2021-11-15T07:45:16

cmake: document CMakeLists.txt hierarchy

diff --git a/CMakeLists.txt b/CMakeLists.txt
index eb137ec..90ecc92 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,5 +1,8 @@
-# CMake build script for the libgit2 project
+# libgit2: the cross-platform, linkable library implementation of git.
 # See `README.md` for build instructions.
+#
+# This top-level CMakeLists.txt sets up configuration options and
+# determines which subprojects to build.
 
 cmake_minimum_required(VERSION 3.5.1)
 
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
index 235e72a..956b038 100644
--- a/examples/CMakeLists.txt
+++ b/examples/CMakeLists.txt
@@ -1,3 +1,5 @@
+# examples: code usage examples of libgit2
+
 file(GLOB SRC_EXAMPLES *.c *.h)
 
 add_executable(lg2 ${SRC_EXAMPLES})
diff --git a/fuzzers/CMakeLists.txt b/fuzzers/CMakeLists.txt
index eaa490f..a2c19ed 100644
--- a/fuzzers/CMakeLists.txt
+++ b/fuzzers/CMakeLists.txt
@@ -1,3 +1,5 @@
+# fuzzers: libFuzzer and standalone fuzzing utilities
+
 if(BUILD_FUZZERS AND NOT USE_STANDALONE_FUZZERS)
 	set(CMAKE_REQUIRED_FLAGS "-fsanitize=fuzzer-no-link")
 	add_c_flag(-fsanitize=fuzzer)
diff --git a/src/libgit2/CMakeLists.txt b/src/libgit2/CMakeLists.txt
index 3dac83d..52fdf0d 100644
--- a/src/libgit2/CMakeLists.txt
+++ b/src/libgit2/CMakeLists.txt
@@ -1,3 +1,6 @@
+# libgit2: the shared library: this CMakeLists.txt compiles the core
+# git library functionality.
+
 add_library(git2internal OBJECT)
 set_target_properties(git2internal PROPERTIES C_STANDARD 90)
 set_target_properties(git2internal PROPERTIES C_EXTENSIONS OFF)
diff --git a/src/util/CMakeLists.txt b/src/util/CMakeLists.txt
index ea2df0a..b725d54 100644
--- a/src/util/CMakeLists.txt
+++ b/src/util/CMakeLists.txt
@@ -54,6 +54,7 @@ list(SORT UTIL_SRC_HASH)
 #
 
 target_sources(util PRIVATE ${UTIL_SRC} ${UTIL_SRC_OS} ${UTIL_SRC_HASH})
+ide_split_sources(util)
 
 target_include_directories(util PRIVATE ${UTIL_INCLUDES} ${LIBGIT2_DEPENDENCY_INCLUDES} PUBLIC ${libgit2_SOURCE_DIR}/include)
 target_include_directories(util SYSTEM PRIVATE ${LIBGIT2_SYSTEM_INCLUDES})
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index f293c15..33dfd0a 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -1,3 +1,5 @@
+# tests: the unit and integration tests for libgit2
+
 set(Python_ADDITIONAL_VERSIONS 3 2.7)
 find_package(PythonInterp)