| # Maintainer: Alexey Pavlov <alexpux@gmail.com> |
| # Contributor: Renato Silva <br.renatosilva@gmail.com> |
| # Contributor: Brisingr Aerowing <ztgreve@live.com> |
| |
| _realname=sqlite3 |
| pkgbase=mingw-w64-${_realname} |
| pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}" |
| _sqlite_year=2021 |
| _amalgamationver=3350500 |
| _docver=${_amalgamationver} |
| pkgver=3.35.5 |
| pkgrel=1 |
| pkgdesc="A C library that implements an SQL database engine (mingw-w64)" |
| arch=('any') |
| mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64') |
| license=(PublicDomain) |
| url="https://www.sqlite.org" |
| provides=(${MINGW_PACKAGE_PREFIX}-sqlite=${pkgver} |
| ${MINGW_PACKAGE_PREFIX}-sqlite-analyzer=${pkgver} |
| ${MINGW_PACKAGE_PREFIX}-sqlite-docs=${pkgver}) |
| conflicts=(${MINGW_PACKAGE_PREFIX}-sqlite-analyzer) |
| replaces=(${MINGW_PACKAGE_PREFIX}-sqlite-analyzer) |
| depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs" |
| "${MINGW_PACKAGE_PREFIX}-readline" |
| "${MINGW_PACKAGE_PREFIX}-tcl") |
| makedepends=("${MINGW_PACKAGE_PREFIX}-gcc") |
| source=(https://www.sqlite.org/${_sqlite_year}/sqlite-src-${_amalgamationver}.zip |
| https://www.sqlite.org/${_sqlite_year}/sqlite-doc-${_docver}.zip |
| Makefile.ext.in |
| README.md.in |
| LICENSE) |
| sha256sums=('f4beeca5595c33ab5031a920d9c9fd65fe693bad2b16320c3a6a6950e66d3b11' |
| '098257e33eb50254cccd31333b09eeafd5843fdd446e1c856c4b48b758573cb9' |
| '047d1b173657dd19ad00c4bc398a8dd617836b1c2fa08864f5aaee9f781d4366' |
| '5ca42f1f92abfb61bacc9ff60f5836cc56e2ce2af52264f918cb06c3d566d562' |
| '0b76663a90e034f3d7f2af5bfada4cedec5ebc275361899eccc5c18e6f01ff1f') |
| options=('!strip' 'staticlibs' '!buildflags') |
| |
| sqlite_tools="sqlite3_analyzer.exe dbhash.exe sqldiff.exe" |
| |
| prepare() { |
| cd "${srcdir}/sqlite-src-${_amalgamationver}" |
| } |
| |
| build() { |
| test -d ${srcdir}/build-${_amalgamationver}-${MINGW_CHOST} && \ |
| rm -rf ${srcdir}/build-${_amalgamationver}-${MINGW_CHOST} |
| mkdir -p ${srcdir}/build-${_amalgamationver}-${MINGW_CHOST} && \ |
| cd ${srcdir}/build-${_amalgamationver}-${MINGW_CHOST} |
| |
| export lt_cv_deplibs_check_method='pass_all' |
| |
| SQLITE_OPTIONS="\ |
| -DSQLITE_ENABLE_COLUMN_METADATA=1 \ |
| -DSQLITE_USE_MALLOC_H=1 \ |
| -DSQLITE_USE_MSIZE=1 \ |
| -DSQLITE_DISABLE_DIRSYNC=1 \ |
| -DSQLITE_ENABLE_DBSTAT_VTAB=1 \ |
| -DSQLITE_SOUNDEX=1 \ |
| -DSQLITE_ENABLE_MATH_FUNCTIONS=1 \ |
| " |
| |
| CFLAGS+=" -fexceptions -fno-strict-aliasing ${SQLITE_OPTIONS}" |
| |
| ../sqlite-src-${_amalgamationver}/configure -C \ |
| --prefix=${MINGW_PREFIX} \ |
| --host=${MINGW_CHOST} \ |
| --target=${MINGW_CHOST} \ |
| --build=${MINGW_CHOST} \ |
| --enable-threadsafe \ |
| --disable-editline \ |
| --enable-readline \ |
| --enable-all \ |
| --enable-session \ |
| --with-readline-inc=-I${MINGW_PREFIX}/include \ |
| --with-tcl=${MINGW_PREFIX}/lib \ |
| TCLLIBDIR=${MINGW_PREFIX}/lib/sqlite${pkgver} |
| |
| make |
| |
| # build additional tools |
| make $sqlite_tools |
| |
| # build extensions |
| ./config.status --file=ext/misc/Makefile:../Makefile.ext.in |
| make -C ext/misc |
| } |
| |
| check() { |
| cd "${srcdir}/build-${_amalgamationver}-${MINGW_CHOST}" |
| # This test run lasts very loooong ... despite the target name |
| make quicktest || true |
| } |
| |
| package() { |
| cd ${srcdir}/build-${_amalgamationver}-${MINGW_CHOST} |
| make DESTDIR="${pkgdir}" install |
| |
| for t in $sqlite_tools; do |
| install -Dm755 .libs/$t "${pkgdir}${MINGW_PREFIX}/bin/$t" |
| done |
| mv ${pkgdir}${MINGW_PREFIX}/lib/bin/*.* ${pkgdir}${MINGW_PREFIX}/lib/sqlite${pkgver}/ |
| rm -rf ${pkgdir}${MINGW_PREFIX}/lib/bin |
| |
| # Install extensions |
| make -C ext/misc DESTDIR="${pkgdir}" install |
| cat "${srcdir}/README.md.in" | sed \ |
| -e "s|@MINGW_PREFIX@|${MINGW_PREFIX}|g" \ |
| -e "s|@MSYSTEM@|${MSYSTEM}|g;" \ |
| -e "s|@VERSION@|${pkgver}|g;" \ |
| > "${pkgdir}${MINGW_PREFIX}/share/sqlite/extensions/README.md" |
| |
| # Install docs |
| cd ${srcdir}/sqlite-doc-${_docver} |
| mkdir -p ${pkgdir}${MINGW_PREFIX}/share/doc/${_realname} |
| cp -R * ${pkgdir}${MINGW_PREFIX}/share/doc/${_realname}/ |
| |
| install -Dm644 "${srcdir}/LICENSE" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE" |
| } |