# 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.
#

EXTRA_CFLAGS := -DNOT_IN_libc -DIS_IN_rtld $(SSP_DISABLE_FLAGS)
EXTRA_AFLAGS := -DNOT_IN_libc -DIS_IN_rtld

# This stuff will not work with -fomit-frame-pointer
EXTRA_CFLAGS += -fno-omit-frame-pointer

EXTRA_CFLAGS += -I$(srctree)/ldso/ldso/$(ARCH) -I$(srctree)/ldso/include -I$(srctree)/ldso/ldso
EXTRA_CFLAGS += -DUCLIBC_RUNTIME_PREFIX=\"$(RUNTIME_PREFIX)\" -DUCLIBC_LDSO=\"$(UCLIBC_LDSO)\"

CFLAGS_ldso.oS := -DLDSO_ELFINTERP=\"$(ARCH)/elfinterp.c\"

#XX ifneq ($(SUPPORT_LD_DEBUG),y)
#XX LDFLAGS-$(UCLIBC_LDSO_NAME).so := $(LDFLAGS)
#XX else
#XX LDFLAGS-$(UCLIBC_LDSO_NAME).so := $(LDFLAGS_NOSTRIP) -Wl,-z,defs
#XX endif
#XX LDFLAGS-$(UCLIBC_LDSO_NAME).so += -Wl,-e,_start -Wl,-z,now -Wl,-Bsymbolic -Wl,--export-dynamic -Wl,--sort-common -Wl,--discard-locals -Wl,--discard-all -Wl,--no-undefined

# In ldso/, we do not need to form separate klib.list and klib_shared.list
# (we just list all .oS files explicitly in ld-uClibc_so.a rule - se below),
# no need to use klib-shared-y.
klib-y += ldso.oS $(ARCH)/resolve.os $(ARCH)/resolve.oS


always += $(obj)/ld-uClibc_so.a

$(obj)/ld-uClibc_so.a: $(obj)/ldso.oS $(obj)/$(ARCH)/resolve.oS
	@echo '  AR      $@'
	$(Q)rm -f $@; mkdir -p $(dir $@)
	$(Q)$(AR) cr $@ $^
