Commit Graph

1800 Commits

Author SHA1 Message Date
Viktor Szakats
f4aa2359de 2010-10-03 17:45 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added MS-DOS compiler (djgpp) detection when used on *nix platform
      in cross-compile scenario.
      BTW I've also found that I had already implemented win and wce
      autodetection based on global.mk, so it' supposed to work. Please
      test it.

  * config/global.mk
    - Deleted a variable not used anymore.
2010-10-03 15:46:50 +00:00
Viktor Szakats
1badb86c78 2010-10-02 11:43 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added workaround for mingw compiler problem where it
      tends to leave zero byte long objects in cases when the
      build process gets (manually) aborted.
      Please check it and report any potential performace
      problems (hbmk2 needs to read the objects' size from
      the directory listing). Maybe we will need a Harbour
      function which returns both timestamp and size in one
      call.

  * contrib/hbodbc/todbc.prg
    - Deleted 'FROM HBCLASS' from class declarations.
      Thanks to Manu for the report.

  * contrib/hbxpp/dbfuncsx.prg
    + Added XPP_DBUSEAREA() which emulates non-Clipper compatible
      behavior of Xbase++ DBUSEAREA() implementation.
      Based on code and information sent by Shum

  * contrib/gtwvg/wvgwing.c
    ! Fixed compilation in newer BCC versions (6.3).
      Fix suggested by YD0DKL

  * package/winuni/mpkg_win_uni.bat
    + Added copyright msg.
2010-10-02 09:44:56 +00:00
Viktor Szakats
82647938e3 2010-09-30 11:51 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
  * utils/hbrun/hbrun.rc
    * Changed to use plain number for icons, instead of 'ICONn' name 
      to ease addressing them in some situations.
    ; INCOMPATIBLE: If you used
         hb_GTInfo( HB_GTI_ICONRES, "ICONn" )
      to set app icon at runtime, change it to:
         hb_GTInfo( HB_GTI_ICONRES, n )
2010-09-30 09:52:58 +00:00
Viktor Szakats
8555fe76d6 2010-09-29 13:15 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added HB_LEVEL macro.
2010-09-29 11:16:20 +00:00
Viktor Szakats
f43e6c2d40 2010-09-28 03:53 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
  * config/global.mk
  * INSTALL
    ! HB_BUILD_NAME/-build= no longer supports pathseps (backslash/fwdslash)
      (it would need costly solution to resolve compilation of 
       hbrun.rc, maybe more. It's also "cleaner" this way, since the 
       dir structure is not altered)
2010-09-28 01:54:18 +00:00
Viktor Szakats
b11e7cd952 2010-09-26 23:03 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Harbour environment autodetection will now work if pathseps 
      are present in HB_BUILD_NAME/-build= setting.
      (so now it's in sync with Harbour build in this regard)
2010-09-26 21:05:32 +00:00
Viktor Szakats
a64cae6dd4 2010-09-26 17:28 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* examples/gtwvw/tests/wvwtest9.prg
    + Changed to use HB_GTI_INKEYFILTER instead of xhb specific 
      calls. This fixes last known missing showstopper in gtwvw 
      for Harbour.

  * utils/hbmk2/hbmk2.prg
    + Added support for macros in -gt/gt= options.
      (thus fixing gtwvw.hbc)

  ; Patches received from Tamas Tevesz. Thanks a lot!

  * external/png/pngconf.h
  * external/png/pngpread.c
  * external/png/LICENSE
  * external/png/pngrutil.c
  * external/png/png.c
  * external/png/png.h
  * external/png/pngpriv.h
  * external/png/Makefile
  * external/png/pngtrans.c
    * Update to 1.4.4 (from 1.4.3)

  * external/bzip2/blocksor.c
  * external/bzip2/decompre.c
  * external/bzip2/crctable.c
  * external/bzip2/LICENSE
  * external/bzip2/bzlib.c
  * external/bzip2/huffman.c
  * external/bzip2/bzlib.h
  * external/bzip2/randtabl.c
  * external/bzip2/bzlib_pr.h
  * external/bzip2/compress.c
  * external/bzip2/Makefile
    * Update to 1.0.6 (from 1.0.5)
2010-09-26 15:30:18 +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
Viktor Szakats
70544acb28 2010-09-08 00:17 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/sha1.c
  * src/rtl/sha1.h
  * src/rtl/hbsha1hm.c
  * src/rtl/sha2.c
  * src/rtl/sha2.h
  * src/rtl/hbsha2hm.c
  * src/rtl/sha1hmac.c
  * src/rtl/sha1hmac.h
  * src/rtl/hbsha1.c
  * src/rtl/sha2hmac.c
  * src/rtl/sha2hmac.h
  * src/rtl/hbsha2.c
    ! Renamed internal SHA functions to have hb_ prefix to
      avoid colliding with other tools, like OpenSSL.

  * utils/hbmk2/hbmk2.prg
    ! Typos in comment.
2010-09-07 22:17:41 +00:00
Viktor Szakats
4087753a5a 2010-09-06 23:44 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbqt/qtgui/hbqt_hbqgraphicsrectitem.cpp
    ! Missing EOL @ EOF.

  * utils/hbmk2/hbmk2.prg
    ! Minor typo in comment.
2010-09-06 21:44:54 +00:00
Viktor Szakats
65c34041ef 2010-09-01 18:31 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* package/mpkg_win_nightly.bat
    * Requirements.

  * utils/hbmk2/hbmk2.prg
    * Changed -rebuild option to not rebuild sub-projects.
    + Added -rebuildall option which will also rebuild sub-proects.

  * contrib/make.hbs
    * -rebuild -> -rebuildall
2010-09-01 16:31:34 +00:00
Viktor Szakats
cf74321e22 2010-08-28 13:08 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.pt_BR.po
  * utils/hbmk2/hbmk2.hu_HU.po
  * utils/hbmk2/hbmk2.prg
    + Switched .po files to UTF-8.
    + Set svn:mime-type accordingly.
    ; NOTE: Make sure to use UTF-8 aware editor to edit these files 
            from now on. These are the first UTF-8 files in hb repo.

  * INSTALL
    + Added .xz source file. Thanks Tamas for installing it
      required tools onto the nightly server.

  * package/mpkg_win_nightly.bat
    * Minor to reqs.
2010-08-28 11:19:15 +00:00
Viktor Szakats
abba013e29 2010-08-27 15:49 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbi18n2.prg
  * utils/hbmk2/hbmk2.prg
    + UTF8 BOM logic contained in core. Should fix it for all 
      cases in hbmk2 and hbi18n.
2010-08-27 13:50:20 +00:00
Viktor Szakats
79abf55913 2010-08-27 00:40 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbi18n2.prg
    + __I18N_POTARRAYSAVE(): new lUTF8BOM parameter.

  * utils/hbmk2/hbmk2.prg
    + Retain UTF8 BOM in .po files.
2010-08-26 22:41:55 +00:00
Viktor Szakats
711a35f256 2010-08-19 03:41 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Workaround for regression in mingw's PATH requirement.
      (New official release needs to have bin dir in PATH)
2010-08-19 01:41:22 +00:00
Viktor Szakats
384e8dce28 2010-08-18 22:48 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added extension to license. Pls read it, especially projects
      including hbmk2 or modified version of hbmk2 (f.e. MiniGUI).
      Help text and documentation is now covered by Creative Commons 
      Attribution-ShareAlike 3.0.
      Plus some restriction to not tear hbmk2 off of Harbour Project,
      to clearly show modified nature and always distribute modified 
      source.
      My intent is to leave hbmk2 as coherent part of Harbour, 
      possibly unmodified and my name not stripped.

  * config/global.mk
    % Minor opt.

  * package/mpkg_nightly.sh
    ! Harmless typo.

  * package/winuni/RELNOTES
    * Updated.
2010-08-18 20:53:14 +00:00
Viktor Szakats
4cfad619bd 2010-08-18 22:42 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
    + Some binary link.

  * utils/hbmk2/hbmk2.prg
    ! Changed the way links are installed. This should fix it
      for win platform.
    * Will now delete link before trying to create it in install phase.
2010-08-18 20:46:00 +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
Viktor Szakats
150eed9060 2010-08-07 17:39 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/gtalleg/gtalleg.hbc
    ! Fixed allegro-config command to not contain output redirection.

  * contrib/hbcurl/hbcurl.hbc
    ! Fixed lib name on non-win platforms.

  * contrib/hbgd/hbgd.hbc
    ! Fixed gd lib name on Linux.

  * contrib/hbodbc/hbodbc.hbp
  * contrib/sddodbc/sddodbc.hbp
  * contrib/hbssl/hbssls.hbp
  * contrib/hbcurl/hbcurl.hbc
  * contrib/hbcurl/hbcurls.hbp
    % Using allwin instead of win|wce.

  * utils/hbmk2/hbmk2.prg
    + Added trick to not corrupt version numbers in libnames when
      adding extension. (it will check for extensions beginning
      with numeric and add instead of replace extension in such case)
    ! Fixed pkg-config/*-config parser when result contained LF chars.

  * config/postinst.hbs
    * Do not create dynlib symlink on non-*nix platforms.

  ; Now HB_BUILD_CONTRIB_DYN works for all contribs also on Linux.

  ; TODO: Shouldn't harbour-2.1.0.so be called harbour.so.2.1.0 ?
  ; TODO: Creating versionless links for contribs.
2010-08-07 15:44:18 +00:00
Viktor Szakats
efc53f1fd4 2010-08-07 15:55 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! And another typo in prev.
2010-08-07 13:55:36 +00:00
Viktor Szakats
682a2130ef 2010-08-07 15:47 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Fix to prev.
2010-08-07 13:48:13 +00:00
Viktor Szakats
89912640a7 2010-08-07 15:23 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added ${hb_dynext} macro.

  * contrib/hbpost.hbm
    ! Further tweaked -hbdyn output names for *nix systems.
2010-08-07 13:24:13 +00:00
Viktor Szakats
fade421d2c 2010-08-07 14:49 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed to prepend dynlib prefix to output name -hbdyn mode.
2010-08-07 12:49:45 +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
Viktor Szakats
855cd11443 2010-08-06 14:35 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
  * contrib/hbqt/qtgui/hbqtgui.hbc
  * contrib/hbqt/qtwebkit/hbqtwebkit.hbc
  * contrib/hbqt/qtcore/hbqtcore.hbc
  * contrib/hbqt/qtnetwork/hbqtnetwork.hbc
  * contrib/hbqt/qtdesigner/hbqtdesigner.hbm
  * config/symbian/libs.mk
  * config/symbian/gcc.mk
  * config/symbian/global.mk
    + Some more Symbian support:
       - file extensions
       - qt lib names
       - disabling qtdesigner
       - workaround for gcc crash
    ; Pls note Harbour regards Symbian as Unix OS, while it's not.
      Later this can be cleaned.
2010-08-06 12:35:40 +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
e5c3e08baa 2010-08-06 10:46 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed to not propagate _ERRLEV_STOP from sub-projects.
    % -stop will not stop processing any further cmdline options.
    * Avoided one dangerous IF instruction.

  * contrib/hbqt/hbqt_commons.hbm
    % If static mode is not requested stop before loading plugins.

  * config/global.mk
    ! Always set HB_REBUILD_* options to 'no' when HB_BUILD_PKG=yes.
2010-08-06 08:46:36 +00:00
Viktor Szakats
a1a8bcd8d4 2010-08-06 09:56 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/global.mk
    ! Fixed setting LD_LIBRARY_PATH under pre-3.81 GNU Makes.
    + Will now set HB_SYSLOC=yes when creating .tgz packages which
      are meant to be installed to system locations. (didn't test 
      this one)
    + Will now set HB_INSTALL_DOC to /share/doc/harbour on *nix systems.
    ! Fixed to set HB_INSTALL_MAN to /share/man (instead of /man) on
      *nix systems.
    ; Please test/review these.

  * config/postinst.hbs
    + Create directory for "root documents". They are now stored
      in /share/doc/harbour for *nix.
    ! Fixed to store proper directory in ld.so.conf.d setting by
      removing HB_INSTALL_PKG_TOP from the beginning of full dynlib
      path.

  * debian/rules
  * package/harbour.spec
  * package/harbour-win.spec.in
  * package/harbour-wce.spec.in
    ! Use HB_INSTALL_PKG_TOP to denote the root of package dir structure.
    ; TODO: Change the name to HB_INSTALL_PKG_ROOT
    ; TODO: Optimize variable usage.
    ; TOFIX: Use HB_INSTALL_DYN instead HB_INSTALL_LIB in context of 
             dynamic libs in postinst.hbs and package scripts.

  * package/harbour.spec
    ! Fixed to honor HB_BUILD_NAME in local LD_LIBRARY_PATH setting.
      (is it needed?)

  * INSTALL
    - Deleted note about GNU Make 3.81.90
      3.82 is out and the bug was fixed.
    ! Updated mpkg_src.sh location.

  * contrib/make.hbs
    * Do not create dynlib, .hbd, .hbx if the main build process
      returned with non-zero errorlevel.

  * utils/hbmk2/hbmk2.prg
    + Return errorlevel when -stop is used in project.
    + Use manifest constants for errorlevels.

  * config/hbextern.hbs
    * Local function renamed.

  * contrib/xhb/xhb.hbx
  * contrib/hbxpp/hbxpp.hbx
    * Regenerated.

  * src/vm/pvaluehb.c
    ! Typo in comment.
2010-08-06 08:01:09 +00:00
Viktor Szakats
5c5498e4f1 2010-08-05 21:26 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed accindentally deleted line (today) causing pocc link errors.
2010-08-05 19:27:13 +00:00
Viktor Szakats
f38b2832df 2010-08-05 15:58 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    % Implemented optimized header parser code created by Przemek.
      With these additions/modifications from previous algorithm:
        + Use FindHeader() to locate the referenced headers.
        + Use different algorithm to find C vc PRG headers.
        % Completely skip known standard system headers.
        % Do not go down to headers included as system (using <>)
          IOW Check their timestamp but don't parse it for sub-headers.
      Please review it, it was quite a tough task, so I may have
      missed something. Here my reference build time went down
      from ~4 to ~2.5secs.
    ! Above implementation had the nice side effect that it fixed
      -autohbc feature in -inc mode.
    ! Fixed header finder code to always look in parent dir
      (and don't look in current dir in such case).
      I'd appreciate if this function (FindHeader() would be peer-reviewed
      to verify if it really matches the way how Harbour and C compilers
      try to find headers.

  * config/postinst.hbs
    ! Fixed typo in a recent commit causing RTE.

  * config/hbextern.hbs
    * Hide stderr in lib listing call.

  * contrib/hbcurl/hbcurl.c
    % Use '#include <>' to refer to curl header.
2010-08-05 14:00:33 +00:00
Viktor Szakats
878e9a84f0 2010-08-05 01:38 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added ${hb_dynsuffix} macro which returns a dynlib suffix
      value compatible with the naming system used for Harbour core
      dynlib (-x64, -wce-arm, -bcc, etc..)
    % Internals optimized to use dynsuffix value when calculating
      harbour core dynlib name.
    ! Fixed to not require macros inside filters to be uppercases.
      (as a side effect now unknown macro names will be passed
      as is to getenv() to check for possible envvar value)

  * contrib/hbpost.hbm
    + Will now use ${hb_dynsuffix} when forming output name in
      -hbdyn mode. So f.e. for x64 targets an '-x64' suffix will
      be used, which matches with the one used with core harbour
      dynlib. Also bcc targets will get -bcc postfix.
    + Will now use ${hb_dynsuffix) when forming implib output name
      if it's not empty (for x86, ia64, wce and bcc in practice).

  * contrib/make.hbs
  * config/postinst.hbs
    ! Display msg about extern generation only if it was really started.

  * config/hbextern.hbs
    ! Fixed to check for the presence of input file.
2010-08-04 23:39:32 +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
ddba3cc1fa 2010-08-03 18:34 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed error introduced in '2010-08-03 16:00 UTC+0200'
      Causing crash on output-less targets like -hbcontainer.
2010-08-03 16:34:44 +00:00
Viktor Szakats
3ab717ad6e 2010-08-03 16:00 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/make.hbs
    + Will now automatically generate EXTERN lists for libs if
      using HB_REBUILD_EXTERN=yes setting and GCC compiler.
      Pls note that after regeneration a new build pass is
      required to reflect the changes in final binaries.
      NOTE: I chose the .hbx extension for EXPORT code.
            Pls comment on it (adding a postfix to regular
            .prg or .ch extension is not an option as it won't
            fit the 8.3 filename limit).
    * Changed --hbinfo call to pass parameters just like the
      "real" hbmk2 call, to get correct information about
      the project.
    % Minor optimizations.

  * utils/hbmk2/hbmk2.prg
    + --hbinfo extended to return 'outputname'.

  * INSTALL
    + Documented HB_REBUILD_EXTERN
2010-08-03 14:00:52 +00:00
Viktor Szakats
4502935000 2010-08-03 14:28 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbqt/qtwebkit/hbqtwebkit.hbm
    + Added QtWebKit detection.
      Thanks to Francesco Perillo for tests.
    % Optimized.

  * contrib/hbqt/qtgui/hbqtguis.hbp
  * contrib/hbqt/qtgui/hbqtgui.hbc
  * contrib/hbqt/qtgui/hbqtgui.hbm
  * contrib/hbqt/qtgui/hbqtgui.hbp
  * contrib/hbqt/qtwebkit/hbqtwebkits.hbp
  * contrib/hbqt/qtwebkit/hbqtwebkit.hbc
  + contrib/hbqt/qtwebkit/hbqtwebkit.hbm
  * contrib/hbqt/qtwebkit/hbqtwebkit.hbp
  * contrib/hbqt/qtcore/hbqtcore.hbp
  * contrib/hbqt/qtcore/hbqtcore.hbc
  * contrib/hbqt/qtcore/hbqtcores.hbp
  * contrib/hbqt/qtcore/hbqtcore.hbm
  * contrib/hbqt/qtnetwork/hbqtnetwork.hbp
  * contrib/hbqt/qtnetwork/hbqtnetworks.hbp
  * contrib/hbqt/qtnetwork/hbqtnetwork.hbc
  + contrib/hbqt/qtnetwork/hbqtnetwork.hbm
  * contrib/hbqt/qscintilla/hbqscintilla.hbm
  * contrib/hbqt/qscintilla/hbqscintilla.hbp
  * contrib/hbqt/qscintilla/hbqscintilla.hbc
  * contrib/hbqt/qscintilla/hbqscintillas.hbp
  + contrib/hbqt/qtdesigner/hbqtdesigner.hbm
  * contrib/hbqt/qtdesigner/hbqtdesigner.hbp
  * contrib/hbqt/qtdesigner/hbqtdesigners.hbp
  * contrib/hbqt/qtdesigner/hbqtdesigner.hbc
    % Optimization (removed some redundancy).
    * Synced option ordering.

  * utils/hbmk2/hbmk2.prg
    + Added TODO
    + Added 'nm' cmdline to extract HB_FUNCs. Sent by Przemek.
      (TODO: adapt it to leading underscore for win)
2010-08-03 12:29:37 +00:00
Viktor Szakats
6157304b83 2010-08-03 11:14 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed to clean map file when -map option is used.
    * Little cleanup to prev.
2010-08-03 09:14:46 +00:00
Viktor Szakats
a4d74c60f8 2010-08-03 11:07 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed to clean implibs generated in -hbdyn and -hbexe modes.
2010-08-03 09:08:17 +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
cb0eb2b1a5 2010-08-02 16:46 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed regression where -head=native would miss the header dir options 
      when doing the header detection.
    + Added TOFIX about (experimental) -autohbc not working with -inc option.
2010-08-02 14:46:46 +00:00
Viktor Szakats
8b2f428c09 2010-08-02 14:29 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbqt/qtcore/hbqtcore.hbc
  - contrib/hbqt/hbqt.h
  + contrib/hbqt/qtcore/hbqt.h
    * Moved hbqt.h inside hbqtcore.

  * contrib/hbqt/hbqt.ch
  * contrib/hbqt/qtgui/hbqt_hbqabstractitemmodel.h
    ! Moved HBQT_AIM* constants to local file.

  * contrib/hbqt/hbqt.ch
    % Cleaned embedded HB_BITOR() calls.

  - contrib/hbqt/hbqscintilla/hbqscintilla.qtp
  + contrib/hbqt/utils/qscintilla.qtp
    * Moved .qtp next to others.

  * contrib/hbqt/hbqscintilla/hbqscintilla.hbp
  + contrib/hbqt/hbqscintilla/hbqscintilla.hbc
  + contrib/hbqt/hbqscintilla/hbqscintilla.hbm
  + contrib/hbqt/hbqscintilla/hbqscintillas.hbp
  - contrib/hbqt/hbqscintilla/*
  - contrib/hbqt/hbqscintilla/hbqt_local.h
  + contrib/hbqt/hbqscintilla/g
  + contrib/hbqt/hbqscintilla/g/*
  + contrib/hbqt/hbqscintilla/g/filelist.hbm
  * contrib/hbqt/hbqscintilla/doc/en/*
    * Moved hbqscintilla files to match new layout.
    + Added new hbmk2 make files. Updated existing one.
    * Regenerated.
    + Added TODOs to make files.
    + Added hbqtcore and hbqtgui as dependencies.

  * contrib/hbqt/gtqtc/gtqtc.cpp
  * contrib/hbqt/gtqtc/gtqtc.hbc
    ! Some tweaks to at least make it build. Probably this
      project should be deleted.

  * contrib/hbqt/hbqscintilla/hbqt_hbqsciscintilla.cpp
    % Deleted unnecessary headers.

  * contrib/hbqt/hbqscintilla/hbqt_hbqsciscintilla.h
    ! Fixed QT header references.
    ! Added EOL @ EOF.

  * contrib/hbqt/hbqscintilla/hbqscintilla.ch
    * Formatting.

  * contrib/hbqt/hbqscintilla/qth/HBQsciScintilla.qth
  * contrib/hbqt/hbqscintilla/qth/QsciAbstractAPIs.qth
  * contrib/hbqt/hbqscintilla/qth/QsciAPIs.qth
  * contrib/hbqt/hbqscintilla/qth/QsciCommand.qth
  * contrib/hbqt/hbqscintilla/qth/QsciCommandSet.qth
  * contrib/hbqt/hbqscintilla/qth/QsciDocument.qth
  * contrib/hbqt/hbqscintilla/qth/QsciLexer.qth
  * contrib/hbqt/hbqscintilla/qth/QsciLexerCPP.qth
  * contrib/hbqt/hbqscintilla/qth/QsciLexerFlagship.qth
  * contrib/hbqt/hbqscintilla/qth/QsciScintilla.qth
  * contrib/hbqt/hbqscintilla/qth/QsciStyle.qth
  * contrib/hbqt/hbqscintilla/qth/QsciStyledText.qth
    * Deleted manual headers which are now automatic.

  * utils/hbmk2/hbmk2.prg
  * utils/hbmk2/hbmk2.hu_HU.po
  * utils/hbmk2/hbmk2.pt_BR.po
    - Deleted -head=partial header parsing method.
      The new default is -head=full. Partial didn't
      give much performance increase, while having
      the risks to miss a header.

  * contrib/hbqt/qtgui/hbqtgui.hbm
  * contrib/hbqt/qtgui/hbqtgui.hbp
  * contrib/hbqt/qtgui/hbqtguis.hbp
  * contrib/hbqt/qtcore/hbqtcore.hbm
  * contrib/hbqt/qtcore/hbqtcore.hbp
  * contrib/hbqt/qtcore/hbqtcores.hbp
    % Removed some redundancy.
2010-08-02 12:33:03 +00:00
Viktor Szakats
d6d1ba7c89 2010-08-02 02:10 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/make.hbs
    + Make it capable to build project dependencies which are not on the
      central project list. (this feature is used with hbqt)
    + Added -shl to hbmk2 build calls.

  * utils/hbmk2/hbmk2.prg
    + Added -shl option to show sub-project level in every output line.
    + Added experimental -hbcontainer target mode, which is virtual target,
      it won't create anything. Name not finalized yet.
    + Normalizing some more paths.
    ! Fixed not include the same plugin twice.
    ! Some internal fixes to -hb<target> option handling. Could have caused
      problems in rare situations.
    % Minor optimizations.

  * contrib/hbqt/utils/hbqtgen.prg
    * Changed to generate hbqt.h header references without relative dir, so it
      can now be freely solved using header dir options at build time.

  - contrib/hbqt/hbmk2_plugin_qt.hbs
  + contrib/hbqt/hbqt_hbmk2_plugin.hbs
  * contrib/hbqt/hbqt_common.hbc
  * contrib/hbqt/hbqt_common.hbm
    * Renamed.

  * contrib/hbqt/qtcore/hbqtcore.hbc
  * contrib/hbqt/qtgui/hbqtgui.hbc
  * contrib/hbqt/qtnetwork/hbqtnetwork.hbc
    ! Readded previously deleted trick which is required for
      successful dynlib link.

  * contrib/hbplist
  * contrib/hbqt/hbqt.hbp
    + Modified how container project is defined.
    * Now main container subproject is listed in central project list file.

  * contrib/hbqt/hbqt_common.hbc
  * contrib/hbqt/qtgui/hbqtgui.hbp
    - Moved -gui/-gtnul options inside hbqtgui.

  * contrib/hbqt/hbqt_common.hbm
    + Added hbqt root dir as header dir.

  * contrib/hbqt/utils/qtcore.qtp
  * contrib/hbqt/utils/qtgui.qtp
  * contrib/hbqt/utils/qtnetwork.qtp
  * contrib/hbqt/hbqt_common.hbm
  * contrib/hbqt/qtcore/hbqtcore.hbp
  * contrib/hbqt/qtcore/hbqtcores.hbp
  - contrib/hbqt/qtcore/*
  + contrib/hbqt/qtcore/g
  + contrib/hbqt/qtcore/g/*
  * contrib/hbqt/qtgui/hbqtgui.hbp
  * contrib/hbqt/qtgui/hbqtguis.hbp
  - contrib/hbqt/qtgui/*
  + contrib/hbqt/qtgui/g
  + contrib/hbqt/qtgui/g/*
  * contrib/hbqt/qtnetwork/hbqtnetwork.hbp
  * contrib/hbqt/qtnetwork/hbqtnetworks.hbp
  - contrib/hbqt/qtnetwork/*
  + contrib/hbqt/qtnetwork/g
  + contrib/hbqt/qtnetwork/g/*
    * Moved generated sources inside 'g' subdir.
    * Sources regenerated.

  - contrib/hbqt/hbqt_base.cpp
  - contrib/hbqt/hbqt_destruct.cpp
  - contrib/hbqt/hbqt_hbevents.cpp
  - contrib/hbqt/hbqt_hbevents.h
  - contrib/hbqt/hbqt_hbslots.cpp
  - contrib/hbqt/hbqt_hbslots.h
  - contrib/hbqt/hbqt_misc.prg
  - contrib/hbqt/hbqt_utils.cpp
  + contrib/hbqt/qtcore/hbqt_base.cpp
  + contrib/hbqt/qtcore/hbqt_destruct.cpp
  + contrib/hbqt/qtcore/hbqt_hbevents.cpp
  + contrib/hbqt/qtcore/hbqt_hbevents.h
  + contrib/hbqt/qtcore/hbqt_hbslots.cpp
  + contrib/hbqt/qtcore/hbqt_hbslots.h
  + contrib/hbqt/qtcore/hbqt_misc.prg
  + contrib/hbqt/qtcore/hbqt_utils.cpp
  * contrib/hbqt/qtcore/hbqtcore.hbm
    * Moved hbqtcore files to their own component subdir.

  - contrib/hbqt/hbqt_errorsys.prg
  - contrib/hbqt/hbqt_hbqabstractitemmodel.cpp
  - contrib/hbqt/hbqt_hbqabstractitemmodel.h
  - contrib/hbqt/hbqt_hbqmainwindow.cpp
  - contrib/hbqt/hbqt_hbqmainwindow.h
  - contrib/hbqt/hbqt_hbqplaintextedit.cpp
  - contrib/hbqt/hbqt_hbqplaintextedit.h
  - contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
  - contrib/hbqt/hbqt_hbqsyntaxhighlighter.h
  - contrib/hbqt/hbqt_hbqtableview.cpp
  - contrib/hbqt/hbqt_hbqtableview.h
  - contrib/hbqt/THbQtUI.prg
  + contrib/hbqt/qtgui/hbqt_errorsys.prg
  + contrib/hbqt/qtgui/hbqt_hbqabstractitemmodel.cpp
  + contrib/hbqt/qtgui/hbqt_hbqabstractitemmodel.h
  + contrib/hbqt/qtgui/hbqt_hbqmainwindow.cpp
  + contrib/hbqt/qtgui/hbqt_hbqmainwindow.h
  + contrib/hbqt/qtgui/hbqt_hbqplaintextedit.cpp
  + contrib/hbqt/qtgui/hbqt_hbqplaintextedit.h
  + contrib/hbqt/qtgui/hbqt_hbqsyntaxhighlighter.cpp
  + contrib/hbqt/qtgui/hbqt_hbqsyntaxhighlighter.h
  + contrib/hbqt/qtgui/hbqt_hbqtableview.cpp
  + contrib/hbqt/qtgui/hbqt_hbqtableview.h
  + contrib/hbqt/qtgui/THbQtUI.prg
  * contrib/hbqt/qtgui/hbqtgui.hbm
    * Moved hbqtgui files to their own component subdir.

  - contrib/hbqt/qtdesigner/hbqtdesigner.qtp
  - contrib/hbqt/qtwebkit/hbqtwebkit.qtp
  + contrib/hbqt/utils/qtdesigner.qtp
  + contrib/hbqt/utils/qtwebkit.qtp
    * Moved .qtp files into utils subdir.
2010-08-02 00:42:48 +00:00
Viktor Szakats
c5c041ccb2 2010-08-01 14:09 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    % normalize rebased sources paths (mingw, *nix/gcc).

  - contrib/hbqt/generator/qt45.qtp
  + contrib/hbqt/generator/qtcore.qtp
  + contrib/hbqt/generator/qtnetwork.qtp
  + contrib/hbqt/generator/qtgui.qtp
    * Split monolithic .qtp to components.
    ! Moved QUiLoader to qtgui (from qtcore) to fix circular component
      dependency.

  * contrib/hbqt/generator/hbqtgen.prg
    + Rewrote to avoid internal tricks to detect which class belongs to
      which component.
    + Changed to create GC related functions on a per-component bases
      (instead of monolithic hbqt_garbage.h).
    * Changed to save documents using core hbdoc API.
    % Deleted some unused functions and variables.
    ; After these changes the generator doesn't have any hard-coded
      information about components, so it can be extended with new
      one via new .qth files.

  * contrib/hbqt/qtgui/*
  * contrib/hbqt/qtcore/*
  * contrib/hbqt/qtnetwork/*
  * contrib/hbqt/doc/en/*
    * Regenerated.

  - contrib/hbqt/qtcore/TQUiLoader.prg
  - contrib/hbqt/qtcore/QUiLoader.cpp
  + contrib/hbqt/qtgui/QUiLoader.cpp
  + contrib/hbqt/qtgui/TQUiLoader.prg
    ! Moved QUiLoader to qtgui (from qtcore) to fix circular component
      dependency.

  * contrib/hbqt/qth/QUrl.qth
    ! Fixed to not inherit from class present in qtgui.
      (fixes dependency)

  * contrib/hbqt/hbqt.h
  - contrib/hbqt/hbqt_garbage.h
  * contrib/hbqt/hbqt_hbevents.h
  * contrib/hbqt/hbqt_hbslots.h
  + contrib/hbqt/qtcore/hbqtcore_garbage.h
  + contrib/hbqt/qtgui/hbqtgui_garbage.h
  + contrib/hbqt/qtnetwork/hbqtnetwork_garbage.h
    - Deleted central header for GC functions.
    + Added per component GC function header.

  - contrib/hbqt/filelist.hbm
  - contrib/hbqt/hbqt.hbc
  - contrib/hbqt/hbqt.hbp
  - contrib/hbqt/hbqtmain.hbp
  - contrib/hbqt/hbqtmains.hbp
    - Deleted central hbqt holder project and .hbc file.

  + contrib/hbqt/hbqtcore.hbc
  * contrib/hbqt/hbqtcore.hbp
  * contrib/hbqt/hbqtcores.hbp
  * contrib/hbqt/hbqtgui.hbp
  * contrib/hbqt/hbqtguis.hbp
  + contrib/hbqt/hbqtgui_filelist.hbm
  * contrib/hbqt/hbqtnetwork.hbp
  * contrib/hbqt/hbqtnetworks.hbp
  + contrib/hbqt/hbqtcore_filelist.hbm
    + Merged qtmain lib content to qtcore and qtgui. This finally
      drops the need for an additional wrapper lib compared to qt ones,
      and it fixes build dependencies.
      Formerly libs had circular dependencies, now qtcore is the
      main lib and other qt* libs depend on this central one.

  * contrib/hbqt/hbqt_common.hbm
    + Added qtcore to header path list.

  * contrib/hbqt/tests/hbmk.hbm
  * contrib/hbqt/tests/wvtqt.hbp
  * contrib/hbxbp/hbxbp.hbc
    * Updated to include per component .hbc files instead of
      central hbqt.hbc.

  * contrib/hbplist
    * Changed central hbqt project to its three components.

  * contrib/hbxbp/tests/wvtqt.hbp
    ! Fixed hbc reference.

  ; After these changes, the qt lib layout is much cleaner and
    it makes it possible to build .dll versions of them. Except
    still one issue.

  ; TODO: Further cleanup to file layout. Componentize docs,
          qth files, move files in central dir to component dirs.

  ; TOFIX: hbqtcore references qtgui in QMESSAGEBOX() which is a
           hbqtgui function. This has to be fixed. hbqtcore.dll is
           not build because of this.
           The easiest would be to rewrite HBQT_MESSAGEBOX() in
           C++ to use QMessageBox QT class directly and place
           this function into hbqtcore.
           Pritpal, can you do it?

  ; TOFIX: If this is done it would be also good to fix hbqtcore -> qtgui
           dependencies. Currently this is QMessageBox plus some stuff
           referenced from hbqt_hbqabstractitemmodel.cpp. This latter
           can pbly be solved by moving this HB class to hbqtgui.
2010-08-01 12:32:44 +00:00
Viktor Szakats
4b656a7a22 2010-07-31 20:10 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    * Changed to not give fatal error if cmdline (or .hbp)
      didn't contain any sources. Just warn. Required for hbqt.hbp,
      which is a holder project without own output.

  ; NOTE: BTW HBQT fails very badly on any dynamic lib creating
          attempt, and the reason is that it's still a monolithic
          lib under the surface, just split some files into separate
          libs to avoid cmdline length.
2010-07-31 18:13:53 +00:00
Viktor Szakats
ff5a1d161b 2010-07-31 13:44 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/make.hbs
    % Code consolidation.
    ! Fixed recent regression, whereas now again the root project's
      .hbc file will be added to the make process in HB_BUILD_CONTRIB_DYN
      mode.
    + Changed the way filter is processed, now dependent packages will
      always be built, so there is no need to manually pick all the
      dependencies too.
    * Internal terminology cleanup.
    + Will now also rebuild the _dependencies_ in HB_BUILD_CONTRIB_DYN mode.
    - Deleted forcing English language for hbmk2 output.
    ; Regressions are possible
    ; NOTE: This dynamic stuff is a real can of worms. Virtually infinite
            combinations of dynamic vs static libs may be supported, plus
            there is ST vs MT issue, where we must decide about this at
            dynlib build time, and f.e. what happens when trying to load
            two .dlls one with was linked against MT Harbour and the other
            against ST? It's a combinatorical explosion.

  * src/vm/vmmt/Makefile
    ! Fixed missing procaddr.c causing unresolved externals when creating
      MT mode dynlibs.

  * config/global.mk
    ! Attempt to fix LD_LIBRARY_PATH problem, adding dynamic lib build
      dir to this envvar while doing the build, pls test it, I didn't.

  + contrib/hbplist
  - contrib/pkglist
    * Renamed.

  * contrib/hbct/ctwin.h
    ! Added missing HB_EXPORT.

  * contrib/xhb/xhb.hbp
  * contrib/hbgd/hbgd.hbp
    ! Added missing project references also to .hbp files.

  * utils/hbmk2/hbmk2.prg
    ! Fixed regression with mingw -hbdyn after adding new stub which
      stole the show by explicitly exporting one symbol which (due
      to autoexport function in mingw) prevented regular symbols to
      be exported. This fix will remove the exception so far applied
      to mingw/cygwin compilers where HB_DYNLIB was not used with these,
      now it's used equally on all compilers/platforms. For this to
      be effective, it should be noted that HB_EXPORT must be used
      in all public declarations, even in contrib.
    ! Fix (?) to not include MAIN proc force code when building with
      hbmaindllp.

  * contrib/xhb/thtm.prg
    % Changed hbct LTOC to simple iif()
    ; TOFIX: xhb makes reference to (deprecated) hb_symEval symbol:
             Info: resolving _hb_symEval by linking to __imp__hb_symEval (auto-import)

  * contrib/rddsql/hbrddsql.h
    ! Added HB_EXTERN_BEGIN/END
    ! Added HB_EXPORT
    ! Added extern

  * contrib/sddoci/sddoci.hbp
    ! Restored some flags present in old Makefile to make it
      work with mingw and bcc.

  * contrib/hbqt/generator/hbqtgen.prg
  * contrib/hbqt/hbqt.h
    ! Fixed to add HB_EXPORT to public declarations.
    ; TOFIX: hbqt still doesn't link in hbdyn mode.

  * contrib/hbqt/hbqt_garbage.h
  * contrib/hbqt/doc/en/*.txt
    * Regenerated.

  * contrib/hbqt/hbqt.hbc
    ! Fixed to not include QtUiTools in -hbdyn mode. It creates duplicate
      symbols at link. Maybe this is not the right fix, go figure.
      (HB_STATIC_QT mode still has to be checked)

  ; TODO: Add ${__HB_DYN__} to all .hbc files.
2010-07-31 11:51:37 +00:00
Viktor Szakats
45819c716e 2010-07-31 02:32 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + -implib= option now accepts filename, too (exactly like -o option)
      So it's possible to manually set the generated implib lib in
      -hbdyn (and -hbexe) modes.

  * contrib/hbpost.hbm
    + Moved the _dll/_exe implib output name postfixing logic from
      hbmk2 (though hbmk2 will still keep appending these by default)
      This way the "_dll" postfix thing is fully controlled by make.hbs 
      and hbpost.hbm, no hidden "agreements" with hbmk2.

  * config/global.mk
    + Added log warning, if the source tree is modified.
2010-07-31 00:35:57 +00:00
Viktor Szakats
464f958e32 2010-07-30 20:17 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Will now autodetect /bin/plat/comp bin dir, if present.
    ! Fixed to set dynlib dir to bin dir on non-*nix platforms.
      As a conseqeunce bin dir will now be added to the libpath
      list on these platforms. Allowing to access .dlls directly
      in compilers that support it (mingw).
    ! Fixed to use HB_INSTALL_PREFIX instead of bin dir as a base
      to find addons/contribs dir structures (for .hbc autofind).
    ! Fixed to really include hbmaindllp stub added in recent commit.
      Anyhow, loading contrib .dlls dynamically still don't work.

  * contrib/make.hbs
    ! Fixed to honor user setting when creating dynlib in stdalone mode.

  * contrib/hbcomm/hbcomm.prg
    * space @ EOL.
2010-07-30 18:18:12 +00:00
Viktor Szakats
a7a0af8bdd 2010-07-30 18:13 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added -depimplib[-] option to contrib implib creation for
      dependency dlls.
    + Added -autohbm[-] cmdline-only option to disable processing of
      hbmk.hbm in current directory.

  * contrib/hbpost.hbm
    + Disabled implib creation for dependency dlls for HB_BUILD_CONTRIB_DYN
      mode.

  * contrib/hbgd/hbgd.hbp
    ! Fixed to use .lib as implib source for coff-compatible targets and mingw.

  ; NOTE: Successfully created a small test app which uses harbour.dll and
          contrib .dlls:
             'contrib\hbct\tests\hbmk2 addascii.prg -lhbct_dll -shared -autohbm-'
             'contrib\hbpgsql\tests\hbmk2 async.prg -lhbpgsql_dll -shared -autohbm-'
          (-autohbm is there only to disable hbmk.hbm processing)
          Quite nice, isn't it?
          For these examples, there are problems:
             'contrib\hbblat\tests\hbmk2 blatcmd.prg -lhbblat_dll -lhbwin_dll -shared -autohbm-'
             It's showing application errro 0xc0000142.
          For this other one:
             'contrib\hbgd\tests\hbmk2 barms.prg  -lhbgd_dll -shared -autohbm-'
             It's showing this RTE:
             ---
             Error BASE/3003  Cannot find super class: __CLSINSTSUPER
             Called from __CLSINSTSUPER(0)
             Called from HBCLASS:CREATE(0)
             Called from TCODE(0)
             Called from MAIN(30)
             ---
          "Almost" there. If you have any idea why it fails, pls tell.

          Loading contrib pcode .dlls dynamically:

             --- hbmk2 testdyn.prg -shared -autohbm-
             DYNAMIC CHARADD

             PROCEDURE Main()
                LOCAL l := hb_libLoad( "hbct.dll" )
                IF ! Empty( l )
                   QOUT( CHARADD( "abc", Chr( 1 ) ) )
                ENDIF
                RETURN
             ---
             Running it results in:
             ---
             Error BASE/1001  Undefined function: CHARADD
             Called from CHARADD(0)
             Called from MAIN(7)
             ---
2010-07-30 16:13:28 +00:00