Skip to content

Commit

Permalink
trace: Put all trace.o into libqemuutil.a
Browse files Browse the repository at this point in the history
Currently all trace.o are linked into qemu-system, qemu-img,
qemu-nbd, qemu-io etc., even the corresponding components
are not included.
Put all trace.o into libqemuutil.a that the linker would only pull in .o
files containing symbols that are actually referenced by the
program.

Signed-off -by: Anthony Xu <[email protected]>
Signed-off-by: Stefan Hajnoczi <[email protected]>
  • Loading branch information
Xu, Anthony authored and stefanhaRH committed Apr 21, 2017
1 parent c53eeaf commit 3d1bacc
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 7 deletions.
6 changes: 3 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -346,7 +346,7 @@ dtc/%:
mkdir -p $@

$(SUBDIR_RULES): libqemuutil.a libqemustub.a $(common-obj-y) $(chardev-obj-y) \
$(qom-obj-y) $(crypto-aes-obj-$(CONFIG_USER_ONLY)) $(trace-obj-y)
$(qom-obj-y) $(crypto-aes-obj-$(CONFIG_USER_ONLY))

ROMSUBDIR_RULES=$(patsubst %,romsubdir-%, $(ROMS))
# Only keep -O and -g cflags
Expand All @@ -366,11 +366,11 @@ Makefile: $(version-obj-y)
# Build libraries

libqemustub.a: $(stub-obj-y)
libqemuutil.a: $(util-obj-y)
libqemuutil.a: $(util-obj-y) $(trace-obj-y)

######################################################################

COMMON_LDADDS = $(trace-obj-y) libqemuutil.a libqemustub.a
COMMON_LDADDS = libqemuutil.a libqemustub.a

qemu-img.o: qemu-img-cmds.h

Expand Down
5 changes: 2 additions & 3 deletions Makefile.target
Original file line number Diff line number Diff line change
Expand Up @@ -188,8 +188,7 @@ dummy := $(call unnest-vars,.., \
qom-obj-y \
io-obj-y \
common-obj-y \
common-obj-m \
trace-obj-y)
common-obj-m)
target-obj-y := $(target-obj-y-save)
all-obj-y += $(common-obj-y)
all-obj-y += $(target-obj-y)
Expand All @@ -201,7 +200,7 @@ all-obj-$(CONFIG_SOFTMMU) += $(io-obj-y)

$(QEMU_PROG_BUILD): config-devices.mak

COMMON_LDADDS = $(trace-obj-y) ../libqemuutil.a ../libqemustub.a
COMMON_LDADDS = ../libqemuutil.a ../libqemustub.a

# build either PROG or PROGW
$(QEMU_PROG_BUILD): $(all-obj-y) $(COMMON_LDADDS)
Expand Down
2 changes: 1 addition & 1 deletion tests/Makefile.include
Original file line number Diff line number Diff line change
Expand Up @@ -519,7 +519,7 @@ QEMU_CFLAGS += -I$(SRC_PATH)/tests


# Deps that are common to various different sets of tests below
test-util-obj-y = $(trace-obj-y) libqemuutil.a libqemustub.a
test-util-obj-y = libqemuutil.a libqemustub.a
test-qom-obj-y = $(qom-obj-y) $(test-util-obj-y)
test-qapi-obj-y = tests/test-qapi-visit.o tests/test-qapi-types.o \
tests/test-qapi-event.o tests/test-qmp-introspect.o \
Expand Down

0 comments on commit 3d1bacc

Please sign in to comment.