# -*- 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           github 1.0
PortGroup           muniversal 1.1
PortGroup           legacysupport 1.1
PortGroup           makefile 1.0

github.setup        wolfcw libfaketime 0.9.12 v
github.tarball_from archive
revision            0
categories          sysutils
maintainers         nomaintainer
license             GPL-2

description         libfaketime modifies the system time for a single application

long_description    libfaketime intercepts various system calls that applications use to \
                    retrieve the current date and time. It can then report user-specified \
                    faked dates and times to these applications. This allows us to modify \
                    the system time an application sees without having to change the time \
                    system-wide. The faketime wrapper can be used from command line. \
                    Check the documentation on how to integrate into installed applications.

checksums           rmd160  b9a03aee87ba11d28b726da1d48eab20d278316c \
                    sha256  4fc32218697c052adcdc5ee395581f2554ca56d086ac817ced2be0d6f1f8a9fa \
                    size    94913

depends_run-append  path:libexec/coreutils/libstdbuf.so:coreutils

# timespec_get(), clock_settime, and others
legacysupport.newest_darwin_requires_legacy 15

patch.pre_args-replace \
                    -p0 -p1
patchfiles          remove-pointer-auth-flags.patch

compiler.thread_local_storage yes
compiler.blacklist  *cc* *dragonegg*

test.run            yes

notes {
    With System Integrity Protection (SIP) enabled on macOS 10.11 El Capitan\
    or later, it is not possible to override date and time for system\
    binaries in /bin or /usr/bin as DYLD_INSERT_LIBRARIES will be ignored.\
    This also applies to shell scripts invoked through #!/bin/sh or similar.
}
