pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/devel/jq jq: Avoid SIGSEGVs when using date builtins
details: https://anonhg.NetBSD.org/pkgsrc/rev/54f9311bd112
branches: trunk
changeset: 311853:54f9311bd112
user: leot <leot%pkgsrc.org@localhost>
date: Sun Aug 19 18:08:05 2018 +0000
description:
jq: Avoid SIGSEGVs when using date builtins
Apply patch written by <soda> and shared with upstream as part of
<https://github.com/stedolan/jq/pull/1458> in order to fix crashes of jq when
using date builtin functions.
Also add a SUBST class intended to avoid invoking git as part of pre-configure
phase when invoking autoreconf.
While here take the MAINTAINERship and reformat a bit the Makefile
(NFCI).
Thanks a lot to <soda>, Takehiko NOZAKI and <nonaka> for investigating
the issue, writing the patches, sharing them with upstream and as
part of PR pkg/52460!
Bump PKGREVISION
diffstat:
devel/jq/Makefile | 26 ++++++++++++++++----------
devel/jq/distinfo | 7 ++++++-
devel/jq/patches/patch-builtin.c | 22 ++++++++++++++++++++++
devel/jq/patches/patch-compile.c | 22 ++++++++++++++++++++++
devel/jq/patches/patch-configure.ac | 23 +++++++++++++++++++++++
devel/jq/patches/patch-inject__errors.c | 21 +++++++++++++++++++++
devel/jq/patches/patch-util.c | 24 ++++++++++++++++++++++++
7 files changed, 134 insertions(+), 11 deletions(-)
diffs (197 lines):
diff -r 05653987199f -r 54f9311bd112 devel/jq/Makefile
--- a/devel/jq/Makefile Sun Aug 19 18:04:30 2018 +0000
+++ b/devel/jq/Makefile Sun Aug 19 18:08:05 2018 +0000
@@ -1,26 +1,32 @@
-# $NetBSD: Makefile,v 1.15 2018/05/30 16:03:48 ginsbach Exp $
+# $NetBSD: Makefile,v 1.16 2018/08/19 18:08:05 leot Exp $
DISTNAME= jq-1.5
-PKGREVISION= 4
+PKGREVISION= 5
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_GITHUB:=stedolan/}
+GITHUB_TAG= ${DISTNAME}
-MAINTAINER= pkgsrc-users%NetBSD.org@localhost
+MAINTAINER= leot%NetBSD.org@localhost
HOMEPAGE= https://github.com/stedolan/jq/
COMMENT= Command-line JSON processor
LICENSE= mit
-GITHUB_TAG= ${DISTNAME}
-
USE_LANGUAGES= c99
USE_LIBTOOL= yes
-USE_TOOLS+= bison flex gmake
+USE_TOOLS+= autoreconf autoconf automake bison flex gmake
GNU_CONFIGURE= yes
+SUBST_CLASSES+= tag
+SUBST_STAGE.tag= pre-configure
+SUBST_MESSAGE.tag= Avoid to run `git describe' to fetch the tag
+SUBST_FILES.tag= configure.ac scripts/version
+SUBST_SED.tag+= -e 's/git describe .*|/echo "jq-1.5-1-g940132e-dirty" |/'
+
+TEST_TARGET= check
+
+pre-configure:
+ cd ${WRKSRC} && autoreconf -fi
+
.include "options.mk"
-CFLAGS.SunOS+= -D_XPG6 -D__EXTENSIONS__
-
-TEST_TARGET= check
-
.include "../../mk/bsd.pkg.mk"
diff -r 05653987199f -r 54f9311bd112 devel/jq/distinfo
--- a/devel/jq/distinfo Sun Aug 19 18:04:30 2018 +0000
+++ b/devel/jq/distinfo Sun Aug 19 18:08:05 2018 +0000
@@ -1,9 +1,14 @@
-$NetBSD: distinfo,v 1.9 2018/05/30 16:03:48 ginsbach Exp $
+$NetBSD: distinfo,v 1.10 2018/08/19 18:08:05 leot Exp $
SHA1 (jq-1.5.tar.gz) = 664638b560d9e734178e8cafb21d98817af5b5f3
RMD160 (jq-1.5.tar.gz) = 33ac77ac93e0539f6d66d29cd717013cdab8cf61
SHA512 (jq-1.5.tar.gz) = 3f9049321e8430b04dbccf81d7f2ab691b89383e91526eaf585bbeeb67698dea73a36b3aa179f6a95ef97cd73a8a9b6dc53cb1a5b0398b6422c11289b705de7b
Size (jq-1.5.tar.gz) = 1118086 bytes
SHA1 (patch-Makefile.in) = 446be0fa3517fb6fc1e2f5761d1f8fb28339c79c
+SHA1 (patch-builtin.c) = ab8572304d39680b19337aec525beaa88e6506da
+SHA1 (patch-compile.c) = a9d2f8eadaddcd6bd3e467740f6826073b40720e
+SHA1 (patch-configure.ac) = 5ac2b2c744f554a716189239446a5c5a13c58bea
+SHA1 (patch-inject__errors.c) = 863086a96be3b81011a141bdf293d3ef5693ef10
SHA1 (patch-src_jv__parse.c) = efca86e70daf27291a01bf538487b745b7bd600c
SHA1 (patch-src_jv__print.c) = 4d53dc1a1f0bb1cc827dd1adb62ecef2b7393970
+SHA1 (patch-util.c) = c6b9062312206267b0e83bc7284646f64e133f58
diff -r 05653987199f -r 54f9311bd112 devel/jq/patches/patch-builtin.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/jq/patches/patch-builtin.c Sun Aug 19 18:08:05 2018 +0000
@@ -0,0 +1,22 @@
+$NetBSD: patch-builtin.c,v 1.1 2018/08/19 18:08:05 leot Exp $
+
+Defining _GNU_SOURCE, _BSD_SOURCE etc. in C sources is problematic,
+because the result of the configure command may be inconsistent with it.
+to be consistent, such macros have to be defined in the early stage of
+the configure command, and the AC_USE_SYSTEM_EXTENSIONS macro does the job.
+
+Part of pull request 1458, commit id `df9a0963f8fa6fca773b059dce22c598152f3edb':
+
+ <https://github.com/stedolan/jq/pull/1458>
+
+Also shared via PR pkg/52460.
+
+--- builtin.c.orig 2015-08-18 04:25:04.000000000 +0000
++++ builtin.c
+@@ -1,6 +1,3 @@
+-#define _BSD_SOURCE
+-#define _GNU_SOURCE
+-#define _XOPEN_SOURCE
+ #include <sys/time.h>
+ #include <stdlib.h>
+ #include <stddef.h>
diff -r 05653987199f -r 54f9311bd112 devel/jq/patches/patch-compile.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/jq/patches/patch-compile.c Sun Aug 19 18:08:05 2018 +0000
@@ -0,0 +1,22 @@
+$NetBSD: patch-compile.c,v 1.1 2018/08/19 18:08:05 leot Exp $
+
+Defining _GNU_SOURCE, _BSD_SOURCE etc. in C sources is problematic,
+because the result of the configure command may be inconsistent with it.
+to be consistent, such macros have to be defined in the early stage of
+the configure command, and the AC_USE_SYSTEM_EXTENSIONS macro does the job.
+
+Part of pull request 1458, commit id `df9a0963f8fa6fca773b059dce22c598152f3edb':
+
+ <https://github.com/stedolan/jq/pull/1458>
+
+Also shared via PR pkg/52460.
+
+--- compile.c.orig 2015-08-18 04:25:04.000000000 +0000
++++ compile.c
+@@ -1,6 +1,3 @@
+-#ifndef _GNU_SOURCE
+-#define _GNU_SOURCE // for strdup
+-#endif
+ #include <assert.h>
+ #include <math.h>
+ #include <string.h>
diff -r 05653987199f -r 54f9311bd112 devel/jq/patches/patch-configure.ac
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/jq/patches/patch-configure.ac Sun Aug 19 18:08:05 2018 +0000
@@ -0,0 +1,23 @@
+$NetBSD: patch-configure.ac,v 1.3 2018/08/19 18:08:05 leot Exp $
+
+Defining _GNU_SOURCE, _BSD_SOURCE etc. in C sources is problematic,
+because the result of the configure command may be inconsistent with it.
+to be consistent, such macros have to be defined in the early stage of
+the configure command, and the AC_USE_SYSTEM_EXTENSIONS macro does the job.
+
+Part of pull request 1458, commit id `df9a0963f8fa6fca773b059dce22c598152f3edb':
+
+ <https://github.com/stedolan/jq/pull/1458>
+
+Also shared via PR pkg/52460.
+
+--- configure.ac.orig 2015-08-18 04:25:04.000000000 +0000
++++ configure.ac
+@@ -11,6 +11,7 @@ AC_PREREQ([2.64])
+ AC_CONFIG_AUX_DIR([config])
+ AM_INIT_AUTOMAKE([1.11.2 parallel-tests foreign -Wall])
+ AM_SILENT_RULES([yes])
++AC_USE_SYSTEM_EXTENSIONS
+ AM_PROG_AR
+ AM_MAINTAINER_MODE([enable])
+ AC_PROG_CC
diff -r 05653987199f -r 54f9311bd112 devel/jq/patches/patch-inject__errors.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/jq/patches/patch-inject__errors.c Sun Aug 19 18:08:05 2018 +0000
@@ -0,0 +1,21 @@
+$NetBSD: patch-inject__errors.c,v 1.1 2018/08/19 18:08:05 leot Exp $
+
+Defining _GNU_SOURCE, _BSD_SOURCE etc. in C sources is problematic,
+because the result of the configure command may be inconsistent with it.
+to be consistent, such macros have to be defined in the early stage of
+the configure command, and the AC_USE_SYSTEM_EXTENSIONS macro does the job.
+
+Part of pull request 1458, commit id `df9a0963f8fa6fca773b059dce22c598152f3edb':
+
+ <https://github.com/stedolan/jq/pull/1458>
+
+Also shared via PR pkg/52460.
+
+--- inject_errors.c.orig 2015-08-18 04:25:04.000000000 +0000
++++ inject_errors.c
+@@ -1,5 +1,3 @@
+-
+-#define _GNU_SOURCE /* for RTLD_NEXT */
+ #include <assert.h>
+ #include <dlfcn.h>
+ #include <errno.h>
diff -r 05653987199f -r 54f9311bd112 devel/jq/patches/patch-util.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/jq/patches/patch-util.c Sun Aug 19 18:08:05 2018 +0000
@@ -0,0 +1,24 @@
+$NetBSD: patch-util.c,v 1.1 2018/08/19 18:08:05 leot Exp $
+
+Defining _GNU_SOURCE, _BSD_SOURCE etc. in C sources is problematic,
+because the result of the configure command may be inconsistent with it.
+to be consistent, such macros have to be defined in the early stage of
+the configure command, and the AC_USE_SYSTEM_EXTENSIONS macro does the job.
+
+Part of pull request 1458, commit id `df9a0963f8fa6fca773b059dce22c598152f3edb':
+
+ <https://github.com/stedolan/jq/pull/1458>
+
+Also shared via PR pkg/52460.
+
+--- util.c.orig 2015-08-18 04:25:04.000000000 +0000
++++ util.c
+@@ -1,8 +1,3 @@
+-
+-#ifdef HAVE_MEMMEM
+-#define _GNU_SOURCE
+-#endif
+-
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <assert.h>
Home |
Main Index |
Thread Index |
Old Index