blob: 79809c351a4339c34a169a30f9b7e118b37ff48d [file] [log] [blame]
Joey Armstronga516c322023-01-25 17:40:42 -05001# -*- makefile -*-
2# -----------------------------------------------------------------------
3# Copyright 2022-2023 Open Networking Foundation (ONF) and the ONF Contributors
4#
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at
8#
9# http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16#
17# SPDX-FileCopyrightText: 2022 Open Networking Foundation (ONF) and the ONF Contributors
18# SPDX-License-Identifier: Apache-2.0
19# -----------------------------------------------------------------------
20
21$(if $(DEBUG),$(warning ENTER))
22
Joey Armstrongb3a06412023-02-06 09:58:58 -050023GIT ?= git
24
Joey Armstronga516c322023-01-25 17:40:42 -050025## -----------------------------------------------------------------------
26## Intent: Checkout submodules required by ci-management
27## -----------------------------------------------------------------------
Joey Armstrongb3a06412023-02-06 09:58:58 -050028submodule-repo := $(null)
29submodule-repo += global-jjb
30submodule-repo += lf-ansible
31submodule-repo += packer
32
Joey Armstronga516c322023-01-25 17:40:42 -050033submodule-deps := $(null)
34submodule-deps += submodules# # named pseudo target
Joey Armstrongb3a06412023-02-06 09:58:58 -050035submodule-deps += $(submodule-repos)
Joey Armstronga516c322023-01-25 17:40:42 -050036
37.PHONY: $(submodule-deps)
38$(submodule-deps):
Joey Armstrongb3a06412023-02-06 09:58:58 -050039 $(GIT) submodule init
40 $(GIT) submodule update
Joey Armstronga516c322023-01-25 17:40:42 -050041
42## -----------------------------------------------------------------------
Joey Armstrongb3a06412023-02-06 09:58:58 -050043## Intent: Revert sandbox to a pristine state.
Joey Armstronga516c322023-01-25 17:40:42 -050044## -----------------------------------------------------------------------
45sterile ::
Joey Armstrongb3a06412023-02-06 09:58:58 -050046 $(RM) -r $(submodule-repos)
47
48 # FIXME:
49 # o restore hierarchy to avoid git status 'deleted:'
50 # o remove: externals should not be under revision control
51 $(GIT) co $(submodule-repos)
Joey Armstronga516c322023-01-25 17:40:42 -050052
53## -----------------------------------------------------------------------
54## -----------------------------------------------------------------------
55help ::
56 @echo
57 @echo '[GIT-SUBMODULES]'
58 @echo ' submodules Checkout dependent git submodules'
59 ifdef VERBOSE
60 @echo ' global-jjb Checkout ci-management submodule global-jjb'
61 @echo ' lf-ansible Checkout ci-management submodule lf-ansible'
62 @echo ' packer Checkout ci-management submodule packer'
63 endif
64
65## -----------------------------------------------------------------------
66## -----------------------------------------------------------------------
67todo ::
68 @echo "Generalize logc, update to depend on .git/ rather than named targets."
69
70$(if $(DEBUG),$(warning LEAVE))
71
72# [EOF]