genode/base-nova/Makefile
Christian Helmuth 2f357a7224 Firewall-friendly download methods for contrib src
After this commit "make prepare" uses HTTP, HTTPS, or FTP where possible
fvor downloading third-party source codes. This prevents problems with
strict firewall rules where only selected ports are usable.

Unfortunately, git.l4android.org does not support Git via HTTP and,
therefore, the sources need a working Git port (9418).

Fixes #443.
2012-10-30 12:12:42 +01:00

51 lines
1.1 KiB
Makefile

#
# \brief Download, and unpack the NOVA hypervisor.
# \author Stefan Kalkowski
# \author Alexander Boettcher
# \date 2012-06-04
#
VERBOSE ?= @
ECHO = @echo
GIT_URL = https://github.com/IntelLabs/NOVA.git
GIT_REV = ad92f48564b1ed53e67f58e194c918af4da6a32d
CONTRIB_DIR = contrib
PATCHES = $(shell find patches -name '*.patch')
#
# Utility to check if a tool is installed
#
check_tool = $(if $(shell which $(1)),,$(error Need to have '$(1)' installed.))
$(call check_tool,git)
$(call check_tool,patch)
#
# Print help information by default
#
help::
prepare: $(CONTRIB_DIR)
help::
$(ECHO)
$(ECHO) "Prepare the NOVA base repository"
$(ECHO)
$(ECHO) "--- available commands ---"
$(ECHO) "prepare - checkout upstream source codes"
$(ECHO) "clean - remove upstream source codes"
$(ECHO)
$(CONTRIB_DIR)/.git:
$(VERBOSE)git clone $(GIT_URL) $(CONTRIB_DIR)
$(CONTRIB_DIR): $(CONTRIB_DIR)/.git
$(VERBOSE)cd $(CONTRIB_DIR); git reset --hard $(GIT_REV)
$(ECHO) "applying patches to '$(CONTRIB_DIR)/'"
$(VERBOSE)for i in $(PATCHES); do patch -d $@ -p1 < $$i; done
.PHONY: $(CONTRIB_DIR)
clean::
$(VERBOSE)rm -rf $(CONTRIB_DIR)