diff options
author | Harald Welte <laforge@gnumonks.org> | 2017-12-12 16:30:53 +0100 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2017-12-12 16:30:53 +0100 |
commit | 6807982106c0e3ec1837421c0e69e8531a8c3b28 (patch) | |
tree | 70eb3c082e43f8491dd7634271766b99ef383241 /deps/Makefile | |
parent | 4c5ef5b3e1bb7775386a6c6c2e9b00b3456c59d8 (diff) |
Makefile: clone dependencies into 'deps' folder
We used to rely on out-of-tree git clones to be prepared by the user.
This commit changes the system to make sure we clone all git repos
we depend upon into the 'deps' folder, and then setup the symlinks
to that folder. As a result, we should be able to support
self-contained builds using the makefiles in this repo.
Diffstat (limited to 'deps/Makefile')
-rw-r--r-- | deps/Makefile | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/deps/Makefile b/deps/Makefile new file mode 100644 index 00000000..ac664930 --- /dev/null +++ b/deps/Makefile @@ -0,0 +1,67 @@ + +ECLIPSEGIT:=https://github.com/eclipse +ECLIPSEGIT2:=git://git.eclipse.org/gitroot/titan + +ECLIPSEGIT_REPOS= titan.Libraries.TCCUsefulFunctions \ + titan.ProtocolModules.ICMP \ + titan.ProtocolModules.ICMPv6 \ + titan.ProtocolModules.IP \ + titan.ProtocolModules.L2TP \ + titan.ProtocolModules.M3UA \ + titan.ProtocolModules.SMPP \ + titan.ProtocolModules.TCP \ + titan.ProtocolModules.UDP \ + titan.ProtocolModules.RTP \ + titan.TestPorts.Common_Components.Socket-API \ + titan.TestPorts.IPL4asp \ + titan.TestPorts.LANL2asp \ + titan.TestPorts.PCAPasp \ + titan.TestPorts.SCTPasp \ + titan.TestPorts.SIPmsg \ + titan.TestPorts.TCPasp \ + titan.TestPorts.TELNETasp \ + titan.TestPorts.UDPasp \ + titan.TestPorts.UNIX_DOMAIN_SOCKETasp + +ECLIPSEGIT2_REPOS= titan.ProtocolModules.GRE \ + titan.ProtocolModules.M2PA \ + titan.ProtocolModules.SCTP \ + titan.ProtocolModules.SUA \ + titan.ProtocolModules.SDP \ + titan.TestPorts.GPIO \ + titan.ProtocolModules.BSSAPP_v7.3.0 \ + titan.ProtocolModules.BSSGP_v13.0.0 \ + titan.ProtocolModules.BSSMAP_v11.2.0 \ + titan.ProtocolModules.GTP_v13.5.0 \ + titan.ProtocolModules.GTPv2_v13.7.0 \ + titan.ProtocolModules.ISUP_Q.762 \ + titan.ProtocolModules.LLC_v7.1.0 \ + titan.ProtocolModules.MobileL3_v13.4.0 \ + titan.ProtocolModules.NS_v7.3.0 \ + titan.ProtocolModules.SNDCP_v7.0.0 + +ALL_REPOS=$(ECLIPSEGIT_REPOS) $(ECLIPSEGIT2_REPOS) + +all: $(ALL_REPOS) + +update: $(foreach dir,$(ALL_REPOS),$(dir)/update) +clean: $(foreach dir,$(ALL_REPOS),$(dir)/clean) + +define GIT_template +$(1): + git clone $(2)/$(1) + +.PHONY:$(1)/update +$(1)/update: $(1) + (cd $(1) && git fetch && git checkout -f -B master) + +.PHONY: $(1)/clean +$(1)/clean: + @rm -rf $(1) +endef + +$(foreach dir,$(ECLIPSEGIT_REPOS), \ + $(eval $(call GIT_template,$(dir),$(ECLIPSEGIT)))) + +$(foreach dir,$(ECLIPSEGIT2_REPOS), \ + $(eval $(call GIT_template,$(dir),$(ECLIPSEGIT2)))) |