diff options
author | David du Colombier <0intro@gmail.com> | 2014-02-13 20:06:41 +0100 |
---|---|---|
committer | David du Colombier <0intro@gmail.com> | 2014-02-13 20:06:41 +0100 |
commit | a8db5dfa980737f696743c83759b96a3c7b5eb99 (patch) | |
tree | 091dee81873809770522081f49d59a26e8d85256 /include | |
parent | a2e04d1583c488aa22dcc4c7bc84841134cdf7db (diff) | |
download | go-a8db5dfa980737f696743c83759b96a3c7b5eb99.tar.gz |
lib9: enable on Plan 9
This change depends on CL 57170052.
LGTM=rsc
R=rsc, bradfitz
CC=golang-codereviews
https://codereview.appspot.com/60840049
Diffstat (limited to 'include')
-rw-r--r-- | include/plan9/errno.h | 7 | ||||
-rw-r--r-- | include/plan9/fmt.h | 64 | ||||
-rw-r--r-- | include/plan9/libc.h | 7 | ||||
-rwxr-xr-x | include/plan9/mklibc.rc | 13 | ||||
-rw-r--r-- | include/plan9/stdarg.h | 3 | ||||
-rw-r--r-- | include/plan9/utf.h | 5 |
6 files changed, 98 insertions, 1 deletions
diff --git a/include/plan9/errno.h b/include/plan9/errno.h new file mode 100644 index 000000000..1ed572ace --- /dev/null +++ b/include/plan9/errno.h @@ -0,0 +1,7 @@ +// Copyright 2014 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +int errno; + +#define ERANGE 1001 diff --git a/include/plan9/fmt.h b/include/plan9/fmt.h new file mode 100644 index 000000000..b4a4fe791 --- /dev/null +++ b/include/plan9/fmt.h @@ -0,0 +1,64 @@ +// Copyright 2014 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +#include "../fmt.h" + +#pragma varargck argpos fmtprint 2 +#pragma varargck argpos fprint 2 +#pragma varargck argpos print 1 +#pragma varargck argpos runeseprint 3 +#pragma varargck argpos runesmprint 1 +#pragma varargck argpos runesnprint 3 +#pragma varargck argpos runesprint 2 +#pragma varargck argpos seprint 3 +#pragma varargck argpos smprint 1 +#pragma varargck argpos snprint 3 +#pragma varargck argpos sprint 2 + +#pragma varargck type "lld" vlong +#pragma varargck type "llo" vlong +#pragma varargck type "llx" vlong +#pragma varargck type "llb" vlong +#pragma varargck type "lld" uvlong +#pragma varargck type "llo" uvlong +#pragma varargck type "llx" uvlong +#pragma varargck type "llb" uvlong +#pragma varargck type "ld" long +#pragma varargck type "lo" long +#pragma varargck type "lx" long +#pragma varargck type "lb" long +#pragma varargck type "ld" ulong +#pragma varargck type "lo" ulong +#pragma varargck type "lx" ulong +#pragma varargck type "lb" ulong +#pragma varargck type "d" int +#pragma varargck type "o" int +#pragma varargck type "x" int +#pragma varargck type "c" int +#pragma varargck type "C" int +#pragma varargck type "b" int +#pragma varargck type "d" uint +#pragma varargck type "x" uint +#pragma varargck type "c" uint +#pragma varargck type "C" uint +#pragma varargck type "b" uint +#pragma varargck type "f" double +#pragma varargck type "e" double +#pragma varargck type "g" double +#pragma varargck type "s" char* +#pragma varargck type "q" char* +#pragma varargck type "S" Rune* +#pragma varargck type "Q" Rune* +#pragma varargck type "r" void +#pragma varargck type "%" void +#pragma varargck type "n" int* +#pragma varargck type "p" uintptr +#pragma varargck type "p" void* +#pragma varargck flag ',' +#pragma varargck flag ' ' +#pragma varargck flag 'h' +#pragma varargck type "<" void* +#pragma varargck type "[" void* +#pragma varargck type "H" void* +#pragma varargck type "lH" void* diff --git a/include/plan9/libc.h b/include/plan9/libc.h index 798e47095..773edeee3 100644 --- a/include/plan9/libc.h +++ b/include/plan9/libc.h @@ -2,8 +2,10 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -#include "/sys/include/libc.h" #include "/sys/include/ctype.h" +#include "fmt.h" +#include "utf.h" +#include "libc_plan9.h" char* getgoos(void); char* getgoarch(void); @@ -26,3 +28,6 @@ void flagprint(int); // The libraries use size_t to avoid -Wconversion warnings from GCC // when calling standard library functions like memcpy. typedef unsigned long size_t; + +// math.h +#define HUGE_VAL 1.79769313486231e+308 diff --git a/include/plan9/mklibc.rc b/include/plan9/mklibc.rc new file mode 100755 index 000000000..460ef1ce4 --- /dev/null +++ b/include/plan9/mklibc.rc @@ -0,0 +1,13 @@ +#!/bin/rc + +pattern='/umuldiv/d + /UTFmax/d + /Runesync/d + /Runeself/d + /Runeerror/d + /Runemax/d + /rune routines/,/^\/\*/d + /print routines/,/^\/\*/d + /error string for/,/^\/\*/d' + +sed -e $pattern /sys/include/libc.h diff --git a/include/plan9/stdarg.h b/include/plan9/stdarg.h new file mode 100644 index 000000000..b562a3a6e --- /dev/null +++ b/include/plan9/stdarg.h @@ -0,0 +1,3 @@ +// Copyright 2014 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. diff --git a/include/plan9/utf.h b/include/plan9/utf.h new file mode 100644 index 000000000..03c26d69d --- /dev/null +++ b/include/plan9/utf.h @@ -0,0 +1,5 @@ +// Copyright 2014 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +#include "../utf.h" |