summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoraliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162>2009-01-21 18:13:02 +0000
committeraliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162>2009-01-21 18:13:02 +0000
commit3aa892d75f38c339a1d7e09126e84f06b05b4232 (patch)
tree4c767613dc06082dfd7282eb70dd75e8fa1da10c
parent17759187b64c59096313ac4455b157a89990ad83 (diff)
downloadqemu-3aa892d75f38c339a1d7e09126e84f06b05b4232.tar.gz
Consolidate linker rules (Avi Kivity)
Use generic rules where posssible, and a LINK macro where not. Signed-off-by: Avi Kivity <avi@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6379 c046a42c-6fe2-441c-8c8c-71466251a162
-rw-r--r--Makefile4
-rw-r--r--Makefile.target10
-rw-r--r--rules.mak4
3 files changed, 12 insertions, 6 deletions
diff --git a/Makefile b/Makefile
index ea76b69a5a..9068181603 100644
--- a/Makefile
+++ b/Makefile
@@ -188,10 +188,10 @@ libqemu_user.a: $(USER_OBJS)
######################################################################
qemu-img$(EXESUF): qemu-img.o qemu-tool.o osdep.o $(BLOCK_OBJS)
- $(CC) $(LDFLAGS) -o $@ $^ -lz $(LIBS)
qemu-nbd$(EXESUF): qemu-nbd.o qemu-tool.o osdep.o $(BLOCK_OBJS)
- $(CC) $(LDFLAGS) -o $@ $^ -lz $(LIBS)
+
+qemu-img$(EXESUF) qemu-nbd$(EXESUF): LIBS += -lz
clean:
# avoid old build problems by removing potentially incorrect old files
diff --git a/Makefile.target b/Makefile.target
index b6d5590f0e..1a02451e5f 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -355,7 +355,7 @@ OBJS+= libqemu.a
signal.o: CFLAGS += $(HELPER_CFLAGS)
$(QEMU_PROG): $(OBJS) ../libqemu_user.a
- $(CC) $(LDFLAGS) -o $@ $^ $(LIBS)
+ $(LINK)
ifeq ($(ARCH),alpha)
# Mark as 32 bit binary, i. e. it will be mapped into the low 31 bit of
# the address space (31 bit so sign extending doesn't matter)
@@ -390,7 +390,7 @@ endif
signal.o: CFLAGS += $(HELPER_CFLAGS)
$(QEMU_PROG): $(OBJS)
- $(CC) $(LDFLAGS) -o $@ $^ $(LIBS)
+ $(LINK)
endif #CONFIG_DARWIN_USER
@@ -494,7 +494,7 @@ endif
signal.o: CFLAGS += $(HELPER_CFLAGS)
$(QEMU_PROG): $(OBJS) ../libqemu_user.a
- $(CC) $(LDFLAGS) -o $@ $^ $(LIBS)
+ $(LINK)
endif #CONFIG_BSD_USER
@@ -719,8 +719,10 @@ LDFLAGS+=-p
main.o: CFLAGS+=-p
endif
+$(QEMU_PROG): LIBS += $(SDL_LIBS) $(COCOA_LIBS) $(CURSES_LIBS) $(BRLAPI_LIBS) $(VDE_LIBS)
+
$(QEMU_PROG): $(OBJS) ../libqemu_common.a libqemu.a
- $(CC) $(LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) $(COCOA_LIBS) $(CURSES_LIBS) $(BRLAPI_LIBS) $(VDE_LIBS)
+ $(LINK)
endif # !CONFIG_USER_ONLY
diff --git a/rules.mak b/rules.mak
index fe0697820f..dd567802bd 100644
--- a/rules.mak
+++ b/rules.mak
@@ -8,3 +8,7 @@
%.o: %.m
$(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
+LINK = $(CC) $(LDFLAGS) -o $@ $^ $(LIBS)
+
+%$(EXESUF): %.o
+ $(LINK)