Commit Graph

1343 Commits

Author SHA1 Message Date
Viktor Szakats
93d1af68b2 2010-06-10 14:24 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbqt/plug_moc.prg
  * utils/hbmk2/hbmk2.prg
    + Implemented separate filename notation setting for scripts 
      and cmdlines (just like with filename escaping).
      This should aid the win/bcc on linux cross-build scenario.
      (not testing done though)
2010-06-10 12:25:16 +00:00
Viktor Szakats
f3321fd140 2010-06-10 10:01 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added msvc version autodetection (works similarly
      to the .mk solution)
2010-06-10 08:03:19 +00:00
Viktor Szakats
0618886c04 2010-06-10 02:33 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/global.mk
    % Minor optimization, in bcc location detection. I hope.
    + Changed autodetection to look for fixed .exe extension
      for tools which have no native *nix versions, so their
      name always ends with .exe regardless of host platform.
      This should make these tools usable under WINE.

  * config/win/bcc.mk
    + Attempt to better support bcc on linux build scenario,
      by using backslash escaping in this case.

  * utils/hbmk2/hbmk2.prg
    * Cleaned up to use hard-coded .exe extensions in autodetection 
      code for tools which have no other version. (syncing with 
      above GNU Make change). This has no effect yet.

  * config/global.mk
  * utils/hbmk2/hbmk2.prg
    ! xcc.exe -> xCC.exe
2010-06-10 00:34:12 +00:00
Viktor Szakats
b4fb0856f5 2010-06-09 22:38 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Tuned watcom filename escaping behavior:
      It will now use *nix notation on *nix builds.
      It will now use double quoting on Windows builds.
      It will now use single quoting in script files on all builds.
      No quoting on other platforms. [ watcom is special because
      each platform native compiler can create builds for other
      platforms, so we must use platform native fn quoting. ]

      This should in theory (hopefully) fix the remaining
      combinations for watcom, though I didn't test any
      of these. [ The only exception is using watcom Windows
      .exe via WINE on *nix systems. But that seems a little
      bit exotic of an option ;)
      Oh for testing pass some source filenames with spaces
      in them.
   ; TOCHECK: Whether watcom script files (@<fn>) use the same
              single quoting ('filename') on all platforms.
              For some reason so far it was only used for 
              win targets, so I may have broken it, if it 
              was done for good reason.
2010-06-09 20:42:12 +00:00
Viktor Szakats
a4b611ad44 2010-06-09 21:46 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed to use *nix-style filename escaping when calling
      Windows cross tools only available via WINE (bcc, msvc*, pocc).
    ! Better *nix-style char escaping in filenames.
2010-06-09 19:46:38 +00:00
Viktor Szakats
164810c117 2010-06-09 20:52 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* ChangeLog
    ! Typos in last commit log.

  * contrib/hbqt/plug_moc.prg
  * utils/hbmk2/hbmk2.prg
    ! Fixed to use proper filename notation also in plugins.

  * package/mpkg_win.nsi
  * package/winuni/mpkg_win_uni.nsi
    * Minor cleanups.
2010-06-09 18:53:18 +00:00
Viktor Szakats
c8a32bfc8c 2010-06-09 19:56 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Quite big commit aiming to clean path forming in different
      situations. After this is change it should be more or less
      true that internally hbmk2 always uses native path format,
      it should accept _any_ format regardless of platform,
      and it should convert filenames to proper format only when
      calling external compiler tools, according to their specific
      taste.
      F.e. this should fix problems when doing Windows cross-build
      on *nix systems, with watcom, or other compilers (except
      mingw) which has native compiler. It should continue to
      work with WINE based on compilers in similar situations.
      There is one specific exception when passing around
      filenames as part of options. In this case hbmk2 cannot do
      too much magic, so try to avoid it.
      Though I never actualluy tried this latter case.
      Please test it, regressions are possible. I'd be happy to 
      see stress tests with passing various combination of pathseps 
      and watching -trace output whether everything is properly 
      converted to right format.
    + Will now convert filenames to Cygwin format for Cygwin
      targets.
    ! Fixed to accept .hbi files without '@' prefix.

  * config/postinst.prg
    % Do not add '@' prefix when referring to .hbi files.

  * src/vm/extend.c
    ! Fixed TRACE message of new hb_parnintdef() function.

  * src/rtl/hbcomhb.c
    * Minor correction to one function description in comment.

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

  * include/hbcom.ch
    + Added comments.
    * Formatting.
    + Added comment that code is used by .c code.

  * contrib/hbtpathy/telepath.prg
    * Rewritten to use native HB_COM*() API (instead of hbct
      specific COM_() one).
    + tp_send() code rewritten to use core timeout functionality.
    + Implemented formerly disabled tp_ctrldtr() function.
      (pls review it)
    % FetchChars() internal function simplified.

  * contrib/hbcomm/hbcomm.prg
    * Rewritten to use native HB_COM*() API (instead of hbct
      specific COM_() one).

  * contrib/hbsms/hbsms.prg
    * Rewritten to use native HB_COM*() API (instead of hbct
      specific COM_() one).
    * Receive code rewritten to rely on core timeout functionality
      instead of rolling local implementation.

  ; I didn't make any tests with API converted COM code, so please
    review and test these changes.

  * contrib/hbtpathy/hbtpathy.hbc
  * contrib/hbcomm/hbcomm.hbc
  * contrib/hbsms/hbsms.hbc
    - Deleted hbct dependency.

  * INSTALL
  * package/winuni/RELNOTES
    * QT 4.6.2 -> 4.6.3
2010-06-09 17:57:34 +00:00
Viktor Szakats
c6543dc196 2010-06-08 22:26 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Modified regex expression to be POSIX compliant.
      Thanks to Tamas Tevesz for this modification.

      Now hbmk2 should be compatible with supported regex engines, 
      though it continues to fail (gracefully) if Harbour core is built
      using 'HB_WITH_PCRE=no' option.
2010-06-08 20:32:18 +00:00
Viktor Szakats
45447a4c91 2010-06-08 20:28 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbregexc.c
    + Restored RTE which is thrown when unsupported regex string is
      found in any .prg level regex API calls except HB_REGEXCOMP().
      The only difference compared to previous solution is different
      error code (3015) to differenciate this case from wrong
      parameter _type_ error cases.
    ; TOFIX: IMO even current solution is not ideal, because it just
             forces developers to use HB_ISREGEX() to pre-evaluate regex
             strings before actually using them (causing performance hit),
             or it forces them to use HB_REGEXCOMP() to pre-compile and
             pre-evaluate the expressions before passing them to actual
             regex functions, in the valid case they want to avoid unexpected
             RTEs due to missing or unsupported regex (PCRE) subsystem.
             IOW it makes plain HB_ATX( <cRegExp>, ... ) style calls
             prone to fail with RTE in certain, very hard to predict
             situations in officially supported Harbour builds.
             Comments are appreciated.

  * utils/hbmk2/hbmk2.prg
    * Deleted unused code.
    * Formatting.
2010-06-08 18:32:53 +00:00
Viktor Szakats
ce166b1c81 2010-06-08 13:17 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/hbregexc.c
    * Changed to not throw RTE, just gracefully return
      error value when invalid PCRE expression is used.
      It will continue to throw RTE only for user-controllable
      error situations, f.e. when wrong argument type is passed.
    ! Fixed to not contain English text hard-coded in RTE message.

  * src/rtl/hbregex.c
    * HB_ATX() changed to fill parameters passed by reference with
      error values (zeros) in case of error.
    * HB_REGEX(), HB_REGEXSPLIT(), HB_REGEXATX(), HB_REGEXALL()
      functions changed to consistently return arrays. If there
      is no match, the array will be empty. This gives a more
      natural (and Clipper/Harbour-like) interface (f.e. return
      value can be passed to FOR EACH loop without extra checks
      and extra local variable).
      Slight INCOMPATIBILITY for those who did 'r == NIL' check
      to verify non-match and something special in this case.
      For code simply evaluating the returned matches, the NIL
      check can be deleted, and for code which wants to be
      backward/forward compatible _and_ to specifically check
      for no match situation it's suggested to use 'EMPTY( r )'.
      Please check me.
    * HB_REGEXMATCH() marked as HB_LEGACY_LEVEL4. (this leaves
      quite some headstart to change it)

  * include/hbextern.ch
    - Deleted HB_REGEXMATCH().

  * utils/hbmk2/hbmk2.prg
    % Simplified regex usage after above changes.
    + Will now show an internal error in case the used
      regex is invalid in current Harbour context
      (f.e. when no PCRE engine was forced by user, or
      the one used doesn't support the expression used by
      hbmk2). I don't know how special current expression
      is (it doesn't seem very much so), but it can be
      streamlined to something more compatible if current
      is deemed not ideal.

  * src/compiler/hbusage.c
    * Changed to enclose e-mails between '()' instead of '<>'.

  * include/hbsetup.h
    ! Patch by Tamas Tevesz for SunPro compiler.

  * ChangeLog
    - Deleted my personal exception from ChangeLog license.
2010-06-08 11:19:04 +00:00
Viktor Szakats
163ee53500 2010-06-06 00:50 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
  * external/sqlite3/Makefile
  * utils/hbmk2/hbmk2.prg
  * config/global.mk
  * config/wce/msvcarm.mk
  * config/win/msvc.mk
    * Changed HB_COMPILER_VER values for msvc targets. Previously it was
      the Visual Studio version, now it is the C compiler version,
      the same value used in _MSC_VER predefined macro:

         Name                                    old  NEW
         -------------------------------------- ---- ----
         C Compiler version 6.0                       600
         C/C++ compiler version 7.0                   700
         Visual C++, Windows, version 1.0        100  800
         Visual C++, 32-bit, version 1.0         100  800
         Visual C++, Windows, version 2.0        200  900
         Visual C++, 32-bit, version 2.x         200  900
         Visual C++, 32-bit, version 4.0         400 1000
         Visual C++, 32-bit, version 5.0         500 1100
         Visual C++, 32-bit, version 6.0         600 1200
         Visual Studio .NET (2002), version 7.0  700 1300
         Visual Studio .NET 2003, version 7.1    710 1310
         Visual Studio 2005, version 8.0         800 1400
         Visual Studio 2008, version 9.0         900 1500
         Visual Studio 2010, version 10.0       1000 1600

      INCOMPATIBLE for users setting HB_COMPILER_VER manually, pls
      change the value as indicated above. For most users it's
      recommended to rely on autodetection and not to set this
      variable at all.

  * config/postinst.prg
    ! Fixed to use hb_osFileMask() instead of hard-coded '*' mask.
2010-06-05 22:53:22 +00:00
Viktor Szakats
f3c2721fff 2010-06-04 18:50 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added pkg-config and *-config support for MacPorts.
2010-06-04 16:50:59 +00:00
Viktor Szakats
d1ba73cb8a 2010-06-04 12:24 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/memvarhb.prg
    * Minor in comment.

  * contrib/hbtpathy/tpunix.c
    + Applied patch sent to the list by Tamas Tevesz.
      Fixing some compilation problems due to missing predefined macros
      on certain *nix systems.

  * contrib/hbqt/hbqt_common.hbm
    * Formatting.

  * utils/hbmk2/hbmk2.prg
    ! Fixed to make sure -depcontrol= header path value is added
      to the header path search list in the same location as specified
      on the cmdline.
2010-06-04 10:24:30 +00:00
Viktor Szakats
0d6269e168 2010-06-04 04:20 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added basic support to recognize headers inside Frameworks
      on darwin systems.
    + Added basic support to recognize Objective C (.m) input files.
    % Optimized to only deal with header exclusion of known
      headers if they are specified as "system directories"
      (specified as #include <...>)
    ! Minor cleanup when adding include dirs after header detection.

  * contrib/hbqt/hbqt_common.hbm
    % Cleaned QT autodetection on darwin systems after adding
      basic support for Frameworks to hbmk2.

  * contrib/hbqt/hbqtnetwork.hbp
  * contrib/hbqt/hbqtgui.hbp
  * contrib/hbqt/gtqtc/gtqtc.hbp
    % Deleted now unnecessary hacks for darwin.

  * contrib/hbqt/Makefile
  * contrib/hbqt/detect.mk
  * contrib/hbqt/hbqts/Makefile
  * contrib/hbqt/qtgui/Makefile
  * contrib/hbqt/qtgui/qtguis/Makefile
  * contrib/hbqt/qtnetwork/qtnetworks/Makefile
  * contrib/hbqt/qtnetwork/Makefile
  * contrib/hbqt/gtqtc/Makefile
  * contrib/hbqt/gtqtc/gtqtcs/Makefile
    % Deleted extra hacks for darwin regarding header path setup.

  * INSTALL
    - Deleted dead link.
2010-06-04 02:21:35 +00:00
Viktor Szakats
a9aecafefc 2010-06-04 01:23 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed typo in recent header detection changes causing -inc
      mode to always rebuild target.
    + Added support for multiple -depkeyhead= option, which means
      that multiple alternative key headers can be specified and
      the first match of any of them will satisfy the dependency.
    ! Fixed typo causing dependencies to wrongly detected as 'local'.
2010-06-03 23:24:08 +00:00
Viktor Szakats
f75bdfcb24 2010-06-04 00:35 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbqt/hbqt_common.hbm
    * Unfinished changes to sync darwin with rest of platforms.

  * contrib/hbqt/plug_moc.prg
    ! Missed to look in PATH to find moc tool.

  * utils/hbmk2/hbmk2.prg
    ! Fixed to handle -depcontrol=<path> case.
2010-06-03 22:35:32 +00:00
Viktor Szakats
85fcb91dee 2010-06-03 23:56 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    * Minor cleanup to previous commits.

  + contrib/hbodbc/hbodbc.hbp
  + contrib/hbsqlit3/hbsqlit3.hbp
  + contrib/hbbz2/hbbz2.hbp
  + contrib/hbhpdf/hbhpdf.hbp
  + contrib/sddsqlt3/sddsqlt3.hbp
  + contrib/sddodbc/sddodbc.hbp
    + Added hbmk2 make files to remaining contribs.

  * contrib/hbmysql/hbmysql.hbp
  * contrib/gtalleg/gtalleg.hbp
  * contrib/sddmy/sddmy.hbp
  * contrib/sddfb/sddfb.hbp
  * contrib/hbmzip/hbmzip.hbp
  * contrib/hbqt/hbqt_common.hbm
  * contrib/hbfbird/hbfbird.hbp
  * contrib/sddpg/sddpg.hbp
  * contrib/hbcurl/hbcurl.hbp
  * contrib/hbcups/hbcups.hbp
  * contrib/hbpgsql/hbpgsql.hbp
  * contrib/rddads/rddads.hbp
  * contrib/hbfimage/hbfimage.hbp
  * contrib/hbgd/hbgd.hbp
  * contrib/sddoci/sddoci.hbp
  * contrib/hbcairo/hbcairo.hbp
  * contrib/hbssl/hbssl.hbp
    + Updated hbmk2 make file dependency detection
      option to latest hbmk2 changes.
2010-06-03 21:57:31 +00:00
Viktor Szakats
a44f8b77d5 2010-06-03 23:02 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed silly typo in last commit. (missing ! operator in IF condition)
2010-06-03 21:02:52 +00:00
Viktor Szakats
42fcd591e1 2010-06-03 21:37 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
+ contrib/hbmzip/hbmzip.hbp
    + Added hbmk2 solution to replicate GNU Make dependency
      checking logic.

  * utils/hbmk2/hbmk2.prg
    + Finalizing dependency options:
      -deppkgname=<d:n>
      -depkeyhead=<d:h>
      -depoptional=<d:f>
      -depcontrol=<d:v>
      -depincpath=<d:i>
      -depincpathlocal=<d:i>
    ; See more in the --help and the example above.
    * Finalized terminology (requirement -> dependency)
2010-06-03 19:38:11 +00:00
Viktor Szakats
9505b5625b 2010-06-03 20:38 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Rewritten dependency checking logic. New solution
      integrates -reqheader, -inctrypath, -reqpkg options.
      (Current parametrization and terminology is not final.)
      The new engine supports dependency detection by package
      name (via pkg-config/*-config), even multiple ones, by
      key header file using custom header search paths, both
      global and local. It also supports built-in detection
      control as we know it from our GNU Make build system
      via HBMK_WITH_* envvar (or one with customzed name) 
      which can have no/yes/nolocal/local/force values. This
      implementation also supports optional dependencies.
2010-06-03 18:48:08 +00:00
Viktor Szakats
0e9cdc27e5 2010-06-03 18:03 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* package/winuni/RELNOTES
    * Updated.

  * harbour.spec
  * doc/dirstruc.txt
  * utils/hbmk2/examples/contribf.hbc
  * contrib/Makefile
  - contrib/hbbtree
  + examples/hbbtree
  - examples/hbbtree/Makefile
    * hbbtree move to example section as told in a recent
      changelog entry. This contrib has long time unfixed
      file-format portability problems, plus it's really
      more of a good example code than lib for end-users.
2010-06-03 16:05:36 +00:00
Viktor Szakats
2b523b361b 2010-06-03 16:33 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
    * Minor typo.

  * package/mpkg_win.nsi
  * package/winuni/mpkg_win_uni.nsi
    + Added user's mailing list link.
    - Deleted user forum link.
    * Updated developers' mailing list link.

  * utils/hbformat/hbformac.c
  * utils/hbformat/hbformat.prg
  * utils/hbmk2/hbmk2.prg
  * utils/hbi18n/hbi18n.prg
  * utils/hbtest/rt_main.h
  * utils/hbtest/hbtest.prg
  * utils/hbtest/rt_main.ch
  * utils/hbtest/rt_trans.prg
  * utils/hbtest/rt_miscc.c
  * utils/hbtest/rt_math.prg
  * utils/hbtest/rt_hvm.prg
  * utils/hbtest/rt_misc.prg
  * utils/hbtest/rt_hvma.prg
  * utils/hbtest/rt_init.ch
  * utils/hbtest/rt_class.prg
  * utils/hbtest/rt_str.prg
  * utils/hbtest/rt_stra.prg
  * utils/hbtest/rt_date.prg
  * utils/hbtest/rt_vars.ch
  * utils/hbtest/rt_array.prg
  * utils/hbtest/rt_file.prg
  * utils/hbtest/rt_mt.prg
  * utils/hbrun/hbrun.prg
    * Deleted 'www.' from harbour-project.org website name.
      (www.harbour-project.org -> harbour-project.org)
2010-06-03 14:34:42 +00:00
Viktor Szakats
78742ae944 2010-06-03 10:43 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* harbour-win-spec
  * src/pp/hbpp.c
  * src/compiler/hbusage.c
  * doc/class_tp.txt
  * doc/howtobld.txt
  * doc/howtosvn.txt
  * doc/hdr_tpl.txt
  * doc/readme.txt
  * doc/whatsnew.txt
  * harbour-wce-spec
  * INSTALL
  * harbour.spec
  * utils/hbformat/hbformat.prg
  * utils/hbmk2/examples/plug_tpl.prg
  * utils/hbi18n/hbi18n.prg
  * utils/hbtest/hbtest.prg
  * utils/hbrun/hbrun.prg
  * config/global.mk
    * Deleted 'www.' from harbour-project.org website name.
      (www.harbour-project.org -> harbour-project.org)

  * contrib/xhb/xhbarr.c
    + Added TOFIX for AREMOVE() which should better be moved
      to hbxpp lib (possibly after deleting the xhb extension from
      that implementation).

  * package/winuni/RELNOTES
    + Added 'harbour-project.org'
2010-06-03 08:43:47 +00:00
Viktor Szakats
c9491d54db 2010-06-02 19:04 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed to also recognize '#include<name>' / '#include"name"' 
      syntax.
2010-06-02 17:04:25 +00:00
Viktor Szakats
83a01da182 2010-06-02 19:00 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added information about standard header locations (as comment yet).
    * Minor change: HBMK2_HAS_* -> HBMK_HAS_*
2010-06-02 17:01:12 +00:00
Viktor Szakats
1e1fdcc70d 2010-06-02 17:00 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    % Using precompiled regexp.

  * ChangeLog
    ! Fixed my name into header of previous entry.
2010-06-02 15:01:35 +00:00
Viktor Szakats
cb86f578a6 2010-06-02 13:10 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* utils/hbmk2/hbmk2.prg
    + Now uses regular expression to extract #include directives
      from source files, so now it should recognize all supported
      syntax variations (f.e. "  # include   <>"). The only
      difference between real source parser is now only the lack
      of comment filtering (and no preprocessor, but this latter
      isn't desired for multiple reasons).
      Pls review me.

  * src/rtl/hbregex.c
    * HB_ATX() cleanup code layout, minimalized variable scopes.
    % HB_ATX() minor optimization: No need to check pcount before
      calling hb_stor*() functions since it's done anyway inside
      those calls.
    * HB_ATX() will now default the 5th <nEnd> parameter to the
      full length of the passed source string. It's slight
      incompatibility though I doubt too many users would have
      called this with empty 5th parameter, since the function
      just didn't do anything in this case.
      Pls review this, maybe I misunderstood original intent.
2010-06-02 11:16:36 +00:00
Viktor Szakats
43b10bcf31 2010-06-01 21:40 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/vm/fm.c
  * src/vm/set.c
    * SET( _SET_HBOUTLOG, NIL ) will now reset the internal output
      name to NULL, which is also the new internal default value.
    * After this change the GPF handler and FM STAT dump code
      will do the defaulting to "hb_out.log" filename, if the
      internal _SET_HBOUTLOG value is NULL. This causes a small
      incompatibility in how log file can be disabled, and at the
      same time allows to implement low-level logging logic for
      default case which is safer than current one, while allowing
      the user (developer) to set a custom log filename and expect
      regular log file append behavior.
      From now on to disable logging, use: SET( _SET_HBOUTLOG )

  * utils/hbmk2/hbmk2.prg
    ! Fixed to not do pkg detection and key header evaluation
      after -stop and certain modes.
    + Added full list of std C and POSIX headers to the header
      exclusion list in header dependency parser code.
      Also added dos.h.

  * contrib/xhb/dbgfxc.c
    * Formatting.
2010-06-01 19:46:00 +00:00
Viktor Szakats
10c88f316c 2010-06-01 01:46 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Will now ignore current and host directory when looking
      for system headers (<>) in header dependency finder code.

  + contrib/hbmysql/hbmysql.hbp
  + contrib/sddmy/sddmy.hbp
  + contrib/sddfb/sddfb.hbp
  + contrib/sddpg/sddpg.hbp
  + contrib/hbcups/hbcups.hbp
  + contrib/hbpgsql/hbpgsql.hbp
  + contrib/rddads/rddads.hbp
  + contrib/hbfimage/hbfimage.hbp
  + contrib/hbgd/hbgd.hbp
  + contrib/sddoci/sddoci.hbp
  + contrib/hbcairo/hbcairo.hbp
    + Added new hbmk2 make files.

  * contrib/hbgd/Makefile
    - Deleted some information from cmoment. (now included in INSTALL)

  * contrib/hbcairo/hbcairo.h
    * Formatting.
2010-05-31 23:47:15 +00:00
Viktor Szakats
7e0ce822ed 2010-05-31 19:47 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added experimental support for filters containing string
      comparisons, f.e.: '{MY_VAR='hello'}-cflag=-DMY_FLAG'
    ; NOTE: It's not guaranteed yet that this feature will stay.

  * include/hbzlib.ch
    + Added HB_ZLIB_RES_* zlib result values.

  * contrib/xhb/Makefile
  - contrib/xhb/hbcomprs.c
  + contrib/xhb/hbcomprs.prg
  + contrib/xhb/tests/compress.prg
    + Rewritten xhb compatiblity compression functions in .prg.
      The main reason was to avoid dependence on zlib.h on C level.
      This simplifies the build layout.
    ! This fixes last zip error to work in MT programs.
    + Added test/demo program from xhb. Work by Giancarlo Niccolai.
    ; NOTE: Tested only with xhb test/demo program.

  * contrib/xhb/hbcomprs.ch
    + Changed to use HB_ZLIB_* constants. So it's now only a wrapper
      instead of replicating values.
2010-05-31 17:49:04 +00:00
Viktor Szakats
cdca660e6d 2010-05-31 15:55 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
+ contrib/gtalleg/gtalleg.hbp
  + contrib/gtalleg/gtallegs.hbp
  + contrib/hbcurl/hbcurl.hbp
  + contrib/hbcurl/hbcurls.hbp
  + contrib/hbssl/hbssl.hbp
  + contrib/hbssl/hbssls.hbp
    + Added .hbp files for some thougher libs.

  * contrib/hbqt/hbqt_common.hbm
  * contrib/hbqt/hbqt.hbp
  * contrib/hbqt/hbqts.hbp
  * contrib/hbqt/hbqtcore.hbp
  * contrib/hbqt/hbqtcores.hbp
  * contrib/hbqt/hbqtgui.hbp
  * contrib/hbqt/hbqtguis.hbp
  * contrib/hbqt/hbqtnetwork.hbp
  * contrib/hbqt/hbqtnetworks.hbp
  * contrib/hbfbird/hbfbird.hbp
  * contrib/hbxbp/hbxbp.hbp
  * contrib/hbcomm/hbcomm.hbp
  * contrib/hbsms/hbsms.hbp
    + Added -nohbc.
    ! Fixed QT hbmk2 files to use different working dir for
      static and dynamic builds.
    ! Fixed QT hbmk2 files to create static libs with proper
      name.

  * contrib/hbcurl/hbcurls/Makefile
    ! Minor cleanup.

  * utils/hbmk2/hbmk2.prg
    + Will now also parse '#include <name>' style header dependencies.

  * contrib/hbqt/detect.mk
    * Synced key header name with .hbp.

  * contrib/hbcomm/hbcomm.hbp
    + Added missing -w3 -es2.

  * contrib/hbqt/hbqt.h
    - Deleted mild hack no more necessary.
2010-05-31 13:56:40 +00:00
Viktor Szakats
0b5183a99b 2010-05-31 12:58 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbqt/hbqt.h
  * contrib/hbqt/hbqt_hbqtableview.h
  * contrib/hbqt/hbqt_hbevents.h
  * contrib/hbqt/hbqt_hbdbfmodel.cpp
  * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
  * contrib/hbqt/hbqt_hbqmainwindow.h
  * contrib/hbqt/hbqt_hbqtableview.cpp
  * contrib/hbqt/hbqt_hbevents.cpp
  * contrib/hbqt/hbqt_hbqplaintextedit.h
  * contrib/hbqt/hbqt_hbdbfmodel.h
  * contrib/hbqt/hbqt_destruct.cpp
  * contrib/hbqt/hbqt_utils.cpp
  * contrib/hbqt/hbqt_hbqsyntaxhighlighter.h
  * contrib/hbqt/hbqt_hbqplaintextedit.cpp
  * contrib/hbqt/hbqt_hbslots.cpp
  * contrib/hbqt/qth/QVariant.qth
  * contrib/hbqt/qth/QCursor.qth
  * contrib/hbqt/qth/QClipboard.qth
  * contrib/hbqt/qth/QApplication.qth
  * contrib/hbqt/qth/QCoreApplication.qth
  * contrib/hbqt/qth/QImage.qth
  * contrib/hbqt/qth/QUrl.qth
  * contrib/hbqt/qth/QAbstractItemModel.qth
  * contrib/hbqt/qth/QImageReader.qth
  * contrib/hbqt/qth/QWebHistoryItem.qth
  * contrib/hbqt/qth/QFont.qth
  * contrib/hbqt/qth/QFontDatabase.qth
    ! Fixed to use '#include <QModule/QName>' format when referring
      to QT headers. This is the official way and it allows to clean
      the include header paths.
    ! Fixed to use '#include <QtCore/qglobal>' instead of
      '#include <qglobal.h>' for the same reason as above.

  * contrib/hbqt/hbqt.h
    + Added '#include "QtCore/QObject"' to make hbmk2 component
      detection happy. This is slight hack as I didn't want to
      introduce parsing of '<>' style system headers just for the
      sake of QT. Anyway it's quite humble hack without side effects.

  * contrib/hbqt/detect.mk
    * Changed to 'QtCore/qglobal.h' as key header name used for
      detection.
    ! Fix to header dir autodetection path on darwin platform.
      (it would have caused potential problem with QT 5.x releases)
    % Simplified header path list for non-darwin platforms.

  + contrib/hbqt/hbqt_common.hbm
  + contrib/hbqt/hbqt.hbp
  + contrib/hbqt/hbqts.hbp
  + contrib/hbqt/hbqtcore.hbp
  + contrib/hbqt/hbqtcores.hbp
  + contrib/hbqt/hbqtgui.hbp
  + contrib/hbqt/hbqtguis.hbp
  + contrib/hbqt/hbqtnetwork.hbp
  + contrib/hbqt/hbqtnetworks.hbp
    + Added hbmk2 make files for HBQT libs.
      Features are equivalent to the GNU Make flavour.
      (only tested on Windows so far)

  + contrib/hbxbp/hbxbp.hbp
    + Added hbmk2 make file for HBXBP lib.

  * contrib/hbfbird/hbfbird.hbp
  * contrib/hbsms/hbsms.hbp
    * Use ${hb_name} instead of ${hb_dirname}.
    + Added -w3 -es3 options.

  * utils/hbmk2/hbmk2.prg
    + Set pathseps to '/' in "-reqheader=' and
      '-reqpkg=' header names.

  - utils/hbmk2/examples/plug_moc.prg
  + contrib/hbqt/plug_moc.prg
    * Moved inside hbqt lib.

  * contrib/hbqt/qtgui/*
  * contrib/hbqt/qtcore/*
    * Regenerated.
2010-05-31 11:04:38 +00:00
Viktor Szakats
8bc59ee688 2010-05-29 18:56 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Shows version of detected packages.
2010-05-29 16:56:59 +00:00
Viktor Szakats
a435f32b18 2010-05-29 18:00 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Beefed up and fixed -reqpkg feature:
      + Possible to pass multiple alternate pkg names:
          -reqpkg=cairo|cairo2|cairo.h
      + Possible to attach header name, in which case it 
        will automatically satify the -reqheader= parameter 
        with same header name, if it exists. Headers without 
        extension can be specified as 'header.'
      ! Fixed to use case-insensitive lookup in header list 
        on non-*nix systems.
      + Added -info messages regarding pkg detection.
      ! Fixed parsing of -l/-L/-I parameters in pkg detection 
        code.
2010-05-29 16:00:44 +00:00
Viktor Szakats
f17f4e7d66 2010-05-29 04:28 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed silly variable initialization bug after last commit.

  * contrib/hbwin/wapi_shellapi.c
    ! Fixed WAPI_SHELLEXECUTE() having HB_PARSTRDEF() one 
      position off.

  * examples/rddado/tests/access1.prg
    * Minor update. Still doesn't work.
2010-05-29 02:28:37 +00:00
Viktor Szakats
bcceab5af4 2010-05-28 18:28 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added untested, experimental support for -reqpkg=/reqpkgs=
      (.hbp/.hbc) options. F.e. '-reqpkg=libcurl' option causes
      hbmk2 to query library, library path and include path
      information from 'pkg-config' tool and if not found using
      '*-config' script, and to automatically pass these information
      to C compiler/linker. In addition, it will automatically add
      a macro named HBMK2_HAS_LIBCURL to C compiler cmdline, so
      that the sources get to know that this package was found.
    ; NOTE: Nothing is finalized, it is still a question how to
            setup obligatory and optional components, current
            implementation is rather a mixture, but anyway pls
            feel free to test it. It's also a question how to merge
            this method with the -inctrypath/-reqheader one.
            Later we can consider adopting extra C flags, too,
            and it can be extended to know about more package
            detection methods (even platform dependent ones can
            be used if they adhere to more or less the same
            principle of 'pkgname->IN incpaths/libpaths/libs->OUT')
            Thanks to Tamas Tevesz for sparking the idea.
2010-05-28 16:41:43 +00:00
Viktor Szakats
74ab6485b5 2010-05-28 08:19 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbwin/hbolesrv.hbc
  * utils/hbmk2/hbmk2.prg
    * Renamed ${hb_filename} macro to ${hb_self}.

  * contrib/hbcomm/hbcomm.prg
    ! Typo in comment.
2010-05-28 06:19:26 +00:00
Viktor Szakats
90d09ead2d 2010-05-28 08:13 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added ${hb_filename} macro.
    + "hbexe", "hblib", "hbdyn", "hbdynvm", "hbimplib" can now
      be used as filter keywords to detect target type.

  * contrib/hbwin/hbolesrv.hbc
    + Will now show warning message if not used together with
      -hbdynvm option.
    + Will will now be ignored if not used together with
      -hbdynvm option.
    ; Tried to add hbolesrv.c as direct source 'sources=hbolesrv.c',
      but it requires this source (+ headers) to be distributed along
      the binaries, plus it didn't resolve the watcom issue, so
      I dropped it.
2010-05-28 06:14:11 +00:00
Viktor Szakats
2e28cc5df7 2010-05-27 00:15 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/examples/contribf.hbc
  * contrib/Makefile
  + contrib/hbcomm
  + contrib/hbcomm/Makefile
  + contrib/hbcomm/hbcomm.hbc
  + contrib/hbcomm/hbcomm.prg
  + contrib/hbcomm/hbcomm.hbp
  + contrib/hbcomm/tests
  + contrib/hbcomm/tests/hbmk.hbm
  + contrib/hbcomm/tests/test.prg
    + Added HBCOMM compatibility library. It's based on hbct
      COM functions. Not tested with real port. Also see one
      TOFIX and one INCOMPATIBILITY note inside. The latter
      belongs to INCHR() function which in original HBCOMM
      library will do HVM corruption by overwriting string
      content passed as 3rd parameter. In Harbour 3rd
      parameter needs to be passed by reference.
      Also added fully adapted test code from HARBOUR MINIGUI
      project. Interestingly this code was using the return
      value of INCHR() to get the returned buffer, which was
      in sync with included HBCOMM code. Anyway, hopefully
      this can be finalized based on report from real users.
    ; DISCLAIMER:
        EXPERIMENTAL CODE. USE AT YOUR OWN RISK. NO GUARANTEES.

  + contrib/hbfbird/hbfbird.hbp
  + contrib/hbsms/hbsms.hbp
    + Added early bird experimental .hbp files for contrib
      two projects.

  * utils/hbmk2/hbmk2.prg
    + Added support for ${hb_dirname} macro which returns the
      directory in which the script file is where the macro is
      used.
    ! Fixed so that '-build' option doesn't require a configured
      C compiler.
    + Extended hack for bcc autoconfiguration with 5.8 support,
      adding an extra system header directory to the include
      dir list if it exists. bcc 5.8 appears to be well installed,
      so this is probably not needed for most users.
    + Documented dir casing differences between bcc 5.5 and 5.82.
      This may be important for autoconfiguration hack to work with
      bcc under wine using native hbmk2 build. I'm not even sure
      such scenario is possible at all ;)
2010-05-26 22:17:06 +00:00
Viktor Szakats
e61c9f9c55 2010-05-26 17:04 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
  * utils/hbmk2/hbmk2.pt_BR.po
  * utils/hbmk2/hbmk2.hu_HU.po
    + Added support for 'psources=' and 'pflags=' directives in
      .hbc files. They serve the same purpose as cmdline '-pi='
      and '-pflag=' options; passing parameters to plugins.
    % Minor internal optimizations, also fixing some very rare
      and light potential problems with letting to add double
      parameters when passing them using different pathseps.
2010-05-26 15:07:12 +00:00
Viktor Szakats
3477164a0e 2010-05-26 16:32 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbapifs.h
    + Added some more HB_EXPORT flags. Pls check me.

  * contrib/hbwin/hbolesrv.hbc
    + Added reference to hbwin.hbc, so that it can be used 
      standalone accompanied by -hbdynvm option to create 
      OLE servers easily: 'hbmk2 -hbdynvm hbolesrv.hbc ...'

  * contrib/hbwin/hbolesrv-watcom.def
    ! Fixed comments to watcom format.

  * utils/hbmk2/hbmk2.prg
    ! Fixed RTE when parsing certain rarer Windows file types 
      in sources= directive in .hbc files in *nix hbmk2 builds.
      (could only kick in when using hbmk2 under *nix to cross 
      compile for Windows). Thanks Przemek for the report.
    - Deleted doubly added support for .def file parsing in sources=
      directive.
2010-05-26 14:32:41 +00:00
Viktor Szakats
55c19cb250 2010-05-26 10:38 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* package/winuni/mpkg_win_uni_extra_copy.bat
    + Added contrib .hbi and .def files to the binary package.

  * utils/hbmk2/hbmk2.prg
    ! Typo in comment.
2010-05-26 08:39:02 +00:00
Viktor Szakats
759446e3c5 2010-05-26 09:40 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/examples/plug_moc.prg
    * Minor cleanup.
2010-05-26 07:40:49 +00:00
Pritpal Bedi
e17fbe04f8 2010-05-25 21:42 UTC-0800 Pritpal Bedi (pritpal@vouchcac.com)
* utils/hbmk2/examples/plug_moc.prg
    ! Fixed to cover header file supplied with path like 
        -pe=somefolder/someheader.h.
2010-05-26 04:41:10 +00:00
Viktor Szakats
6c0605140a 2010-05-26 02:40 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/examples/plug_moc.prg
    ! Copy/paste typo in moc detection on some linux platforms.
2010-05-26 00:41:13 +00:00
Viktor Szakats
25aa9855a5 2010-05-26 01:43 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbapi.h
    ! Added HB_EXPORT to hb_memvarGet() and hb_memvarSetValue()
      used by new OLE server code in hbwin when created -shared
      OLE server .dlls.

  + contrib/hbwin/hbolesrv.hbc
    + Added .hbc file to help creating OLE servers.

  * contrib/hbwin/tests/olesrv1.hbp
  * contrib/hbwin/tests/olesrv2.hbp
  * contrib/hbwin/tests/olesrv3.hbp
    % Changed to use hbolesrv.hbc.
    - Deleted '-static' option to also allow to build -shared
      OLE servers. (I tested them OK)

  * contrib/hbwin/tests/olesrv2.prg
    + Tweak to allow case-insensitive access of OLE functions.

  * utils/hbmk2/hbmk2.prg
    + Added support for .def files in source= .hbc line.
2010-05-25 23:44:42 +00:00
Viktor Szakats
1e378f3c54 2010-05-25 23:40 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
+ config/bsd/clang.mk
    + Base implementation of bsd/clang target.
      Based on patch by Tamas Tevesz with modifications:
        - deleted HB_DYN_COPT
        - replaced dynamic lib rules with bsd/gcc.mk.
        (both fully untested)

  * INSTALL
  * utils/hbmk2/hbmk2.prg
    + Added preliminary support for bsd/clang target. (untested)

  * contrib/hbide/idemisc.prg
    + Added hbide_pwd() function.
2010-05-25 21:41:14 +00:00
Viktor Szakats
924c97055e 2010-05-25 22:28 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbide/ideprojmanager.prg
    ! Fixed output directory issue without the need for an hbmk2 plugin.
      HBIDE was changing current dir when calling hbmk2, so the detected
      output filename needs to be rebased from that directory.

  * contrib/hbide/ideprojmanager.prg
  - contrib/hbide/idedetect.prg
  + contrib/hbide/resources/hbmk2_plugin_hbide.prg
    * Moved plugin to resources directory.
    - Commented plugin content.

  * utils/hbmk2/hbmk2.prg
    * Cleaned up path seps in plugin filenames.
2010-05-25 20:29:55 +00:00
Viktor Szakats
3458d7e9e7 2010-05-25 21:12 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    * '-plug=' option renamed to '-plugin='
    + Added support for 'plugins=' line in .hbc files.
    % Plugins are now fully loaded just once at the beginning
      of hbmk2. (as opposed to every invocation)
    + Plugins are now automatically treated as .hrb or .prg
      based on _file content_. This means that any extension
      can be used for plugins for both .prg and .hrb code.
      When .prg or .hrb extension is used there isn't any
      extra trial made on the file content, it will be load
      as source or HRB respectively.
      Maybe we should find a new distinctive extension for 
      hbmk2 plugins.
    * Default extension for -plugin= option changed to .prg
      (was: .hrb)
    + Showing type of input plugin in -trace mode.
      ('source' or 'compiled')

  * config/detect.mk
    ! Applied fix to DragonFly patch, submitted by Tamas Tevesz.

  * src/vm/runner.c
    * Minor formatting.
2010-05-25 19:20:38 +00:00
Viktor Szakats
513edc3356 2010-05-25 19:08 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Extended plugin API:
      - New macro expansion function:
          hbmk2_Macro( ctx, <str> )
      - New host variables:
          cTARGETTYPE, cTARGETNAME, lDEBUG, lMAP, lSTRIP, lINFO,
          lBEEP, lRUN, nErrorLevel

  * include/hbextern.ch
    + Added two recently added functions.

  * package/winuni/RELNOTES
    * Update one version number.
2010-05-25 17:09:12 +00:00