Makefile.in 2.5 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. CFLAGS-utils := $(SSP_ALL_CFLAGS) -B$(top_builddir)lib
  8. CFLAGS-utils-common := -I$(top_srcdir)ldso/include -DUCLIBC_RUNTIME_PREFIX=\"$(RUNTIME_PREFIX)\" -DUCLIBC_LDSO=$(UCLIBC_LDSO)
  9. CFLAGS-utils-shared := $(PIEFLAG) $(LDPIEFLAG)
  10. CFLAGS-ldconfig := $(CFLAGS-utils-common)
  11. ifeq ($(UCLIBC_STATIC_LDCONFIG),y)
  12. CFLAGS-ldconfig += -static
  13. else
  14. CFLAGS-ldconfig += $(CFLAGS-utils-shared)
  15. endif
  16. CFLAGS-ldd := $(CFLAGS-utils-common) $(CFLAGS-utils-shared)
  17. CFLAGS-iconv := $(CFLAGS-utils-shared) -DL_iconv_main
  18. CFLAGS-readelf := $(CFLAGS-utils-shared)
  19. HOSTCFLAGS-utils := -include $(top_srcdir)include/elf.h
  20. HOSTCFLAGS-utils-common := $(CFLAGS-utils-common)
  21. ifeq ($(LDSO_CACHE_SUPPORT),y)
  22. HOSTCFLAGS-utils-common += -D__LDSO_CACHE_SUPPORT__=1
  23. endif
  24. HOSTCFLAGS-ldconfig.host := $(HOSTCFLAGS-utils-common)
  25. HOSTCFLAGS-ldd.host := $(HOSTCFLAGS-utils-common) -D_GNU_SOURCE
  26. utils_DIR := $(top_srcdir)utils
  27. utils_OUT := $(top_builddir)utils
  28. DEPS-ldconfig := $(utils_DIR)/chroot_realpath.c
  29. DEPS-ldconfig.host := $(DEPS-ldconfig)
  30. utils_OBJ := readelf
  31. ifeq ($(HAVE_SHARED),y)
  32. utils_OBJ += ldconfig ldd
  33. endif
  34. utils_ICONV_OBJ =
  35. ifeq ($(UCLIBC_HAS_LOCALE),y)
  36. utils_ICONV_OBJ := $(utils_OUT)/iconv
  37. endif
  38. utils_OBJ := $(patsubst %,$(utils_OUT)/%,$(utils_OBJ))
  39. hostutils_OBJ := $(patsubst %,%.host,$(utils_OBJ))
  40. utils: $(utils_OBJ) $(utils_ICONV_OBJ)
  41. # NOTE: We build the utils AFTER we have a uClibc-targeted toolchain.
  42. $(utils_OBJ): $(utils_OUT)/% : $(utils_DIR)/%.c | $(libc)
  43. $(compile.u)
  44. $(utils_OUT)/iconv.c: $(top_srcdir)libc/misc/wchar/wchar.c | $(libc)
  45. $(compile.u)
  46. hostutils: $(hostutils_OBJ)
  47. $(hostutils_OBJ): $(utils_OUT)/%.host : $(utils_DIR)/%.c
  48. $(hcompile.u)
  49. # to be removed after included by main Makefile.in
  50. install: install_utils
  51. clean: utils_clean
  52. install-y += install_utils
  53. install_utils: utils
  54. $(INSTALL) -d $(PREFIX)$(RUNTIME_PREFIX)usr/bin
  55. #$(INSTALL) -m 755 $(utils_OUT)/readelf $(PREFIX)$(RUNTIME_PREFIX)usr/bin/readelf
  56. ifeq ($(HAVE_SHARED),y)
  57. $(INSTALL) -d $(PREFIX)$(RUNTIME_PREFIX)sbin
  58. $(INSTALL) -m 755 $(utils_OUT)/ldd $(PREFIX)$(RUNTIME_PREFIX)usr/bin/ldd
  59. $(INSTALL) -m 755 $(utils_OUT)/ldconfig $(PREFIX)$(RUNTIME_PREFIX)sbin/ldconfig
  60. endif
  61. ifeq ($(UCLIBC_HAS_LOCALE),y)
  62. $(INSTALL) -m 755 $(utils_OUT)/iconv $(PREFIX)$(RUNTIME_PREFIX)usr/bin/iconv
  63. endif
  64. objclean-y += utils_clean
  65. utils_clean:
  66. $(RM) $(utils_OUT)/{ldconfig,ldd,readelf,iconv,*.host}