From 52e593fbd29f485f84aa1be2258ffd9a97bfafc6 Mon Sep 17 00:00:00 2001 From: Yanyan Jiang Date: Sat, 27 May 2017 13:12:12 -0400 Subject: [PATCH] do not link klib at native --- Makefile.app | 9 +++++++-- apps/microbench/src/bench.c | 4 ++-- klib/klib.h | 3 ++- klib/printk.c | 2 +- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/Makefile.app b/Makefile.app index dc829973..4cf3296d 100644 --- a/Makefile.app +++ b/Makefile.app @@ -12,11 +12,16 @@ $(shell mkdir -p $(DST_DIR)) include $(AM_HOME)/Makefile.compile +LINK_FILES = $(AM_HOME)/am/build/am-$(ARCH).a $(OBJS) + +ifneq ($(ARCH), native) +LINK_FILES += $(AM_HOME)/klib/build/klib-$(ARCH).a +endif + .PHONY: app run clean app: $(OBJS) @cd $(AM_HOME) && make ARCH=$(ARCH) - @$(AM_HOME)/am/arch/$(ARCH)/img/build $(BINARY) $(AM_HOME)/am/build/am-$(ARCH).a $(AM_HOME)/klib/build/klib-$(ARCH).a $(OBJS) - + @$(AM_HOME)/am/arch/$(ARCH)/img/build $(BINARY) $(LINK_FILES) run: app @$(AM_HOME)/am/arch/$(ARCH)/img/run $(BINARY) diff --git a/apps/microbench/src/bench.c b/apps/microbench/src/bench.c index fa3777d0..808b3ad0 100644 --- a/apps/microbench/src/bench.c +++ b/apps/microbench/src/bench.c @@ -94,7 +94,7 @@ int main() { pass &= succ; ulong cur = score(bench, tsc, msec); - printk("\n min time: %dK cycles in %d ms [%d]\n", tsc, msec, cur); + printk("\n min time: %dK cycles in %d ms [%d]\n", (uint)tsc, (uint)msec, (uint)cur); bench_score += cur; } @@ -103,7 +103,7 @@ int main() { bench_score /= sizeof(benchmarks) / sizeof(benchmarks[0]); printk("==================================================\n"); - printk("MicroBench %s %d Marks\n", pass ? "PASS" : "FAIL", bench_score); + printk("MicroBench %s %d Marks\n", pass ? "PASS" : "FAIL", (uint)bench_score); printk(" vs. %d Marks (%s)\n", REF_SCORE, REF_CPU); _halt(0); diff --git a/klib/klib.h b/klib/klib.h index 1e736486..4c2e04c2 100644 --- a/klib/klib.h +++ b/klib/klib.h @@ -42,9 +42,10 @@ void srand(unsigned int seed); int rand(); // stdio.h -int printk(const char* fmt, ...); +int printf(const char* fmt, ...); int sprintf(char* s, char* format, ...); int snprintf(char* s, size_t n, const char* format, ...); +#define printk printf // assert.h #ifdef NDEBUG diff --git a/klib/printk.c b/klib/printk.c index cec84c3b..e624f79d 100644 --- a/klib/printk.c +++ b/klib/printk.c @@ -85,7 +85,7 @@ int vprintk(char* out,const char* fmt,va_list ap){ return 0; } -int printk(const char* fmt,...){ +int printf(const char* fmt,...){ va_list ap; va_start(ap,fmt); int r=vprintk(0,fmt,ap);