From 92fac2695f15d6466228da7fc84b900ea477f566 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Tue, 2 Nov 2021 11:41:08 -0400 Subject: [PATCH] import cscope-15.9-12.el9 --- .cscope.metadata | 1 + .gitignore | 1 + ...tch-81-Fix-reading-include-files-in-.patch | 45 +++ ...cscope-2-Cull-extraneous-declaration.patch | 26 ++ ...rectories-found-during-header-search.patch | 32 ++ ...ee-via-double-fclose-in-changestring.patch | 38 ++ ...ontrib-ocs-Fix-bashims-Closes-480591.patch | 77 ++++ .../cscope-6-doc-cscope.1-Fix-hyphens.patch | 130 +++++++ ...anner-swallow-function-as-parameters.patch | 43 +++ ...up-GNU-Emacs-27.1-removes-function-p.patch | 81 +++++ SPECS/cscope.spec | 328 ++++++++++++++++++ 11 files changed, 802 insertions(+) create mode 100644 .cscope.metadata create mode 100644 .gitignore create mode 100644 SOURCES/cscope-1-modified-from-patch-81-Fix-reading-include-files-in-.patch create mode 100644 SOURCES/cscope-2-Cull-extraneous-declaration.patch create mode 100644 SOURCES/cscope-3-Avoid-putting-directories-found-during-header-search.patch create mode 100644 SOURCES/cscope-4-Avoid-double-free-via-double-fclose-in-changestring.patch create mode 100644 SOURCES/cscope-5-contrib-ocs-Fix-bashims-Closes-480591.patch create mode 100644 SOURCES/cscope-6-doc-cscope.1-Fix-hyphens.patch create mode 100644 SOURCES/cscope-7-fscanner-swallow-function-as-parameters.patch create mode 100644 SOURCES/cscope-8-emacs-plugin-fixup-GNU-Emacs-27.1-removes-function-p.patch create mode 100644 SPECS/cscope.spec diff --git a/.cscope.metadata b/.cscope.metadata new file mode 100644 index 0000000..91cffc5 --- /dev/null +++ b/.cscope.metadata @@ -0,0 +1 @@ +e89c6a3458164552d9301ccc213181f463e5210e SOURCES/cscope-15.9.tar.gz diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ae6c5fa --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/cscope-15.9.tar.gz diff --git a/SOURCES/cscope-1-modified-from-patch-81-Fix-reading-include-files-in-.patch b/SOURCES/cscope-1-modified-from-patch-81-Fix-reading-include-files-in-.patch new file mode 100644 index 0000000..8acf8fa --- /dev/null +++ b/SOURCES/cscope-1-modified-from-patch-81-Fix-reading-include-files-in-.patch @@ -0,0 +1,45 @@ +From 39fb385d69dc06343e8f8a7e28d516d5aef97ec8 Mon Sep 17 00:00:00 2001 +From: Hans-Bernhard Broeker +Date: Sat, 28 Jul 2018 17:50:03 +0200 +Subject: [PATCH 1/9] [modified from patch #81] Fix reading include files in -c + mode + +Signed-off-by: Vladis Dronov +--- + src/build.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/build.c b/src/build.c +index a32b5cb..557e660 100644 +--- a/src/build.c ++++ b/src/build.c +@@ -124,7 +124,7 @@ samelist(FILE *oldrefs, char **names, int count) + } + /* see if the name list is the same */ + for (i = 0; i < count; ++i) { +- if ((1 != fscanf(oldrefs," %[^\n]",oldname)) || ++ if ((1 != fscanf(oldrefs," %" PATHLEN_STR "[^\n]",oldname)) || + strnotequal(oldname, names[i])) { + return(NO); + } +@@ -305,7 +305,7 @@ cscope: -q option mismatch between command line and old symbol database\n"); + /* see if the list of source files is the same and + none have been changed up to the included files */ + for (i = 0; i < nsrcfiles; ++i) { +- if ((1 != fscanf(oldrefs," %[^\n]",oldname)) ++ if ((1 != fscanf(oldrefs, " %" PATHLEN_STR "[^\n]", oldname)) + || strnotequal(oldname, srcfiles[i]) + || (lstat(srcfiles[i], &statstruct) != 0) + || (statstruct.st_mtime > reftime) +@@ -315,7 +315,7 @@ cscope: -q option mismatch between command line and old symbol database\n"); + } + /* the old cross-reference is up-to-date */ + /* so get the list of included files */ +- while (i++ < oldnum && fgets(oldname, sizeof(oldname), oldrefs)) { ++ while (i++ < oldnum && fscanf(oldrefs, "%" PATHLEN_STR "s", oldname)) { + addsrcfile(oldname); + } + fclose(oldrefs); +-- +2.26.2 + diff --git a/SOURCES/cscope-2-Cull-extraneous-declaration.patch b/SOURCES/cscope-2-Cull-extraneous-declaration.patch new file mode 100644 index 0000000..ccbeba2 --- /dev/null +++ b/SOURCES/cscope-2-Cull-extraneous-declaration.patch @@ -0,0 +1,26 @@ +From 6a6998ecd0392ea643c4c4b317af9af8270761aa Mon Sep 17 00:00:00 2001 +From: Hans-Bernhard Broeker +Date: Thu, 9 Aug 2018 16:25:31 +0200 +Subject: [PATCH 3/9] Cull extraneous declaration + +Signed-off-by: Vladis Dronov +--- + src/global.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/global.h b/src/global.h +index dbc8a43..a6f1486 100644 +--- a/src/global.h ++++ b/src/global.h +@@ -224,7 +224,7 @@ extern char dicode2[]; /* digraph second character code */ + + dicode2[(unsigned char)(inchar2)]) + + /* main.c global data */ +-extern char *editor, *home, *shell, *lineflag; /* environment variables */ ++extern char *editor, *shell, *lineflag; /* environment variables */ + extern char *home; /* Home directory */ + extern BOOL lineflagafterfile; + extern char *argv0; /* command name */ +-- +2.26.2 + diff --git a/SOURCES/cscope-3-Avoid-putting-directories-found-during-header-search.patch b/SOURCES/cscope-3-Avoid-putting-directories-found-during-header-search.patch new file mode 100644 index 0000000..500ce15 --- /dev/null +++ b/SOURCES/cscope-3-Avoid-putting-directories-found-during-header-search.patch @@ -0,0 +1,32 @@ +From f693474b85f8dc1d31570833c62d9210ed1ffcf2 Mon Sep 17 00:00:00 2001 +From: mikhail nefedov +Date: Thu, 23 Aug 2018 00:36:52 +0200 +Subject: [PATCH 4/9] Avoid putting directories found during header search into + srcfiles. + +Signed-off-by: Vladis Dronov +--- + src/dir.c | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/src/dir.c b/src/dir.c +index 01c599e..7f7287e 100644 +--- a/src/dir.c ++++ b/src/dir.c +@@ -616,8 +616,11 @@ incfile(char *file, char *type) + snprintf(path, sizeof(path), "%.*s/%s", + (int)(PATHLEN - 2 - file_len), incdirs[i], + file); +- if (access(compath(path), READ) == 0) { +- addsrcfile(path); ++ if (access(compath(path), READ) == 0) { ++ struct stat st; ++ if( 0 == stat(path,&st) && S_ISREG(st.st_mode) ) { ++ addsrcfile(path); ++ } + break; + } + } +-- +2.26.2 + diff --git a/SOURCES/cscope-4-Avoid-double-free-via-double-fclose-in-changestring.patch b/SOURCES/cscope-4-Avoid-double-free-via-double-fclose-in-changestring.patch new file mode 100644 index 0000000..8e862bf --- /dev/null +++ b/SOURCES/cscope-4-Avoid-double-free-via-double-fclose-in-changestring.patch @@ -0,0 +1,38 @@ +From f632c3fd86fce2c495a290dd70f5f09e3e7e7a28 Mon Sep 17 00:00:00 2001 +From: Hans-Bernhard Broeker +Date: Sat, 13 Apr 2019 14:52:35 +0200 +Subject: [PATCH 5/9] Avoid double-free via double fclose in changestring. + +Mark closed FILE* by setting it to NULL, and check for that. + +Signed-off-by: Vladis Dronov +--- + src/command.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/src/command.c b/src/command.c +index 8740b11..dcb5278 100644 +--- a/src/command.c ++++ b/src/command.c +@@ -786,6 +786,7 @@ changestring(void) + } + fprintf(script, "w\nq\n!\n"); /* write and quit */ + fclose(script); ++ script = NULL; + + /* if any line was marked */ + if (anymarked == YES) { +@@ -803,7 +804,9 @@ changestring(void) + } + changing = NO; + mousemenu(); +- fclose(script); ++ if (script != NULL) { ++ fclose(script); ++ } + free(change); + return(anymarked); + } +-- +2.26.2 + diff --git a/SOURCES/cscope-5-contrib-ocs-Fix-bashims-Closes-480591.patch b/SOURCES/cscope-5-contrib-ocs-Fix-bashims-Closes-480591.patch new file mode 100644 index 0000000..1807974 --- /dev/null +++ b/SOURCES/cscope-5-contrib-ocs-Fix-bashims-Closes-480591.patch @@ -0,0 +1,77 @@ +From bb7f25fad3cade493486a6287f5212cdfb6cce24 Mon Sep 17 00:00:00 2001 +From: Jari Aalto +Date: Sat, 8 May 2010 20:15:35 +0300 +Subject: [PATCH 6/9] contrib/ocs: Fix bashims (Closes: #480591) + +Signed-off-by: Jari Aalto +Signed-off-by: Vladis Dronov +--- + contrib/ocs | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/contrib/ocs b/contrib/ocs +index e924f4f..bd556b4 100755 +--- a/contrib/ocs ++++ b/contrib/ocs +@@ -86,7 +86,7 @@ if [ ! -d ${SYSDIR} ]; then + fi + + # Check that cscope is in PATH +-type cscope 1>/dev/null 2>&1 ++which cscope 1>/dev/null 2>&1 + + if [ $? -ne 0 ] + then +@@ -167,8 +167,8 @@ create_list() + + if [ "${FORCE}" != "Y" ] + then +- echo "\n${LIST}" +- echo "Update the library? <(Y)es, (N)o, (Q)uit> [n] \c" ++ printf "\n${LIST}\n" ++ printf "Update the library? <(Y)es, (N)o, (Q)uit> [n] " + read x y + case $x in + [Yy]* ) ;; +@@ -176,9 +176,9 @@ create_list() + *) return ;; + esac + fi +- echo "Updating library:\n ${LIST} \c" ++ printf "Updating library:\n ${LIST} " + else +- echo "Creating library:\n ${LIST} \c" ++ printf "Creating library:\n ${LIST} " + fi + + ( +@@ -196,7 +196,7 @@ create_list() + -print + ) | grep -v SCCS | sort -u > ${LIST} + +- echo "\n`cat ${LIST} | wc -l` files listed" ++ printf "\n`cat ${LIST} | wc -l` files listed\n" + } + + # +@@ -210,7 +210,7 @@ exp_inc() + then + for i in `cat ${theInc}` + do +- echo "-I $i \c" ++ printf "-I $i " + done + fi + } +@@ -285,7 +285,7 @@ std_libs ${SYSDIR}$PWD + + DIR=$PWD + if [ ! -n "${NOUPDATE}" -o -n "${SPECDEST}" ] ; then +-echo "Create new library? <(L)ocal, (H)ome, (S)ystem, (Q)uit> [q] \c" ++ printf "Create new library? <(L)ocal, (H)ome, (S)ystem, (Q)uit> [q] " + + # shellcheck disable=SC2034 + read x y +-- +2.26.2 + diff --git a/SOURCES/cscope-6-doc-cscope.1-Fix-hyphens.patch b/SOURCES/cscope-6-doc-cscope.1-Fix-hyphens.patch new file mode 100644 index 0000000..290534d --- /dev/null +++ b/SOURCES/cscope-6-doc-cscope.1-Fix-hyphens.patch @@ -0,0 +1,130 @@ +From 3f9e3da40a77274705c9cb9103a6046daa950f5d Mon Sep 17 00:00:00 2001 +From: Jari Aalto +Date: Sat, 8 May 2010 20:16:14 +0300 +Subject: [PATCH 7/9] doc/cscope.1: Fix hyphens + +Signed-off-by: Jari Aalto +Signed-off-by: Vladis Dronov +--- + doc/cscope.1 | 33 ++++++++++++++++----------------- + 1 file changed, 16 insertions(+), 17 deletions(-) + +diff --git a/doc/cscope.1 b/doc/cscope.1 +index ca94e8b..0318347 100644 +--- a/doc/cscope.1 ++++ b/doc/cscope.1 +@@ -1,4 +1,3 @@ +-.PU + .TH CSCOPE "1" "January 2007" "The Santa Cruz Operation" + .SH NAME + cscope - interactively examine a C program +@@ -106,7 +105,7 @@ below. (The #include files + may be specified with either double quotes or angle brackets.) + The incdir directory is searched in addition to the current + directory (which is searched first) and the standard list +-(which is searched last). If more than one occurrence of -I ++(which is searched last). If more than one occurrence of \-I + appears, the directories are searched in the order they appear + on the command line. + .TP +@@ -129,7 +128,7 @@ source trees generally do not use it. + .TP + .B -L + Do a single search with line-oriented output when used with the +--num pattern option. ++\-num pattern option. + .TP + .B -l + Line-oriented interface (see ``Line-Oriented Interface'' +@@ -146,7 +145,7 @@ Prepend + .I path + to relative file names in a pre-built cross-reference file so you do + not have to change to the directory where the cross-reference file was +-built. This option is only valid with the -d option. ++built. This option is only valid with the \-d option. + .TP + .BI -p n + Display the last +@@ -195,7 +194,7 @@ Remove the cscope reference file and inverted indexes when exiting + .I files + A list of file names to operate on. + .PP +-The -I, -c, -k, -p, -q, and -T options can also be in the cscope.files file. ++The \-I, \-c, \-k, \-p, \-q, and \-T options can also be in the cscope.files file. + .PP + .SS Requesting the initial search + .PP +@@ -266,7 +265,7 @@ Append the displayed list of lines to a file. + .TP + .B < + Read lines from a file that is in symbol reference format +-(created by > or >>), just like the -F option. ++(created by > or >>), just like the \-F option. + .TP + .B ^ + Filter all lines through a shell command and display the +@@ -371,7 +370,7 @@ commands, respectively. + .PP + .SS Line-Oriented interface + .PP +-The -l option lets you use cscope where a screen-oriented interface ++The \-l option lets you use cscope where a screen-oriented interface + would not be useful, for example, from another screen-oriented + program. + .PP +@@ -380,10 +379,10 @@ with the field number (counting from 0) immediately followed by the + search pattern, for example, ``lmain'' finds the definition of the + main function. + .PP +-If you just want a single search, instead of the -l option use the -L +-and -num pattern options, and you won't get the >> prompt. ++If you just want a single search, instead of the \-l option use the \-L ++and \-num pattern options, and you won't get the >> prompt. + .PP +-For -l, cscope outputs the number of reference lines ++For \-l, cscope outputs the number of reference lines + cscope: 2 lines + .PP + For each reference found, cscope outputs a line consisting of the file +@@ -468,11 +467,11 @@ is not set, cscope searches only in the current directory. + .SH FILES + .TP + .B cscope.files +-Default files containing -I, -p, -q, and -T options and the +-list of source files (overridden by the -i option). ++Default files containing \-I, \-p, \-q, and \-T options and the ++list of source files (overridden by the \-i option). + .TP + .B cscope.out +-Symbol cross-reference file (overridden by the -f option), ++Symbol cross-reference file (overridden by the \-f option), + which is put in the home directory if it cannot be created in + the current directory. + .TP +@@ -482,11 +481,11 @@ the current directory. + .B cscope.po.out + .PD 1 + Default files containing the inverted index used for quick +-symbol searching (-q option). If you use the -f option to ++symbol searching (\-q option). If you use the \-f option to + rename the cross-reference file (so it's not cscope.out), the + names for these inverted index files will be created by adding +- .in and .po to the name you supply with -f. For example, if you +-indicated -f xyz, then these files would be named xyz.in and ++ .in and .po to the name you supply with \-f. For example, if you ++indicated \-f xyz, then these files would be named xyz.in and + xyz.po. + .TP + .B INCDIR +@@ -554,7 +553,7 @@ definition, for example, + .PP + char flag + #ifdef ALLOCATE_STORAGE +- = -1 ++ = \-1 + #endif + ; + .PP +-- +2.26.2 + diff --git a/SOURCES/cscope-7-fscanner-swallow-function-as-parameters.patch b/SOURCES/cscope-7-fscanner-swallow-function-as-parameters.patch new file mode 100644 index 0000000..a089a61 --- /dev/null +++ b/SOURCES/cscope-7-fscanner-swallow-function-as-parameters.patch @@ -0,0 +1,43 @@ +From e1b4cbc93529b07b3217928e8f9b1f43b80f9b06 Mon Sep 17 00:00:00 2001 +From: Jiri Slaby +Date: Fri, 5 Dec 2014 19:15:53 +0100 +Subject: [PATCH 8/9] fscanner: swallow function as parameters +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Some functions take as a parameter a pointer to another function. This +causes troubles in the cscope scanner and such function definition is +dropped on the floor. + +Instead of choking and skipping the definition/declaration, teach the +scanner about this case. So now cscope will not skip those and put +them properly in the index. + +I carry this patch for a couple of months and using cscope daily on +the Linux kernel and see no problems. + +Signed-off-by: Jiri Slaby +Cc: Hans-Bernhard Bröker +Cc: Neil Horman +Signed-off-by: Vladis Dronov +--- + src/fscanner.l | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/fscanner.l b/src/fscanner.l +index 8a93192..43880bf 100644 +--- a/src/fscanner.l ++++ b/src/fscanner.l +@@ -505,7 +505,7 @@ if{wsnl}*\( { /* ignore 'if' */ + } + + { +-{ws}*\(({wsnl}|{identifier}|{number}|[*&[\]=,.:])*\)([()]|{wsnl})*[:a-zA-Z_#{] { ++{ws}*\(({wsnl}|{identifier}|\({ws}*\*{ws}*{identifier}{ws}*\){ws}*\([^()]*\)|{number}|[*&[\]=,.:])*\)([()]|{wsnl})*[:a-zA-Z_#{] { + /* a function definition */ + /* note: "#define a (b) {" and "#if defined(a)\n#" + * are not fcn definitions! */ +-- +2.26.2 + diff --git a/SOURCES/cscope-8-emacs-plugin-fixup-GNU-Emacs-27.1-removes-function-p.patch b/SOURCES/cscope-8-emacs-plugin-fixup-GNU-Emacs-27.1-removes-function-p.patch new file mode 100644 index 0000000..2f32cef --- /dev/null +++ b/SOURCES/cscope-8-emacs-plugin-fixup-GNU-Emacs-27.1-removes-function-p.patch @@ -0,0 +1,81 @@ +From eaea31cb93ecddda69a373f83f632e1a450c3c90 Mon Sep 17 00:00:00 2001 +From: Brock Zheng Techyauld Ltd +Date: Tue, 25 Aug 2020 20:28:11 +0800 +Subject: [PATCH 9/9] emacs plugin fixup: GNU/Emacs 27.1 removes function + process-kill-without-query + +Signed-off-by: Vladis Dronov +--- + contrib/xcscope/xcscope.el | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +diff --git a/contrib/xcscope/xcscope.el b/contrib/xcscope/xcscope.el +index 0e814ea..859dff5 100644 +--- a/contrib/xcscope/xcscope.el ++++ b/contrib/xcscope/xcscope.el +@@ -180,7 +180,7 @@ + ;; variable is used to determine the mapping. One use for this + ;; variable is when you want to share the database file with other + ;; users; in this case, the database may be located in a directory +-;; separate from the source files. ++;; separate from the source files. + ;; + ;; Setting the variable, `cscope-initial-directory', is useful when a + ;; search is to be expanded by specifying a cscope database directory +@@ -366,7 +366,7 @@ + ;; disable automatic database creation, updating, and + ;; maintenance. + ;; +-;; "cscope-display-cscope-buffer" ++;; "cscope-display-cscope-buffer" + ;; If non-nil, display the *cscope* buffer after each search + ;; (default). This variable can be set in order to reduce the + ;; number of keystrokes required to navigate through the matches. +@@ -1233,7 +1233,7 @@ directory should begin.") + :style toggle :selected cscope-use-relative-paths ] + [ "No mouse prompts" (setq cscope-no-mouse-prompts + (not cscope-no-mouse-prompts)) +- :style toggle :selected cscope-no-mouse-prompts ] ++ :style toggle :selected cscope-no-mouse-prompts ] + ) + )) + +@@ -1291,7 +1291,7 @@ The text properties to be added: + ) + + +-(defun cscope-show-entry-internal (file line-number ++(defun cscope-show-entry-internal (file line-number + &optional save-mark-p window arrow-p) + "Display the buffer corresponding to FILE and LINE-NUMBER + in some window. If optional argument WINDOW is given, +@@ -1943,7 +1943,7 @@ using the mouse." + cscope-directory + (file-name-directory cscope-directory)) + )) +- (setq cscope-directory ++ (setq cscope-directory + (file-name-as-directory cscope-directory)) + (if (not (member cscope-directory cscope-searched-dirs)) + (progn +@@ -2006,7 +2006,7 @@ using the mouse." + (set-process-filter cscope-process cscope-filter-func) + (set-process-sentinel cscope-process cscope-sentinel-func) + (set-marker (process-mark cscope-process) (point)) +- (process-kill-without-query cscope-process) ++ (set-process-query-on-exit-flag cscope-process nil) + (if cscope-running-in-xemacs + (setq modeline-process ": Searching ...")) + (setq buffer-read-only t) +@@ -2139,7 +2139,7 @@ SENTINEL-FUNC are optional process filter and sentinel, respectively." + cscope-indexing-script args)) + (set-process-sentinel cscope-unix-index-process + 'cscope-unix-index-files-sentinel) +- (process-kill-without-query cscope-unix-index-process) ++ (set-process-query-on-exit-flag cscope-unix-index-process nil) + ) + )) + +-- +2.26.2 + diff --git a/SPECS/cscope.spec b/SPECS/cscope.spec new file mode 100644 index 0000000..094af70 --- /dev/null +++ b/SPECS/cscope.spec @@ -0,0 +1,328 @@ +Summary: C source code tree search and browse tool +Name: cscope +Version: 15.9 +Release: 12%{?dist} +Source0: https://downloads.sourceforge.net/project/%{name}/%{name}/v%{version}/%{name}-%{version}.tar.gz +URL: http://cscope.sourceforge.net +License: BSD and GPLv2+ +BuildRequires: gcc +BuildRequires: pkgconfig ncurses-devel flex bison m4 +BuildRequires: autoconf automake +BuildRequires: make +Requires: emacs-filesystem coreutils +Requires: ed +%if !0%{?rhel} +Requires: xemacs-filesystem +%endif + +Patch1: cscope-1-modified-from-patch-81-Fix-reading-include-files-in-.patch +Patch2: cscope-2-Cull-extraneous-declaration.patch +Patch3: cscope-3-Avoid-putting-directories-found-during-header-search.patch +Patch4: cscope-4-Avoid-double-free-via-double-fclose-in-changestring.patch +Patch5: cscope-5-contrib-ocs-Fix-bashims-Closes-480591.patch +Patch6: cscope-6-doc-cscope.1-Fix-hyphens.patch +Patch7: cscope-7-fscanner-swallow-function-as-parameters.patch +Patch8: cscope-8-emacs-plugin-fixup-GNU-Emacs-27.1-removes-function-p.patch + +%define cscope_share_path %{_datadir}/cscope +%define xemacs_lisp_path %{_datadir}/xemacs/site-packages/lisp +%define emacs_lisp_path %{_datadir}/emacs/site-lisp +%define vim_plugin_path %{_datadir}/vim/vimfiles/plugin + + +%description +cscope is a mature, ncurses based, C source code tree browsing tool. It +allows users to search large source code bases for variables, functions, +macros, etc, as well as perform general regex and plain text searches. +Results are returned in lists, from which the user can select individual +matches for use in file editing. + +%prep +%setup -q +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 +%patch6 -p1 +%patch7 -p1 +%patch8 -p1 + +autoreconf + +%build +%configure +make + +%install +rm -rf $RPM_BUILD_ROOT %{name}-%{version}.files +make DESTDIR=$RPM_BUILD_ROOT install +mkdir -p $RPM_BUILD_ROOT/var/lib/cs +mkdir -p $RPM_BUILD_ROOT%{cscope_share_path} +cp -a contrib/xcscope/xcscope.el $RPM_BUILD_ROOT%{cscope_share_path} +install -m 755 contrib/xcscope/cscope-indexer $RPM_BUILD_ROOT%{_bindir} +cp -a contrib/cctree.vim $RPM_BUILD_ROOT%{cscope_share_path} +for dir in %{xemacs_lisp_path} %{emacs_lisp_path} ; do + mkdir -p $RPM_BUILD_ROOT$dir + ln -s %{cscope_share_path}/xcscope.el $RPM_BUILD_ROOT$dir + touch $RPM_BUILD_ROOT$dir/xcscope.elc + echo "%ghost $dir/xcscope.el*" >> %{name}-%{version}.files +done + + + +%files -f %{name}-%{version}.files +%{_bindir}/* +%dir %{cscope_share_path} +%{cscope_share_path}/ +%{_mandir}/man1/* +%dir /var/lib/cs +%doc AUTHORS COPYING ChangeLog README TODO contrib/cctree.txt + +%if !0%{?rhel} +%triggerin -- xemacs +ln -sf %{cscope_share_path}/xcscope.el %{xemacs_lisp_path}/xcscope.el +%endif + +%triggerin -- emacs, emacs-nox, emacs-lucid +ln -sf %{cscope_share_path}/xcscope.el %{emacs_lisp_path}/xcscope.el + +%triggerin -- vim-filesystem +ln -sf %{cscope_share_path}/cctree.vim %{vim_plugin_path}/cctree.vim + +%if !0%{?rhel} +%triggerun -- xemacs +[ $2 -gt 0 ] && exit 0 +rm -f %{xemacs_lisp_path}/xcscope.el +%endif + +%triggerun -- emacs, emacs-nox, emacs-lucid +[ $2 -gt 0 ] && exit 0 +rm -f %{emacs_lisp_path}/xcscope.el + +%triggerun -- vim-filesystem +[ $2 -gt 0 ] && exit 0 +rm -f %{vim_plugin_path}/cctree.vim + +%changelog +* Mon Aug 09 2021 Mohan Boddu - 15.9-12 +- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags + Related: rhbz#1991688 + +* Thu Apr 15 2021 Mohan Boddu - 15.9-11 +- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 + +* Tue Mar 16 2021 Vladis Dronov - 15.9-10 +- Bring in important patches from the upstream (39fb38..eaea31 in a git repo) +- Fix the upstream tarball URL +- Remove outdated patch files + +* Tue Jan 26 2021 Fedora Release Engineering - 15.9-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Jul 29 2020 Neil Horman - 15.9-8 +- Adding missing dependency on ed (bz 1861697) + +* Mon Jul 27 2020 Fedora Release Engineering - 15.9-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Jan 28 2020 Fedora Release Engineering - 15.9-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Wed Jul 24 2019 Fedora Release Engineering - 15.9-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu Apr 11 2019 Neil Horman - 15.9-4 +- Fixing double free (bz 1657210) + +* Thu Jan 31 2019 Fedora Release Engineering - 15.9-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Mon Dec 10 2018 Neil Horman - 15.9-2 +- update Requires to include coreutils (bz 1657775) + +* Tue Jul 24 2018 Neil Horman - 15.9-1 +- update to latest upstream + +* Thu Jul 12 2018 Fedora Release Engineering - 15.8b-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Thu Mar 01 2018 Josh Boyer - 15.8b-8 +- Conditionalize xemacs + +* Wed Feb 07 2018 Fedora Release Engineering - 15.8b-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Wed Aug 02 2017 Fedora Release Engineering - 15.8b-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 15.8b-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Feb 10 2017 Fedora Release Engineering - 15.8b-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Mon Nov 28 2016 Neil Horman - 15.8b-3 +- Changed permissions on cscope-indexer (bz 1399108) + +* Wed Feb 03 2016 Fedora Release Engineering - 15.8b-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Aug 05 2015 Neil Horman - 15.8b-1 +- Update to latest upstream + +* Wed Jun 17 2015 Fedora Release Engineering - +* 15.8-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Tue Sep 30 2014 Neil Horman - 15.8-11 +- Added triggerin support for emacs-nox (bz 961709) + +* Sat Aug 16 2014 Fedora Release Engineering - 15.8-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 15.8-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Tue Apr 15 2014 Neil Horman - 15.8-8 +- Fixed formatting issue with empty function array (bz 1087940) + +* Sat Aug 03 2013 Fedora Release Engineering - 15.8-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Mon Mar 25 2013 Neil Horman - 15.8-6 +- Fixed build break + +* Mon Mar 25 2013 Neil Horman - 15.8-5 +- Updated to run autoreconf for impending aarch64 introduction (bz 925201) + +* Wed Feb 13 2013 Fedora Release Engineering - 15.8-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Wed Jul 18 2012 Fedora Release Engineering - 15.8-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Tue Jul 10 2012 Neil Horman - 15.8-2 +- Fix inverted index sizing + +* Mon Jun 18 2012 Neil Horman - 15.8 +- Update to latest upstream + +* Mon Mar 12 2012 Neil Horman -15.7a-10 +- Fixed a segfault in invlib construction ( bz 786523) + +* Mon Mar 05 2012 Neil Horman 15.7a-9 +- Fixed a segfault in the symbol assignment search (bz 799643) + +* Fri Jan 13 2012 Fedora Release Engineering - 15.7a-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Thu Jun 30 2011 Neil Horman - 15.7a-7 +- Added LEXERR token to catch bad parsing before we crash (bz717545) + +* Fri Jun 24 2011 Neil Horman - 15.7a-6 +- Fixed licensing for xcscope.el (bz 715898) +- Fixed xemacs pkg. dependency (bz 719523) + +* Wed Jun 01 2011 Neil Horman - 15.7a-5 +- Fix scriptles macro expansion (bz 708499) + +* Thu May 26 2011 Neil Horman - 15.7a-4 +- Added cctree.vim vi plugin + +* Tue Feb 08 2011 Fedora Release Engineering - 15.7a-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Thu Sep 30 2010 Neil Horman - 15.7a-1 +- Update to latest upstream release (bz 569043) + +* Fri Jul 24 2009 Fedora Release Engineering - 15.6-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Fri Jun 12 2009 Neil Horman +- Fix some buffer overflows (bz 505605) + +* Tue Feb 24 2009 Fedora Release Engineering - 15.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Tue Jul 08 2008 Neil Horman -15.6-2.dist +- Grab upstream patch for -q rebuld (bz 436648) + +* Tue Mar 27 2007 Neil Horman -15.6-1.dist +- Rebase to version 15.6 + +* Mon Mar 05 2007 Neil Horman -15.5-15.4.dist +- Make sigwinch handler only register for curses mode (bz 230862) + +* Mon Feb 05 2007 Neil Horman -15.5-15.3.dist +- Fixing dist label in release tag. + +* Thu Feb 01 2007 Neil Horman -15.5-15.2.dist +- Fixing changelog to not have macro in release + +* Wed Aug 23 2006 Neil Horman -15.5-15.1 +- fixed overflows per bz 203651 +- start using {dist} tag to make release numbering easier + +* Mon Jul 17 2006 Jesse Keating - 15.5-14 +- rebuild + +* Fri Jun 23 2006 Neil Horman +- Fix putstring overflow (bz 189666) + +* Fri Jun 23 2006 Neil Horman +- Fix putstring overflow (bz 189666) + +* Fri May 5 2006 Neil Horman +- Adding fix to put SYSDIR in right location (bz190580) + +* Fri Apr 21 2006 Neil Horman - 15.5-13.4 +- adding inverted index overflow patch + +* Fri Feb 10 2006 Jesse Keating - 15.5-13.2 +- bump again for double-long bug on ppc(64) + +* Tue Feb 07 2006 Jesse Keating - 15.5-13.1 +- rebuilt for new gcc4.1 snapshot and glibc changes + +* Fri Dec 16 2005 Jesse Keating +- rebuild on new gcc + +* Tue Nov 30 2004 Neil Horman +- added tempsec patch to fix bz140764/140765 + +* Mon Nov 29 2004 Neil Horman +- updated cscope resize patch to do less work in + signal handler and synced version nr. on dist. + +* Mon Nov 22 2004 Neil Horman +- added cscope-1.5.-resize patch to allow terminal + resizing while cscope is running + +* Tue Oct 5 2004 Neil Horman +- modified cscope-15.5.-inverted patch to be upstream + friendly + +* Tue Sep 28 2004 Neil Horman +- fixed inverted index bug (bz 133942) + +* Mon Sep 13 2004 Frank Ch. Eigler +- bumped release number to a plain "1" + +* Fri Jul 16 2004 Neil Horman +- Added cscope-indexer helper and xcscope lisp addon +- Added man page for xcscope +- Added triggers to add xcscope.el pkg to (x)emacs +- Thanks to Ville, Michael and Jens for thier help :) + +* Fri Jul 2 2004 Neil Horman +- Added upstream ocs fix +- Added feature to find symbol assignments +- Changed default SYSDIR directory to /var/lib/cs +- Incoproated M. Schwendt's fix for ocs -s + +* Fri Jun 18 2004 Neil Horman +- built the package