summaryrefslogtreecommitdiffstats
path: root/meta/recipes-extended/zstd
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-extended/zstd')
-rw-r--r--meta/recipes-extended/zstd/zstd/0001-Makefile-sort-all-wildcard-file-list-expansions.patch80
-rw-r--r--meta/recipes-extended/zstd/zstd/0001-pzstd-use-directly-for-the-test-c-snippet.patch39
-rw-r--r--meta/recipes-extended/zstd/zstd_1.5.5.bb (renamed from meta/recipes-extended/zstd/zstd_1.4.8.bb)24
3 files changed, 56 insertions, 87 deletions
diff --git a/meta/recipes-extended/zstd/zstd/0001-Makefile-sort-all-wildcard-file-list-expansions.patch b/meta/recipes-extended/zstd/zstd/0001-Makefile-sort-all-wildcard-file-list-expansions.patch
deleted file mode 100644
index 178124a2ef..0000000000
--- a/meta/recipes-extended/zstd/zstd/0001-Makefile-sort-all-wildcard-file-list-expansions.patch
+++ /dev/null
@@ -1,80 +0,0 @@
1From 8d01b0753162681dcdbb7cf56f1e393c261e3eb0 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Wed, 23 Dec 2020 19:14:32 +0100
4Subject: [PATCH] Makefile: sort all wildcard file list expansions
5
6Otherwise the order is non-deterministic and breaks
7reproducible builds.
8
9Upstream-Status: Pending
10Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
11---
12 programs/Makefile | 10 +++++-----
13 tests/Makefile | 4 ++--
14 tests/fuzz/Makefile | 2 +-
15 3 files changed, 8 insertions(+), 8 deletions(-)
16
17diff --git a/programs/Makefile b/programs/Makefile
18index 8641d0ee..26fee45f 100644
19--- a/programs/Makefile
20+++ b/programs/Makefile
21@@ -72,11 +72,11 @@ ZSTDLEGACY_DIR := $(ZSTDDIR)/legacy
22
23 vpath %.c $(ZSTDLIB_COMMON) $(ZSTDLIB_COMPRESS) $(ZSTDLIB_DECOMPRESS) $(ZDICT_DIR) $(ZSTDLEGACY_DIR)
24
25-ZSTDLIB_COMMON_C := $(wildcard $(ZSTDLIB_COMMON)/*.c)
26-ZSTDLIB_COMPRESS_C := $(wildcard $(ZSTDLIB_COMPRESS)/*.c)
27-ZSTDLIB_DECOMPRESS_C := $(wildcard $(ZSTDLIB_DECOMPRESS)/*.c)
28+ZSTDLIB_COMMON_C := $(sort $(wildcard $(ZSTDLIB_COMMON)/*.c))
29+ZSTDLIB_COMPRESS_C := $(sort $(wildcard $(ZSTDLIB_COMPRESS)/*.c))
30+ZSTDLIB_DECOMPRESS_C := $(sort $(wildcard $(ZSTDLIB_DECOMPRESS)/*.c))
31 ZSTDLIB_CORE_SRC := $(ZSTDLIB_DECOMPRESS_C) $(ZSTDLIB_COMMON_C) $(ZSTDLIB_COMPRESS_C)
32-ZDICT_SRC := $(wildcard $(ZDICT_DIR)/*.c)
33+ZDICT_SRC := $(sort $(wildcard $(ZDICT_DIR)/*.c))
34
35 ZSTD_LEGACY_SUPPORT ?= 5
36 ZSTDLEGACY_SRC :=
37@@ -91,7 +91,7 @@ ZSTDLIB_FULL_SRC = $(sort $(ZSTDLIB_CORE_SRC) $(ZSTDLEGACY_SRC) $(ZDICT_SRC))
38 ZSTDLIB_LOCAL_SRC := $(notdir $(ZSTDLIB_FULL_SRC))
39 ZSTDLIB_LOCAL_OBJ := $(ZSTDLIB_LOCAL_SRC:.c=.o)
40
41-ZSTD_CLI_SRC := $(wildcard *.c)
42+ZSTD_CLI_SRC := $(sort $(wildcard *.c))
43 ZSTD_CLI_OBJ := $(ZSTD_CLI_SRC:.c=.o)
44
45 ZSTD_ALL_SRC := $(ZSTDLIB_LOCAL_SRC) $(ZSTD_CLI_SRC)
46diff --git a/tests/Makefile b/tests/Makefile
47index 42bc353c..5f5654f0 100644
48--- a/tests/Makefile
49+++ b/tests/Makefile
50@@ -49,7 +49,7 @@ ZSTD_FILES := $(ZSTDDECOMP_FILES) $(ZSTDCOMMON_FILES) $(ZSTDCOMP_FILES)
51 ZBUFF_FILES := $(ZSTDDIR)/deprecated/*.c
52 ZDICT_FILES := $(ZSTDDIR)/dictBuilder/*.c
53
54-ZSTD_F1 := $(wildcard $(ZSTD_FILES))
55+ZSTD_F1 := $(sort $(wildcard $(ZSTD_FILES)))
56 ZSTD_OBJ1 := $(subst $(ZSTDDIR)/common/,zstdm_,$(ZSTD_F1))
57 ZSTD_OBJ2 := $(subst $(ZSTDDIR)/compress/,zstdc_,$(ZSTD_OBJ1))
58 ZSTD_OBJ3 := $(subst $(ZSTDDIR)/decompress/,zstdd_,$(ZSTD_OBJ2))
59@@ -212,7 +212,7 @@ bigdict: $(ZSTDMT_OBJECTS) $(PRGDIR)/datagen.c bigdict.c
60 invalidDictionaries : $(ZSTD_OBJECTS) invalidDictionaries.c
61
62 legacy : CPPFLAGS += -I$(ZSTDDIR)/legacy -DZSTD_LEGACY_SUPPORT=4
63-legacy : $(ZSTD_FILES) $(wildcard $(ZSTDDIR)/legacy/*.c) legacy.c
64+legacy : $(ZSTD_FILES) $(sort $(wildcard $(ZSTDDIR)/legacy/*.c)) legacy.c
65
66 decodecorpus : LDLIBS += -lm
67 decodecorpus : $(filter-out zstdc_zstd_compress.o, $(ZSTD_OBJECTS)) $(ZDICT_FILES) $(PRGDIR)/util.c $(PRGDIR)/timefn.c decodecorpus.c
68diff --git a/tests/fuzz/Makefile b/tests/fuzz/Makefile
69index 36232a8c..574fe877 100644
70--- a/tests/fuzz/Makefile
71+++ b/tests/fuzz/Makefile
72@@ -58,7 +58,7 @@ FUZZ_SRC := \
73 $(ZSTDCOMP_SRC) \
74 $(ZSTDDICT_SRC) \
75 $(ZSTDLEGACY_SRC)
76-FUZZ_SRC := $(wildcard $(FUZZ_SRC))
77+FUZZ_SRC := $(sort $(wildcard $(FUZZ_SRC)))
78
79 FUZZ_D_OBJ1 := $(subst $(ZSTDDIR)/common/,d_lib_common_,$(FUZZ_SRC))
80 FUZZ_D_OBJ2 := $(subst $(ZSTDDIR)/compress/,d_lib_compress_,$(FUZZ_D_OBJ1))
diff --git a/meta/recipes-extended/zstd/zstd/0001-pzstd-use-directly-for-the-test-c-snippet.patch b/meta/recipes-extended/zstd/zstd/0001-pzstd-use-directly-for-the-test-c-snippet.patch
new file mode 100644
index 0000000000..847a641691
--- /dev/null
+++ b/meta/recipes-extended/zstd/zstd/0001-pzstd-use-directly-for-the-test-c-snippet.patch
@@ -0,0 +1,39 @@
1From 121ef5253a49065dea6a89536ca7bd3dabd40e25 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex@linutronix.de>
3Date: Mon, 19 Jun 2023 17:10:09 +0200
4Subject: [PATCH] pzstd: use c++14 without conditions
5
6Doing this check with a direct c++ snippet is prone to portability problems:
7
8- \043 is not portable between shells: dash expands it to #,
9bash does not;
10
11- using # directly works with make 4.3 but does not with make 4.2.
12
13Let's just use the c++ version that covers both the code and the gtest.
14
15Upstream-Status: Submitted [https://github.com/facebook/zstd/pull/3682]
16Signed-off-by: Alexander Kanavin <alex@linutronix.de>
17
18---
19 contrib/pzstd/Makefile | 7 ++-----
20 1 file changed, 2 insertions(+), 5 deletions(-)
21
22diff --git a/contrib/pzstd/Makefile b/contrib/pzstd/Makefile
23index e62f8e87..58fb82a1 100644
24--- a/contrib/pzstd/Makefile
25+++ b/contrib/pzstd/Makefile
26@@ -37,11 +37,8 @@ CFLAGS += -Wno-deprecated-declarations
27 PZSTD_INC = -I$(ZSTDDIR) -I$(ZSTDDIR)/common -I$(PROGDIR) -I.
28 GTEST_INC = -isystem googletest/googletest/include
29
30-# If default C++ version is older than C++11, explicitly set C++11, which is the
31-# minimum required by the code.
32-ifeq ($(shell echo "\043if __cplusplus < 201103L\n\043error\n\043endif" | $(CXX) -x c++ -Werror -c - -o /dev/null 2>/dev/null && echo 1 || echo 0),0)
33-PZSTD_CXX_STD := -std=c++11
34-endif
35+# Set the minimum required by gtest
36+PZSTD_CXX_STD := -std=c++14
37
38 PZSTD_CPPFLAGS = $(PZSTD_INC)
39 PZSTD_CCXXFLAGS =
diff --git a/meta/recipes-extended/zstd/zstd_1.4.8.bb b/meta/recipes-extended/zstd/zstd_1.5.5.bb
index 10a6334cb7..2d72af50a4 100644
--- a/meta/recipes-extended/zstd/zstd_1.4.8.bb
+++ b/meta/recipes-extended/zstd/zstd_1.5.5.bb
@@ -5,17 +5,19 @@ It's backed by a very fast entropy stage, provided by Huff0 and FSE library."
5HOMEPAGE = "http://www.zstd.net/" 5HOMEPAGE = "http://www.zstd.net/"
6SECTION = "console/utils" 6SECTION = "console/utils"
7 7
8LICENSE = "BSD-3-Clause & GPLv2" 8LICENSE = "BSD-3-Clause | GPL-2.0-only"
9LIC_FILES_CHKSUM = "file://LICENSE;md5=c7f0b161edbe52f5f345a3d1311d0b32 \ 9LIC_FILES_CHKSUM = "file://LICENSE;md5=0822a32f7acdbe013606746641746ee8 \
10 file://COPYING;md5=39bba7d2cf0ba1036f2a6e2be52fe3f0" 10 file://COPYING;md5=39bba7d2cf0ba1036f2a6e2be52fe3f0 \
11 "
11 12
12SRC_URI = "git://github.com/facebook/zstd.git;branch=release \ 13SRC_URI = "git://github.com/facebook/zstd.git;branch=release;protocol=https \
13 file://0001-Makefile-sort-all-wildcard-file-list-expansions.patch \ 14 file://0001-pzstd-use-directly-for-the-test-c-snippet.patch"
14 "
15 15
16SRCREV = "97a3da1df009d4dc67251de0c4b1c9d7fe286fc1" 16SRCREV = "63779c798237346c2b245c546c40b72a5a5913fe"
17UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)" 17UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
18 18
19CVE_PRODUCT = "zstandard"
20
19S = "${WORKDIR}/git" 21S = "${WORKDIR}/git"
20 22
21PACKAGECONFIG ??= "" 23PACKAGECONFIG ??= ""
@@ -26,12 +28,20 @@ PACKAGECONFIG[zlib] = "HAVE_ZLIB=1,HAVE_ZLIB=0,zlib"
26# See programs/README.md for how to use this 28# See programs/README.md for how to use this
27ZSTD_LEGACY_SUPPORT ??= "4" 29ZSTD_LEGACY_SUPPORT ??= "4"
28 30
31EXTRA_OEMAKE += "V=1"
32
29do_compile () { 33do_compile () {
30 oe_runmake ${PACKAGECONFIG_CONFARGS} ZSTD_LEGACY_SUPPORT=${ZSTD_LEGACY_SUPPORT} 34 oe_runmake ${PACKAGECONFIG_CONFARGS} ZSTD_LEGACY_SUPPORT=${ZSTD_LEGACY_SUPPORT}
35 oe_runmake ${PACKAGECONFIG_CONFARGS} ZSTD_LEGACY_SUPPORT=${ZSTD_LEGACY_SUPPORT} -C contrib/pzstd
31} 36}
32 37
33do_install () { 38do_install () {
34 oe_runmake install 'DESTDIR=${D}' 39 oe_runmake install 'DESTDIR=${D}'
40 oe_runmake install 'DESTDIR=${D}' PREFIX=${prefix} -C contrib/pzstd
35} 41}
36 42
43PACKAGE_BEFORE_PN = "libzstd"
44
45FILES:libzstd = "${libdir}/libzstd${SOLIBS}"
46
37BBCLASSEXTEND = "native nativesdk" 47BBCLASSEXTEND = "native nativesdk"