Browse Source

riscv: fix up architecture-dependent klibc files.

Also, get rid of nonsense builds for mcmodel=small and such. That was
never needed.

To test for riscv you can do things like this:
ARCH=riscv \
CC=/home/rminnich/projects/riscv/riscv-tools/bin/riscv64-unknown-elf-gcc \
LD=/home/rminnich/projects/riscv/riscv-tools/bin/riscv64-unknown-elf-ld build

to build just cmds, for testing, add, e.g.;
sys/src/cmd/cmds.json

to the command

Signed-off-by: Ronald G. Minnich <rminnich@gmail.com>
Ronald G. Minnich 8 years ago
parent
commit
991d0b51bd

+ 0 - 1
build.json

@@ -9,7 +9,6 @@
 		"Projects": [
 			"/sys/src/klibs.json",
 			"/sys/src/libs.json",
-			"/sys/src/cmd/kcmds.json",
 			"/sys/src/cmd/cmds.json",
 			"/sys/src/games/games.json",
 			"/acme/build.json",

+ 5 - 0
sys/src/cmd/cmds.json

@@ -10,6 +10,11 @@
 			"ascii.c",
 			"awd.c",
 			"basename.c",
+			"bind.c",
+			"mount.c",
+			"date.c",
+			"srv.c",
+			"echo.c",
 			"bsplit.c",
 			"cal.c",
 			"calendar.c",

+ 0 - 14
sys/src/cmd/ip/ipconfig/kipconfig.json

@@ -1,14 +0,0 @@
-{
-	"ipconfig": {
-		"Include": [
-			"../../kernel.json"
-		],
-		"Install": "/$ARCH/bin/ip",
-		"Program": "ipconfig",
-		"SourceFiles": [
-			"ipv6.c",
-			"main.c",
-			"ppp.c"
-		]
-	}
-}

+ 0 - 20
sys/src/cmd/kcmds.json

@@ -1,20 +0,0 @@
-{
-	"Kcmds": {
-		"Include": [
-			"kernel.json"
-		],
-		"Install": "/$ARCH/bin",
-		"Projects": [
-			"/sys/src/cmd/rc/rc.json",
-			"/sys/src/cmd/ip/ipconfig/kipconfig.json"
-		],
-		"SourceFilesCmd": [
-			"bind.c",
-			"mount.c",
-			"date.c",
-			"srv.c",
-			"echo.c",
-			"ls.c"
-		]
-	}
-}

+ 0 - 36
sys/src/cmd/kernel.json

@@ -1,36 +0,0 @@
-{
-	"KernelCmd": {
-		"Cflags": [
-			"-mcmodel=small",
-			"-O0",
-			"-fplan9-extensions",
-			"-mno-red-zone",
-			"-ffreestanding",
-			"-fno-builtin",
-			"-Wall",
-			"-Wno-missing-braces",
-			"-Wno-parentheses",
-			"-Wno-unknown-pragmas",
-			"-g"
-		],
-		"Libs": [
-			"/amd64/lib/libString.a",
-			"/amd64/lib/lib9p.a",
-			"/amd64/lib/libndb.a",
-			"/amd64/lib/libauth.a",
-			"/amd64/lib/libbio.a",
-			"/amd64/lib/libip.a",
-			"/amd64/lib/libc.a"
-		],
-		"Oflags": [
-			"-static",
-			"-e_main"
-		],
-		"Post": [
-			"rm *.o"
-		],
-		"Pre": [
-			"rm -f *.o *.tag.*"
-		]
-	}
-}

+ 1 - 1
sys/src/cmd/rc/rc.json

@@ -1,7 +1,7 @@
 {
 	"rc": {
 		"Include": [
-			"../kernel.json"
+			"../cmd.json"
 		],
 		"Post": [
 			"rm y.tab* x.tab*"

+ 3 - 12
sys/src/libc/klibc.json

@@ -5,7 +5,8 @@
 			"-Werror"
 		],
 		"Include": [
-			"/$ARCH/include/klib.json"
+			"/$ARCH/include/klib.json",
+			"$ARCH/build.json"
 		],
 		"Install": "/$ARCH/lib/",
 		"Library": "klibc.a",
@@ -194,17 +195,7 @@
 			"port/utfutf.c",
 			"port/u16.c",
 			"port/u32.c",
-			"port/u64.c",
-			"amd64/seek.c",
-			"amd64/notejmp.c",
-			"amd64/cycles.c",
-			"amd64/argv0.c",
-			"amd64/rdpmc.c",
-			"amd64/setjmp.s",
-			"amd64/sqrt.s",
-			"amd64/tas.s",
-			"amd64/atom.S",
-			"amd64/main9.S"
+			"port/u64.c"
 		]
 	}
 }

+ 1 - 1
sys/src/libmach/6.c

@@ -13,7 +13,7 @@
 #include <u.h>
 #include <libc.h>
 #include <bio.h>
-#include <ureg.h>
+#include <amd64/include/ureg.h>
 #include <mach.h>
 
 #define	REGOFF(x)	offsetof(struct Ureg, x)

+ 4 - 0
sys/src/libmach/libmach.json

@@ -1,5 +1,9 @@
 {
 	"libmach": {
+		"Cflags": [
+			"-I", "/",
+			"-Werror"
+		],
 		"Include": [
 			"../lib.json"
 		],