diff --git a/sqlite-jdbc-3.15.1-build.patch b/sqlite-jdbc-3.15.1-build.patch
new file mode 100644
index 0000000..406d4f2
--- /dev/null
+++ b/sqlite-jdbc-3.15.1-build.patch
@@ -0,0 +1,238 @@
+diff -Nru sqlite-jdbc-3.15.1/Makefile sqlite-jdbc-3.15.1.build/Makefile
+--- sqlite-jdbc-3.15.1/Makefile 2016-11-04 21:42:29.000000000 +0100
++++ sqlite-jdbc-3.15.1.build/Makefile 2016-11-06 12:15:06.926445700 +0100
+@@ -3,45 +3,37 @@
+
+ RESOURCE_DIR = src/main/resources
+
+-.phony: all package win32 win64 mac32 linux32 linux64 linux-arm linux-armhf native native-all deploy
++.phony: all package win32 win64 mac32 linux native native-all deploy
+
+ all: jni-header package
+
+ deploy:
+- mvn package deploy -DperformRelease=true
+
+-MVN:=mvn
++
++MVN:=xmvn -o
+ SRC:=src/main/java
+ SQLITE_OUT:=$(TARGET)/$(sqlite)-$(OS_NAME)-$(OS_ARCH)
+-SQLITE_ARCHIVE:=$(TARGET)/$(sqlite)-amal.zip
+-SQLITE_UNPACKED:=$(TARGET)/sqlite-unpack.log
+-SQLITE_AMAL_DIR=$(TARGET)/$(SQLITE_AMAL_PREFIX)
++#SQLITE_ARCHIVE:=$(TARGET)/$(sqlite)-amal.zip
++#SQLITE_UNPACKED:=$(TARGET)/sqlite-unpack.log
++#SQLITE_AMAL_DIR=$(TARGET)/$(SQLITE_AMAL_PREFIX)
+
+-CCFLAGS:= -I$(SQLITE_OUT) -I$(SQLITE_AMAL_DIR) $(CCFLAGS)
++CCFLAGS:= -I$(SQLITE_OUT) $(CCFLAGS) -lsqlite3
+
+ $(SQLITE_ARCHIVE):
+- @mkdir -p $(@D)
+- curl -L --max-redirs 0 -f -o$@ http://www.sqlite.org/2016/$(SQLITE_AMAL_PREFIX).zip || \
+- curl -L --max-redirs 0 -f -o$@ http://www.sqlite.org/2015/$(SQLITE_AMAL_PREFIX).zip || \
+- curl -L --max-redirs 0 -f -o$@ http://www.sqlite.org/2014/$(SQLITE_AMAL_PREFIX).zip || \
+- curl -L --max-redirs 0 -f -o$@ http://www.sqlite.org/2013/$(SQLITE_AMAL_PREFIX).zip || \
+- curl -L --max-redirs 0 -f -o$@ http://www.sqlite.org/$(SQLITE_AMAL_PREFIX).zip || \
+- curl -L --max-redirs 0 -f -o$@ http://www.sqlite.org/$(SQLITE_OLD_AMAL_PREFIX).zip
++
+
+ $(SQLITE_UNPACKED): $(SQLITE_ARCHIVE)
+- unzip -qo $< -d $(TARGET)/tmp.$(version)
+- (mv $(TARGET)/tmp.$(version)/$(SQLITE_AMAL_PREFIX) $(TARGET) && rmdir $(TARGET)/tmp.$(version)) || mv $(TARGET)/tmp.$(version)/ $(TARGET)/$(SQLITE_AMAL_PREFIX)
+- touch $@
+
+
+-$(TARGET)/common-lib/org/sqlite/%.class: src/main/java/org/sqlite/%.java
++
++$(SQLITE_OUT)/org/sqlite/%.class: src/main/java/org/sqlite/%.java
+ @mkdir -p $(@D)
+- $(JAVAC) -source 1.5 -target 1.5 -sourcepath $(SRC) -d $(TARGET)/common-lib $<
++ $(JAVAC) -source 1.6 -target 1.6 -sourcepath $(SRC) -d $(SQLITE_OUT) $<
+
+-jni-header: $(TARGET)/common-lib/NativeDB.h
++jni-header: $(SQLITE_OUT)/NativeDB.h
+
+-$(TARGET)/common-lib/NativeDB.h: $(TARGET)/common-lib/org/sqlite/core/NativeDB.class
+- $(JAVAH) -classpath $(TARGET)/common-lib -jni -o $@ org.sqlite.core.NativeDB
++$(SQLITE_OUT)/NativeDB.h: $(SQLITE_OUT)/org/sqlite/core/NativeDB.class
++ $(JAVAH) -classpath $(SQLITE_OUT) -jni -o $@ org.sqlite.core.NativeDB
+
+ test:
+ mvn test
+@@ -50,35 +42,11 @@
+
+
+ $(SQLITE_OUT)/sqlite3.o : $(SQLITE_UNPACKED)
+- @mkdir -p $(@D)
+- perl -p -e "s/sqlite3_api;/sqlite3_api = 0;/g" \
+- $(SQLITE_AMAL_DIR)/sqlite3ext.h > $(SQLITE_OUT)/sqlite3ext.h
+-# insert a code for loading extension functions
+- perl -p -e "s/^opendb_out:/ if(!db->mallocFailed && rc==SQLITE_OK){ rc = RegisterExtensionFunctions(db); }\nopendb_out:/;" \
+- $(SQLITE_AMAL_DIR)/sqlite3.c > $(SQLITE_OUT)/sqlite3.c
+- cat src/main/ext/*.c >> $(SQLITE_OUT)/sqlite3.c
+- $(CC) -o $@ -c $(CCFLAGS) \
+- -DSQLITE_ENABLE_LOAD_EXTENSION=1 \
+- -DSQLITE_HAVE_ISNAN \
+- -DSQLITE_HAVE_USLEEP \
+- -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT \
+- -DSQLITE_ENABLE_COLUMN_METADATA \
+- -DSQLITE_CORE \
+- -DSQLITE_ENABLE_FTS3 \
+- -DSQLITE_ENABLE_FTS3_PARENTHESIS \
+- -DSQLITE_ENABLE_FTS5 \
+- -DSQLITE_ENABLE_JSON1 \
+- -DSQLITE_ENABLE_RTREE \
+- -DSQLITE_ENABLE_STAT2 \
+- -DSQLITE_THREADSAFE=1 \
+- -DSQLITE_DEFAULT_MEMSTATUS=0 \
+- -DSQLITE_MAX_VARIABLE_NUMBER=250000 \
+- $(SQLITE_FLAGS) \
+- $(SQLITE_OUT)/sqlite3.c
+
+-$(SQLITE_OUT)/$(LIBNAME): $(SQLITE_OUT)/sqlite3.o $(SRC)/org/sqlite/core/NativeDB.c
++
++$(SQLITE_OUT)/$(LIBNAME): $(SQLITE_OUT)/sqlite3.o $(SRC)/org/sqlite/core/NativeDB.c $(SQLITE_OUT)/NativeDB.h
+ @mkdir -p $(@D)
+- $(CC) $(CCFLAGS) -I $(TARGET)/common-lib -c -o $(SQLITE_OUT)/NativeDB.o $(SRC)/org/sqlite/core/NativeDB.c
++ $(CC) $(CCFLAGS) -I $(SQLITE_OUT) -c -o $(SQLITE_OUT)/NativeDB.o $(SRC)/org/sqlite/core/NativeDB.c
+ $(CC) $(CCFLAGS) -o $@ $(SQLITE_OUT)/*.o $(LINKFLAGS)
+ $(STRIP) $@
+
+@@ -88,7 +56,7 @@
+ NATIVE_DLL:=$(NATIVE_DIR)/$(LIBNAME)
+
+ # For cross-compilation, install docker. See also https://github.com/dockcross/dockcross
+-native-all: native win32 win64 linux32 linux64 linux-arm linux-armhf
++native-all: native linux
+
+ native: $(SQLITE_UNPACKED) $(NATIVE_DLL)
+
+@@ -99,33 +67,23 @@
+ cp $< $(NATIVE_TARGET_DIR)/$(LIBNAME)
+
+ win32: $(SQLITE_UNPACKED) jni-header
+- ./docker/dockcross-windows-x86 bash -c 'make clean-native native CROSS_PREFIX=i686-w64-mingw32.static- OS_NAME=Windows OS_ARCH=x86'
+-
+-win64: $(SQLITE_UNPACKED) jni-header
+- ./docker/dockcross-windows-x64 bash -c 'make clean-native native CROSS_PREFIX=x86_64-w64-mingw32.static- OS_NAME=Windows OS_ARCH=x86_64'
+
+-linux32: $(SQLITE_UNPACKED) jni-header
+- docker run -ti -v $$PWD:/work xerial/centos5-linux-x86 bash -c 'make clean-native native OS_NAME=Linux OS_ARCH=x86'
+
+-linux64: $(SQLITE_UNPACKED) jni-header
+- docker run -ti -v $$PWD:/work xerial/centos5-linux-x86_64 bash -c 'make clean-native native OS_NAME=Linux OS_ARCH=x86_64'
++win64: $(SQLITE_UNPACKED) jni-header
+
+-linux-arm: $(SQLITE_UNPACKED) jni-header
+- ./docker/dockcross-armv5 bash -c 'make clean-native native CROSS_PREFIX=arm-linux-gnueabi- OS_NAME=Linux OS_ARCH=arm'
+
+-linux-armhf: $(SQLITE_UNPACKED) jni-header
+- ./docker/dockcross-armv6 bash -c 'make clean-native native CROSS_PREFIX=arm-linux-gnueabihf- OS_NAME=Linux OS_ARCH=armhf'
++linux: $(SQLITE_UNPACKED) jni-header
++ $(MAKE) native OS_NAME=Linux OS_ARCH=$(OS_ARCH)
+
+ sparcv9:
+- $(MAKE) native OS_NAME=SunOS OS_ARCH=sparcv9
++
+
+ # deprecated
+ mac32:
+- $(MAKE) native OS_NAME=Mac OS_ARCH=x86
++
+
+ package: native-all
+- rm -rf target/dependency-maven-plugin-markers
+- $(MVN) package
++
+
+ clean-native:
+ rm -rf $(SQLITE_OUT)
+@@ -138,7 +96,7 @@
+ rm -rf $(TARGET)/{surefire*,testdb.jar*}
+
+ docker-linux64:
+- docker build -f docker/Dockerfile.linux_x86_64 -t xerial/centos5-linux-x86-64 .
++
+
+ docker-linux32:
+- docker build -f docker/Dockerfile.linux_x86 -t xerial/centos5-linux-x86 .
++
+diff -Nru sqlite-jdbc-3.15.1/Makefile.common sqlite-jdbc-3.15.1.build/Makefile.common
+--- sqlite-jdbc-3.15.1/Makefile.common 2016-11-04 21:42:29.000000000 +0100
++++ sqlite-jdbc-3.15.1.build/Makefile.common 2016-11-06 11:58:31.575085824 +0100
+@@ -47,50 +47,24 @@
+
+ # os=Default is meant to be generic unix/linux
+
+-known_targets := Linux-x86 Linux-x86_64 Linux-arm Linux-armhf Mac-x86 Mac-x86_64 FreeBSD-x86_64 OpenBSD-x86_64 Windows-x86 Windows-x86_64 SunOS-sparcv9
++known_targets := Linux Mac-x86 Mac-x86_64 FreeBSD-x86_64 OpenBSD-x86_64 Windows-x86 Windows-x86_64 SunOS-sparcv9
+ target := $(OS_NAME)-$(OS_ARCH)
+
+-ifeq (,$(findstring $(strip $(target)),$(known_targets)))
+- target := Default
++ifeq ($(OS_NAME),Linux)
++ target := $(OS_NAME)
++else
++ target := $(OS_NAME)-$(OS_ARCH)
+ endif
+
+ # cross-compilation toolchain prefix (e.g. "arm-linux-gnueabi-")
+ CROSS_PREFIX :=
+
+-Default_CC := $(CROSS_PREFIX)gcc
+-Default_STRIP := $(CROSS_PREFIX)strip
+-Default_CCFLAGS := -I$(JAVA_HOME)/include -Ilib/inc_linux -Os -fPIC -fvisibility=hidden
+-Default_LINKFLAGS := -shared
+-Default_LIBNAME := libsqlitejdbc.so
+-Default_SQLITE_FLAGS :=
+-
+-Linux-x86_CC := $(CROSS_PREFIX)gcc
+-Linux-x86_STRIP := $(CROSS_PREFIX)strip
+-Linux-x86_CCFLAGS := -I$(JAVA_HOME)/include -Ilib/inc_linux -O2 -fPIC -m32 -fvisibility=hidden
+-Linux-x86_LINKFLAGS := -shared -static-libgcc
+-Linux-x86_LIBNAME := libsqlitejdbc.so
+-Linux-x86_SQLITE_FLAGS :=
+-
+-Linux-x86_64_CC := $(CROSS_PREFIX)gcc
+-Linux-x86_64_STRIP := $(CROSS_PREFIX)strip
+-Linux-x86_64_CCFLAGS := -Ilib/inc_linux -I$(JAVA_HOME)/include -O2 -fPIC -m64 -fvisibility=hidden
+-Linux-x86_64_LINKFLAGS := -shared -static-libgcc
+-Linux-x86_64_LIBNAME := libsqlitejdbc.so
+-Linux-x86_64_SQLITE_FLAGS :=
+-
+-Linux-arm_CC := $(CROSS_PREFIX)gcc
+-Linux-arm_STRIP := $(CROSS_PREFIX)strip
+-Linux-arm_CCFLAGS := -I$(JAVA_HOME)/include -Ilib/inc_linux -O2 -fPIC -mfloat-abi=softfp -mfpu=vfp -fvisibility=hidden
+-Linux-arm_LINKFLAGS := -shared -static-libgcc
+-Linux-arm_LIBNAME := libsqlitejdbc.so
+-Linux-arm_SQLITE_FLAGS :=
+-
+-Linux-armhf_CC := $(CROSS_PREFIX)gcc
+-Linux-armhf_STRIP := $(CROSS_PREFIX)strip
+-Linux-armhf_CCFLAGS := -I$(JAVA_HOME)/include -Ilib/inc_linux -O2 -mfloat-abi=hard -mfpu=vfp -fPIC -fvisibility=hidden
+-Linux-armhf_LINKFLAGS := -shared -static-libgcc
+-Linux-armhf_LIBNAME := libsqlitejdbc.so
+-Linux-armhf_SQLITE_FLAGS :=
++Linux_CC := gcc
++Linux_STRIP := strip
++Linux_CCFLAGS := -I$(JAVA_HOME)/include $(CCFLAGS) -fPIC -fvisibility=hidden
++Linux_LINKFLAGS := -shared -static-libgcc
++Linux_LIBNAME := libsqlitejdbc.so
++Linux_SQLITE_FLAGS :=
+
+ FreeBSD-x86_64_CC := $(CROSS_PREFIX)cc
+ FreeBSD-x86_64_STRIP := $(CROSS_PREFIX)strip
+diff -Nru sqlite-jdbc-3.15.1/pom.xml sqlite-jdbc-3.15.1.build/pom.xml
+--- sqlite-jdbc-3.15.1/pom.xml 2016-11-04 21:42:29.000000000 +0100
++++ sqlite-jdbc-3.15.1.build/pom.xml 2016-11-06 11:54:16.840693425 +0100
+@@ -84,7 +84,7 @@
+ maven-compiler-plugin
+ 3.1
+
+- 1.5
++ 1.6
+ 1.6
+
+
diff --git a/sqlite-jdbc-3.15.1.tar.gz b/sqlite-jdbc-3.15.1.tar.gz
new file mode 100644
index 0000000..aa24a3c
Binary files /dev/null and b/sqlite-jdbc-3.15.1.tar.gz differ
diff --git a/sqlite-jdbc.spec b/sqlite-jdbc.spec
new file mode 100644
index 0000000..94bb79b
--- /dev/null
+++ b/sqlite-jdbc.spec
@@ -0,0 +1,102 @@
+%global debug_package %nil
+Name: sqlite-jdbc
+Version: 3.15.1
+Release: 1
+Summary: SQLite JDBC library
+License: ASL 2.0 and BSD and ISC
+URL: https://github.com/xerial/sqlite-jdbc
+Source0: https://github.com/xerial/sqlite-jdbc/archive/%{version}/sqlite-jdbc-%{version}.tar.gz
+Patch0: sqlite-jdbc-3.15.1-build.patch
+BuildRequires: gcc maven-local mvn(junit:junit) mvn(org.apache.felix:maven-bundle-plugin)
+BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin)
+BuildRequires: mvn(org.sonatype.oss:oss-parent:pom:) sqlite-devel
+%description
+SQLite JDBC, is a library for accessing and
+creating SQLite database files in Java.
+
+%package javadoc
+Summary: Javadoc for %{name}
+BuildArch: noarch
+%description javadoc
+This package contains javadoc for %{name}.
+
+%prep
+%setup -q -n %{name}-%{version}
+find . -name "*.class" -delete
+find . -name "*.jar" ! -name "testdb.jar" -delete
+find -name "*.jnilib" -print -delete
+find -name "*.dll" -print -delete
+find -name "*.so" -print -delete
+find -name "*.h" -print -delete
+rm -r archive/* docker/*
+rm -r src/test/java/org/sqlite/ExtensionTest.java
+sed -i '/ExtensionTest/d' src/test/java/org/sqlite/AllTests.java
+rm -r src/test/java/org/sqlite/TransactionTest.java
+sed -i '/TransactionTest/d' src/test/java/org/sqlite/AllTests.java
+%ifarch %{power64}
+rm -r src/test/java/org/sqlite/SQLiteDataSourceTest.java
+sed -i '/SQLiteDataSourceTest/d' src/test/java/org/sqlite/AllTests.java
+%endif
+%patch0 -p1
+%pom_add_plugin org.apache.maven.plugins:maven-antrun-plugin:1.7 . '
+
+
+ com.sun
+ tools
+ 1.8.0
+
+
+
+
+ compile
+ process-classes
+
+
+
+
+
+
+
+
+
+
+
+ run
+
+
+'
+cp -p src/main/java/org/sqlite/util/OSInfo.java lib/org/sqlite/
+sed -i "s|package org.sqlite.util;|package org.sqlite;|" lib/org/sqlite/OSInfo.java
+%mvn_file org.xerial:%{name} %{name}
+
+%build
+%ifarch %{arm}
+opts='-f'
+%endif
+sed -i 's|$(CCFLAGS) -I|$(CCFLAGS) $(CFLAGS) -I|' Makefile
+CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ;
+sed -i 's|$(CCFLAGS) -o|$(CCFLAGS) $(LDFLAGS) -o|' Makefile
+LDFLAGS="${LDFLAGS:-%__global_ldflags}"; export LDFLAGS;
+%mvn_build $opts -- -Dmaven.test.failure.ignore=true
+
+%install
+%mvn_install
+
+%files -f .mfiles
+%doc CHANGELOG README.md Usage.md
+%license LICENSE* NOTICE
+
+%files javadoc -f .mfiles-javadoc
+%license LICENSE* NOTICE
+
+%changelog
+* Mon Aug 3 2020 Jeffery.Gao - 3.15.1-1
+- Package init
diff --git a/sqlite-jdbc.yaml b/sqlite-jdbc.yaml
new file mode 100644
index 0000000..9410585
--- /dev/null
+++ b/sqlite-jdbc.yaml
@@ -0,0 +1,5 @@
+git_url: https://github.com/xerial/sqlite-jdbc
+version_control: github
+src_repo: xerial/sqlite-jdbc
+tag_prefix: "^"
+seperator: "."