blob: 64e8d84f57305de3faa1475623329dcf8a533013 [file] [log] [blame]
Joey Armstrongf9bffdf2022-12-27 07:05:28 -05001# -*- makefile -*-
2# -----------------------------------------------------------------------
Joey Armstrong098137b2024-03-02 09:04:39 -05003# Copyright 2016-2024 Open Networking Foundation Contributors
Phaneendra Manda4c62c802019-03-06 21:37:49 +05304#
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.
Joey Armstrongf9bffdf2022-12-27 07:05:28 -050016# -----------------------------------------------------------------------
Joey Armstrong098137b2024-03-02 09:04:39 -050017# SPDX-FileCopyrightText: 2016-2024 Open Networking Foundation Contributors
18# SPDX-License-Identifier: Apache-2.0
19# -----------------------------------------------------------------------
Phaneendra Manda4c62c802019-03-06 21:37:49 +053020
Joey Armstrongf9bffdf2022-12-27 07:05:28 -050021$(if $(DEBUG),$(warning ENTER))
22
23.DEFAULT_GOAL := help
24
Joey Armstrong098137b2024-03-02 09:04:39 -050025##-------------------##
26##---] GLOBALS [---##
27##-------------------##
28
29RSYNC ?= rsync
30RSYNC-CMD := $(RSYNC) -rv --checksum --archive
31
Joey Armstrongf9bffdf2022-12-27 07:05:28 -050032TOP ?= .
33MAKEDIR ?= $(TOP)/makefiles
34
35$(if $(VERBOSE),$(eval export VERBOSE=$(VERBOSE))) # visible to include(s)
36
37##--------------------##
38##---] INCLUDES [---##
39##--------------------##
Joey Armstrong3f0e2422023-07-05 18:25:41 -040040include config.mk# # configure
41include makefiles/include.mk # top level include
42
Joey Armstrongf9bffdf2022-12-27 07:05:28 -050043ifdef LOCAL_LINT
44 include $(MAKEDIR)/lint/golang/sca.mk
45endif
Matt Jeanneret8b823f62019-05-11 11:01:28 -040046
Joey Armstrong098137b2024-03-02 09:04:39 -050047##------------------##
48##---] MACROS [---##
49##------------------##
50
Matt Jeanneret8b823f62019-05-11 11:01:28 -040051# Variables
52VERSION ?= $(shell cat ./VERSION)
53
Matt Jeanneretf880eb62019-07-16 20:08:03 -040054DOCKER_LABEL_VCS_DIRTY = false
55ifneq ($(shell git ls-files --others --modified --exclude-standard 2>/dev/null | wc -l | sed -e 's/ //g'),0)
56 DOCKER_LABEL_VCS_DIRTY = true
57endif
Matt Jeanneret8b823f62019-05-11 11:01:28 -040058## Docker related
Matt Jeanneretf880eb62019-07-16 20:08:03 -040059DOCKER_EXTRA_ARGS ?=
Matt Jeanneret8b823f62019-05-11 11:01:28 -040060DOCKER_REGISTRY ?=
61DOCKER_REPOSITORY ?=
David K. Bainbridge96b06512021-04-01 18:53:51 +000062DOCKER_TAG ?= ${VERSION}$(shell [[ ${DOCKER_LABEL_VCS_DIRTY} == "true" ]] && echo "-dirty" || true)
Matt Jeanneretb5bf10e2019-05-18 15:02:51 -040063ADAPTER_IMAGENAME := ${DOCKER_REGISTRY}${DOCKER_REPOSITORY}voltha-openolt-adapter:${DOCKER_TAG}
David K. Bainbridge96b06512021-04-01 18:53:51 +000064DOCKER_TARGET ?= prod
Andrea Campanellacbf583e2019-12-17 15:26:00 -080065TYPE ?= minimal
Matt Jeanneret8b823f62019-05-11 11:01:28 -040066
67## Docker labels. Only set ref and commit date if committed
Matt Jeanneretf880eb62019-07-16 20:08:03 -040068DOCKER_LABEL_VCS_URL ?= $(shell git remote get-url $(shell git remote))
69DOCKER_LABEL_VCS_REF = $(shell git rev-parse HEAD)
70DOCKER_LABEL_BUILD_DATE ?= $(shell date -u "+%Y-%m-%dT%H:%M:%SZ")
71DOCKER_LABEL_COMMIT_DATE = $(shell git show -s --format=%cd --date=iso-strict HEAD)
Matt Jeanneret8b823f62019-05-11 11:01:28 -040072
Matt Jeanneretf880eb62019-07-16 20:08:03 -040073DOCKER_BUILD_ARGS ?= \
74 ${DOCKER_EXTRA_ARGS} \
75 --build-arg org_label_schema_version="${VERSION}" \
76 --build-arg org_label_schema_vcs_url="${DOCKER_LABEL_VCS_URL}" \
77 --build-arg org_label_schema_vcs_ref="${DOCKER_LABEL_VCS_REF}" \
78 --build-arg org_label_schema_build_date="${DOCKER_LABEL_BUILD_DATE}" \
79 --build-arg org_opencord_vcs_commit_date="${DOCKER_LABEL_COMMIT_DATE}" \
80 --build-arg org_opencord_vcs_dirty="${DOCKER_LABEL_VCS_DIRTY}"
81
Kent Hagerman2cd4b7b2020-02-04 15:15:14 -050082# tool containers
David K. Bainbridge2f2658d2021-04-09 16:13:57 +000083VOLTHA_TOOLS_VERSION ?= 2.4.0
Kent Hagerman2cd4b7b2020-02-04 15:15:14 -050084
Joey Armstrong098137b2024-03-02 09:04:39 -050085## TODO: Verify / migrate to repo:onf-make
Joey Armstrong3f0e2422023-07-05 18:25:41 -040086# GO = docker run --rm --user $$(id -u):$$(id -g) -v ${CURDIR}:/app $(shell test -t 0 && echo "-it") -v gocache:/.cache -v gocache-${VOLTHA_TOOLS_VERSION}:/go/pkg voltha/voltha-ci-tools:${VOLTHA_TOOLS_VERSION}-golang go
87# GO_JUNIT_REPORT = docker run --rm --user $$(id -u):$$(id -g) -v ${CURDIR}:/app -i voltha/voltha-ci-tools:${VOLTHA_TOOLS_VERSION}-go-junit-report go-junit-report
88# GOCOVER_COBERTURA = docker run --rm --user $$(id -u):$$(id -g) -v ${CURDIR}:/app/src/github.com/opencord/voltha-openolt-adapter -i voltha/voltha-ci-tools:${VOLTHA_TOOLS_VERSION}-gocover-cobertura gocover-cobertura
89# GOLANGCI_LINT = docker run --rm --user $$(id -u):$$(id -g) -v ${CURDIR}:/app $(shell test -t 0 && echo "-it") -v gocache:/.cache -v gocache-${VOLTHA_TOOLS_VERSION}:/go/pkg voltha/voltha-ci-tools:${VOLTHA_TOOLS_VERSION}-golangci-lint golangci-lint
90# HADOLINT = docker run --rm --user $$(id -u):$$(id -g) -v ${CURDIR}:/app $(shell test -t 0 && echo "-it") voltha/voltha-ci-tools:${VOLTHA_TOOLS_VERSION}-hadolint hadolint
Kent Hagerman2cd4b7b2020-02-04 15:15:14 -050091
Joey Armstrong098137b2024-03-02 09:04:39 -050092.PHONY: docker-build help
Phaneendra Manda4c62c802019-03-06 21:37:49 +053093
Joey Armstrong098137b2024-03-02 09:04:39 -050094## -----------------------------------------------------------------------
95## Intent: Local Development Helpers. When LOCAL_PROTOS= is defined
96## copy in locally modified repo:voltha-protos for a building.
97## -----------------------------------------------------------------------
98## Usage : make build LOCAL_LIB_GO=/path/to/my/voltha-protos
99## -----------------------------------------------------------------------
100.PHONY: local-protos
101protos-v5 := vendor/github.com/opencord/voltha-protos/v5/go
Matt Jeanneretb5bf10e2019-05-18 15:02:51 -0400102
Joey Armstrong098137b2024-03-02 09:04:39 -0500103local-protos:
104
105 ifdef LOCAL_PROTOS
106 $(call banner-enter,$@)
107
108 $(RM) -r "$(protos-v5)"
109 mkdir -p "$(protos-v5)"
110 $(RSYNC-CMD) "${LOCAL_PROTOS}/go/." "$(protos-v5)/."
111 $(RM) -r "$(protos-v5)/vendor"
112
113 $(call banner-leave,$@)
114 endif # LOCAL_PROTOS=
115
116## -----------------------------------------------------------------------
117## Intent: Local Development Helpers. When LOCAL_LIB_GO= is defined
118## copy in locally modified repo:voltha-protos for a building.
119## -----------------------------------------------------------------------
120## Usage : make build LOCAL_LIB_GO=/path/to/my/voltha-lib-go
121## -----------------------------------------------------------------------
122.PHONY: local-lib-go
123lib-go-v7 := vendor/github.com/opencord/voltha-lib-go/v7
124
125local-lib-go:
126
127 ifdef LOCAL_LIB_GO
128 $(call banner-enter,$@)
129
130 mkdir -p "$(lib-go-v7)/pkg"
131 $(RSYNC-CMD) "${LOCAL_LIB_GO}/pkg/." "$(lib-go-v7)/pkg/."
132
133 $(call banner-leave,$@)
134 endif # LOCAL_LIB_GO=
Matt Jeanneret8b823f62019-05-11 11:01:28 -0400135
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500136## -----------------------------------------------------------------------
Matt Jeanneretb5bf10e2019-05-18 15:02:51 -0400137## Docker targets
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500138## -----------------------------------------------------------------------
Zack Williams75662252020-04-06 18:16:54 -0700139build: docker-build ## Alias for 'docker build'
Matt Jeanneretb5bf10e2019-05-18 15:02:51 -0400140
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500141## -----------------------------------------------------------------------
142## -----------------------------------------------------------------------
Matteo Scandolo6ec3c352020-04-29 15:27:03 -0700143docker-build: local-protos local-lib-go ## Build openolt adapter docker image (set BUILD_PROFILED=true to also build the profiled image)
David K. Bainbridgee2d9b332021-04-15 00:11:51 +0000144 docker build $(DOCKER_BUILD_ARGS) --target=${DOCKER_TARGET} --build-arg CGO_PARAMETER=0 -t ${ADAPTER_IMAGENAME} -f docker/Dockerfile.openolt .
Matteo Scandolo6ec3c352020-04-29 15:27:03 -0700145ifdef BUILD_PROFILED
David K. Bainbridgee2d9b332021-04-15 00:11:51 +0000146 docker build $(DOCKER_BUILD_ARGS) --target=dev --build-arg CGO_PARAMETER=1 --build-arg EXTRA_GO_BUILD_TAGS="-tags profile" -t ${ADAPTER_IMAGENAME}-profile -f docker/Dockerfile.openolt .
147endif
148ifdef BUILD_RACE
149 docker build $(DOCKER_BUILD_ARGS) --target=dev --build-arg CGO_PARAMETER=1 --build-arg EXTRA_GO_BUILD_TAGS="-race" -t ${ADAPTER_IMAGENAME}-rd -f docker/Dockerfile.openolt .
Matteo Scandolo6ec3c352020-04-29 15:27:03 -0700150endif
Matteo Scandolo8f2b9572020-02-28 15:35:23 -0800151
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500152## -----------------------------------------------------------------------
153## -----------------------------------------------------------------------
Zack Williams75662252020-04-06 18:16:54 -0700154docker-push: ## Push the docker images to an external repository
Matt Jeanneret8b823f62019-05-11 11:01:28 -0400155 docker push ${ADAPTER_IMAGENAME}
Matteo Scandolo24ed9672020-05-04 10:53:08 -0700156ifdef BUILD_PROFILED
157 docker push ${ADAPTER_IMAGENAME}-profile
158endif
David K. Bainbridgee2d9b332021-04-15 00:11:51 +0000159ifdef BUILD_RACE
160 docker push ${ADAPTER_IMAGENAME}-rd
161endif
Matt Jeanneret8b823f62019-05-11 11:01:28 -0400162
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500163## -----------------------------------------------------------------------
164## -----------------------------------------------------------------------
Zack Williams75662252020-04-06 18:16:54 -0700165docker-kind-load: ## Load docker images into a KinD cluster
Andrea Campanellacbf583e2019-12-17 15:26:00 -0800166 @if [ "`kind get clusters | grep voltha-$(TYPE)`" = '' ]; then echo "no voltha-$(TYPE) cluster found" && exit 1; fi
167 kind load docker-image ${ADAPTER_IMAGENAME} --name=voltha-$(TYPE) --nodes $(shell kubectl get nodes --template='{{range .items}}{{.metadata.name}},{{end}}' | sed 's/,$$//')
168
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500169## -----------------------------------------------------------------------
Matt Jeanneret8b823f62019-05-11 11:01:28 -0400170## lint and unit tests
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500171## -----------------------------------------------------------------------
Zack Williams75662252020-04-06 18:16:54 -0700172lint-dockerfile: ## Perform static analysis on Dockerfile
Kent Hagerman2cd4b7b2020-02-04 15:15:14 -0500173 @echo "Running Dockerfile lint check ..."
174 @${HADOLINT} $$(find . -name "Dockerfile.*")
175 @echo "Dockerfile lint check OK"
176
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500177## -----------------------------------------------------------------------
178## -----------------------------------------------------------------------
Zack Williams75662252020-04-06 18:16:54 -0700179lint-mod: ## Verify the Go dependencies
Joey Armstrong3f0e2422023-07-05 18:25:41 -0400180
Matt Jeanneret384d8c92019-05-06 14:27:31 -0400181 @echo "Running dependency check..."
Kent Hagerman2cd4b7b2020-02-04 15:15:14 -0500182 @${GO} mod verify
Joey Armstrong3f0e2422023-07-05 18:25:41 -0400183
Scott Baker22c0e9c2019-11-26 08:11:29 -0800184 @echo "Dependency check OK. Running vendor check..."
185 @git status > /dev/null
Kent Hagermane71b52d2020-02-26 11:13:42 -0500186 @git diff-index --quiet HEAD -- go.mod go.sum vendor || (echo "ERROR: Staged or modified files must be committed before running this test" && git status -- go.mod go.sum vendor && exit 1)
187 @[[ `git ls-files --exclude-standard --others go.mod go.sum vendor` == "" ]] || (echo "ERROR: Untracked files must be cleaned up before running this test" && git status -- go.mod go.sum vendor && exit 1)
Joey Armstrong3f0e2422023-07-05 18:25:41 -0400188
189 $(MAKE) mod-update
190# ${GO} mod tidy
191# ${GO} mod vendor
192
Scott Baker22c0e9c2019-11-26 08:11:29 -0800193 @git status > /dev/null
Kent Hagermane71b52d2020-02-26 11:13:42 -0500194 @git diff-index --quiet HEAD -- go.mod go.sum vendor || (echo "ERROR: Modified files detected after running go mod tidy / go mod vendor" && git status -- go.mod go.sum vendor && git checkout -- go.mod go.sum vendor && exit 1)
195 @[[ `git ls-files --exclude-standard --others go.mod go.sum vendor` == "" ]] || (echo "ERROR: Untracked files detected after running go mod tidy / go mod vendor" && git status -- go.mod go.sum vendor && git checkout -- go.mod go.sum vendor && exit 1)
Scott Baker22c0e9c2019-11-26 08:11:29 -0800196 @echo "Vendor check OK."
Matt Jeanneret384d8c92019-05-06 14:27:31 -0400197
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500198## -----------------------------------------------------------------------
199## -----------------------------------------------------------------------
Joey Armstronga6af1522023-01-17 16:06:16 -0500200lint: local-lib-go lint-mod lint-dockerfile
David Bainbridge788e5202019-10-21 18:49:40 +0000201
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500202## -----------------------------------------------------------------------
203## -----------------------------------------------------------------------
Joey Armstrong3f0e2422023-07-05 18:25:41 -0400204coverage-out := ./tests/results/go-test-coverage.out
205coverage-res := ./tests/results/go-test-results.out
Zack Williams75662252020-04-06 18:16:54 -0700206test: ## Run unit tests
Joey Armstrong3f0e2422023-07-05 18:25:41 -0400207
208 $(call banner-enter,$@)
209
210 $(RM) -r tests/results
Matt Jeanneret384d8c92019-05-06 14:27:31 -0400211 @mkdir -p ./tests/results
Joey Armstrong3f0e2422023-07-05 18:25:41 -0400212
213 @$(if $(LOCAL_FIX_PERMS),chmod 777 tests/results)
214
215 $(HIDE) $(MAKE) --no-print-directory test-go-coverage
216 $(HIDE) $(MAKE) --no-print-directory test-junit
217 $(HIDE) $(MAKE) --no-print-directory test-cobertura
218
219# ${GOCOVER_COBERTURA} < $(coverage-out) \
220# > ./tests/results/go-test-coverage.xml
221
222 @$(if $(LOCAL_FIX_PERMS),chmod 775 tests/results) # yes this may not run
223
224 $(call banner-leave,$@)
225
226## -----------------------------------------------------------------------
227## -----------------------------------------------------------------------
228test-go-coverage:
229 $(call banner-enter,$@)
230 @$(if $(LOCAL_FIX_PERMS),chmod 777 tests/results)
231 ( ${GO} test -mod=vendor -v -coverprofile $(coverage-out) -covermode count ./... 2>&1 ) \
232 | tee $(coverage-res)
233 @$(if $(LOCAL_FIX_PERMS),chmod 775 tests/results)
234 $(call banner-leave,$@)
235
236## -----------------------------------------------------------------------
237## -----------------------------------------------------------------------
238test-junit:
239 $(call banner-enter,$@)
240 @$(if $(LOCAL_FIX_PERMS),chmod 777 tests/results)
241 ${GO_JUNIT_REPORT} < $(coverage-res) \
242 > ./tests/results/go-test-results.xml
243 @$(if $(LOCAL_FIX_PERMS),chmod 775 tests/results)
244 $(call banner-leave,$@)
245
246## -----------------------------------------------------------------------
247## -----------------------------------------------------------------------
248test-cobertura:
249 $(call banner-enter,$@)
250 @$(if $(LOCAL_FIX_PERMS),chmod 777 tests/results)
251 ${GOCOVER_COBERTURA} < $(coverage-out) \
252 > ./tests/results/go-test-coverage.xml
253 @$(if $(LOCAL_FIX_PERMS),chmod 775 tests/results)
254 $(call banner-leave,$@)
255
256## -----------------------------------------------------------------------
257## -----------------------------------------------------------------------
258help ::
259 @echo '[TEST: Coverage report]'
260 @echo ' test-go-coverage Generate a coverage report for vendor/'
261 @echo ' test-junit Digest go coverage, generate junit'
262 @echo ' test-cobertura Digest coverage and junit reports'
Matt Jeanneret384d8c92019-05-06 14:27:31 -0400263
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500264## -----------------------------------------------------------------------
265## -----------------------------------------------------------------------
Joey Armstronga6af1522023-01-17 16:06:16 -0500266sca:
Joey Armstrong3f0e2422023-07-05 18:25:41 -0400267 $(call banner-enter,$@)
268
Joey Armstronga6af1522023-01-17 16:06:16 -0500269 @$(RM) -r ./sca-report
Girish Gowdru6a80bbd2019-07-02 07:36:09 -0700270 @mkdir -p ./sca-report
Kent Hagerman2cd4b7b2020-02-04 15:15:14 -0500271 @echo "Running static code analysis..."
Joey Armstronga6af1522023-01-17 16:06:16 -0500272 @${GOLANGCI_LINT} run --deadline=6m --out-format junit-xml ./... \
273 | tee ./sca-report/sca-report.xml
Kent Hagermane71b52d2020-02-26 11:13:42 -0500274 @echo ""
Kent Hagerman2cd4b7b2020-02-04 15:15:14 -0500275 @echo "Static code analysis OK"
Girish Gowdru6a80bbd2019-07-02 07:36:09 -0700276
Joey Armstrong3f0e2422023-07-05 18:25:41 -0400277 $(call banner-leave,$@)
278
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500279## -----------------------------------------------------------------------
280## -----------------------------------------------------------------------
Joey Armstrong3f0e2422023-07-05 18:25:41 -0400281clean :: distclean
282sterile :: clean distclean
Matt Jeanneretb5bf10e2019-05-18 15:02:51 -0400283
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500284## -----------------------------------------------------------------------
285## -----------------------------------------------------------------------
Joey Armstronga6af1522023-01-17 16:06:16 -0500286distclean:
287 $(RM) -r ./sca-report
Matt Jeanneretb5bf10e2019-05-18 15:02:51 -0400288
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500289## -----------------------------------------------------------------------
290## -----------------------------------------------------------------------
Joey Armstrong3f0e2422023-07-05 18:25:41 -0400291.PHONY: mod-update
292mod-update: mod-tidy mod-vendor
293
294## -----------------------------------------------------------------------
295## -----------------------------------------------------------------------
296.PHONY: mod-tidy
297mod-tidy:
298 $(call banner-enter,$@)
Kent Hagerman2cd4b7b2020-02-04 15:15:14 -0500299 ${GO} mod tidy
Joey Armstrong3f0e2422023-07-05 18:25:41 -0400300 $(call banner-leave,$@)
301
302## -----------------------------------------------------------------------
303## -----------------------------------------------------------------------
304.PHONY: mod-vendor
305mod-vendor:
306 $(call banner-enter,$@)
307 @$(if $(LOCAL_FIX_PERMS),chmod 777 .)
Kent Hagerman2cd4b7b2020-02-04 15:15:14 -0500308 ${GO} mod vendor
Joey Armstrong3f0e2422023-07-05 18:25:41 -0400309 @$(if $(LOCAL_FIX_PERMS),chmod 755 .)
310 $(call banner-leave,$@)
311
312## -----------------------------------------------------------------------
Joey Armstrong098137b2024-03-02 09:04:39 -0500313## Intent: Render README.md for interactive viewing.
314## -----------------------------------------------------------------------
315view :
316 pandoc README.md | lynx -stdin
317
318## -----------------------------------------------------------------------
319## Intent: Display supported makefile targets
Joey Armstrong3f0e2422023-07-05 18:25:41 -0400320## -----------------------------------------------------------------------
321help ::
Joey Armstrong098137b2024-03-02 09:04:39 -0500322 @printf ' %-33.33s %s\n' 'local-help' \
323 'Show extended help for local build targets'
Joey Armstronga3b7c592023-12-11 17:56:05 -0500324 @printf ' %-33.33s %s\n' 'sca' 'golang: static code analysis'
Joey Armstrong098137b2024-03-02 09:04:39 -0500325 @printf ' %-33.33s %s\n' 'view' \
326 'Render markdown (.md) for interactive viewing'
327
328help ::
329 @echo
Joey Armstrong3f0e2422023-07-05 18:25:41 -0400330 @echo '[MOD UPDATE]'
331 @echo ' mod-update'
332 @echo ' LOCAL_FIX_PERMS=1 Hack to fix docker access problems'
333 @echo ' mod-tidy'
334 @echo ' mod-vendor'
Zack Williams75662252020-04-06 18:16:54 -0700335
Joey Armstrong098137b2024-03-02 09:04:39 -0500336local-help :
337 @echo
338 @echo '[LOCAL: dev]'
339
340 @printf ' %-33.33s %s\n' 'local-protos' \
341 'Copy a local dev version of voltha-protos into vendor/'
342 @printf ' %s\n' '% $(MAKE) local-protos LOCAL_PROTOS={path}'
343
344 @echo
345 @printf ' %-33.33s %s\n' 'local-lib-go' \
346 'Copy a local dev version of voltha-lib-go into vendor/'
347 @printf ' %s\n' '% $(MAKE) local-lib-go LOCAL_LIB_GO={path}'
348
349# Thought: Use "$(MAKE) LOCAL=1" to wrap
350# "make local-protos local-lib-go build"
351
Joey Armstrongf9bffdf2022-12-27 07:05:28 -0500352# [EOF]