Hello community,
here is the log from the commit of package the_silver_searcher for
openSUSE:Factory checked in at 2020-06-11 14:52:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/the_silver_searcher (Old)
and /work/SRC/openSUSE:Factory/.the_silver_searcher.new.3606 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "the_silver_searcher"
Thu Jun 11 14:52:24 2020 rev:14 rq:813414 version:2.2.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/the_silver_searcher/the_silver_searcher.changes
2018-08-15 10:35:42.819998450 +0200
+++
/work/SRC/openSUSE:Factory/.the_silver_searcher.new.3606/the_silver_searcher.changes
2020-06-11 14:52:57.374959360 +0200
@@ -1,0 +2,6 @@
+Wed Jun 10 12:00:30 UTC 2020 - Frederic Crozat <[email protected]>
+
+- Add the_silver_searcher-2.2.0-portabilityfixes.patch to fix
+ build with latest gcc/glibc (gh#ggreer/the_silver_searcher#1377).
+
+-------------------------------------------------------------------
New:
----
the_silver_searcher-2.2.0-portabilityfixes.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ the_silver_searcher.spec ++++++
--- /var/tmp/diff_new_pack.OtVEKi/_old 2020-06-11 14:52:58.934964117 +0200
+++ /var/tmp/diff_new_pack.OtVEKi/_new 2020-06-11 14:52:58.934964117 +0200
@@ -1,7 +1,7 @@
#
# spec file for package the_silver_searcher
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -12,7 +12,7 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
@@ -27,6 +27,8 @@
Source2: http://geoff.greer.fm/ag/releases/%{name}-%{version}.tar.gz.asc
Source3: %{name}.keyring
Source4: %{name}.changes
+# PATCH-FIX-UPSTREAM the_silver_searcher-2.2.0-portabilityfixes.patch
gh#ggreer/the_silver_searcher#1377 -- Fix multiple global symbols definitions
+Patch0: the_silver_searcher-2.2.0-portabilityfixes.patch
BuildRequires: pkgconfig >= 0.9.0
Requires: bash-completion
%if 0%{?suse_version} > 1110
@@ -44,6 +46,7 @@
%prep
%setup -q
+%patch0 -p1
%build
%configure
++++++ the_silver_searcher-2.2.0-portabilityfixes.patch ++++++
Index: the_silver_searcher-2.2.0/src/ignore.c
===================================================================
--- the_silver_searcher-2.2.0.orig/src/ignore.c 2017-12-31 03:07:51.000000000
+0100
+++ the_silver_searcher-2.2.0/src/ignore.c 2020-06-10 14:07:36.570899021
+0200
@@ -20,6 +20,8 @@
const int fnmatch_flags = FNM_PATHNAME;
#endif
+ignores *root_ignores;
+
/* TODO: build a huge-ass list of files we want to ignore by default (build
cache stuff, pyc files, etc) */
const char *evil_hardcoded_ignore_files[] = {
Index: the_silver_searcher-2.2.0/src/ignore.h
===================================================================
--- the_silver_searcher-2.2.0.orig/src/ignore.h 2017-06-04 09:58:06.000000000
+0200
+++ the_silver_searcher-2.2.0/src/ignore.h 2020-06-10 14:07:36.570899021
+0200
@@ -29,7 +29,7 @@
};
typedef struct ignores ignores;
-ignores *root_ignores;
+extern ignores *root_ignores;
extern const char *evil_hardcoded_ignore_files[];
extern const char *ignore_pattern_files[];
Index: the_silver_searcher-2.2.0/src/log.c
===================================================================
--- the_silver_searcher-2.2.0.orig/src/log.c 2017-01-11 08:41:55.000000000
+0100
+++ the_silver_searcher-2.2.0/src/log.c 2020-06-10 14:07:36.570899021 +0200
@@ -4,6 +4,7 @@
#include "log.h"
#include "util.h"
+pthread_mutex_t print_mtx = PTHREAD_MUTEX_INITIALIZER;
static enum log_level log_threshold = LOG_LEVEL_ERR;
void set_log_level(enum log_level threshold) {
Index: the_silver_searcher-2.2.0/src/log.h
===================================================================
--- the_silver_searcher-2.2.0.orig/src/log.h 2017-01-11 08:41:55.000000000
+0100
+++ the_silver_searcher-2.2.0/src/log.h 2020-06-10 14:07:36.570899021 +0200
@@ -9,7 +9,7 @@
#include <pthread.h>
#endif
-pthread_mutex_t print_mtx;
+extern pthread_mutex_t print_mtx;
enum log_level {
LOG_LEVEL_DEBUG = 10,
Index: the_silver_searcher-2.2.0/src/options.c
===================================================================
--- the_silver_searcher-2.2.0.orig/src/options.c 2018-08-07
08:36:00.000000000 +0200
+++ the_silver_searcher-2.2.0/src/options.c 2020-06-10 14:07:36.570899021
+0200
@@ -20,6 +20,8 @@
const char *color_match = "\033[30;43m"; /* black with yellow background
*/
const char *color_path = "\033[1;32m"; /* bold green */
+cli_options opts;
+
/* TODO: try to obey out_fd? */
void usage(void) {
printf("\n");
Index: the_silver_searcher-2.2.0/src/options.h
===================================================================
--- the_silver_searcher-2.2.0.orig/src/options.h 2017-06-07
05:28:28.000000000 +0200
+++ the_silver_searcher-2.2.0/src/options.h 2020-06-10 14:07:36.570899021
+0200
@@ -91,7 +91,7 @@
} cli_options;
/* global options. parse_options gives it sane values, everything else reads
from it */
-cli_options opts;
+extern cli_options opts;
typedef struct option option_t;
Index: the_silver_searcher-2.2.0/src/search.c
===================================================================
--- the_silver_searcher-2.2.0.orig/src/search.c 2020-06-10 14:07:36.570899021
+0200
+++ the_silver_searcher-2.2.0/src/search.c 2020-06-10 14:11:58.558905714
+0200
@@ -2,6 +2,19 @@
#include "print.h"
#include "scandir.h"
+size_t alpha_skip_lookup[256];
+size_t *find_skip_lookup;
+uint8_t h_table[H_SIZE] __attribute__((aligned(64)));
+
+work_queue_t *work_queue = NULL;
+work_queue_t *work_queue_tail = NULL;
+int done_adding_files = 0;
+pthread_cond_t files_ready = PTHREAD_COND_INITIALIZER;
+pthread_mutex_t stats_mtx = PTHREAD_MUTEX_INITIALIZER;
+pthread_mutex_t work_queue_mtx = PTHREAD_MUTEX_INITIALIZER;
+
+symdir_t *symhash = NULL;
+
void search_buf(const char *buf, const size_t buf_len,
const char *dir_full_path) {
int binary = -1; /* 1 = yes, 0 = no, -1 = don't know */
Index: the_silver_searcher-2.2.0/src/search.h
===================================================================
--- the_silver_searcher-2.2.0.orig/src/search.h 2018-01-30 07:02:41.000000000
+0100
+++ the_silver_searcher-2.2.0/src/search.h 2020-06-10 14:07:36.570899021
+0200
@@ -31,9 +31,9 @@
#include "uthash.h"
#include "util.h"
-size_t alpha_skip_lookup[256];
-size_t *find_skip_lookup;
-uint8_t h_table[H_SIZE] __attribute__((aligned(64)));
+extern size_t alpha_skip_lookup[256];
+extern size_t *find_skip_lookup;
+extern uint8_t h_table[H_SIZE] __attribute__((aligned(64)));
struct work_queue_t {
char *path;
@@ -41,12 +41,12 @@
};
typedef struct work_queue_t work_queue_t;
-work_queue_t *work_queue;
-work_queue_t *work_queue_tail;
-int done_adding_files;
-pthread_cond_t files_ready;
-pthread_mutex_t stats_mtx;
-pthread_mutex_t work_queue_mtx;
+extern work_queue_t *work_queue;
+extern work_queue_t *work_queue_tail;
+extern int done_adding_files;
+extern pthread_cond_t files_ready;
+extern pthread_mutex_t stats_mtx;
+extern pthread_mutex_t work_queue_mtx;
/* For symlink loop detection */
@@ -64,7 +64,7 @@
UT_hash_handle hh;
} symdir_t;
-symdir_t *symhash;
+extern symdir_t *symhash;
void search_buf(const char *buf, const size_t buf_len,
const char *dir_full_path);
Index: the_silver_searcher-2.2.0/src/util.c
===================================================================
--- the_silver_searcher-2.2.0.orig/src/util.c 2018-08-07 08:16:09.000000000
+0200
+++ the_silver_searcher-2.2.0/src/util.c 2020-06-10 14:07:36.570899021
+0200
@@ -21,6 +21,8 @@
} \
return ptr;
+FILE *out_fd = NULL;
+ag_stats stats;
void *ag_malloc(size_t size) {
void *ptr = malloc(size);
CHECK_AND_RETURN(ptr)
Index: the_silver_searcher-2.2.0/src/util.h
===================================================================
--- the_silver_searcher-2.2.0.orig/src/util.h 2018-08-07 08:15:45.000000000
+0200
+++ the_silver_searcher-2.2.0/src/util.h 2020-06-10 14:07:36.570899021
+0200
@@ -12,7 +12,7 @@
#include "log.h"
#include "options.h"
-FILE *out_fd;
+extern FILE *out_fd;
#ifndef TRUE
#define TRUE 1
@@ -51,7 +51,7 @@
} ag_stats;
-ag_stats stats;
+extern ag_stats stats;
/* Union to translate between chars and words without violating strict
aliasing */
typedef union {