Ye olde Apple mktemp
Tomi Ollila
tomi.ollila at iki.fi
Mon Jun 10 11:59:35 PDT 2019
On Mon, Jun 10 2019, Ralph Seichter wrote:
> Another quirk that occurs during the configuration phase on older macOS
> versions (when they were still called OS X, actually) in the MacPorts
> build farm:
>
> Checking for GMime session key extraction support...
> usage: mktemp [-d] [-q] [-t prefix] [-u] template ...
> mktemp [-d] [-q] [-u] -t prefix
> No.
>
> Hooray for that ancient mktemp binary. :-/ The following local patch
> solves the issue for me:
>
> diff --git a/configure b/configure
> index 8b80f0e0..fa715946 100755
> --- a/configure
> +++ b/configure
> @@ -529,7 +529,7 @@ int main () {
> return 0;
> }
> EOF
> - if ! TEMP_GPG=$(mktemp -d); then
> + if ! TEMP_GPG=$(mktemp -d -t /tmp); then
> printf 'No.\nCould not make tempdir for testing session-key support.\n'
> errors=$((errors + 1))
> elif ${CC} ${CFLAGS} ${gmime_cflags} _check_session_keys.c ${gmime_ldflags} -o _check_session_keys \
>
> Alas, "mktemp -d -t /tmp" is incompatible with GNU coreutils' mktemp,
> while "mktemp -d -p /tmp" is not understood by Apple's variant because
> of the "-p". I don't know what syntax would be universally acceptable.
>
> Is there a way to pass platform-dependent parameters to mktemp with the
> current build mechanics?
Hmm, we have:
test/test-lib.sh:TEST_TMPDIR=$(mktemp -d "${TMPDIR:-/tmp}/notmuch-test-$$.XXXXXX")
does that test work ?
does
TEMP_GPG=$(mktemp -d /tmp/tmp.XXXXXX)
make any difference ?
if it doesn't, then we just have to do uname=$(uname) earlier
and add `-t` to mktemp(1) parameters in case it is darwin
(ot something)
Tomi
>
> -Ralph
More information about the notmuch
mailing list