pkg: adapt cmake based packages to the new organization

This commit is contained in:
Alexandre Abadie 2020-06-13 20:59:41 +02:00
parent 385ad95701
commit a8eb1f5d53
No known key found for this signature in database
GPG Key ID: 1C919A403CAE1405
6 changed files with 39 additions and 51 deletions

View File

@ -7,9 +7,6 @@ include $(RIOTBASE)/pkg/pkg.mk
.PHONY: ..cmake_version_supported
CCNLITE_SOURCE_DIR = $(PKG_BUILDDIR)
CCNLITE_BUILD_DIR = $(PKG_BUILDDIR)/build
CMAKE_MINIMAL_VERSION = 3.6.0
RIOT_CFLAGS = $(INCLUDES)
@ -18,18 +15,18 @@ ifeq (llvm,$(TOOLCHAIN))
RIOT_CFLAGS += -Wno-char-subscripts
endif
TOOLCHAIN_FILE = $(CCNLITE_SOURCE_DIR)/xcompile-toolchain.cmake
TOOLCHAIN_FILE = $(PKG_SOURCE_DIR)/xcompile-toolchain.cmake
all: $(BINDIR)/ccn-lite.a
$(BINDIR)/ccn-lite.a: $(CCNLITE_BUILD_DIR)/lib/libccnl-riot.a
$(BINDIR)/ccn-lite.a: $(PKG_BUILD_DIR)/lib/libccnl-riot.a
cp $< $@
$(CCNLITE_BUILD_DIR)/lib/libccnl-riot.a: $(CCNLITE_BUILD_DIR)/Makefile
$(MAKE) -C $(CCNLITE_BUILD_DIR)
$(PKG_BUILD_DIR)/lib/libccnl-riot.a: $(PKG_BUILD_DIR)/Makefile
$(MAKE) -C $(PKG_BUILD_DIR)
$(CCNLITE_BUILD_DIR)/Makefile: $(PKG_PREPARED) $(TOOLCHAIN_FILE) | ..cmake_version_supported
cmake -B$(CCNLITE_BUILD_DIR) -H$(CCNLITE_SOURCE_DIR)/src \
$(PKG_BUILD_DIR)/Makefile: $(PKG_PREPARED) $(TOOLCHAIN_FILE) | ..cmake_version_supported
cmake -B$(PKG_BUILD_DIR) -H$(PKG_SOURCE_DIR)/src \
-DCMAKE_TOOLCHAIN_FILE=$(TOOLCHAIN_FILE) \
-DCCNL_RIOT=1 -DRIOT_CFLAGS="$(RIOT_CFLAGS)" -DBUILD_TESTING=OFF

View File

@ -8,9 +8,6 @@ include $(RIOTBASE)/pkg/pkg.mk
.PHONY: all..cmake_version_supported
CRYPTOAUTHLIB_SOURCE_DIR = $(PKG_BUILDDIR)
CRYPTOAUTHLIB_BUILD_DIR = $(PKG_BUILDDIR)/build
CMAKE_MINIMAL_VERSION = 3.6.0
CFLAGS += $(INCLUDES)
@ -19,7 +16,7 @@ CFLAGS += -Wno-type-limits -Wno-strict-aliasing -Wno-unused-variable -DATCA_HAL_
CFLAGS += -Wno-unused-parameter -Wno-sign-compare -Wno-overflow -Wno-pointer-to-int-cast
CFLAGS += -Wno-char-subscripts
TOOLCHAIN_FILE=$(CRYPTOAUTHLIB_SOURCE_DIR)/xcompile-toolchain.cmake
TOOLCHAIN_FILE=$(PKG_SOURCE_DIR)/xcompile-toolchain.cmake
ifneq (,$(filter $(PKG_TEST_NAME),$(USEMODULE)))
all: cryptoauth build_tests
@ -27,25 +24,25 @@ else
all: cryptoauth
endif
cryptoauth: $(CRYPTOAUTHLIB_BUILD_DIR)/Makefile
$(MAKE) -C $(CRYPTOAUTHLIB_BUILD_DIR)
cp $(CRYPTOAUTHLIB_BUILD_DIR)/libcryptoauth.a $(BINDIR)/$(PKG_NAME).a
cryptoauth: $(PKG_BUILD_DIR)/Makefile
$(MAKE) -C $(PKG_BUILD_DIR)
cp $(PKG_BUILD_DIR)/libcryptoauth.a $(BINDIR)/$(PKG_NAME).a
$(CRYPTOAUTHLIB_BUILD_DIR)/Makefile: $(TOOLCHAIN_FILE)
$(PKG_BUILD_DIR)/Makefile: $(TOOLCHAIN_FILE)
cmake -DCMAKE_TOOLCHAIN_FILE=$(TOOLCHAIN_FILE) \
-Wno-dev \
-DATCA_HAL_I2C:BOOL=TRUE \
-B$(CRYPTOAUTHLIB_BUILD_DIR) \
-H$(CRYPTOAUTHLIB_SOURCE_DIR)/lib
-B$(PKG_BUILD_DIR) \
-H$(PKG_SOURCE_DIR)/lib
$(TOOLCHAIN_FILE): git-download
$(RIOTTOOLS)/cmake/generate-xcompile-toolchain.sh > $(TOOLCHAIN_FILE)
build_tests:
"$(MAKE)" -C $(CRYPTOAUTHLIB_SOURCE_DIR)/test -f $(RIOTBASE)/Makefile.base MODULE=$(PKG_TEST_NAME)
"$(MAKE)" -C $(CRYPTOAUTHLIB_SOURCE_DIR)/test/jwt -f $(RIOTBASE)/Makefile.base MODULE=$(PKG_TEST_NAME)_jwt
"$(MAKE)" -C $(CRYPTOAUTHLIB_SOURCE_DIR)/test/tng -f $(RIOTBASE)/Makefile.base MODULE=$(PKG_TEST_NAME)_tng
"$(MAKE)" -C $(CRYPTOAUTHLIB_SOURCE_DIR)/test/atcacert -f $(RIOTBASE)/Makefile.base MODULE=$(PKG_TEST_NAME)_atcacert
"$(MAKE)" -C $(PKG_SOURCE_DIR)/test -f $(RIOTBASE)/Makefile.base MODULE=$(PKG_TEST_NAME)
"$(MAKE)" -C $(PKG_SOURCE_DIR)/test/jwt -f $(RIOTBASE)/Makefile.base MODULE=$(PKG_TEST_NAME)_jwt
"$(MAKE)" -C $(PKG_SOURCE_DIR)/test/tng -f $(RIOTBASE)/Makefile.base MODULE=$(PKG_TEST_NAME)_tng
"$(MAKE)" -C $(PKG_SOURCE_DIR)/test/atcacert -f $(RIOTBASE)/Makefile.base MODULE=$(PKG_TEST_NAME)_atcacert
git-download: | ..cmake_version_supported

View File

@ -1,9 +1,9 @@
PKG_BUILDDIR ?= $(PKGDIRBASE)/cryptoauthlib
PKG_TESTINCLDIR = $(PKG_BUILDDIR)/test
PKG_SOURCE_DIR ?= $(PKGDIRBASE)/cryptoauthlib
PKG_TESTINCLDIR = $(PKG_SOURCE_DIR)/test
INCLUDES += -I$(PKG_BUILDDIR)
INCLUDES += -I$(PKG_BUILDDIR)/lib
INCLUDES += -I$(PKG_BUILDDIR)/app
INCLUDES += -I$(PKG_SOURCE_DIR)
INCLUDES += -I$(PKG_SOURCE_DIR)/lib
INCLUDES += -I$(PKG_SOURCE_DIR)/app
INCLUDES += -I$(RIOTPKG)/cryptoauthlib/include
DIRS += $(RIOTPKG)/cryptoauthlib/contrib

View File

@ -5,9 +5,6 @@ PKG_LICENSE=Apache-2.0
include $(RIOTBASE)/pkg/pkg.mk
JERRYSCRIPT_BUILD_DIR ?= $(PKG_BUILDDIR)/build
JERRYSCRIPT_SOURCE_DIR ?= $(PKG_BUILDDIR)
CFLAGS += -Wno-implicit-fallthrough
JERRYHEAP ?= 16
@ -40,14 +37,14 @@ endif
all: libjerry
libjerry: $(JERRYSCRIPT_BUILD_DIR)/Makefile
"$(MAKE)" -C $(JERRYSCRIPT_BUILD_DIR) jerry-core jerry-ext jerry-port-default-minimal
@cp $(JERRYSCRIPT_BUILD_DIR)/lib/libjerry-core.a $(BINDIR)/jerryscript.a
@cp $(JERRYSCRIPT_BUILD_DIR)/lib/libjerry-ext.a $(BINDIR)/jerryscript-ext.a
@cp $(JERRYSCRIPT_BUILD_DIR)/lib/libjerry-port-default-minimal.a $(BINDIR)/jerryport-minimal.a
libjerry: $(PKG_BUILD_DIR)/Makefile
"$(MAKE)" -C $(PKG_BUILD_DIR) jerry-core jerry-ext jerry-port-default-minimal
@cp $(PKG_BUILD_DIR)/lib/libjerry-core.a $(BINDIR)/jerryscript.a
@cp $(PKG_BUILD_DIR)/lib/libjerry-ext.a $(BINDIR)/jerryscript-ext.a
@cp $(PKG_BUILD_DIR)/lib/libjerry-port-default-minimal.a $(BINDIR)/jerryport-minimal.a
$(JERRYSCRIPT_BUILD_DIR)/Makefile:
cmake -B$(JERRYSCRIPT_BUILD_DIR) -H$(JERRYSCRIPT_SOURCE_DIR) \
$(PKG_BUILD_DIR)/Makefile:
cmake -B$(PKG_BUILD_DIR) -H$(PKG_SOURCE_DIR) \
-DCMAKE_SYSTEM_NAME=RIOT \
-DCMAKE_SYSTEM_PROCESSOR="$(MCPU)" \
-DCMAKE_C_COMPILER=$(CC) \
@ -62,4 +59,4 @@ $(JERRYSCRIPT_BUILD_DIR)/Makefile:
-DMEM_HEAP_SIZE_KB=$(JERRYHEAP)
clean::
@rm -rf $(JERRYSCRIPT_BUILD_DIR)
@rm -rf $(PKG_BUILD_DIR)

View File

@ -3,20 +3,17 @@ PKG_URL=https://github.com/relic-toolkit/relic.git
PKG_VERSION=0b0442a8218df8d309266923f2dd5b9ae3b318ce
PKG_LICENSE=LGPL-2.1
PKG_CUSTOM_PREPARED = $(PKGDIRBASE)/$(PKG_NAME)/build/include
PKG_CUSTOM_PREPARED = $(BINDIR)/pkg-build/$(PKG_NAME)/include
include $(RIOTBASE)/pkg/pkg.mk
.PHONY: ..cmake_version_supported
RELIC_BUILD_DIR = $(PKG_BUILDDIR)/build
RELIC_SOURCE_DIR = $(PKG_BUILDDIR)
CMAKE_MINIMAL_VERSION = 3.6.0
CFLAGS += -Wno-gnu-zero-variadic-macro-arguments -Wno-unused-function -Wno-newline-eof
TOOLCHAIN_FILE = $(RELIC_SOURCE_DIR)/xcompile-toolchain.cmake
TOOLCHAIN_FILE = $(PKG_SOURCE_DIR)/xcompile-toolchain.cmake
all: $(BINDIR)/$(PKG_NAME).a
@ -24,18 +21,18 @@ $(PKG_CUSTOM_PREPARED):
$(info [INFO] Relic: create include directory in build)
mkdir -p $(PKG_CUSTOM_PREPARED)
$(BINDIR)/$(PKG_NAME).a: $(RELIC_BUILD_DIR)/lib/librelic_s.a
$(BINDIR)/$(PKG_NAME).a: $(PKG_BUILD_DIR)/lib/librelic_s.a
cp $< $@
$(RELIC_BUILD_DIR)/lib/librelic_s.a: $(RELIC_BUILD_DIR)/Makefile
$(MAKE) -C $(RELIC_BUILD_DIR)
$(PKG_BUILD_DIR)/lib/librelic_s.a: $(PKG_BUILD_DIR)/Makefile
$(MAKE) -C $(PKG_BUILD_DIR)
# Pass 'COMP' with a target specific export to not have issues with the shell
# escaping evaluation.
COMP = $(filter-out -Werror -Werror=old-style-definition -Werror=strict-prototypes -std=gnu99,$(CFLAGS))
$(RELIC_BUILD_DIR)/Makefile: export COMP ?=
$(RELIC_BUILD_DIR)/Makefile: $(PKG_PREPARED) $(TOOLCHAIN_FILE) | ..cmake_version_supported
cmake -B$(RELIC_BUILD_DIR) -H$(RELIC_SOURCE_DIR) \
$(PKG_BUILD_DIR)/Makefile: export COMP ?=
$(PKG_BUILD_DIR)/Makefile: $(PKG_PREPARED) $(TOOLCHAIN_FILE) | ..cmake_version_supported
cmake -B$(PKG_BUILD_DIR) -H$(PKG_SOURCE_DIR) \
-DCMAKE_TOOLCHAIN_FILE=$(TOOLCHAIN_FILE) \
-DCHECK=off -DTESTS=0 -DBENCH=0 -DSHLIB=off -Wno-dev $(RELIC_CONFIG_FLAGS)

View File

@ -1,5 +1,5 @@
INCLUDES += -I$(PKGDIRBASE)/relic/include
INCLUDES += -I$(PKGDIRBASE)/relic/build/include
INCLUDES += -I$(BINDIR)/pkg-build/relic/include
ifneq (,$(filter cortex-m%,$(CPU_CORE)))
# relic package package is not using system includes right now, so