Commit Graph

180 Commits

Author SHA1 Message Date
Przemysław Czerpak
8230fcc258 2018-09-14 15:36 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/harbour.hbx
  * include/hbchksum.h
  * src/harbour.def
  * src/rtl/hbmd5.c
    + added new C function
         void hb_hmac_md5( const void * key, HB_SIZE nKeyLen,
                           const void * message, HB_SIZE nMsgLen,
                           char * digest );
    + added new PRG function
         HB_HMAC_MD5( <cMessage>, <cKey> ) -> <cMAC>
    ; HMAC MD5 is used in some authentication methods i.e. CRAM-MD5
      authentication in SMTP protocol

  * src/rtl/gttrm/gttrm.c
    + enable extended XTERM colors automatically when xterm-16color,
      xterm-256color, xterm+256color, xterm-88color, rxvt-16color,
      rxvt-256color, rxvt-98color or putty terminal is detected
    + added support for HB_GTI_SCREENDEPTH

  * contrib/gtqtc/gtqtc1.cpp
    + set clipboard data also into selection buffer on platforms which
      support it
    + when main clipboard buffer is empty retrieve clipboard data from
      selection buffer and if it's empty too from find buffer

  * include/harbour.hbx
  * src/harbour.def
  * src/vm/memvars.c
    + added new PRG function
         __mvGetDef( <cMemvar> [, <xDefault> ] ) -> <xValue>
      it works in similar way to __mvGet() but if <cMemvar> does
      not exist then it returns <xDefault> or NIL instead of RTE

  * contrib/hbwin/hbwin.hbx
    + added missing declarations for win_osIs10() and win_osIs81()

  * contrib/hbssl/ssl.c
    ! fixed compilation with OpenSSL < 0.9.8k

  * contrib/sddodbc/core.c
    * pacified warning

  * contrib/xhb/hbxml.c
  * contrib/xhb/hbxml.h
    ! fixed CDATA terminator, it should be "]]>" instead of " ]]>"
    + added support for HBXML_STYLE_NONEWLINE flag

  * src/3rd/pcre/Makefile
    ! typo wince -> wce

  * src/main/Makefile
    * use harbour.rc only in MS-Windows builds - it fixes OS2 OpenWatcom
      builds

  * config/global.mk
    ! in DOS builds check if the 'uname' exists before running it

  * include/hbapigt.h
  * include/hbgtcore.h
  * src/rtl/hbgtcore.c
  * src/rtl/inkey.c
  * src/rtl/inkeyapi.c
  * contrib/xhb/xhbfunc.c
    + added 3-rd parameter to hb_inkeySetText() function. When this parameter
      is true then ';' is not translated to Chr( 13 ) but DOS and UNIX EOLs
      are translated to Chr( 13 )
    + added logical parameter to HB_GTI_CLIPBOARDPASTE which allows to set
      text without ';' translation but with platform independent EOLs

  * src/rtl/memoedit.prg
  * utils/hbmk2/hbmk2.prg
  * contrib/hbnetio/utils/hbnetio/_console.prg
  * extras/dbu/dbu52.patch
  * extras/dbu/dbu53.patch
    * use hb_gtInfo( HB_GTI_CLIPBOARDPASTE, .T. ) instead of
      hb_gtInfo( HB_GTI_CLIPBOARDPASTE ) for pasting data from clipboard
      with platform independent EOLs and ';' characters
2018-09-14 15:36:21 +02:00
Aleksander Czajczynski
d6f7c59e48 2018-02-11 12:55 UTC+0100 Aleksander Czajczynski (hb fki.pl)
* package/harbour.mft
    + added version manifest to Harbour compiler binaries, which is more
      important on Windows 10 builds, to not include false Windows version
      in build info.
      This doesn't affect programs built with Harbour, where similar manifest
      should be included or not, according to your needs.

  * utils/hbmk2/hbmk2.prg
    * define _UNICODE (activates unicode C RTL functions in OpenWatcom
      and some MS C compilers) together with UNICODE in -winuni mode.
      Similar change was done in Viktor's forked Harbour 3.4. Harbour
      core/contrib code doesn't use any of these C RTL, but in most 3rd
      party code it's expected that these are enabled both.
2018-02-11 12:55:13 +01:00
Aleksander Czajczynski
25bd6d1534 2018-02-11 12:15 UTC+0100 Aleksander Czajczynski (hb fki.pl)
* contrib/hbdoc/hbdoc.prg
  * contrib/hbformat/utils/hbformat.prg
  * contrib/hbnetio/utils/hbnetio/hbnetio.prg
  * package/harbour.mft
  * package/harbour.rc
  * src/compiler/hbusage.c
  * utils/hbi18n/hbi18n.prg
  * utils/hbtest/hbtest.prg
    * bumped copyright year to 2018
2018-02-11 12:14:00 +01:00
Przemysław Czerpak
b872d7b62c 2017-12-19 21:42 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* config/darwin/clang.mk
  * config/darwin/gcc.mk
  * config/darwin/global.mk
  * config/darwin/icc.mk
  * config/darwin/libs.mk
  * utils/hbmk2/hbmk2.prg
    * synced with Viktor's modifications in 3.4 branch:
    ; 2017-11-11 13:14 UTC Viktor Szakats:
    * switch to call the C compiler to link dynamic libs on darwin,
      which is the recommended way to do this, as suggested by Apple.
      This also aligns the platform better with other *nix platforms.
      'libtool' was used before, but that started having intermittent
      issues around Sierra (mitigated by disabling parallel build),
      which returned and got worse in High Sierra (with no remedy).
      The symptom was 'ld: file not found: ' errors with the filename
      not shown or appearing as garbage, then a 'libtool: internal link
      edit command failed'. This was reported and will be fixed in a
      future Xcode release.
      Ref: Apple Radar 34944562

  * config/global.mk
  * config/rules.mk
    + added new user build envvar HB_USER_DCFLAGS
      It allows to set C compiler parameters to compile .c code for
      dynamic libraries.

  * src/rtl/hbsocket.c
    ! fixed fcntl(F_SETFL) 3-rd parameter in hb_socketSetBlockingIO(),
      By mistake I used long instead of int. it created problem on big
      endian 64 bit machines.

  * include/hbgtcore.h
  * src/rtl/hbgtcore.c
    + added new C functions for GT programmers:
         void hb_gt_BaseUnlock( PHB_GT pGT );
         void hb_gt_BaseLock( PHB_GT pGT );
         void hb_gtSleep( PHB_GT pGT, double dSeconds );

  * src/rtl/hbgtcore.c
  * src/rtl/gtcrs/gtcrs.c
  * src/rtl/gtdos/gtdos.c
  * src/rtl/gtgui/gtgui.c
  * src/rtl/gtos2/gtos2.c
  * src/rtl/gtpca/gtpca.c
  * src/rtl/gtsln/gtsln.c
  * src/rtl/gtstd/gtstd.c
  * src/rtl/gttrm/gttrm.c
  * src/rtl/gtwin/gtwin.c
  * src/rtl/gtwvt/gtwvt.c
  * src/rtl/gtxwc/gtxwc.c
    * use new functions to unblock GT when low level TONE() code is
      executed. It allows other threads to access shared GT driver
      when one of them executes TONE()

  * contrib/hbexpat/hbexpat.hbx
    * regenerated automatically
2017-12-19 21:42:15 +01:00
Viktor Szakats
0764e1b746 SELF/self -> Self (3.4 sync) 2017-09-14 01:12:12 +00:00
Viktor Szakats
7b730500b9 2017-09-13 18:04 UTC Viktor Szakats (vszakats users.noreply.github.com)
* contrib/hbrun/hbrun.hbp
  * ChangeLog.txt
  * package/harbour-wce.spec.in
  * package/harbour-win.spec.in
  * package/harbour.spec
  * package/mpkg_rpm_wce.sh
  * package/mpkg_rpm_win.sh
  * package/mpkg_rpm.sh
  * package/mpkg_src.sh
  * package/mpkg_ver.sh
  * package/mpkg_win.nsi
  * package/winuni/mpkg_win_uni.nsi
  * utils/hbmk2/hbmk2.hbp
  * utils/hbmk2/hbmk2.prg
  * utils/hbmk2/Makefile
  * package/harb_osx.icns -> package/harbour.icns
  * package/harb_win.ico -> package/harbour.ico
  * package/harb_win.mft -> package/harbour.mft
  * package/harb_win.rc -> package/harbour.rc
  * utils/hbmk2/hbmk2.rc -> utils/hbmk2/harbour.rc
    * sync more file renames with the 3.4 fork
      NOTE: some projects used to rely on harb_win.ico. This will
      not work anymore and these will need to be updated or even
      better fixed to rely on it local .ico file instead.
    * sync bash formatting and fixes. Formatting guidelines here
      https://google.github.io/styleguide/shell.xml
    * sync two hbmk2 macro names
2017-09-13 18:05:43 +00:00
Viktor Szakats
a83c8f1fd8 2017-09-12 23:01 UTC Viktor Szakats (vszakats users.noreply.github.com)
* utils/hbmk2/hbmk2.prg
    * sync with 3.4 fork minor code changes, comments, some strings
2017-09-12 23:02:21 +00:00
Viktor Szakats
e29badadff hbmk2.prg: whitespace sync 2017-09-12 16:32:25 +00:00
Viktor Szakats
760112e3c5 2017-09-12 15:13 UTC Viktor Szakats (vszakats users.noreply.github.com)
* bin/check.hb
  * config/*/*.mk
  * contrib/gtwvg/wvgwing.c
  * contrib/hbcomm/comm.prg
  * contrib/hbfbird/tfirebrd.prg
  * contrib/hbfimage/fi_wrp.c
  * contrib/hbformat/hbfmtcls.prg
  * contrib/hbformat/utils/hbformat.prg
  * contrib/hbhttpd/core.prg
  * contrib/hbnetio/utils/hbnetio/hbnetio.prg
  * contrib/hbnetio/utils/hbnetio/netiomgm.hb
  * contrib/hbsqlit3/hdbc.prg
  * contrib/hbwin/win_bmp.c
  * contrib/xhb/htmutil.prg
  * contrib/xhb/thtm.prg
  * contrib/xhb/xhbarr.c
  * contrib/xhb/xhbtedit.prg
  * ChangeLog.txt
  * debian/control
  * debian/copyright
  * doc/*.txt
  * LICENSE.txt
  * package/harbour.spec
  * README.md
  * src/compiler/hbusage.c
  * src/pp/hbpp.c
  * src/rtl/memoedit.prg
  * src/rtl/teditor.prg
  * src/rtl/tget.prg
  * src/rtl/version.c
  * utils/hbi18n/hbi18n.prg
  * utils/hbmk2/hbmk2.prg
  * utils/hbmk2/po/hbmk2.hu.po
  * utils/hbtest/hbtest.prg
    * sync with 3.4 fork (no change in functionality)
      CC3 -> CC4 license, copyright banners, some strings, minor
      code changes, doc folder, TOFIX -> FIXME
2017-09-12 15:15:14 +00:00
Viktor Szakats
15795f6330 2017-09-12 10:19 UTC Viktor Szakats (vszakats users.noreply.github.com)
* contrib/gtwvg/class.prg
  * contrib/gtwvg/menubar.prg
  * contrib/gtwvg/paint.prg
  * contrib/gtwvg/tests/_activex.prg
  * contrib/gtwvg/tests/_dyndlgs.prg
  * contrib/gtwvg/tests/_modal.prg
  * contrib/gtwvg/tests/_tbrowse.prg
  * contrib/gtwvg/tests/_utils.prg
  * contrib/gtwvg/tests/_wvtcls.prg
  * contrib/gtwvg/tests/_xbp.prg
  * contrib/gtwvg/tests/demowvg.prg
  * contrib/gtwvg/tests/demowvg1.prg
  * contrib/gtwvg/tests/demoxbp.prg
  * contrib/hbhttpd/core.prg
  * contrib/hbhttpd/tests/eshop.prg
  * contrib/hbhttpd/widgets.prg
  * contrib/hbtip/thtml.prg
  * src/debug/dbgtobj.prg
  * src/rdd/hbsix/sxini.prg
  * src/rtl/hbi18n2.prg
  * src/rtl/tbrowse.prg
  * utils/hbtest/rt_array.prg
    * sync with 3.4 fork (no change in functionality)
2017-09-12 10:19:32 +00:00
Viktor Szakats
5a2a287752 2017-09-08 16:00 UTC Viktor Szakats (vszakats users.noreply.github.com)
* *
    * partial sync with the 3.4 fork codebase. These are the things
      synces for the most part:
      - copyright headers
      - grammar/typos in comments and some readmes
      - comment/whitespace/decorations
      - variable scoping in C files
      - DO CASE/SWITCH and some other alternate syntax usage
      - minimal amount of human readable text in strings
      - minor code updates
      - HB_TRACE() void * casts for pointers and few other changes to
        avoid C compiler warnings
      - various other, minor code cleanups
      - only Harbour/C code/headers were touched in src, utils, contrib,
        include. No 3rd party code, no make files, and with just a few
        exceptions, no 'tests' code was touched.
      - certain components were not touched were 3.4 diverged too much
        already, like f.e. hbmk2, hbssl, hbcurl, hbexpat
      - the goal was that no actual program logic should be altered by
        these changes. Except some possible minor exceptions, any such
        change is probably a bug in this patch.
      It's a massive patch, if you find anything broken after it, please
      open an Issue with the details. Build test was done on macOS.
      The goal is make it easier to see what actual code/logic was changed
      in 3.4 compared to 3.2 and to make patches easier to apply in both
      ways.
2017-09-08 16:25:13 +00:00
Viktor Szakats
9f16c2bf8e 2017-08-13 18:27 UTC Viktor Szakats (vszakats users.noreply.github.com)
* *
    * update copyright headers with new FSF postal address
    * COPYING.txt -> LICENSE.txt (rest of repo to be synced)
2017-08-13 18:38:59 +00:00
Viktor Szakats
9581c18aea 2017-05-20 02:25 UTC Viktor Szakats (vszakats users.noreply.github.com)
* utils/hbmk2/hbmk2.prg
    * remove `_HBSHELL_EXEC_PRE` macro
    + add `_HBSHELL_EXTRA_HEADER` macro that can be defined to a header
      (.ch) filename which will be included in all dot prompt and script
      execution sessions. The header will also be embedded in
      hbmk2/hbrun at build-time, so it's not necessary to be present at
      runtime. The macro may also be defined in the `hbmk2_extra.prg`
      source.
2017-05-20 02:58:04 +00:00
Viktor Szakats
6fd6209086 2017-05-19 17:03 UTC Viktor Szakats (vszakats users.noreply.github.com)
* utils/hbmk2/hbmk2.prg
    + add ability to inject extra code/directives to the hbmk2/hbrun source
      code at build time. It can be enabled by defining
      `_HBMK2_EXTRA_CODE`, when a source file named `hbmk2_extra.prg` will
      be included between the header and code section of hbmk2.prg.
    + display note when above option is enabled
    + add ability to prepend extra code before the shell execution stub via
      the `_HBSHELL_EXEC_PRE` macro. It's initialized by an empty string in
      a default build. This macro can be redefined at will by
      `hbmk2_extra.prg`.

  ; commit backported to 3.2 from the 3.4 fork:
    2017-05-14 19:35 UTC Viktor Szakats (vszakats users.noreply.github.com)
    1ee9a9c6dc
2017-05-19 17:06:25 +00:00
Viktor Szakats
a69b4a58ee 2017-05-03 09:10 UTC Viktor Szakats (vszakats users.noreply.github.com)
* *
    * copyright name cleanups
2017-05-03 09:11:48 +00:00
Przemysław Czerpak
76c62a447a 2017-04-15 21:35 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbcompdf.h
  * include/hbexprb.c
  * src/common/expropt1.c
    * redefined all HB_ET_MACRO_* macros as bitfields

  * src/compiler/complex.c
    * small modification for future extensions in macro usage

  * src/compiler/hbcomp.c
    ! replaced old temporrary hack with internal error.

  * src/compiler/hbmain.c
    * code reformating

  * src/compiler/harbour.y
    * separated DECLARE tokens

  * src/compiler/harbour.yyc
  * src/compiler/harbour.yyh
    * regenerated

  * src/rdd/dbffpt/dbffpt1.c
    ! fixed possible bad interaction (modified default memo type) due to
      uninitialized item returned by hb_stackAllocItem(). Such items may
      contain any simple value.

  * src/vm/memvars.c
    * minor variable name cleanup

  * utils/hbtest/rt_math.prg
    * repeat tests for macro messages and macro <op>=, pre/post ++/--
      operations with and without pass by reference (-ks) optimization
2017-04-15 21:35:32 +02:00
Przemysław Czerpak
52c588287e 2017-04-15 21:19 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/common/hbdate.c
    * implemented monotonic timers in POSIX and MS-Windows builds

  * config/wce/global.mk
  * config/wce/mingwarm.mk
  * config/win/global.mk
  * utils/hbmk2/hbmk2.prg
    * added winmm/mmtimer to list of system libraries - required
      for timeGetTime()

  * ChangeLog.txt
    ! typos
2017-04-15 21:19:51 +02:00
Przemysław Czerpak
9e8e013eb9 2017-03-29 19:50 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/compiler/hbgenerr.c
    * changed "with object" in last error message to upper cases

  * src/rdd/dbf1.c
    + added assigned value to error object ARGS array when data type or
      data width error is generated inside PUTVALUE() method

  * utils/hbtest/hbtest.prg
  * utils/hbtest/rt_array.prg
  * utils/hbtest/rt_hvma.prg
  * utils/hbtest/rt_main.ch
  * utils/hbtest/rt_math.prg
  * utils/hbtest/rt_misc.prg
    + added support for alternative results to HBTEST code.
      It's enabled by default and can be turned off by -noalt hbtest
      parameter.
    + added alternative results for tests which return different then
      Cl*pper results but they are expected and not Harbour bugs.
2017-03-29 19:50:33 +02:00
Przemysław Czerpak
9153285bdf 2017-03-28 23:02 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbcomp.h
  * include/hbcompdf.h
  * include/hberrors.h
  * include/hbexprb.c
  * src/common/expropt1.c
  * src/compiler/hbgenerr.c
  * src/compiler/hbmain.c
    + added new macros HB_ET_MACRO_NOLIST and HB_ET_MACRO_NOPARE
    % use new HB_ET_MACRO_* macros
    + added new compile time error:
         "Code block contains both macro and with object messages ':%s'"
      NOTE: -kd compiler switch allows to compile codeblocks with macros
            and declared symbols / with object messages
    * replaced hb_compErrorCodeblock() with hb_compErrorCodeblockDecl() and
      hb_compErrorCodeblockWith()
    + added new C function hb_compPushMacroVar()
    * code simplification
    ; added few comments

  * utils/hbtest/rt_math.prg
    * extended test code for macro messages and macro <op>=, pre/post ++/--
      operations

  * src/vm/hvm.c
    ! protection against executing hb_threadStateNew() during GC pass
      inside hb_vmRequestReenterExt()

  * src/vm/garbage.c
    ! add volatile attribute to s_bCollecting variable
    * small modification in hb_gcAll() parameter

  * src/rtl/errsys.prg
    ; minor comment cleanup

  * doc/xhb-diff.txt
    * extended a little bit section STRONG TYPED VARIABLES
2017-03-28 23:02:28 +02:00
Przemysław Czerpak
9f0089e966 2016-01-23 11:49 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/compiler/hbusage.c
  * src/pp/hbpp.c
  * package/harb_win.mft
  * package/harb_win.rc
  * utils/hbi18n/hbi18n.prg
  * utils/hbmk2/hbmk2.prg
  * utils/hbmk2/po/hbmk2.hu.po
  * utils/hbtest/hbtest.prg
  * contrib/hbformat/utils/hbformat.prg
  * contrib/hbnetio/utils/hbnetio/hbnetio.prg
    * bumped copyright year to 2016
2016-01-23 11:49:17 +01:00
Przemysław Czerpak
93163f1e04 2016-01-18 12:16 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* ChangeLog.txt
    * indenting

  * config/darwin/clang.mk
  * config/darwin/gcc.mk
  * config/darwin/icc.mk
  * utils/hbmk2/hbmk2.prg
    * use -no_warning_for_no_symbols in MacOSX builds - many thanks
      to Lorenzo
  * contrib/xhb/xhb.ch
    + added #pragma -kd+

  * doc/xhb-diff.txt
    ! typos
2016-01-18 12:16:42 +01:00
Viktor Szakats
58faf91453 2016-01-14 19:17 UTC+0100 Viktor Szakats (vszakats users.noreply.github.com)
* *
    % remove brandings and homepage [1] from copyright header. Pass 1 - using script.
      [1] nobody has access to it anymore AFAIK - and it's also just
          a redirect since long
    ! update url in copyright header
    ; this should make the diff between 3.4 and 3.2 easier to manage
2016-01-14 19:18:17 +01:00
Przemysław Czerpak
29fc87a1ef 2016-01-10 20:42 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/vm/hvm.c
    * allow to use == operator for codeblocks

  * utils/hbtest/rt_hvm.prg
    * updated for == operator which accepts codeblocks

  * utils/hbtest/rt_main.ch
    * do not define __CLIPPER__ macro when ITK Clip compiler is used

  * contrib/hbbz2/errint.c
    * added HB_EXPORT to bz_internal_error() declaration
2016-01-10 20:42:57 +01:00
Przemysław Czerpak
c559d7409b 2015-12-29 17:03 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
+ src/3rd/hbdossrl/Makefile
  + src/3rd/hbdossrl/serial.c
  + src/3rd/hbdossrl/serial.h
  + src/3rd/hbdossrl/README
    + added DOS Serial Library - it's much cleaner and simpler then COMLib
      we used so far in DOS builds. It also supports hardware and software
      flow control. Many thanks for Karl Stenerud for his wonderful job.

  * src/rtl/hbcom.c
    + added support for DOS Serial Library used as low level backend in
      Harbour DOS builds.

  * config/dos/djgpp.mk
  * config/dos/watcom.mk
  * config/dyn.mk
  * config/lib.mk
  * src/3rd/Makefile
  * src/Makefile
  * utils/hbmk2/hbmk2.hbp
  * utils/hbmk2/hbmk2.prg
    * use DOS Serial Library (hbdossrl) instead of COMLib (hbpmcom)
2015-12-29 17:03:40 +01:00
Przemysław Czerpak
d074db1033 2015-12-15 23:48 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* config/dos/watcom.mk
  * config/win/watcom.mk
  * config/linux/watcom.mk
    ! enabled -bd OpenWatcom switch for code compiled as part of dynamic
      libraries
    * use CauseWay as default DOS extender for dynamic DOS builds

  * config/dyn.mk
  * config/lib.mk
  * src/Makefile
    ! fixed list of libraries used to create Harbour DLL in DOS builds

  * config/bin.mk
  * src/vm/Makefile
    * create hbmainstd library for OpenWatcom DOS shared builds

  * src/vm/maindllh.c
    + added DLL entry function for CauseWay DLLs in OpenWatcom builds

  * src/vm/main.c
    * include maindllh.c in OpenWatcom DOS shared builds

  * utils/hbmk2/hbmk2.prg
    + added support for dynamic binaries in DOS OpenWatcom builds.
      Support for CauseWay DLLs is still broken in current OpenWatcom
      builds so it will have to wait for the fix to be usable.

  * src/vm/dynlibhb.c
    + added support for dynamic libraries to OpenWatcom DOS builds.
      Now it's enabled only in harbour.dll due to problems with
      CW and current OW.

  * src/3rd/zlib/zconf.h
  * src/3rd/zlib/zlib.dif
    * use OS2 patch for exporting ZLIB symbols also in DOS builds

  * src/rdd/dbf1.c
    * pacified warning
2015-12-15 23:48:52 +01:00
Przemysław Czerpak
6383f993e9 2015-12-14 14:05 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbnetio/utils/hbnetio/hbnetio.hbp
  * utils/hbmk2/Makefile
  * utils/hbmk2/hbmk2.hbp
    ! fixed build process without MT support: HB_MT=no
2015-12-14 14:05:13 +01:00
Tamas TEVESZ
f3f218f2d4 2015-09-24 14:28 UTC+0200 Tamas TEVESZ (ice extreme.hu)
* utils/hbmk2/hbmk2.prg
    + Partially merge 8f16b6731 from vszakats/harbour-core:
      "refined the way pkg-config queries the package version. Now
       it does it in a separate call to make some pkg-config versions
       happy where version query option cannot be mixed with --cflags
       and similar options (f.e. pkg-config 0.28 in current homebrew)."
2015-09-24 14:56:59 +02:00
Przemysław Czerpak
03f2948f8a 2015-09-09 01:29 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/filesys.c
    * implemented hb_fsSetDevMode() only for DOS builds,
      all other platforms always use O_BINARY mode

  * utils/hbmk2/hbmk2.prg
    ! fixed EOL handling in stdout and stderr output
2015-09-09 01:29:42 +02:00
Przemysław Czerpak
748cf7e81f 2015-07-31 17:12 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/vm/asort.c
    ! fixed missing nStart checking during array items reordering

  * utils/hbtest/rt_array.prg
    * updated Harbour specific results - I thought that someone
      invested time to exactly replicate CA-Cl*pper ASort() sorting
      but in fact Harbour specific resutls where hardcoded inside
      HBTEST so previous code was not Cl*pper compatible in the
      same way as current one.
2015-07-31 17:12:25 +02:00
Przemysław Czerpak
0adb08bdbd 2015-06-24 13:49 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* utils/hbmk2/hbmk2.prg
    ! fix header search algorithm to handle headers specified
      with _absolute paths_.
      This fixed the problem reported by Sergy, here:
         https://groups.google.com/d/msg/harbour-users/EYT9VQ9M7jk/SPtHIxpUB1oJ
      Using absolute path to refer to a headers inside source
      should be avoided and not necessary given properly setup
      header paths.
    ; merged Viktor's patch: 2015-06-23 17:50 UTC+0200 Viktor Szakats
2015-06-24 13:49:06 +02:00
Przemysław Czerpak
32b22ec738 2015-01-19 13:24 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* contrib/hbwin/hbwin.hbx
    + added __oleVariantNullDate()

  * src/common/hbver.c
  * src/rtl/tget.prg
    ! applied Get():end() Cl*pper compatibility fix by Rolf.
    * synced with Viktor's branch

  * contrib/hbhpdf/image.c
    ! applied fixes sent by Peter Rees
    ! protection against GPF when wrong parameter is passed to
      HPDF_Image_GetColorSpace() (borrowed from Viktor's branch)

  * README.md
  * src/compiler/hbusage.c
  * src/pp/hbpp.c
  * utils/hbi18n/hbi18n.prg
  * utils/hbtest/hbtest.prg
  * contrib/hbformat/utils/hbformat.prg
  * contrib/hbnetio/utils/hbnetio/hbnetio.prg
  * contrib/hbnetio/utils/hbnetio/netiomgm.hb
    * bumped copyright year to 2015
2015-01-19 13:24:33 +01:00
Przemysław Czerpak
20ec21c553 2014-12-12 13:30 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbcompdf.h
  * include/hbexprb.c
  * src/common/funcid.c
  * src/vm/hvm.c
    % optimize Array() function by replacing function call with HB_P_ARRAYDIM
      PCODE. Because this optimization changes RTE and interacts with broken
      code like
         aVal := Array( 10, 0, "A" )
      then it's not enabled by default. User can enable it by -ko switch.

  * utils/hbtest/rt_array.prg
    * use #pragma -ko- to for tests which interacts with above modification

  * src/rtl/hbproces.c
    % optimize memory allocation for redirected STDOUT and STDERR buffers in
      hb_processRun() function.
      The previous implementation was extremly inneficient when
      hb_processRun() was used to extract very long output from
      child process.

  * src/rtl/hbtoken.c
    + added support for dividing text into lines using EOLs used by different
      platform. To enable it it's enough to specify .T. as delimiter.

  * src/rtl/filesys.c
    * pacified MSVC warning - in fact this modification is significant only
      for bugy code which changes current directory in MT programs. It's bug
      on all platforms using current directory as process not thread
      attribute (common behavior).

  * include/inkey.ch
  * src/rtl/hbgtcore.c
    + added new extended keycodes:
         HB_K_TERMINATE
         HB_K_MENU

  * contrib/gtqtc/gtqtc1.cpp
    + center and rescale to console window dimension keeping aspect size ratio
      picture passed to HB_GTI_DISPIMAGE when second parameter is .T.
    + added support for HB_K_MENU key
    ! fixed dynamic font size modification in fullscreen, maximized and
      HB_GTI_RESIZEMODE_ROWS modes
2014-12-12 13:30:56 +01:00
Przemysław Czerpak
537d0e78fa 2014-10-23 13:50 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rdd/dbfcdx/dbfcdx1.c
    ; minor comment update

  * utils/hbmk2/hbmk2.prg
    ! fixed error/waring messages after recent modifications for -stop
      switch
2014-10-23 13:50:25 +02:00
Przemysław Czerpak
5f8f68b869 2014-10-21 16:57 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* utils/hbmk2/hbmk2.prg
    ! yet another -stop fix borrowed from Viktor's branch
2014-10-21 16:57:10 +02:00
Przemysław Czerpak
777e24ee87 2014-10-21 16:40 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* include/hbrddcdx.h
  * src/rdd/dbfcdx/dbfcdx1.c
    * added support for user defined index page size in DBFCDX.
      To change page size for newly created index it's enough to call:
         hb_rddInfo( RDDI_INDEXPAGESIZE, <nNewSize>,, "DBFCDX" )
      DBFCDX accepts page sizes which are power of 2 in from 512 to 8192.
      The upper range is my personal decision and can be easy changed
      in Harbour source code. 512 is default CDX index page size and
      only such indexes can be read by other RDDs.
      In some cases bigger pages can increase performance and reduce
      index size. In local networks probably 1024 should give optimal
      performance because can be transferred in single ethernet frame.
      Just make a tests.
    ; In next step I plan to add support for longer index keys when
      bigger pages are used.

  * utils/hbmk2/hbmk2.prg
    ! added -stop fix borrowed from Viktor's branch
2014-10-21 16:40:26 +02:00
Przemysław Czerpak
6d2e59b103 2014-10-07 10:58 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* config/win/msvc.mk
  * utils/hbmk2/hbmk2.prg
    * disabled -nologo option used with resource compiler in MSVC builds.
      Compiler version is not enough to detect supported parameters when
      Platform SDK rc.exe is used.
2014-10-07 10:58:04 +02:00
Przemysław Czerpak
3f78fa0b6e 2014-08-01 02:04 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* extras/gtwvw/gtwvwd.c
    ! fixed typo in WVW_SETICON() - thanks to Ash

  * src/rdd/dbcmd53.c
    ! typo in comment

  * src/rtl/dateshb.c
    % use hb_retclen() instead of hb_retc() when size is well known.

  * src/rtl/valtoexp.prg
    % use hb_defaultValue()

  * src/vm/estack.c
    * minor cleanup

  * src/vm/fm.c
    * modified a little bit HB_MEMINFO structure to force strict alignment
    + added debug code covered by HB_FM_FORCE_REALLOC macro which forces
      allocateing new block in each hb_xrealloc() call
    ! protect realloc() in HB_FM_STATISTIC by mutex, it fixes issue #77.

  * src/rtl/hbproces.c
    % unlock HVM waiting for process in OS2 builds
    ! build array of argument passed to process in hb_processRun() in
      parent process not forked one. It fixes possible deadlock in forked
      process because memory is allocated to create arguments array and
      in MT program memory managers may use mutexes internally which can
      be cloned to forked process in locked state.
      It fixes seldom and random HBMK2 freezing during compilation
      with -jobs=<n> parameter.

  * utils/hbmk2/hbmk2.prg
    ! fixed race condition in concurrent C compiler execution (-jobs=<n>)
      with script file

  * src/debug/dbgentry.c
    ! fixed crash when wrong expression is used as tracepoint
    ! fixed expression analyzer to correctly recognized extended strings e"..."
    * formatting

  * src/debug/dbgbrwsr.prg
  * src/debug/dbghelp.prg
  * src/debug/dbgtarr.prg
  * src/debug/dbgthsh.prg
  * src/debug/dbgtinp.prg
  * src/debug/dbgtmenu.prg
  * src/debug/dbgtobj.prg
  * src/debug/dbgtwin.prg
  * src/debug/dbgwa.prg
  * src/debug/debugger.prg
    * added calls to ::NotSupported() method for some still missing
      functionality
    ! do not use SetColor() but directly pass colors to used objects
      and functions
    ! do not use SetPos() and Row()/Col() for core functionality - it was
      source of few minor bugs
    % enable cursor only in input objects and disable it just after
    % eliminated code to save and restore cursor position and shape
    ! fixed initial positioning in help window
    + implemented HiLite() and DeHiLite() methods in HBDbBrowser() class
    ! fixed positioning when end of source data is reached in browser
    % eliminated some redundant or completely useless code and comments
    % use some fully functional HBDbBrowser() features instead of manual
      encoding similar functionality
    ! validate watchpoint and tracepoint expressions
    % use SWITCH statements
    ! fixed expression presentation (added __dbgValToExp() and __dbgValToStr())
    ! fixed input for new expressions
    ! fixed browser scrolling in object inspector
    ! fixed inkey() processing inside debugger (ALT+D and ALT+C)
    ! fixed browsers highliting in WA inspector
    ! fixed hardcoded limit for 512 workareas in WA inspector
    ! fixed initial WA positioning in WA inspector
    * resized WA  inspector window
    * many other minor fixes and improvements
2014-08-01 02:04:07 +02:00
Przemysław Czerpak
3c9a89d9e5 2014-03-26 14:30 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* utils/hbtest/rt_class.prg
    * updated to follow modified RTE codes
2014-03-26 14:30:33 +01:00
Przemysław Czerpak
c89f63ee0b 2014-03-06 19:07 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/vm/set.c
    ! fixed freed memory access exploited by interactions between
      modifications in last few years.
    ! do not try to remove trailing ^Z char reading from the stream
      if FS_END seek reports 0.
    ! if possible open printer/alternate/extra output in write only mode
      to avoid problem on devices where read access is not available.

  * src/rtl/langapi.c
    * keep EN lang active after deinitialization

  * src/rtl/filesys.c
    ! fixed condition for file time refresh in *nix builds
    ! fixed file time setting in *nix builds

  * include/hbapifs.h
  * src/rtl/Makefile
  * src/rtl/filebuf.c
  + src/rtl/filebufd.c
    * renamed hb_fileRegister2() to hb_fileRegisterFull()
    + added new function hb_fileRegisterPart() which simplifies writing
      small FILE IO redirectors.

  * contrib/hbmemio/memio.c
  * contrib/hbnetio/netiocli.c
    * use hb_fileRegisterFull()

  * contrib/hbplist.txt
  + contrib/hbtcpio/hbtcpio.hbc
  + contrib/hbtcpio/hbtcpio.hbp
  + contrib/hbtcpio/hbtcpio.hbx
  + contrib/hbtcpio/tcpio.c
    + added new Harbour FILE IO redirector.
      It recognizes and process names with "tcp:" prefix, in form like:
         tcp:<host>:<port>[:<timeout>]
      It can be used in different subsystems using Harbour FILE IO and
      stream read/write operations, i.e.
         REQUEST HB_TCPIO
         SET PRINTER TO tcp:192.168.0.110:9100
      can be used to connect to network printers using TCP direct printing.

  * utils/hbmk2/po/hbmk2.pt_BR.po
    ! fixed typo in translation
2014-03-06 19:07:49 +01:00
Przemysław Czerpak
70358ad4b2 2014-01-22 03:30 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbproces.c
    ! do not use SetHandleInformation() in WinCE builds

  * config/wce/global.mk
  * utils/hbmk2/hbmk2.prg
    ! added iphlpapi to WinCE builds
2014-01-22 03:30:28 +01:00
Przemysław Czerpak
96ca3fe470 2014-01-21 20:41 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* Makefile
  * config/*
  * contrib/*
  * doc/*
  * extras/*
  * include/*
  * lib/*
  * package/*
  * src/*
  * tests/*
  * utils/*
    * removed empty lines left after removed '$' + 'Id' + '$' identifiers
2014-01-21 20:41:05 +01:00
Przemysław Czerpak
d5899fbc57 2014-01-14 23:36 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* config/win/global.mk
  * utils/hbmk2/hbmk2.prg
  * src/rtl/hbsocket.c
    + added support for returning NIC MAC address by hb_socketGetIFaces()
      in MS-Windows builds.
      To see physical device addresses bound with active IP interfaces use:
         #include "hbsocket.ch"
         PROCEDURE Main()
            LOCAL aIFace
            FOR EACH aIFace IN hb_socketGetIFaces( , .t. )
               ? "IP:", aIFace[ HB_SOCKET_IFINFO_ADDR ], ;
                 "   MAC:", aIFace[ HB_SOCKET_IFINFO_HWADDR ]
            NEXT
            WAIT
         RETURN
2014-01-14 23:36:33 +01:00
Viktor Szakáts
6752936b57 use web url instead of obfuscated email 2013-10-09 20:08:24 +02:00
Przemysław Czerpak
bc02c9b89d 2013-08-27 01:55 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* config/global.mk
    * disabled HB_BUILD_CONTRIB_DYN in default non MS-Windows builds

  * utils/hbmk2/hbmk2.prg
    * formatting
2013-08-27 01:55:43 +02:00
Przemysław Czerpak
ea60542664 2013-08-23 14:25 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/fstemp.c
    ! fixed casting for DOS C++ builds

  * config/dos/watcom.mk
    ! moved CRTL library to the end of linked library list - some
      other libraries may overload some C RTL functions or symbols,
      f.e. error descriptions in WATT-32

  * utils/hbmk2/hbmk2.prg
    ! added hbpmcom library to linked library list in DOS builds
    ! fixed WATT-32 support in DOS builds to work in cross compilation
      environment
    ! link WATT-32 library before C RTL
    ! fixed simultaneous compilation with -jobs=N when N >= 2
      The same hash array (hReplace) was shared between different threads
      and each thread tried to modify it overloading their own parameters.
      It was causing different side effects, i.e. all threads compiled
      the same .c file instead of their own ones or HBMK2 was crashing
      due to memory corruption.
    * always join all started threads
2013-08-23 14:25:14 +02:00
Viktor Szakáts
276b750d5d 2013-06-13 23:59 UTC+0200 Viktor Szakáts (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    ! reverted 2nd hunk of 2013-06-03 16:45 UTC+0200. It
      introduced unnecessary and confusing disparity between
      command-line and .hbp/.hbm while they are supposed to
      be working similarly. It also breaks syntax supported
      in .hbc directives, and it also makes behavior contracting
      with the way documented in hbmk2 help and hbmk2 examples.
      All this, to resolve the problem of space containing option
      values for one specific and rare subcase of reverted apostrophs.
      To pass option/directive value containing a space, put
      the whole option (or the option value) in double quotes
      (as documented in help), this works equally well on the
      command line and in .hbp/.hbm/.hbc files.

  * ChangeLog.txt
    ! ending whitespaces
    ! explicitly filled git $Id
2013-06-14 00:12:06 +02:00
Przemysław Czerpak
d55d57c622 2013-06-10 16:59 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/gtwvt/gtwvt.c
    * removed not longer user K_Ctrl[] array

  * contrib/gtqtc/gtqtc1.cpp
    ! fixed MT protection to work with recursive calls
      (such call can appear after ALT+ENTER)

  * doc/xhb-diff.txt
    * updated "HASH ARRAYS" paragraph

  * config/lang2po.hb
  * contrib/hbamf/amfdec.c
  * contrib/hbamf/amfenc.c
  * contrib/hbexpat/tests/tohash.prg
  * contrib/hbmxml/core.c
  * contrib/hbnetio/utils/hbnetio/hbnetio.prg
  * contrib/hbnetio/utils/hbnetio/netiomgm.hb
  * contrib/hbwin/hbolesrv.c
  * contrib/hbwin/tests/olesrv1.prg
  * contrib/hbwin/tests/olesrv2.prg
  * contrib/make.hb
  * contrib/xhb/xhbhasha.c
  * src/rtl/hbdoc.prg
  * src/rtl/hbini.prg
  * src/rtl/hbjson.c
  * tests/big5_gen.prg
  * tests/uc16_gen.prg
  * utils/hbmk2/hbmk2.prg
    * removed keeporder setting - now it's default for newly
      created hash arrays

  * contrib/gtwvg/gtwvg.hbx
    * added missing functions
2013-06-10 16:59:13 +02:00
Przemysław Czerpak
d900dc5b1c 2013-06-03 16:45 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/rtl/hbtoken.c
    + added support for passing token parser parameters as bit field number.
      The goal is to replace last to parameters with single bit field which
      allows to set many different parsing aspects instead of adding many
      new parameters.
    + added support for reverted apostrophes quoting: `a b c`
    ; TODO: add constant values to control parser in token functions

  * utils/hbmk2/hbmk2.prg
    ! respect reverted apostrophes quoting in options read from .hbp/.hbm
      files.
    ! do not ignore tool parameters passed in -*flags= hbmk2 params if
      they do not start with '-'. It resolves problems with shells which
      need special quoting to pass parameters, i.e. with both modifications
      it's possible to use in hbp files dynamic parameters encapsulated in
      different forms, depending on used platform, shell and parameter type,
      i.e. parameters are passed as set of separated arguments:
         -cflag=`config-tool1`
      or paramters are passed as single argument:
         -cflag="`config-tool2`"
      or parameters are passed in file which name shows config-tool3:
         -cflag="@`config-tool3`"
      In short words now things like:
         -cflag=`pkg-config --cflags gtk+-3.0`
      will work correctly with .hbp files
2013-06-03 16:45:25 +02:00
Przemysław Czerpak
ad8fcef5ae 2013-05-15 19:54 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* src/pp/hbpp.c
    ! fixed ChangeLog file name detection broken after adding .txt
      extension.

  * src/rtl/hbproces.c
    + added support merged stdout and stderr output in hb_fsProcessRun()

  * src/rtl/hbprocfn.c
    + added support merged stdout and stderr output in hb_processRun()
      PRG function. To extract merged stdin and stdout application output
      it's enough to pass by reference in 3-rd and 4-th parameters the same
      variable, i.e.:
         nResult := hb_processRun( cCommand,, @cOutErr, @cOutErr )

  * utils/hbmk2/hbmk2.prg
    ! use hb_processRun() intead of hb_processOpen() to extract merged
      stdout and stderr output. It fixes all builds in which hb_processOpen()
      does not exists due to some system limitations like missing pipes,
      i.e. DOS builds.

  * src/vm/fm.c
    ! fixed typo in DOS builds

  * src/rtl/gtwin/gtwin.c
    ! ignore mouse position reported in mouse wheel events which use
      screen based coordinates instead of console window ones.
2013-05-15 19:54:49 +02:00
Przemysław Czerpak
8ce27f3b51 2013-04-22 22:05 UTC+0200 Przemysław Czerpak (druzus/at/poczta.onet.pl)
* bin/check.hb
  * bin/commit.hb
    ! added executable attribute

  * doc/xhb-diff.txt
    ! xBase++ -> Xbase++, Harbor -> Harbour

  * utils/hbmk2/hbmk2.prg
    + show project name in error messages
    ! applied Viktor fixes:
      2013-04-17 03:45 UTC+0200 Viktor Szakats (harbour syenar.net)
        ! fixed to not leave temp .lnk file on disk with -hbdyn[vm]
          targets in win/gcc compiler family
        ! fixed win/tcc to not use gcc style .lnk files when creating
          -hbdyn[vm] targets
    ! added workaround for linker stderr messages redirected to stdout.
      It's not perfect but for sure much better then previous behavior.
      Now recently created problems like broken *nix builds can be well
      seen in stderr output.
2013-04-22 22:06:27 +02:00