Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .devcontainer
Submodule .devcontainer updated 85 files
+65 −0 .github/actions/build-image-context-tag/action.yml
+74 −29 .github/actions/cmake-build/action.yml
+32 −0 .github/actions/compare-cmake-presets/action.yml
+201 −0 .github/actions/compare-cmake-presets/compare.py
+51 −0 .github/actions/docker-push-with-retry/action.yml
+358 −0 .github/actions/externpro-deps-configure/action.yml
+48 −0 .github/actions/externpro-validate/action.yml
+29 −0 .github/actions/gh-retry/gh-retry.sh
+79 −0 .github/actions/ghcr-access/action.yml
+44 −0 .github/actions/git-am-patches/action.yml
+19 −0 .github/actions/git-configure-bot/action.yml
+41 −0 .github/actions/labels-mgmt/action.yml
+91 −0 .github/actions/pr-close-superseded/action.yml
+116 −0 .github/actions/release-tag-intent/action.yml
+0 −8 .github/actions/sync-caller-workflows/action.yml
+241 −508 .github/actions/sync-caller-workflows/sync.sh
+79 −0 .github/docs/README.md
+34 −0 .github/docs/architecture-overview.md
+ .github/docs/assets/org_01_actions-secrets.png
+ .github/docs/assets/org_02_new-secret.png
+ .github/docs/assets/org_03_secrets-populated.png
+ .github/docs/assets/pat_01_new.png
+ .github/docs/assets/pat_02_permissions.png
+ .github/docs/assets/pat_03_generate-token.png
+ .github/docs/assets/pat_04_copy-token.png
+ .github/docs/assets/repo_01_actions-secrets.png
+ .github/docs/assets/repo_02_new-secret.png
+ .github/docs/assets/repo_03_secrets-populated.png
+130 −0 .github/docs/bootstrap.md
+91 −0 .github/docs/build-customizations.md
+111 −0 .github/docs/caller-workflows.md
+50 −0 .github/docs/release-flow.md
+91 −0 .github/docs/reusable-workflows.md
+183 −0 .github/docs/secrets-and-tokens.md
+42 −0 .github/docs/supply-chain.md
+0 −2 .github/release-tag.yml.example
+8 −4 .github/wf-templates/xpbuild.yml
+1 −1 .github/wf-templates/xprelease.yml
+13 −0 .github/wf-templates/xpsync.yml
+2 −2 .github/wf-templates/xptag.yml
+0 −12 .github/wf-templates/xpupdate.yml
+7 −288 .github/workflows/README.md
+146 −39 .github/workflows/build-linux.yml
+8 −9 .github/workflows/build-macos.yml
+24 −10 .github/workflows/build-windows.yml
+353 −0 .github/workflows/init-externpro.yml
+105 −28 .github/workflows/release-from-build.yml
+522 −0 .github/workflows/sync-externpro.yml
+15 −25 .github/workflows/tag-release.yml
+151 −429 .github/workflows/update-externpro.yml
+0 −288 .windsurf/workflows/manifestUpdate.md
+153 −46 README.md
+60 −66 cmake/README.md
+367 −289 cmake/deps.svg
+35 −0 cmake/docs/README.md
+70 −0 cmake/docs/classified-sources.md
+64 −0 cmake/docs/cmakeup.md
+54 −0 cmake/docs/dependency-provider.md
+40 −0 cmake/docs/diff-types.md
+115 −0 cmake/docs/download-and-extract.md
+127 −0 cmake/docs/extern-package.md
+125 −0 cmake/docs/how-to-adopt-externpro.md
+64 −0 cmake/docs/packaging.md
+2 −1 cmake/presets/CMakePresets.json
+4 −1 cmake/presets/xpDarwinNinja.json
+4 −1 cmake/presets/xpLinuxNinja.json
+4 −1 cmake/presets/xpLinuxNinjaTargets.json
+183 −0 cmake/presets/xpMswVs2022.json
+183 −0 cmake/presets/xpMswVs2026.json
+0 −157 cmake/presets/xpWindowsVs2019.json
+0 −180 cmake/presets/xpWindowsVs2022.json
+119 −99 cmake/pros.cmake
+0 −106 cmake/pros.md
+72 −0 cmake/xpcfg.cmake
+1 −0 cmake/xpdeps.cmake.in
+885 −135 cmake/xpfunmac.cmake
+2 −4 cmake/xpuse.cmake.in
+1 −0 cmake/xpusext.cmake.in
+1 −1 funcs.sh
+890 −0 scripts/bootstrap.sh
+89 −0 scripts/cleanup-whitespace.py
+0 −0 scripts/enable-systemctl.sh
+0 −0 scripts/git-lfs-check.sh
+0 −0 scripts/wslresolv.sh
+11 −0 xpro-dev.code-workspace
4 changes: 4 additions & 0 deletions .github/release-tag.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"message": "xpro version 3.38.2.4 tag",
"tag": "xpv3.38.2.4"
}
2 changes: 0 additions & 2 deletions .github/release-tag.yml

This file was deleted.

12 changes: 8 additions & 4 deletions .github/workflows/xpbuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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: {}
2 changes: 1 addition & 1 deletion .github/workflows/xprelease.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/xptag.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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 }}
43 changes: 23 additions & 20 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,30 +1,11 @@
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
)

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)
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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)

Expand Down
3 changes: 2 additions & 1 deletion CMakePresets.json
Original file line number Diff line number Diff line change
Expand Up @@ -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"
]
}
4 changes: 2 additions & 2 deletions CMakePresetsBase.json
Original file line number Diff line number Diff line change
Expand Up @@ -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"
}
}
],
Expand Down
22 changes: 22 additions & 0 deletions xprodeps.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# SQLite3 dependencies

|project|license [^_l]|description [dependencies]|version|source|diff [^_d]|
|-------|-------------|--------------------------|-------|------|----------|
|<a id='SQLite3' />[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]|
|<a id='Threads' />[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]|

![deps](xprodeps.svg 'dependencies')

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
30 changes: 30 additions & 0 deletions xprodeps.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.