]> rtime.felk.cvut.cz Git - hercules2020/jailhouse-build.git/commitdiff
Makefile: Add target for remote Jailhouse installation
authorMichal Sojka <michal.sojka@cvut.cz>
Thu, 26 Jul 2018 07:12:21 +0000 (09:12 +0200)
committerMichal Sojka <michal.sojka@cvut.cz>
Mon, 30 Jul 2018 11:26:02 +0000 (13:26 +0200)
build/.gitignore
build/Makefile

index da1ea71b072c87d1b791eadd207ec58fdd0f8c19..7096827b06fb43baaaf0dacd0626a12e2db90d35 100644 (file)
@@ -1,12 +1,13 @@
 /display/
+/jailhouse-install/
 /kernel-4.4/
 /nvgpu/
 /nvhost/
-/nvmap-t18x/
 /nvmap/
-/t18x/
+/nvmap-t18x/
 /rootfs-overlay/bin/prem-test
 /rootfs-overlay/jailhouse/
 /rootfs-overlay/lib/firmware/jailhouse*.bin
 /rootfs-overlay/lib/modules/
 /rootfs-overlay/usr/
+/t18x/
index 25e96200633d5898728f555521e7ce0440c86f22..ad12f99d130801fb0ba305f3ae50be2f76246cd3 100644 (file)
@@ -17,14 +17,31 @@ rootfs-overlay/bin/prem-test: ../test/prem-test
 
 rootfs-overlay/lib/firmware/jailhouse.bin: ../jailhouse/hypervisor/jailhouse.bin
 rootfs-overlay/lib/firmware/jailhouse.bin: $(wildcard ../jailhouse/configs/arm64/*.cell)
-       $(MAKE) -C ../jailhouse -j$(NPROC) install KDIR=$(CURDIR)/linux-4.4 ARCH=arm64 DESTDIR=$(CURDIR)/rootfs-overlay  prefix=/usr
-       mkdir -p rootfs-overlay/jailhouse/configs/ rootfs-overlay/jailhouse/demos/
-#      cp ../jailhouse/inmates/demos/arm64/my-demo.bin rootfs-overlay/jailhouse/demos/
-       cp ../jailhouse/configs/arm64/jetson-tx2.cell rootfs-overlay/jailhouse/configs/
-       cp ../jailhouse/configs/arm64/jetson-tx2-demo.cell rootfs-overlay/jailhouse/configs/
+       $(MAKE) jailhouse-install
 
 jailhouse: ../jailhouse/hypervisor/jailhouse.bin
 
+JAILHOUSE_DESTDIR=$(CURDIR)/rootfs-overlay
+
+jailhouse-install: FORCE
+       $(MAKE) -C ../jailhouse -j$(NPROC) install KDIR=$(CURDIR)/linux-4.4 ARCH=arm64 DESTDIR=$(abspath $(JAILHOUSE_DESTDIR)) prefix=/usr
+       mkdir -p $(JAILHOUSE_DESTDIR)/jailhouse/configs/ $(JAILHOUSE_DESTDIR)/jailhouse/demos/
+#      cp ../jailhouse/inmates/demos/arm64/my-demo.bin rootfs-overlay/jailhouse/demos/
+       cp ../jailhouse/configs/arm64/jetson-tx2.cell $(JAILHOUSE_DESTDIR)/jailhouse/configs/
+       cp ../jailhouse/configs/arm64/jetson-tx2-demo.cell $(JAILHOUSE_DESTDIR)/jailhouse/configs/
+
+# Add something like this to ~/.ssh/config for
+# jailhouse-install-remote to work out of the box:
+#
+#    Host tx2
+#      Hostname 192.168.1.54
+INSTALL_HOST ?= root@tx2
+
+jailhouse-install-remote: JAILHOUSE_DESTDIR=jailhouse-install
+jailhouse-install-remote: jailhouse-install
+       rsync -rlptD jailhouse-install/ $(INSTALL_HOST):/
+       rsync -rlptD rootfs-overlay/lib/modules/ $(INSTALL_HOST):/lib/modules
+
 ../jailhouse/hypervisor/jailhouse.bin: ../jailhouse/include/jailhouse/config.h
 ../jailhouse/hypervisor/jailhouse.bin: linux-4.4/vmlinux
 ../jailhouse/hypervisor/jailhouse.bin: $(addprefix ../jailhouse/,$(shell cd ../jailhouse && git ls-files))
@@ -49,7 +66,7 @@ linux-4.4/vmlinux:
        $(MAKE) -C ../test
 
 clean:
-       rm buildroot/images/rootfs.cpio.uboot linux-4.4/vmlinux
+       rm -rf buildroot/images/rootfs.cpio.uboot linux-4.4/vmlinux buildroot/target `find buildroot/ -name .stamp_target_installed` jailhouse-install
 
 deploy: ../test/prem-test
 #deploy: ../jailhouse/hypervisor/jailhouse.bin