OSDN Git Service

the "all" target should not be depending on "ld-elf2flt"
[uclinux-h8/elf2flt.git] / Makefile.in
index 8b82809..a36200a 100644 (file)
@@ -10,13 +10,22 @@ includedir = @includedir@
 CC = @CC@
 CPU = @target_cpu@
 TARGET = @target_alias@
+SYMBOL_PREFIX = @SYMBOL_PREFIX@
 CFLAGS = @CFLAGS@
 INCLUDES = -I$(srcdir) @bfd_include_dir@ @binutils_include_dir@ @zlib_include_dir@
 CPPFLAGS = @CPPFLAGS@ $(DEFS) $(INCLUDES)
 LDFLAGS = @LDFLAGS@
 LDLIBS = @LIBS@
 INSTALL = @INSTALL@
-DEFS = @DEFS@ -DTARGET_$(CPU)
+DEFS = @DEFS@ \
+       -DTARGET_$(CPU) \
+       -DTARGET_CPU=\"$(CPU)\" \
+       -DSYMBOL_PREFIX=\"$(SYMBOL_PREFIX)\" \
+       -DBINUTILS_LDSCRIPTDIR=\"@binutils_ldscript_dir@\" \
+       -DTARGET_ALIAS=\"$(TARGET)\" \
+       -DNO_GOT_CHECK=@got_check@ \
+       -DUSE_EMIT_RELOCS=@emit_relocs@ \
+       -DEMIT_CTOR_DTOR=@emit_ctor_dtor@
 EXEEXT = @EXEEXT@
 OBJEXT = @OBJEXT@
 
@@ -42,11 +51,20 @@ target_bindir = $(prefix)/$(TARGET)/bin
 target_libdir = $(prefix)/$(TARGET)/lib
 
 
-PROG_ELF2FLT = elf2flt$(EXEEXT)
-PROG_FLTHDR = flthdr$(EXEEXT)
-PROGS = $(PROG_ELF2FLT) $(PROG_FLTHDR)
+PROG_ELF2FLT       = elf2flt$(EXEEXT)
+PROG_FLTHDR        = flthdr$(EXEEXT)
+PROG_LD_ELF2FLT_C  = ld-elf2flt$(EXEEXT)
+PROG_LD_ELF2FLT_SH = ld-elf2flt.sh
 
-all: $(PROGS) ld-elf2flt
+ifeq (@use_ld_elf2flt_binary@,yes)
+PROG_LD_ELF2FLT    = $(PROG_LD_ELF2FLT_C)
+else
+PROG_LD_ELF2FLT    = $(PROG_LD_ELF2FLT_SH)
+endif
+
+PROGS = $(PROG_ELF2FLT) $(PROG_FLTHDR) $(PROG_LD_ELF2FLT_C) $(PROG_LD_ELF2FLT_SH)
+
+all: $(PROGS)
 
 # We need to declare the link explicitly because make only provides
 # implicit rules when EXEEXT is set to nothing
@@ -55,11 +73,15 @@ link = $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS)
 $(PROG_ELF2FLT): elf2flt.o compress.o stubs.o
        $(link)
 
-$(PROG_FLTHDR): flthdr.o compress.o
+$(PROG_FLTHDR): flthdr.o compress.o stubs.o
+       $(link)
+
+ld-elf2flt$(EXEEXT): ld-elf2flt.o stubs.o
        $(link)
 
-ld-elf2flt: $(srcdir)/ld-elf2flt.in
+ld-elf2flt.sh: $(srcdir)/ld-elf2flt.in
        ./config.status $@
+       chmod 755 $@
 
 Makefile: $(srcdir)/Makefile.in
        ./config.status $@
@@ -82,8 +104,8 @@ install:
                mv $(bindir)/$(TARGET)-ld$(EXEEXT) $(bindir)/$(TARGET)-ld.real$(EXEEXT)
        [ -f $(target_bindir)/ld.real$(EXEEXT) ] || \
                mv $(target_bindir)/ld$(EXEEXT) $(target_bindir)/ld.real$(EXEEXT)
-       $(INSTALL) -m 755 ld-elf2flt $(bindir)/$(TARGET)-ld
-       $(INSTALL) -m 755 ld-elf2flt $(target_bindir)/ld
+       $(INSTALL) -m 755 $(PROG_LD_ELF2FLT) $(bindir)/$(TARGET)-ld$(EXEEXT)
+       $(INSTALL) -m 755 $(PROG_LD_ELF2FLT) $(target_bindir)/ld$(EXEEXT)
        $(INSTALL) -m 644 $(SRC_LDFILE) $(target_libdir)/$(LDFILE)
 
 sinclude .deps