genode/repos/dde_rump/Makefile
Norman Feske ca971bbfd8 Move repositories to 'repos/' subdirectory
This patch changes the top-level directory layout as a preparatory
step for improving the tools for managing 3rd-party source codes.
The rationale is described in the issue referenced below.

Issue #1082
2014-05-14 16:08:00 +02:00

68 lines
2.0 KiB
Makefile

#
# \brief Checkout rump kernel source code
# \author Sebastian Sumpf
# \date 2013-11-27
#
VERBOSE ?= @
CONTRIB_DIR = contrib
ECHO = @echo
PATCHES := $(shell find patches -name \*.patch)
GIT_RUMP_URI = https://github.com/anttikantee/buildrump.sh.git
GIT_RUMP_COMMIT = d604845baafa110945cb54a2d9607e6f435c6027
GIT_LIBS_URI = https://github.com/anttikantee/xen-nblibc.git
GIT_LIBS_COMMIT = b86122315f338042d06ad83ac5bd763a5dbd0c00
GIT_NETBSD_COMMIT = ff70642c9d7a8fb4b3242b30de2efc1fd8ad9ad4
RUMP_SRC = src
#
# Utility to check if a tool is installed
#
check_tool = $(if $(shell which $(1)),,$(error Need to have '$(1)' installed.))
$(call check_tool,git)
$(CONTRIB_DIR)/.git:
$(VERBOSE) git clone $(GIT_RUMP_URI) $(CONTRIB_DIR)
$(CONTRIB_DIR)/nblibs:
$(VERBOSE) git clone $(GIT_LIBS_URI) $(CONTRIB_DIR)/nblibs
cd $(CONTRIB_DIR)/nblibs ; ln -sf ../$(RUMP_SRC)/common
$(CONTRIB_DIR)/$(RUMP_SRC):
$(VERBOSE) cd $(CONTRIB_DIR); ./buildrump.sh -s $(RUMP_SRC) checkout
$(VERBOSE) cd $(CONTRIB_DIR)/src; git reset --hard $(GIT_NETBSD_COMMIT)
commit:
$(VERBOSE) cd $(CONTRIB_DIR); git fetch origin
$(VERBOSE) cd $(CONTRIB_DIR); git reset --hard $(GIT_RUMP_COMMIT)
$(VERBOSE) cd $(CONTRIB_DIR)/nblibs; git fetch origin
$(VERBOSE) cd $(CONTRIB_DIR)/nblibs; git reset --hard $(GIT_LIBS_COMMIT)
$(ECHO) "applying patches to '$(CONTRIB_DIR)/'"
$(VERBOSE)for i in $(PATCHES); do patch -N -d $(CONTRIB_DIR) -p1 < $$i; done
prepare: $(CONTRIB_DIR)/.git $(CONTRIB_DIR)/nblibs $(CONTRIB_DIR)/$(RUMP_SRC) commit
$(VERBOSE)mkdir -p include
$(VERBOSE)ln -sf ../$(CONTRIB_DIR)/$(RUMP_SRC)/sys/rump/include/rump include/rump
clean:
$(VERBOSE) rm -rf $(CONTRIB_DIR)
help::
$(ECHO)
$(ECHO) "Check out rump kernel sources"
$(ECHO)
$(ECHO) "The source code will be located at the '$(CONTRIB_DIR)/' directory."
$(ECHO)
$(ECHO) "--- available commands ---"
$(ECHO) "prepare - checkout source codes"
$(ECHO) "clean - remove source codes"
$(ECHO)
.NOTPARALLEL: