# SPDX-License-Identifier: GPL-3.0-only # # Copyright (C) 2022 ImmortalWrt.org include $(TOPDIR)/rules.mk PKG_NAME:=gn PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://gn.googlesource.com/gn.git PKG_SOURCE_DATE:=2023-02-17 PKG_SOURCE_VERSION:=b25a2f8c2d33f02082f0f258350f5e22c0973108 PKG_MIRROR_HASH:=28dcd0c0fe6fe8c459096acd0ff9ff4a982284ca680ff6edc1222dc88dac0b23 PKG_LICENSE:=BSD 3-Clause PKG_LICENSE_FILES:=LICENSE PKG_MAINTAINER:=Tianling Shen ifneq ($(wildcard $(TOPDIR)/feeds/packages/devel/ninja/ninja.mk),) PKG_BUILD_DEPENDS+= ninja/host endif PKG_HOST_ONLY:=1 HOST_BUILD_PARALLEL:=1 include $(INCLUDE_DIR)/host-build.mk include $(INCLUDE_DIR)/package.mk define Package/gn SECTION:=devel CATEGORY:=Development TITLE:=A meta-build system that generates build files for Ninja URL:=https://gn.googlesource.com/gn/ BUILDONLY:=1 endef define Package/gn/description GN can generate Ninja build files for C, C++, Rust, Objective C, and Swift source on most popular platforms. endef define Host/Configure $(PYTHON) $(HOST_BUILD_DIR)/build/gen.py \ --no-last-commit-position endef define Host/Compile ninja -C $(HOST_BUILD_DIR)/out endef define Host/Install $(INSTALL_DIR) $(STAGING_DIR_HOSTPKG)/bin/ $(INSTALL_BIN) $(HOST_BUILD_DIR)/out/gn $(STAGING_DIR_HOSTPKG)/bin/ endef define Host/Clean $(RM) $(STAGING_DIR_HOSTPKG)/bin/gn endef $(eval $(call HostBuild)) $(eval $(call BuildPackage,gn))