diff --git a/.devcontainer b/.devcontainer
index 0ac4bac..17d3437 160000
--- a/.devcontainer
+++ b/.devcontainer
@@ -1 +1 @@
-Subproject commit 0ac4bac86f2f25110dcf941fb94820bd79c061ec
+Subproject commit 17d3437ca667732898333222c9531f4fbc7e69d9
diff --git a/.github/release-tag.json b/.github/release-tag.json
new file mode 100644
index 0000000..ffac788
--- /dev/null
+++ b/.github/release-tag.json
@@ -0,0 +1,4 @@
+{
+ "message": "xpro version 3.38.2.4 tag",
+ "tag": "xpv3.38.2.4"
+}
diff --git a/.github/release-tag.yml b/.github/release-tag.yml
deleted file mode 100644
index 5334e57..0000000
--- a/.github/release-tag.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-tag: xpv3.38.2.3
-message: "xpro version 3.38.2.3 tag"
diff --git a/.github/workflows/xpbuild.yml b/.github/workflows/xpbuild.yml
index 76b2701..a9754d1 100644
--- a/.github/workflows/xpbuild.yml
+++ b/.github/workflows/xpbuild.yml
@@ -14,11 +14,15 @@ jobs:
contents: read
pull-requests: write
packages: write
- uses: externpro/externpro/.github/workflows/build-linux.yml@25.07.6
- secrets: inherit
+ uses: externpro/externpro/.github/workflows/build-linux.yml@26.01.2
+ secrets:
+ automation_token: ${{ secrets.GHCR_TOKEN }}
+ with: {}
macos:
- uses: externpro/externpro/.github/workflows/build-macos.yml@25.07.6
+ uses: externpro/externpro/.github/workflows/build-macos.yml@26.01.2
secrets: inherit
+ with: {}
windows:
- uses: externpro/externpro/.github/workflows/build-windows.yml@25.07.6
+ uses: externpro/externpro/.github/workflows/build-windows.yml@26.01.2
secrets: inherit
+ with: {}
diff --git a/.github/workflows/xprelease.yml b/.github/workflows/xprelease.yml
index a2eb282..0894da4 100644
--- a/.github/workflows/xprelease.yml
+++ b/.github/workflows/xprelease.yml
@@ -34,7 +34,7 @@ jobs:
# Upload build artifacts as release assets
release-from-build:
if: github.event_name == 'workflow_dispatch'
- uses: externpro/externpro/.github/workflows/release-from-build.yml@25.07.6
+ uses: externpro/externpro/.github/workflows/release-from-build.yml@26.01.2
with:
workflow_run_url: ${{ github.event.inputs.workflow_run_url }}
permissions:
diff --git a/.github/workflows/xptag.yml b/.github/workflows/xptag.yml
index b5ce950..17ce102 100644
--- a/.github/workflows/xptag.yml
+++ b/.github/workflows/xptag.yml
@@ -8,9 +8,9 @@ on:
jobs:
tag:
if: ${{ github.event.pull_request.merged == true && github.event.pull_request.base.ref == 'xpro' && contains(github.event.pull_request.labels.*.name, 'release:tag') }}
- uses: externpro/externpro/.github/workflows/tag-release.yml@25.07.6
+ uses: externpro/externpro/.github/workflows/tag-release.yml@26.01.2
with:
merge_sha: ${{ github.event.pull_request.merge_commit_sha }}
pr_number: ${{ github.event.pull_request.number }}
secrets:
- workflow_write_token: ${{ secrets.XPUPDATE_TOKEN }}
+ automation_token: ${{ secrets.XPRO_TOKEN }}
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 470c0d5..fdd026c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,5 +1,4 @@
-cmake_minimum_required(VERSION 3.31)
-set(CMAKE_PROJECT_TOP_LEVEL_INCLUDES .devcontainer/cmake/xproinc.cmake)
+cmake_minimum_required(VERSION 4.3)
project(SQLite3
VERSION 3.38.2
LANGUAGES C
@@ -7,24 +6,6 @@ project(SQLite3
include(GNUInstallDirs)
-#------------------------------------------------------------------------------
-# externpro
-set(targetsFile ${PROJECT_NAME}Config)
-if(DEFINED XP_NAMESPACE)
- xpExternPackage(NAMESPACE ${XP_NAMESPACE} ALIAS_NAMESPACE SQLite
- TARGETS_FILE ${targetsFile} LIBRARIES ${PROJECT_NAME}
- BASE ${CMAKE_PROJECT_VERSION} XPDIFF "patch" FIND_THREADS
- WEB "https://www.sqlite.org/index.html 'SQLite website'" UPSTREAM "github.com/azadkuh/sqlite-amalgamation"
- DESC "C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine"
- LICENSE "[SQLite](https://www.sqlite.org/copyright.html 'public domain dedication - no license required')"
- )
- set(CMAKE_NAMESPACE ${XP_NAMESPACE})
-else()
- set(debugPostfix DEBUG_POSTFIX d)
- set(CMAKE_NAMESPACE SQLite)
- set(CMAKE_INSTALL_CMAKEDIR cmake)
-endif()
-
#------------------------------------------------------------------------------
# build options and optional modules:
option(SQLITE_ENABLE_COLUMN_METADATA "enables column metadata" OFF)
@@ -55,6 +36,10 @@ endif()
#------------------------------------------------------------------------------
+if(NOT COMMAND xpExternPackage)
+ set(debugPostfix DEBUG_POSTFIX d)
+endif()
+
# SQLite3 as static library:
add_library(${PROJECT_NAME} STATIC sqlite3.c)
set_target_properties(${PROJECT_NAME} PROPERTIES
@@ -115,6 +100,24 @@ if(SQLITE_ENABLE_MATH_FUNCTIONS)
endif()
endif()
+#------------------------------------------------------------------------------
+# externpro
+set(targetsFile ${PROJECT_NAME}-targets)
+if(COMMAND xpExternPackage)
+ xpExternPackage(TARGETS_FILE ${targetsFile}
+ FIND_XPRO_CMAKE CREATE_ALIASES ALIAS_NAMESPACE SQLite
+ EXE shell_app LIBRARIES ${PROJECT_NAME} DEFAULT_TARGETS ${PROJECT_NAME}
+ BASE ${CMAKE_PROJECT_VERSION} XPDIFF "patch"
+ WEB "https://www.sqlite.org/index.html 'SQLite website'" UPSTREAM "github.com/azadkuh/sqlite-amalgamation"
+ DESC "C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine"
+ LICENSE "[SQLite](https://www.sqlite.org/copyright.html 'public domain dedication - no license required')"
+ )
+ set(CMAKE_NAMESPACE ${PROJECT_NAME})
+else()
+ set(CMAKE_NAMESPACE SQLite)
+ set(CMAKE_INSTALL_CMAKEDIR cmake)
+endif()
+
#------------------------------------------------------------------------------
configure_file(sqlite3_config.h.in ${CMAKE_BINARY_DIR}/sqlite3_config.h)
diff --git a/CMakePresets.json b/CMakePresets.json
index f82cfdd..28efa39 100644
--- a/CMakePresets.json
+++ b/CMakePresets.json
@@ -3,6 +3,7 @@
"include": [
".devcontainer/cmake/presets/xpLinuxNinja.json",
".devcontainer/cmake/presets/xpDarwinNinja.json",
- ".devcontainer/cmake/presets/xpWindowsVs2022.json"
+ ".devcontainer/cmake/presets/xpMswVs2022.json",
+ ".devcontainer/cmake/presets/xpMswVs2026.json"
]
}
diff --git a/CMakePresetsBase.json b/CMakePresetsBase.json
index 139de06..c812a5a 100644
--- a/CMakePresetsBase.json
+++ b/CMakePresetsBase.json
@@ -6,8 +6,8 @@
"hidden": true,
"binaryDir": "${sourceDir}/_bld-${presetName}",
"cacheVariables": {
- "XP_NAMESPACE": "xpro",
- "BUILD_SHELL": "ON"
+ "BUILD_SHELL": "ON",
+ "CMAKE_EXPERIMENTAL_GENERATE_SBOM": "ca494ed3-b261-4205-a01f-603c95e4cae0"
}
}
],
diff --git a/xprodeps.md b/xprodeps.md
new file mode 100644
index 0000000..a2826a5
--- /dev/null
+++ b/xprodeps.md
@@ -0,0 +1,22 @@
+# SQLite3 dependencies
+
+|project|license [^_l]|description [dependencies]|version|source|diff [^_d]|
+|-------|-------------|--------------------------|-------|------|----------|
+|[SQLite3](https://www.sqlite.org/index.html 'SQLite website')|[SQLite](https://www.sqlite.org/copyright.html 'public domain dedication - no license required')|C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine [deps: _Threads_]| |[upstream](https://github.com/azadkuh/sqlite-amalgamation 'github.com/azadkuh/sqlite-amalgamation')| [patch]|
+|[Threads](https://cmake.org/cmake/help/latest/module/FindThreads.html)|[LGPL-2.1-or-later](https://spdx.org/licenses/LGPL-2.1-or-later.html 'GNU Lesser General Public License v2.1 or later')|Finds and determines the thread library of the system for multithreading support|[xpv1.0.4](https://github.com/externpro/Threads/releases/tag/xpv1.0.4 'release')|[repo](https://github.com/externpro/Threads 'github.com/externpro/Threads')|[diff](https://github.com/externpro/Threads/compare/v0...xpv1.0.4 'github.com/externpro/Threads/compare/v0...xpv1.0.4') [bin]|
+
+
+
+Dependency version check: all 1 parent-manifest versions match pinned versions.
+
+|diff |description|
+|------|-----------|
+|patch |diff modifies/patches existing cmake|
+|intro |diff introduces cmake|
+|auto |diff adds cmake to replace autotools/configure/make|
+|native|diff adds cmake but uses existing build system|
+|bin |diff adds cmake to repackage binaries built elsewhere|
+|fetch |diff adds cmake and utilizes FetchContent|
+
+[^_l]: see [SPDX License List](https://spdx.org/licenses/ '') for a list of commonly found licenses
+[^_d]: see table above with description of diff
diff --git a/xprodeps.svg b/xprodeps.svg
new file mode 100644
index 0000000..63e3338
--- /dev/null
+++ b/xprodeps.svg
@@ -0,0 +1,30 @@
+
+
+
+
+