[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Minios-devel] [UNIKRAFT/LIBBENCHMARK PATCH 2/5] Add Makefile.uk
Hi Vlad, Please find some minor comments below. Thanks, -- Felipe On 30.09.19, 22:44, "Vlad-Andrei BĂDOIU (78692)" <vlad_andrei.badoiu@xxxxxxxxxxxxxxx> wrote: Signed-off-by: Vlad-Andrei Badoiu <vlad_andrei.badoiu@xxxxxxxxxxxxxxx> --- Makefile.uk | 110 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 110 insertions(+) create mode 100644 Makefile.uk diff --git a/Makefile.uk b/Makefile.uk new file mode 100644 index 0000000..27e04e9 --- /dev/null +++ b/Makefile.uk @@ -0,0 +1,110 @@ +# SPDX-License-Identifier: BSD-3-Clause +# +# benchmark Makefile.uk +# +# Authors: Vlad-Andrei Badoiu <vlad_andrei.badoiu@xxxxxxxxxxxxxxx> +# +# Copyright (c) 2019, University Politehnica of Bucharest. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. Neither the name of the copyright holder nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE +# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# +# THIS HEADER MAY NOT BE EXTRACTED OR MODIFIED IN ANY WAY. +# + +################################################################################ +# Library registration +################################################################################ +$(eval $(call addlib_s,libbenchmark,$(CONFIG_LIBBENCHMARK))) + +################################################################################ +# Sources +################################################################################ +LIBBENCHMARK_VERSION=1.5.0 +LIBBENCHMARK_URL=https://github.com/google/benchmark/archive/v$(LIBBENCHMARK_VERSION).tar.gz +LIBBENCHMARK_PATCHDIR=$(LIBBENCHMARK_BASE)/patches +$(eval $(call fetch,libbenchmark,$(LIBBENCHMARK_URL))) +$(eval $(call patch,libbenchmark,$(LIBBENCHMARK_PATCHDIR),benchmark-$(LIBBENCHMARK_VERSION))) + +################################################################################ +# Helpers +################################################################################ +LIBBENCHMARK_SUBDIR=benchmark-$(LIBBENCHMARK_VERSION) +LIBBENCHMARK_SRC = $(LIBBENCHMARK_ORIGIN)/$(LIBBENCHMARK_SUBDIR) + +################################################################################ +# Library includes +################################################################################ +LIBBENCHMARK_GLOBAL_INCLUDES-y += -I$(LIBBENCHMARK_SRC)/src +LIBBENCHMARK_GLOBAL_INCLUDES-y += -I$(LIBBENCHMARK_SRC)/include +CINCLUDES-y += $(LIBBENCHMARK_GLOBAL_INCLUDES-y) +CXXINCLUDES-y += $(LIBBENCHMARK_GLOBAL_INCLUDES-y) + +################################################################################ +# Common flags +################################################################################ +# Suppressed flags +SUPPRESS_FLAGS += -Wno-unused-parameter \ + -Wno-unused-variable -Wno-unused-value -Wno-unused-function \ + -Wno-missing-field-initializers -Wno-implicit-fallthrough \ + -Wno-cast-function-type -Wno-stringop-truncation \ + -Wno-char-subscripts -Wno-sign-compare It might be good to namespace this variable, i.e., LIBBENCHMARK_ SUPPRESS_FLAGS + +LIBBENCHMARK_CFLAGS-y += $(SUPPRESS_FLAGS) -Wno-pointer-to-int-cast -Wno-int-to-pointer-cast +LIBBENCHMARK_CXXFLAGS-y += $(SUPPRESS_FLAGS) -Wno-pointer-to-int-cast -Wno-int-to-pointer-cast I had the following warning while building: cc1plus: warning: command line option '-Wno-pointer-to-int-cast' is valid for C/ObjC but not for C++ (please remove -Wno-pointer-to-int-cast from LIBBENCHMARK_CXXFLAGS-y) Also, I got the following warning that you might want to suppress: warning: unnecessary parentheses in declaration of '_sig_func' [-Wparentheses] + +LIBBENCHMARK_CFLAGS-y += -DBENCHMARK_OS_LINUX -DCLOCK_THREAD_CPUTIME_ID \ + -DNDEBUG -DBENCHMARK_HAS_SYSCTL + +LIBBENCHMARK_CXXFLAGS-y += -DBENCHMARK_OS_LINUX -DCLOCK_THREAD_CPUTIME_ID \ + -DNDEBUG -DBENCHMARK_HAS_SYSCTL + +################################################################################ +# Glue code +################################################################################ +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_BASE)/glue.cc|unikraft + +################################################################################ +# Library sources +################################################################################ +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/complexity.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/benchmark_name.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/console_reporter.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/sleep.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/benchmark_runner.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/benchmark_api_internal.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/csv_reporter.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/statistics.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/json_reporter.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/reporter.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/commandlineflags.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/benchmark_register.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/sysinfo.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/string_util.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/benchmark.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/counter.cc +#LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/benchmark_main.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/timers.cc +LIBBENCHMARK_SRCS-y += $(LIBBENCHMARK_SRC)/src/colorprint.cc -- 2.20.1 _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |