From 64d6c064d80ebe58e8e5d47b6f19498836a81a7a Mon Sep 17 00:00:00 2001 From: maxice8 Date: Mon, 21 Jan 2019 03:37:46 -0200 Subject: [PATCH] scdoc: update to 1.6.1. --- srcpkgs/scdoc/patches/musl.patch | 90 -------------------------------- srcpkgs/scdoc/template | 12 ++--- 2 files changed, 5 insertions(+), 97 deletions(-) delete mode 100644 srcpkgs/scdoc/patches/musl.patch diff --git a/srcpkgs/scdoc/patches/musl.patch b/srcpkgs/scdoc/patches/musl.patch deleted file mode 100644 index 88f4430fa4d..00000000000 --- a/srcpkgs/scdoc/patches/musl.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 599a615cb84799e1a50764ebecb27b459f629a3f Mon Sep 17 00:00:00 2001 -From: Silvan Jegen -Date: Wed, 2 Jan 2019 01:01:49 +0100 -Subject: [PATCH] Don't use a GNU-extension for $SOURCE_DATE_EPOCH parsing - -Code gratefully copied from the link below. - -https://reproducible-builds.org/docs/source-date-epoch/#c ---- - src/main.c | 44 +++++++++++++++++++++++++++++++++----------- - 1 file changed, 33 insertions(+), 11 deletions(-) - -diff --git a/src/main.c b/src/main.c -index 645d521..eab674e 100644 ---- src/main.c -+++ src/main.c -@@ -1,6 +1,8 @@ - #define _XOPEN_SOURCE 600 - #include - #include -+#include -+#include - #include - #include - #include -@@ -11,6 +13,7 @@ - #include "util.h" - - char *strstr(const char *haystack, const char *needle); -+char *strerror(int errnum); - - static int parse_section(struct parser *p) { - str_t *section = str_create(); -@@ -67,23 +70,42 @@ static void parse_preamble(struct parser *p) { - str_t *extras[2] = { NULL }; - int section = -1; - uint32_t ch; -+ time_t date_time; - char date[256]; - char *source_date_epoch = getenv("SOURCE_DATE_EPOCH"); - if (source_date_epoch != NULL) { -- struct tm source_date_epoch_tm; -- char *ret = strptime(source_date_epoch, "%s", &source_date_epoch_tm); -- if (ret == NULL || *ret != '\0') { -- fprintf(stderr, -- "Error: $SOURCE_DATE_EPOCH is set but malformed.\n"); -- exit(1); -+ unsigned long long epoch; -+ char *endptr; -+ errno = 0; -+ epoch = strtoull(source_date_epoch, &endptr, 10); -+ if ((errno == ERANGE && (epoch == ULLONG_MAX || epoch == 0)) -+ || (errno != 0 && epoch == 0)) { -+ fprintf(stderr, "$SOURCE_DATE_EPOCH: strtoull: %s\n", -+ strerror(errno)); -+ exit(EXIT_FAILURE); - } -- strftime(date, sizeof(date), "%F", &source_date_epoch_tm); -+ if (endptr == source_date_epoch) { -+ fprintf(stderr, "$SOURCE_DATE_EPOCH: No digits were found: %s\n", -+ endptr); -+ exit(EXIT_FAILURE); -+ } -+ if (*endptr != '\0') { -+ fprintf(stderr, "$SOURCE_DATE_EPOCH: Trailing garbage: %s\n", -+ endptr); -+ exit(EXIT_FAILURE); -+ } -+ if (epoch > ULONG_MAX) { -+ fprintf(stderr, "$SOURCE_DATE_EPOCH: value must be smaller than or " -+ "equal to %lu but was found to be: %llu \n", -+ ULONG_MAX, epoch); -+ exit(EXIT_FAILURE); -+ } -+ date_time = epoch; - } else { -- time_t now; -- time(&now); -- struct tm *now_tm = localtime(&now); -- strftime(date, sizeof(date), "%F", now_tm); -+ date_time = time(NULL); - } -+ struct tm *date_tm = localtime(&date_time); -+ strftime(date, sizeof(date), "%F", date_tm); - while ((ch = parser_getch(p)) != UTF8_INVALID) { - if ((ch < 0x80 && isalnum(ch)) || ch == '_' || ch == '-' || ch == '.') { - int ret = str_append_ch(name, ch); --- -2.18.1 - diff --git a/srcpkgs/scdoc/template b/srcpkgs/scdoc/template index f03b3886558..d1fe79c9cf9 100644 --- a/srcpkgs/scdoc/template +++ b/srcpkgs/scdoc/template @@ -1,14 +1,14 @@ # Template file for 'scdoc' pkgname=scdoc -version=1.6.0 -revision=2 +version=1.6.1 +revision=1 build_style=gnu-makefile short_desc="Tool for generating roff manual pages" maintainer="Julio Galvan " license="MIT" homepage="https://git.sr.ht/~sircmpwn/scdoc" distfiles="https://git.sr.ht/~sircmpwn/scdoc/archive/${version}.tar.gz" -checksum=a396bc070c8734d7cafe3a3481c8cffacd83b3effdeb28de43e2cdac889643b1 +checksum=b8ed537b9dcec1f2f546cc194dfe2263eea9adf49b37a8b71cebb7d5e91d979b if [ "$CROSS_BUILD" ]; then hostmakedepends+=" scdoc" @@ -16,11 +16,9 @@ fi pre_build() { if [ "$CROSS_BUILD" ]; then - sed -i "s|^HOST_SCDOC=.*|HOST_SCDOC=/usr/bin/scdoc|g" Makefile + vsed -e "s|^HOST_SCDOC=.*|HOST_SCDOC=/usr/bin/scdoc|g" -i Makefile fi - sed -i "s/\" VERSION \"/ ${version}/g" src/main.c - # 1.6.0 use glibc extensions to parse that - unset SOURCE_DATE_EPOCH + sed -e "s/\" VERSION \"/ ${version}/g" -i src/main.c } post_install() {