Makefile.in 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  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. # order is relevant
  8. -include $(top_srcdir)libc/string/$(TARGET_ARCH)/Makefile.arch
  9. include $(top_srcdir)libc/string/generic/Makefile.in
  10. MSRC:=wstring.c
  11. MOBJ:= basename.o bcopy.o bzero.o dirname.o ffs.o memccpy.o memchr.o memcmp.o \
  12. memcpy.o memmove.o mempcpy.o memrchr.o memset.o rawmemchr.o stpcpy.o \
  13. stpncpy.o strcasecmp.o strcasestr.o strcat.o strchrnul.o strchr.o \
  14. strcmp.o strcpy.o strcspn.o strdup.o strlen.o strncasecmp.o strncat.o \
  15. strncmp.o strncpy.o strndup.o strnlen.o strpbrk.o strrchr.o strsep.o \
  16. strspn.o strstr.o strtok.o strtok_r.o strerror.o __xpg_strerror_r.o \
  17. _string_syserrmsgs.o __glibc_strerror_r.o \
  18. _string_syssigmsgs.o sys_siglist.o strsignal.o psignal.o \
  19. __xpg_basename.o strlcat.o strlcpy.o sys_errlist.o memmem.o
  20. MOBJW=
  21. ifeq ($(UCLIBC_HAS_WCHAR),y)
  22. MOBJW= wcscasecmp.o wcscat.o wcschrnul.o wcschr.o wcscmp.o wcscpy.o wcscspn.o \
  23. wcsdup.o wcslen.o wcsncasecmp.o wcsncat.o wcsncmp.o wcsncpy.o \
  24. wcsnlen.o wcspbrk.o wcsrchr.o wcsspn.o wcsstr.o wcstok.o wmemchr.o \
  25. wmemcmp.o wmemcpy.o wmemmove.o wmempcpy.o wmemset.o wcpcpy.o wcpncpy.o \
  26. __wcslcpy.o \
  27. wcsxfrm.o strxfrm.o # wcscoll strcoll.o
  28. endif
  29. MOBJx=
  30. MOBJWx=
  31. ifeq ($(UCLIBC_HAS_XLOCALE),y)
  32. MOBJx+=strcasecmp_l.o strncasecmp_l.o
  33. ifeq ($(UCLIBC_HAS_WCHAR),y)
  34. MOBJWx+=wcscasecmp_l.o wcsncasecmp_l.o wcsxfrm_l.o strxfrm_l.o
  35. endif
  36. endif
  37. #ffsl ffsll
  38. ifeq ($(UCLIBC_HAS_STRING_ARCH_OPT),y)
  39. ifneq ($(strip $(STRING_ARCH_OBJS)),)
  40. MOBJ:=$(filter-out $(notdir $(STRING_ARCH_OBJS)),$(MOBJ))
  41. endif
  42. endif
  43. ifeq ($(UCLIBC_HAS_STRING_GENERIC_OPT),y)
  44. ifneq ($(strip $(STRING_GENERIC_OBJS)),)
  45. MOBJ:=$(filter-out $(notdir $(STRING_GENERIC_OBJS)),$(MOBJ))
  46. endif
  47. endif
  48. STRING_DIR:=$(top_srcdir)libc/string
  49. STRING_OUT:=$(top_builddir)libc/string
  50. STRING_MSRC:=$(patsubst %.c,$(STRING_DIR)/%.c,$(MSRC))
  51. STRING_MOBJ:=$(patsubst %.o,$(STRING_OUT)/%.o,$(MOBJ))
  52. STRING_MOBJW=$(patsubst %.o,$(STRING_OUT)/%.o,$(MOBJW))
  53. STRING_MOBJx=$(patsubst %.o,$(STRING_OUT)/%.o,$(MOBJx))
  54. STRING_MOBJWx=$(patsubst %.o,$(STRING_OUT)/%.o,$(MOBJWx))
  55. #STRING_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(STRING_MOBJ))))
  56. STRING_Wx=$(STRING_MOBJW) $(STRING_MOBJx) $(STRING_MOBJWx)
  57. STRING_OBJS:=$(STRING_MOBJ) $(STRING_Wx)
  58. $(STRING_MOBJ) $(STRING_MOBJ:.o=.os): $(STRING_MSRC)
  59. $(compile.m)
  60. $(STRING_MOBJW) $(STRING_MOBJW:.o=.os): $(STRING_MSRC)
  61. $(compile.m) -DWANT_WIDE
  62. $(STRING_MOBJx) $(STRING_MOBJx:.o=.os): $(STRING_MSRC)
  63. $(compile.m) -D__UCLIBC_DO_XLOCALE
  64. $(STRING_MOBJWx) $(STRING_MOBJWx:.o=.os): $(STRING_MSRC)
  65. $(compile.m) -DWANT_WIDE -D__UCLIBC_DO_XLOCALE
  66. libc-a-y+=$(STRING_OBJS)
  67. libc-a-pic-y+=$(STRING_OBJS:.o=.os)
  68. libc-so-y+=$(STRING_OBJS:.o=.os)
  69. # multi does not work here, because arch/Makefile.in uses the same L_* defines
  70. #CFLAGS-multi-y+=$(STRING_DEF)
  71. #libc-multi-y+=$(STRING_MSRC)
  72. #libc-nomulti-y+=$(STRING_Wx)
  73. libc-nomulti-y+=$(STRING_OBJS)
  74. objclean-y+=string_objclean
  75. string_objclean:
  76. $(RM) $(STRING_OUT)/{,*/}*.{o,os}