From 4756f33d705b8b3218bdc1a78b5e9813375a3f9c Mon Sep 17 00:00:00 2001 From: caofuqi1 Date: Wed, 16 Feb 2022 17:28:31 +0800 Subject: [PATCH] apps: testing: uclibcxx_test: add uclibcxx_test Kconfig Signed-off-by: caofuqi1 --- testing/uclibcxx_test/Kconfig | 10 +++++++ testing/uclibcxx_test/Make.defs | 13 ++++++++++ testing/uclibcxx_test/Makefile | 46 +++++++++++++++++++++++++++++++++ 3 files changed, 69 insertions(+) create mode 100644 testing/uclibcxx_test/Kconfig create mode 100644 testing/uclibcxx_test/Make.defs create mode 100644 testing/uclibcxx_test/Makefile diff --git a/testing/uclibcxx_test/Kconfig b/testing/uclibcxx_test/Kconfig new file mode 100644 index 000000000..9b3f74f3c --- /dev/null +++ b/testing/uclibcxx_test/Kconfig @@ -0,0 +1,10 @@ +# +# For a description of the syntax of this configuration file, +# see the file kconfig-language.txt in the NuttX tools repository. +# + +config TESTING_UCLIBCXXTEST + tristate "uclibcxx test" + default n + ---help--- + Enable the uclibcxxtest diff --git a/testing/uclibcxx_test/Make.defs b/testing/uclibcxx_test/Make.defs new file mode 100644 index 000000000..385002c63 --- /dev/null +++ b/testing/uclibcxx_test/Make.defs @@ -0,0 +1,13 @@ +# 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. +# +############################################################################ + +ifneq ($(CONFIG_TESTING_UCLIBCXXTEST),) +CONFIGURED_APPS += $(APPDIR)/testing/uclibcxx_test +endif diff --git a/testing/uclibcxx_test/Makefile b/testing/uclibcxx_test/Makefile new file mode 100644 index 000000000..a4c59b4d3 --- /dev/null +++ b/testing/uclibcxx_test/Makefile @@ -0,0 +1,46 @@ +############################################################################ +# apps/testing/uclibcxx_test/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 + +CXXEXT := .cpp +TESTDIR = $(TOPDIR)/libs/libxx/uClibc++/tests +ORIGS := $(shell find $(TESTDIR) -name *.cpp) + +BLACKSRCS := wchartest.cpp +BLACKSRCS += excepttest.cpp + +MAINWORDS += "main(" + +$(foreach src, $(BLACKSRCS), $(eval BLACKLIST+=$(filter %$(src),$(ORIGS)))) +ORIGS := $(filter-out $(BLACKLIST), $(ORIGS)) + +$(foreach word, $(MAINWORDS), $(eval MAINCSRCSS+=$(shell grep -lr $(word) $(ORIGS)))) + +PROGNAME := $(basename $(shell echo $(MAINCSRCSS) | xargs -n 1 | awk -F "[/]" '{print "uclib_"$$(NF)}' | sed s/-/_/g)) +PRIORITY = SCHED_PRIORITY_DEFAULT +STACKSIZE = $(CONFIG_DEFAULT_TASK_STACKSIZE) +MODULE = $(CONFIG_TESTING_UCLIBCXXTEST) + +CXXFLAGS += -I$(TESTDIR) +CXXSRCS += $(TESTDIR)/testframework.cpp +MAINSRC = $(MAINCSRCSS) + +include $(APPDIR)/Application.mk