############################################################################ # apps/crypto/libsodium/Makefile # # Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. The # ASF licenses this file to you 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 # # http://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. # ############################################################################ include $(APPDIR)/Make.defs LIBSODIUM_VERSION = $(patsubst "%",%,$(strip $(CONFIG_LIBSODIUM_VERSION))) LIBSODIUM_URL ?= "https://github.com/jedisct1/libsodium/archive/refs/tags/$(LIBSODIUM_VERSION).zip" LIBSODIUM_ZIP = $(LIBSODIUM_VERSION).zip LIBSODIUM_UNPACKNAME = libsodium UNPACK ?= unzip -q -o LIBSODIUM_UNPACKLIBDIR = $(LIBSODIUM_UNPACKNAME)$(DELIM)src$(DELIM)$(LIBSODIUM_UNPACKNAME) LIBSODIUM_UNPACKTESTDIR = $(LIBSODIUM_UNPACKNAME)$(DELIM)test$(DELIM)default CSRCS += $(shell find $(LIBSODIUM_UNPACKLIBDIR) -name "*.c") CFLAGS += ${INCDIR_PREFIX}$(APPDIR)/crypto/libsodium/libsodium/src/libsodium/include/sodium CFLAGS += -Wno-unused-function -Wno-undef -Wno-unused-variable -Wno-deprecated-declarations ifneq ($(CONFIG_LIBSODIUM_TEST),) MODULE = $(CONFIG_LIBSODIUM_TEST) MAINSRC = $(wildcard $(LIBSODIUM_UNPACKTESTDIR)$(DELIM)*.c) PROGNAME = $(patsubst $(LIBSODIUM_UNPACKTESTDIR)$(DELIM)%.c,%,$(MAINSRC)) CFLAGS += ${INCDIR_PREFIX}$(APPDIR)/crypto/libsodium/libsodium/test/quirks PRIORITY = $(CONFIG_LIBSODIUM_TEST_PRIORITY) STACKSIZE = $(CONFIG_LIBSODIUM_TEST_STACKSIZE) endif $(LIBSODIUM_ZIP): @echo "Downloading: $(LIBSODIUM_URL)/$(LIBSODIUM_ZIP)" $(Q) $(call DOWNLOAD,$(LIBSODIUM_URL),$(LIBSODIUM_ZIP)) $(LIBSODIUM_UNPACKNAME): $(LIBSODIUM_ZIP) @echo "Unpacking: $(LIBSODIUM_ZIP) -> $(LIBSODIUM_UNPACKNAME)" $(Q) $(UNPACK) $(LIBSODIUM_ZIP) $(Q) mv $(LIBSODIUM_UNPACKNAME)-$(LIBSODIUM_VERSION) $(LIBSODIUM_UNPACKNAME) $(Q) echo "Patching $(LIBSODIUM_UNPACKNAME)" $(Q) patch -p1 -d $(LIBSODIUM_UNPACKNAME) < 0001-fix-multiple-definition-bug-in-libsodium-test.patch $(Q) patch -p1 -d $(LIBSODIUM_UNPACKNAME) < 0002-fix-cannot-find-file-sodium-version.h.patch $(Q) touch $(LIBSODIUM_UNPACKNAME) ifeq ($(wildcard $(LIBSODIUM_UNPACKNAME)/.git),) context:: $(LIBSODIUM_UNPACKNAME) distclean:: $(Q) rm -rf $(LIBSODIUM_UNPACKNAME) endif include $(APPDIR)/Application.mk