aboutsummaryrefslogtreecommitdiff
path: root/darwin-bootstrap/ib-log.h
diff options
context:
space:
mode:
authorcomex2015-02-28 13:16:36 -0500
committercomex2015-02-28 13:16:36 -0500
commitd9a7a8a4d4a23fb65e6319e0e8a435046cc39fea (patch)
treedd219509fc92e695317b82d5dca43296daaf2ab1 /darwin-bootstrap/ib-log.h
parentremove deprecated property usage in safety-dance (diff)
downloadsubstitute-d9a7a8a4d4a23fb65e6319e0e8a435046cc39fea.tar.gz
Rename ios-bootstrap to darwin-bootstrap; cleanup posixspawn-hook and unrestrict.
Not tested yet.
Diffstat (limited to 'darwin-bootstrap/ib-log.h')
-rw-r--r--darwin-bootstrap/ib-log.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/darwin-bootstrap/ib-log.h b/darwin-bootstrap/ib-log.h
new file mode 100644
index 0000000..fee70b5
--- /dev/null
+++ b/darwin-bootstrap/ib-log.h
@@ -0,0 +1,27 @@
+#pragma once
+#include <dispatch/dispatch.h>
+#include <stdio.h>
+#include <unistd.h>
+
+static FILE *logfp;
+static void open_logfp_if_necessary() {
+ /* syslog() doesn't seem to work from launchd... */
+ static dispatch_once_t pred;
+ dispatch_once(&pred, ^{
+ char filename[128];
+ sprintf(filename, "/tmp/substitute-" IB_LOG_NAME "-log.%ld",
+ (long) getpid());
+ logfp = fopen(filename, "w");
+ if (!logfp) {
+ /* Ack... */
+ logfp = stderr;
+ }
+ });
+}
+#define ib_log(fmt, args...) do { \
+ open_logfp_if_necessary(); \
+ fprintf(logfp, fmt "\n", ##args); \
+ fflush(logfp); \
+} while(0)
+
+#define IB_VERBOSE 0