Makefile.arch 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. # Makefile for uClibc
  2. #
  3. # Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
  4. #
  5. # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
  6. #
  7. CSRC := brk.c ioperm.c iopl.c mmap.c __syscall_error.c sigaction.c
  8. SSRC := \
  9. __longjmp.S setjmp.S bsd-setjmp.S \
  10. bsd-_setjmp.S sigrestorer.S mmap64.S \
  11. vfork.S clone.S
  12. ifeq ($(UCLIBC_HAS_THREADS_NATIVE),y)
  13. SSRC += libc-aeabi_read_tp.S libc-thumb_atomics.S
  14. endif
  15. ifeq ($(UCLIBC_HAS_ADVANCED_REALTIME),y)
  16. CSRC += posix_fadvise.c posix_fadvise64.c
  17. endif
  18. # Is our compiler set up for EABI ?
  19. IS_EABI:=$(shell $(CC) $(CFLAGS) -x c - -E -dM </dev/null 2>/dev/null \
  20. |sed -r -e '/^\#[[:space:]]*define[[:space:]]+__ARM_EABI__([[:space:]]+1)?$$/!d; s/.+/y/;' \
  21. )
  22. ifeq ($(IS_EABI),y)
  23. CSRC += aeabi_assert.c aeabi_atexit.c aeabi_errno_addr.c \
  24. aeabi_localeconv.c aeabi_memclr.c aeabi_memcpy.c \
  25. aeabi_memmove.c aeabi_memset.c find_exidx.c
  26. SSRC += syscall-eabi.S
  27. ARCH_OBJ_FILTEROUT := syscall.c
  28. ifeq ($(UCLIBC_HAS_WCHAR),y)
  29. CSRC += aeabi_mb_cur_max.c
  30. endif
  31. else
  32. CSRC += syscall.c
  33. endif
  34. ifeq ($(IS_EABI),y)
  35. libc-static-y += $(ARCH_OUT)/aeabi_lcsts.o $(ARCH_OUT)/aeabi_math.o \
  36. $(ARCH_OUT)/aeabi_sighandlers.o
  37. libc-nonshared-y += $(ARCH_OUT)/aeabi_lcsts.os $(ARCH_OUT)/aeabi_math.os \
  38. $(ARCH_OUT)/aeabi_sighandlers.os $(ARCH_OUT)/aeabi_unwind_cpp_pr1.o
  39. endif