
Changes from 1.1.5 to 1.2:

* add option '-call-graph' which outputs the profiled program
    call-graph, using VCG format (a call-graph displayer under
    UNIX/Linux [and other]). Tested: OK.
* adding a doc/ dir. Adding a .texi file with the fnccheck/fncdump
    documentation in it. Adding a fncdump.info file (generated
    using fncdump.texi and makeinfo). Adding a doc/html/ dir,
    with an HTML doc in it (using fncdump.texi and texi2html).
* adding '-cycles' option. Displays the detected recursions
    and cycles (non-direct recursions) in the program. For each,
    display starting/ending function of the cycle and the total
    time spend in the cycle.
* add "titles" to parts of the 'fncdump''s output
    (i.e "General information:", "Flat profile:", "Call-graph:"...).
* create a 'fncinteract.h' header, with corresponding functions
    in 'fnccheck' lib. It adds some functions to interact with
    'fnccheck' lib during execution. The two main functions are
    'fnccheck_stop_profile()' and 'fnccheck_start_profile()'
    which allow the program to stop or re-start the profile
    treatments. Useful if you want to profile only a small part
    of your program.  ** Not stable **.
    Note: by default, main() is always part of the profiled functions
      (because you always enter main() before doing anything). It
      is possible to start your program 'as if' 'fnccheck_stop_profile()'
      was called before by using FNCCHK_SUSPEND variable.
    Note bis: if you desactivate profile before entering a function,
      and you re-activate it before leaving from this function, the
      'fnccheck' library will see an exit from a never-entering
      (for it) function. I dont know what can happend in this case
      (but a priori something bad :o)
* remove FNCCHK_PID variable. Now fnccheck creates a 'fnccheck.out'
    file for processes, instead of it is a child process, in which
    case a 'fnccheck.out_PID' is generated. It is possible to
    prevent childs to generate dump file by using FNCCHK_NOCHILD
    shell variable.
* change in the way 'total execution time' is performed.
* add '-sum-profile' which allows to add the contents of two
    profile files into a new profile file (useful to cumulate
    profiles data).


Changes from 1.1.4 to 1.1.5:

* add an install target for Makefile (Petter Reinholdtsen)
* add new DEBUG flags for tracking bugs :o)
* separate some code from 'fnccheck.c' and 'fncdump.c'. Now
    'fncdump.c' dont need anymore to be linked with 'fnccheck.o'.
* use 'libbfd' to extract functions name, file and line. This
    is the default behavior. You can still use 'nm' (-nm) or
    'addr2line' (-addr2line). If you dont have 'libbfd' and
    'libiberty' (from GNU binutils) use 'make fncdump_nobfd'
    instead of 'make fncdump'. It will generates 'fncdump'
    with only 'nm' and 'addr2line' approaches.
* add '-fullname' option. Make files name (if requested) to be
    displayed with full path.
* correct a bug that make 'main' exited twice for the lib when
    leaving the profiled program using 'exit' (it was changing
    the final time for main).
* developing a new approach for local time propagation from
    child functions. It compute real local times instead of
    transmiting time spend in child functions. It changes
    nothing for ordinary functions but gives correct local
    times for recursive (and cross-recursive) functions.
* add '-real-maxtime' option. Total execution time (using to
    compute time perecentages) is computed from displayed list
    of functions instead of the complete list of functions.
* few changes in flat profile display.
* starting to create a .info file in 'doc/' directory. Not
    finished yet. In fact I'm using the 'gprof' info file as
    a base, but I did something wrong and the .info generated is
    not correct. Still being updating (will be ready for V1.2).

Changes from 1.1.3 to 1.1.4:

* removing functions that compute average time per call for
    the lib in fncdump.c and fnccheck.c. Creating instead a
    fncaverage.c to perform this. Adding also targets for
    the Makefiles. This new approach uses REAL calls to the
    lib (and so generates a fnccheck.out file).
* change the -avg option in fncdump in order to call the
    fncaverage prog instead.
* internal: add a hash-table for the 'hx_search_function()'.
* change some functions to 'inline' for improvement purpose.
* switch to '-O3' optimisation (allows 'inline').
* change 'dump' into 'fncdump' (more specific).
* rename fncdump options '-calls+' and '-func+' into resp.
    '-call-details' and '-func-details'.
* change options reading system for 'fncdump' in order to accept
    several option names for the same option (in particular
    to let people use old options name (-calls+...) with the
    new version).
* update --help, --details. Add version number to --help.
* add print of full version number (including devel sub-part) when
starting the lib.
* add a shell variable FNCCHK_STOP which desactivate the lib
    at execution (I use it to compare execution time with and
    without the lib activated).
* trying to put some functions 'inline' in order to accelarate
    treatments.
* correcting an index display bug for 'called by' list.
* adding some '\n' missing during display.

Changes from 1.1.2 to 1.1.3:

* internal: create a real call-tree for functions
* -only and -not options
* -[r]propagate: allow to propagate -only/-not using the call-tree
* new archive organisation:
  - a src/ dir containing dump and lib sources
  - a test/ dir containing a test program
  - lib/ and bin/ dirs
  - recursive Makefile at root for lib, dump, test.
* moving "display" part of fnccheck.c in dump.c
* change %g to %f for time display for lisibility
* add 'static' for fnccheck functions to prevent names colisions
* change 'long long int' to 'long int' for speedup/memory optimisation
    (and because long int is enough for years...)

Changes from 1.1.1 to 1.1.2:

* improve parts of the _bad_ english of the README.txt
* add some help texts in the error messages
* add new options to 'dump' (see dump)
* change symbol extraction in order to use 'addr2line'
* new dump feature: display file/line for functions (if requested)
     -> not available with '-nm' option.
* correct bad names for C++ functions
* display MIN and MAX time for functions (see '-no-minmax')
* '--details' gives explanations on output informations.
* makefile improvements. default target display possible choice.
  target 'lib' added, target 'all' added.
  switch -g added. requiered for FILE:LINE infos.
