30 lines
1.3 KiB
Bash
Executable File
30 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
SQLITE=sqlite-autoconf-3330000
|
|
SQLITE_SRC=sqlite_src
|
|
DEMO=sqlite_demo
|
|
SPEEDTEST=speedtest1
|
|
|
|
# Download SQLite source files
|
|
[ ! -d $SQLITE_SRC ] && rm -f $SQLITE.tar.gz && \
|
|
wget http://www.sqlite.org/2020/$SQLITE.tar.gz \
|
|
&& rm -rf $SQLITE && tar xf $SQLITE.tar.gz \
|
|
&& mv $SQLITE $SQLITE_SRC \
|
|
&& rm -f $SQLITE.tar.gz
|
|
[ -e $DEMO ] && rm -f $DEMO
|
|
echo -e "Starting to build $DEMO ..."
|
|
# Note:
|
|
# It is necessary to add '-DSQLITE_MMAP_READWRITE' to enable SQLite to read and write on the file-backed memory directly.
|
|
# This is because when app mmaps a file into memory, following writes on that file will not be reflected on the mapped memory.
|
|
# TODO: We will fix this later.
|
|
occlum-gcc -O2 -I$SQLITE_SRC -DSQLITE_MMAP_READWRITE sqlite_demo.c $SQLITE_SRC/sqlite3.c -lpthread -ldl -o $DEMO
|
|
echo -e "Build $DEMO succeed"
|
|
|
|
[ -e $SPEEDTEST ] && rm -f $SPEEDTEST && rm -f $SPEEDTEST.c
|
|
echo -e "Starting to build $SPEEDTEST ..."
|
|
wget https://raw.githubusercontent.com/sqlite/sqlite/version-3.33.0/test/$SPEEDTEST.c
|
|
occlum-gcc -O6 -I$SQLITE_SRC -DNDEBUG=1 -DSQLITE_MMAP_READWRITE -DSQLITE_ENABLE_MEMSYS5 -DSQLITE_THREADSAFE=2 -DSQLITE_DEFAULT_WORKER_THREADS=32 $SPEEDTEST.c $SQLITE_SRC/sqlite3.c -lpthread -ldl -o $SPEEDTEST
|
|
echo -e "Build $SPEEDTEST succeed"
|
|
|