diff options
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | Rules.mak | 6 | ||||
-rw-r--r-- | libc/misc/Makefile | 8 | ||||
-rw-r--r-- | libc/misc/internals/Makefile | 6 | ||||
-rw-r--r-- | libc/misc/time/Makefile | 6 | ||||
-rw-r--r-- | libc/stdlib/Makefile | 7 |
6 files changed, 26 insertions, 9 deletions
@@ -28,7 +28,7 @@ include Rules.mak -DIRS = sysdeps misc pwd_grp stdio string termios unistd net signal stdlib +DIRS = misc pwd_grp stdio string termios unistd net signal stdlib sysdeps all: libc.a @@ -24,15 +24,13 @@ include $(TOPDIR)Config -GCCINCDIR = $(shell gcc -print-search-dirs | sed -ne "s/install: \(.*\)/\1include/gp") +GCCINCDIR = $(shell $(CC) -print-search-dirs | sed -ne "s/install: \(.*\)/\1include/gp") ARFLAGS=r CCFLAGS=$(OPTIMIZATION) -fno-builtin -nostdinc $(CPUFLAGS) -Dlinux -D__linux__ -I$(TOPDIR)include -I$(GCCINCDIR) -I. -D__LIBC__ -# Figure out what arch to build... -ARCH = $(shell uname -m | sed -e 's/i.86/i386/' -e 's/sparc.*/sparc/' -e 's/arm.*/arm/g') -ifeq ($(ARCH), arm) +ifeq ($(TARGET_ARCH), arm) ARCH_CFLAGS=-fpic endif diff --git a/libc/misc/Makefile b/libc/misc/Makefile index 5c16c5478..6a3275903 100644 --- a/libc/misc/Makefile +++ b/libc/misc/Makefile @@ -25,7 +25,13 @@ include $(TOPDIR)Rules.mak LIBC=$(TOPDIR)libc.a -DIRS = assert crypt ctype fnmatch glob internals lsearch mntent syslog regex shm time utmp +DIRS = assert crypt ctype fnmatch glob internals lsearch mntent syslog shm time utmp + +# regex bombs out with an internal compiler error using m68k-pic-coff-gcc. +ifneq ($(TARGET_ARCH),m68k) + DIRS += regex +endif + all: libc.a diff --git a/libc/misc/internals/Makefile b/libc/misc/internals/Makefile index b9168288e..be19bbf7b 100644 --- a/libc/misc/internals/Makefile +++ b/libc/misc/internals/Makefile @@ -24,7 +24,11 @@ TOPDIR=../../ include $(TOPDIR)Rules.mak LIBC=$(TOPDIR)libc.a -CSRC=ultostr.c ltostr.c ulltostr.c lltostr.c zoicheck.c dtostr.c +CSRC=ultostr.c ltostr.c ulltostr.c lltostr.c zoicheck.c +ifeq ($(HAS_FLOATS),true) + CSRC += dtostr.c +endif + COBJS=$(patsubst %.c,%.o, $(CSRC)) OBJS=$(COBJS) diff --git a/libc/misc/time/Makefile b/libc/misc/time/Makefile index dc27f1cbe..406738ce8 100644 --- a/libc/misc/time/Makefile +++ b/libc/misc/time/Makefile @@ -27,6 +27,12 @@ LIBC=$(TOPDIR)libc.a CSRC=localtime.c gmtime.c asctime.c ctime.c asc_conv.c tm_conv.c mktime.c \ localtime_r.c gmtime_r.c asctime_r.c ctime_r.c utimes.c adjtime.c \ strftime.c clock.c times.c difftime.c + +# strftime.c causes an internal compiler error with m68k-pic-coff-gcc. +ifneq ($(TARGET_ARCH),m68k) + CSRC += strftime.c +endif + COBJS=$(patsubst %.c,%.o, $(CSRC)) OBJS=$(COBJS) diff --git a/libc/stdlib/Makefile b/libc/stdlib/Makefile index e4b28979c..5d7c9405a 100644 --- a/libc/stdlib/Makefile +++ b/libc/stdlib/Makefile @@ -36,8 +36,11 @@ MSRC2=atexit.c MOBJ2=on_exit.o atexit.o __do_exit.o exit.o -CSRC = abort.c getenv.c mktemp.c qsort.c realpath.c strtod.c \ - abs.c bsearch.c mkstemp.c putenv.c rand.c setenv.c system.c +CSRC = abort.c getenv.c mktemp.c qsort.c realpath.c abs.c bsearch.c \ + mkstemp.c putenv.c rand.c setenv.c system.c +ifeq ($(HAS_FLOATS),true) + CSRC += strtod.c +endif COBJS=$(patsubst %.c,%.o, $(CSRC)) |