Commit Graph

485 Commits

Author SHA1 Message Date
Viktor Szakats
409012d5e6 2009-02-18 02:03 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk2.prg
    ! Fixed not recognising hbp lines if the filter was at BOL.
    ! Two minor fixes.

  * utils/hbmk/examples/xbgtk.hbp
    + Added cflags, it was already supported, just forgot about it.

  * contrib/hbblat/tests/hbblat.hbp
  * contrib/hbblat/tests/blatcmd.prg
    % Using WIN_GETCOMMANDLINEPARAM().

  * contrib/hbwin/win_misc.c
  * contrib/hbwin/tests/testreg.prg
    + Added WIN_GETCOMMANDLINEPARAM().
      Similar to WAPI_GETCOMMANDLINE() but returns
      only the parameter part. Handles UNICODE,
      _SET_OSCODEPAGE and appnames with spaces.

  * contrib/hbwin/tests/hbwin.hbp
    ! Fixed to include shell32 lib.

  * contrib/hbwin/Makefile
  * contrib/hbwin/common.mak
  + contrib/hbwin/wapi_winbase.c
  * contrib/hbwin/tests/testreg.prg
    + Added WAPI_GETCOMMANDLINE().
      With UNICODE and _SET_OSCODEPAGE support.

  * ChangeLog
    * TOFIX (hb_cmdline()) marked as POSTPONED with explanation.
2009-02-18 01:06:57 +00:00
Viktor Szakats
87a7f6d2f6 2009-02-17 23:31 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
+ contrib/gtalleg/tests
  + contrib/gtalleg/tests/gtalleg-shared.hbp
  + contrib/gtalleg/tests/gtalleg-static.hbp
  * utils/hbmk/examples/whoo.hbp
  * utils/hbmk/examples/c4w.hbp
  * utils/hbmk/examples/minigui.hbp
  * utils/hbmk/examples/hwgui.hbp
  * utils/hbmk/examples/fwh.hbp
  + utils/hbmk/examples/xbgtk.hbp
  + utils/hbmk/examples/xhgtk.hbp
    + Added new hbp files and settings to cover support by current
      hbmk script features.
    + Added new gtalleg hbp files for Windows, both static
      and shared. Added logic from hbmk script for Linux.
    ; NOTE: This is a work in progress, I'll have to investigate
            -I support needed for xbgtk, hbmk can't handle that yet.
            Also pkgconfig notation isn't parsed well yet, there needs
            to be added syntax to allow spaces inside items.
            Expect some possible incompatible changes in this area.
2009-02-17 23:02:00 +00:00
Viktor Szakats
ce1de4b3ed 2009-02-17 21:33 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk2.prg
    + Made HB_ARCHITECTURE and HB_COMPILER case-insensitive.
      Notice however that other parts of Harbour (notably the 
      GNU-make system) will only accept them in lowercase, so 
      that's the recommended way to setup these values.
    * One error message made more informative.
2009-02-17 20:35:17 +00:00
Viktor Szakats
6865585181 2009-02-17 20:56 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk2.prg
    + HB_COMPILER now automatically set to gcc for Linux.
      You can override it if you need gpp or owatcom.
    + xcc, icc autodetection for win.
    + Added support for HB_MT=mt|MT for compatibility.
    + Added support for -mwindows/-mconsole for compatibility.
    + 0/1 is accepted instead of yes/no for compatibility.
2009-02-17 19:58:44 +00:00
Luis Krause
f97d0b096c 2009-02-17 11:43 UTC+0800 Luis Krause (lkrausem at shaw dot ca)
* utils/hbmk/hbmk2.prg
    ! Fixed typo on line 1038 (missing . in .OR.)
2009-02-17 19:45:39 +00:00
Viktor Szakats
e4ac2fb30a 2009-02-17 20:06 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk2.prg
    ! Fixed -run on *nix systems.
2009-02-17 19:06:22 +00:00
Viktor Szakats
9383fb9119 2009-02-17 19:29 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk2.prg
    ! Fixed Linux system location detection to work
      regardless of the name of the executable.
2009-02-17 18:29:12 +00:00
Viktor Szakats
8670b0b82c 2009-02-17 18:44 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk2.prg
    + More informative messages for HB_COMPILER problems.
2009-02-17 17:44:35 +00:00
Viktor Szakats
6de8d77075 2009-02-17 17:34 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk2.prg
    + Added support for -fullstatic.
    + Added '-lm' to linux/gcc. Still needs to tweaking, like gpm.

  * bin/hbmk.bat
    + Added missing '@'.
2009-02-17 16:35:14 +00:00
Viktor Szakats
1678cba2c9 2009-02-17 16:40 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* make_b32.mak
   * make_vc.mak
   * common.mak
   + bin/hbmk.bat
   * utils/hbmk/Makefile
   - utils/hbmk/hbmk.prg
   + utils/hbmk/hbmk2.prg
    + Renamed hbmk to hbmk2 to avoid collision with hbmk script,
      and to allow parallel testing.
    + Readded hbmk.bat to redirect to hbmk2.exe.
      This will be removed in the future. Win9x/OS/2 isn't 
      supported with this batch file.
2009-02-17 15:36:34 +00:00
Viktor Szakats
5bac12e769 2009-02-17 16:30 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    * Minor changes.
2009-02-17 15:31:06 +00:00
Viktor Szakats
71a0a02cf1 2009-02-17 15:45 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    + Added autodetection of -cc, -cmp options based on argv[0].
2009-02-17 14:45:31 +00:00
Viktor Szakats
244d74cbee 2009-02-17 15:21 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    + Added support for multiple -L (lib path) options.
    + Added support for libpaths= option in .hbp files.
    ! Fix/cleanup to help screen.
    ! Fixed handling of libs specified in an explicitly passed
      .hbp file due to typo.
2009-02-17 14:22:13 +00:00
Viktor Szakats
a83974967d 2009-02-17 14:54 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    + Added support for -cc switch. This will stop hbmk after creating
      the Harbour .c outputs to emulate hbcc tool behaviour.
      'hbcc' -> 'hbmk -cc $*'
    + Added support for -cmp switch. This will stop hbmk after creating
      the object outputs from the C compiler.
      'hbcmp' -> 'hbmk -cmp $*'
    + From now on objects file passed on the command line will also
      be considered as final executable name if passed before the other
      files.
    * Tweaked internals to cope with some new combinations, like
      passing object only for a compiler having separate C compiler
      and link phases. Launching C compiler even if there are only
      object files.
2009-02-17 13:55:33 +00:00
Viktor Szakats
6d0e753f20 2009-02-17 11:22 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
- contrib/hbmysql/tests/hbmk.bat
   + contrib/hbmysql/tests/hbmysql.hbp
   - contrib/xhb/tests/hbmk.bat
   + contrib/xhb/tests/xhb.hbp
   - contrib/hbodbc/tests/hbmk.bat
   + contrib/hbodbc/tests/hbodbc.hbp
   - contrib/hbtpathy/tests/hbmk.bat
   + contrib/hbtpathy/tests/hbtpathy.hbp
   - contrib/hbmsql/tests/hbmk.bat
   + contrib/hbmsql/tests/hbmsql.hbp
   - contrib/hbmzip/tests/hbmk.bat
   + contrib/hbmzip/tests/hbmzip.hbp
   - contrib/hbole/tests/hbmk.bat
   + contrib/hbole/tests/hbole.hbp
   - contrib/hbsqlit3/tests/hbmk.bat
   + contrib/hbsqlit3/tests/hbsqlit3.hbp
   - contrib/hbfbird/tests/hbmk.bat
   + contrib/hbfbird/tests/hbfbird.hbp
   - contrib/hbziparc/tests/hbmk.bat
   + contrib/hbziparc/tests/hbziparc.hbp
   - contrib/hbnf/tests/hbmk.bat
   + contrib/hbnf/tests/hbnf.hbp
   - contrib/rddsql/tests/hbmk.bat
   + contrib/rddsql/tests/rddsql.hbp
   - contrib/hbhpdf/tests/hbmk.bat
   + contrib/hbhpdf/tests/hbhpdf.hbp
   - contrib/rddado/tests/hbmk.bat
   + contrib/rddado/tests/rddado.hbp
   - contrib/hbpgsql/tests/hbmk.bat
   + contrib/hbpgsql/tests/hbpgsql.hbp
   - contrib/rddads/tests/hbmk.bat
   + contrib/rddads/tests/rddads.hbp
   - contrib/hbfimage/tests/hbmk.bat
   + contrib/hbfimage/tests/hbfimage.hbp
   - contrib/hbgd/tests/hbmk.bat
   + contrib/hbgd/tests/hbgd.hbp
   - contrib/hbmisc/tests/hbmk.bat
   + contrib/hbmisc/tests/hbmisc.hbp
   - contrib/hbtip/tests/hbmk.bat
   + contrib/hbtip/tests/hbtip.hbp
   - contrib/hbgf/tests/hbmk.bat
   + contrib/hbgf/tests/hbgf.hbp
   - contrib/hbwin/tests/hbmk.bat
   + contrib/hbwin/tests/hbwin.hbp
   - contrib/hbvpdf/tests/hbmk.bat
   + contrib/hbvpdf/tests/hbvpdf.hbp
   - contrib/hbssl/tests/hbmk.bat
   + contrib/hbssl/tests/hbssl.hbp
   - contrib/hbwhat/tests/hbmk.bat
   + contrib/hbwhat/tests/hbwhat.hbp
     * Switched from WIN/DOS specific to platform
       independent .hbp files. These will be automatically
       picked by hbmk (prg). Some libnames will need tweaking
       for non-Windows platforms.
     ! Fixed a few liblists along the way.

   * contrib/hbgd/gdwrp.c
     ! Fixed to properly check GD lib version for conditional
       compiling. Formerly used GD_VERS isn't defined by the
       library headers.

   - contrib/hbmisc/tests/Makefile
   * contrib/hbmisc/doc/gendoc.bat
   - contrib/hbmisc/doc/libmisc.lnk
   - contrib/hbmisc/doc/libmisc.rsp
   + contrib/hbmisc/doc/hbmisc.lnk
   + contrib/hbmisc/doc/hbmisc.rsp
     * libmisc -> hbmisc

   * util/hbmk/hbmk.prg
     + Added TODO.

   * ChangeLog
     * TODO marked DONE.
2009-02-17 10:27:10 +00:00
Viktor Szakats
cf97f6830e 2009-02-16 21:19 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
- tests/hbmk_gnu.bat
    - Removed.

  * contrib/examples/uhttpd/hbmk.bat
  * contrib/examples/dbu/hbmk.bat
  * contrib/examples/rl/hbmk.bat
    * Made them compatible with Win9x/NT systems again.

  * source/lang/msg_tpl.c
    + Added NOTE about date format.

  * source/lang/msgbe866.c
  * source/lang/msgbewin.c
  * source/lang/msgbg866.c
  * source/lang/msgbgiso.c
  * source/lang/msgbgmik.c
  * source/lang/msgbgwin.c
  * source/lang/msgit.c
  * source/lang/msgnl.c
  * source/lang/msgsl437.c
  * source/lang/msgsl852.c
  * source/lang/msgsliso.c
  * source/lang/msgslwin.c
    ! Fixed date formats to only contain YYYY MM and DD.
      Plus the format itself corrected in a few places.

  * utils/hbmk/hbmk.prg
    + Added TODO
    % Added ANNOUNCE HB_GTSYS / REQUEST HB_GT_STD_DEFAULT.
      Since this tools doesn't need anything fullscreen, and
      this way it's faster smaller, yet portable.

  * ChangeLog
    * Few old TODO/TOFIX statuses updated.
2009-02-16 20:19:26 +00:00
Viktor Szakats
6b15363e5d 2009-02-16 18:48 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
- contrib/hbct/tests/hbmk.bat
  - contrib/hbcurl/tests/hbmk.bat
  + contrib/hbcurl/tests/hbcurl.hbp
  - contrib/hbclipsm/tests/hbmk.bat
  + contrib/hbclipsm/tests/hbclipsm.hbp
  - contrib/hbcrypt/tests/hbmk.bat
  + contrib/hbcrypt/tests/hbcrypt.hbp
  - contrib/examples/pp/hbmk.bat
  + contrib/examples/pp/pp.hbm
  - contrib/examples/guestbk/hbmk.bat
  + contrib/examples/guestbk/guestbk.hbm
  - contrib/examples/pe/hbmk.bat
  + contrib/examples/pe/pe.hbm
  - contrib/examples/hbsqlit2/tests/hbmk.bat
  + contrib/examples/hbsqlit2/tests/hbsqlit2.hbp
  - contrib/examples/hscript/hbmk.bat
  + contrib/examples/hscript/hscript.hbm
  - utils/hbdoc/hbmk.bat
  + utils/hbdoc/hbdoc.hbm
    * Converted some DOS/WIN batch files to platform
      independent .hbm/.hbp files.
    ; Please test them.

  * ChangeLog
    + Marked DBCREATETEMP() as DONE.
2009-02-16 17:49:28 +00:00
Viktor Szakats
23127c393a 2009-02-17 12:48 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* include/hbapicdp.h
   * common.mak
   * source/codepage/Makefile
   + source/codepage/ucmacce.c
   + source/codepage/ucmacice.c
   + source/codepage/uc424.c
   + source/codepage/ucmacrom.c
   + source/codepage/ucmacgrk.c
   + source/codepage/uc037.c
   + source/codepage/uc875.c
   + source/codepage/uc1026.c
   + source/codepage/ucascii.c
   + source/codepage/ucatari.c
   + source/codepage/ucmaccyr.c
   + source/codepage/uc1006.c
   + source/codepage/ucnext.c
   + source/codepage/ucmactrk.c
   + source/codepage/uc856.c
   + source/codepage/uc500.c
     + Added missing codepages. Except for multi-byte ones,
       which I believe are not supported by the current
       Harbour infrastructure.

   * utils/hbmk/hbmk.prg
     ! Minor.
2009-02-16 11:50:35 +00:00
Viktor Szakats
cd5c391aff 2009-02-17 11:52 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    + Added support to pass .hbp files on the command line.

  * contrib/hbwin/wapi_commctrl.c
  * contrib/hbwin/hbwapi.h
    ! Remaining comments changed to ANSI.
2009-02-16 10:53:16 +00:00
Viktor Szakats
455502872b 2009-02-17 09:25 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* contrib/hbapollo/tests/hbapollo.hbp
    + Added filters.
    ; TOFIX: hbapollo test doesn't link with MSVC.

  - contrib/hbapollo/tests/hbmk.bat
  - contrib/gtwvg/tests/hbmk.bat
  - contrib/hbbtree/tests/hbmk.bat
  - contrib/examples/terminal/hbmk.bat
  - contrib/examples/terminal/hbmk_trm_appn.bat
    - Removed batch versions of make files.
      Go to the directory the source are located and
      use the .hbm files where there is one, or just pass
      the .prg name to hbmk.exe.

  * utils/hbmk/hbmk.prg
    ! Fixed handling lib/source files with double extensions.
    ! Fixed to not add empty items to lists in some occasions.
    + Added -q to suppress informational output + header.
2009-02-16 08:25:59 +00:00
Viktor Szakats
ac54370493 2009-02-17 02:16 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
- bin/hbmk.bat
  - bin/hbmk_gcc.bat
  - bin/hbmk_os2.cmd
  - bin/hbmk_ow.bat
  - bin/hbmk_b32.bat
  - bin/hbmk_vc.bat
    - Removed make files obsoleted by new hbmk tool.
      Old calling convention, features, switches, envvars
      continue to work.
      WARNING: If you've called hbmk as hbmk.bat,
               you'll need to change that to simply hbmk.

  * contrib/hbodbc/odbc.c
    * Minor formatting.

  * utils/hbmk/hbmk.prg
    ! Fixed owatcom link commands. (it was also wrong
      in hbmk.bat)
    + Added -debug support for owatcom. (untested)
    + Added rsxnt/rsx32 support in an unobtrusive way.
2009-02-16 01:18:00 +00:00
Viktor Szakats
0bbab2a284 2009-02-17 00:40 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* common.mak
  * make_b32.mak
  * make_vc.mak
  * make_gcc.mak
  * utils/Makefile
  - utils/hbmake
    - Removed hbmake from repository.
2009-02-15 23:40:18 +00:00
Viktor Szakats
f18b3c3cb2 2009-02-17 00:33 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/compiler/hbusage.c
    + Added Vailton Renato to credit list.

  * utils/hbmk/hbmk.prg
    + Cleanups and additions to help screen.
    ! Fixed dm/dmc compiler ID.

  - config/win/dm.cf
  + config/win/dmc.cf
  * contrib/gtalleg/Makefile
  * contrib/hbwhat/Makefile
    * Digital Mars C compiler ID changed from dm to dmc.
      (they also have a D compiler f.e.)
2009-02-15 23:34:57 +00:00
Viktor Szakats
50d7dbd784 2009-02-16 20:54 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    + Added support for '#' comment lines in .hbm files.
    + Added support to automatically convert slashes/backslashes
      in passed libnames and prg options.
    * Cleanup on computing Harbour location. I didn't test all
      situations here. This should fix previous versions not
      honoring explicit HB_*_INSTALL envvars.
    + Added support for POCC (untested).

   + contrib/hbct/tests/hbct.hbp
   + contrib/examples/terminal/terminal.hbp
   + contrib/examples/terminal/trm_appn.hbm
     + Added new hbmk files to show what it takes to replace
       the current system, but this time fully supporting
       all Harbour platforms.
       To use these just run hbmk, either from the path, or
       by directly pointing to it:
       ..\..\..\bin\hbmk.exe <test.prg>
       ..\..\..\bin\hbmk.exe trm_appn.hbm
       .exe can be dropped as soon as we delete out hbmk.bat file.
2009-02-15 20:14:40 +00:00
Viktor Szakats
3be140b2ec 2009-02-16 18:37 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    + Added POCC and DMC autodetection.
    + Added screen message when no C compiler could be
      autodetected.
    ! owatcom was missing from OS/2 supported compiler 
      internal list.
2009-02-15 17:37:12 +00:00
Viktor Szakats
ad9a1de4a1 2009-02-16 17:45 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    + Added support for -map switch to create a map file.
    + Added support for -run switch to run the created executable.
    + Script files can be passed without '@' prefix if using the
      extension '.hbm'. So 'hbmk myscript.hbm' will now also work.
    + Now possible to negate most switches using a '-' postfix:
      'hbmk -strip-'
    + Added '-notrace'/'-trace-' switches to disable tracing.
    + Some steps towards Windows resource support.
    + Added support for 'cflags=' and 'ldflags=' in .hbp files.
    + Added mini architecture/compiler filter which can be used
      in every line of an .hbp file, and also for every library
      passed on the command line:
      hbmk hello.prg -lonlyforlinux{linux}
      The filter expression can use paranthesis, '&' for AND,
      '|' for OR and '!' for not. F.e.: {linux&!owatcom}
    % Minor optimizations.

  + utils/hbmk/examples
  + utils/hbmk/examples/whoo.hbp
  + utils/hbmk/examples/c4w.hbp
  + utils/hbmk/examples/minigui.hbp
  + utils/hbmk/examples/hwgui.hbp
  + utils/hbmk/examples/fwh.hbp
    + Added few example for .hbp files to support 3rd party
      packages. These may be removed, as it's better if these
      are supplied by the packages themselves.
      NOTE: I took these from hbmake, and they are probably
            obsolete.
2009-02-15 16:46:28 +00:00
Viktor Szakats
15ba3068e3 2009-02-15 08:56 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    + Added -bldflags option which tells hbmk to also
      apply user build flags (HB_USER_*FLAGS) used when
      building Harbour.
    * Minor internal cleanups.
    ! Typo in help screen.
2009-02-15 07:58:03 +00:00
Viktor Szakats
15918b234c 2009-02-15 02:30 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    ! Fix to previous commit.
    * Help screen made more compact.
2009-02-15 01:29:22 +00:00
Viktor Szakats
e380960de0 2009-02-15 02:22 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    + Added support for parameters passed in files:
      'hbmk @myprogram.hbm'.
      Multiple scripts can be passed, and they can be
      combined with normal command line options.
      This makes it possible to supply quasi make files
      for programs.
    + Added support for hbmake parameter (.hbp) files. hbmk
      will scan current dir for .hbp files and process them.
      .hbp files can specify user libs, .prg options, can
      control MT, GUI, NULRDD, SHARED, DEBUG, STRIP and can
      select GT. This makes it ideal to offer automatic setup
      for lib dependent programs, f.e. an .hbp can be places
      in contrib test dirs to allow for a configuration free
      make process without the need of any helper batch/script
      files. 3rd party makers can also supply .hbp file for
      the same effect, f.e. xhgtk, hwgui support may be added
      this way, without hard-wiring knowledge into hbmk itself.
      -nohbp disables processing of these files.
    + Added support for HB_GT envvar.
    + -o support for win/msvc.
    ! Fix to GT handling and -shared to for msvc and bcc32.
    ! Fixed some envvar names.

  * utils/hbi18n/hbi18n.prg
    * Minor typo.
2009-02-15 01:21:12 +00:00
Viktor Szakats
fda4d02e93 2009-02-14 19:50 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    + Added -strip/nostrip switch and implemented for GCC/GPP.
    + Added -trace switch to see executed commands.
    + Added negative switches: -std, -st, -nodebug
    + Added detection whether Harbour is installed in default system
      locations on *NIX systems. If it is, turn on shared libraries
      by default for all *NIX systems.
    + Added support for GT selection with -gt??? switch.
      (using .prg method, not .c as in hbmk bash script)
    + Added support for linux/gpp.
    ; NOTE: Some things still missing:
      - details of *NIX stuff, systems libs, switches,
        etc, etc.
      - -fullstatic not yet supported.
      - fmstat/nofmstat. It would be good to find a
        more easily manageable way to influence that.
        Current one is make system dependent and a bit hackish.
      - handling 3rd party libs. These should be supported
        by supplying proper parameter, and we can provide
        example scripts for these libs. Hard-wiring them
        into core Harbour is quite dangerous.
      - "MAIN" function override. I'd rather leave this out,
        and clear up the situation with entry procs.
      - gtsln and gtcrs support.
      - Watcom, OS/2, *NIX not tested.
      - Built-in support for our contribs. For clear
        separation of components contribs shouldn't be
        referred to in this core component.
      - Filtering foreign system libs passed on the command
        line for platforms not needing them. The goal is to
        be able to use as simple and _portable_ hbmk command
        lines as possible.
      - Support for POCC, DM.
    ; TODO:
      - Switch to portable command lines in hbmk.bat files.
        (Win9x will be supported again).
      - Remove bin/hbmk*.bat, bin/hbmk*.cmd, util/hbmake/*.
      - Cleanup on variable names in hbmk.prg.

  * tests/testid.prg
    * Minor cleanup.
2009-02-14 18:47:59 +00:00
Viktor Szakats
9440a0000b 2009-02-14 17:34 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    ! Fixes after testing with MSVC and MINGW both static and dynamic mode.
2009-02-14 16:35:17 +00:00
Viktor Szakats
e5713107b1 2009-02-14 14:23 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    - Added support for -o option for win/bcc32.

  - tests/hbmk_vc.bat
  - tests/hbmk_b32.bat
  + contrib/hbmysql/utils/hbmk.bat
  - contrib/hbmysql/utils/hbmk_b32.bat
  - contrib/hbmysql/utils/hbmk_vc.bat
  + contrib/hbmysql/tests/hbmk.bat
  - contrib/hbmysql/tests/hbmk_b32.bat
  - contrib/hbmysql/tests/hbmk_vc.bat
  + contrib/hbct/tests/hbmk.bat
  - contrib/hbct/tests/hbmk_b32.bat
  - contrib/hbct/tests/hbmk_vc.bat
  + contrib/hbodbc/tests/hbmk.bat
  - contrib/hbodbc/tests/hbmk_b32.bat
  - contrib/hbodbc/tests/hbmk_vc.bat
  + contrib/xhb/tests/hbmk.bat
  - contrib/xhb/tests/hbmk_b32.bat
  - contrib/xhb/tests/hbmk_vc.bat
  + contrib/hbtpathy/tests/hbmk.bat
  - contrib/hbtpathy/tests/hbmk_b32.bat
  - contrib/hbtpathy/tests/hbmk_vc.bat
  + contrib/hbmsql/tests/hbmk.bat
  - contrib/hbmsql/tests/hbmk_b32.bat
  - contrib/hbmsql/tests/hbmk_vc.bat
  + contrib/hbsqlit3/tests/hbmk.bat
  - contrib/hbsqlit3/tests/hbmk_b32.bat
  - contrib/hbsqlit3/tests/hbmk_vc.bat
  + contrib/hbole/tests/hbmk.bat
  - contrib/hbole/tests/hbmk_b32.bat
  - contrib/hbole/tests/hbmk_vc.bat
  + contrib/hbmzip/tests/hbmk.bat
  - contrib/hbmzip/tests/hbmk_b32.bat
  - contrib/hbmzip/tests/hbmk_vc.bat
  + contrib/hbapollo/tests/hbmk.bat
  - contrib/hbapollo/tests/hbmk_b32.bat
  - contrib/hbapollo/tests/hbmk_vc.bat
  + contrib/hbfbird/tests/hbmk.bat
  - contrib/hbfbird/tests/hbmk_b32.bat
  - contrib/hbfbird/tests/hbmk_vc.bat
  + contrib/hbziparc/tests/hbmk.bat
  - contrib/hbziparc/tests/hbmk_b32.bat
  - contrib/hbziparc/tests/hbmk_vc.bat
  + contrib/hbnf/tests/hbmk.bat
  - contrib/hbnf/tests/hbmk_b32.bat
  - contrib/hbnf/tests/hbmk_vc.bat
  + contrib/hbcurl/tests/hbmk.bat
  - contrib/hbcurl/tests/hbmk_b32.bat
  - contrib/hbcurl/tests/hbmk_vc.bat
  + contrib/rddsql/tests/hbmk.bat
  - contrib/rddsql/tests/hbmk_b32.bat
  - contrib/rddsql/tests/hbmk_vc.bat
  + contrib/hbhpdf/tests/hbmk.bat
  - contrib/hbhpdf/tests/hbmk_b32.bat
  - contrib/hbhpdf/tests/hbmk_vc.bat
  + contrib/rddado/tests/hbmk.bat
  - contrib/rddado/tests/hbmk_b32.bat
  - contrib/rddado/tests/hbmk_vc.bat
  + contrib/gtwvg/tests/hbmk.bat
  - contrib/gtwvg/tests/hbmk_b32.bat
  - contrib/gtwvg/tests/hbmk_vc.bat
  + contrib/hbpgsql/tests/hbmk.bat
  - contrib/hbpgsql/tests/hbmk_b32.bat
  - contrib/hbpgsql/tests/hbmk_vc.bat
  + contrib/rddads/tests/hbmk.bat
  - contrib/rddads/tests/hbmk_b32.bat
  - contrib/rddads/tests/hbmk_vc.bat
  + contrib/hbclipsm/tests/hbmk.bat
  - contrib/hbclipsm/tests/hbmk_b32.bat
  - contrib/hbclipsm/tests/hbmk_vc.bat
  + contrib/hbfimage/tests/hbmk.bat
  - contrib/hbfimage/tests/hbmk_b32.bat
  - contrib/hbfimage/tests/hbmk_vc.bat
  + contrib/hbgd/tests/hbmk.bat
  - contrib/hbgd/tests/hbmk_b32.bat
  - contrib/hbgd/tests/hbmk_vc.bat
  + contrib/hbmisc/tests/hbmk.bat
  - contrib/hbmisc/tests/hbmk_b32.bat
  - contrib/hbmisc/tests/hbmk_vc.bat
  + contrib/hbgf/tests/hbmk.bat
  - contrib/hbgf/tests/hbmk_b32.bat
  - contrib/hbgf/tests/hbmk_vc.bat
  + contrib/hbtip/tests/hbmk.bat
  - contrib/hbtip/tests/hbmk_b32.bat
  - contrib/hbtip/tests/hbmk_vc.bat
  + contrib/hbwin/tests/hbmk.bat
  - contrib/hbwin/tests/hbmk_b32.bat
  - contrib/hbwin/tests/hbmk_vc.bat
  + contrib/hbvpdf/tests/hbmk.bat
  - contrib/hbvpdf/tests/hbmk_b32.bat
  - contrib/hbvpdf/tests/hbmk_vc.bat
  + contrib/hbbtree/tests/hbmk.bat
  - contrib/hbbtree/tests/hbmk_djg.bat
  - contrib/hbbtree/tests/hbmk_b32.bat
  - contrib/hbbtree/tests/hbmk_vc.bat
  + contrib/hbcrypt/tests/hbmk.bat
  - contrib/hbcrypt/tests/hbmk_b32.bat
  - contrib/hbcrypt/tests/hbmk_vc.bat
  + contrib/hbssl/tests/hbmk.bat
  - contrib/hbssl/tests/hbmk_b32.bat
  - contrib/hbssl/tests/hbmk_vc.bat
  + contrib/hbwhat/tests/hbmk.bat
  - contrib/hbwhat/tests/hbmk_b32.bat
  - contrib/hbwhat/tests/hbmk_vc.bat
  - source/rdd/usrrdd/example/hbmk_b32.bat
  - source/rdd/usrrdd/example/hbmk_vc.bat
    % Updated for new hbmk.bat and hbmk.exe.
2009-02-14 13:26:30 +00:00
Viktor Szakats
24768861bf 2009-02-14 13:25 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk.prg
    + Added linux/owatcom, os2/icc support. (completely untested)
2009-02-14 12:26:53 +00:00
Viktor Szakats
f7289cf019 2009-02-14 13:17 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* make_b32.mak
  * make_vc.mak
  * make_gcc.mak
  * common.mak
  * utils/Makefile
    + Added hbmk to make systems.

  * utils/hbmk/hbmk.prg
    + Update. Second pass, it's now ready for testing. I've
      only tried with BCC yet.
      Please test and if possible update internal setup
      for various platforms/compilers.
2009-02-14 12:18:24 +00:00
Viktor Szakats
1c75d2b214 2009-02-13 22:00 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
+ utils/hbmk
  + utils/hbmk/hbmk.prg
  + utils/hbmk/Makefile
    + Added hbmk .prg implementation. First pass, work in progress,
      unfinished. It aims to fully replace hbmk.bat, hbmk_os2.cmd
      and possibly/eventually hbmk bash script, with similar
      functionality. Beyond that it's meant to support all
      compiler/platform combination we happen to have under /config.
2009-02-13 21:14:47 +00:00
Viktor Szakats
4bc0533891 2009-02-13 20:10 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* make_b32.bat
  * tests/rddtest/make_c52.bat
  * tests/run_prg.bat
  * tests/hbmk_gnu.bat
  * tests/hbmk_vc.bat
  * tests/hbmk_b32.bat
  * tests/run_prg_all.bat
  * bin/hbmk.bat
  * bin/hbmk_os2.cmd
  * bin/postinst.bat
  * make_vc.bat
  * make_gnu_os2.cmd
  * make_gnu.bat
  * contrib/make_b32_all.bat
  * contrib/mtpl_b32.bat
  * contrib/make_vc_all.bat
  * contrib/mtpl_vc.bat
  * contrib/examples/pp/hbmk.bat
  * contrib/examples/guestbk/hbmk.bat
  * contrib/examples/pe/hbmk.bat
  * contrib/examples/hbsqlit2/tests/hbmk.bat
  * contrib/examples/uhttpd/hbmk.bat
  * contrib/examples/dbu/hbmk.bat
  * contrib/examples/terminal/hbmk.bat
  * contrib/examples/terminal/hbmk_trm_appn.bat
  * contrib/examples/hscript/hbmk.bat
  * contrib/examples/rl/hbmk.bat
  * utils/hbdoc/hbmk.bat
  * utils/hbextern/make_c5x.bat
  * utils/hbmake/hbmk.bat
  * utils/hbtest/make_c5x.bat
  * utils/hbtest/make_xpp.bat
    * Minor formatting.
    * Cleanups to refer to simply 'hbmk'.

  ; TODO: Add support for other than bcc/msvc compiler for
          HB_USER_LIBS. Change HB_USER_LIBS settings to
          contain the raw lib list without extensions.
          This is where batch capabilities end, so this
          might need a .prg rewrite.
2009-02-13 19:24:37 +00:00
Viktor Szakats
24037047eb 2009-02-13 19:00 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hbmk.bat
    % Compiler detection made faster.
    ; TOFIX: MinGW requires different library names than the rest
             of compilers, so it currently won't work for hbmk.bat
             files where HB_USER_LIBS is set.

  + contrib/examples/pp/hbmk.bat
  - contrib/examples/pp/hbmk_b32.bat
  - contrib/examples/pp/hbmk_vc.bat
  + contrib/examples/guestbk/hbmk.bat
  - contrib/examples/guestbk/hbmk_b32.bat
  - contrib/examples/guestbk/hbmk_vc.bat
  + contrib/examples/pe/hbmk.bat
  - contrib/examples/pe/hbmk_b32.bat
  - contrib/examples/pe/hbmk_vc.bat
  + contrib/examples/hbsqlit2/tests/hbmk.bat
  - contrib/examples/hbsqlit2/tests/hbmk_b32.bat
  - contrib/examples/hbsqlit2/tests/hbmk_vc.bat
  + contrib/examples/uhttpd/hbmk.bat
  - contrib/examples/uhttpd/hbmk_b32.bat
  - contrib/examples/uhttpd/hbmk_vc.bat
  + contrib/examples/terminal/hbmk.bat
  - contrib/examples/terminal/hbmk_b32.bat
  - contrib/examples/terminal/hbmk_vc.bat
  + contrib/examples/terminal/hbmk_trm_appn.bat
  - contrib/examples/terminal/hbmk_b32_trm_appn.bat
  - contrib/examples/terminal/hbmk_vc_trm_appn.bat
  + contrib/examples/rl/hbmk.bat
  - contrib/examples/rl/hbmk_b32.bat
  - contrib/examples/rl/hbmk_vc.bat
  + utils/hbdoc/hbmk.bat
  - utils/hbdoc/hbmk_b32.bat
  - utils/hbdoc/hbmk_vc.bat
  + utils/hbmake/hbmk.bat
  - utils/hbmake/hbmk_b32.bat
  - utils/hbmake/hbmk_vc.bat
    % Changed to generic make files.
2009-02-13 18:02:34 +00:00
Viktor Szakats
a09a5fd92c 2009-02-13 17:26 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hbmk.bat
    + Added support for pure .c projects. (like pp)

  * contrib/examples/pp/hbmk_b32.bat
  * contrib/examples/pp/hbmk_vc.bat
  * contrib/examples/guestbk/hbmk_b32.bat
  * contrib/examples/guestbk/hbmk_vc.bat
  * contrib/examples/pe/hbmk_b32.bat
  * contrib/examples/pe/hbmk_vc.bat
  * contrib/examples/hbsqlit2/tests/hbmk_b32.bat
  * contrib/examples/hbsqlit2/tests/hbmk_vc.bat
  * contrib/examples/uhttpd/hbmk_b32.bat
  * contrib/examples/uhttpd/hbmk_vc.bat
  * contrib/examples/dbu/hbmk_b32.bat
  * contrib/examples/dbu/hbmk_vc.bat
  * contrib/examples/terminal/hbmk_b32.bat
  * contrib/examples/terminal/hbmk_b32_trm_appn.bat
  * contrib/examples/terminal/hbmk_vc.bat
  * contrib/examples/terminal/hbmk_vc_trm_appn.bat
  * contrib/examples/hscript/hbmk_b32.bat
  * contrib/examples/hscript/hbmk_vc.bat
  * contrib/examples/rl/hbmk_b32.bat
  * contrib/examples/rl/hbmk_vc.bat
  * utils/hbdoc/hbmk_b32.bat
  * utils/hbdoc/hbmk_vc.bat
  * utils/hbmake/hbmk_b32.bat
  * utils/hbmake/hbmk_vc.bat
    % Much simplified batch files. Actually the content of vc
      and b32 are fully identical, so you can easily create new
      flavours for GCC and OpenWatcom by simply making a copy by
      the name hbmk_gcc.bat or hbmk_ow.bat. Et voila.
    ; NOTE: As indicated, these won't work with Win9x anymore.

  * contrib/examples/pp/hbppcore.c
    + Added <ctype.h> to make it compile with recent Harbour.
2009-02-13 16:28:30 +00:00
Viktor Szakats
bf033badc4 2009-02-13 16:35 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hbmk.bat
    + Added detection for .PRG written in uppercase.
      (needed for DBU original sources.)
    ! Fixed to set 'echo off'

  * contrib/examples/guestbk/hbmk_b32.bat
  * contrib/examples/guestbk/hbmk_vc.bat
  * contrib/examples/dbu/hbmk_b32.bat
  * contrib/examples/dbu/hbmk_vc.bat
  * utils/hbdoc/hbmk_b32.bat
  * utils/hbdoc/hbmk_vc.bat
  * utils/hbmake/hbmk_b32.bat
  * utils/hbmake/hbmk_vc.bat
    % Switched to use hbmk instead of using local logic.

  * ChangeLog
    + Added one item to previous entry.
2009-02-13 15:36:02 +00:00
Viktor Szakats
a341b29acd 2009-02-06 23:47 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* common.mak
  * harbour-wce-spec
  * harbour-win-spec
  * harbour.spec
  * make_b32.bat
  * make_b32.mak
  * make_gcc.mak
  * make_gcc.sh
  * make_gnu.bat
  * make_gnu.sh
  * make_gnu_os2.cmd
  * make_gnu_xmingw.sh
  * make_gnu_xmingwce.sh
  * make_vc.bat
  * make_vc.mak
  * mpkg_tgz.sh
  * bin/hb-func.sh
  * bin/hb-mkslib.sh
  * bin/hbmk.bat
  * bin/hbmk_os2.cmd
  * bin/postinst.sh
  * config/bin.cf
  * config/bsd/gcc.cf
  * config/darwin/gcc.cf
  * config/dos/bcc16.cf
  * config/dos/djgpp.cf
  * config/dos/owatcom.cf
  * config/dos/rsx32.cf
  * config/hpux/gcc.cf
  * config/lib.cf
  * config/linux/gcc.cf
  * config/linux/owatcom.cf
  * config/os2/gcc.cf
  * config/os2/icc.cf
  * config/rules.cf
  * config/sunos/gcc.cf
  * config/win/bcc32.cf
  * config/win/dm.cf
  * config/win/gcc.cf
  * config/win/icc.cf
  * config/win/mingw.cf
  * config/win/mingwce.cf
  * config/win/msvc.cf
  * config/win/msvcce.cf
  * config/win/owatcom.cf
  * config/win/pocc.cf
  * config/win/pocc64.cf
  * config/win/poccce.cf
  * config/win/rsxnt.cf
  * config/win/xcc.cf
  * contrib/gtalleg/Makefile
  * contrib/hbapollo/Makefile
  * contrib/hbcurl/Makefile
  * contrib/hbfbird/Makefile
  * contrib/hbfimage/Makefile
  * contrib/hbgd/Makefile
  * contrib/hbgd/tests/hbmk_b32.bat
  * contrib/hbgd/tests/hbmk_vc.bat
  * contrib/hbgf/hbgfgtk/Makefile
  * contrib/hbhpdf/Makefile
  * contrib/hbmysql/Makefile
  * contrib/hbodbc/Makefile
  * contrib/hbpgsql/Makefile
  * contrib/hbssl/Makefile
  * contrib/hbtip/ChangeLog
  * contrib/hbwhat/Makefile
  * contrib/hbwhat/tests/hbmk_b32.bat
  * contrib/hbwhat/tests/hbmk_vc.bat
  * contrib/mtpl_b32.bat
  * contrib/mtpl_b32.mak
  * contrib/mtpl_gcc.mak
  * contrib/mtpl_gcc.sh
  * contrib/mtpl_vc.bat
  * contrib/mtpl_vc.mak
  * contrib/rddads/Makefile
  * contrib/rddsql/sddfb/Makefile
  * contrib/rddsql/sddmy/Makefile
  * contrib/rddsql/sddpg/Makefile
  * doc/es/tracing.txt
  * doc/gmake.txt
  * doc/tracing.txt
  * include/hbapi.h
  * source/main/harbour.c
  * source/pp/hbpp.c
  * source/rdd/dbffpt/Makefile
  * source/vm/cmdarg.c
  * source/vm/Makefile
  * source/vm/vmmt/Makefile
  * tests/multifnc/Makefile
  * tests/testid.prg
  * utils/hbdoc/Makefile
  * utils/hbi18n/Makefile
  * utils/hbmake/hbmake.prg
  * utils/hbmake/Makefile
  * utils/hbrun/Makefile
  * utils/hbtest/Makefile
    * Renamed remaining build configration envvars:
      - PRG_USR -> HB_USER_PRGFLAGS
      - C_USR   -> HB_USER_CFLAGS
      - L_USR   -> HB_USER_LDFLAGS
      - A_USR   -> HB_USER_AFLAGS
      - MK_USR  -> HB_USER_MAKEFLAGS
      (finally settled with HB_USER* instead of HB_USR*,
      this also means that HB_USER_LIBS was kept unchanged.)
    ; Please update your environment.
      You may use these commands to make it easy:
      gsar -o -sPRG_USR -rHB_USER_PRGFLAGS  *
      gsar -o -sC_USR   -rHB_USER_CFLAGS    *
      gsar -o -sL_USR   -rHB_USER_LDFLAGS   *
      gsar -o -sA_USR   -rHB_USER_AFLAGS    *
      gsar -o -sMK_USR  -rHB_USER_MAKEFLAGS *
2009-02-06 23:15:37 +00:00
Viktor Szakats
b129b78a47 2009-02-06 19:03 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* include/hbdefs.h
    + Added HB_ISALNUM() macro.
    + Added HB_ISSPACE() macro. Please review.

  * source/contrib/hbver.c
    * isspace() -> HB_ISSPACE().

  * contrib/rddads/ads1.c
    ! toupper() -> HB_TOUPPER()

  * contrib/xhb/hbxml.c
    + Readded #include <ctype.h> because this one still uses isspace().

  * include/hbcomp.h
  * include/hbmacro.h
  * contrib/hbct/token1.c
  * contrib/hbodbc/odbc.c
  * contrib/xhb/freadlin.c
  * contrib/rddsql/sqlmix.c
  * contrib/gtwvg/gtwvg.h
  * contrib/gtwvg/wvggui.h
  * contrib/rddads/adsx.c
  * contrib/rddads/ads1.c
  * contrib/hbclipsm/time.c
  * contrib/hbclipsm/status.c
  * contrib/hbmisc/dates2.c
  * contrib/hbwin/win_ole.c
  * contrib/examples/pp/pp.c
  * source/debug/dbgentry.c
  * source/common/hbver.c
  * source/rtl/chrasc.c
  * source/rtl/philes.c
  * source/rtl/dirdrive.c
  * source/rtl/dateshb.c
  * source/rtl/philesx.c
  * source/rtl/disksphb.c
  * source/rtl/soundex.c
  * source/rtl/gtapi.c
  * source/rtl/filesys.c
  * source/codepage/cppt850.c
  * source/codepage/cpuawin.c
  * source/codepage/cpde850.c
  * source/codepage/cpsv850.c
  * source/codepage/cpeswinc.c
  * source/codepage/cptr857.c
  * source/codepage/cpru866.c
  * source/codepage/cproiso.c
  * source/codepage/cprowin.c
  * source/codepage/cpeswinm.c
  * source/codepage/cpes850.c
  * source/codepage/cpcs852.c
  * source/codepage/cpitisb.c
  * source/codepage/cphu852.c
  * source/codepage/cpsk852.c
  * source/codepage/cpplmaz.c
  * source/codepage/cpesisoc.c
  * source/codepage/cppliso.c
  * source/codepage/cpbgmik.c
  * source/codepage/cpplwin.c
  * source/codepage/cpbg866.c
  * source/codepage/cpltwin.c
  * source/codepage/cphu852s.c
  * source/codepage/cpptiso.c
  * source/codepage/cpel737.c
  * source/codepage/cpsrwin.c
  * source/codepage/cpsviso.c
  * source/codepage/cpdeiso.c
  * source/codepage/cpfr850.c
  * source/codepage/cpsvwin.c
  * source/codepage/cpdewin.c
  * source/codepage/cphr437.c
  * source/codepage/cpes850c.c
  * source/codepage/cphr852.c
  * source/codepage/cpua866.c
  * source/codepage/cpit850.c
  * source/codepage/cpit437.c
  * source/codepage/cpsl437.c
  * source/codepage/cpsl852.c
  * source/codepage/cphuwins.c
  * source/codepage/cpcsiso.c
  * source/codepage/cpesiso.c
  * source/codepage/cpcswin.c
  * source/codepage/cpeswin.c
  * source/codepage/cphuiso.c
  * source/codepage/cpskiso.c
  * source/codepage/cprukoi.c
  * source/codepage/cphuwin.c
  * source/codepage/cpskwin.c
  * source/codepage/cp_tpl.c
  * source/codepage/cpruiso.c
  * source/codepage/cpruwin.c
  * source/codepage/cphuisos.c
  * source/codepage/cpelwin.c
  * source/codepage/cpro852.c
  * source/codepage/cpfriso.c
  * source/codepage/cpfrwin.c
  * source/codepage/cpitiso.c
  * source/codepage/cphrwin.c
  * source/codepage/cpsliso.c
  * source/codepage/cpitwin.c
  * source/codepage/cpslwin.c
  * source/codepage/cpcskam.c
  * source/codepage/cpsvclip.c
  * source/codepage/cpbgiso.c
  * source/codepage/cptrwin.c
  * source/codepage/cpskkam.c
  * source/codepage/cpbgwin.c
  * source/codepage/cpuakoi.c
  * source/codepage/cppl852.c
  * utils/hbdoc/hbdfrdln.c
  * utils/hbmake/hbmfrdln.c
    % Removed #include <ctype.h>. Most of these didn't need it anyway.
2009-02-06 18:23:08 +00:00
Viktor Szakats
1d13959a7b 2009-02-04 01:09 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* include/extend.api
  * include/hbgtcore.h
  * include/hbwince.h
  * include/hbthread.h
  * include/hbdefs.h
  * include/hbsetup.h
  * include/hbapi.h
  * include/clipdefs.h
  * include/hbatomic.h
  * contrib/hbmysql/mysql.c
  * contrib/hbct/ctnet.c
  * contrib/hbct/files.c
  * contrib/hbct/dattime3.c
  * contrib/hbct/disk.c
  * contrib/hbodbc/odbc.c
  * contrib/xhb/hboutdbg.c
  * contrib/xhb/hbsyslog.c
  * contrib/xhb/filestat.c
  * contrib/hbmsql/msql.c
  * contrib/hbole/ole2.c
  * contrib/hbmzip/hbmzip.c
  * contrib/hbapollo/apollo.c
  * contrib/hbfbird/firebird.c
  * contrib/hbnf/descendn.c
  * contrib/hbnf/getenvrn.c
  * contrib/rddsql/sqlmix.c
  * contrib/gtwvg/gtwvg.c
  * contrib/gtwvg/wvggui.c
  * contrib/gtwvg/wvgwin.c
  * contrib/gtwvg/wvgutils.c
  * contrib/gtwvg/wvgcore.c
  * contrib/rddads/adsx.c
  * contrib/rddads/rddads.h
  * contrib/rddads/adsmgmnt.c
  * contrib/rddads/adsfunc.c
  * contrib/rddads/ads1.c
  * contrib/hbfimage/fi_winfu.c
  * contrib/hbfimage/fi_wrp.c
  * contrib/hbgd/gd.ch
  * contrib/hbgd/gdwrp.c
  * contrib/hbgf/hbgfwin/winapi.c
  * contrib/hbtip/utils.c
  * contrib/hbtip/ChangeLog
  * contrib/hbwin/win_prn2.c
  * contrib/hbwin/win_osc.c
  * contrib/hbwin/win_misc.c
  * contrib/hbwin/win_prt.c
  * contrib/hbwin/win_dll.c
  * contrib/hbwin/win_ole.c
  * contrib/hbwin/win_prn1.c
  * contrib/hbwin/win_regc.c
  * contrib/hbssl/sslsess.c
  * contrib/hbssl/sslrand.c
  * contrib/hbwhat/whtdate.c
  * contrib/hbwhat/whtini.c
  * contrib/hbwhat/whtcret.c
  * contrib/hbwhat/whthead.c
  * contrib/hbwhat/whtilst.c
  * contrib/hbwhat/whtreg.c
  * contrib/hbwhat/whtclpb.c
  * contrib/hbwhat/whtmous.c
  * contrib/hbwhat/whtrgn.c
  * contrib/hbwhat/whtmeta.c
  * contrib/hbwhat/whttbar.c
  * contrib/hbwhat/whtrect.c
  * contrib/hbwhat/whtbrsh.c
  * contrib/hbwhat/whtgdi.c
  * contrib/hbwhat/whtdlg.c
  * contrib/hbwhat/whtview.c
  * contrib/hbwhat/whtsys.c
  * contrib/hbwhat/whtmain.c
  * contrib/hbwhat/whtwnd.c
  * contrib/hbwhat/whtmmcap.c
  * contrib/hbwhat/whtfont.c
  * contrib/hbwhat/whtdir.c
  * contrib/hbwhat/whtbmp.c
  * contrib/hbwhat/whtkbrd.c
  * contrib/hbwhat/whtpen.c
  * contrib/hbwhat/whttext.c
  * contrib/hbwhat/whtdc.c
  * contrib/hbwhat/whtdraw.c
  * contrib/examples/uhttpd/socket.c
  * contrib/examples/uhttpd/uhttpdc.c
  * source/vm/mainwin.c
  * source/vm/maindll.c
  * source/vm/maindllh.c
  * source/vm/hvm.c
  * source/vm/cmdarg.c
  * source/vm/maindllp.c
  * source/vm/fm.c
  * source/vm/extrap.c
  * source/vm/thread.c
  * source/vm/dynlibhb.c
  * source/vm/set.c
  * source/common/hbgete.c
  * source/common/hbver.c
  * source/common/hbfsapi.c
  * source/common/hbwince.c
  * source/common/hbdate.c
  * source/rtl/diskspac.c
  * source/rtl/console.c
  * source/rtl/gtwin/gtwin.c
  * source/rtl/fserror.c
  * source/rtl/hbgtcore.c
  * source/rtl/gtclip.c
  * source/rtl/fstemp.c
  * source/rtl/idle.c
  * source/rtl/oemansi.c
  * source/rtl/disksphb.c
  * source/rtl/net.c
  * source/rtl/gtgui/gtgui.c
  * source/rtl/seconds.c
  * source/rtl/gttone.c
  * source/rtl/hbproces.c
  * source/rtl/gtkeycod.c
  * source/rtl/version.c
  * source/rtl/gtwvt/gtwvt.c
  * source/rtl/hbrandom.c
  * source/rtl/hbinet.c
  * source/rtl/hbffind.c
  * source/rtl/gtsys.c
  * source/rtl/filesys.c
  * source/rtl/gtkbstat.c
  * source/rtl/isprint.c
  * source/compiler/cmdcheck.c
  * utils/hbmake/hbmlang.c
    * #defines renamed to be bitwidth-independent.
      - HB_OS_WIN_32_USED -> HB_OS_WIN_USED
      - HB_OS_WIN_32      -> HB_OS_WIN
    ; Please modify your code accordingly.

  * include/hbdefs.h
  * include/hbsetup.h
    + Added compatibility to still understand HB_OS_WIN_32_USED,
      and to #define HB_OS_WIN_32 in addition to HB_OS_WIN.
      This means that old code will still work, but these
      compatibility features will be removed in the future,
      so it's recommended to change the code as above.
2009-02-04 00:18:56 +00:00
Viktor Szakats
a97b596105 2009-01-31 12:35 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbrun/hbrun.prg
    + If a .dbf file is passed on the command line, hbrun will
      open it.

  * contrib/examples/uhttpd/hbmk_vc.bat
    * Updated.

  * contrib/examples/uhttpd/hbmk_b32.bat
    % Minor opt.
2009-01-31 11:36:43 +00:00
Przemyslaw Czerpak
93fab23315 2009-01-21 17:52 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/common.mak
  * harbour/source/rtl/Makefile
  - harbour/source/rtl/hbi18n.c
  + harbour/source/rtl/hbi18n1.c
    * renamed hbi18n.c to hbi18n1.c to avoid conflicts with hbi18n
      program - non GNU make files needs unique file names
    ! fixed bug in internal function __I18N_HASHTABLE()

  * harbour/common.mak
  * harbour/source/rtl/Makefile
  + harbour/source/rtl/hbi18n2.prg
    + added new I18N functions to manage .pot files and generate .hbl ones.
      public functions:
      HB_I18N_loadPot( <cFile>, [<pI18N>] [, @<cErrorMsg>] ) -> <pI18N> | NIL
         Reads .pot file and returns Harbour translation set or NIL when
         error appears. In such case <cErrorMsg> is contains error message
         string. If second parameter [<pI18N>] is given then translation
         items read from .pot file are added to this set. Otherwise new
         Harbour translation set is created.
      HB_I18N_savePot( <cFile>, <pI18N> [, @<cErrorMsg>] ) -> <lSuccess>
         Generates .pot file from Harbour translation set. Please note
         that Harbour translation set does not contain additional
         information which exists in original .pot files like source
         code numbers or alternative plural forms.
      internal functions for Harbour developers which will work on I18N
      tools:
      __I18N_potArrayLoad( <cFile> [, @<cErrorMsg>] ) -> <aTrans> | NIL
         Reads .pot file and returns array with translation items or
         NIL when error appears. In such case <cErrorMsg> is contains
         error message string.
         <aTrans> is an array with translation items containing additional
         informations from .pot file which are not necessary in final
         translation sets used at runtime. It's designed for I18N tools
         written in Harbour to manage .pot files and/or create .hbl ones.
      __I18N_potArraySave( <cFile>, <aTrans> [, @<cErrorMsg>] ) -> <lSuccess>
         Generates .pot file from array with translations items.
      __I18N_potArrayJoin( <aTrans>, <aTrans2> ) -> <aTrans>
         Join two arrays with translation items. Items from <aTrans2>
         are added to <aTrans>. If given translation item already exists
         in <aTrans> (the same msgctxt and msgid) then source code references
         are merged and translations from <aTrans2> are added only if
         <aTrans> does not have it.
      __I18N_potArrayToHash( <aTrans>, [<lEmpty>] [, <hI18N>] ) -> <hI18N>
         Converts array with translation items to hash table in the format
         used internally by Harbour translation sets. It's the same format
         as used __I18N_hashTable() function. The conversion removes data
         which is not necessary for runtime translations like source code
         references or alternative source plural forms.
         If second parameter <hI18N> is given then translation items form
         <aTrans> are added to it. Otherwise new hash table with is created.
         If <lEmpty> is .T. then also items with empty translation are added
         but source strings are used instead of missing destination ones.

  * harbour/include/hbextern.ch
    + added new I18N functions

  * harbour/harbour-win-spec
  * harbour/harbour-wce-spec
  * harbour/harbour.spec
  * harbour/mpkg_tgz.sh
  * harbour/make_b32.mak
  * harbour/make_vc.mak
  * harbour/make_gcc.mak
  * harbour/common.mak
  * harbour/utils/Makefile
  + harbour/utils/hbi18n
  + harbour/utils/hbi18n/hbi18n.prg
  + harbour/utils/hbi18n/Makefile
    + added very simple application to manage .pot/.hbl files
      Syntax: hbi18n -m | -g [-o<outfile>] [-e] [-q] <files1[.pot] ...>
         -m             merge given .pot files
         -g             generate .hbl file from given .pot files
         -o<outfile>    output file name
                        default is first .pot file name with
                        .po_ (merge) or .hbl extension
         -e             do not strip empty translation rules from .hbl files
         -q             quiet mode

      TODO: extend it and add support for interactive mode which will
            allow to edit translations.
2009-01-21 16:49:03 +00:00
Viktor Szakats
8fb64a9c0c 2009-01-15 00:46 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/pp/hbpp.c
  * utils/hbdoc/hbdoc.prg
  * utils/hbmake/hbmake.prg
  * utils/hbtest/hbtest.prg
  * utils/hbrun/hbrun.prg
    * More copyrights bumped to 2009.
2009-01-15 01:39:54 +00:00
Viktor Szakats
1e62fb550e 2009-01-14 16:15 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/net.c
  * contrib/hbziparc/hbziparc.prg
  * contrib/hbct/files.c
    * Minor formatting.

  * source/rtl/gtxwc/gtxwc.c
    ! Fix to recent fix. An '!' was missing, Przemek pls check me.

  * source/rtl/philes.c
    + HB_PROGNAME() now returns absolute path in *NIX systems, too.
      (please test and refine)

  * source/lang/msgca.c
    ! Fixes from xhb.

  * contrib/hbziparc/hbziparc.prg
    * Minor correction ( = -> := )

  * source/rtl/gtwin/gtwin.c
    + Added HB_GTI_CODEPAGE support.
      As per MS docs, this works only when non-raster font is used
      in the console window. Notice that the accepted CP values are
      different from the GTWVT ones (GTWIN being the more "logical"
      one, since it's a newer API). Currently, Harbour doesn't try
      to hide these interface details.
    ; TODO: UNICODE and BOX char support for GTWIN mode.

  * source/rtl/tbrowse.prg
    * Using HB_DISPOUTATBOX() to draw column/header/footer separators.
    ; NOTE: This may cause problems if someone wants to use native
            CP (accented or other special CP specific) chars to draw
            these screen elements. Maybe an option should be added,
            or some sort of markings in the separator strings to
            control that.
            Pls REVIEW.

  * include/hbextern.ch
  * source/rtl/console.c
    + Added HB_DISPOUTATBOX() which is similar to HB_DISPOUTAT(),
      but marks the text drawn as HB_GT_ATTR_BOX, so these chars
      can be properly displayed as drawing chars, regardless of
      the selected codepage. Another difference is that this
      function only supports strings to be printed. Other types
      don't print anything.
    ; NOTE: Maybe this function could use a better name, pls
            review and decide.

  * source/rtl/gtwvt/gtwvt.c
  * source/rtl/gtwvt/gtwvt.h
    ! Fixed not accepting zero as a HB_GTI_CODEPAGE value.
    ! Fixed HB_GTI_CODEPAGE to change the codepage.
    + Added box char support in Unicode mode.
      For chars marked as HB_GT_ATTR_BOX, chars will be
      mapped to Unicode according to CP437.
    + Added box char support in non-Unicode mode.
      For chars marked as HB_GT_ATTR_BOX, OEM_CHARSET will
      always be used.
    ; NOTE: This way it's possible to use ISO/WIN codepages with
            GTWVT, while still being able to use various drawing
            chars (lines, blocks, arrows).
    ; NOTE: The available set of drawing chars depends on the
            OS OEM_CHARSET mapping _for non-Unicode Harbour_.
            For Unicode Harbour, full CP437 codepage is
            always available.
    ; NOTE: This solution doesn't go as far as (GTWXC) to
            graphically draw / emulate these chars.
    ; TODO: Add HB_GTI_BOXCP support to change hard-wired "EN" CP.

  * include/hbapigt.h
  * include/hbgtcore.h
    ! Moved HB_GT_ATTR_* macros to public headers, because they
      are needed for public API functions.

  * contrib/hbwin/win_reg.prg
    + w32_regRead(): Added second parameter to specify the default
      value returned in case the reg entry doesn't exist.
      If not specified, NIL will be returned, just like before.
    + GetRegistry(): Added 4th parameter with same purpose as above.

  * source/rtl/hbregex.c
    * Minor opt.

  * contrib/hbwin/win_misc.c
    * Added command line option parameter to WIN_RUNDETACHED().

  * include/hbapi.h
    + HB_ERRCODE (to replace ERRCODE)
    + HB_SUCCESS (to replace SUCCESS)
    + HB_FAILURE (to replace FAILURE)

  + contrib/hbwin/win_misc.c
  * contrib/hbwin/common.mak
  * contrib/hbwin/Makefile
    + WIN_SHELLEXECUTE()
      WIN_RUNDETACHED()
      WIN_LOADRESOURCE()
      Added some new Windows API wrappers.
    ; TODO: Add hb_osEncode() to them.

  * source/rtl/diskspac.c
  * source/rtl/disksphb.c
    ! Fixed DISKSPACE() and HB_DISKSPACE() for Darwin.
      Previously they had returned erroneous values.
    ; TOFIX: Probably HB_DISKSPACE() should be implemented for Watcom and CEGCC,
             just like DISKSPACE() is.

  * source/rtl/filesys.c
    ! hb_fsGetAttr() to set the returned attribute to zero
      in case of error.

  * include/hbextern.ch
  * source/rtl/philes.c
    + HB_FSETATTR( <cFileName>, @<nAttr> ) -> <lSuccess>
    + HB_FGETATTR( <cFileName>, <nAttr> ) -> <lSuccess>
    + HB_FSETDATETIME( <cFileName>, [<dDate>], [<cTime HH:MM:SS>] ) -> <lSuccess>

  * source/rtl/direct.c
    ! Fixed DIRECTORY() when called with "V" (label) parameter.
      Tested under Windows. Please test/correct for other platforms.
      On Windows, the dirspec should not contain a filemask in order
      to work.

  * contrib/hbtip/base64x.c
    % HB_BASE64(): Optimized, cleaned.
    ! HB_BASE64(): Removed second parameter allowing to pass the length of
      the string. This could cause GPF if passed incorrectly. Now length
      is simply determined using hb_parclen().
    ; TOFIX: Input string size limit checking.

  * include/hbdefs.h
    + HB_SIZEOFARRAY() macro, which does: ( sizeof( var ) / sizeof( *var ) )
      To be really precise, f.e. all hb_strncpy() calls should use
      'hb_strncpy( d, s, HB_SIZEOFARRAY( d ) );' instead of:
      'hb_strncpy( d, s, sizeof( d ) );' (given that 'd' is allocated at compile time).
      So that the code adapts to changing character sizes (like UTF-16/32).
      It's useful in some other places, too.

  * contrib/hbct/dattime2.c
    * 0 -> FALSE for BOOL types.

  * include/hbextern.ch
  * source/rtl/strmatch.c
    + HB_WILDMATCHI(). Case-instenstive, exact match. First
      two parameters and return value are the same as for
      HB_WILDMATCH().

  * include/hbextern.ch
  * source/rtl/cdpapi.c
    + HB_CDPSELECT() which does the same as HB_SETCODEPAGE(), but
      aligns well with function naming rules and namespace.
      HB_SETCODEPAGE() still works, but usage is not recommended.
    + Added HB_CDPUNIID( <cHarbourCP> ) -> <cCPName>
      This will return the std CP ID of a Harbour CP, or empty
      if the Harbour CP isn't linked.

  * include/hbapi.h
  * source/rtl/is.c
    ! Fixed compile error when HB_CDP_SUPPORT_OFF is defined.
    + Added following functions:
      hb_charIsDigit()
      hb_charIsAlpha()
      hb_charIsLower()
      hb_charIsUpper()

  * include/hbapi.h
    - hb_strUpperCopy() removed. Implementation was missing.

  * source/rtl/strcase.c
    * Minor formatting.

  * source/rtl/filesys.c
    ! hb_fsCurDirBuff() fixed potential buffer overrun by one byte.

  * source/rtl/hbrunfun.c
  * source/rtl/run.c
    ! Fixed missing header hbapiitm.h (after previous local change).

  * include/hbapi.h
  * include/hbset.h
  * include/hbapifs.h
  * include/set.ch
  * source/rtl/hbffind.c
  * source/rtl/gete.c
  * source/rtl/filesys.c
  * source/rtl/hbrunfun.c
  * source/rtl/run.c
  * source/rtl/philes.c
  * source/vm/set.c
  * source/vm/cmdarg.c
    + Added file system CP translation.
      Set( _SET_FNAMECP[, <cCPID> ] ) -> <cOldCPID>
      All operations passing filenames to/from the
      OS will convert them to/from the host CP from/to
      the FS CP specified using _SET_FNAMECP.
    * hb_fsNameConv() extended to deal with CP
      conversion, if requested by the app.
    + hb_fsNameConvFrom() (exported) added to deal
      with CP conversions for filenames received from OS.
    + hb_fsNameConvTo() (exported) added to deal
      with CP conversions for filenames/string sent to the OS.
    + Added hb_setGetFNAMECP() (exported) function.
    + Added hb_setGetFileCPTransTo(), hb_setGetFileCPTransFrom()
      (non-exported) functions.
    + hb_fsCurDirBuff() and hb_fsFindNextLow() extended
      to use hb_fsNameConvFrom().
    + Added hb_fsBaseDirBuff() to return the base
      directory on the C level (based on argv[0]).
    + Added HB_PROGNAME() to return the executable
      program name (based on argv[0]).
    + Added HB_DIRBASE() to return the executable
      base directory (based on argv[0]).
    * Renames done regarding OS/FS CP conversion:
      hb_fsNameConvFrom()        -> hb_osDecode()
      hb_fsNameConvTo()          -> hb_osEncode()
      hb_setGetFileCPTransTo()   -> -
      hb_setGetFileCPTransFrom() -> -
      hb_setGetFNAMECP()         -> hb_setGetOSCODEPAGE()
      _SET_FNAMECP               -> _SET_OSCODEPAGE
    * hb_osDecode()/hb_osEncode() extended to have a second
      parameter BOOL * fFree.
       Changed all calls to handle the case when fFree is set
      to TRUE by hb_osDecode()/hb_osEncode().
    + HB_GETENV(): Added 3rd logical parameter to control wether
      to convert the returned value from OS CP to Harbour CP.
      The default is TRUE to be in sync with GETE[NV]() and the
      rest of core.
    * hb_fsNameConv() is now doing OS CP conversion using std APIs,
      rather than duplicating such logic. I've traded some speed
      for modularity.
    * hb_osDecode/hb_osEncode() function declarations moved to hbapi.h
    * hb_osDecode/hb_osEncode() function definitions moved to set.c
    ; NOTE: None of these were extensively tested, and I tend
            to make mistakes when dealing with pointers.
            It compiles cleanly with BCC, and some basic tests
            worked, but bFree = TRUE codepaths are not yet
            working so this needs more review.

  * source/rtl/teditor.prg
  * source/rtl/tpersist.prg
  * utils/hbmake/hbmake.prg
    * MemoRead() -> hb_MemoRead()

  * contrib/hbct/files.c
    ; TOFIX: Many functions here are possibly not thread safe.
    ; TOFIX: Calling hb_fsFindClose() at app exit (and thus keeping
             the FF handles open for the whole app lifetime) doesn't
             play well with server side apps (as the app may run for
             months or even longer), and even worse, they
             will lock the passed directory so that they cannot be
             removed (maybe even renamed), until the app exists.
             At least on Windows.

  * source/rtl/dirdrive.c
    ! Fixed to use F_ERROR instead of -1.

  * include/hbextern.ch
    ! Added missing HB_GCSTEP().

  * source/vm/extrap.c
    + Added CPU dump code for Windows x64.
    + Enabled module listing for Windows 64-bit platforms.
    % Minor cleanup in Windows x86 CPU dump code.
    + Added TODO for Windows IA64 CPU dump.
    + Added TODO for Windows x64 stack walk, with pointers.
    + Added TOFIX regarding displaying module names in Windows x64 mode.

  * source/rtl/fstemp.c
    ! Minor formatting.

  * source/rtl/gete.c
  * source/rtl/run.c
  * source/rtl/hbrunfun.c
  * source/vm/cmdarg.c
    + Added CP conversion to:
      GETE[NV](), HB_GETENV(), __RUN(), HB_RUN(),
      HB_ARGSTRING(), HB_CMDLINE().

  ; TODO: dbCreateTemp( <cAlias>, <aStruct>, <cRDD>, <cDelimArg>, <nConnection> ) -> <lSuccess>
          Generates and opens a new dbf with a temporary filename
          in exclusive mode, deletes it automatically when closed.
          All indexes created for this table, should ideally have
          the temporary flag on, so those get deleted too, when closed.

  ; TOFIX: hb_regex*() functions will not honor Harbour CP setting,
           when case insensitivity is selected.

  ; TOFIX: hbct / SetFDaTi() to move any local logic into Harbour core
           functions and use a simple Harbour API call only.
           I'm not sure what is the reason with keeping the logic
           duplicated here; if this isn't by intent, this function
           could be much simplified.

  ; TOFIX: Avoid using C level toupper()/tolower()/islower()/isupper()

  ; TOFIX: hb_regexMatch()'s 3rd parameter has a double meaning.
           It controls case-sensitivity (in sync with the documentation),
           but it also controls if hb_regexMatch() behaves like
           hb_regexLike() (.T.), or hb_regexHas() (.F.). This means
           that hb_regexMatch(,, .T.) == hb_regexLike(,, .T.) (case-sensitive) and
                hb_regexMatch(,, .F.) == hb_regexHas(,, .F.) (case-insensitive)
           Maybe this was the intent of the original developers, but
           to me it looks a rather strange behaviour which was added by
           accidentally forgetting about the 3rd parameter already being
           utilized. This either needs to be fixed, or properly documented.

  ; NOTE: Noteworthy links:
          http://docs.python.org/3.0/whatsnew/3.0.html
            - Unicode/text section
            - Removed <> (use != instead)
          http://sphinx.pocoo.org/
            - Documentation format
          http://fredeaker.blogspot.com/2007/01/character-encoding-detection.html
            - Character encoding detection
2009-01-14 15:32:43 +00:00
Przemyslaw Czerpak
f5d3211787 2008-12-19 06:55 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/utils/hbtest/rt_hvm.prg
  * harbour/utils/hbtest/rt_hvma.prg
    * updated error messages for compilation with -z (no shortcut
      optimization)
2008-12-19 05:52:37 +00:00
Przemyslaw Czerpak
4c56ab22f8 2008-12-19 04:30 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/hbmysql/tmysql.prg
  * harbour/contrib/hbpgsql/pgrdd.prg
  * harbour/contrib/hbpgsql/tpostgre.prg
    ! fixed unused variables and meaningless assignment detected by new
      compiler extension - many thanks to Mindaugas for it.

  * harbour/include/hbsetup.h
    + added macros for some function attributes which can be used in
      the future for optimizations

  * harbour/source/rtl/filesys.c
    * formatting

  * harbour/source/rtl/hbtoken.c
    * changed the behavior of " " token delimiter - now it works as
      any other tokens. The old behavior can be still reach using empty
      string "" as token delimiter. "" is not default token.

  * harbour/utils/hbtest/hbtest.prg
    * change error object to text conversion in hbtest so now it detects also
      differences which were ignored by previous version, f.e. OPERATION
      wrongly used instead of FILENAME or wrongly set TRIES flag.

  * harbour/utils/hbtest/hbtest.prg
  * harbour/utils/hbtest/rt_trans.prg
  * harbour/utils/hbtest/rt_math.prg
  * harbour/utils/hbtest/rt_hvm.prg
  * harbour/utils/hbtest/rt_misc.prg
  * harbour/utils/hbtest/rt_hvma.prg
  * harbour/utils/hbtest/rt_class.prg
  * harbour/utils/hbtest/rt_str.prg
  * harbour/utils/hbtest/rt_stra.prg
  * harbour/utils/hbtest/rt_date.prg
  * harbour/utils/hbtest/rt_array.prg
    * updated for extended error messages, tested with Harbour, Cl52/53

  * harbour/include/hbapierr.h
  * harbour/source/rtl/errorapi.c
    + added hb_errRT_FileError() used in file errors
    ! fixed TRIES counter updating when RETRY flag is set - it should
      be done before calling error block not after - detected by new
      hbtest error messages
    ; TOFIX: in practice all errors with RETRY flag generated by
             other hb_errRT_*() functions have to be fixed because
             new error object is created each time and informations
             from previous one are lost, f.e. TRIES counter or CARGO
             value set by user. They should be reimplemented in similar
             way to hb_errRT_FileError()

  * harbour/source/vm/memvars.c
  * harbour/source/rtl/copyfile.c
  * harbour/source/vm/set.c
    ! fixed wrong error messages detected by new hbtest in _SET_PRINTFILE,
      _SET_ALTFILE and _SET_EXTRAFILE
    ; TOCHECK - Does CA-Cl*pper respect _SET_DEFAULT in above SETs?
2008-12-19 03:28:10 +00:00
Mindaugas Kavaliauskas
dde57c5c70 2008-12-18 05:02 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* include/hbclass.ch
  * include/hbcomp.ch
  * include/hberrors.h
  * include/hbgenerr.c
  * include/hbmain.c
  * include/hbopt.c
    + PCode optimizations:
        1) Self := QSELF(), Self:method -> QSELF():method
        2) Declared, but unused variables are removed from code
      These optimizations are enabled if jump optimizations are enabled.

    + added recursive pcode tree tracer. It is capable to generate new
      warning: Variable %s is assigned, but not used. 
      Warning is not generated in these cases:
        1) unoptimal Self := QSELF() pcode [generated by preprocessor rules]
        2) if variable name starts with '_nowarn_'. This allows to 
           suppress warning in case unoptimal pcode is generated by 
           preprocessor rules
        3) assigned value is NIL. This let us force garbage collection
           using oVar := NIL
      Warning has warning level 3.
      ; NOTE: if you are using -w3 -es2 in makefiles, you'll need to fix your 
              redundant code to compile the project

  * source/rtl/achoice.prg
  * source/rtl/browse.prg
  * source/rtl/tbrowse.prg
  * source/rtl/teditor.prg
  * source/rtl/tget.prg
  * source/rtl/tgetlist.prg
  * source/rtl/tlabel.prg
  * source/rtl/tmenusys.prg
  * source/rtl/tpersist.prg
  * source/rtl/treport.prg
  * source/debug/dbgtmenu.prg
  * source/debug/debugger.prg
  * source/debug/dbgtobj.prg
    * fixed 'assigned but not used' warnings

  * utils/hbdoc/hbdoc.prg
  * utils/hbdoc/genasc.prg
  * utils/hbdoc/genhpc.prg
  * utils/hbdoc/genhtm.prg
  * utils/hbdoc/genchm.prg
  * utils/hbdoc/genng.prg
  * utils/hbdoc/genos2.prg
  * utils/hbdoc/genrtf.prg
  * utils/hbdoc/gentrf.prg
  * utils/hbdoc/ft_funcs.prg
  * utils/hbmake/hbmake.prg
    * #pragma -w2
    ; NOTE: I've been fixing warnings in utils/hbdoc/* for 2 hours, 
      but only fixed half of files. There are a lot of garbage code here.
      I do not thing this code is working... 
      I used fallback method: restored original files and used -w2
    ; NOTE: hbmake.prg has about 140 unused assignments.
      I've also fallback to -w2, because some of unused code is complex, 
      ex., ASCAN() with block parameters. I'm not using hbmake, and I'm 
      affraid to break something important. 

  * compiler/hbpcode.c
    - removed Ron's copyright on hb_compStrongType(). We do not have this 
      functions in the compiler at all. I guess this text is just a result 
      of .c header copy-paste from xHarbour's hbstrong.c some time ago.
2008-12-18 03:04:50 +00:00
Viktor Szakats
bc980240ea 2008-11-12 12:13 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* make_b32.mak
  * make_vc.mak
  * common.mak
  * utils/hbdoc/Makefile
  * utils/hbmake/Makefile
  * utils/hbtest/Makefile
  * utils/hbrun/Makefile
    % Setup to build shipped Harbour executables with -gc0.
    ; TODO: Please update make_gcc.mak.

  * ChangeLog
    + Marked one change as [TOMERGE 1.0]
2008-11-12 11:34:50 +00:00