Commit Graph

2680 Commits

Author SHA1 Message Date
Przemyslaw Czerpak
3f3973cf40 2010-10-09 19:07 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapirdd.h
    + added new field flag: HB_FF_UNICODE

  * harbour/contrib/rddads/ads1.c
    + added support for new ADS 10.0 UNICODE fields: NChar, NVarChar, NMemo
      They are supported in all ADS* RDDs.
2010-10-09 17:07:21 +00:00
Przemyslaw Czerpak
e22c6c7e28 2010-10-08 10:17 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
  * harbour/src/common/hbstr.c
    + added new C function:
         double hb_numExpConv( double dNum, int iExp )
  * harbour/src/rdd/dbf1.c
    + added support for decoding exponents part from 'F' fields
2010-10-08 08:17:16 +00:00
Przemyslaw Czerpak
b077128a61 2010-09-30 10:55 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbtrace.h
  * harbour/src/common/hbtrace.c
    + added new C function:
         int hb_tracesysout( int new_sysout )

  * harbour/src/rtl/trace.c
    + added new PRG function:
         HB_TRACESYSOUT( [ <nSysOut> | <lSysOut> ] ) -> <lPrevSysOut>
2010-09-30 08:56:04 +00:00
Przemyslaw Czerpak
c429bee405 2010-09-29 02:08 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapirdd.h
  * harbour/src/rdd/workarea.c
    + added new 5-th parameter with pointer to super table ID to
      <RDD>_GETFUNCTABLE() function
    + added new C function hb_rddInheritEx() which allows to retrieve
      super RDD ID during registration.
    + added new C function:
         HB_BOOL hb_rddIsDerivedFrom( HB_USHORT uiRddID,
                                      HB_USHORT uiSupperRddID );
      which returns HB_TRUE if one of uiRddID ancestors is uiSupperRddID

  * harbour/src/rdd/dbf1.c
  * harbour/src/rdd/delim1.c
  * harbour/src/rdd/sdf1.c
  * harbour/src/rdd/dbffpt/dbffpt1.c
  * harbour/src/rdd/dbfntx/dbfntx1.c
  * harbour/src/rdd/dbfnsx/dbfnsx1.c
  * harbour/src/rdd/dbfcdx/dbfcdx1.c
  * harbour/src/rdd/usrrdd/usrrdd.c
  * harbour/src/rdd/usrrdd/rdds/arrayrdd.prg
  * harbour/src/rdd/usrrdd/rdds/dbtcdx.prg
  * harbour/src/rdd/usrrdd/rdds/fptcdx.prg
  * harbour/src/rdd/usrrdd/rdds/hscdx.prg
  * harbour/src/rdd/usrrdd/rdds/vfpcdx.prg
  * harbour/src/rdd/usrrdd/rdds/logrdd.prg
  * harbour/src/rdd/usrrdd/rdds/rlcdx.prg
  * harbour/src/rdd/usrrdd/rdds/smtcdx.prg
  * harbour/contrib/rddbmcdx/bmdbfcdx.c
  * harbour/contrib/rddsql/sqlbase.c
  * harbour/contrib/rddsql/sqlmix.c
  * harbour/contrib/rddads/adsx.c
  * harbour/contrib/rddads/ads1.c
    * respect new parameter in <RDD>_GETFUNCTABLE() and use
      hb_rddInheritEx() instead of hb_rddInherit()

  * harbour/contrib/rddads/ads1.c
    * use hb_rddIsDerivedFrom() to recognize RDDs which inherits from
      one of ADS* RDDs.
      It should resolve some problems with ADS*X RDDs and help to simplify
      ADS*X RDDs code.
      Please test it and update ADS*X code removing some code which is
      not longer necessary.
2010-09-29 00:08:43 +00:00
Przemyslaw Czerpak
a50c4b0baf 2010-09-28 17:46 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbcom.ch
    + added new error constant value: HB_COM_ERR_IO
  * harbour/src/rtl/hbcom.c
    + added translation for some important OS error code
      in *nix builds
    + added translation ERROR_TIMEOUT -> HB_COM_ERR_TIMEOUT
      in Windows build.
      TODO: check real error codes for it and also for other
            operations like opening the same port more then
            once and add valid translations
    ; TODO: add some basic trnaslation for OS2 error codes.
      HB_COM_ERR_TIMEOUT seems to be most important for portable
      programs.
2010-09-28 15:47:08 +00:00
Przemyslaw Czerpak
61854e0dda 2010-09-28 08:32 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbcom.ch
    * updated few comments

  * harbour/include/hbapicom.h
  * harbour/src/rtl/hbcom.c
    + added new C function:
         HB_FHANDLE hb_comGetDeviceHandle( int iPort );
    * small cleanup in OS2 flow control setting

  * harbour/src/rtl/hbcomhb.c
    + added new PRG function
         HB_COMGETDEVICEHANDLE( nPort )  --> nHandle | F_ERROR
    * modified HB_COMFLOWCONTROL() to not change existing flow control
      when 3-rd parameter is missing:
         HB_COMFLOWCONTROL( nPort, @nOldFlow [, nNewFlow] ) --> lSuccess

  * harbour/contrib/hbmzip/hbmzip.c
    ! fixed date setting in HB_ZIPFILECREATE()
2010-09-28 06:32:51 +00:00
Przemyslaw Czerpak
67d08334d6 2010-09-27 19:53 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbtrace.h
  * harbour/src/common/hbtrace.c
    + added new C functions:
         int hb_traceflush( int new_flush );
         HB_BOOL hb_tracefile( const char * szFile );

  * harbour/src/rtl/trace.c
    + added new PRG functions:
         HB_TRACEFLUSH( [ <nFlush> | <lFlush> ] ) -> <lPrevFlush>
         HB_TRACEFILE( <cFileName> ) -> <lSetCorrectly>
    * modified PRG function HB_TRACESTATE() to accept logical value as
      parameter and return logical value as reult:
         HB_TRACESTATE( [ <nEnabled> | <lEnabled> ] ) -> <lPrevEnabled>
2010-09-27 17:54:05 +00:00
Przemyslaw Czerpak
c32df3353a 2010-09-23 12:11 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/pp/ppcore.c
    + added new PP directive:
         #warning <*msg*>

  * harbour/include/hbclass.ch
    * use #warning instead of #error for class method declaration mismatch
      (enabled by -w3 compiler switch)
2010-09-23 10:11:13 +00:00
Przemyslaw Czerpak
2356181a10 2010-09-22 16:52 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapicom.h
  * harbour/src/rtl/hbcom.c
    + added public C function: void hb_comSetError( int iPort, int iError )

  * harbour/src/rtl/hbcomhb.c
    + added PRG function: HB_COMSETERROR( nPort, nError ) --> NIL

  * harbour/src/rtl/hbsocket.c
    * minor formatting

  * harbour/config/doc.mk
  * harbour/config/postinst.hbs
  * harbour/contrib/make.hbs
    * do not install documentation files when HB_INSTALL_DOC=no

  * harbour/config/postinst.hbs
    ! do not install .hbl files for core utils when HB_BUILD_PARTS=lib
    + added support for HB_INSTALL_SCRIPT executed after install step.
      It allows to extract some variables set by our GNU make system,
      i.e. it's used to retrieve HB_CCPREFIX in win/wince .spec files.

  * harbour/package/harbour-win.spec.in
    * use HB_INSTALL_DOC=no to disable DOC file installation
    * generate hb{w|ce}mk2 scripts as wrappers to hbmk2 with cross
      build settings so it can be easy used used by users to create
      Windows/WindowsCE binaries.
      Temporary solution until we will not have something more general.
2010-09-22 14:53:20 +00:00
Mindaugas Kavaliauskas
62c84afafe 2010-09-21 19:10 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/contrib/rddsql/sqlbase.c
    ! fixed connection freeing in RDDI_DISCONNECT
  * harbour/include/hbsocket.h
    * added socket item API functions
2010-09-21 16:12:26 +00:00
Przemyslaw Czerpak
e78cb0e549 2010-09-15 16:04 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbclass.ch
    % small modification to reduce lock time

  * harbour/src/common/hbdate.c
    ! fixed hb_timeUTCOffset() in MS-Windows builds to work in some
      countries/windows versions where GetTimeZoneInformation() returns
      TIME_ZONE_ID_INVALID but sets correct tzInfo.StandardBias field.

  * harbour/package/mpkg_ver.sh
    ! fixed to set correctly root path after moving build scripts to
      ./package subdirectory

  * harbour/utils/Makefile
    ! do not build executable files when HB_BUILD_PARTS is set to 'lib'
2010-09-15 14:04:26 +00:00
Przemyslaw Czerpak
253db45857 2010-09-09 17:22 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/rtl/filesys.c
    * unified hb_fsSeek[Large]() return value when seek operation cannot
      be executed for given file handle. Now it's 0 for all platforms.

  * harbour/include/hbapicls.h
  * harbour/src/vm/classes.c
    + added new public C function
         PHB_SYMB hb_clsFuncSym( HB_USHORT uiClass )
      It returns class function symbol or NULL.

  * harbour/ChangeLog
  * harbour/config/os2/gccomf.mk
  * harbour/include/hbpcode.h
  * harbour/include/hbdebug.ch
  * harbour/include/hbmath.ch
  * harbour/include/hbgfx.ch
  * harbour/src/vm/classes.c
  * harbour/utils/hbmk2/hbmk2.prg
    * removed dummy trailing spaces at EOLs
2010-09-09 15:22:21 +00:00
Mindaugas Kavaliauskas
277644f70c 2010-09-08 18:28 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
+ harbour/include/harbour.hbx
    * added new JSON functions
2010-09-08 15:29:03 +00:00
Przemyslaw Czerpak
3cd6f5a972 2010-09-04 12:30 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbatomic.h
    * added two new build time macros which can be used to control
      using GCC atomic builtin functions changing the default settings.
         HB_USE_GCCATOMIC_OFF - disable using atomic builtins
         HB_USE_GCCATOMIC     - force using atomic builtins

  - harbour/src/pp/hbpp.1
  + harbour/examples/pp/pp.1
    ! moved man files for old harbour preprocessor to correct place

  + harbour/src/pp/hbpp.1
    + added new man file for current hbpp
2010-09-04 10:30:41 +00:00
Przemyslaw Czerpak
67565d079a 2010-08-19 11:09 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbpp.h
  * harbour/src/pp/ppcore.c
    + added new result marker <@> which creates token significant for PP but
      invisible for compiler.
      This extenssion allows to resolve problem with circular rules in very
      easy way, i.e.
         #command function <!name!>( [@]<!par1!> [:= <val1>] ;
                                     [, [@]<!parN!> [:= <valN>]] ) => ;
                  function <name>( <par1> [, <parN> ] ) <@>
2010-08-19 09:09:44 +00:00
Viktor Szakats
30ee213749 2010-08-17 23:10 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbcomp.h
  * src/macro/macro.yyc
  * src/macro/macro.y
  * src/macro/macrolex.c
  * src/compiler/hbmain.c
  * src/compiler/complex.c
  * src/compiler/harbour.yyc
  * src/compiler/harbour.y
    * Changed prefix used for bison generated function prefix
      (hb_comp -> hb_comp_yy, hb_macro -> hb_macro_yy)
    ; Pls review.
      This avoids collision between hb_macroError/hb_macroerror
      for obsolete tools like bcc implib which uses case-insensitive
      symbol lookup by default)

  * package/winuni/mpkg_win_uni_extra_copy.bat
    + Added trick to generate special implib for core .dlls so
      that now bcc can use the regular Harbour one and doesn't
      need the special '-bcc' postfixed version to be shipped.
      An ugly trick for an obsolete compiler.
      (release process now requires bcc implib tool because of this)

  * utils/hbmk2/hbmk2.prg
    + Added -c option to implib calls. This fixes implib generation 
      for certain .dlls, like OpenSSL.
2010-08-17 21:11:12 +00:00
Viktor Szakats
549fbec80f 2010-08-08 21:44 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/harbour.hbx
  * include/hbapifs.h
  * src/rtl/fslink.c
    + Added hb_fsLinkRead() function.
    + Added HB_FLINKREAD() function.
    ; Please review/fix or remove.

  * utils/hbmk2/hbmk2.prg
    + Added -ln= option to specify symlinks to targets.
    + Added ${hb_dynprefix} macro.

  * contrib/hbpost.hbm
    + Enabled creation of versionless and major-minor versioned
      links to dynamic libs.
    + Will create versioned .dll names on win/wce.

  * include/hbapifs.h
  * include/fileio.ch
    + Moved some attr constants to .ch header.

  * contrib/make.hbs
    ! Fixed to propage make control options to container projects.
2010-08-14 18:25:13 +00:00
Przemyslaw Czerpak
87316155b4 2010-08-13 14:23 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbpp.h
    ! typo in comment

  * harbour/src/pp/ppcore.c
    ! fixed to not include file by #pragma __*streaminclude <file> | ...
      used inside code disabled by #if* condition, i.e.
         #if 0
            #pragma __streaminclude "file.unknown" | ? %s
         #endif
    ! fixed memory leak and unclosed file handle when too long file was
      included by #pragma __*streaminclude <file> | ...
    ! fixed line numbering in code using
         #pragma __*streaminclude <file> | ...
    ! fixed possible wrong preprocessing or even GPF in code using
         #pragma __*streaminclude <file> | ...
      indirectly (i.e. by some other PP directives) or more then once
      in single line (i.e. using ';' as directive separator)
2010-08-13 12:24:11 +00:00
Viktor Szakats
5a6facdcc2 2010-08-07 11:59 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/make.hbs
    + Generalized the way dynamic lib dependencies are found 
      to make it work on *nix systems, too.

  * include/harbour.hbx
  + src/rtl/libnamec.c
  * src/rtl/libname.prg
  * src/rtl/Makefile
    + Added HB_LIBEXT() and HB_LIBPREFIX() functions.

  * utils/hbmk2/hbmk2.prg
    + Added "platform", "compiler", "cpu", "buildname", "dynsuffix" 
      to --hbinfo returned data.

  * INSTALL
    + Documented HB_BUILD_CONTRIB_DYN setting. The default is
      'no', and if set to 'yes', the build system will create
      dynamic lib versions of the contribs.

  * src/Makefile
  * utils/hbformat/Makefile
  * utils/hbi18n/Makefile
  * utils/hbtest/Makefile
  * config/global.mk
  * config/dos/watcom.mk
  * config/dos/djgpp.mk
  * config/dyn.mk
  * config/rules.mk
  * INSTALL
    * Renamed HB_BUILD_DLL to HB_BUILD_DYN.
2010-08-07 10:00:21 +00:00
Viktor Szakats
abfa725104 2010-08-06 15:15 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* ChangeLog
  * include/harbour.hbx
  * src/rtl/Makefile
  + src/rtl/libname.prg
  + tests/libname.prg
    + Added HB_LIBNAME( <cDynLibName>[, <cDynLibDir> ] ) -> <cOSDynLibName>
      Serves to convert a raw dynlib name, f.e. "hbct" to OS specific
      notation, by adding platform specific extension, lib name prefix and
      optional directory

  * utils/hbmk2/hbmk2.prg
    ! Fixed dynlib prefix for symbian
2010-08-06 13:16:35 +00:00
Przemyslaw Czerpak
8a8f786af2 2010-08-06 13:29 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbcomp.h
    ! fixed description of HB_VS_CBLOCAL_VAR macro

  * harbour/src/compiler/hbmain.c
    ! fixed wrongly generated E0047 compile time error for
      codeblocks with early evaluated macros accessing local
      parameters. It should fix problem reported by Itamar.

  * harbour/src/vm/hvm.c 
    * modified one #if condition to pacify ICC warning
      reported by Andi
2010-08-06 11:30:27 +00:00
Viktor Szakats
4fc311154c 2010-08-06 12:49 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
+ config/symbian
  + config/symbian/libs.mk
  + config/symbian/gcc.mk
  + config/symbian/global.mk
  * include/hbthread.h
  * include/hbsetup.h
  * src/vm/thread.c
  * src/common/hbtrace.c
  * src/common/hbprintf.c
  * src/rtl/gtstd/gtstd.c
  * src/rtl/gttrm/Makefile
  * src/rtl/hbsocket.c
  * src/rtl/filesys.c
  * src/rtl/diskspac.c
  * src/rtl/hbgtcore.c
  * src/rtl/disksphb.c
  * src/rtl/gtpca/gtpca.c
  * src/rtl/hbproces.c
  * src/rtl/gtsys.c
  * src/rtl/hbcom.c
  * utils/hbmk2/hbmk2.prg
  * config/global.mk
  * INSTALL
    + Rough port to Symbian OS.
      It compiles OK, no exes build and I had to disable hbsocket.c
      due to too many errors.
2010-08-06 10:51:00 +00:00
Viktor Szakats
3d2fb06f5d 2010-08-04 22:02 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/hbextern.hbs
    ! Fixed filtering ANNOUNCE self-reference.
    ! Changed to do ANNOUNCE only if specifically requested
      using __HBEXTERN__<libname>__ANNOUNCE

  * include/harbour.hbx
    ! Added __HB_EXTERN__ to exclude list.

  * config/postinst.hbs
  - include/hbextudd.ch
  + include/harbour.hbx
  - include/hbextsca.ch
  + include/hbusrrdd.hbx
  * include/hbextcdp.ch
  + include/hbscalar.hbx
  * include/hbextlng.ch
  + include/hbcpage.hbx
  * include/Makefile
  * include/hbextern.ch
  + include/hblang.hbx
  * ChangeLog
  * contrib/hbct/ctextern.ch
  * contrib/hbct/hbct.hbp
  * contrib/hbct/hbct.hbx
  * contrib/xhb/xhb.hbp
  + contrib/xhb/xhb.hbx
  * contrib/xhb/xhbextrn.ch
  * contrib/hbqt/utils/hbqtgen.prg
  * contrib/hbqt/qtgui/hbqtgui.hbp
  + contrib/hbqt/qtgui/hbqtgui.hbx
  * contrib/hbqt/qtgui/g/filelist.hbm
  - contrib/hbqt/qtgui/g/hbqtgui_extern.ch
  + contrib/hbqt/qtgui/g/hbqtgui_extern.prg
  * contrib/hbqt/qtwebkit/hbqtwebkit.hbm
  * contrib/hbqt/qtwebkit/hbqtwebkit.hbp
  + contrib/hbqt/qtwebkit/hbqtwebkit.hbx
  * contrib/hbqt/qtwebkit/g/filelist.hbm
  + contrib/hbqt/qtwebkit/g/hbqtwebkit_extern.prg
  - contrib/hbqt/qtwebkit/g/hbqtwebkit_extern.ch
  * contrib/hbqt/qtcore/hbqtcore.hbp
  + contrib/hbqt/qtcore/hbqtcore.hbx
  * contrib/hbqt/qtcore/g/filelist.hbm
  - contrib/hbqt/qtcore/g/hbqtcore_extern.ch
  + contrib/hbqt/qtcore/g/hbqtcore_extern.prg
  * contrib/hbqt/qtnetwork/hbqtnetwork.hbm
  * contrib/hbqt/qtnetwork/hbqtnetwork.hbp
  + contrib/hbqt/qtnetwork/hbqtnetwork.hbx
  * contrib/hbqt/qtnetwork/g/filelist.hbm
  + contrib/hbqt/qtnetwork/g/hbqtnetwork_extern.prg
  - contrib/hbqt/qtnetwork/g/hbqtnetwork_extern.ch
  + contrib/hbqt/qscintilla/hbqscintillas.hbx
  * contrib/hbqt/qscintilla/hbqscintilla.hbp
  * contrib/hbqt/qscintilla/g/filelist.hbm
  + contrib/hbqt/qscintilla/g/hbqscintilla_extern.prg
  - contrib/hbqt/qscintilla/g/hbqscintilla_extern.ch
  * contrib/hbqt/qtdesigner/hbqtdesigner.hbm
  * contrib/hbqt/qtdesigner/hbqtdesigner.hbp
  + contrib/hbqt/qtdesigner/hbqtdesigner.hbx
  * contrib/hbqt/qtdesigner/g/filelist.hbm
  + contrib/hbqt/qtdesigner/g/hbqtdesigner_extern.prg
  - contrib/hbqt/qtdesigner/g/hbqtdesigner_extern.ch
  + contrib/hbxbp/hbxbpext.prg
  + contrib/hbxbp/hbxbp.hbx
  - contrib/hbxbp/hbxbp_extern.ch
  * contrib/hbxbp/hbxbp.hbp
  * contrib/hbxpp/hbxpp.hbp
  + contrib/hbxpp/hbxpp.hbx
  * contrib/hbxpp/hbxppext.ch
  * contrib/rddads/adsextrn.ch
  + contrib/rddads/rddads.hbx
  * contrib/rddads/rddads.hbp
  + contrib/hbgd/hbgd.hbx
  * contrib/hbgd/gdextern.ch
  * contrib/hbgd/hbgd.hbp
    * Generated core files are now named include/*.hbx
    + Added .hbx files for contribs which already had the "extern"
      feature.
    * Changed existing "extern" headers to reference .hbx files.
    + Added .hbx file to installed header list.
    * Changed hbqt generator to generate stubs with reference to
      .hbx files rather than rolling its own extern generator.
    + Changed hbxbp to use a puller stub to include all functions.

  * contrib/hbide/hbide.prg
    + Changed to use __HBEXTERN__ method instead of header method
      to pull complete libs.

  * contrib/hbqt/qtgui/g/THBQAbstractItemModel.prg
    ! Fixed props.
2010-08-04 20:04:53 +00:00
Viktor Szakats
1efe9cad7e 2010-08-03 20:15 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/make.hbs
  * config/postinst.hbs
  * config/hbextern.hbs
    + Implemented manual include/exclude filter in extern header
      generation process. Include filters can be specified
      using '// HB_FUNC_INCLUDE <func>', exclude filters using
      '// HB_FUNC_EXCLUDE <func>'. By default everything is
      included, this can be overridden using HB_FUNC_INCLUDE,
      and exceptions made using HB_FUNC_EXCLUDE. <func> can
      contain wildcards, so it's very flexible.
      NOTE: - By default the functions are declared using DYNAMIC 
              so these generated can be directly used when the goal 
              is to load pcode dynamic libs dynamically.
            - By #defining '__HBEXTERN__<libname>__REQUEST' the 
              generated headers will switch to EXTERNAL declaration, 
              so they can be used when building dynamic libs or when 
              user wants to explicitly pull all functions into lib 
              code. Do not use this from app code.
            - When __HBEXTERN__<libname>__REQUEST is defined, the 
              generated headers will also ANNOUNCE __HBEXTERN__<libname>, 
              which means that application can simply pull all functions 
              into app code, using:
                 'REQUEST __HBEXTERN__<libname>__' command.
            - Names are not necessarily finalized yet. ("extern", ".hbx")
    - Deleted hard-coded exceptions from generator code.
    ; TODO: Clean core generated headers to behave like before.
    ; TODO: Adapt hbextern lib to these changes.
    ; TODO: Add generated headers to SVN for contrib libs.
    ; TODO: Add stubs which include generated headers to all libs.
    ; TODO: Long term TODO: make it easy to generate such headers 
            for 3rd party projects.

  * include/hbextudd.ch
  * include/hbextsca.ch
  * include/hbextcdp.ch
  * include/hbextlng.ch
  * include/hbextern.ch
  * contrib/hbct/hbct.hbx
    + Filled HB_FUNC_INCLUDE, HB_FUNC_EXCLUDE exceptions to
      achieve the previous hard-coded results.
    * Regenerated.

  * contrib/hbqt/hbqt_hbmk2_plugin.hbs
  * config/postinst.hbs
  * config/hbextern.hbs
  * bin/hbmk2l2d.hbs
  * bin/hbxpatch.hbs
    + Added -km, -ko options.
2010-08-04 18:15:55 +00:00
Viktor Szakats
d612e8b3ce 2010-08-03 11:40 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbextudd.ch
  * include/hbextsca.ch
  * include/hbextern.ch
  * config/postinst.hbs
    ! Fixed to exclude HB_GT_ symbols, put HBSYMBOL to hbextsca.ch,
      put USRRDD_* to hbextudd.ch.

    ; NOTE: May I ask to review the new headers compared to old
            one to see what else have to be filtered out or moved
            to different header?
2010-08-04 09:45:21 +00:00
Viktor Szakats
8de8345e77 2010-08-03 11:22 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbrun/hbrun.prg
    + Will now add the script's home directory to the header dir list.

  * contrib/make.hbs
  * config/postinst.hbs
  + config/hbextern.hbs
    + Moved extern header generation low level logic to separate script.
    + Added feedback about extern generation.
    + Moved core extern header generation logic to postinst.hbs.
    ! Minor fix to output when postinst is used in non-install phase.

  * contrib/global.mk
    + Displays HB_REBUILD_EXTERN setting.

  * Makefile
    * Changed to always execute config/postinst.hbs, not just in
      install phase.

  * include/hbextudd.ch
  * include/hbextsca.ch
  * include/hbextcdp.ch
  * include/hbextlng.ch
  * include/hbextern.ch
    + Replaced content with automatically generated one.

  * contrib/hbxbp/xbpgeneric.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/ideshortcuts.prg
    * Deleted "just" functions and replaced them with HB_SYMBOL_UNUSED()
      macro, which has no runtime overhead.

  * contrib/hbide/hbide.hbp
  - contrib/hbide/iderequests.prg
    - Deleted requesting HBQT component via "just" function. Now it's
      done by EXTERNAL statements. BTW this function was not called,
      so it was ineffective.  Pls correct me if I missed the point
      of the old solution.
2010-08-04 09:24:15 +00:00
Viktor Szakats
8572f57500 2010-08-03 10:40 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/make.hbs
    + Generalized extern generation.
    + Added generation of core extern headers. (no launched yet)

  * config/global.mk
    + Exporting variables needed for automatic hbextern gerenation.
    % Deleted HB_DYN_COMPILE variable. (unused)

  * include/Makefile
  - include/hbexturs.ch
  + include/hbextudd.ch
  + include/hbextsca.ch
  * include/hbextern.ch
    + Added separate header for scalar classes.
      INCOMPATIBLE: Now they should be activated by '#include "hbextsca.ch"'
      instead of '#define HB_REQUEST_SCALAR / #include "hbextern.ch"'
    * Renamed hbexturs.ch to hbextudd.ch

  * contrib/hbqt/qtgui/hbqt_hbqsyntaxhighlighter.cpp
  * contrib/hbqt/qtgui/hbqt_hbqmainwindow.cpp
  * contrib/hbqt/qtgui/THbQtUI.prg
  * contrib/hbqt/qtcore/hbqt_hbslots.cpp
  * contrib/hbxbp/xbptabpage.prg
  * contrib/hbxbp/xbpwindow.prg
  * contrib/hbxbp/xbpdialog.prg
  * contrib/hbxbp/xbpgeneric.prg
  * contrib/hbide/ideedit.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/ideobject.prg
  * contrib/hbide/idefunctions.prg
  * contrib/hbide/idedict.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/ideeditor.prg
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idesources.prg
  * contrib/hbide/hbide.prg
  * contrib/hbide/ideshortcuts.prg
  * contrib/hbide/idedocks.prg
    * HB_TR_ALWAYS -> HB_TR_DEBUG.
2010-08-04 08:42:08 +00:00
Viktor Szakats
83974c934d 2010-08-03 21:57 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbextern.ch
  * src/vm/Makefile
  * src/vm/vmmt/Makefile
  + src/vm/pvaluehb.c
    + Added PVALUE() to Harbour core.

  * contrib/xhb/hbcompat.ch
  * contrib/xhb/xhb.hbp
  - contrib/xhb/xhbpval.c
  * contrib/hbxpp/hbxpp.hbp
  - contrib/hbxpp/pvalue.c
  * contrib/hbfship/hbfship.hbp
  - contrib/hbfship/pvalue.c
    - Deleted PVALUE() definitions from contrib libs.
2010-08-03 20:01:18 +00:00
Viktor Szakats
8a34ffb5fc 2010-08-03 09:38 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbgtcore.h
  * include/hbapifs.h
  * include/hbapi.h
    + Added HB_EXPORT flag to these functions: (required by xhb, gtwvg and minizip)
      hb_gt_ItemBase()
      hb_gt_gcMark()
      hb_gt_winapi_setClipboard()
      hb_gt_winapi_getClipboard()
      hb_gt_winapi_getKbdState()
      hb_gt_winapi_setKbdState()
      hb_gt_winapi_tone()
      hb_fsAttrFromRaw()
      hb_fsAttrToRaw()
      hb_fsAttrEncode()
      hb_fsAttrDecode()
      hb_fopen()
      hb_gcCollect()
      hb_gcCollectAll()

    ; TOFIX: I didn't want to add these as they look heavily internal (some even 
             marked as such, they are all used by xhb lib:
               hb_stackBaseOffset()
               hb_stackItem()
               hb_stackBaseProcOffset()
               hb_stackWithObjectOffset()

  * contrib/gtalleg/gtalleg.hbm
    ! Fixed missing -a implib flag for bcc.

  * contrib/hbqt/qscintilla/hbqscintilla.hbc
    + Added lib dependency name.

  * contrib/hbide/hbide.prg
    ! Fix to prev.
2010-08-03 07:39:10 +00:00
Viktor Szakats
9036f0d9ca 2010-08-03 09:07 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added trick to filter out target lib name from input lib list -hblib 
      mode and to filter out target implib name from input lib list in 
      -hbdyn mode. This fixes problems when linking -hbdyn by speccing both
      project .hbp and .hbc files. I'm still thinking of a better solution 
      to solve this problem.

  * contrib/make.hbs
    ! Fixed recent bug in filter processing.

  * include/hbapi.h
    + Added HB_EXPORT to hb_releaseCPU(), hb_idle*() and hb_cmdarg*() functions.

  * contrib/hbide/idemisc.prg
  * contrib/hbide/hbide.ch
  * contrib/hbide/hbide.prg
    * Cleanup.
2010-08-03 07:09:20 +00:00
Viktor Szakats
cd793dbbce 2010-08-02 19:40 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbapidbg.h
    + Added HB_EXPORT to the complete hb_dbg*() API set.
      This should fix -shared -b builds on win/wce when 
      using non-mingw compiler.

  * src/vm/hvm.c
    * Formatting.
2010-08-02 17:41:11 +00:00
Viktor Szakats
94cfb1a339 2010-07-31 02:44 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/Makefile
  + include/hbexturs.ch
  * include/hbextern.ch
    + Moved User RDD declarations to separate file so that they
      can be included without the full set of Harbour functions.

  * include/Makefile
    ! Added missing hbcom.ch
2010-07-31 00:45:35 +00:00
Viktor Szakats
5445328e42 2010-07-30 21:16 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbextern.ch
  * src/rdd/usrrdd/usrrdd.c
    ! Fixed typo in function name: WRITEBHEADER() -> WRITEDBHEADER()
      Eagle-eye spotted by Marcos Gambeta.

  * contrib/make.hbs
    ! Fixed to include dependent .hbc files instead of referencing
      own .hbc file in HB_BUILD_CONTRIB_DYN mode. It was not good
      solution as it was referencing itself that way.
    + Will now request dynamic version of dependencies when building
      HB_BUILD_CONTRIB_DYN dynlibs. This is required otherwise f.e.
      hbxbp lib will contain a static copy of hbqt libs, which is not
      very good.
    ! Fixed to not attempt to build dynamic version of referenced 
      projects in HB_BUILD_CONTRIB_DYN mode.

  * contrib/hbct/hbct.hbc
  * contrib/hbqt/hbqt.hbc
  * contrib/rddsql/rddsql.hbc
  * contrib/hbtip/hbtipssl.hbc
  * contrib/hbtip/hbtip.hbc
  * contrib/hbwin/hbwin.hbc
  * contrib/hbssl/hbssl.hbc
    + Experimental move to support linking dynamic version of the
      dependencies when building dynamic lib in HB_BUILD_CONTRIB_DYN
      mode. This is starting to get insanely ugly (thanks Microsoft)
      so I'll with it some more and probably leave it.
    ; I hope I didn't miss any contribs which can also be a dependency
      (probably I did)

  * contrib/pkglist
  * contrib/hbtip/hbtip.hbp
    * hbtipssl made a separate project instead of being a sub-project
      of hbtip. hbtipssl has different dependencies, so this move
      was needed for libdyn support.

  * INSTALL
    * tdragon mingw marked as non-recommended. They due to
      incompatible with previous release tool naming, our make
      systems cannot currently support it. (it needs CCPOSTFIX
      for windres tool when using the dwarf-2 installation)
2010-07-30 19:18:08 +00:00
Viktor Szakats
a64a5ff52f 2010-07-30 16:09 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed RTE when using post-process command on systems without
      implib functionality. Recent regression.
    % Fixed bad performance in default -head=partial mode, which made
      it slower than -head=full. Now they are on par, so maybe -head=full
      should be made the default and partial mode deleted.
    ; Thanks to Przemek for bug reports.

  * include/hbset.h
  * include/hbgtcore.h
  * include/hbapi.h
    + Added some HB_EXPORT flags.
2010-07-30 14:10:16 +00:00
Viktor Szakats
4dac6f539c 2010-07-30 14:08 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbextern.ch
    + Added usrrdd functions.
2010-07-30 12:09:25 +00:00
Viktor Szakats
b2b189377a 2010-07-30 09:55 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbsocket.h
  * src/rtl/hbsocket.c
    ! Fixed type in C level function name.

  * src/rtl/hbdoc.prg
    ! Fixed to always use CRLF as EOL in internal doc data.

  * contrib/hbtip/utils.c
    ! HB_BASE64() marked as HB_LEGACY_LEVEL3.
    + Added TIP_CRLF()

  * contrib/hbtip/smtpcli.prg
  * contrib/hbtip/client.prg
  * contrib/hbtip/ftpcli.prg
  * contrib/hbtip/mail.prg
    * Using TIP_CRLF() instead of HB_INETCRLF().

  * config/postinst.hbs
    + More meaningful message when doing 'make install' without 
      HB_INSTALL_PREFIX being set.

  * contrib/hbpost.hbm
    + Added extra protection to not try to install anything when 
      using 'install' without target dir being specified.

  * INSTALL
    * Updated to reflect the optional nature of make 'install' 
      option.
    * Updated to reflect change in HB_INSTALL_PREFIX.
    * {hb_top} HB_INSTALL_PREFIX macro not documented anymore.
2010-07-30 07:56:36 +00:00
Viktor Szakats
929b57a7e0 2010-07-29 00:36 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/Makefile
  * include/hbapifs.h
  * include/hbextern.ch
  + src/rtl/fslink.c
  + tests/flink.prg
    + Added new C level functions to create file links:

       HB_BOOL hb_fsLink( const char * pszExisting, const char * pszNewFile );
       HB_BOOL hb_fsLinkSym( const char * pszTarget, const char * pszNewFile );

    + Added new Harbour level functions to create file links:

       HB_FLINK( <cExistingFileName>, <cNewFileName> ) -> <nSuccess>
       HB_FLINKSYM( <cTargetFileName>, <cNewFileName> ) -> <nSuccess>

    ; They work on POSIX and Windows Vista/7 systems.

  * src/rtl/fserr.c
    + Mapped Windows error ERROR_PRIVILEGE_NOT_HELD to DOS error 5.
2010-07-28 22:38:23 +00:00
Viktor Szakats
6b758c4f6d 2010-07-25 10:41 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/xhb/hbcompat.ch
    + Added xhb translations for hb_eol() and hb_ps().

  * contrib/make.hbs
    - Deleted SetCancel().

  * src/debug/tbrwtext.prg
  * src/debug/debugger.prg
  * src/rtl/errsys.prg
  * src/rtl/profiler.prg
  * src/rtl/hbini.prg
  * src/rtl/treport.prg
  * src/rtl/tpersist.prg
  * src/rtl/hbi18n2.prg
  * src/rtl/ttextlin.prg
  * src/rtl/teditor.prg
  * src/rdd/usrrdd/rdds/logrdd.prg
  * tests/hbpptest/hbpptest.prg
  * tests/longstr2.prg
  * tests/cdow.prg
  * tests/output.prg
  * tests/dirtest.prg
  * tests/tstdbi.prg
  * tests/speedold.prg
  * tests/dates3.prg
  * tests/set_test.prg
  * tests/rto_get.prg
  * tests/cpinfo.prg
  * tests/speedtst.prg
  * tests/dates.prg
  * tests/set_num.prg
  * tests/rto_tb.prg
  * tests/testhtml.prg
  * tests/round.prg
  * tests/dates2.prg
  * tests/dates4.prg
  * tests/version.prg
  * tests/seconds.prg
  * tests/gtkeys.prg
  * tests/adirtest.prg
  * include/simpleio.ch
  * include/assert.ch
  * contrib/hbct/tests/tab.prg
  * contrib/hbct/tests/expomant.prg
  * contrib/xhb/traceprg.prg
  * contrib/xhb/hblog.prg
  * contrib/xhb/dumpvar.prg
  * contrib/xhb/dbgfx.prg
  * contrib/xhb/xhberr.prg
  * contrib/xhb/cstruct.prg
  * contrib/hbqt/generator/hbqtgen.prg
  * contrib/hbqt/hbqt_errorsys.prg
  * contrib/hbqt/generator2/hbqtgen2.prg
  * contrib/hbxpp/hbxpp.ch
  * contrib/hbnetio/utils/netiosrv.prg
  * contrib/hbnetio/utils/rpcdemo.hbs
  * contrib/hbnetio/utils/netiocmd.prg
  * contrib/hbpgsql/tests/dbf2pg.prg
  * contrib/hbmisc/tests/readfile.prg
  * contrib/hbmisc/tests/testhbf.prg
  * contrib/hbtip/thtml.prg
  * contrib/hbtip/client.prg
  * contrib/hbwin/tests/testsim.prg
  * contrib/hbwin/tests/testole.prg
  * contrib/hbwin/tests/testsvc.prg
  * contrib/hbssl/tests/bio.prg
  * contrib/hbssl/tests/pem.prg
  * contrib/hbide/ideedit.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/idethemes.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/idedocwriter.prg
  * contrib/hbide/hbide.ch
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idehome.prg
  * contrib/hbide/ideshortcuts.prg
  * utils/hbformat/hbformat.prg
  * utils/hbmk2/hbmk2.prg
  * utils/hbi18n/hbi18n.prg
  * utils/hbtest/hbtest.prg
  * examples/hbextern/hbextern.prg
  * examples/uhttpd2/umain.prg
  * examples/guestbk/inifiles.prg
  * examples/guestbk/testcgi.prg
  * examples/httpsrv/uhttpd.prg
  * examples/hscript/hscript.prg
    * hb_osnewline() -> hb_eol()
      (deleting temp variables and temp pp macros used in the past
      to workaround the long typing of the old function name)
    * Some formatting along the way in tests dir.

  * src/rtl/errsys.prg
    - Deleted usage of ISNIL(). It's a quite pointless macro.

  * src/rtl/errsys.prg
  * src/rtl/listbox.prg
  * src/rtl/profiler.prg
  * src/rtl/treport.prg
  * src/rtl/tpersist.prg
  * src/rtl/tgetlist.prg
  * src/rtl/teditor.prg
    % DO CASE -> SWITCH

  * src/rtl/alert.prg
    * Replaced DEFAULT TO with simple NIL check.

  * src/compiler/gencc.c
    * Formatting of generated code.

  * contrib/hbide/ideedit.prg
  * contrib/hbide/idemisc.prg
  * contrib/hbide/idethemes.prg
  * contrib/hbide/idesaveload.prg
  * contrib/hbide/idedocwriter.prg
  * contrib/hbide/hbide.ch
  * contrib/hbide/ideprojmanager.prg
  * contrib/hbide/idehome.prg
  * contrib/hbide/ideshortcuts.prg
    * hb_osPathSeparator() (and static variable) -> hb_ps()
2010-07-25 08:45:50 +00:00
Viktor Szakats
2f99a667e8 2010-07-19 23:19 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbsocket.c
  * include/hbthread.h
    ! Fix for two cygwin build breakers.
2010-07-19 21:19:40 +00:00
Viktor Szakats
d78d9c8ef4 2010-07-17 20:07 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbdefs.h
    + Added HB_SIZE_SIGNED macro which enables signed HB_SIZE
      types. It so far dangerous setting because it may generate
      breakage without compiler warning, f.e. STUFF() GPFs
      in hbtest after enabling it. Plus there is about 40-60
      new warnings shown, I'm out of ideas how to fix most
      of them.

  * src/rtl/filesys.c
    * Changed to pass LPDWORD to ReadFile()/WriteFile()
      win32 branch, instead of *HB_SIZE. It caused warnings
      for signed HB_SIZE.
    ; Please review me.

  * ChangeLog
    * Updated VxWorks notes in 2010-07-16 18:22 UTC+0200 Viktor Szakats
      with missing hb_secondsCPU() support yet.

  * contrib/gtalleg/gtallegs.hbp
  * contrib/hbcurl/hbcurls.hbp
  * contrib/hbssl/hbssls.hbp
  * contrib/hbtip/hbtipssl.hbp
    + Added -hblib options to make it easy for tools to detect
      target types.

  * contrib/gtalleg/gtalleg.c
    ! Fixed C mode MSVC function pointer cast warning.

  * src/rtl/hbsocket.c
    * Minor cosmetic.

  * contrib/hbqt/qtgui/QFormLayout.cpp
  * contrib/hbqt/doc/en/*.txt
    * Regenerated.

  * contrib/hbqt/generator/hbqtgen.prg
    ! Fixed missing initialization for enums returned
      by reference. An msvc warning was shown about them.

    ; TOFIX: I've reported similar warnings long ago with msvc. Anybody to fix them?
             ---
             hbqt_hbqplaintextedit.cpp
             ...\qt\4.5.3\include\qtcore\../../src/corelib/concurrent/qtconcurrentiteratekernel.h(101) : warning C4512: 'QtConcurrent::BlockSizeManager' : assignment operator could not be generated
                     ...\qt\4.5.3\include\qtcore\../../src/corelib/concurrent/qtconcurrentiteratekernel.h(83) : see declaration of 'QtConcurrent::BlockSizeManager'
             hbqt_hbqsyntaxhighlighter.cpp
             ...\qt\4.5.3\include\qtcore\../../src/corelib/global/qglobal.h(2078) : warning C4512: 'QForeachContainer<T>' : assignment operator could not be generated
                     with
                     [
                         T=QMap<QString,HBQSyntaxHighlighter::HighlightingRule>
                     ]
                     hbqt\hbqt_hbqsyntaxhighlighter.cpp(172) : see reference to class template instantiation 'QForeachContainer<T>' being compiled
                     with
                     [
                         T=QMap<QString,HBQSyntaxHighlighter::HighlightingRule>
                     ]
             moc_hbqt_hbqplaintextedit.cpp
             ...\qt\4.5.3\include\qtcore\../../src/corelib/concurrent/qtconcurrentiteratekernel.h(101) : warning C4512: 'QtConcurrent::BlockSizeManager' : assignment operator could not be generated
                     ...\qt\4.5.3\include\qtcore\../../src/corelib/concurrent/qtconcurrentiteratekernel.h(83) : see declaration of 'QtConcurrent::BlockSizeManager'
             QMimeData.cpp
             ...\qt\4.5.3\include\qtcore\../../src/corelib/global/qglobal.h(2078) : warning C4512: 'QForeachContainer<T>' : assignment operator could not be generated
                     with
                     [
                         T=QList<QUrl>
                     ]
                     hbqt\qtcore\QMimeData.cpp(451) : see reference to class template instantiation 'QForeachContainer<T>' being compiled
                     with
                     [
                         T=QList<QUrl>
                     ]
             HBQPlainTextEdit.cpp
             ...\qt\4.5.3\include\qtcore\../../src/corelib/concurrent/qtconcurrentiteratekernel.h(101) : warning C4512: 'QtConcurrent::BlockSizeManager' : assignment operator could not be generated
                     ...\qt\4.5.3\include\qtcore\../../src/corelib/concurrent/qtconcurrentiteratekernel.h(83) : see declaration of 'QtConcurrent::BlockSizeManager'
             ---
2010-07-17 18:20:37 +00:00
Viktor Szakats
3a97d58533 2010-07-17 15:20 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbdefs.h
  * src/rtl/hbsocket.c
  * include/hbthread.h
    * Moved header collision avoidance hack to the root of
      the problem, right after '#include <stdint.h>'.
      This way it's done centrally.

  * config/vxworks/diab.mk
    - Deleted fixed TOFIX.
2010-07-17 13:20:28 +00:00
Viktor Szakats
a93ad12a66 2010-07-17 14:59 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* ChangeLog
    * Updated VxWorks notes in 2010-07-16 18:22 UTC+0200 Viktor Szakats

  * include/hbsetup.h
    * Enabled HB_USE_SHARELOCKS_OFF for VxWorks. This fixes creation
      of plain .dbf files, _but_ it will make a weird bug surface
      when creating .dbf+.dbt: The content of the .dbt file is
      written into the .dbf and the .dbt is kept as a zero length
      file. Przemek if you read this, do you have any idea what
      this could be?

  * src/rtl/hbgtcore.c
  * src/rtl/gtsys.c
    ! Fixed to set default GT for vxworks also in hbgtcore. Made NOTE
      in source that needs to be kept in sync. This finally fixes
      the uninitialized GT error.
    * Reset default vxworks GT to GTSTD instead of GTCGI.

  * utils/hbmk2/hbmk2.prg
    * Minor.
2010-07-17 13:05:21 +00:00
Viktor Szakats
33b2e5b3fe 2010-07-17 08:43 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbsocket.c
    + Enabled ioctl() calls for VxWorks.
    ! Worked around 'socklen_t' vs 'int' warnings with VxWorks.
      (still remains some 'const char *' and 'caddr_t' vs 'char *
      warnings, nothing serious though)

  * include/hbthread.h
    ! Enabled HB_CRITICAL_NEED_INIT for VxWorks. Avoids the compiler
      warnings caused by PTHREAD_COND_INITIALIZER having one less 
      structure member than initialized structure.
      MT mode still doesn't work though.

  * contrib/hbodbc/odbc.c
    + Added HB_ODBCVER() function to return build-time ODBC version 
      reported by ODBCVER macro.

  * contrib/hbodbc/tests/testodbc.prg
    + Show ODBC version number.

  - contrib/hbqt/doc/html
    - Deleted. doc dirs now have to abide by the HBDOC rules posted 
      on the dev list, which means doc may contain (non-empty) language 
      dirs only. html should be generated by client app or by install 
      process.

  * contrib/hbwin/hbwinole.h
    ! Patch by Tamas Tevesz, fixing NONAMELESSUNION issue for watcom.
2010-07-17 06:44:19 +00:00
Viktor Szakats
1a3fa64e36 2010-07-16 20:55 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbsetup.h
  * src/vm/hvm.c
  * contrib/hbmisc/hb_f.c
    ! Added workaround for diab bug. Now build goes fine without HB_LONG_LONG_OFF
      trick.

  * config/vxworks/diab.mk
    + Minor change to sync one C compiler option with VxWorks Workbench
      generated one. (missed from prev commit)
2010-07-16 18:56:07 +00:00
Viktor Szakats
e000a6a0b4 2010-07-16 15:15 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbinit.h
    ! Fix to prev. Missed another 'static' qualifier.
    ; Now hbtest runs OK on vxworks/diab. (there are more
      errors though due to HB_LONG_LONG_OFF)

  * utils/hbmk2/hbmk2.prg
    ! Fixed to not request GTTRM in vxworks builds.
2010-07-16 13:16:40 +00:00
Viktor Szakats
03a15d50b5 2010-07-16 13:27 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbtest/hbtest.prg
  * utils/hbtest/rt_hvm.prg
  * utils/hbtest/rt_hvma.prg
  * utils/hbtest/rt_stra.prg
  * utils/hbtest/rt_vars.ch
    + Enabled GTCGI for Harbour builds. This makes it independent
      for GTs, to there is better chance to run it. Now it also
      works on VxWorks.
    + Will now detect .dbf creation failure and continue gracefully
      with a message and skipping all related tests.

  * src/rtl/hbsocket.c
  * external/minizip/ioapi.h
  * include/hbthread.h
    + Added/cleaned hacks to avoid collision between VxWorks's own
      system types.

  * external/minizip/ioapi.h
    ! Disabled 64-bit FSIO for whole VxWorks.

  * config/vxworks/gcc.mk
  * config/vxworks/diab.mk
  * config/vxworks/global.mk
    + _VX_CPU is now defined in vxworks/global.mk.

  * src/common/hbarch.c
    ! Fixed hb_put_le_uint64() definition to match declaration.

  * include/hbdefs.h
    ! Fixed compatibility type definitions in HB_LONG_LONG_OFF mode.

  * include/hbsetup.h
    + Added bzero() declaration hack for vxworks.

  * include/hbinit.h
    + Added support for diag compiler init function.
      It requires the constructor to have public visibility.

  * src/common/hbver.c
    + Changed to always display x.x.x.x format verison no for diab.
      (in generic way).

  * INSTALL
    * Updated list of CPUs supported by vxworks.
2010-07-16 11:34:05 +00:00
Viktor Szakats
f1fdb9b02c 2010-07-16 00:25 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/vxworks/diab.mk
    + Implemented support for Wind River Compiler.
      Incomplete yet, as I couldn't test each build
      feature due to errors in earlier build stages.

  * src/common/hbver.c
    + Added fourth version number level.
    + Added version detection for Wind River Compiler (diag).
    * Formatting.

  * src/common/hbprintf.c
  * external/minizip/ioapi.h
    + Fixes for Wind River Compiler (diag)

  * src/rtl/hbdyn.c
    ! Dirty fix to compile in HB_LONG_LONG_OFF mode.
      Przemek if you see this, can you take a look at it if 
      it's right or at least not terribly off?

  * include/hbsetup.h
    ! Temporary hack for Wind River Compiler to use
      HB_LONG_LONG_OFF, otherwise the compiler crashes with
      internal error in hvm.c (without hvmall and optimizations
      also). Now, this flag caused another slew of problems,
      so as it looks now support for this compiler cannot
      be added:
         "../../../hvm.c", line 9827: internal compiler error (etoa:1000): - Failed allocating register pair
         please contact support@windriver.com */

  * include/hbinit.h
    + Enabled Wind River compiler to use the GCC init mode.
      (didn't actually test it, but it compiles)

  * utils/hbmk2/hbmk2.prg
    + Added new debug switch -debugpars to get a list of
      input parameters processed by hbmk2.
    + Synced automatic HB_CCPOSTFIX configuration based on cpu
      setting with GNU Make logic.

  * config/vxworks/gcc.mk
    * Cleanups.
    + Added more CPU postfixes.

  * INSTALL
    * Minor convenience added to prev.
2010-07-15 22:32:24 +00:00
Viktor Szakats
da9890f57e 2010-07-15 19:20 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbthread.h
    ! Hacked around collision between vxWorks headers.

  * ChangeLog
    ! Fixed casing of vxWorks.

  * utils/hbmk2/hbmk2.prg
    + Added vxworks/gcc libpaths.
    ! Fixed vxworks/gcc system lib list.
    ! Fixed ar to have postfix.
    ; All these are syncs with GNU Make.

  * src/rtl/hbsocket.c
    ! Typos in previous vxworks patchs.

  * config/global.mk
    ! Fixed forming automatic HB_INSTALL_PREFIX value in *nix cross-build
      situations. (it's still wrong as it assumes nix->win cross-builds)

  ; Now vxworks/gcc/x86 build is clean.
    There are iTODOs left, and
    - this particular class of warnings, which seems
      to be a bug down the <pthread.h> system header:
         hbnetio\netiocli.c:155: warning: missing initializer
         hbnetio\netiocli.c:155: warning: (near initialization for 's_netioMtx.mutexAttr.mutexAttrType')
    - also this, each time FD_ZERO() and friends are used:
         warning: implicit declaration of function 'bzero'
    - "argument n of 'x' differ in signedness" and "discards qualifiers from pointer target type"
      warnings in hbsocket.c code.

  ; TOFIX:
       - Unrecoverable error 9998: Harbour terminal (GT) initialization failure
         when running hbtest.
       - GPF when running hbmk2 and hbrun. (hbformat, hbi18 startup fine)
2010-07-15 17:21:15 +00:00
Viktor Szakats
00cd9e92f3 2010-07-15 16:57 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
  + config/vxworks
  + config/vxworks/libs.mk
  + config/vxworks/gcc.mk
  + config/vxworks/diab.mk
  + config/vxworks/global.mk
    + Started experimental VxWorks port.
    ; NOTE: VxWorks port was made possible by Wind River Systems Inc.,
            who were so kind to mail me a full VxWorks development
            environment, for the purpose of porting Harbour to this
            platform. Thank you very much guys.

            [ The free license is valid for one month, so if anyone
            is interested in helping in this project, I can help with
            real tests, builds and information. BTW, the devenv is
            Eclipse based plus cmdline, running on Windows (available
            for Linux and Solaris, too) and the target VxWorks exes
            run in a virtual environment. ]

  * config/global.mk
    + Added autodetection of VxWorks platform.

  * utils/hbmk2/hbmk2.prg
    + Added VxWorks support. It's incomplete yet.
    ! Fixed to quote *nix/gcc compiler family in
      Windows-host cross-platform situations.

  * src/vm/thread.c
  * src/common/hbgete.c
  * src/common/hbffind.c
  * src/common/hbtrace.c
  * src/common/hbdate.c
  * src/rtl/gtstd/gtstd.c
  * src/rtl/gttrm/Makefile
  * src/rtl/hbsocket.c
  * src/rtl/filesys.c
  * src/rtl/diskspac.c
  * src/rtl/cputime.c
  * src/rtl/disksphb.c
  * src/rtl/gtpca/gtpca.c
  * src/rtl/net.c
  * src/rtl/hbproces.c
  * src/rtl/gtsys.c
  * src/rtl/hbcom.c
  * external/zlib/inflate.c
  * external/jpeg/jmorecfg.h
  * external/pcre/Makefile
  * include/hbapifs.h
  * include/hbthread.h
  * include/hbdefs.h
  * include/hbsetup.h
  * contrib/xhb/hboutdbg.c
  * contrib/xhb/hbsyslog.c
  * contrib/xhb/hbserv.c
    + vxworks/gcc port. First phase.
    ; Please review.
    ; NOTE: - vxworks has no termios, for serial comm
              support it has sioLib.h.
            - vxworks supports another C compiler, which
              was not tested yet.
            - vxworks supports lots of CPUs, only x86 was
              tested yet.
            - There are still mutex related warnings to sort out.
            - Some parts had to disabled, like HB_LIB*() functionality.
    ; TODO: Regenarate .difs in external/.

  * src/vm/hashfunc.c
    * Silenced warnings shown by vxworks/gcc.
2010-07-15 15:02:33 +00:00
Viktor Szakats
bf4f1b0679 2010-07-14 22:13 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbextern.ch
  * src/rtl/hbdoc.prg
    + Added __HBDOC_LOADHBD( <cFileName> ) -> <hbdoc> | NIL
    + Added __HBDOC_SAVEHBD( <cFileName>, <hbdoc> ) -> <lSuccess>

  - doc/en/Makefile
  * doc/Makefile
  * package/mpkg_win.nsi
  * package/winuni/mpkg_win_uni_extra_copy.bat
  * package/winuni/mpkg_win_uni.nsi
    - Don't install doc sources.

  * config/postinst.hbs
    + Will now build .hbd files from doc sources at 'install' phase.
      .hbd files will be installed in HB_DOC_INSTALL path, which
      is /doc by default.
    ; NOTE: Apps like hbide can now use __HBDOC_LOADHBD() to load
            these .hbd files.
    ; NOTE: We may add other doc generators to hbrtl, plus we may
            further enhance .hbd format to be more easily usable
            for client apps (and f.e. to consume less disk space).
    ; TODO: Config HB_DOC_INSTALL also on *nix systems.

  * contrib/gtwvg/wvgwing.c
    ! Fixes after previous commit.
      Patch by Tamas Tevesz.

  * contrib/make.hbs
    * Minor.
2010-07-14 20:14:17 +00:00