summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
1c80cf0)
Linking fails when using -Wl,--as-needed and/or esp. when forcing --as-needed
through a compiler specs file.
A proper compile/link command would look like: $(CC) $(CFLAGS) $(LDFLAGS) -o foo
$(OBJS) $(LIBS). So the *FLAGS must be passed *before* the objects while the
libraries/dependencies must be passed *after* the objects.
For more details see: http://www.gentoo.org/proj/en/qa/asneeded.xml
Change-Id: I5a5b05e1cab8a2d88ce56c92d9b2f991ca1ee6c0
Signed-off-by: Christian Ruppert <idl0r@qasl.de>
Reviewed-on: http://review.coreboot.org/494
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
$(objk)/gconf: $(patsubst %,$(objk)/%,$(gconf-objs))
$(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOSTLOADLIBES_gconf) -o $@ $^
$(objk)/mconf: $(patsubst %,$(objk)/%,$(mconf-objs))
$(objk)/gconf: $(patsubst %,$(objk)/%,$(gconf-objs))
$(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOSTLOADLIBES_gconf) -o $@ $^
$(objk)/mconf: $(patsubst %,$(objk)/%,$(mconf-objs))
- $(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) $(HOST_LOADLIBES) -o $@ $^
+ $(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) -o $@ $^ $(HOST_LOADLIBES)
$(objk)/conf: $(patsubst %,$(objk)/%,$(conf-objs))
$(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) -o $@ $^
$(objk)/conf: $(patsubst %,$(objk)/%,$(conf-objs))
$(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) -o $@ $^
$(objk)/lxdialog/lxdialog: $(objk)/dochecklxdialog \
$(patsubst %,$(objk)/lxdialog/%,$(lxdialog))
$(objk)/lxdialog/lxdialog: $(objk)/dochecklxdialog \
$(patsubst %,$(objk)/lxdialog/%,$(lxdialog))
- $(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) $(HOST_LOADLIBES) \
- $(patsubst %,$(objk)/lxdialog/%,$(lxdialog)) -o $@
+ $(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) \
+ $(patsubst %,$(objk)/lxdialog/%,$(lxdialog)) $(HOST_LOADLIBES) -o $@
$(objk)/lxdialog/%.o: $(srck)/lxdialog/%.c
$(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) $^ -c -o $@
$(objk)/lxdialog/%.o: $(srck)/lxdialog/%.c
$(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) $^ -c -o $@
$(objk)/gconf: $(patsubst %,$(objk)/%,$(gconf-objs))
$(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOSTLOADLIBES_gconf) -o $@ $^
$(objk)/mconf: $(patsubst %,$(objk)/%,$(mconf-objs))
$(objk)/gconf: $(patsubst %,$(objk)/%,$(gconf-objs))
$(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOSTLOADLIBES_gconf) -o $@ $^
$(objk)/mconf: $(patsubst %,$(objk)/%,$(mconf-objs))
- $(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) $(HOST_LOADLIBES) -o $@ $^
+ $(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) -o $@ $^ $(HOST_LOADLIBES)
$(objk)/conf: $(patsubst %,$(objk)/%,$(conf-objs))
$(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) -o $@ $^
$(objk)/conf: $(patsubst %,$(objk)/%,$(conf-objs))
$(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) -o $@ $^
$(objk)/lxdialog/lxdialog: $(objk)/dochecklxdialog \
$(patsubst %,$(objk)/lxdialog/%,$(lxdialog))
$(objk)/lxdialog/lxdialog: $(objk)/dochecklxdialog \
$(patsubst %,$(objk)/lxdialog/%,$(lxdialog))
- $(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) $(HOST_LOADLIBES) \
- $(patsubst %,$(objk)/lxdialog/%,$(lxdialog)) -o $@
+ $(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) \
+ $(patsubst %,$(objk)/lxdialog/%,$(lxdialog)) $(HOST_LOADLIBES) -o $@
$(objk)/lxdialog/%.o: $(srck)/lxdialog/%.c
$(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) $^ -c -o $@
$(objk)/lxdialog/%.o: $(srck)/lxdialog/%.c
$(Q)$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) $^ -c -o $@
$(objk)/lxdialog/lxdialog: $(objk)/dochecklxdialog \
$(patsubst %,$(objk)/lxdialog/%,$(lxdialog))
$(objk)/lxdialog/lxdialog: $(objk)/dochecklxdialog \
$(patsubst %,$(objk)/lxdialog/%,$(lxdialog))
- $(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) $(HOST_LOADLIBES) \
- $(patsubst %,$(objk)/lxdialog/%,$(lxdialog)) -o $@
+ $(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) \
+ $(patsubst %,$(objk)/lxdialog/%,$(lxdialog)) $(HOST_LOADLIBES) -o $@
$(objk)/lxdialog/%.o: $(srck)/lxdialog/%.c
$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) $^ -c -o $@
$(objk)/lxdialog/%.o: $(srck)/lxdialog/%.c
$(HOSTCC) $(HOSTCFLAGS) $(HOST_EXTRACFLAGS) $^ -c -o $@