# - Clone remote repo into / # - Add the following to /Makefile: # - SUBMOD_SRC_DIR = ./ # - include # - run git-init-submod-remote ifeq ($(USE_USER_URL),true) JANWARE_USER_PREFIX = $(JANWARE_USER)@ endif SUBMOD_SRC_DIR ?= . GIT_SRV_ADMIN_SH = ssh $(JANWARE_USER_PREFIX)git.janware.com /opt/jw-build/bin/git-srv-admin.sh GIT_REPO_URL = ssh://$(JANWARE_USER_PREFIX)git.janware.com/srv/git/$(JANWARE_USER)/contrib/$(SUBMOD_PKG_NAME) SUBMOD_PATH = $(patsubst $(abspath $(TOPDIR))/%,%,$(abspath $(CWD)/$(SUBMOD_SRC_DIR))) SUB_GIT = git -C $(SUBMOD_SRC_DIR) ifeq ($(wildcard $(SUBMOD_SRC_DIR)/.git),) SUBMOD_PKG_NAME := $(shell $(SUB_GIT) remote -v | sed -n 's/^[a-zA-Z_]\+\s//; s/ *.*//; s%.*/%%; s%\.git%%; 1p') SUBMOD_MAIN_BRANCH := $(firstword $(shell $(SUB_GIT) branch --format '%(refname:lstrip=2)')) endif include $(JWBDIR)/make/defs.mk all: install: clean: distclean: git-init-submod-remote: $(GIT_SRV_ADMIN_SH) -F contrib create-repo $(SUBMOD_PKG_NAME) $(SUB_GIT) remote rename origin upstream $(SUB_GIT) remote set-url --push upstream no-push $(SUB_GIT) remote add origin $(GIT_REPO_URL) $(SUB_GIT) config branch.$(SUBMOD_MAIN_BRANCH).remote origin $(SUB_GIT) config branch.$(SUBMOD_MAIN_BRANCH).merge refs/heads/$(SUBMOD_MAIN_BRANCH) $(SUB_GIT) push origin $(SUBMOD_MAIN_BRANCH) git -C $(TOPDIR) submodule add -f $(GIT_REPO_URL) $(SUBMOD_PATH) git submodule init git commit -m "Add git submodule $(SUBMOD_PATH)" $(SUBMOD_SRC_DIR) $(TOPDIR)/.gitmodules