diff -Nru oxref-1.00.06/changelog oxref-1.00.07/changelog --- oxref-1.00.06/changelog 2015-12-20 12:02:49.000000000 +0000 +++ oxref-1.00.07/changelog 2018-06-16 08:24:45.000000000 +0000 @@ -1,3 +1,9 @@ +oxref (1.00.07) + + * Migrated from Github to Gitlab + + -- Frank B. Brokken Sat, 16 Jun 2018 10:24:38 +0200 + oxref (1.00.06) * Updated entries in the 'required' file. diff -Nru oxref-1.00.06/debian/changelog oxref-1.00.07/debian/changelog --- oxref-1.00.06/debian/changelog 2018-06-16 05:18:18.000000000 +0000 +++ oxref-1.00.07/debian/changelog 2018-06-16 13:54:27.000000000 +0000 @@ -1,3 +1,11 @@ +oxref (1.00.07-1) unstable; urgency=medium + + * Upstream migrated from Github to Gitlab. + * Changed --std=c++14 to --std=c++17 in debian/rules. + * Updated debian/copyright + + -- Frank B. Brokken Sat, 16 Jun 2018 15:54:27 +0200 + oxref (1.00.06-3) unstable; urgency=medium * Update Vcs fields for migration from Alioth -> Salsa @@ -68,7 +76,7 @@ Klose (Closes: #778053) [ tony mancill ] - * Set distribution to experimental since we build-dep on a version of + * Set distribution to experimental since we build-dep on a version of bobcat in experimental. -- tony mancill Mon, 16 Feb 2015 11:43:32 -0800 @@ -92,7 +100,7 @@ oxref (1.00.01-1) unstable; urgency=low [ Frank Brokken ] - * Replaced FBB::Errno calls by FBB::Exception. See oxref's changelog. + * Replaced FBB::Errno calls by FBB::Exception. See oxref's changelog. (Closes: #730892) * Removed now obsoleted git-build: target from debian/rules. * Updated several Build-Depends versions and updated Standard-Version @@ -106,7 +114,7 @@ [ Frank B. Brokken ] * --help, --version options return 0, catching Errno exceptions removed from - main() + main() [ tony mancill ] * Bump Standards-Version to 3.9.4 (no changes). @@ -118,7 +126,7 @@ oxref (0.90.11-1) unstable; urgency=low * build script recognizes CXX, CPPFLAGS, CXXFLAGS, and LDFLAGS - environment variables + environment variables -- Frank B. Brokken Sun, 22 Jul 2012 11:57:38 +0200 @@ -173,5 +181,3 @@ * Initial Debianization (Closes: #613651) -- Frank B. Brokken Wed, 16 Feb 2011 12:41:45 +0100 - - diff -Nru oxref-1.00.06/debian/control oxref-1.00.07/debian/control --- oxref-1.00.06/debian/control 2018-06-16 05:18:18.000000000 +0000 +++ oxref-1.00.07/debian/control 2018-06-16 13:54:27.000000000 +0000 @@ -16,9 +16,9 @@ Package: oxref Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, binutils -Description: cross reference utility +Description: cross reference utility The program oxref writes to the standard output stream a cross reference of - symbols defined in unstripped object files and/or libraries. + symbols defined in unstripped object files and/or libraries. . It demangles C++ symbols and can (probably) be used for a large range of languages. diff -Nru oxref-1.00.06/debian/copyright oxref-1.00.07/debian/copyright --- oxref-1.00.06/debian/copyright 2018-06-16 05:18:18.000000000 +0000 +++ oxref-1.00.07/debian/copyright 2018-06-16 13:54:27.000000000 +0000 @@ -1,34 +1,31 @@ -This package was debianized by Frank B. Brokken on -Wed, 16 Feb 2011 12:41:45 +0100 - -Upstream Author: Frank B. Brokken - -Copyright: - oxref cross reference utility - Copyright (c) 2011 - now by Frank B. Brokken, University of Groningen. - -License: - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this package; if not, write to the Free Software Foundation, - Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. - -On Debian systems, the complete text of the GNU General -Public License can be found in `/usr/share/common-licenses/GPL'. - -Debian packaging copyright: - -  (C) 2011 Frank B. Brokken -  (C) 2011 George Danchev -  (C) 2011 Tony Mancill -and is licensed under the GPL, see above. +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: Oxref +Upstream-Contact: Frank B. Brokken +Source: https://fbb-git.github.io/oxref +Comment: Oxref cross reference utility + This package was debianized by Frank B. Brokken on + Wed, 16 Feb 2011 12:41:45 +0100. + +Files: * +Copyright: 2011 - now by Frank B. Brokken, University of Groningen. +License: GPL-3+ + This program is free software; you can redistribute it + and/or modify it under the terms of the GNU General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later + version. + . + This program is distributed in the hope that it will be + useful, but WITHOUT ANY WARRANTY; without even the implied + warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. See the GNU General Public License for more + details. + . + You should have received a copy of the GNU General Public + License along with this package; if not, write to the Free + Software Foundation, Inc., 51 Franklin St, Fifth Floor, + Boston, MA 02110-1301 USA + . + On Debian systems, the full text of the GNU General Public + License version 3 can be found in the file + `/usr/share/common-licenses/GPL-3'. diff -Nru oxref-1.00.06/debian/rules oxref-1.00.07/debian/rules --- oxref-1.00.06/debian/rules 2018-06-16 05:18:18.000000000 +0000 +++ oxref-1.00.07/debian/rules 2018-06-16 13:54:27.000000000 +0000 @@ -2,12 +2,15 @@ # -*- makefile -*- # Uncomment this to turn on verbose mode. -# export DH_VERBOSE=1 +export DH_VERBOSE=1 + +export DEB_BUILD_HARDENING = 1 +export DEB_BUILD_MAINT_OPTIONS = hardening=+all export CPPFLAGS = $(shell dpkg-buildflags --get CPPFLAGS) -export LDFLAGS = $(shell dpkg-buildflags --get LDFLAGS) +export LDFLAGS = $(shell dpkg-buildflags --get LDFLAGS) -Wl,-z,now export CXXFLAGS = $(shell dpkg-buildflags --get CXXFLAGS) -export CXXFLAGS += --std=c++14 -Wall +export CXXFLAGS += -Wall --std=c++17 -D_FORTIFY_SOURCE=2 export CXX = g++ diff -Nru oxref-1.00.06/icmconf oxref-1.00.07/icmconf --- oxref-1.00.06/icmconf 2015-12-14 13:27:25.000000000 +0000 +++ oxref-1.00.07/icmconf 2018-06-10 14:58:35.000000000 +0000 @@ -1,27 +1,14 @@ #include "INSTALL.im" -#define MAIN "oxref.cc" +#define MAIN "main.cc" #define ADD_LIBRARIES "bobcat" #define ADD_LIBRARY_PATHS "" -#define SCANNER_DIR "" -#define PARSER_DIR "" #define REFRESH #define LIBRARY "modules" #define SHAREDREQ "" -//#define CLS -//#define USE_ALL "a" +#define USE_ALL "a" #define SOURCES "*.cc" -#define SCANGEN "flexc++" -#define SCANFLAGS "" -#define SCANSPEC "lexer" -//#define SCANFILES "" -#define SCANOUT "lex.cc" -#define PARSGEN "bisonc++" -#define PARSFLAGS "-V" -#define PARSSPEC "grammar" -#define PARSFILES "inc/*" -#define PARSOUT "parse.cc" -#define USE_ECHO ON +#define USE_ECHO ON #define TMP_DIR "tmp" #define OBJ_EXT ".o" #define USE_VERSION diff -Nru oxref-1.00.06/INSTALL.im oxref-1.00.07/INSTALL.im --- oxref-1.00.06/INSTALL.im 2015-12-14 13:27:25.000000000 +0000 +++ oxref-1.00.07/INSTALL.im 2018-06-10 14:58:35.000000000 +0000 @@ -5,7 +5,7 @@ #define CXX "g++" // the compiler options to use. -#define CXXFLAGS "--std=c++14 -Wall -O2 -fdiagnostics-color=never" +#define CXXFLAGS "--std=c++17 -Wall -O2 -fdiagnostics-color=never" // flags passed to the linker #define LDFLAGS "" diff -Nru oxref-1.00.06/main.cc oxref-1.00.07/main.cc --- oxref-1.00.06/main.cc 1970-01-01 00:00:00.000000000 +0000 +++ oxref-1.00.07/main.cc 2018-06-10 14:58:35.000000000 +0000 @@ -0,0 +1,68 @@ +#include "main.ih" + +namespace +{ + Arg::LongOption longOptions[] = + { + {"arg", 'a'}, + {"help", 'h'}, + {"objdump", Arg::Required}, + {"object-files", 'o'}, + {"source-files", 's'}, + {"full-symbol", 'f'}, + {"select-pattern", Arg::Required}, + {"select", Arg::Required}, + {"xref-source-files", 'x'}, + {"version", 'v'}, + }; + + Arg::LongOption const *const longEnd = longOptions + size(longOptions); +} + +int main(int argc, char **argv) +try +{ + Arg &arg = Arg::initialize("a:fhosvx", longOptions, longEnd, argc, argv); + arg.versionHelp(usage, version, 1); + + ObjDump odump; + Storage storage; + + + odump.start(); // generate objdump's output + + // insert into Storage + copy(odump.begin(), odump.end(), back_inserter(storage)); + + // display the results + cout << + arg.basename() << " by " << Icmbuild::author << '\n' << + arg.basename() << " V" << Icmbuild::version << ' ' << + Icmbuild::years << "\n" + "\n" + "CREATED " << DateTime().rfc2822() << "\n" + "CROSS REFERENCE FOR: "; + + copy(argv + 1, argv + argc, ostream_iterator(cout, " ")); + + cout << '\n' << + setfill('-') << setw(70) << '-' << setfill(' ') << "\n" + "\n" << + storage << '\n'; +} +catch (std::exception const &e) +{ + cout << e.what() << '\n'; + return 1; +} +catch (int x) +{ + return Arg::instance().option("hv") ? 0 : x; +} +catch (...) +{ + cout << "Caught unaccounted for exception\n"; + return 1; +} + + diff -Nru oxref-1.00.06/oxref.cc oxref-1.00.07/oxref.cc --- oxref-1.00.06/oxref.cc 2015-12-14 13:27:25.000000000 +0000 +++ oxref-1.00.07/oxref.cc 1970-01-01 00:00:00.000000000 +0000 @@ -1,70 +0,0 @@ -#include "main.ih" - -namespace -{ - Arg::LongOption longOptions[] = - { - {"arg", 'a'}, - {"help", 'h'}, - {"objdump", Arg::Required}, - {"object-files", 'o'}, - {"source-files", 's'}, - {"full-symbol", 'f'}, - {"select-pattern", Arg::Required}, - {"select", Arg::Required}, - {"xref-source-files", 'x'}, - {"version", 'v'}, - }; - - Arg::LongOption const *const longEnd = - longOptions + - sizeof(longOptions) / sizeof(Arg::LongOption); -} - -int main(int argc, char **argv) -try -{ - Arg &arg = Arg::initialize("a:fhosvx", longOptions, longEnd, argc, argv); - arg.versionHelp(usage, version, 1); - - ObjDump odump; - Storage storage; - - - odump.start(); // generate objdump's output - - // insert into Storage - copy(odump.begin(), odump.end(), back_inserter(storage)); - - // display the results - cout << - arg.basename() << " by " << Icmbuild::author << '\n' << - arg.basename() << " V" << Icmbuild::version << ' ' << - Icmbuild::years << "\n" - "\n" - "CREATED " << DateTime().rfc2822() << "\n" - "CROSS REFERENCE FOR: "; - - copy(argv + 1, argv + argc, ostream_iterator(cout, " ")); - - cout << '\n' << - setfill('-') << setw(70) << '-' << setfill(' ') << "\n" - "\n" << - storage << '\n'; -} -catch (std::exception const &e) -{ - cout << e.what() << '\n'; - return 1; -} -catch (int x) -{ - return Arg::instance().option("hv") ? 0 : x; -} -catch (...) -{ - cout << "Caught unaccounted for exception\n"; - return 1; -} - - diff -Nru oxref-1.00.06/storage/function.cc oxref-1.00.07/storage/function.cc --- oxref-1.00.06/storage/function.cc 2015-12-14 13:27:25.000000000 +0000 +++ oxref-1.00.07/storage/function.cc 2018-06-10 14:58:35.000000000 +0000 @@ -2,6 +2,6 @@ void Storage::function(std::string const &symbol) { - // Note: symbols may multiply appear in objfiles + // Note: symbols may repeatedly appear in objfiles d_store.setFunction(symbol); } diff -Nru oxref-1.00.06/storage/pushback.cc oxref-1.00.07/storage/pushback.cc --- oxref-1.00.06/storage/pushback.cc 2015-12-14 13:27:25.000000000 +0000 +++ oxref-1.00.07/storage/pushback.cc 2018-06-10 14:58:35.000000000 +0000 @@ -5,20 +5,21 @@ if (s_reject << line) return; - if (s_objFile << line) - objFile(s_objFile[1]); + if (s_objFile << line) // 1st line of a record, like + objFile(s_objFile[1]); // tmp/main.o: file format ... - else if (s_abs << line) + else if (s_abs << line) // the source filename (if available) sourceFile(s_abs[1]); - else if (s_UND << line) - undefined(s_UND[1]); + else if (s_UND << line) // *UND* entries are stored in + undefined(s_UND[1]); // Store::d_xrefData: entities referred to by + // the current function - else if (s_g_F << line) - function(s_g_F[1]); + else if (s_g_F << line) // 'g F .text' entries define symbols + function(s_g_F[1]); // in d_xrefData - else if (s_g_O << line) - object(s_g_O[1]); + else if (s_g_O << line) // 'g O .data' entries define global data + object(s_g_O[1]); // in d_xrefData } diff -Nru oxref-1.00.06/storage/storage.h oxref-1.00.07/storage/storage.h --- oxref-1.00.06/storage/storage.h 2015-12-14 13:27:25.000000000 +0000 +++ oxref-1.00.07/storage/storage.h 2018-06-10 14:58:35.000000000 +0000 @@ -27,6 +27,8 @@ typedef value_type const &const_reference; Storage(); + // interpret lines from objdump + // using the functions below void push_back(std::string const &line); private: diff -Nru oxref-1.00.06/store/store.h oxref-1.00.07/store/store.h --- oxref-1.00.06/store/store.h 2015-12-14 13:27:25.000000000 +0000 +++ oxref-1.00.07/store/store.h 2018-06-10 14:58:35.000000000 +0000 @@ -4,6 +4,7 @@ #include #include #include +#include #include "../xrefdata/xrefdata.h" @@ -27,6 +28,10 @@ mutable std::vector d_defIdx; // indices of defined // functions/objects +// // index in d_xrefData where +// // a symbol is stored +// std::unordered_map d_symbolMap; + public: Store(); diff -Nru oxref-1.00.06/store/undefined.cc oxref-1.00.07/store/undefined.cc --- oxref-1.00.06/store/undefined.cc 2015-12-14 13:27:25.000000000 +0000 +++ oxref-1.00.07/store/undefined.cc 2018-06-10 14:58:35.000000000 +0000 @@ -18,14 +18,13 @@ return xrefData.hasSymbol(symbol); } ); - // FnWrap::unary(XrefData::hasSymbol, symbol)); size_t index = iter - d_xrefData.begin(); // index of this symbol if (iter == d_xrefData.end()) // symbol not yet defined { index = d_xrefData.size(); - d_xrefData.push_back(XrefData(symbol)); // define the symbol + d_xrefData.push_back(XrefData{ symbol }); // define the symbol } d_xrefData[index].calledFrom(d_currentIdx); diff -Nru oxref-1.00.06/VERSION oxref-1.00.07/VERSION --- oxref-1.00.06/VERSION 2015-12-20 12:01:53.000000000 +0000 +++ oxref-1.00.07/VERSION 2018-06-16 08:31:11.000000000 +0000 @@ -1,4 +1,4 @@ #define AUTHOR "Frank B. Brokken (f.b.brokken@rug.nl)" -#define VERSION "1.00.06" -#define YEARS "2012-2015" +#define VERSION "1.00.07" +#define YEARS "2012-2018"