Skip to content

Instantly share code, notes, and snippets.

@danielphan2003
Created February 11, 2023 17:09
Show Gist options
  • Save danielphan2003/be27d06a7ff4d12c569164ac3086bd13 to your computer and use it in GitHub Desktop.
Save danielphan2003/be27d06a7ff4d12c569164ac3086bd13 to your computer and use it in GitHub Desktop.

Revisions

  1. danielphan2003 created this gist Feb 11, 2023.
    270 changes: 270 additions & 0 deletions openwrt-snapshot-fullcone.diff
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,270 @@
    diff --git a/package/libs/libnftnl/Makefile b/package/libs/libnftnl/Makefile
    index 50ad11a2cf..58c4a9e8cb 100644
    --- a/package/libs/libnftnl/Makefile
    +++ b/package/libs/libnftnl/Makefile
    @@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
    PKG_NAME:=libnftnl
    PKG_CPE_ID:=cpe:/a:netfilter:libnftnl
    PKG_VERSION:=1.2.4
    -PKG_RELEASE:=$(AUTORELEASE)
    +PKG_RELEASE:=1-fullcone

    PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
    PKG_SOURCE_URL:=https://netfilter.org/projects/$(PKG_NAME)/files
    @@ -20,6 +20,7 @@ PKG_MAINTAINER:=Steven Barth <[email protected]>
    PKG_LICENSE:=GPL-2.0-or-later
    PKG_LICENSE_FILES:=COPYING

    +PKG_FIXUP:=autoreconf
    PKG_INSTALL:=1
    PKG_BUILD_PARALLEL:=1

    diff --git a/package/network/config/firewall4/Makefile b/package/network/config/firewall4/Makefile
    index bec03b62d4..e92aea30a6 100644
    --- a/package/network/config/firewall4/Makefile
    +++ b/package/network/config/firewall4/Makefile
    @@ -5,7 +5,7 @@
    include $(TOPDIR)/rules.mk

    PKG_NAME:=firewall4
    -PKG_RELEASE:=$(AUTORELEASE)
    +PKG_RELEASE:=1-fullcone

    PKG_SOURCE_PROTO:=git
    PKG_SOURCE_URL=$(PROJECT_GIT)/project/firewall4.git
    diff --git a/package/network/utils/nftables/Makefile b/package/network/utils/nftables/Makefile
    index 2010aaf65c..8d486be167 100644
    --- a/package/network/utils/nftables/Makefile
    +++ b/package/network/utils/nftables/Makefile
    @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk

    PKG_NAME:=nftables
    PKG_VERSION:=1.0.6
    -PKG_RELEASE:=1
    +PKG_RELEASE:=1-fullcone

    PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
    PKG_SOURCE_URL:=https://netfilter.org/projects/$(PKG_NAME)/files
    diff --git a/target/linux/ramips/Makefile b/target/linux/ramips/Makefile
    index 7d34dfe676..77b82d5334 100644
    --- a/target/linux/ramips/Makefile
    +++ b/target/linux/ramips/Makefile
    @@ -10,8 +10,7 @@ BOARDNAME:=MediaTek Ralink MIPS
    SUBTARGETS:=mt7620 mt7621 mt76x8 rt288x rt305x rt3883
    FEATURES:=squashfs gpio

    -KERNEL_PATCHVER:=5.10
    -KERNEL_TESTING_PATCHVER:=5.15
    +KERNEL_PATCHVER:=5.15

    define Target/Description
    Build firmware images for Ralink RT288x/RT3xxx based boards.
    diff --git a/target/sdk/Config.in b/target/sdk/Config.in
    index 1984e242e7..7eed3fb606 100644
    --- a/target/sdk/Config.in
    +++ b/target/sdk/Config.in
    @@ -2,6 +2,12 @@ config SDK
    bool "Build the OpenWrt SDK"
    depends on !EXTERNAL_TOOLCHAIN
    default BUILDBOT
    + select TOOLS_SQUASHFS_GZIP
    + select TOOLS_SQUASHFS_LZ4
    + select TOOLS_SQUASHFS_LZO
    + select TOOLS_SQUASHFS_XATTR
    + select TOOLS_SQUASHFS_XZ
    + select TOOLS_SQUASHFS_ZSTD
    help
    This is essentially a stripped-down version of the buildroot
    with a precompiled toolchain. It can be used to develop and
    diff --git a/tools/Makefile b/tools/Makefile
    index 7b3a8eb142..221b63316a 100644
    --- a/tools/Makefile
    +++ b/tools/Makefile
    @@ -20,7 +20,7 @@ endif
    ifneq ($(CONFIG_SDK)$(CONFIG_PACKAGE_kmod-b43)$(CONFIG_BRCMSMAC_USE_FW_FROM_WL),)
    BUILD_B43_TOOLS = y
    endif
    -ifneq ($(CONFIG_SDK)$(CONFIG_TARGET_INITRAMFS_COMPRESSION_LZ4),)
    +ifneq ($(CONFIG_SDK)$(CONFIG_TARGET_INITRAMFS_COMPRESSION_LZ4)$(CONFIG_TOOLS_SQUASHFS_LZ4),)
    BUILD_LZ4_TOOLS = y
    endif
    ifneq ($(CONFIG_SDK)$(CONFIG_TARGET_INITRAMFS_COMPRESSION_LZO),)
    @@ -64,7 +64,6 @@ tools-y += sstrip
    tools-y += zip
    tools-y += zlib
    tools-y += zstd
    -tools-$(if $(CONFIG_BUILD_ALL_HOST_TOOLS),y) += liblzo
    tools-$(if $(CONFIG_BUILD_ALL_HOST_TOOLS)$(BUILD_B43_TOOLS),y) += b43-tools
    tools-$(if $(CONFIG_BUILD_ALL_HOST_TOOLS)$(BUILD_ISL),y) += isl
    tools-$(if $(CONFIG_BUILD_ALL_HOST_TOOLS)$(BUILD_LZ4_TOOLS),y) += lz4
    @@ -78,6 +77,10 @@ tools-$(if $(CONFIG_BUILD_ALL_HOST_TOOLS)$(CONFIG_TARGET_tegra),y) += cbootimage
    tools-$(if $(CONFIG_BUILD_ALL_HOST_TOOLS)$(CONFIG_USES_MINOR),y) += kernel2minor
    tools-$(if $(CONFIG_BUILD_ALL_HOST_TOOLS)$(CONFIG_USE_SPARSE),y) += sparse
    tools-$(if $(CONFIG_BUILD_ALL_HOST_TOOLS)$(CONFIG_USE_LLVM_BUILD),y) += llvm-bpf
    +#tools-$(if $(CONFIG_TOOLS_SQUASHFS_GZIP),y) += zlib
    +tools-$(if $(CONFIG_TOOLS_SQUASHFS_LZO),y) += liblzo
    +#tools-$(if $(CONFIG_TOOLS_SQUASHFS_XZ),y) += lzma
    +#tools-$(if $(CONFIG_TOOLS_SQUASHFS_ZSTD),y) += zstd

    # builddir dependencies
    $(curdir)/autoconf/compile := $(curdir)/m4/compile
    @@ -117,9 +120,24 @@ $(curdir)/pkgconf/compile := $(curdir)/meson/compile
    $(curdir)/quilt/compile := $(curdir)/autoconf/compile $(curdir)/findutils/compile
    $(curdir)/sdcc/compile := $(curdir)/bison/compile
    $(curdir)/squashfs/compile := $(curdir)/lzma-old/compile
    -$(curdir)/squashfskit4/compile := $(curdir)/xz/compile $(curdir)/zlib/compile
    $(curdir)/zstd/compile := $(curdir)/meson/compile

    +ifeq ($(CONFIG_TOOLS_SQUASHFS_GZIP),y)
    + $(curdir)/squashfskit4/compile += $(curdir)/zlib/compile
    +endif
    +ifeq ($(CONFIG_TOOLS_SQUASHFS_LZ4),y)
    + $(curdir)/squashfskit4/compile += $(curdir)/lz4/compile
    +endif
    +ifeq ($(CONFIG_TOOLS_SQUASHFS_LZO),y)
    + $(curdir)/squashfskit4/compile += $(curdir)/liblzo/compile
    +endif
    +ifeq ($(CONFIG_TOOLS_SQUASHFS_XZ),y)
    + $(curdir)/squashfskit4/compile += $(curdir)/xz/compile
    +endif
    +ifeq ($(CONFIG_TOOLS_SQUASHFS_ZSTD),y)
    + $(curdir)/squashfskit4/compile += $(curdir)/zstd/compile
    +endif
    +
    ifneq ($(HOST_OS),Linux)
    $(curdir)/squashfskit4/compile += $(curdir)/coreutils/compile
    tools-y += coreutils
    diff --git a/tools/squashfskit4/Makefile b/tools/squashfskit4/Makefile
    index 1800306d33..3f25050f99 100644
    --- a/tools/squashfskit4/Makefile
    +++ b/tools/squashfskit4/Makefile
    @@ -12,30 +12,90 @@ PKG_RELEASE:=3
    PKG_SOURCE:=squashfskit-v$(PKG_VERSION).tar.xz
    PKG_SOURCE_URL:=https://github.com/squashfskit/squashfskit/releases/download/v$(PKG_VERSION)/
    PKG_HASH:=5761aaa3aedc4f7112b708367d891c9abdc1ffea972e3fe47923ddba23984d95
    +PKG_CONFIG_DEPENDS:= CONFIG_TOOLS_SQUASHFS_GZIP \
    + CONFIG_TOOLS_SQUASHFS_LZ4 \
    + CONFIG_TOOLS_SQUASHFS_LZO \
    + CONFIG_TOOLS_SQUASHFS_XATTR \
    + CONFIG_TOOLS_SQUASHFS_XZ \
    + CONFIG_TOOLS_SQUASHFS_ZSTD

    HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/squashfskit-v$(PKG_VERSION)
    +HOST_BUILD_SUBDIR:=$(HOST_BUILD_DIR)/squashfs-tools

    include $(INCLUDE_DIR)/host-build.mk

    +HOST_FEATURE_FILE:=$(HOST_BUILD_PREFIX)/stamp/.$(PKG_NAME)_feature_list
    +FEATURE_LIST:=
    +HOST_MAKE_VARS+=PREFIX="$(HOST_BUILD_PREFIX)"
    +HOST_MAKE_FLAGS+=-C $(HOST_BUILD_SUBDIR)
    +ifeq ($(CONFIG_TOOLS_SQUASHFS_XATTR),y)
    + HOST_MAKE_FLAGS += XATTR_SUPPORT=1 XATTR_DEFAULT=1
    + FEATURE_LIST += XATTR
    +endif
    +ifeq ($(CONFIG_TOOLS_SQUASHFS_GZIP)$(CONFIG_TOOLS_SQUASHFS_LZ4)$(CONFIG_TOOLS_SQUASHFS_LZO)$(CONFIG_TOOLS_SQUASHFS_ZSTD)$(CONFIG_TOOLS_SQUASHFS_XZ),)
    + CONFIG_TOOLS_SQUASHFS_GZIP := y
    +endif
    +ifeq ($(CONFIG_TOOLS_SQUASHFS_GZIP),y)
    + HOST_MAKE_FLAGS += GZIP_SUPPORT=1
    + FEATURE_LIST += gzip
    +endif
    +ifeq ($(CONFIG_TOOLS_SQUASHFS_LZ4),y)
    + HOST_MAKE_FLAGS += LZ4_SUPPORT=1
    + FEATURE_LIST += lz4
    +endif
    +ifeq ($(CONFIG_TOOLS_SQUASHFS_LZO),y)
    + HOST_MAKE_FLAGS += LZO_SUPPORT=1
    + FEATURE_LIST += lzo
    +endif
    +ifeq ($(CONFIG_TOOLS_SQUASHFS_ZSTD),y)
    + HOST_MAKE_FLAGS += ZSTD_SUPPORT=1
    + FEATURE_LIST += zstd
    +endif
    +ifeq ($(CONFIG_TOOLS_SQUASHFS_XZ),y)
    + HOST_MAKE_FLAGS += XZ_SUPPORT=1
    + FEATURE_LIST += xz
    +endif
    +HOST_MAKE_FLAGS += COMP_DEFAULT=$(strip \
    + $(if $(CONFIG_TOOLS_SQUASHFS_XZ),xz,\
    + $(if $(CONFIG_TOOLS_SQUASHFS_ZSTD),zstd,\
    + $(if $(CONFIG_TOOLS_SQUASHFS_LZO),lzo,\
    + $(if $(CONFIG_TOOLS_SQUASHFS_LZ4),lz4,\
    + $(if $(CONFIG_TOOLS_SQUASHFS_GZIP),gzip,\
    +))))))
    +
    +FEATURE_LIST:=$(strip $(sort $(FEATURE_LIST)))
    +FEATURE_LIST_PREV:=$(strip $(shell cat $(HOST_FEATURE_FILE)))
    +ifeq ($(FEATURE_LIST_PREV),)
    + $(info tools/$(PKG_NAME): Building with features: $(FEATURE_LIST))
    +else
    + $(info tools/$(PKG_NAME): Previous build features: $(FEATURE_LIST_PREV))
    + ifneq ($(FEATURE_LIST),$(FEATURE_LIST_PREV))
    + $(info tools/$(PKG_NAME): Rebuild with features: $(FEATURE_LIST))
    + $(shell find "$(HOST_BUILD_SUBDIR)/" -name *.o -delete)
    + else
    + $(info tools/$(PKG_NAME): Rebuild not forced.)
    + endif
    +endif
    +
    +define Host/Configure
    +endef
    +
    define Host/Compile
    - +$(HOST_MAKE_VARS) \
    - $(MAKE) -C $(HOST_BUILD_DIR)/squashfs-tools \
    - XZ_SUPPORT=1 \
    - LZMA_XZ_SUPPORT=1 \
    - XATTR_SUPPORT=1 \
    - LZMA_LIB="$(STAGING_DIR_HOST)/lib/liblzma.a" \
    - EXTRA_CFLAGS="-I$(STAGING_DIR_HOST)/include" \
    - mksquashfs unsquashfs
    + $(call Host/Compile/Default,mksquashfs)
    + $(call Host/Compile/Default,unsquashfs)
    endef

    define Host/Install
    - $(INSTALL_BIN) $(HOST_BUILD_DIR)/squashfs-tools/mksquashfs $(STAGING_DIR_HOST)/bin/mksquashfs4
    - $(INSTALL_BIN) $(HOST_BUILD_DIR)/squashfs-tools/unsquashfs $(STAGING_DIR_HOST)/bin/unsquashfs4
    + $(call Host/Compile/Default,install)
    + $(shell echo -n $(FEATURE_LIST) > $(HOST_FEATURE_FILE))
    +endef
    +
    +define Host/Uninstall
    + $(call Host/Compile/Default,uninstall)
    + $(call Host/Compile/Default,clean)
    endef

    define Host/Clean
    - rm -f $(STAGING_DIR_HOST)/bin/mksquashfs4
    - rm -f $(STAGING_DIR_HOST)/bin/unsquashfs4
    endef

    $(eval $(call HostBuild))
    diff --git a/tools/squashfskit4/patches/0001-fix-version.sh.patch b/tools/squashfskit4/patches/0001-fix-version.sh.patch
    deleted file mode 100644
    index 5f0894bc17..0000000000
    --- a/tools/squashfskit4/patches/0001-fix-version.sh.patch
    +++ /dev/null
    @@ -1,21 +0,0 @@
    ---- a/squashfs-tools/version.sh
    -+++ b/squashfs-tools/version.sh
    -@@ -27,13 +27,11 @@ if [ -z "$OUTPUT" ] ; then
    - fi
    -
    - our_date() {
    --case $(uname) in
    --NetBSD|OpenBSD|DragonFly|FreeBSD|Darwin)
    -- date -r "$1" "$2"
    -- ;;
    --*)
    -- date -d "@$1" "$2"
    --esac
    -+ if date --version 2>&1 | grep -q "GNU coreutils"; then
    -+ date -d "@$1" "$2"
    -+ else
    -+ date -r "$1" "$2"
    -+ fi
    - }
    -
    - try_version() {