lede/tools/mtd-utils/patches/320-mkfs.jffs2-SOURCE_DATE_EPOCH.patch
lovehackintosh 297447302a
tools: update versions and sync with upstream (#10380)
* expat: update to 2.5.0

Fixes CVE-2022-43680.

Changes:
https://github.com/libexpat/libexpat/blob/R_2_5_0/expat/Changes

Signed-off-by: Nick Hainke <vincent@systemli.org>

* tools/ccache: update to 4.7

Release Notes:
https://ccache.dev/releasenotes.html#_ccache_4_7

Signed-off-by: Raihaan Shouhell <raihaanhimself@gmail.com>

* tools/ccache: update to 4.7.1

Release Notes:
https://ccache.dev/releasenotes.html#_ccache_4_7_1

Signed-off-by: Raihaan Shouhell <raihaanhimself@gmail.com>

* tools/ccache: update to 4.7.2

Release Notes:
https://ccache.dev/releasenotes.html#_ccache_4_7_2

Signed-off-by: Raihaan Shouhell <raihaanhimself@gmail.com>

* tools/mtools: update to 4.0.42

Release Notes:
https://lists.gnu.org/archive/html/info-mtools/2022-10/msg00000.html

Signed-off-by: Nick Hainke <vincent@systemli.org>

* tools/mtd-utils: update to 2.1.5

Release Notes:
https://lore.kernel.org/buildroot/c0992bbb-9487-9a51-ea9f-39cf074b61ec@sigma-star.at/

Refresh patches:
- 130-lzma_jffs2.patch
- 320-mkfs.jffs2-SOURCE_DATE_EPOCH.patch

Signed-off-by: Nick Hainke <vincent@systemli.org>

* tools/elfutils: update to 1.88

Release Notes:
https://sourceware.org/pipermail/elfutils-devel/2022q4/005561.html

Signed-off-by: Nick Hainke <vincent@systemli.org>

* tools/fakeroot: update to 1.30.1

Release Notes:
https://tracker.debian.org/news/1381350/accepted-fakeroot-1301-1-source-into-unstable/

Refresh patches:
- 600-macOS.patch

Signed-off-by: Nick Hainke <vincent@systemli.org>

* cmake: update to 3.24.3

Release Notes:
https://cmake.org/cmake/help/latest/release/3.24.html

Signed-off-by: Nick Hainke <vincent@systemli.org>

* tools/ninja: update to 1.11.1

Release Notes:
https://github.com/ninja-build/ninja/releases/tag/v1.11.1

Refresh patches:
- 100-make_jobserver_support.patch

Signed-off-by: Nick Hainke <vincent@systemli.org>

* tools: add option BUILD_ALL_HOST_TOOLS to compile all host tools

Add option to compile all host tools even if not needed.
This can be useful to prepare a universal precompiled host tools
archive to use in another buildroot and speedup compilation.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>

Signed-off-by: Nick Hainke <vincent@systemli.org>
Signed-off-by: Raihaan Shouhell <raihaanhimself@gmail.com>
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Co-authored-by: Nick Hainke <vincent@systemli.org>
Co-authored-by: Raihaan Shouhell <raihaanhimself@gmail.com>
Co-authored-by: Christian Marangi <ansuelsmth@gmail.com>
2022-11-07 09:54:08 +08:00

61 lines
1.5 KiB
Diff

--- a/jffsX-utils/mkfs.jffs2.c
+++ b/jffsX-utils/mkfs.jffs2.c
@@ -109,7 +109,7 @@ static char *rootdir = default_rootdir;
static int verbose = 0;
static int squash_uids = 0;
static int squash_perms = 0;
-static int fake_times = 0;
+static time_t fixed_timestamp = -1;
int target_endian = __BYTE_ORDER;
static uint32_t find_hardlink(struct filesystem_entry *e)
@@ -251,8 +251,8 @@ static struct filesystem_entry *add_host
mode &= ~(S_ISUID | S_ISGID);
}
}
- if (fake_times) {
- timestamp = 0;
+ if (fixed_timestamp != -1) {
+ timestamp = fixed_timestamp;
}
entry = xcalloc(1, sizeof(struct filesystem_entry));
@@ -1559,6 +1559,20 @@ static void parse_image(void){
close(in_fd);
}
+static void set_source_date_epoch() {
+ char *env = getenv("SOURCE_DATE_EPOCH");
+ char *endptr = env;
+ errno = 0;
+ if (env && *env) {
+ fixed_timestamp = strtoull(env, &endptr, 10);
+ if (errno || (endptr && *endptr != '\0')) {
+ fprintf(stderr, "Invalid SOURCE_DATE_EPOCH");
+ exit(1);
+ }
+ }
+}
+
+
int main(int argc, char **argv)
{
int c, opt;
@@ -1577,6 +1591,7 @@ int main(int argc, char **argv)
warn_page_size = 1; /* warn user if page size not 4096 */
jffs2_compressors_init();
+ set_source_date_epoch();
while ((opt = getopt_long(argc, argv,
"D:d:r:s:o:qUPfh?vVe:lbp::nc:m:x:X:Lty:i:", long_options, &c)) >= 0)
@@ -1627,7 +1642,7 @@ int main(int argc, char **argv)
break;
case 'f':
- fake_times = 1;
+ fixed_timestamp = 0;
break;
case 'h':