aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/posix_compatibility.h
diff options
context:
space:
mode:
authorSiesh1oo <siesh1oo@siesh1oo.no>2014-03-10 14:38:01 +0100
committerSiesh1oo <siesh1oo@siesh1oo.no>2014-03-10 14:38:01 +0100
commit0fb044a58f7cc66364af3a0a53c8b5089e0149ad (patch)
treeb5b7ab5ced1a1d682285ebfd3e5a82786144d0b6 /kernel/posix_compatibility.h
parent9327d434d522f888609e5f4a42a6e06f01864e79 (diff)
downloadyosys-0fb044a58f7cc66364af3a0a53c8b5089e0149ad.tar.gz
yosys-0fb044a58f7cc66364af3a0a53c8b5089e0149ad.tar.bz2
yosys-0fb044a58f7cc66364af3a0a53c8b5089e0149ad.zip
- Makefile, kernel/posix_compatibility.h/.cc: provide POSIX.2008 fake implementation of open_memstream()/fmemopen() for pre-POSIX.2008 systems.
- Makefile: OSX build rules (Apple's gcc and clang have no -rdynamic option and no librt). - Makefile: Generate debugger symbols and don't optimize for size in debug target (otherwise the debugger pretty hard to use). - Makefile: Reorder target concatenation in order to avoid use-before-built problems for source-include and linker dependencies. - Makefile: On OSX/macports, qmake-qt4 is named 'qmake' (the default Qt4 installation name, unless the distribution changes it). - Makefile: For OSX/Macports, we need to pass -I/opt/local/include and -L/opt/local/lib to give GNU libraries precedence over Apple's. - Makefile: Build a local minisat copy just like abc (to avoid dependency on broken/unmaintained distribution header files). - .gitignore: Ignore minisat directory.
Diffstat (limited to 'kernel/posix_compatibility.h')
-rw-r--r--kernel/posix_compatibility.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/kernel/posix_compatibility.h b/kernel/posix_compatibility.h
new file mode 100644
index 000000000..d6eaade05
--- /dev/null
+++ b/kernel/posix_compatibility.h
@@ -0,0 +1,40 @@
+/*
+ * yosys -- Yosys Open SYnthesis Suite
+ *
+ * Copyright (C) 2012 Clifford Wolf <clifford@clifford.at>
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ *
+ */
+
+#ifndef POSIX_COMPATIBILITY_H
+#define POSIX_COMPATIBILITY_H
+
+#if defined(__cplusplus)
+extern "C" {
+#endif
+
+#include <stdio.h>
+#include <stdlib.h>
+
+#if !(_XOPEN_SOURCE >= 700 || _POSIX_C_SOURCE >= 200809L)
+FILE * open_memstream (char ** bufp, size_t * sizep);
+FILE * fmemopen (void * buf, size_t size, const char * mode);
+#endif
+
+#if defined(__cplusplus)
+}
+#endif
+
+#endif
+