Skip to content

Commit 191006a

Browse files
committed
Move cmake targets to more appropriate folder structure
1 parent 6a9d4e0 commit 191006a

File tree

6 files changed

+17
-27
lines changed

6 files changed

+17
-27
lines changed

ACKNOWLEDGEMENTS.md

Lines changed: 0 additions & 24 deletions
This file was deleted.

CLAUDE.md

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
1313

1414
## Architecture
1515

16+
**Header-Only Library**: This is a pure header-only library - all implementation is in `include/skyr/`. No compilation required!
17+
1618
**C++23-Only Implementation**: As of the latest reboot, this library is C++23-only. Previous v1 (C++17) and v2 (C++20) versions have been removed to focus on modern C++ features.
1719

1820
**Modern C++ Features Used**:
@@ -21,7 +23,9 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
2123
- `std::ranges` for range-based algorithms and views (replaces `range-v3`)
2224
- `uni-algo` library for Unicode processing
2325

24-
**Key Advantage**: Minimal external dependencies - only requires `uni-algo` for Unicode support. Everything else (expected, format, ranges) is in the C++23 standard library!
26+
**Key Advantages**:
27+
- **Header-only** - just include and use, no linking required
28+
- **Minimal external dependencies** - only requires `uni-algo` for Unicode support
2529

2630
## Building
2731

@@ -116,6 +120,11 @@ ctest --test-dir _build
116120

117121
## Code Structure
118122

123+
**Directory Layout**:
124+
- `include/skyr/` - All header files (the actual implementation)
125+
- `cmake/targets/` - CMake target definitions (no source code, just build configuration)
126+
- `tests/` - Comprehensive test suite
127+
119128
### Core Components
120129

121130
All components are in the `skyr` namespace under `include/skyr/`:

CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,8 @@ set(libcxx $<AND:${clang},$<BOOL:${skyr_BUILD_WITH_LLVM_LIBCXX}>>)
8080
set(clang_with_gnu_stdlib $<AND:${clang},$<NOT:$<BOOL:${skyr_BUILD_WITH_LLVM_LIBCXX}>>>)
8181
set(msvc $<BOOL:${SKY_CXX_COMPILER_MSVC}>)
8282

83-
add_subdirectory(src)
83+
# Header-only library - target definitions in cmake/targets
84+
add_subdirectory(cmake/targets)
8485

8586
# Testing
8687
if (skyr_BUILD_TESTS)
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,10 @@
33
# (See accompanying file LICENSE_1_0.txt or copy at
44
# http://www.boost.org/LICENSE_1_0.txt)
55

6-
include(skyr-url-functions)
6+
# CMake target definitions for header-only library
7+
# Actual implementation is in include/skyr/
8+
9+
include(${PROJECT_SOURCE_DIR}/cmake/skyr-url-functions.cmake)
710

811
configure_file(
912
version.hpp.in
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
#################################################
22
# skyr-url (C++23)
3+
# Header-only library - no compiled code
34
#################################################
45

56
add_library(skyr-url INTERFACE)

0 commit comments

Comments
 (0)