Add Circle CI config
diff --git a/.circleci/config.yml b/.circleci/config.yml
new file mode 100644
index 0000000..17360a3
--- /dev/null
+++ b/.circleci/config.yml
@@ -0,0 +1,146 @@
+version: 2.1
+commands:
+  test_sqlite:
+      description: Configure the SQLite build
+      parameters:
+        compiler:
+          type: string
+          default: clang-8
+        defines:
+          type: string
+          default: ""
+        build_args:
+          type: string
+          default: ""
+        test_type:
+          type: string
+          default: test
+      steps:
+      - checkout
+      - run:
+          name: Configure the build
+          command: >-
+            mkdir build &&
+            cd build &&
+            CC=<< parameters.compiler >> ../configure
+            CFLAGS="-w $(pkg-config --cflags icu-uc icu-i18n)
+            << parameters.defines >>"
+            LDFLAGS="$(pkg-config --libs icu-uc icu-i18n) -lm"
+            --enable-amalgamation << parameters.build_args >>
+      - run:
+          name: Test
+          command: cd build && make << parameters.test_type >>
+
+jobs:
+  test_gcc_default:
+    docker:
+    - image: pwnall/sqlite-test:latest
+    steps:
+    - test_sqlite:
+        compiler: gcc-9
+        test_type: fulltest
+
+  test_clang_default:
+    docker:
+    - image: pwnall/sqlite-test:latest
+    steps:
+    - checkout
+    - test_sqlite:
+        compiler: clang-8
+        test_type: fulltest
+
+  test_gcc_chromium:
+    docker:
+    - image: pwnall/sqlite-test:latest
+    steps:
+    - checkout
+    - test_sqlite:
+        compiler: gcc-9
+        test_type: fulltest
+        build_args: "--enable-tcl --enable-threadsafe"
+        defines: >-
+          -DSQLITE_DEFAULT_FILE_PERMISSIONS=0600
+          -DSQLITE_DEFAULT_LOOKASIDE=0,0
+          -DSQLITE_DEFAULT_MEMSTATUS=1
+          -DSQLITE_DEFAULT_PAGE_SIZE=4096
+          -DSQLITE_DEFAULT_PCACHE_INITSZ=0
+          -DSQLITE_DISABLE_FTS3_UNICODE
+          -DSQLITE_DISABLE_FTS4_DEFERRED
+          -DSQLITE_ENABLE_FTS3
+          -DSQLITE_ENABLE_ICU
+          -DSQLITE_HAVE_ISNAN
+          -DSQLITE_LIKE_DOESNT_MATCH_BLOBS
+          -DSQLITE_MAX_MMAP_SIZE=268435456
+          -DSQLITE_MAX_WORKER_THREADS=0
+          -DSQLITE_OMIT_ANALYZE
+          -DSQLITE_OMIT_AUTOINIT
+          -DSQLITE_OMIT_AUTORESET
+          -DSQLITE_OMIT_COMPILEOPTION_DIAGS
+          -DSQLITE_OMIT_COMPLETE
+          -DSQLITE_OMIT_DECLTYPE
+          -DSQLITE_OMIT_DEPRECATED
+          -DSQLITE_OMIT_EXPLAIN
+          -DSQLITE_OMIT_GET_TABLE
+          -DSQLITE_OMIT_LOAD_EXTENSION
+          -DSQLITE_OMIT_LOOKASIDE
+          -DSQLITE_OMIT_PROGRESS_CALLBACK
+          -DSQLITE_OMIT_REINDEX
+          -DSQLITE_OMIT_SHARED_CACHE
+          -DSQLITE_OMIT_TRACE
+          -DSQLITE_OMIT_UPSERT
+          -DSQLITE_OMIT_WINDOWFUNC
+          -DSQLITE_SECURE_DELETE
+          -DSQLITE_TEMP_STORE=3
+          -DSQLITE_USE_ALLOCA
+
+  test_clang_chromium:
+    docker:
+    - image: pwnall/sqlite-test:latest
+    steps:
+    - checkout
+    - test_sqlite:
+        compiler: clang-8
+        test_type: fulltest
+        build_args: "--enable-tcl --enable-threadsafe"
+        defines: >-
+          -DSQLITE_DEFAULT_FILE_PERMISSIONS=0600
+          -DSQLITE_DEFAULT_LOOKASIDE=0,0
+          -DSQLITE_DEFAULT_MEMSTATUS=1
+          -DSQLITE_DEFAULT_PAGE_SIZE=4096
+          -DSQLITE_DEFAULT_PCACHE_INITSZ=0
+          -DSQLITE_DISABLE_FTS3_UNICODE
+          -DSQLITE_DISABLE_FTS4_DEFERRED
+          -DSQLITE_ENABLE_FTS3
+          -DSQLITE_ENABLE_ICU
+          -DSQLITE_HAVE_ISNAN
+          -DSQLITE_LIKE_DOESNT_MATCH_BLOBS
+          -DSQLITE_MAX_MMAP_SIZE=268435456
+          -DSQLITE_MAX_WORKER_THREADS=0
+          -DSQLITE_OMIT_ANALYZE
+          -DSQLITE_OMIT_AUTOINIT
+          -DSQLITE_OMIT_AUTORESET
+          -DSQLITE_OMIT_COMPILEOPTION_DIAGS
+          -DSQLITE_OMIT_COMPLETE
+          -DSQLITE_OMIT_DECLTYPE
+          -DSQLITE_OMIT_DEPRECATED
+          -DSQLITE_OMIT_EXPLAIN
+          -DSQLITE_OMIT_GET_TABLE
+          -DSQLITE_OMIT_LOAD_EXTENSION
+          -DSQLITE_OMIT_LOOKASIDE
+          -DSQLITE_OMIT_PROGRESS_CALLBACK
+          -DSQLITE_OMIT_REINDEX
+          -DSQLITE_OMIT_SHARED_CACHE
+          -DSQLITE_OMIT_TRACE
+          -DSQLITE_OMIT_UPSERT
+          -DSQLITE_OMIT_WINDOWFUNC
+          -DSQLITE_SECURE_DELETE
+          -DSQLITE_TEMP_STORE=3
+          -DSQLITE_USE_ALLOCA
+
+workflows:
+  version: 2
+  test:
+    jobs:
+      - test_gcc_default
+      - test_clang_default
+      - test_clang_chromium
\ No newline at end of file