summaryrefslogtreecommitdiffstats
path: root/tests/deckard/contrib/libfaketime/packaging/OSX
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-06 00:55:53 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-06 00:55:53 +0000
commit3d0386f27ca66379acf50199e1d1298386eeeeb8 (patch)
treef87bd4a126b3a843858eb447e8fd5893c3ee3882 /tests/deckard/contrib/libfaketime/packaging/OSX
parentInitial commit. (diff)
downloadknot-resolver-upstream.tar.xz
knot-resolver-upstream.zip
Adding upstream version 3.2.1.upstream/3.2.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r--tests/deckard/contrib/libfaketime/packaging/OSX/Fink/libfaketime.info53
-rw-r--r--tests/deckard/contrib/libfaketime/packaging/OSX/Homebrew/libfaketime.rb21
-rw-r--r--tests/deckard/contrib/libfaketime/packaging/OSX/MacPorts/Portfile45
-rw-r--r--tests/deckard/contrib/libfaketime/packaging/OSX/MacPorts/patch-test-Makefile.OSX.diff12
-rw-r--r--tests/deckard/contrib/libfaketime/packaging/OSX/README65
5 files changed, 196 insertions, 0 deletions
diff --git a/tests/deckard/contrib/libfaketime/packaging/OSX/Fink/libfaketime.info b/tests/deckard/contrib/libfaketime/packaging/OSX/Fink/libfaketime.info
new file mode 100644
index 0000000..9f1b3ba
--- /dev/null
+++ b/tests/deckard/contrib/libfaketime/packaging/OSX/Fink/libfaketime.info
@@ -0,0 +1,53 @@
+Package: libfaketime
+Version: 0.9.7
+Revision: 1
+
+Source: http://www.code-wizards.com/projects/%n/%n-%v.tar.gz
+Source-MD5: 8617e2c6caf0977b3ce9a271f867302c
+
+Maintainer: Wolfgang Hommel <wolf@fink.code-wizards.com>
+HomePage: https://github.com/wolfcw/libfaketime
+License: GPL
+
+Description: Modify system time for single applications
+
+DescDetail: <<
+libfaketime is a library that is dynamically linked to applications
+or system commands at run-time by using the DYLD_INSERT_LIBRARIES
+mechanism. It then intercepts various system calls, which programs
+use to retrieve the current date and time. libfaketime can then
+report faked dates and times to these programs. This means you can
+modify the system time a program uses without having to change the
+date and time system-wide.
+<<
+
+DescUsage: <<
+libfaketime includes a simple wrapper called faketime. Run the
+command faketime without any parameters for usage information.
+For information on how to use libfaketime without the wrapper
+and access its full raw functionality, please see
+%p/share/doc/libfaketime/README*
+<<
+
+BuildDepends: fink (>= 0.28)
+Distribution: 10.7, 10.8, 10.9, 10.10, 10.11, 10.12
+
+CompileScript: <<
+#! /bin/sh -ev
+make -f Makefile.OSX -C src PREFIX=%{p}
+<<
+
+InfoTest: <<
+ TestScript: make -f Makefile.OSX test || exit 2
+<<
+
+InstallScript: <<
+#! /bin/sh -ev
+make -f Makefile.OSX -C src install PREFIX=%{i}
+<<
+
+DocFiles: COPYING README README.OSX
+
+Shlibs: <<
+ !%p/lib/faketime/%N.1.dylib
+<<
diff --git a/tests/deckard/contrib/libfaketime/packaging/OSX/Homebrew/libfaketime.rb b/tests/deckard/contrib/libfaketime/packaging/OSX/Homebrew/libfaketime.rb
new file mode 100644
index 0000000..8d92b76
--- /dev/null
+++ b/tests/deckard/contrib/libfaketime/packaging/OSX/Homebrew/libfaketime.rb
@@ -0,0 +1,21 @@
+require 'formula'
+
+class Libfaketime < Formula
+ homepage 'https://github.com/wolfcw/libfaketime'
+ url 'https://github.com/wolfcw/libfaketime/archive/v0.9.7.tar.gz'
+ sha1 'eb1cbacf548aefa36214bea1345f35b8763027a1'
+
+ depends_on :macos => :sierra
+
+ fails_with :llvm do
+ build 2336
+ cause 'No thread local storage support'
+ end
+
+ def install
+ system "make", "-C", "src", "-f", "Makefile.OSX", "PREFIX=#{prefix}"
+ bin.install 'src/faketime'
+ (lib/'faketime').install 'src/libfaketime.1.dylib'
+ man1.install 'man/faketime.1'
+ end
+end
diff --git a/tests/deckard/contrib/libfaketime/packaging/OSX/MacPorts/Portfile b/tests/deckard/contrib/libfaketime/packaging/OSX/MacPorts/Portfile
new file mode 100644
index 0000000..d4104ad
--- /dev/null
+++ b/tests/deckard/contrib/libfaketime/packaging/OSX/MacPorts/Portfile
@@ -0,0 +1,45 @@
+# -*- 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
+# $Id: Portfile 112093 2013-10-11 19:57:13Z ryandesign@macports.org $
+
+PortSystem 1.0
+PortGroup github 1.0
+
+github.setup wolfcw libfaketime 0.9.7 v
+
+checksums rmd160 8874d43bb212976d929c3007db0cf978311b3596 \
+ sha256 4d65f368b2d53ee2f93a25d5e9541ce27357f2b95e5e5afff210e0805042811e
+
+categories sysutils
+platforms darwin
+maintainers code-wizards.com:wolf openmaintainer
+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.
+
+patchfiles patch-test-Makefile.OSX.diff
+
+use_configure no
+
+variant universal {}
+
+compiler.blacklist *cc* *dragonegg*
+
+build.args -f Makefile.OSX
+build.env CC="${configure.cc}" \
+ CFLAGS="[get_canonical_archflags cc]" \
+ LDFLAGS="[get_canonical_archflags ld]" \
+ PREFIX=${prefix}
+
+test.run yes
+test.args ${build.args}
+eval test.env ${build.env}
+
+destroot.args ${build.args}
+eval destroot.env ${build.env}
diff --git a/tests/deckard/contrib/libfaketime/packaging/OSX/MacPorts/patch-test-Makefile.OSX.diff b/tests/deckard/contrib/libfaketime/packaging/OSX/MacPorts/patch-test-Makefile.OSX.diff
new file mode 100644
index 0000000..f60968a
--- /dev/null
+++ b/tests/deckard/contrib/libfaketime/packaging/OSX/MacPorts/patch-test-Makefile.OSX.diff
@@ -0,0 +1,12 @@
+--- test/Makefile.OSX.orig 2013-10-11 09:42:38.000000000 -0500
++++ test/Makefile.OSX 2013-10-11 14:46:11.000000000 -0500
+@@ -1,7 +1,6 @@
+-CC = gcc
++CC ?= clang
+
+-CFLAGS = -std=gnu99 -Wall -DFAKE_STAT
+-LDFLAGS =
++CFLAGS += -std=gnu99 -Wall -DFAKE_STAT
+
+ SRC = timetest.c
+ OBJ = ${SRC:.c=.o}
diff --git a/tests/deckard/contrib/libfaketime/packaging/OSX/README b/tests/deckard/contrib/libfaketime/packaging/OSX/README
new file mode 100644
index 0000000..03b43fa
--- /dev/null
+++ b/tests/deckard/contrib/libfaketime/packaging/OSX/README
@@ -0,0 +1,65 @@
+# Packaging for OS X
+
+Several software tools assist with the installation of open source software
+on OS X. The authors of libfaketime maintain the libfaketime build spec files
+for MacPorts, Homebrew, and Fink.
+
+
+## MacPorts
+
+Installing libfaketime via MacPorts is based on the provided Portfile, which
+has been included in the official MacPorts distribution since October, 2013.
+Users therefore can use "sudo port install libfaketime" as installation
+command.
+
+Some libfaketime Portfile caveats:
+
+- Github-based source file distribution
+- Non-clang-compilers need to be blacklisted
+- MacPorts folks have requested to avoid a platform-specific Makefile.OSX in
+ the future
+
+Portfile submission is documented in https://www.macports.org/guide/#project.contributing
+and handled via a ticketing system:
+
+- https://trac.macports.org/ticket/40662
+- https://trac.macports.org/ticket/40748
+
+
+## Homebrew
+
+The libfaketime 'formula' for Homebrew is available since November, 2013.
+Homebrew users can use 'brew install libfaketime' as installation command.
+
+Some libfaketime formula caveats:
+
+- "depends_on :macos => :lion" must be set for libfaketime >=0.9.5
+- :llvm builds <= 2336 must be blacklisted because libfaketime =0.9.5
+ requires a compiler with thread local storage support.
+
+Formula submission is handled via pull request on Github following the
+"one formula per commit, one commit per formula" rule, which necessitates
+squashing commits and forced pushes when applying fixes. Style issues
+complementary to the documentation have been discussed in
+
+ https://github.com/mxcl/homebrew/pull/23245
+
+
+## Fink
+
+A libfaketime.info file is included in the Fink 10.7 tree since October,
+2013, and installed using
+
+ fink install libfaketime
+
+Some libfaketime fink info file caveats:
+
+- The dynamic library must be declared as private Shlib; this also necessitates
+ BuildDepends: fink (>= 0.28)
+- "Distribution: 10.7, 10.8, 10.9" is required because libfaketime >=0.9.5 does
+ not work on OS X 10.6 or before anymore.
+- When compiling, PREFIX=%{p} needs to be used because this path is hardcoded
+ into the wrapper. However, "make install" needs to deploy into PREFIX=%{i} to
+ make packaging work.
+
+Submission is via https://sourceforge.net/p/fink/package-submissions/