[MacPorts] #52293: neomutt: update db4, add lmdb, simplify header cache implementation handling
#52293: neomutt: update db4, add lmdb, simplify header cache implementation handling ----------------------+------------------------ Reporter: cal@… | Owner: leonardo@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Keywords: haspatch | Port: neomutt ----------------------+------------------------ Here's a patch that adds a variant for LMDB, updates the DB4 version used to the latest compatible version and removes an unneeded `-L/usr/lib` for the header cache variant. OK to commit? {{{ #!patch Index: Portfile =================================================================== --- Portfile (revision 152935) +++ Portfile (working copy) @@ -5,7 +5,7 @@ PortGroup github 1.0 github.setup neomutt neomutt 20160916 neomutt- -revision 1 +revision 2 categories mail platforms darwin license GPL-2 @@ -52,6 +52,7 @@ --without-gnutls \ --without-gss \ --without-idn \ + --without-ldbm \ --without-qdbm \ --without-regex \ --without-sasl \ @@ -60,8 +61,18 @@ default_variants +idn +imap +pop +ssl -if {![variant_isset db4] && ![variant_isset qdbm] && ![variant_isset tokyocabinet]} { - variant_set gdbm +set hcache_variants {db4 qdbm tokyocabinet gdbm ldbm} +if {[variant_isset headercache]} { + set found no + foreach hcache_impl {db4 qdbm tokyocabinet gdbm ldbm} { + if {[variant_isset $hcache_impl]} { + set found yes + } + } + if {!$found} { + # If no variant was chosen, choose one for the user + variant_set ldbm + } } post-destroot { @@ -73,16 +84,16 @@ variant compress description {Compressed folders} { configure.args-replace --disable-compressed --enable-compressed } -variant db4 conflicts qdbm gdbm tokyocabinet description {Use Berkeley DB database} { +variant db4 conflicts {*}[lsearch -all -inline -not $hcache_variants db4] description {Use Berkeley DB database} { configure.args-replace --without-bdb --with-bdb=${prefix} - configure.cppflags-append "-I${prefix}/include/db44" - configure.ldflags-append "-L${prefix}/lib/db44" - depends_lib-append port:db44 + configure.cppflags-append "-I${prefix}/include/db48" + configure.ldflags-append "-L${prefix}/lib/db48" + depends_lib-append port:db48 } variant debug description {Debugging support} { configure.args-append --enable-debug } -variant gdbm conflicts db4 qdbm tokyocabinet description {Use GNU dbm database} { +variant gdbm conflicts {*}[lsearch -all -inline -not $hcache_variants gdbm] description {Use GNU dbm database} { configure.args-replace --without-gdbm --with-gdbm=${prefix} depends_lib-append port:gdbm } @@ -95,9 +106,8 @@ configure.args-append --with-gpgme-prefix=${prefix} depends_lib-append port:gpgme } -variant headercache conflicts db4 description {Enable header caching (requires gdbm, qdbm, or tokyocabinet)} { +variant headercache description {Enable header caching (requires db4, gdbm, qdbm, ldbm or tokyocabinet)} { configure.args-replace --disable-hcache --enable-hcache - configure.ldflags-append "-L/usr/lib" } variant idn description {Internationalized Domain Name support} { configure.args-replace --without-idn --with-idn=${prefix} @@ -106,13 +116,17 @@ variant imap description {IMAP support} { configure.args-replace --disable-imap --enable-imap } +variant ldbm conflicts {*}[lsearch -all -inline -not $hcache_variants ldbm] description {Use LDBM database} { + configure.args-replace --without-ldbm --with-ldbm=${prefix} + depends_lib-append port:ldbm +} variant nntp description {NNTP support} { configure.args-replace --disable-nntp --enable-nntp } variant pop description {POP support} { configure.args-replace --disable-pop --enable-pop } -variant qdbm conflicts db4 gdbm tokyocabinet description {Use QDBM database} { +variant qdbm conflicts {*}[lsearch -all -inline -not $hcache_variants qdbm] description {Use QDBM database} { configure.args-replace --without-qdbm --with-qdbm=${prefix} depends_lib-append port:qdbm } @@ -130,7 +144,7 @@ configure.args-replace --without-ssl --with-ssl=${prefix} depends_lib-append path:lib/libssl.dylib:openssl } -variant tokyocabinet conflicts db4 gdbm qdbm description {Use Tokyo Cabinet database} { +variant tokyocabinet conflicts {*}[lsearch -all -inline -not $hcache_variants tokyocabinet] description {Use Tokyo Cabinet database} { configure.args-replace --without-tokyocabinet --with- tokyocabinet=${prefix} depends_lib-append port:tokyocabinet } }}} -- Ticket URL: <https://trac.macports.org/ticket/52293> MacPorts <https://www.macports.org/> Ports system for macOS
#52293: neomutt: update db4, add lmdb, simplify header cache implementation handling ----------------------+------------------------ Reporter: cal@… | Owner: leonardo@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: haspatch Port: neomutt | ----------------------+------------------------ Description changed by cal@…: Old description:
Here's a patch that adds a variant for LMDB, updates the DB4 version used to the latest compatible version and removes an unneeded `-L/usr/lib` for the header cache variant.
OK to commit?
{{{ #!patch Index: Portfile =================================================================== --- Portfile (revision 152935) +++ Portfile (working copy) @@ -5,7 +5,7 @@ PortGroup github 1.0
github.setup neomutt neomutt 20160916 neomutt- -revision 1 +revision 2 categories mail platforms darwin license GPL-2 @@ -52,6 +52,7 @@ --without-gnutls \ --without-gss \ --without-idn \ + --without-ldbm \ --without-qdbm \ --without-regex \ --without-sasl \ @@ -60,8 +61,18 @@
default_variants +idn +imap +pop +ssl
-if {![variant_isset db4] && ![variant_isset qdbm] && ![variant_isset tokyocabinet]} { - variant_set gdbm +set hcache_variants {db4 qdbm tokyocabinet gdbm ldbm} +if {[variant_isset headercache]} { + set found no + foreach hcache_impl {db4 qdbm tokyocabinet gdbm ldbm} { + if {[variant_isset $hcache_impl]} { + set found yes + } + } + if {!$found} { + # If no variant was chosen, choose one for the user + variant_set ldbm + } }
post-destroot { @@ -73,16 +84,16 @@ variant compress description {Compressed folders} { configure.args-replace --disable-compressed --enable-compressed } -variant db4 conflicts qdbm gdbm tokyocabinet description {Use Berkeley DB database} { +variant db4 conflicts {*}[lsearch -all -inline -not $hcache_variants db4] description {Use Berkeley DB database} { configure.args-replace --without-bdb --with-bdb=${prefix} - configure.cppflags-append "-I${prefix}/include/db44" - configure.ldflags-append "-L${prefix}/lib/db44" - depends_lib-append port:db44 + configure.cppflags-append "-I${prefix}/include/db48" + configure.ldflags-append "-L${prefix}/lib/db48" + depends_lib-append port:db48 } variant debug description {Debugging support} { configure.args-append --enable-debug } -variant gdbm conflicts db4 qdbm tokyocabinet description {Use GNU dbm database} { +variant gdbm conflicts {*}[lsearch -all -inline -not $hcache_variants gdbm] description {Use GNU dbm database} { configure.args-replace --without-gdbm --with-gdbm=${prefix} depends_lib-append port:gdbm } @@ -95,9 +106,8 @@ configure.args-append --with-gpgme-prefix=${prefix} depends_lib-append port:gpgme } -variant headercache conflicts db4 description {Enable header caching (requires gdbm, qdbm, or tokyocabinet)} { +variant headercache description {Enable header caching (requires db4, gdbm, qdbm, ldbm or tokyocabinet)} { configure.args-replace --disable-hcache --enable-hcache - configure.ldflags-append "-L/usr/lib" } variant idn description {Internationalized Domain Name support} { configure.args-replace --without-idn --with-idn=${prefix} @@ -106,13 +116,17 @@ variant imap description {IMAP support} { configure.args-replace --disable-imap --enable-imap } +variant ldbm conflicts {*}[lsearch -all -inline -not $hcache_variants ldbm] description {Use LDBM database} { + configure.args-replace --without-ldbm --with-ldbm=${prefix} + depends_lib-append port:ldbm +} variant nntp description {NNTP support} { configure.args-replace --disable-nntp --enable-nntp } variant pop description {POP support} { configure.args-replace --disable-pop --enable-pop } -variant qdbm conflicts db4 gdbm tokyocabinet description {Use QDBM database} { +variant qdbm conflicts {*}[lsearch -all -inline -not $hcache_variants qdbm] description {Use QDBM database} { configure.args-replace --without-qdbm --with-qdbm=${prefix} depends_lib-append port:qdbm } @@ -130,7 +144,7 @@ configure.args-replace --without-ssl --with-ssl=${prefix} depends_lib-append path:lib/libssl.dylib:openssl } -variant tokyocabinet conflicts db4 gdbm qdbm description {Use Tokyo Cabinet database} { +variant tokyocabinet conflicts {*}[lsearch -all -inline -not $hcache_variants tokyocabinet] description {Use Tokyo Cabinet database} { configure.args-replace --without-tokyocabinet --with- tokyocabinet=${prefix} depends_lib-append port:tokyocabinet } }}}
New description: Here's a patch that adds a variant for LMDB, updates the DB4 version used to the latest compatible version and removes an unneeded `-L/usr/lib` for the header cache variant. OK to commit? {{{ #!patch Index: Portfile =================================================================== --- Portfile (revision 152935) +++ Portfile (working copy) @@ -5,7 +5,7 @@ PortGroup github 1.0 github.setup neomutt neomutt 20160916 neomutt- -revision 1 +revision 2 categories mail platforms darwin license GPL-2 @@ -52,6 +52,7 @@ --without-gnutls \ --without-gss \ --without-idn \ + --without-lmdb \ --without-qdbm \ --without-regex \ --without-sasl \ @@ -60,8 +61,18 @@ default_variants +idn +imap +pop +ssl -if {![variant_isset db4] && ![variant_isset qdbm] && ![variant_isset tokyocabinet]} { - variant_set gdbm +set hcache_variants {db4 qdbm tokyocabinet gdbm lmdb} +if {[variant_isset headercache]} { + set found no + foreach hcache_impl {db4 qdbm tokyocabinet gdbm lmdb} { + if {[variant_isset $hcache_impl]} { + set found yes + } + } + if {!$found} { + # If no variant was chosen, choose one for the user + variant_set lmdb + } } post-destroot { @@ -73,16 +84,16 @@ variant compress description {Compressed folders} { configure.args-replace --disable-compressed --enable-compressed } -variant db4 conflicts qdbm gdbm tokyocabinet description {Use Berkeley DB database} { +variant db4 conflicts {*}[lsearch -all -inline -not $hcache_variants db4] description {Use Berkeley DB database} { configure.args-replace --without-bdb --with-bdb=${prefix} - configure.cppflags-append "-I${prefix}/include/db44" - configure.ldflags-append "-L${prefix}/lib/db44" - depends_lib-append port:db44 + configure.cppflags-append "-I${prefix}/include/db48" + configure.ldflags-append "-L${prefix}/lib/db48" + depends_lib-append port:db48 } variant debug description {Debugging support} { configure.args-append --enable-debug } -variant gdbm conflicts db4 qdbm tokyocabinet description {Use GNU dbm database} { +variant gdbm conflicts {*}[lsearch -all -inline -not $hcache_variants gdbm] description {Use GNU dbm database} { configure.args-replace --without-gdbm --with-gdbm=${prefix} depends_lib-append port:gdbm } @@ -95,9 +106,8 @@ configure.args-append --with-gpgme-prefix=${prefix} depends_lib-append port:gpgme } -variant headercache conflicts db4 description {Enable header caching (requires gdbm, qdbm, or tokyocabinet)} { +variant headercache description {Enable header caching (requires db4, gdbm, qdbm, lmdb or tokyocabinet)} { configure.args-replace --disable-hcache --enable-hcache - configure.ldflags-append "-L/usr/lib" } variant idn description {Internationalized Domain Name support} { configure.args-replace --without-idn --with-idn=${prefix} @@ -106,13 +116,17 @@ variant imap description {IMAP support} { configure.args-replace --disable-imap --enable-imap } +variant lmdb conflicts {*}[lsearch -all -inline -not $hcache_variants lmdb] description {Use LMDB database} { + configure.args-replace --without-lmdb --with-lmdb=${prefix} + depends_lib-append port:lmdb +} variant nntp description {NNTP support} { configure.args-replace --disable-nntp --enable-nntp } variant pop description {POP support} { configure.args-replace --disable-pop --enable-pop } -variant qdbm conflicts db4 gdbm tokyocabinet description {Use QDBM database} { +variant qdbm conflicts {*}[lsearch -all -inline -not $hcache_variants qdbm] description {Use QDBM database} { configure.args-replace --without-qdbm --with-qdbm=${prefix} depends_lib-append port:qdbm } @@ -130,7 +144,7 @@ configure.args-replace --without-ssl --with-ssl=${prefix} depends_lib-append path:lib/libssl.dylib:openssl } -variant tokyocabinet conflicts db4 gdbm qdbm description {Use Tokyo Cabinet database} { +variant tokyocabinet conflicts {*}[lsearch -all -inline -not $hcache_variants tokyocabinet] description {Use Tokyo Cabinet database} { configure.args-replace --without-tokyocabinet --with- tokyocabinet=${prefix} depends_lib-append port:tokyocabinet } }}} -- -- Ticket URL: <https://trac.macports.org/ticket/52293#comment:1> MacPorts <https://www.macports.org/> Ports system for macOS
#52293: neomutt: update db4, add lmdb, simplify header cache implementation handling ----------------------+------------------------ Reporter: cal@… | Owner: leonardo@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: haspatch Port: neomutt | ----------------------+------------------------ Comment (by leonardo.schenkel@…): Yes, please, and thanks. -- Ticket URL: <https://trac.macports.org/ticket/52293#comment:2> MacPorts <https://www.macports.org/> Ports system for macOS
#52293: neomutt: update db4, add lmdb, simplify header cache implementation handling ----------------------+------------------------ Reporter: cal@… | Owner: leonardo@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: fixed | Keywords: haspatch Port: neomutt | ----------------------+------------------------ Changes (by cal@…): * status: new => closed * resolution: => fixed Comment: Committed in r152965. -- Ticket URL: <https://trac.macports.org/ticket/52293#comment:3> MacPorts <https://www.macports.org/> Ports system for macOS
participants (1)
-
MacPorts