# 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-04-05 PKG_SOURCE_VERSION:=28b7b6c507eb808567e3aea446cd259f7691fddc PKG_MIRROR_HASH:=5b112442eabea4b906cc409237fac13b8efb4f5acb25989b1883d5ce96deebd2 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))