diff options
| author | Peter S. Mazinger <ps.m@gmx.net> | 2005-11-23 11:42:14 +0000 | 
|---|---|---|
| committer | Peter S. Mazinger <ps.m@gmx.net> | 2005-11-23 11:42:14 +0000 | 
| commit | b870fba08ebb8c56e0396736ab9f20618fd3da45 (patch) | |
| tree | 73fca42f503a94b31c24f2e3284314754061481b | |
| parent | 69841e625b1a9078dafa26c481fc4273260b609a (diff) | |
Make utils includable into main Makefile.in, add compile.u and hcompile.u, usable in utils and probably tests. vapier, please quite them if you want to
| -rw-r--r-- | Makerules | 6 | ||||
| -rw-r--r-- | utils/Makefile | 96 | ||||
| -rw-r--r-- | utils/Makefile.in | 95 | 
3 files changed, 104 insertions, 93 deletions
@@ -85,6 +85,12 @@ cmd_compile-m = $(CC) $^ -c -o $@ $(CFLAGS) $(ARCH_CFLAGS) $(CFLAGS-$(suffix $@)  cmd_strip     = $(STRIPTOOL) $(STRIP_FLAGS) $^  cmd_ar        = $(AR) $(ARFLAGS) $@ $^ +define compile.u +	$(CC) $^ $(DEPS-$(notdir $@)) -o $@ $(CFLAGS) $(CFLAGS-$(notdir $(^D))) $(CFLAGS-$(notdir $@)) +	$(STRIPTOOL) $(STRIP_FLAGS) $@ +endef +hcompile.u = $(HOSTCC) $^ $(DEPS-$(notdir $@)) -o $@ -Wl,-s $(HOSTCFLAGS) $(HOSTCFLAGS-$(notdir $(^D))) $(HOSTCFLAGS-$(notdir $@)) +  compile.c = @$(disp_compile.c) ; $(cmd_compile.c)  compile.E = $(cmd_compile.c:-c=-E)  compile.S = @$(disp_compile.S) ; $(cmd_compile.S) diff --git a/utils/Makefile b/utils/Makefile index d3961dc3b..bdaea9fd4 100644 --- a/utils/Makefile +++ b/utils/Makefile @@ -8,96 +8,6 @@  top_srcdir=../  top_builddir=../  include $(top_builddir)Rules.mak - -CFLAGS += $(SSP_ALL_CFLAGS) -B$(top_builddir)lib -I$(top_srcdir)ldso/include - -TARGETS = ldd ldconfig - -ifeq ($(UCLIBC_HAS_LOCALE),y) -TARGET_ICONV = iconv -else -TARGET_ICONV = -endif - -ifeq ($(LDSO_CACHE_SUPPORT),y) -HOST_LDSO_CACHE_FLAG = -D__LDSO_CACHE_SUPPORT__=1 -else -HOST_LDSO_CACHE_FLAG = -endif - -# NOTE: We build the utils AFTER we have a uClibc-targeted toolchain. - -ifeq ($(HAVE_SHARED),y) -all: $(TARGETS) $(TARGET_ICONV) -else -all: $(TARGET_ICONV) -endif - -readelf: readelf.c -	$(CC) $(CFLAGS) $^ -o $@ -	$(STRIPTOOL) -s -x -R .note -R .comment $@ - -ifeq ($(UCLIBC_STATIC_LDCONFIG),y) -LDCONFIG_CFLAGS := -static -else -LDCONFIG_CFLAGS := $(PIEFLAG) $(LDPIEFLAG) -endif -ldconfig: ldconfig.c chroot_realpath.c -	$(CC) $(CFLAGS) $(LDCONFIG_CFLAGS) \ -		-DUCLIBC_RUNTIME_PREFIX=\"$(RUNTIME_PREFIX)\" \ -		-DUCLIBC_LDSO=$(UCLIBC_LDSO) \ -		$^ -o $@ -	$(STRIPTOOL) -s -x -R .note -R .comment $@ - -LDD_CFLAGS := $(PIEFLAG) $(LDPIEFLAG) -ldd: ldd.c -	$(CC) $(CFLAGS) $(LDD_CFLAGS) \ -		-DUCLIBC_RUNTIME_PREFIX=\"$(RUNTIME_PREFIX)\" \ -		-DUCLIBC_LDSO=$(UCLIBC_LDSO) \ -		$^ -o $@ -	$(STRIPTOOL) -s -x -R .note -R .comment $@ - -ICONV_CFLAGS := $(PIEFLAG) $(LDPIEFLAG) -iconv: $(top_srcdir)libc/misc/wchar/wchar.c -	$(CC) $(CFLAGS) $(ICONV_CFLAGS) \ -		-DL_iconv_main \ -		$^ -o $@ -	$(STRIPTOOL) -s -x -R .note -R .comment $@ - -ifeq ($(HAVE_SHARED),y) -hostutils: ldd.host ldconfig.host readelf.host -else -hostutils: readelf.host -endif - -HOSTCFLAGS += -include $(top_srcdir)include/elf.h - -ldd.host: ldd.c -	$(HOSTCC) $(HOSTCFLAGS) -Wl,-s \ - 		-DUCLIBC_RUNTIME_PREFIX=\"$(RUNTIME_PREFIX)\" $(HOST_LDSO_CACHE_FLAG) \ -		-DUCLIBC_LDSO=$(UCLIBC_LDSO) -I$(top_srcdir)ldso/include \ -		$^ -o $@ - -ldconfig.host: ldconfig.c chroot_realpath.c -	$(HOSTCC) $(HOSTCFLAGS) -Wl,-s \ - 		-DUCLIBC_RUNTIME_PREFIX=\"$(RUNTIME_PREFIX)\" $(HOST_LDSO_CACHE_FLAG) \ -		-DUCLIBC_LDSO=$(UCLIBC_LDSO) -I$(top_srcdir)ldso/include \ -		$^ -o $@ - -readelf.host: readelf.c -	$(HOSTCC) $(HOSTCFLAGS) -Wl,-s $^ -o $@ - -clean: -	$(RM) $(TARGETS) *.o *~ core readelf iconv *.host - -install: all -ifeq ($(HAVE_SHARED),y) -	$(INSTALL) -d $(PREFIX)$(RUNTIME_PREFIX)sbin -	$(INSTALL) -d $(PREFIX)$(RUNTIME_PREFIX)usr/bin -	$(INSTALL) -m 755 ldd $(PREFIX)$(RUNTIME_PREFIX)usr/bin/ldd -	$(INSTALL) -m 755 ldconfig $(PREFIX)$(RUNTIME_PREFIX)sbin/ldconfig -	#$(INSTALL) -m 755 readelf $(PREFIX)$(RUNTIME_PREFIX)usr/bin/readelf -endif -ifeq ($(UCLIBC_HAS_LOCALE),y) -	$(INSTALL) -m 755 iconv $(PREFIX)$(RUNTIME_PREFIX)usr/bin/iconv -endif +all: utils +include Makefile.in +include $(top_srcdir)Makerules diff --git a/utils/Makefile.in b/utils/Makefile.in new file mode 100644 index 000000000..d5b4da568 --- /dev/null +++ b/utils/Makefile.in @@ -0,0 +1,95 @@ +# Makefile for uClibc +# +# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org> +# +# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. +# + +CFLAGS-utils := $(SSP_ALL_CFLAGS) -B$(top_builddir)lib + +CFLAGS-utils-common := -I$(top_srcdir)ldso/include -DUCLIBC_RUNTIME_PREFIX=\"$(RUNTIME_PREFIX)\" -DUCLIBC_LDSO=$(UCLIBC_LDSO) +CFLAGS-utils-shared := $(PIEFLAG) $(LDPIEFLAG) + +CFLAGS-ldconfig := $(CFLAGS-utils-common) + +ifeq ($(UCLIBC_STATIC_LDCONFIG),y) +CFLAGS-ldconfig += -static +else +CFLAGS-ldconfig += $(CFLAGS-utils-shared) +endif + +CFLAGS-ldd := $(CFLAGS-utils-common) $(CFLAGS-utils-shared) + +CFLAGS-iconv := $(CFLAGS-utils-shared) -DL_iconv_main + +CFLAGS-readelf := $(CFLAGS-utils-shared) + +HOSTCFLAGS-utils := -include $(top_srcdir)include/elf.h + +HOSTCFLAGS-utils-common := $(CFLAGS-utils-common) + +ifeq ($(LDSO_CACHE_SUPPORT),y) +HOSTCFLAGS-utils-common += -D__LDSO_CACHE_SUPPORT__=1 +endif + +HOSTCFLAGS-ldconfig.host := $(HOSTCFLAGS-utils-common) + +HOSTCFLAGS-ldd.host := $(HOSTCFLAGS-utils-common) -D_GNU_SOURCE + +utils_DIR := $(top_srcdir)utils +utils_OUT := $(top_builddir)utils + +DEPS-ldconfig := $(utils_DIR)/chroot_realpath.c +DEPS-ldconfig.host := $(DEPS-ldconfig) + +utils_OBJ := readelf +ifeq ($(HAVE_SHARED),y) +utils_OBJ += ldconfig ldd +endif + +utils_ICONV_OBJ = +ifeq ($(UCLIBC_HAS_LOCALE),y) +utils_ICONV_OBJ := $(utils_OUT)/iconv +endif + +utils_OBJ := $(patsubst %,$(utils_OUT)/%,$(utils_OBJ)) + +hostutils_OBJ := $(patsubst %,%.host,$(utils_OBJ)) + +utils: $(utils_OBJ) $(utils_ICONV_OBJ) + +# NOTE: We build the utils AFTER we have a uClibc-targeted toolchain. + +$(utils_OBJ): $(utils_OUT)/% : $(utils_DIR)/%.c | $(libc) +	$(compile.u) + +$(utils_OUT)/iconv.c: $(top_srcdir)libc/misc/wchar/wchar.c | $(libc) +	$(compile.u) + +hostutils: $(hostutils_OBJ) + +$(hostutils_OBJ): $(utils_OUT)/%.host : $(utils_DIR)/%.c +	$(hcompile.u) + +# to be removed after included by main Makefile.in +install: install_utils +clean: utils_clean + +install-y += install_utils + +install_utils: utils +	$(INSTALL) -d $(PREFIX)$(RUNTIME_PREFIX)usr/bin +	#$(INSTALL) -m 755 $(utils_OUT)/readelf $(PREFIX)$(RUNTIME_PREFIX)usr/bin/readelf +ifeq ($(HAVE_SHARED),y) +	$(INSTALL) -d $(PREFIX)$(RUNTIME_PREFIX)sbin +	$(INSTALL) -m 755 $(utils_OUT)/ldd $(PREFIX)$(RUNTIME_PREFIX)usr/bin/ldd +	$(INSTALL) -m 755 $(utils_OUT)/ldconfig $(PREFIX)$(RUNTIME_PREFIX)sbin/ldconfig +endif +ifeq ($(UCLIBC_HAS_LOCALE),y) +	$(INSTALL) -m 755 $(utils_OUT)/iconv $(PREFIX)$(RUNTIME_PREFIX)usr/bin/iconv +endif + +objclean-y += utils_clean + +utils_clean: +	$(RM) $(utils_OUT)/{ldconfig,ldd,readelf,iconv,*.host}  | 
