| # Copyright 2020 SkyWater PDK Authors | |
| # | |
| # Licensed under the Apache License, Version 2.0 (the "License"); | |
| # you may not use this file except in compliance with the License. | |
| # You may obtain a copy of the License at | |
| # | |
| # https://www.apache.org/licenses/LICENSE-2.0 | |
| # | |
| # Unless required by applicable law or agreed to in writing, software | |
| # distributed under the License is distributed on an "AS IS" BASIS, | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| # See the License for the specific language governing permissions and | |
| # limitations under the License. | |
| FULL_VERSION := $(shell git describe --long) | |
| TAG_VERSION := $(firstword $(subst -, ,$(FULL_VERSION))) | |
| SUBMODULE_VERSION ?= latest | |
| ifeq (,$(FULL_VERSION)) | |
| $(error "Version value could not be determined. Make sure you fetch the tags.") | |
| endif | |
| LIBRARIES = $(sort $(notdir $(wildcard libraries/sky130_*))) | |
| LIBS_DOT_GIT = $(addsuffix /$(SUBMODULE_VERSION)/.git,$(addprefix libraries/,$(LIBRARIES))) | |
| libraries-info: | |
| @echo "The following libraries exist:" | |
| @for L in $(LIBRARIES); do \ | |
| LD=libraries/$$L/$(SUBMODULE_VERSION); \ | |
| echo " * $$L"; \ | |
| echo " $$(git submodule status $$LD)"; \ | |
| done | |
| @echo $(LIBS_DOT_GIT) | |
| submodules: $(LIBS_DOT_GIT) | |
| define LIB_template | |
| libraries/$(1)/%/.git: .gitmodules | |
| git submodule update --init $$(@D) | |
| endef | |
| $(foreach lib,$(LIBRARIES), $(eval $(call LIB_template,$(lib)))) |