summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Mustacchi <rm@joyent.com>2012-07-30 20:26:23 +0000
committerRobert Mustacchi <rm@joyent.com>2012-07-30 20:26:23 +0000
commit4f02b83495e4e3296776301067ce29e5299e4329 (patch)
tree9daa99b7ffd1a87bf8e0f717748624f7d9137a47
parentdf8e4784a27833c3e3e49a2d1729114232ef8eea (diff)
downloadillumos-kvm-cmd-4f02b83495e4e3296776301067ce29e5299e4329.tar.gz
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
-rw-r--r--Makefile.joyent10
-rw-r--r--Makefile.target1
-rwxr-xr-xbuild.sh8
-rw-r--r--rules.mak2
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