* dlg-symbols: add a release
since I cutoff before 6.0, there is no "current" date, but only dates for
the most recent change to the ncurses ABI. Fix using the most recent date.
fix a debug-statement, which was showing a hash code rather than the collectin of strings
in the final step to associate "_*" pattern, the ".sym" files have already
been moved to package/SAVE, so the wildcard does not refer to a valid file.
* ncu-mapsyms: add deprecated symbols for Debian #788610
fix -- needs retesting -- when I regenerated map-files, the "-s" option
left some of the symbols out, as well as putting them in the wrong dates.
At least part of the problem is that I was testing the old label (pre-merge)
when I should have tested the new label. This change improves the merge,
but there seems to be an unwanted suffix in some cases.
* ncu-symbols: fix typo from 2015/02/14
* ncu-symbols: explain the last change
* ncu-symbols: generate symbols for the _last_ 5.9 patch
the --without-libtool option does not (really) affect ABI, though we may
use different library versioning.
* dlg-symbols: for now, do not use "-s" and "-p" options
my versioning scheme for dialog differs from ncurses: in ncurses, everything
is "vM_M_MMMMMMMM", with occasional "vM_M", while dialog uses "tMMMMMMMM"
with occasional "vM_M"
* ncu-mapsyms: eliminate an unnecessary verbose-message
* dlg-symbols: s/dist.mk/VERSION/ for rlog lookup
initially I had only libtool -- use that unless I find case where it fails
* dlg-symbols: RCS_BASE
fix for my dpkg builds which are in a temporary directory named "cdialog"
generalize ncurses' "initscr" a little - probably need better solution
* ncu-mapsyms: show the number of symbols read from needed-syms
start generalizing, to check in VERSION file if no dist.mk found
* analyze-curses-symbols: fill in check for ncurses-extensions
* analyze-curses-symbols: handle read from stdin
* analyze-curses-symbols: typo
handle programs such as aptitude which depend on library which depends on curses.
* analyze-curses-symbols: documentation fixes
ignore symbolic link to directory in traversal
* analyze-curses-symbols: add -q, -r and -s options
* analyze-curses-symbols: show counts of symbol usage
* analyze-curses-symbols: accumulate counts for each symbol vs program
add functions for reading the dynamic symbols from both libraries and application
* analyze-curses-symbols: q/d integration of "ldd"
* analyze-curses-symbols: RCS_BASE
fix an inconsistency in the way I checked for weak-symbols
move the "-v" into $MAP_OPTS, and echo that (for the log)
add new "-t" option to get better control over the library renaming done
when --enable-weak-symbols is used.
try a different tack, with new option "-t" to ncu-mapsyms
after the last fix, I found that the data returned from read_config() did
not match the expected hash referencing. This reworks a chunk in that - seems
to fix the immediate problem.
when I revised the comment-header with options, I overlooked get_config_params,
which assumed the old layout. When using "ncu-mapsyms -s", that caused all
of the options to be emitted on a single line.
* ncu-symbols: add header for log to show "current"
fix typo that introduced termlib option values into header
looks like adding weak symbols only adds to thread - simple...
override tinfo/tic library names to force weak-symbol stuff into "right" file
* ncu-symbols: turn on verbose
* ncu-mapsyms: overlooked filling in long headers for ".sym" file
* ncu-symbols: make output a little easier to find the ncu-mapsyms call
* compare-mapsyms: typo
when first creating a ".map" file, check (since it is being created with a
different name) if the original ".map" file exists, and if so, what configure
options its header might list.
the reason I had no options was that for autoconf 2.13, the "--version"
option does not tell about the configure options. added a fallback to
read the comment-header, which has that information.
better show at least "(none)" to indicate the build-date, even if there were
original build of 5.0 has no options to add, so a hash was empty - add check
first cut of revised configure-options logic, ready to test in ncu-symbols
* ncu-mapsyms: first cut at writing hashes for options
split-out add_config, so that all of the logic for configure-options is
in functions shared between map/sym functions
split-out read_options function. Drop the get_merge_count feature, since
that doesn't fit into a function scenario - and I'll be revising the format
of the options anyway.
* ncu-mapsyms: split-out write_options function
* ncu-mapsyms: trim uninteresting configure options
* ncu-symbols: comment-out debug option
add a special case to work around --weak-symbols option which Werner seems to
have persuaded me to make the library suffix "t" omitted.
In response to Werner's comment, I tried combining --enable-weak-symbols,
but had forgotten that suppresses the "t" part of the suffix (and added a
lot of pthread stuff to ncursesw.map). Take that out, and write a note in
INSTALL to explain better about renaming map-files in the configure options.
first cut of changes to detect when map/sym files do/do not change
* compare-mapsyms: RCS_BASE
* report-mapsyms: make the "-v" message go to stderr
* report-mapsyms: RCS_BASE
* ncu-symbols: Werner reported a problem with hashed-db vs ticlib
q/d implementation of "-p" assumes that I've marked the final state as "current"
* ncu-mapsyms: start work on -p option
* ncu-symbols: correct spelling of "broken_linker"
add hashed-db to list
* ncu-symbols: date
* ncu-symbols: tried - didn't help
* ncu-mapsyms: date
* ncu-mapsyms: _nc_freeall is used in Ada95 binding
* ncu-symbols: when doing "-a", finish by resyncing symbols
* ncu-mapsyms: reported in
I had moved comp_captab and comp_hash from libtic to libtinfo after 5.7,
and without marking them specially, they were "still" in libtic.
* ncu-mapsyms: ensure ".sym" files are the same scope
have to ripple-up scope when synchronizing, to ensure that if one library
makes something global, everyone gets it.
* ncu-mapsyms: implemented the synchronization part of "-s" option
ok - before transforming with "-s", the input/output files are identical
* ncu-mapsyms: for "-s", make comment-header identical to input
* ncu-mapsyms: for "-s" option, preserve the merge-count in the header
a little more - reading/writing (but I see unexplained differences - debug)
start work on "-s" option by moving globals into functions - so I can reuse
the parts for reading/writing ".map" files
add two entrypoints for ABI stability per notes in INSTALL
tweaks to make it simpler to see in the logs the merge-process.
if previously global, it seems we have to keep it global -- otherwise successive
builds for a given date do not merge properly.
* ncu-mapsyms: implement merge-options comments for .map files
fix a case where tack-symbols did not percolate as globals
when doing "all" versions, infer "current" from the last label in dist.mk
* ncu-symbols: add copyright notice
* ncu-symbols: go for broke
* ncu-symbols: first cut
* ncu-symbols: start restructuring to allow adding command-line options
* ncu-mapsyms: fixes for new/old scope
* ncu-mapsyms: map "glue" into "global"
* ncu-symbols: build-fix for 5.7
workaround for building 5.5 (glibc started #define'ing _XOPEN_SOURCE_EXTENDED,
which breaks my build since I ifdef'd wint_t inside that).
got 5.4 to build - though it seems to be missing something.
* ncu-symbols: trap isn't doing what I wanted - use explicit checks.
* ncu-symbols: better error-exit
* ncu-symbols: that last omitted _nc_read_termcap - fix
* ncu-symbols: refine that a little (still testing v5_0)
I may revise this, but for now, ignore the c++ binding since old 5.0 does not compile.
* ncu-symbols: handle a special case in 2004 for --enable-widec switch
make it possible to merge releases one-by-one by not zapping the .map/.sym files
* ncu-mapsyms: fix another merge problem
fix one of the tic/tinfo merge problems - %tack_symbols has to say which to use
make parsing a little easier to follow by showing the _original_ line in the debugging trace
add comment at top of .map / .sym explaining what it is for
start showing config values in .map header (no merge done yet)
* ncu-mapsyms: working to preserve ncurses_tic aka "tic"
* ncu-mapsyms: add -v option
* ncu-mapsyms: add verbose check for opening files
fixes for -m option (finding that the tic-nodes get lost early on)
* ncu-mapsyms: add -m option
* ncu-mapsyms: add -d option
fix a merge problem, where older ncurses library containing tinfo overrode newer tinfo library
can't really use "fast" build, since the needed-syms works on the executables as well
* ncu-mapsyms: filter out "_*" token
* ncu-mapsyms: fix glitch in "prior", when nothing changes in a release
initializing a hash requires two values - fix tack_symbols
* ncu-mapsyms: tack-symbols seem to work.
* ncu-mapsyms: split-out sub generic_libname
start working to make tack's special symbols global
merge old ".map" into new ".map" when the latter is missing data
map library names into the ones I should use for versioned-symbols.
* ncu-mapsyms: write the data in %new_symbols to mapfile
more work to prepare that hash is needed...
to write the map-file, have to loop over all of the libraries...
* ncu-mapsyms: start building indexes needed for writing map-file
* ncu-mapsyms: q/d check_map()
start working to merge the existing ".map" data into new data
* ncu-mapsyms: build a hash for each node from .map file
* ncu-mapsyms: parse ".map" file
* ncu-mapsyms: split-out this_lib and output_file functions
* ncu-symbols: cannot build ticlib and termcap support at the same time
* ncu-symbols: --disable-root-environ
* ncu-mapsyms: merge the options-comments too
* ncu-symbols: two more quirks
merge contents of ".sym" files, allowing ncu-symbols to make overlapping
builds to get workable list for several combinations.
tweak to provide overlapping sets of symbols for sp-funcs vs reentrant options
* ncu-mapsyms: ncurses' private symbols include _traceXXX
* needed-syms: copyright
show the options used for generating the libraries used for symbols...
* ncu-symbols: proposed changes to factor into ncu-getsyms
needed-syms can (for instance libtic) return C runtime symbols.
filter those out.
* ncu-mapsyms: show progress
* ncu-symbols: use ncu-mapsyms
* ncu-mapsyms: write a ".sym" file
* ncu-mapsyms: read data via "needed-syms"
* needed-syms: mark the "glue" symbols as such
* ncu-mapsyms: RCS_BASE
* needed-syms: make data for "local:" the library name, for consistency
* needed-syms: simplify output a little
first cut - gather all info, some work needed to get parsable results
* needed-syms: RCS_BASE
* ncu-symbols: need testing...
once successfully configured for shared-libraries, make the libraries
* ncu-symbols: RCS_BASE