aboutsummaryrefslogtreecommitdiff
path: root/include/inttypes.h
diff options
context:
space:
mode:
authorStewart Smith <stewart@linux.vnet.ibm.com>2015-11-16 16:57:00 +1100
committerStewart Smith <stewart@linux.vnet.ibm.com>2015-11-16 16:57:00 +1100
commit56bc1890b229072513788992d1d29b6f173c13de (patch)
tree20e81d08b66f7ce122a7d5b2cf49e3b495eac1ed /include/inttypes.h
parent4834fced49c6c8ccbc7237588df5cfe7c4e7cdd7 (diff)
downloadskiboot-56bc1890b229072513788992d1d29b6f173c13de.zip
skiboot-56bc1890b229072513788992d1d29b6f173c13de.tar.gz
skiboot-56bc1890b229072513788992d1d29b6f173c13de.tar.bz2
Enable -Werror for -Wformat
We create our own inttypes.h to get the correct printf formatting for 64bit numbers. Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'include/inttypes.h')
-rw-r--r--include/inttypes.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/include/inttypes.h b/include/inttypes.h
new file mode 100644
index 0000000..8e640ca
--- /dev/null
+++ b/include/inttypes.h
@@ -0,0 +1,44 @@
+/* Copyright 2015 IBM Corp.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ * implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* This file exists because a bunch of files are built as part of
+ * unit tests as well as skiboot and inttypes.h is part of libc rather
+ * than gcc, so to get the magic to work when we don't have libc sitting
+ * around, we get to rewrite inttypes.h.
+ */
+
+#ifndef __SKIBOOT_INTTYPES_H
+#define __SKIBOOT_INTTYPES_H
+
+#include <stdint.h>
+
+#ifndef __WORDSIZE
+/* If we don't have __WORDSIZE it means we're *certainly* building skiboot
+ * which will *ALWAYS* have a word size of 32bits.
+ * (unless someone goes and ports skiboot to something that isn't powerpc)
+ */
+#define __WORDSIZE 32
+#endif
+
+#if __WORDSIZE == 64
+#define PRIu64 "lu"
+#define PRIx64 "lx"
+#else
+#define PRIu64 "llu"
+#define PRIx64 "llx"
+#endif
+
+#endif