tools/cmake: add MAKE config variable
[openwrt/openwrt.git] / tools / cmake / Makefile
index 4e4d71b31f19260ecfeb1996474cc649a8496d64..8f0631eb74c9e77a5545a2e54cde2914be9cb755 100644 (file)
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2006-2013 OpenWrt.org
+# Copyright (C) 2006-2016 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -7,21 +7,46 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=cmake
-PKG_VERSION:=2.8.10.2
+PKG_VERSION:=3.22.1
+PKG_RELEASE:=1
+PKG_CPE_ID:=cpe:/a:kitware:cmake
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=http://www.cmake.org/files/v2.8/
-PKG_MD5SUM:=097278785da7182ec0aea8769d06860c
+PKG_SOURCE_URL:=https://github.com/Kitware/CMake/releases/download/v$(PKG_VERSION)/ \
+               https://cmake.org/files/v3.19/
+PKG_HASH:=0e998229549d7b3f368703d20e248e7ee1f853910d42704aa87918c213ea82c0
 
 HOST_BUILD_PARALLEL:=1
 HOST_CONFIGURE_PARALLEL:=1
 
 include $(INCLUDE_DIR)/host-build.mk
 
-HOST_CONFIGURE_VARS :=
+HOST_CONFIGURE_VARS += \
+       CC="$(HOSTCC_NOCACHE)" \
+       CXX="$(HOSTCXX_NOCACHE)" \
+       MAKEFLAGS="$(HOST_JOBS)" \
+       CXXFLAGS="$(HOST_CFLAGS)" \
+       MAKE="$(STAGING_DIR_HOST)/bin/ninja"
 
 HOST_CONFIGURE_ARGS := \
-       --prefix=$(STAGING_DIR_HOST) \
-       $(if $(MAKE_JOBSERVER),--parallel="$(MAKE_JOBSERVER)")
+       $(if $(MAKE_JOBSERVER),--parallel="$(MAKE_JOBSERVER)") \
+       --prefix="$(STAGING_DIR_HOST)" \
+       --generator=Ninja
+
+define Host/Compile/Default
+       +$(NINJA) -C $(HOST_BUILD_DIR) $(1)
+endef
+
+define Host/Install/Default
+       +$(NINJA) -C $(HOST_BUILD_DIR) install
+endef
+
+define Host/Uninstall/Default
+       +$(NINJA) -C $(HOST_BUILD_DIR) uninstall
+endef
+
+ifneq ($(findstring c,$(OPENWRT_VERBOSE)),)
+  HOST_MAKE_FLAGS += VERBOSE=1
+endif
 
 $(eval $(call HostBuild))