CMake as an alternative to autotools (experimental)
[vpp.git] / build-data / packages / vpp.mk
index 19e32ef..230f890 100644 (file)
@@ -12,6 +12,7 @@
 # limitations under the License.
 
 vpp_source = src
+ifneq ($(vpp_uses_cmake),yes)
 
 ifeq ($($(PLATFORM)_dpdk_shared_lib),yes)
 vpp_configure_args = --enable-dpdk-shared
@@ -49,3 +50,18 @@ endif
 ifeq ($($(PLATFORM)_enable_tests),yes)
 vpp_configure_args += --enable-tests
 endif
+
+else
+vpp_configure_depend += dpdk-install
+vpp_configure = \
+  cd $(PACKAGE_BUILD_DIR) && \
+  cmake -G Ninja \
+    -DCMAKE_INSTALL_PREFIX:PATH=$(PACKAGE_INSTALL_DIR) \
+    -DCMAKE_C_FLAGS="$($(TAG)_TAG_CFLAGS)" \
+    -DDPDK_INCLUDE_DIR_HINT="$(PACKAGE_INSTALL_DIR)/../dpdk/include" \
+    -DDPDK_LIB_DIR_HINT="$(PACKAGE_INSTALL_DIR)/../dpdk/lib" \
+    $(call find_source_fn,$(PACKAGE_SOURCE))
+#vpp_make_args = --no-print-directory
+vpp_build = cmake --build $(PACKAGE_BUILD_DIR)
+vpp_install = cmake --build $(PACKAGE_BUILD_DIR) -- install | grep -v 'Set runtime path'
+endif