diff --git a/CMakeLists.txt b/CMakeLists.txt index d391805..ff1ab71 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,24 +1,6 @@ cmake_minimum_required(VERSION 3.10) -# 1.0.0 replaced the consumer-sized __AKERR_ERROR_NAMES array with private -# storage. 2.0.0 makes the library thread safe, which is a second ABI break in -# the same places: akerr_last_ignored became thread-local storage, and -# ENSURE_ERROR_READY no longer takes the pool reference that akerr_next_error() -# now takes for it. Consumer code compiled against a 1.x header would -# double-count every reference. Hence the major bump and the SOVERSION, so a -# stale installed libakerror.so cannot be silently paired with new headers. -# 2.0.1 fixes the unhandled-error exit code, which reported success for any -# status whose low byte was zero. It adds akerr_exit() but breaks nothing: the -# soname is unchanged and no existing entry point changed shape. -# 2.0.2 fixes the AKERR_USE_STDLIB=OFF build, which did not compile at all -# (issue #12): untangles the header's includes, defines the AKERR_RUNTIME_HEADER -# freestanding contract, retires PATH_MAX in favor of the AKERR_MAX_ERROR_FNAME_LENGTH -# build option (default unchanged, so this is not an ABI break), and fails the -# configure instead of the build when AKERR_THREADS would resolve to pthread -# under AKERR_USE_STDLIB=OFF. ENSURE_ERROR_READY's pool-exhaustion path now -# calls akerr_exit() instead of exit(1) directly, which changes that exit code -# from 1 to AKERR_EXIT_STATUS_UNREPRESENTABLE (125) -- a deliberate behavior -# change, not an ABI break: no soname move, no entry point changed shape. -project(akerror VERSION 2.0.2 LANGUAGES C) +# Version changelog notices DO NOT GO HERE. Put them in UPGRADING.md instead. +project(akerror VERSION 2.0.3 LANGUAGES C) include(GNUInstallDirs) include(CMakePackageConfigHelpers)