mirror of
https://github.com/logos-messaging/logos-delivery.git
synced 2026-03-29 20:33:08 +00:00
40 lines
1.6 KiB
Makefile
40 lines
1.6 KiB
Makefile
# Copyright (c) 2022 Status Research & Development GmbH. Licensed under
|
|
# either of:
|
|
# - Apache License, version 2.0
|
|
# - MIT license
|
|
# at your option. This file may not be copied, modified, or distributed except
|
|
# according to those terms.
|
|
|
|
###########################
|
|
## bearssl (nimbledeps) ##
|
|
###########################
|
|
# Rebuilds libbearssl.a from the package installed by nimble under
|
|
# nimbledeps/pkgs2/. Used by `make update` / $(NIMBLEDEPS_STAMP).
|
|
#
|
|
# BEARSSL_NIMBLEDEPS_DIR is evaluated at parse time, so targets that
|
|
# depend on it must be invoked via a recursive $(MAKE) call so the sub-make
|
|
# re-evaluates the variable after nimble setup has populated nimbledeps/.
|
|
#
|
|
# `ls -dt` (sort by modification time, newest first) is used to pick the
|
|
# latest installed version and is portable across Linux, macOS, and
|
|
# Windows (MSYS/MinGW).
|
|
|
|
BEARSSL_NIMBLEDEPS_DIR := $(shell ls -dt $(CURDIR)/nimbledeps/pkgs2/bearssl-* 2>/dev/null | head -1)
|
|
BEARSSL_CSOURCES_DIR := $(BEARSSL_NIMBLEDEPS_DIR)/bearssl/csources
|
|
|
|
.PHONY: clean-bearssl-nimbledeps rebuild-bearssl-nimbledeps
|
|
|
|
clean-bearssl-nimbledeps:
|
|
ifeq ($(BEARSSL_NIMBLEDEPS_DIR),)
|
|
$(error No bearssl package found under nimbledeps/pkgs2/ — run 'make update' first)
|
|
endif
|
|
+ [ -e "$(BEARSSL_CSOURCES_DIR)/build" ] && \
|
|
"$(MAKE)" -C "$(BEARSSL_CSOURCES_DIR)" clean || true
|
|
|
|
rebuild-bearssl-nimbledeps: | clean-bearssl-nimbledeps
|
|
ifeq ($(BEARSSL_NIMBLEDEPS_DIR),)
|
|
$(error No bearssl package found under nimbledeps/pkgs2/ — run 'make update' first)
|
|
endif
|
|
@echo "Rebuilding bearssl from $(BEARSSL_CSOURCES_DIR)"
|
|
+ "$(MAKE)" -C "$(BEARSSL_CSOURCES_DIR)" lib
|