From 8f554b793c68fd5271334bf0e167dabc4c9ac73d Mon Sep 17 00:00:00 2001 From: msardara Date: Tue, 11 Dec 2018 18:36:55 +0100 Subject: Added CMake building system for libmemif Added Cpack support for building libmemif DEB/RPM packages Fixed compilation errors in libmemif test and examples Change-Id: I59a237a4ca8eb08840857d5b0e666f3a8d74411d Signed-off-by: msardara --- build-data/packages/libmemif.mk | 39 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) (limited to 'build-data') diff --git a/build-data/packages/libmemif.mk b/build-data/packages/libmemif.mk index a4be1803aae..9bce09b5f25 100644 --- a/build-data/packages/libmemif.mk +++ b/build-data/packages/libmemif.mk @@ -1,3 +1,40 @@ +# Copyright (c) 2017-2018 Cisco and/or its affiliates. +# Licensed 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. + libmemif_source = extras -libmemif_configure_subdir = libmemif +libmemif_configure_subdir = libmemif + +ifneq ($(shell which cmake3),) +CMAKE?=cmake3 +else +CMAKE?=cmake +endif + +libmemif_cmake_args ?= +libmemif_cmake_args += -DCMAKE_INSTALL_PREFIX:PATH=$(PACKAGE_INSTALL_DIR) +libmemif_cmake_args += -DCMAKE_C_FLAGS="$($(TAG)_TAG_CFLAGS)" +libmemif_cmake_args += -DCMAKE_SHARED_LINKER_FLAGS="$($(TAG)_TAG_LDFLAGS)" +libmemif_cmake_args += -DCMAKE_PREFIX_PATH:PATH="$(PACKAGE_INSTALL_DIR)/../vpp" + +# Use devtoolset on centos 7 +ifneq ($(wildcard /opt/rh/devtoolset-7/enable),) +libmemif_cmake_args += -DCMAKE_PROGRAM_PATH:PATH="/opt/rh/devtoolset-7/root/bin" +endif + +libmemif_configure = \ + cd $(PACKAGE_BUILD_DIR) && \ + $(CMAKE) -G Ninja $(libmemif_cmake_args) $(call find_source_fn,$(PACKAGE_SOURCE))$(PACKAGE_SUBDIR) + +libmemif_build = $(CMAKE) --build $(PACKAGE_BUILD_DIR) -- $(MAKE_PARALLEL_FLAGS) +libmemif_install = $(CMAKE) --build $(PACKAGE_BUILD_DIR) -- install -- cgit 1.2.3-korg