update the sources, rebuild

This commit is contained in:
Daniel Lehmann 2024-12-05 14:29:34 +01:00
parent 1b885c2052
commit 3f8366176c
6 changed files with 30 additions and 28 deletions

4
sqlite3/.gitignore vendored
View file

@ -1,2 +1,2 @@
/src/
/sqlite-src*.zip
/sqlite-src-*/
/sqlite-src-*.zip

View file

@ -26,7 +26,7 @@ Ideally, it should run just via `$shell runner.js` from the current directory.
To keep the shell runner and browser results consistent, the benchmark is configured to never use OPFS (Origin Private File System) as the underlying storage layer ("VFS" in SQLite), since that is not available in shells.
It might thus show slightly different performance characteristics compared to the upstream `speedtest1.html` running with OPFS.
## Running the upstream version of the benchmark (in browsers)
## Running the upstream version of the benchmark in browsers
Start a webserver in `build/` that serves with the correct headers (CORS/COOP/COEP) set for Wasm execution.
E.g., this simple Python server will do:

View file

@ -1,11 +1,11 @@
Built on 2024-11-14 14:50:14+01:00
Built on 2024-12-05 14:24:19+01:00
Toolchain versions
emcc (Emscripten gcc/clang-like replacement + linker emulating GNU ld) 3.1.71 (4171ae200b77a6c266b0e1ebb507d61d1ade3501)
wasm-strip 1.0.34
Getting sources from https://sqlite.org/2024/sqlite-src-3470000.zip
Getting sources from https://sqlite.org/2024/sqlite-src-3470100.zip
Building...
Copying files from src/ext/wasm/ into build/
Copying files from sqlite-src-*/ext/wasm/ into build/
Build success

View file

@ -4,7 +4,8 @@ set -e
set -o pipefail
# Cleanup old files.
# rm -rf src/
rm sqlite-src-*.zip
rm -rf sqlite-src-*/
rm -rf build/
BUILD_LOG="$(realpath build.log)"
@ -14,26 +15,27 @@ echo "Toolchain versions" | tee -a "$BUILD_LOG"
emcc --version | head -n1 | tee -a "$BUILD_LOG"
echo -e "wasm-strip $(wasm-strip --version)\n" | tee -a "$BUILD_LOG"
SQLITE_SRC_URL="https://sqlite.org/2024/sqlite-src-3470000.zip"
# Check https://sqlite.org/download.html and update the source link, if needed.
SQLITE_SRC_URL="https://sqlite.org/2024/sqlite-src-3470100.zip"
echo -e "Getting sources from $SQLITE_SRC_URL\n" | tee -a "$BUILD_LOG"
SQLITE_SRC_FILE="$(basename $SQLITE_SRC_URL)"
# curl -o "$SQLITE_SRC_FILE" $SQLITE_SRC_URL
# unzip "$SQLITE_SRC_FILE"
# mv sqlite-src*/ src/
curl -o "$SQLITE_SRC_FILE" $SQLITE_SRC_URL
unzip "$SQLITE_SRC_FILE"
# Paths and information in make output could be sensitive, so don't save in log.
echo "Building..." | tee -a "$BUILD_LOG"
pushd src
pushd sqlite-src-*/
./configure
cd ext/wasm
make dist
popd
echo "Copying files from src/ext/wasm/ into build/" | tee -a "$BUILD_LOG"
echo "Copying files from sqlite-src-*/ext/wasm/ into build/" | tee -a "$BUILD_LOG"
mkdir -p build/{common,jswasm} | tee -a "$BUILD_LOG"
cp src/ext/wasm/jswasm/speedtest1.{js,wasm} build/jswasm/ | tee -a "$BUILD_LOG"
# The next ones are just needed for the browser build.
# cp src/ext/wasm/speedtest1.html build/ | tee -a "$BUILD_LOG"
# cp src/ext/wasm/common/{emscripten.css,SqliteTestUtil.js,testing.css} build/common/ | tee -a "$BUILD_LOG"
cp sqlite-src-*/ext/wasm/jswasm/speedtest1.{js,wasm} build/jswasm/ | tee -a "$BUILD_LOG"
# The next files are only needed for the upstream browser build, not the
# JetStream version, hence don't copy them by default.
# cp sqlite-src-*/ext/wasm/speedtest1.html build/ | tee -a "$BUILD_LOG"
# cp sqlite-src-*/ext/wasm/common/{emscripten.css,SqliteTestUtil.js,testing.css} build/common/ | tee -a "$BUILD_LOG"
echo "Build success" | tee -a "$BUILD_LOG"

View file

@ -26,9 +26,9 @@
/*
** This code was built from sqlite3 version...
**
** SQLITE_VERSION "3.47.0"
** SQLITE_VERSION_NUMBER 3047000
** SQLITE_SOURCE_ID "2024-10-21 16:30:22 03a9703e27c44437c39363d0baf82db4ebc94538a0f28411c85dda156f82636e"
** SQLITE_VERSION "3.47.1"
** SQLITE_VERSION_NUMBER 3047001
** SQLITE_SOURCE_ID "2024-11-25 12:07:48 b95d11e958643b969c47a8e5857f3793b9e69700b8f1469371386369a26e577e"
**
** Using the Emscripten SDK version 3.1.71.
*/
@ -73,7 +73,7 @@ var ENVIRONMENT_IS_SHELL = false;
// --pre-jses are emitted after the Module integration code, so that they can
// refer to Module (if they choose; they can also define Module)
// include: /usr/local/google/home/dlehmann/JetStream/sqlite3/src/ext/wasm/bld/pre-js.speedtest1-vanilla.js
// include: /usr/local/google/home/dlehmann/JetStream/sqlite3/sqlite-src-3470100/ext/wasm/bld/pre-js.speedtest1-vanilla.js
/**
BEGIN FILE: api/pre-js.js
@ -132,7 +132,7 @@ Module['locateFile'] = function(path, prefix) {
/* END FILE: api/pre-js.js, noting that the build process may add a
line after this one to change the above .uri to a build-specific
one. */
// end include: /usr/local/google/home/dlehmann/JetStream/sqlite3/src/ext/wasm/bld/pre-js.speedtest1-vanilla.js
// end include: /usr/local/google/home/dlehmann/JetStream/sqlite3/sqlite-src-3470100/ext/wasm/bld/pre-js.speedtest1-vanilla.js
// Sometimes an existing Module object exists with properties
@ -4400,7 +4400,7 @@ run();
// end include: postamble.js
// include: /usr/local/google/home/dlehmann/JetStream/sqlite3/src/ext/wasm/bld/post-js.speedtest1-vanilla.js
// include: /usr/local/google/home/dlehmann/JetStream/sqlite3/sqlite-src-3470100/ext/wasm/bld/post-js.speedtest1-vanilla.js
/* BEGIN FILE: api/post-js-header.js */
/**
post-js-header.js is to be prepended to other code to create
@ -4461,9 +4461,9 @@ Module.postRun.push(function(Module/*the Emscripten-style module object*/){
/*
** This code was built from sqlite3 version...
**
** SQLITE_VERSION "3.47.0"
** SQLITE_VERSION_NUMBER 3047000
** SQLITE_SOURCE_ID "2024-10-21 16:30:22 03a9703e27c44437c39363d0baf82db4ebc94538a0f28411c85dda156f82636e"
** SQLITE_VERSION "3.47.1"
** SQLITE_VERSION_NUMBER 3047001
** SQLITE_SOURCE_ID "2024-11-25 12:07:48 b95d11e958643b969c47a8e5857f3793b9e69700b8f1469371386369a26e577e"
**
** Using the Emscripten SDK version 3.1.71.
*/
@ -11561,7 +11561,7 @@ globalThis.sqlite3ApiBootstrap.initializers.push(function(sqlite3){
/* END FILE: api/sqlite3-api-glue.c-pp.js */
/* BEGIN FILE: ./bld/sqlite3-api-build-version.js */
globalThis.sqlite3ApiBootstrap.initializers.push(function(sqlite3){
sqlite3.version = {"libVersion": "3.47.0", "libVersionNumber": 3047000, "sourceId": "2024-10-21 16:30:22 03a9703e27c44437c39363d0baf82db4ebc94538a0f28411c85dda156f82636e","downloadVersion": 3470000};
sqlite3.version = {"libVersion": "3.47.1", "libVersionNumber": 3047001, "sourceId": "2024-11-25 12:07:48 b95d11e958643b969c47a8e5857f3793b9e69700b8f1469371386369a26e577e","downloadVersion": 3470100};
});
/* END FILE: ./bld/sqlite3-api-build-version.js */
/* BEGIN FILE: api/sqlite3-api-oo1.c-pp.js */
@ -17606,7 +17606,7 @@ if('undefined' !== typeof Module){ // presumably an Emscripten build
scope. */
})/*postRun.push(...)*/;
/* END FILE: api/post-js-footer.js */
// end include: /usr/local/google/home/dlehmann/JetStream/sqlite3/src/ext/wasm/bld/post-js.speedtest1-vanilla.js
// end include: /usr/local/google/home/dlehmann/JetStream/sqlite3/sqlite-src-3470100/ext/wasm/bld/post-js.speedtest1-vanilla.js
// include: postamble_modularize.js
// In MODULARIZE mode we wrap the generated code in a factory function

Binary file not shown.