[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [UNIKRAFT/LIBTFLITE PATCH 2/4] Add Makefile.uk



Reviewed-by: Felipe Huici <felipe.huici@xxxxxxxxx>

On Fri, May 15, 2020 at 1:52 PM George Muraru <murarugeorgec@xxxxxxxxx> wrote:
>
> Signed-off-by: George Muraru <murarugeorgec@xxxxxxxxx>
> ---
>  Makefile.uk | 167 ++++++++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 167 insertions(+)
>  create mode 100644 Makefile.uk
>
> diff --git a/Makefile.uk b/Makefile.uk
> new file mode 100644
> index 0000000..7223603
> --- /dev/null
> +++ b/Makefile.uk
> @@ -0,0 +1,167 @@
> +#  libtensorflow-lite Makefile.uk
> +#
> +#  Authors: George Muraru <murarugeorgec@xxxxxxxxx>
> +#
> +#  Copyright (c) 2020, Politehnica University 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.
> +#
> +
> +$(eval $(call addlib_s,libtflite,$(CONFIG_LIBTFLITE)))
> +
> +################################################################################
> +# Sources
> +################################################################################
> +LIBTFLITE_VERSION=2.0.1
> +LIBTFLITE_PATCHDIR=$(LIBTFLITE_BASE)/patches
> +
> +LIBTFLITE_URL=https://github.com/tensorflow/tensorflow/archive/v$(LIBTFLITE_VERSION).tar.gz
> +$(eval $(call fetch,libtflite,$(LIBTFLITE_URL)))
> +$(eval $(call 
> patch,libtflite,$(LIBTFLITE_PATCHDIR),tensorflow-$(LIBTFLITE_VERSION)))
> +
> +################################################################################
> +# Helpers
> +################################################################################
> +LIBTFLITE_SUBDIR=tensorflow-$(LIBTFLITE_VERSION)
> +LIBTFLITE_SRC = $(LIBTFLITE_ORIGIN)/$(LIBTFLITE_SUBDIR)
> +
> +################################################################################
> +# Library includes
> +################################################################################
> +CXXINCLUDES-$(CONFIG_LIBTFLITE) += -I$(LIBTFLITE_SRC)/
> +CXXINCLUDES-$(CONFIG_LIBTFLITE) += -I$(LIBTFLITE_SRC)/tensorflow/lite
> +
> +
> +CINCLUDES-$(CONFIG_LIBTFLITE) += -I$(LIBTFLITE_SRC)/
> +CINCLUDES-$(CONFIG_LIBTFLITE) += -I$(LIBTFLITE_SRC)/tensorflow/lite
> +
> +################################################################################
> +# Main code
> +################################################################################
> +
> +ifdef CONFIG_LIBTFLITE_MAIN_FUNCTION
> +LIBTFLITE_SRCS-$(CONFIG_LIBTFLITE_MAIN_FUNCTION) += 
> $(LIBTFLITE_BASE)/main.cpp
> +endif
> +
> +################################################################################
> +# Global flags
> +################################################################################
> +LIBTFLITE_SUPPRESS_FLAGS += -Wno-sign-compare -Wno-unused-parameter 
> -Wno-comment \
> +                            -Wno-missing-field-initializers -Wno-parantheses 
> \
> +                            -Wno-unused-function -Wno-unknown-pragmas
> +
> +LIBTFLITE_CXXFLAGS-y += $(LIBTFLITE_SUPPRESS_FLAGS)
> +LIBTFLITE_CFLAGS-y += $(LIBTFLITE_SUPPRESS_FLAGS)
> +
> +ifdef CONFIG_LIBTFLITE_BUILD_WITH_RUY
> +LIBTFLITE_CXXFLAGS-y += -D TFLITE_WITH_RUY
> +LIBTFLITE_CFLAGS-y += -D TFLITE_WITH_RUY
> +endif
> +
> +ifdef CONFIG_LIBTFLITE_EIGEN_DONT_ALIGN
> +LIBTFLITE_CXXFLAGS-y += -D EIGEN_DONT_ALIGN
> +LIBTFLITE_CFLAGS-y += -D EIGEN_DONT_ALIGN
> +endif
> +
> +################################################################################
> +# Library sources
> +################################################################################
> +MINIMAL_SRCS := $(LIBTFLITE_SRC)/tensorflow/lite/examples/minimal/minimal.cc
> +
> +
> +CORE_CC_ALL_SRCS := \
> +            $(wildcard $(LIBTFLITE_SRC)/tensorflow/lite/*.cc) \
> +            $(wildcard $(LIBTFLITE_SRC)/tensorflow/lite/*.c) \
> +            $(wildcard $(LIBTFLITE_SRC)/tensorflow/lite/c/*.c) \
> +            $(wildcard $(LIBTFLITE_SRC)/tensorflow/lite/core/*.cc) \
> +            $(wildcard $(LIBTFLITE_SRC)/tensorflow/lite/core/api/*.cc) \
> +            $(wildcard 
> $(LIBTFLITE_SRC)/tensorflow/lite/experimental/resource_variable/*.cc) \
> +            $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/allocator.cc \
> +            $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/block_map.cc \
> +            
> $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/blocking_counter.cc \
> +            $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/context.cc \
> +            
> $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/detect_dotprod.cc \
> +            
> $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/kernel_arm32.cc \
> +            
> $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/kernel_arm64.cc \
> +            $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/pack_arm.cc \
> +            $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/pmu.cc \
> +            $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/thread_pool.cc 
> \
> +            $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/trace.cc \
> +            $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/trmul.cc \
> +            $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/tune.cc \
> +            $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/wait.cc \
> +            $(LIBTFLITE_SRC)/tensorflow/lite/minimal_logging_default.cc
> +
> +
> +
> +CORE_CC_ALL_SRCS += \
> +             $(wildcard $(LIBTFLITE_SRC)/tensorflow/lite/kernels/*.cc) \
> +             $(wildcard 
> $(LIBTFLITE_SRC)/tensorflow/lite/kernels/internal/*.cc) \
> +             $(wildcard 
> $(LIBTFLITE_SRC)/tensorflow/lite/kernels/internal/optimized/*.cc) \
> +             $(wildcard 
> $(LIBTFLITE_SRC)/tensorflow/lite/kernels/internal/reference/*.cc)
> +
> +
> +CORE_CC_ALL_SRCS := $(sort $(CORE_CC_ALL_SRCS))
> +CORE_CC_EXCLUDE_SRCS := \
> +                $(wildcard $(LIBTFLITE_SRC)/tensorflow/lite/*test.cc) \
> +                $(wildcard $(LIBTFLITE_SRC)/tensorflow/lite/*/*test.cc) \
> +                $(wildcard $(LIBTFLITE_SRC)/tensorflow/lite/*/*/*test.cc) \
> +                $(wildcard $(LIBTFLITE_SRC)/tensorflow/lite/*/*/*/*test.cc) \
> +                $(wildcard 
> $(LIBTFLITE_SRC)/tensorflow/lite/kernels/*test_main.cc) \
> +                $(wildcard 
> $(LIBTFLITE_SRC)/tensorflow/lite/kernels/*test_util.cc) \
> +                $(LIBTFLITE_SRC)/tensorflow/lite/experimental/ruy/pmu.cc \
> +                $(LIBTFLITE_SRC)/tensorflow/lite/minimal_logging_android.cc \
> +                $(LIBTFLITE_SRC)/tensorflow/lite/minimal_logging_ios.cc \
> +                $(MINIMAL_SRCS)
> +
> +
> +COMPILE_MANUAL_SRCS := \
> +                $(LIBTFLITE_SRC)/tensorflow/lite/kernels/internal/mfcc.cc \
> +                $(LIBTFLITE_SRC)/tensorflow/lite/kernels/mfcc.cc
> +
> +
> +ifeq ($(CONFIG_LIBUKMMAP),y)
> +CORE_CC_EXCLUDE_SRCS += 
> $(LIBTFLITE_SRC)/tensorflow/lite/mmap_allocation_disabled.cc
> +else
> +CORE_CC_EXCLUDE_SRCS += $(LIBTFLITE_SRC)/tensorflow/lite/mmap_allocation.cc
> +endif
> +
> +ifeq ($(LIBTFLITE_BUILD_WITH_NNAPI),y)
> +CORE_CC_ALL_SRCS += \
> +                
> $(LIBTFLITE_SRC)/tensorflow/lite/delegates/nnapi/nnapi_delegate.cc \
> +                
> $(LIBTFLITE_SRC)/tensorflow/lite/delegates/nnapi/quant_lstm_sup.cc \
> +                
> $(LIBTFLITE_SRC)/tensorflow/lite/nnapi/nnapi_implementation.cc
> +else
> +CORE_CC_ALL_SRCS += \
> +                
> $(LIBTFLITE_SRC)/tensorflow/lite/delegates/nnapi/nnapi_delegate_disabled.cc \
> +                
> $(LIBTFLITE_SRC)/tensorflow/lite/nnapi/nnapi_implementation_disabled.cc
> +endif
> +
> +LIBTFLITE_SRCS-y += $(filter-out $(CORE_CC_EXCLUDE_SRCS) 
> $(COMPILE_MANUAL_SRCS), $(CORE_CC_ALL_SRCS))
> +LIBTFLITE_SRCS-y += 
> $(LIBTFLITE_SRC)/tensorflow/lite/kernels/internal/mfcc.cc|internal
> +LIBTFLITE_SRCS-y += $(LIBTFLITE_SRC)/tensorflow/lite/kernels/mfcc.cc|kernels
> --
> 2.25.1
>
>



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.