Files
openwrt/package/boot/uboot-tools/Makefile
T
Paul Spooren 7a991c8d88 treewide: use HTTPS for PKG_SOURCE_URL where possible
Switch http:// (and redundant ftp://) PKG_SOURCE_URL entries to https://
across tools/ and package/. PKG_HASH alone does not protect against an
attacker tampering with insecure downloads when a maintainer regenerates
the hash via `make ... FIXUP=1`: HTTPS authenticates the upstream so the
captured hash reflects real upstream content.

In-place http -> https (HTTPS reachability verified per host):
- tools/elftosb, tools/lzop, tools/liblzo, tools/mpfr, tools/dosfstools,
  tools/libressl, tools/xz
- package/libs/mpfr, package/libs/libmnl, package/libs/libnfnetlink

Replaced with @OPENWRT (HTTPS-only mirror) where the upstream HTTPS host
is dead or has a broken certificate:
- package/libs/popt (ftp.rpm.org cert mismatch)
- package/firmware/ixp4xx-microcode (was http://downloads.openwrt.org)
- package/boot/imx-bootlets (trabant.uid0.hu cert mismatch)
- package/boot/kobs-ng (freescale.com URL is dead, redirects to nxp.com root)

Dropped redundant ftp://ftp.denx.de fallback (https://ftp.denx.de is
already listed):
- package/boot/uboot-tools, tools/mkimage

Signed-off-by: Paul Spooren <mail@aparcar.org>
2026-04-20 11:58:37 +08:00

134 lines
3.7 KiB
Makefile

include $(TOPDIR)/rules.mk
PKG_DISTNAME:=u-boot
PKG_VERSION:=2026.04
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_DISTNAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:= \
https://ftp.denx.de/pub/u-boot \
https://mirror.cyberbits.eu/u-boot
PKG_URL:=https://docs.u-boot.org/en/latest/
PKG_HASH:=ac7c04b8b7004923b00a4e5d6699c5df4d21233bac9fda690d8cfbc209fff2fd
PKG_SOURCE_SUBDIR:=$(PKG_DISTNAME)-$(PKG_VERSION)
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_DISTNAME)-$(PKG_VERSION)
PKG_BUILD_DEPENDS:=fstools
PKG_LICENSE:=GPL-2.0 GPL-2.0+
PKG_LICENSE_FILES:=Licenses/README
PKG_BUILD_PARALLEL:=1
#PKG_FLAGS:=nonshared # Use PKGFLAGS instead of PKG_FLAGS for per-binary flags
include $(INCLUDE_DIR)/package.mk
define Package/dumpimage
SECTION:=utils
CATEGORY:=Utilities
SUBMENU:=Boot Loaders
TITLE:=dumpimage lists and extracts data from U-Boot images.
endef
define Package/dumpimage/description
dumpimage lists and extracts data from U-Boot images.
If -l is specified, dumpimage lists the components in
image.Otherwise, dumpimage extracts the component at
position to outfile.
endef
define Package/fit-check-sign
SECTION:=utils
CATEGORY:=Utilities
SUBMENU:=Boot Loaders
TITLE:=verify uImage.FIT
endef
define Package/fit-check-sign/description
fit_check_sign validates uImage.FIT hashes and signatures
endef
define Package/uboot-envtools
SECTION:=utils
CATEGORY:=Utilities
SUBMENU:=Boot Loaders
PKGFLAGS+=nonshared
TITLE:=read/modify U-Boot bootloader environment
endef
define Package/uboot-envtools/description
This package includes tools to read and modify U-Boot
bootloader environment.
endef
define Package/uboot-envtools/conffiles
/etc/config/ubootenv
/etc/fw_env.config
/etc/fw_sys.config
endef
define Build/Configure
$(call Build/Compile/Default,tools-only_defconfig)
$(PKG_BUILD_DIR)/scripts/config \
--file $(PKG_BUILD_DIR)/.config \
--disable TOOLS_KWBIMAGE \
--disable TOOLS_LIBCRYPTO \
--disable TOOLS_MKEFICAPSULE
endef
MAKE_FLAGS += \
ARCH="sandbox" \
TARGET_CFLAGS="$(TARGET_CFLAGS)" \
TARGET_LDFLAGS="$(TARGET_LDFLAGS)" \
PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR_HOST)" \
NO_PYTHON=1 \
V=$(if $(findstring c,$(OPENWRT_VERBOSE)),1,)
define Build/Compile
ifneq ($(CONFIG_PACKAGE_uboot-envtools),)
$(call Build/Compile/Default,envtools)
endif
ifneq ($(CONFIG_PACKAGE_dumpimage)$(CONFIG_PACKAGE_fit-check-sign),)
$(call Build/Compile/Default,cross_tools)
endif
endef
define Package/dumpimage/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/dumpimage $(1)/usr/bin
endef
define Package/fit-check-sign/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/fit_check_sign $(1)/usr/bin
endef
define Package/uboot-envtools/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/env/fw_printenv $(1)/usr/sbin
$(LN) fw_printenv $(1)/usr/sbin/fw_setenv
$(INSTALL_BIN) ./uboot-envtools/files/fw_printsys $(1)/usr/sbin
$(INSTALL_BIN) ./uboot-envtools/files/fw_setsys $(1)/usr/sbin
$(INSTALL_BIN) ./uboot-envtools/files/fw_loadenv $(1)/usr/sbin
$(INSTALL_DIR) $(1)/etc/board.d
$(INSTALL_DATA) ./uboot-envtools/files/fw_defaults $(1)/etc/board.d/05_fw_defaults
$(INSTALL_DIR) $(1)/lib
$(INSTALL_DATA) ./uboot-envtools/files/uboot-envtools.sh $(1)/lib
$(INSTALL_DIR) $(1)/etc/uci-defaults
$(if $(wildcard ./uboot-envtools/files/$(BOARD)_$(SUBTARGET)), \
$(INSTALL_DATA) ./uboot-envtools/files/$(BOARD)_$(SUBTARGET) \
$(1)/etc/uci-defaults/30_uboot-envtools, \
$(if $(wildcard ./uboot-envtools/files/$(BOARD)), \
$(INSTALL_DATA) ./uboot-envtools/files/$(BOARD) \
$(1)/etc/uci-defaults/30_uboot-envtools \
) \
)
endef
$(eval $(call BuildPackage,dumpimage))
$(eval $(call BuildPackage,fit-check-sign))
$(eval $(call BuildPackage,uboot-envtools))