# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4 PortSystem 1.0 PortGroup clang_dependency 1.0 name sqlite3 # don't forget to update the checksums for sqlite3-tools when updating sqlite3 version 3.51.0 revision 1 categories databases license public-domain # Stealth update, remove on the next version update # https://trac.macports.org/ticket/73203 dist_subdir ${name}/${version}_1 maintainers {mps @Schamschula} openmaintainer description an embedded SQL database engine long_description SQLite3 is an SQL database engine in a C library. \ Programs that link the SQLite3 library can have SQL \ database access without running a separate RDBMS \ process. The distribution comes with a standalone \ command-line access program (sqlite3) that can be used \ to administer an SQLite3 database and which serves as \ an example of how to use the SQLite3 library. homepage https://www.sqlite.org master_sites ${homepage}/2025 set padded_ver [string range [subst [regsub -all {\.([0-9]+)} "${version}.0.0" {[format %02d \1]}]] 0 6] distname sqlite-autoconf-${padded_ver} checksums rmd160 fab1166dddc33af10bc90fbba53b38480016ced3 \ sha256 42e26dfdd96aa2e6b1b1be5c88b0887f9959093f650d693cb02eb9c36d146ca5 \ size 3207443 depends_lib port:libedit \ port:ncurses \ port:zlib if {${os.platform} eq "darwin" && ${os.major} < 11 && ${cxx_stdlib} eq "libc++"} { # This port is in the dependency chain for clang 3.7 and later clang_dependency.extra_versions 3.7 } if {!${configure.ccache}} { configure.env CCACHE=none } configure.args --enable-threadsafe \ --disable-readline \ --enable-editline \ AWK=/usr/bin/awk build.type gnu livecheck.type regex livecheck.url ${homepage}/news.html livecheck.regex {>Version (3(?:\.\d+)+)<} platform darwin 8 { # See http://trac.macports.org/ticket/32930 for why this is needed. configure.cppflags-append -DSQLITE_WITHOUT_ZONEMALLOC } if {${subport} eq ${name}} { patchfiles no-rpath.patch \ patch-sqlite3_fix-atomic-clang-4.diff # search in worksrcpath for sqlite3.h first -- don't pick up an installed one! configure.cppflags-prepend -DSQLITE_DISABLE_INTRINSIC \ -DSQLITE_ENABLE_COLUMN_METADATA \ -DSQLITE_ENABLE_FTS3_PARENTHESIS \ -DSQLITE_ENABLE_FTS4 \ -DSQLITE_ENABLE_FTS5 \ -DSQLITE_ENABLE_JSON1 \ -DSQLITE_ENABLE_RTREE \ -DSQLITE_SECURE_DELETE \ -DSQLITE_ENABLE_STAT4 \ -DSQLITE_ENABLE_UNLOCK_NOTIFY \ -DSQLITE_SOUNDEX \ -I${worksrcpath} post-build { system -W ${worksrcpath} "install_name_tool -id [shellescape ${prefix}/lib/libsqlite3.0.dylib] libsqlite3.dylib" } post-destroot { xinstall -m 644 ${worksrcpath}/${name}.1 ${destroot}${prefix}/share/man/man1 } } subport ${name}-tcl { depends_lib port:tcl \ port:zlib configure.dir ${worksrcpath}/tea build.dir ${configure.dir} patch.dir ${configure.dir} configure.args --exec-prefix=${prefix} \ --with-tcl=${prefix}/lib configure.cppflags-prepend \ -I${worksrcpath} # first hunk can be replaced with --tcl-stubs on next release # See: https://sqlite.org/forum/forumpost/cd6503fce2 patchfiles patch-tea-Makefile.in.diff } subport ${name}-tools { distname sqlite-src-${padded_ver} description A bundle of command-line tools for managing SQLite \ database files long_description {*}${description}, including the sqldiff program and the \ sqlite3_analyzer program. conflicts sqlcipher-tools checksums rmd160 4ad9c90eee84c57d5a929ab2fe7dceb1d9cd8330 \ sha256 5330719b8b80bf563991ff7a373052943f5357aae76cd1f3367eab845d3a75b7 \ size 14193571 use_zip yes depends_lib port:tcl \ port:zlib patchfiles patch-sqlite3-tools_fix-atomic-clang-4.diff configure.args --with-tcl=${prefix}/lib build.target sqldiff sqlite3_analyzer sqlite3_rsync destroot { xinstall -m 755 ${worksrcpath}/sqldiff ${destroot}${prefix}/bin xinstall -m 755 ${worksrcpath}/sqlite3_analyzer ${destroot}${prefix}/bin xinstall -m 755 ${worksrcpath}/sqlite3_rsync ${destroot}${prefix}/bin } }