include $(TOPDIR)/rules.mk PKG_NAME:=ninja PKG_VERSION:=1.9.0 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://codeload.github.com/ninja-build/ninja/tar.gz/v$(PKG_VERSION)? PKG_HASH:=5d7ec75828f8d3fd1a0c2f31b5b0cea780cdfe1031359228c428c1a48bfcd5b9 PKG_MAINTAINER:=Andre Heider PKG_LICENSE:=Apache-2.0 PKG_LICENSE_FILES:=COPYING PKG_BUILD_DEPENDS:=ninja/host include $(INCLUDE_DIR)/host-build.mk include $(INCLUDE_DIR)/package.mk include ./ninja.mk CONFIGURE_ARGS:= ifneq ($(findstring c,$(OPENWRT_VERBOSE)),) CONFIGURE_ARGS+=--verbose endif define Host/Configure endef define Host/Compile cd $(HOST_BUILD_DIR) && \ CXX="$(HOSTCXX)" \ CXXFLAGS="$(HOST_CXXFLAGS) $(HOST_CPPFLAGS)" \ LDFLAGS="$(HOST_LDFLAGS)" \ $(STAGING_DIR_HOST)/bin/$(PYTHON) configure.py --bootstrap $(CONFIGURE_ARGS) endef define Host/Install $(INSTALL_DIR) $(STAGING_DIR_HOSTPKG)/bin $(INSTALL_BIN) $(HOST_BUILD_DIR)/ninja $(STAGING_DIR_HOSTPKG)/bin/ endef define Host/Clean $(call Host/Clean/Default) rm -f $(STAGING_DIR_HOSTPKG)/bin/ninja endef define Package/ninja SECTION:=devel CATEGORY:=Development TITLE:=ninja URL:=https://ninja-build.org/ DEPENDS:=+libstdcpp endef define Package/ninja/description Ninja is a small build system with a focus on speed. It differs from other build systems in two major respects: it is designed to have its input files generated by a higher-level build system, and it is designed to run builds as fast as possible. endef define Package/ninja/install $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(PKG_BUILD_DIR)/ninja $(1)/usr/bin/ endef define Build/Configure cd $(PKG_BUILD_DIR) && \ CXX="$(TARGET_CXX)" \ CXXFLAGS="$(TARGET_CXXFLAGS) $(EXTRA_CXXFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS)" \ LDFLAGS="$(TARGET_LDFLAGS) $(EXTRA_LDFLAGS)" \ $(STAGING_DIR_HOST)/bin/$(PYTHON) configure.py $(CONFIGURE_ARGS) endef define Build/Compile $(call Ninja,-C $(PKG_BUILD_DIR),) endef $(eval $(call HostBuild)) $(eval $(call BuildPackage,ninja))