1#/bin/sh 2# 3# Run this script in a directory with a working makefile to check for 4# compiler warnings in SQLite. 5# 6rm -f sqlite3.c 7make sqlite3.c 8echo '********** No optimizations. Includes FTS4/5, RTREE, JSON1 ***' 9gcc -c -Wshadow -Wall -Wextra -pedantic-errors -Wno-long-long -std=c89 \ 10 -ansi -DHAVE_STDINT_H -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_RTREE \ 11 -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 \ 12 sqlite3.c 13if test x`uname` = 'xLinux'; then 14echo '********** Android configuration ******************************' 15gcc -c \ 16 -DHAVE_USLEEP=1 \ 17 -DSQLITE_HAVE_ISNAN \ 18 -DSQLITE_DEFAULT_JOURNAL_SIZE_LIMIT=1048576 \ 19 -DSQLITE_THREADSAFE=2 \ 20 -DSQLITE_TEMP_STORE=3 \ 21 -DSQLITE_POWERSAFE_OVERWRITE=1 \ 22 -DSQLITE_DEFAULT_FILE_FORMAT=4 \ 23 -DSQLITE_DEFAULT_AUTOVACUUM=1 \ 24 -DSQLITE_ENABLE_MEMORY_MANAGEMENT=1 \ 25 -DSQLITE_ENABLE_FTS3 \ 26 -DSQLITE_ENABLE_FTS3_BACKWARDS \ 27 -DSQLITE_ENABLE_FTS4 \ 28 -DSQLITE_OMIT_BUILTIN_TEST \ 29 -DSQLITE_OMIT_COMPILEOPTION_DIAGS \ 30 -DSQLITE_OMIT_LOAD_EXTENSION \ 31 -DSQLITE_DEFAULT_FILE_PERMISSIONS=0600 \ 32 -DSQLITE_ENABLE_ICU \ 33 -DUSE_PREAD64 \ 34 -Wshadow -Wall -Wextra \ 35 -Os sqlite3.c shell.c 36fi 37echo '********** No optimizations. ENABLE_STAT4. THREADSAFE=0 *******' 38gcc -c -Wshadow -Wall -Wextra -pedantic-errors -Wno-long-long -std=c89 \ 39 -ansi -DSQLITE_ENABLE_STAT4 -DSQLITE_THREADSAFE=0 \ 40 sqlite3.c 41echo '********** Optimized -O3. Includes FTS4/5, RTREE, JSON1 ******' 42gcc -O3 -c -Wshadow -Wall -Wextra -pedantic-errors -Wno-long-long -std=c89 \ 43 -ansi -DHAVE_STDINT_H -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_RTREE \ 44 -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 \ 45 sqlite3.c 46