mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
lib9: enable on Plan 9
This change depends on CL 57170052. LGTM=rsc R=rsc, bradfitz CC=golang-codereviews https://golang.org/cl/60840049
This commit is contained in:
parent
705d7c164f
commit
174b8c95f5
44 changed files with 170 additions and 18 deletions
7
include/plan9/errno.h
Normal file
7
include/plan9/errno.h
Normal file
|
|
@ -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
|
||||
64
include/plan9/fmt.h
Normal file
64
include/plan9/fmt.h
Normal file
|
|
@ -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*
|
||||
|
|
@ -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
|
||||
|
|
|
|||
13
include/plan9/mklibc.rc
Executable file
13
include/plan9/mklibc.rc
Executable file
|
|
@ -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
|
||||
3
include/plan9/stdarg.h
Normal file
3
include/plan9/stdarg.h
Normal file
|
|
@ -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.
|
||||
5
include/plan9/utf.h
Normal file
5
include/plan9/utf.h
Normal file
|
|
@ -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"
|
||||
Loading…
Add table
Add a link
Reference in a new issue