Make.inc 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. CC=gcc
  2. OS = $(shell uname)
  3. ARCH = $(shell uname -m)
  4. CFLAGS= -std=gnu99 -Wall -O2 -I$(OPENLIBM_HOME) -I$(OPENLIBM_HOME)/include -I$(OPENLIBM_HOME)/ld80 -I$(OPENLIBM_HOME)/$(ARCH) -I$(OPENLIBM_HOME)/src -DASSEMBLER -D__BSD_VISIBLE -Wno-implicit-function-declaration
  5. default: all
  6. %.c.o: %.c
  7. $(QUIET_CC)$(CC) $(CFLAGS) -c $< -o $@
  8. %.S.o: %.S
  9. $(QUIET_ASM)$(CC) $(filter -f% -m% -B% -I% -D%,$(CFLAGS)) -c $< -o $@
  10. clean:
  11. rm -f *.o *.c.o *.S.o *~
  12. # OS-specific stuff
  13. ifeq ($(ARCH),i386)
  14. override ARCH = i387
  15. endif
  16. ifeq ($(ARCH),x86_64)
  17. override ARCH = amd64
  18. endif
  19. ifeq ($(ARCH),i686)
  20. override ARCH = amd64
  21. endif
  22. ifeq ($(OS), MINGW32_NT-6.1)
  23. OS=WINNT
  24. CFLAGS+=-nodefaultlibs
  25. endif
  26. ifeq ($(OS), Linux)
  27. SHLIB_EXT = so
  28. CFLAGS+=-fPIC
  29. endif
  30. ifeq ($(OS), FreeBSD)
  31. SHLIB_EXT = so
  32. CFLAGS+=-fPIC
  33. endif
  34. ifeq ($(OS), Darwin)
  35. SHLIB_EXT = dylib
  36. CFLAGS+=-fPIC
  37. endif
  38. ifeq ($(OS), WINNT)
  39. SHLIB_EXT = dll
  40. endif
  41. # Colors for make
  42. CCCOLOR="\033[34m"
  43. LINKCOLOR="\033[34;1m"
  44. SRCCOLOR="\033[33m"
  45. BINCOLOR="\033[37;1m"
  46. MAKECOLOR="\033[32;1m"
  47. ENDCOLOR="\033[0m"
  48. QUIET_CC = @printf ' %b %b\n' $(CCCOLOR)CC$(ENDCOLOR) $(SRCCOLOR)$@$(ENDCOLOR);
  49. QUIET_ASM = @printf ' %b %b\n' $(CCCOLOR)ASM$(ENDCOLOR) $(SRCCOLOR)$@$(ENDCOLOR);
  50. QUIET_LINK = @printf ' %b %b\n' $(LINKCOLOR)LINK$(ENDCOLOR) $(BINCOLOR)$@$(ENDCOLOR);