1. 14 Jul, 2018 1 commit
    • Robert Sprowson's avatar
      Fix for pointer compare confusion · b29d1529
      Robert Sprowson authored
      Don't compare a pointer (that can never be NULL) when a nul terminator was intended.
      Avoid strcmp() of potentially NULL area_level_in in the DEBUG case.
      Found by cppcheck static analysis.
      
      Version 0.72. Tagged as 'DebugLib-0_72'
      b29d1529
  2. 10 Jan, 2015 1 commit
    • Robert Sprowson's avatar
      Makefile recreated from fragments · 87fd6591
      Robert Sprowson authored
      One subtle difference here is there's no intermediate link step any more, since the ${DEBUGLIBS} already drags in all the required libraries. As a result, when linking with DebugLib the linker should be able to throw away unused sections, making your debug executable a bit smaller.
      Tested with a debug build of USBDriver in PRINTF_OUTPUT mode.
      
      Version 0.71. Tagged as 'DebugLib-0_71'
      87fd6591
  3. 02 Dec, 2014 1 commit
    • Robert Sprowson's avatar
      Repoint PDEBUG · d8045485
      Robert Sprowson authored
      Requires PDebug-0_09 or later.
      
      Version 0.70. Tagged as 'DebugLib-0_70'
      d8045485
  4. 18 Oct, 2014 1 commit
  5. 01 Oct, 2014 1 commit
  6. 27 May, 2014 1 commit
    • Jeffrey Lee's avatar
      Fix null pointer dereference · 0b1aef13
      Jeffrey Lee authored
      Detail:
        c/debug - Fixed a null pointer dereference in debug_setup_filename()
      Admin:
        Tested on BB-xM with high processor vectors
      
      
      Version 0.67. Tagged as 'DebugLib-0_67'
      0b1aef13
  7. 14 Jan, 2012 1 commit
  8. 23 Mar, 2010 1 commit
    • Jeffrey Lee's avatar
      Add HAL_DebugTX support to DebugLib · f8ab2e10
      Jeffrey Lee authored
      Detail:
        Makefile, c/hal, h/hal, c/debug, h/DebugLib - Added new HAL_OUTPUT debug device that calls HAL_DebugTX
        Docs/DebugLib,3d6 - updated StrongHelp docs
      Admin:
        Tested in OMAP ROM on rev C2 beagleboard
      
      
      Version 0.65. Tagged as 'DebugLib-0_65'
      f8ab2e10
  9. 10 Sep, 2008 1 commit
    • Steve Revill's avatar
      Adding SysLog and Reporter logging backends to the DebugLib library. · a67e015d
      Steve Revill authored
      Detail:
        I've added simple backends for the standard SysLog SWI interface and
        the Reporter module. Both of these provide line based APIs so the output
        is line buffered (to a width of 80 characters). I also removed two
        unnecessary forward declarations for static functions in debug.c which
        were producing warnings from Norcroft CC.
      Admin:
         Compiled with Norcroft 5.65. Tested on RISC OS 5.13, using DoggySoft
         SysLog 0.20, Reporter 2.64d via a debug build of the USBDriver module.
      
      Version 0.64. Tagged as 'DebugLib-0_64'
      a67e015d
  10. 02 Dec, 2003 1 commit
  11. 24 May, 2002 1 commit
    • John Beranek's avatar
      Added support for variadic macros · 7e7c3976
      John Beranek authored
      Detail:
      
      * If your C compiler supports variadic macros, you can now define
       DEBUGLIB_NOBRACKETS and use dprintf(...) instead of dprintf((...))
       This works with cc 5.45
      
      Admin:
        Tested by taking test harnesses and defining DEBUGLIB_NOBRACKETS
       and removing the extra brackets around all the dprintf statements.
      
      
      Version 0.62. Tagged as 'DebugLib-0_62'
      7e7c3976
  12. 17 Sep, 2001 1 commit
    • John Beranek's avatar
      Updated Copyrights, tidied comment header blocks · 0fed0ceb
      John Beranek authored
      Detail:
        Updated Copyright messages to show range of years, up to 2001...a bit
       late in the year for that...
      
        Tidied a few file header comment blocks.
      
      Admin:
        Built on RiscPC.
      
      
      Version 0.61. Tagged as 'DebugLib-0_61'
      0fed0ceb
  13. 02 May, 2001 2 commits
  14. 27 Mar, 2001 1 commit
    • Stewart Brodie's avatar
      New option for export_libs. · bf8371c0
      Stewart Brodie authored
      Detail:
        If you have -options NOLIBS=NOLIBS in your components file, then
          DebugLib won't attempt to build its binaries.  This avoids the
          need for several other libraries to be built just to enable
          DebugLib to build when actually all that a build needs is the
          header DebugLib.h
      Admin:
        Tested with and without the option.
      
      Version 0.59. Tagged as 'DebugLib-0_59'
      bf8371c0
  15. 02 Feb, 2001 1 commit
    • John Beranek's avatar
      Updated docs. · 22edf50e
      John Beranek authored
      Detail:
        Updated StrongHelp manual to include information about DADebug.
      
      
      Version 0.58. Not tagged
      22edf50e
  16. 01 Feb, 2001 1 commit
  17. 16 Oct, 2000 1 commit
    • John Beranek's avatar
      A number of changes, made over the months, but which I'd failed to checkin. Tsk. · 8d124a67
      John Beranek authored
      Detail:
        Some additions to CLI test harness.
      
        Bits of code in CLI and GUI test harness to check at compile time if
         OSLib and "Toolbox" style boolean definitions work with DebugLib.h
      
        Changed GUI test harness Makefile to use LocalRes:
      
        Removed calls to debug_atexit() in test harnesses, they're no longer
         necessary.
      
        Behaviour change: if you set a device in DebugLib$Device_<taskname>,
         debug_set_device() is called for that device on debug_initialise().
      
        Added check into debug_set_device(), if it's called with the current
         device, and the current device is initialised, it now does nothing,
         because it doesn't need to.
      
        Added extra checks into file and socket output methods that ensure
         initialising and/or terminating these devices repeatedly won't
         cause problems.
      
        Added some extra preprocessor malarky into DebugLib.h so that it should
         handle more boolean definitions.  It should handle (at least) "Toolbox"
         style ones and OSLib ones.
      
        Changed some used of debug_output_device() to debug_set_device() in Module
         test harness. debug_output_device() is deprecated.
      
        Fixed a bug in the core termination code...all open devices should now
         be closed correctly on exit.
      Admin:
        Built library.
        Built and ran through some tests in the 3 test harnesses.
      
      
      Version 0.57. Tagged as 'DebugLib-0_57'
      8d124a67
  18. 13 Jul, 2000 1 commit
    • John Beranek's avatar
      Few little fixes · 292b0fa8
      John Beranek authored
      Detail:
        Levels specifier in DebugLib header now outputs correctly.  It now
         prints out a human readable form of what it's parsed from the
         DebugLib$Level_<taskname> system variable, showing the areas and
         levels specified.
      
        Added a few variable resets into "quit" functions of some of the
         output devices.  Done after a report from Ben that calling
         debug_terminate twice could cause a crash.  Not sure what
         device was used to cause the crash, also not sure if any of my
         changes will have changed the behaviour.  Added an extra test
         into the CLI_App test harness, it calls debug_terminate twice
         at the end. (Didn't manage to make it crash before or after
         changes).
      Admin:
        StrongHelp document now gets copied to Export dir, along with
         headers, library and LibVersion.
      
      
      Version 0.56. Tagged as 'DebugLib-0_56'
      292b0fa8
  19. 18 May, 2000 1 commit
    • John Beranek's avatar
      Efficiency improvement and obscure overflow fix in area checking code · c25996b8
      John Beranek authored
      Detail:
        Every dprintf() call calls debug_check_level() to check whether the
         statement should be printed or not.  This function did take 2
         parameters, the 2nd of which was no longer being used.  The function
         now only takes 1 parameter.
      
        You are limited to having 16 comma-seperated area/level
         pairs in each dprintf(), but the routine to tokenise this string
         would've written into and beyond position 16 of a 16 element
         array if you passed a string with more than 16 pairs.  Routine now
         bails out after 16 pairs.
      Admin:
        MemCheck rule of CLI test harness now uses correct MemCheck library,
         so actually does check memory. Only violations appear to be deep
         inside trace library.
      
        Added debug statement into CLI test harness with 18 levels, and
         verified DebugLib only uses 16. [Unfortunately couldn't verify
         array bounds were(n't) being violated, cos of MemCheck's limited
         stack protection].
      
        Fiddled with DebugLib's internal debugging so that DebugLib internal
         debug gets labelled with the level "__DebugLib".
      
      
      Version 0.55. Tagged as 'DebugLib-0_55'
      c25996b8
  20. 17 May, 2000 1 commit
    • John Beranek's avatar
      More boolean type changes. · c323b327
      John Beranek authored
      Detail:
        More drastic changes to try and fix all the wonderful variants of
         the boolean type.
      
        DebugLib now uses <stdbool.h>, "bool", "false" and "true"
         internally.
      
        DebugLib.h now prototypes its functions with the type DebugLib_BOOL,
         and does preprocessor jiggery-pokery to try and ensure that
         it, plus TRUE, FALSE and BOOL get defined as something appropriate.
      Admin:
        Tested by changing some of the test harnesses to include OSLib,
         stdbool and tboxlib headers.
        Fixed test harness module Makefile to include zm versions of
         libraries in all cases.
      
      
      Version 0.54. Tagged as 'DebugLib-0_54'
      c323b327
  21. 16 May, 2000 1 commit
    • John Beranek's avatar
      Boolean definitions updated · 055ac4b9
      John Beranek authored
      Detail:
        Definitions updated to catch OSLib's view on booleans.  If BOOL isn't
         defined, but TRUE is, then we define BOOL to bool and don't redefine
         TRUE and FALSE.
      
      Admin:
        The sooner we're all using <stdbool.h> the better.
      
      
      Version 0.53. Tagged as 'DebugLib-0_53'
      055ac4b9
  22. 20 Apr, 2000 1 commit
    • John Beranek's avatar
      Build changes + doc update · c5c7d86e
      John Beranek authored
      Detail:
        DebugLib now gets the Trace header file from the build system, now
         that it lives there.  Deleted local copy.
      
        Checked in updated StrongHelp manual that shows deprecation of
         debug_atexit() function, and that no longer tells you to use
         it in the "Setting up the library" section.
      Admin:
        Built.
      
      
      Version 0.52. Tagged as 'DebugLib-0_52'
      c5c7d86e
  23. 13 Apr, 2000 1 commit
    • Stewart Brodie's avatar
      Moved hashes to left hand column in DebugLib.h · 5342e069
      Stewart Brodie authored
      Detail:
        Without this, any RPC software (eg. NFS, rpclib) cannot be compiled
          to use DebugLib for debugging.
      Admin:
        Required by anything which uses the current version of rpcgen.
      
      
      Version 0.51. Tagged as 'DebugLib-0_51'
      5342e069
  24. 11 Apr, 2000 1 commit
  25. 05 Apr, 2000 1 commit
    • John Beranek's avatar
      Changed atexit handling + code tidying · 6973be1e
      John Beranek authored
      Detail:
        debug_atexit() is now deprecated and DebugLib adds its own atexit
        handler to close down debug devices.  debug_atexit() calls in code
        are now removed by the preprocessor even when DEBUGLIB is defined.
        The atexit handler is added in the debug_initialise() call.
      
        Tidied debug.c.  Made more functions static, and moved all the static
        functions to before the exported functions.
      Admin:
        Built and tested.
        StrongHelp manual updated to reflect atexit change.
      
      
      Version 0.49. Tagged as 'DebugLib-0_49'
      6973be1e
  26. 07 Mar, 2000 1 commit
    • John Beranek's avatar
      PDebug output method improved. · 1b999f66
      John Beranek authored
      Detail:
        DebugLib's PDebug output method will now use the PDebugM module to
        send output if it finds it.  This allows more than one task/module
        to output to the parallel port using DebugLib.
      Admin:
        Tested with 2 modules on STB400.
      
      
      Version 0.48. Tagged as 'DebugLib-0_48'
      1b999f66
  27. 21 Jan, 2000 2 commits
    • John Beranek's avatar
      Tidy-up · e3950a09
      John Beranek authored
      Detail:
        Stewart's checkin about LibVersion reminded me I'd done some tidying
        (including the LibVersion thing) and not checked it in.  So here it is.
      
        Tidied Makefile, added standard headers to all the c and h files,
        including the regulation copyright message.
      
        Changed options.c so that it fits the coding style of the rest of
        DebugLib (naughty Stewart).
      
        Improved "strdup" routine.
      
        Moved stripdepend call into Makefile.
      
      Admin:
        Built and tested.
      
      
      Version 0.47. Tagged as 'DebugLib-0_47'
      e3950a09
    • Stewart Brodie's avatar
      Altered exported VersionNum file to be called LibVersion. · 0aaa1990
      Stewart Brodie authored
      Detail:
        Change made to avoid problems with components doing #include "VersionNum"
          whilst DebugLib's export directory is on the include search path.
      Admin:
        Not tested - just changed the name.
      
      
      Version 0.46. Tagged as 'DebugLib-0_46'
      0aaa1990
  28. 21 Sep, 1999 2 commits
  29. 13 Sep, 1999 1 commit
  30. 10 Sep, 1999 1 commit
    • John Beranek's avatar
      * Updated DebugLib StrongHelp manual to add information on the use of the debug level specifier. · 8a65ed86
      John Beranek authored
       * DebugLib.h now exports the remotedb session handle, this should mean
         that apps can use the 2-way capabilites of remotedb to control their
         applications via remotedb-sent commands.  Note that the new function
         call debug_read_device should be used to check the current DebugLib
         device is SOCKET_OUTPUT and that the remotedb session handle is valid
         before registering a remotedb command handler.  Added for use by
         NCFresco.
      
      
      Version 0.42. Tagged as 'DebugLib-0_42'
      8a65ed86
  31. 08 Sep, 1999 1 commit
    • John Beranek's avatar
      * Improved DebugLib's area handling system. Lines of debug may now belong to... · 70d17dbb
      John Beranek authored
      * Improved DebugLib's area handling system.  Lines of debug may now belong to multiple "areas" of code, each at a specific level.  The filtering of debug at runtime is now done with a much more flexible system, areas/levels are masked in/out based on a new format for the
      
         DebugLib$Level_<taskname> system variable.  The description of this
         format has not made it into the StrongHelp document, it will go into
         this, and into the DebugLib web docs ASAP.
      
       * Added a new option to allow the area/level prefix in debug output to
         be padded to a particular width.  This makes the prefix much more
         useable.  The prefixing is turned on with the option
         "debug_set_area_level_prefix", and the padding controlled with
         "debug_set_area_pad_limit".
      
       * Added test cases for new levelling scheme into CLI test harness.
      
       * Updated StrongHelp manual somewhat.
      
      
      Version 0.41. Tagged as 'DebugLib-0_41'
      70d17dbb
  32. 28 May, 1999 1 commit
  33. 27 May, 1999 1 commit
    • Neil Bingham's avatar
      * Initial checkin of code to allow data to be output in a raw form. · cb046c9c
      Neil Bingham authored
        * Added copyright messages to DebugLib.h (the exported header) as
          DebugLib has now been shipped to one customer.
      Detail
      ------
        * Two new functions debug_set_raw_device() and dprintf_raw() have been
          added to debug.c.  This allows debug data to be output unprocessed;
          i.e. without taskname prefixing, timestamping etc.  This was done for
          HierProf, MemCheck and McCabe.  This is especially important for McCabe
          as no formatting must be done to the output generated by the program.
          Subject to testing against McCabe, it will be possible to send output
          for analysis via any debug stream (except RemoteDB due to the nature
          of the daemon).  DebugLib$RawDevice_<taskname> can be used to override
          debug_set_raw_device().
      Admin
      -----
        * Tested that the data is output in a raw form.  Testing with McCabe
          not yet accomplished.
      
      Version 0.39. Tagged as 'DebugLib-0_39'
      cb046c9c
  34. 26 May, 1999 3 commits
    • John Beranek's avatar
      * Tidied "include.h": · df87b763
      John Beranek authored
       * Moved non-general definitions into appropriate
         header files.  e.g. Default serial options into serial.h etc.
       * Removed DEBUGLIB_UNUSED() macro, as there was already a similar macro
         IGNORE()
      
       * "globals.h" now includes "options.h" to get the definition of the
         options structure.
      
      
      Version 0.38. Not tagged
      df87b763
    • John Beranek's avatar
      * Changed the default setting for the "screen cornering" option to FALSE. · 6ac12c4d
      John Beranek authored
      Version 0.38. Not tagged
      6ac12c4d
    • John Beranek's avatar
      * Continued tidy-up of DebugLib: · 9815444e
      John Beranek authored
       * All DebugLib functions now namespaced, they all start debug_<filename>_
        (except the functions in debug.c which are debug_).
      
       * Device specific #defines etc moved into device specific header files,
         e.g. debugit.h
      
       * Moved taskname prefixing to a central location, moved timestamping here
         also, added area/level prefixing, and tidied up this prefixing to make
         sure it looks good on all the possible debug devices.
      
       * Can now do any debuglib function to any debug device, including trace
         output, this hasn't been the case for a while.
      
       * Added new option, to set whether you want to prefix all debug lines
         with the area/level pair specified in dprintf, dfprintf etc.  Added
         new function to set this option.  debug_set_area_level_prefix ()
      
       * remotedb output now uses new "raw" output mode added to remotedb in
         version 0.06.  _DebugLib now requires remotedb version >= 0.06_
      
       * Added new test cases into CLI_App test harness, and changed a few things
         in TestMod.
      
       * Added Memcheck misc block registration into buffering code, which allows
         buffering to be used on the DebugLib Memcheck build.
      
       * Added lots of new function names into the always_ignore field which is
         used to tell trace which functions to ignore.  It seems that some the
         internet libraries have function names emebedded, which causes horrible
         loops when using DebugLib to output trace info to remotedb.  Also added
         debug_* and remote_debug_*
      
       * Added StrongHelp topics for ddumpbuf, debug_output_buffer_* and
         debug_set_area_level_prefix.  Updated the "Setting up the library"
         section.
      
       * Checked with all the debug devices except TML and serial.
      
      
      Version 0.38. Tagged as 'DebugLib-0_38'
      9815444e
  35. 20 May, 1999 1 commit
    • John Beranek's avatar
      * Continued tidy of DebugLib structure/implementation...added an "Open"... · bc55c6f8
      John Beranek authored
      * Continued tidy of DebugLib structure/implementation...added an "Open" variable to the debug_output_method structure, to replace the sessions_available struct that was used previously.  Now check for whether a device is open at the top level (debug.c) instead of once for each device.  Removed the "quit" function for a few devices, because it was doing nothing.
      
       * Reduced global variable count to 1. :)
      
       * Split option setting functions to options.[ch], left debug_set_device
         in c.debug, as it does a bit more that just set an option.
      
      
      Version 0.37. Tagged as 'DebugLib-0_37'
      bc55c6f8