Message ID | 96937b728d9ddd55df3cfdb6e3816cff3f6fd392.1589396871.git.mschiffer@universe-factory.net |
---|---|
State | Superseded |
Headers | show |
Series | Switch to zstd for kernel debuginfo compression | expand |
> On May 13, 2020, at 12:21 PM, Matthias Schiffer <mschiffer@universe-factory.net> wrote: > > Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net> > --- > tools/zstd/Makefile | 20 ++++++ > ...re-portable-header-prefix-usage-1987.patch | 61 +++++++++++++++++++ > 2 files changed, 81 insertions(+) > create mode 100644 tools/zstd/Makefile > create mode 100644 tools/zstd/patches/0001-build-issue-More-portable-header-prefix-usage-1987.patch > > diff --git a/tools/zstd/Makefile b/tools/zstd/Makefile > new file mode 100644 > index 000000000000..dc0bf8ffaff8 > --- /dev/null > +++ b/tools/zstd/Makefile > @@ -0,0 +1,20 @@ > +include $(TOPDIR)/rules.mk > + > +PKG_NAME:=zstd > +PKG_VERSION:=1.4.4 > + > +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz > +PKG_SOURCE_URL:=@GITHUB/facebook/zstd/releases/download/v$(PKG_VERSION) > +PKG_HASH:=a364f5162c7d1a455cc915e8e3cf5f4bd8b75d09bc0f53965b0c9ca1383c52c8 > + > +PKG_LICENSE:=BSD-3-Clause > +PKG_LICENSE_FILES:=LICENSE > +PKG_CPE_ID:=cpe:/a:facebook:zstandard > + > +HOST_BUILD_PARALLEL:=1 > + > +include $(INCLUDE_DIR)/host-build.mk CMake is also available with zests under the contrib section. Both are supported. > + > +HOST_MAKE_FLAGS = PREFIX=$(HOST_BUILD_PREFIX) > + > +$(eval $(call HostBuild)) > diff --git a/tools/zstd/patches/0001-build-issue-More-portable-header-prefix-usage-1987.patch b/tools/zstd/patches/0001-build-issue-More-portable-header-prefix-usage-1987.patch > new file mode 100644 > index 000000000000..6d743aa38552 > --- /dev/null > +++ b/tools/zstd/patches/0001-build-issue-More-portable-header-prefix-usage-1987.patch > @@ -0,0 +1,61 @@ > +From 06a57cf57e3c4e887cadcf688e3081154f3f6db4 Mon Sep 17 00:00:00 2001 > +Message-Id: <06a57cf57e3c4e887cadcf688e3081154f3f6db4.1589392463.git.mschiffer@universe-factory.net> > +From: Bimba Shrestha <bimbashrestha@fb.com> > +Date: Thu, 6 Feb 2020 14:10:51 -0800 > +Subject: [PATCH] [build-issue] More portable header prefix usage (#) (#1987) > + > +* make 4.3 build issue fix > + > +* Changing header name and adding comment > +--- > + programs/Makefile | 11 +++++++---- > + 1 file changed, 7 insertions(+), 4 deletions(-) > + > +diff --git a/programs/Makefile b/programs/Makefile > +index b75314a83f43..a9ee3cb5311b 100644 > +--- a/programs/Makefile > ++++ b/programs/Makefile > +@@ -94,9 +94,12 @@ endif > + > + VOID = /dev/null > + > ++# Make 4.3 doesn't support '\#' anymore (https://lwn.net/Articles/810071/) > ++NUM_SYMBOL := \# > ++ > + # thread detection > + NO_THREAD_MSG := ==> no threads, building without multithreading support > +-HAVE_PTHREAD := $(shell printf '\#include <pthread.h>\nint main(void) { return 0; }' > have_pthread.c && $(CC) $(FLAGS) -o have_pthread$(EXT) have_pthread.c -pthread 2> $(VOID) && rm have_pthread$(EXT) && echo 1 || echo 0; rm have_pthread.c) > ++HAVE_PTHREAD := $(shell printf '$(NUM_SYMBOL)include <pthread.h>\nint main(void) { return 0; }' > have_pthread.c && $(CC) $(FLAGS) -o have_pthread$(EXT) have_pthread.c -pthread 2> $(VOID) && rm have_pthread$(EXT) && echo 1 || echo 0; rm have_pthread.c) > + HAVE_THREAD := $(shell [ "$(HAVE_PTHREAD)" -eq "1" -o -n "$(filter Windows%,$(OS))" ] && echo 1 || echo 0) > + ifeq ($(HAVE_THREAD), 1) > + THREAD_MSG := ==> building with threading support > +@@ -108,7 +111,7 @@ endif > + > + # zlib detection > + NO_ZLIB_MSG := ==> no zlib, building zstd without .gz support > +-HAVE_ZLIB := $(shell printf '\#include <zlib.h>\nint main(void) { return 0; }' > have_zlib.c && $(CC) $(FLAGS) -o have_zlib$(EXT) have_zlib.c -lz 2> $(VOID) && rm have_zlib$(EXT) && echo 1 || echo 0; rm have_zlib.c) > ++HAVE_ZLIB := $(shell printf '$(NUM_SYMBOL)include <zlib.h>\nint main(void) { return 0; }' > have_zlib.c && $(CC) $(FLAGS) -o have_zlib$(EXT) have_zlib.c -lz 2> $(VOID) && rm have_zlib$(EXT) && echo 1 || echo 0; rm have_zlib.c) > + ifeq ($(HAVE_ZLIB), 1) > + ZLIB_MSG := ==> building zstd with .gz compression support > + ZLIBCPP = -DZSTD_GZCOMPRESS -DZSTD_GZDECOMPRESS > +@@ -119,7 +122,7 @@ endif > + > + # lzma detection > + NO_LZMA_MSG := ==> no liblzma, building zstd without .xz/.lzma support > +-HAVE_LZMA := $(shell printf '\#include <lzma.h>\nint main(void) { return 0; }' > have_lzma.c && $(CC) $(FLAGS) -o have_lzma$(EXT) have_lzma.c -llzma 2> $(VOID) && rm have_lzma$(EXT) && echo 1 || echo 0; rm have_lzma.c) > ++HAVE_LZMA := $(shell printf '$(NUM_SYMBOL)include <lzma.h>\nint main(void) { return 0; }' > have_lzma.c && $(CC) $(FLAGS) -o have_lzma$(EXT) have_lzma.c -llzma 2> $(VOID) && rm have_lzma$(EXT) && echo 1 || echo 0; rm have_lzma.c) > + ifeq ($(HAVE_LZMA), 1) > + LZMA_MSG := ==> building zstd with .xz/.lzma compression support > + LZMACPP = -DZSTD_LZMACOMPRESS -DZSTD_LZMADECOMPRESS > +@@ -130,7 +133,7 @@ endif > + > + # lz4 detection > + NO_LZ4_MSG := ==> no liblz4, building zstd without .lz4 support > +-HAVE_LZ4 := $(shell printf '\#include <lz4frame.h>\n\#include <lz4.h>\nint main(void) { return 0; }' > have_lz4.c && $(CC) $(FLAGS) -o have_lz4$(EXT) have_lz4.c -llz4 2> $(VOID) && rm have_lz4$(EXT) && echo 1 || echo 0; rm have_lz4.c) > ++HAVE_LZ4 := $(shell printf '$(NUM_SYMBOL)include <lz4frame.h>\n\#include <lz4.h>\nint main(void) { return 0; }' > have_lz4.c && $(CC) $(FLAGS) -o have_lz4$(EXT) have_lz4.c -llz4 2> $(VOID) && rm have_lz4$(EXT) && echo 1 || echo 0; rm have_lz4.c) > + ifeq ($(HAVE_LZ4), 1) > + LZ4_MSG := ==> building zstd with .lz4 compression support > + LZ4CPP = -DZSTD_LZ4COMPRESS -DZSTD_LZ4DECOMPRESS > +-- > +2.26.2 > + > -- > 2.26.2 > > > _______________________________________________ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/mailman/listinfo/openwrt-devel
diff --git a/tools/zstd/Makefile b/tools/zstd/Makefile new file mode 100644 index 000000000000..dc0bf8ffaff8 --- /dev/null +++ b/tools/zstd/Makefile @@ -0,0 +1,20 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=zstd +PKG_VERSION:=1.4.4 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=@GITHUB/facebook/zstd/releases/download/v$(PKG_VERSION) +PKG_HASH:=a364f5162c7d1a455cc915e8e3cf5f4bd8b75d09bc0f53965b0c9ca1383c52c8 + +PKG_LICENSE:=BSD-3-Clause +PKG_LICENSE_FILES:=LICENSE +PKG_CPE_ID:=cpe:/a:facebook:zstandard + +HOST_BUILD_PARALLEL:=1 + +include $(INCLUDE_DIR)/host-build.mk + +HOST_MAKE_FLAGS = PREFIX=$(HOST_BUILD_PREFIX) + +$(eval $(call HostBuild)) diff --git a/tools/zstd/patches/0001-build-issue-More-portable-header-prefix-usage-1987.patch b/tools/zstd/patches/0001-build-issue-More-portable-header-prefix-usage-1987.patch new file mode 100644 index 000000000000..6d743aa38552 --- /dev/null +++ b/tools/zstd/patches/0001-build-issue-More-portable-header-prefix-usage-1987.patch @@ -0,0 +1,61 @@ +From 06a57cf57e3c4e887cadcf688e3081154f3f6db4 Mon Sep 17 00:00:00 2001 +Message-Id: <06a57cf57e3c4e887cadcf688e3081154f3f6db4.1589392463.git.mschiffer@universe-factory.net> +From: Bimba Shrestha <bimbashrestha@fb.com> +Date: Thu, 6 Feb 2020 14:10:51 -0800 +Subject: [PATCH] [build-issue] More portable header prefix usage (#) (#1987) + +* make 4.3 build issue fix + +* Changing header name and adding comment +--- + programs/Makefile | 11 +++++++---- + 1 file changed, 7 insertions(+), 4 deletions(-) + +diff --git a/programs/Makefile b/programs/Makefile +index b75314a83f43..a9ee3cb5311b 100644 +--- a/programs/Makefile ++++ b/programs/Makefile +@@ -94,9 +94,12 @@ endif + + VOID = /dev/null + ++# Make 4.3 doesn't support '\#' anymore (https://lwn.net/Articles/810071/) ++NUM_SYMBOL := \# ++ + # thread detection + NO_THREAD_MSG := ==> no threads, building without multithreading support +-HAVE_PTHREAD := $(shell printf '\#include <pthread.h>\nint main(void) { return 0; }' > have_pthread.c && $(CC) $(FLAGS) -o have_pthread$(EXT) have_pthread.c -pthread 2> $(VOID) && rm have_pthread$(EXT) && echo 1 || echo 0; rm have_pthread.c) ++HAVE_PTHREAD := $(shell printf '$(NUM_SYMBOL)include <pthread.h>\nint main(void) { return 0; }' > have_pthread.c && $(CC) $(FLAGS) -o have_pthread$(EXT) have_pthread.c -pthread 2> $(VOID) && rm have_pthread$(EXT) && echo 1 || echo 0; rm have_pthread.c) + HAVE_THREAD := $(shell [ "$(HAVE_PTHREAD)" -eq "1" -o -n "$(filter Windows%,$(OS))" ] && echo 1 || echo 0) + ifeq ($(HAVE_THREAD), 1) + THREAD_MSG := ==> building with threading support +@@ -108,7 +111,7 @@ endif + + # zlib detection + NO_ZLIB_MSG := ==> no zlib, building zstd without .gz support +-HAVE_ZLIB := $(shell printf '\#include <zlib.h>\nint main(void) { return 0; }' > have_zlib.c && $(CC) $(FLAGS) -o have_zlib$(EXT) have_zlib.c -lz 2> $(VOID) && rm have_zlib$(EXT) && echo 1 || echo 0; rm have_zlib.c) ++HAVE_ZLIB := $(shell printf '$(NUM_SYMBOL)include <zlib.h>\nint main(void) { return 0; }' > have_zlib.c && $(CC) $(FLAGS) -o have_zlib$(EXT) have_zlib.c -lz 2> $(VOID) && rm have_zlib$(EXT) && echo 1 || echo 0; rm have_zlib.c) + ifeq ($(HAVE_ZLIB), 1) + ZLIB_MSG := ==> building zstd with .gz compression support + ZLIBCPP = -DZSTD_GZCOMPRESS -DZSTD_GZDECOMPRESS +@@ -119,7 +122,7 @@ endif + + # lzma detection + NO_LZMA_MSG := ==> no liblzma, building zstd without .xz/.lzma support +-HAVE_LZMA := $(shell printf '\#include <lzma.h>\nint main(void) { return 0; }' > have_lzma.c && $(CC) $(FLAGS) -o have_lzma$(EXT) have_lzma.c -llzma 2> $(VOID) && rm have_lzma$(EXT) && echo 1 || echo 0; rm have_lzma.c) ++HAVE_LZMA := $(shell printf '$(NUM_SYMBOL)include <lzma.h>\nint main(void) { return 0; }' > have_lzma.c && $(CC) $(FLAGS) -o have_lzma$(EXT) have_lzma.c -llzma 2> $(VOID) && rm have_lzma$(EXT) && echo 1 || echo 0; rm have_lzma.c) + ifeq ($(HAVE_LZMA), 1) + LZMA_MSG := ==> building zstd with .xz/.lzma compression support + LZMACPP = -DZSTD_LZMACOMPRESS -DZSTD_LZMADECOMPRESS +@@ -130,7 +133,7 @@ endif + + # lz4 detection + NO_LZ4_MSG := ==> no liblz4, building zstd without .lz4 support +-HAVE_LZ4 := $(shell printf '\#include <lz4frame.h>\n\#include <lz4.h>\nint main(void) { return 0; }' > have_lz4.c && $(CC) $(FLAGS) -o have_lz4$(EXT) have_lz4.c -llz4 2> $(VOID) && rm have_lz4$(EXT) && echo 1 || echo 0; rm have_lz4.c) ++HAVE_LZ4 := $(shell printf '$(NUM_SYMBOL)include <lz4frame.h>\n\#include <lz4.h>\nint main(void) { return 0; }' > have_lz4.c && $(CC) $(FLAGS) -o have_lz4$(EXT) have_lz4.c -llz4 2> $(VOID) && rm have_lz4$(EXT) && echo 1 || echo 0; rm have_lz4.c) + ifeq ($(HAVE_LZ4), 1) + LZ4_MSG := ==> building zstd with .lz4 compression support + LZ4CPP = -DZSTD_LZ4COMPRESS -DZSTD_LZ4DECOMPRESS +-- +2.26.2 +
Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net> --- tools/zstd/Makefile | 20 ++++++ ...re-portable-header-prefix-usage-1987.patch | 61 +++++++++++++++++++ 2 files changed, 81 insertions(+) create mode 100644 tools/zstd/Makefile create mode 100644 tools/zstd/patches/0001-build-issue-More-portable-header-prefix-usage-1987.patch