From 4f02b83495e4e3296776301067ce29e5299e4329 Mon Sep 17 00:00:00 2001 From: Robert Mustacchi Date: Mon, 30 Jul 2012 20:26:23 +0000 Subject: HVM-721 kvm-cmd builds too many times HVM-735 qemu should build with V=1 HVM-736 Qemu is missing a call to ctfmerge --- Makefile.joyent | 10 +++++++--- Makefile.target | 1 + build.sh | 8 ++++++-- rules.mak | 2 ++ 4 files changed, 16 insertions(+), 5 deletions(-) diff --git a/Makefile.joyent b/Makefile.joyent index 6d80317..5146d92 100644 --- a/Makefile.joyent +++ b/Makefile.joyent @@ -19,12 +19,16 @@ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN # THE SOFTWARE. # + KERNEL_SOURCE=$(PWD)/../../illumos CTFBINDIR=$(KERNEL_SOURCE)/usr/src/tools/proto/*/opt/onbld/bin/i386 -world: +world: config-host.mak echo "Building world" - PATH=$(PATH):$(CTFBINDIR) ./build.sh + PATH=$(CTFBINDIR):$(PATH) V=1 gmake all + +config-host.mak: + PATH=$(CTFBINDIR):$(PATH) CONFIGURE_ONLY=1 ./build.sh update: git pull --rebase @@ -34,7 +38,7 @@ manifest: install: world echo "Building install" - DESTDIR=$(DESTDIR) PATH=$(PATH):$(CTFBINDIR) gmake install + DESTDIR=$(DESTDIR) PATH=$(CTFBINDIR):$(PATH) V=1 gmake install clean: gmake clean diff --git a/Makefile.target b/Makefile.target index 1b57554..fa8b1f0 100644 --- a/Makefile.target +++ b/Makefile.target @@ -388,6 +388,7 @@ $(QEMU_PROG): $(obj-y) $(obj-$(TARGET_BASE_ARCH)-y) $(call quiet-command, dtrace $(CONFIG_DTRACE_FLAGS) -o ../trace-dtrace.o -s ../trace-dtrace.dtrace -G $(obj-y) $(obj-$(TARGET_BASE_ARCH)-y)," LINK $(TARGET_DIR)$@.dtrace") $(call quiet-command, find ../ -type f -name '*.o' -exec ../ctf.sh '{}' \;) $(call LINK,$(obj-y) $(obj-$(TARGET_BASE_ARCH)-y)) + $(call CTFMERGE, $(obj-y) $(obj-$(TARGET_BASE_ARCH)-y)) else $(QEMU_PROG): $(obj-y) $(obj-$(TARGET_BASE_ARCH)-y) $(call LINK,$(obj-y) $(obj-$(TARGET_BASE_ARCH)-y)) diff --git a/build.sh b/build.sh index 128d1d7..415f13e 100755 --- a/build.sh +++ b/build.sh @@ -75,5 +75,9 @@ KERNEL_SOURCE="${KERNEL_SOURCE:-$(pwd)/../../illumos}" CTFBINDIR="$KERNEL_SOURCE"/usr/src/tools/proto/root_i386-nd/opt/onbld/bin/i386 export PATH="$PATH:$CTFBINDIR" -echo "==> Make" -gmake +if [[ -z "CONFIGURE_ONLY" ]]; then + echo "==> Make" + gmake +else + echo "Not running make per-request" +fi diff --git a/rules.mak b/rules.mak index d48bd91..47d12b2 100644 --- a/rules.mak +++ b/rules.mak @@ -25,6 +25,8 @@ QEMU_DGFLAGS += -MMD -MP -MT $@ -MF $(*D)/$(*F).d LINK = $(call quiet-command,$(CC) $(QEMU_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $(1) $(LIBS)," LINK $(TARGET_DIR)$@") +CTFMERGE = $(call quiet-command, $$(which ctfmerge) -L VERSION -o $@ $(1)," CTFMERGE $(TARGET_DIR)$@") + ifeq ($(TRACE_BACKEND),dtrace) ifneq ($(strip $(CONFIG_SOLARIS)),) %$(EXESUF): %.o -- cgit v1.2.3