Commit Graph

131 Commits

Author SHA1 Message Date
Viktor Szakats
b57f2526a7 2012-05-08 18:05 UTC+0200 Viktor Szakats (harbour syenar.net)
* INSTALL
  * COPYING
  * debian/copyright
  * package/harbour.spec
  - contrib/make.hbs
  + contrib/make.hb
  * contrib/Makefile
  * Makefile
  - config/postinst.hbs
  + config/postinst.hb
    * .hbs -> .hb for Harbour scripts in core

    ; NOTE: Use '.hb' extension for Harbour script from now on.
            '.hbs' is deprecated.
2012-05-08 16:06:24 +00:00
Viktor Szakats
f6c7dde00c 2011-02-08 23:22 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* Makefile
  * contrib/Makefile
    + Changed script runner tool to hbmk2 (from hbrun).
      So now hbrun is not required for build process.

  * utils/Makefile
  * package/harbour.spec
  * INSTALL
    * Changed to reflect that now hbmk2 runs the build scripts.

  * utils/hbmk2/hbmk2.prg
  * utils/hbrun/hbrun.prg
    + Added hbrun_ProgrName() function to return runner executable name.
2011-02-08 22:23:10 +00:00
Viktor Szakats
a3f42e8991 2010-07-30 00:08 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* debian/dirs
    ! Deleted doc/en dir.

  * doc/Makefile
  - doc/whatsnew.txt
  + NEWS
  * COPYING
  * doc/howtorel.txt
  * debian/changelog
  * package/mpkg_win.nsi
  * package/winuni/mpkg_win_uni.bat
  * package/winuni/mpkg_win_uni.nsi
    * Renamed doc/whatsnew.txt to /NEWS

  * debian/copyright
    * Updated with COPYING content.

  * package/harbour.spec
    ! Fixed to include doc/* instead of doc/*.txt.

  * utils/hbrun/hbrun.prg
    - Deleted envvar method of passing dirbase to scripts.

  * contrib/make.hbs
    + Using HBRUN_DIRBASE() function instead of envvar trick.
      Maybe some more generic named value passing would be better.

  * contrib/Makefile
    ! Using '-' prefix when running hbrun instead of '+', to not
      cause fatal breakage in build stage if make.hbs contains
      something which previous build of hbrun didn't offer.

  * config/global.mk
    - HB_INSTALL_PREFIX will not default anymore to source root
      dir (on non-*nix systems) to avoid FAQ where installation
      fails because of former install into source root, causing
      old contrib headers to ovveride current ones and breaking
      build. Please note that 'install' is truly optional with
      current builds, so only use it for what it was designed.
      Pls should if some things fail with empty HB_INSTALL_PREFIX
      and requesting 'install' anyway.

  * contrib/xhb/xhbat.c
    ! Applied this fix to Harbour:
      2010-07-29 12:28 UTC-0430 Ron Pinkas <ron.pinkas/at/xharbour.com>
        * source/rtl/at.c
          + Added missing extended strings support, to hb_AtSkipStrings()
2010-07-29 22:10:21 +00:00
Viktor Szakats
68b37e192b 2010-07-20 17:53 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/make.hbs
    * Internal renames, cleaned debug stuff, comments.
    + Added some provision to cleanup the referenced component
      directory handling. Still a TODO.

  * Makefile
  * contrib/Makefile
    * Will now skip all hbrun/hbscript based build parts
      if HB_NO_HBSCRIPT=yes is set. Name tentative.

  * contrib/hbide/hbide.hbp
  * contrib/hbqt/hbqt.hbc
    ! Added SVN header.
    - Deleted -gc3 switch. It will make the final exe 2MB smaller.
    + Moved HBQT specific msvc settings to hbqt.hbc.
    * Added QUESTION to -gc3 switch enabled for HBIDE. It makes 
      the executable significantly larger (~2MB without debug info)
      Was this ever tested, or just enabled and forgotten about?
    ; TODO: HBIDE should hold its 'plugins' dir in user and all users 
            home dirs, and use the name 'hbide_plugins' in the 
            executable's home directory to avoid collision with 
            other tool which might also have a "plugin" folder.

  - contrib/rddbmcdx/hbbmcdx.hbp
  + contrib/rddbmcdx/rddbmcdx.hbp
  - contrib/rddbmcdx/hbbmcdx.hbc
  + contrib/rddbmcdx/rddbmcdx.hbc
  * contrib/make.hbs
    * Renamed make files and output name (when using hbmk2)
      to match its recently renamed directory.
      Thanks to Juan Galvez for reporting it.
2010-07-20 15:57:27 +00:00
Viktor Szakats
618d38b205 2010-07-19 21:00 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/make.hbs
  * contrib/hbpre.hbm
    + Will now automatically rebuild all dependent contribs.
      So f.e. when building hbide, it will automatically update
      hbqt then hbxbp. Pls note that extra hbmk2 options passed
      at the cmdline are only applied to primary target.
    + Will now automatically sort the list of contribs in order
      of dependency.
      [ there is quite interesting tree parsing/building and
      topological sorting employed. ]
    + Added log message at the end of the build process.
    + Standalone mode will now launch raw hbmk2 session if
      anything non-option and non-GNU control keyword is passed
      to it (f.e. a .hbp or a .prg). In such case it will act
      as plain hbmk2 call.
    ! Fixed -quiet keyword to be really quiet (should be on the
      cmdline for that effect).
    + Added GPL2 license header.

  * contrib/Makefile
    % Greatly simplified.

  * contrib/hbqt/hbmk2_plugin_qt.hbs
    + Changed to do all tool detection in init 'pre_all' stage,
      and return an error if anything is missing. This allows
      hbmk2 to gracefully end the build process in such case.

  * utils/hbmk2/hbmk2.prg
    + hbmk2 will now gracefully exit with errorlevel 20 if
      any plugins return error at 'pre_all' stage.
    + --hbinfo will now return whether incremental mode is
      enabled for a project.
    + Plugins can now return at 'init' stage, in such case
      the plugin will be instantly unloaded.
    + hbmk2 will now display the stage where error is reported
      by plugins.
    * Experimental trick added: On win/wce/os2/dos platforms,
      if no explicit dependency location path was set by user
      (using HB_WITH_*) and there was no locally hosted location
      specified either, hbmk2 will show a warning instead of
      an error.
    + Added new internal variable to store implib extension.
      (OS/2 supports .imp as such extension, although hbmk2
      does not yet)
    + Replaced os2/gcc -implib method with a new post cmd method
      (instead of using --out-implib mingw-like option which
      doesn't exist in OS/2). Thanks Maurilio for tests and
      information.

  * INSTALL
    + Added more visibility and more clear wording to TROUBLESHOOTING
      section reference in top of INSTALL doc.
    + Numbered items in TROUBLESHOOTING section so that they can be
      easily referred to.
    + Added new TROUBLESHOOTING suggestion (somewhat redundant)
      to first try to remove any special build options.

  * Makefile
    + Never attempt to run postinst.bat and postinst.cmd.

  * ChangeLog
    * Changes marked as DONE.
2010-07-19 19:04:29 +00:00
Viktor Szakats
9e5eb6af23 2010-07-18 1:04 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/postinst.hbs
    * Changed to only create .hbd documentation file for the
      core. This is to ensure separation of components.

  * contrib/Makefile
    - Deleted old Makefile-based build logic in contrib area,
      now this make file does nothing else than passing the
      control to make.hbs Harbour script.

  * contrib/make.hbs
  * contrib/hbpre.hbm
  * contrib/hbpost.hbm
    % Moved -instpath options to hbpost.hbm to save cmdline length.
    % Moved HB_BUILD_SHARED control logic from make.hbs to hbpost.hbm
    ! -warn option moved to hbpre from hbpost, so libs can override it
      (can be important for external code)
    + Will now compile .hbd binary documentation in 'install' phase
      and copy it to HB_DOC_INSTALL.
    * Internal pathsep cleanup.
    ! Fixed to accept 'install'/'clean' regardless of casing.
    + Now accepts HB_BUILD_CONTRIBS instead of HB_CONTRIBLIBS
      (though old envvar still work for while)
    + Log feedback now show the build action executed.
    + Added more TODOs.

  * INSTALL
    * Documented the change to HB_BUILD_CONTRIBS from HB_CONTRIBLIBS.

  * utils/hbmk2/hbmk2.prg
    + Will now automatically recognize HB_BUILD_NAME envvar and
      convert it to -build= cmdline option.

  * contrib/hbodbc/todbc.prg
  * contrib/hbodbc/odbcold.c
  * contrib/hbodbc/odbc.c
    * Renamed SQLSTOD to HB_ODBCSTOD
    * Renamed SQLSETNUMLEN to HB_ODBCSETNUMLEN.
    * Old names are deprecated with HB_LEGACY_LEVEL3.
      If you happen to use these function names, pls update to
      the new ones ASAP.
2010-07-18 09:04:59 +00:00
Viktor Szakats
1b5ddd6c72 2010-07-17 21:50 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/Makefile
    + Enabled to build all contribs using hbmk2 from now on.

      This is huge step, but in fact a zillion little ones in
      the last 2 years, and it means that contribs now rely on
      hbmk2 and hbmk2 make files (.hbp and .hbc) to be build and
      used respectively. For implibs, .hbi is used. The whole
      process is orchestrated by a script written in Harbour: make.hbs. 
      With this change GNU Make is retired when it comes to contrib
      area. This new hbmk2 based system gives us much flexibility,
      many complicated build situations can now be potentially
      handled, while also making the contrib area fully modular,
      since they don't depend even on /config GNU Make system anymore.
      This means that any external contribs having hbmk2 make files
      are easy to import and any Harbour contribs are easy to detach 
      from our SVN. It also allows to include more features (f.e. 
      executables) in final distros. Executables hosted in the 
      contrib area have the great advantage that they can use any 
      other contrib libs (so far we were limited to core features 
      for exes). It also allows to dynamically add extra contribs 
      (or delete existing ones) on a per distro basis, so f.e. 
      certain builders can create their own binary distro with 
      a standard core and extra set of contribs. New system also 
      makes it possible to build dynamic libs from contribs. It's 
      also easier to move locally hosted external projects inside 
      the contrib tree, even as a subdir inside the contrib that 
      requires it (f.e. minizip, bz2 or sqlite). This can make 
      these projects fully self-contained.

      Some things are not perfect yet, f.e. I'm still fighting
      with cmdline length (relevant in MS-DOS) and the "in-place"
      build (I call "in-place" build when you build only one
      contrib at a time, like when issuing win-make inside a
      contrib subdir) will certainly need some getting used to,
      and maybe even some refinement in make.hbs. I've yet to
      implement automatic dependency detection and tree-sorting
      so that everything automatically builds in right order of
      dependency. Such thing can even be added for "in-place"
      build mode, and f.e. building hbide can automatically
      launch hbqt and hbxbp builds. BTW I retained the 
      "header-copy-on-install" method, but I'm not sure it's 
      right solution, anyhow we still have time to think about 
      a better one.

      If everything goes fine, the GNU Makefiles in contrib
      area will be gone, so there won't be any redundancy again.

  * utils/hbmk2/hbmk2.pt_BR.po
  * utils/hbmk2/hbmk2.hu_HU.po
  * utils/hbmk2/hbmk2.prg
    + -stop cmdline option now accepts a message it displays before stopping.
    + skip= .hbc command will now stop if there is text in its parameter.
      INCOMPATIBLE: So far -skip only skipped if 'on' was passed as value,
      now it will always skip. This means this command always has to be used
      along a filter. If the filter evaluates, skip will happen, if not it
      won't.
    + Added stop= .hbc command which will halt complete build process,
      similarly to -stop cmdline option. It also supports text to be
      displayed.

  * contrib/hbqt/hbqt.hbc
    + Will now stop with a screen message if this component is tried
      to be used on unsupported platform.

  * contrib/hbwin/hbolesrv.hbc
  * examples/hbsqlit2/hbsqlit2.hbp
  * examples/gtwvw/gtwvw.hbp
    * Changed to use new hbmk2 -stop facilities.

  * src/rtl/filesys.c
    + Missed two casts from previous commit.

  - examples/gtwvw/Makefile
    - Deleted.
2010-07-17 19:51:18 +00:00
Viktor Szakats
9ea0595e69 2010-07-12 10:04 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbqt/hbqt_hbqabstractitemmodel.cpp
    ! Fixed formatting.
    ! Added copyright header.
    ! Added SVN header,

  * contrib/hbdoc2/gentpl.prg
  * contrib/hbdoc2/gentxt.prg
  * contrib/hbdoc2/genxml.prg
  * contrib/hbdoc2/genhtml.prg
  + contrib/hbdoc2/genhbfdb.prg
  * contrib/hbdoc2/hbdoc2.prg
  * contrib/hbdoc2/hbdoc2.hbp
    * Minor cleanups.
    ! Fixed RTE when using target formats without index.
    * Changed default output format to -output-category
    + Added new experimental output format tailored to
      help "intellisense" technology. It currently holds
      function prototype only, but in the future it can
      hold full docs so that ide's like hbide can easily
      extract all documentation and present it smartly.
      Current format has the extension .hbd, and it's a
      serialized array of strings of function prototypes.
      Also probably hashes would be better.
    ; TODO: Fix hbdoc2 to generate separate output dirs/files
            for separate components. Currently everything
            is mashed together.

  * contrib/make.hbs
  * contrib/Makefile
    * hbqt and hbxbp are now built using hbmk2.
      This has the nice "side-effect" that now libs will 
      be rebuild even if some headers changed, so there is 
      less chance to have broken build after a plain (non-clean) 
      rebuild.
2010-07-12 08:07:37 +00:00
Viktor Szakats
e98db3a241 2010-07-09 22:49 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + --hbrefs option renamed to --hbinfo and now also includes
      target type.
    + Extended target detection with 'hbppo' and 'hbhrb' types.
      These are automatically detected from Harbour option usage.
    + Added ${hb_outputname} macro. Returns the output name as
      specified with -o option, without extension. Returns empty
      if there wasn't -o option at the point of usage.
    + Added ${hb_outputdir} macro. Returns the output dir as
      specified with -o option. Returns empty if there wasn't
      -o option at the point of usage.
    + -p -s options don't require to manually select -hbraw
      mode, it will be autodetected.
    ! Fixed to not interpret -i- Harbour option as include dir.
    + Don't add the same Harbour option twice.

  * contrib/Makefile
  * contrib/make.hbs
  + contrib/hbpost.hbm
  + contrib/hbpre.hbm
    % Cleaned the way build options are passed to hbmk2.
    + Synced much more options and build behavior of hbmk2
      based contrib build with GNU Make build (debug, unicode,
      warnings, Harbour settings, C settings)
    + Added more projects to hbmk2 build method.
    % Deleted MS-DOS specific hack (for now) because the new
      cmdlines are very short.
    ; TODO: Now make.hbs is not self-contained, which would 
            better be solved somehow.

  * contrib/make.hbs
    + It will now detect and show target type in stdalone mode.
    + Synced default build options with GNU Make.

  * contrib/hbqt/hbqts.hbp
  * contrib/hbqt/hbqtguis.hbp
  * contrib/hbqt/hbqtcores.hbp
  * contrib/hbqt/hbqtnetworks.hbp
    + Added -hblib option to make it easy to detect target type
      for 3rd party tools.

  * contrib/hbnetio/utils/netiosrv.prg
    + Will now also accept .hbs and .prg files as RPC filters.

  - contrib/hbnetio/utils/modules
  * contrib/hbnetio/utils/modules.hbp
  + contrib/hbnetio/utils/rpcdemo.hbs
    * Renamed RPC demo to .hbs.
    * Deleted modules subdir.

  - contrib/hbnetio/utils/hbmk.hbm
  * contrib/hbnetio/utils/hbnetio.hbp
    - Deleted separate hbmk.hbm.

  * contrib/hbnetio/utils/netiocmd.prg
    ! Minor in help screen.

  * contrib/hbnetio/tests/netiotst.prg
    + Added some feedback.
2010-07-09 20:51:12 +00:00
Viktor Szakats
06a2d8708d 2010-07-09 11:56 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/console.c
  * src/rtl/hbgtcore.c
    * Made internal error codes of "terminal init failure"s 
      occuring in different situations different. I hope I 
      left 9998 for the one that happens usually.

  * contrib/Makefile
    - Deleted hbnetio from list, it's now made by make.hbs.

  * config/postinst.hbs
    * Minor.
2010-07-09 09:56:52 +00:00
Viktor Szakats
c142201499 2010-07-07 01:23 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* Makefile
  * contrib/Makefile
    * Changed wording.

  * contrib/xhb/xhbqself.c
  * contrib/xhb/cstructc.c
    ! Adapted to internal name changes.
2010-07-06 23:25:16 +00:00
Viktor Szakats
aed8cb147e 2010-07-06 13:02 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* src/rtl/console.c
  * src/rtl/philes.c
  * include/hbextern.ch
    + Added: HB_PS() function, which does the same as HB_OSPATHSEPARATOR().
    + Added: HB_EOL() function, which does the same as HB_OSNEWLINE().
    ; These are very often used functions with an exceptionally long and
      hard to type name, so most programs employed macros for it. Now this
      is unnecessary. Long names are deprecated.

  * contrib/Makefile
  - contrib/makefile.hbs
  + contrib/make.hbs
    * Renamed to be shorter.
    + Little steps for standlone running mode.
    + Using HB_EOL() and HB_PS().
    ; TODO: Change it all over Harbour SVN.
2010-07-06 11:03:51 +00:00
Viktor Szakats
f406d9075c 2010-07-05 19:12 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + -clean will now delete the target for -hbdyn, -hblib and default
      -hbexe modes. .bak is also deleted for -hblib mode.
      Probably more autogenerated extensions will have to be deleted
      here to become in sync with globsh.mk.
    + Extended -instfile and -instpath support to also accept
      a file group prefix. This way multiple set of files can be
      copied to a set of target directories.
    ; TODO: Change all -instfile options to point to 'inc' group.
    + dos/djgpp will now use -gstabs+ for debug mode instead of -g.
      Following change made in GNU Make system by Tamas.

  * contrib/makefile.hbs
    + Reworked the way GNU Make operations are mapped to hbmk2
      actions. F.e. 'clean install' needs special attention as
      plain clean cannot be done because
    + Added hbblat to limited set of test contribs.
    + Better isolation and preparation of hbmk2 configuration.
    + Cleanups to dynamic lib creation from contribs.
    + Added experimental support to install headers similarly
      as GNU Make does.

  * Makefile
    ! Fixed to reverse order and dependency of contrib and utils
      trees in clean without install mode. In pure clean mode,
      the contribs need to be traversed first, because hbrun and
      hbmk2 are required for this task.

  * Makefile
  * contrib/Makefile
    + Will now inform about missing hbrun and .hbs scripts not
      run because of it.

  * examples/hbapollo/hbapollo.hbp
    * -instfile updated with header file group.

  * src/rtl/hbproces.c
    ! Fixed some unused variable warnings experienced with poccarm.

  ; Patches from Tamas Tevesz:

  * config/dos/djgpp.mk
    + debug switch changed to -gstabs+ from -g. Following this:
      http://www.delorie.com/djgpp//mail-archives/thread.cgi?msg=djgpp-workers/2002/05/29/06:33:31&mode=frames

  * bin/hbxpatch.hbs
    * Updated after latest changes. Thanks!

  * src/common/hbver.c
    ! Fix for pcc detection.

  * src/rtl/gtdos/gtdos.c
  * src/rtl/hbproces.c
    ! MS-DOS fixes for TRACE() messages.
2010-07-05 17:14:21 +00:00
Viktor Szakats
abba1977a2 2010-07-04 20:45 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
  * external/Makefile
  * contrib/Makefile
  * utils/Makefile
    - Deleted HB_CONTRIB_ADDONS, HB_EXTERNAL_ADDONS,
      HB_UTIL_ADDONS.
    + Documented HB_ADDONS_LIB, HB_ADDONS_BIN (still not
      necessarily the final names)

  * package/winuni/mpkg_win_uni_extra_copy.bat
  * package/winuni/mpkg_win_uni.bat
  * package/winuni/mpkg_win_uni.nsi
    + Included hbnetio in Windows based installers.
      (.zip already had it after previous changes)

  * package/winuni/mpkg_win_uni_extra_copy.bat
  * package/winuni/mpkg_win_uni.bat
  * package/winuni/mpkg_win_uni.nsi
  * config/postinst.hbs
    - Deleted building hbrun-dll. It makes simpler,
      won't be missed by too many users. Users needing
      fully shared binaries can use HB_BUILD_SHARED=yes.
2010-07-04 18:48:39 +00:00
Viktor Szakats
ea84a85230 2010-07-04 19:03 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
- bin/patchup.hbs
  + bin/hbxpatch.hbs
    * Renamed to have hb prefix.
      Better suggestion are welcome for the name, don't
      consider this final. Pbly sth like hbupdext.prg
      would be better.

  * contrib/Makefile
    * Changed test status of makefile.hbs call to make it
      do some actual work.

  * config/postinst.hbs
    - Deleted implib creation. Now done by makefile.hbs.
      Implibs are never required for core, so this is now
      much cleaner.
    - Deleted experimental HB_BUILD_ADDONS support. This
      feature has moved to makefile.hbs and it can be
      controlled by HB_ADDONS_LIB and HB_ADDONS_BIN to add
      non-hosted extra components to the build process.
      The envvar names are not finalized.
    * Changed to only copy .hbs files starting with 'hb'
      in bin dir to avoid catching local scripts and adding
      them to install.

  * contrib/makefile.hbs
    + Makred dependencies from external.
    * Reworked the way project list is assembled.
    ! Fixed root dir issues.
    ! Fixed -instpath option

  * config/postinst.hbs
    * Tweaked to convert pathseps in external tool calls
      to native.

  * ChangeLog
    ! Corrected most basic problems with Massimo's latest
      log entry. Massimo: You fixed a one byte typo and 
      caused by to fix about 10 typos writing 3-4 letters.
      This isn't very effective help.
2010-07-04 17:04:24 +00:00
Viktor Szakats
ade4707157 2010-07-04 14:49 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
- bin/patchup.prg
  + bin/patchup.hbs
  - utils/hbmk2/examples/plug_tpl.prg
  + utils/hbmk2/examples/plug_tpl.hbs
  - contrib/hbide/plugins/savebackup.prg
  + contrib/hbide/plugins/savebackup.hbs
    * Renamed standalone and plugin Harbour scripts
      to have .hbs extension.

  * contrib/hbqt/hbqt.hbc
  - contrib/hbqt/hbmk2_plugin_qt.prg
  + contrib/hbqt/hbmk2_plugin_qt.hbs
    * Renamed standalone and plugin Harbour scripts
      to have .hbs extension.

  * contrib/Makefile
  - contrib/makefile.prg
  + contrib/makefile.hbs
    * Renamed standalone and plugin Harbour scripts
      to have .hbs extension.

  * Makefile
  - config/postinst.prg
  + config/postinst.hbs
    * Renamed standalone and plugin Harbour scripts
      to have .hbs extension.
2010-07-04 13:02:00 +00:00
Viktor Szakats
dd3e0a139b 2010-07-02 14:33 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/hbqt/hbmk2_plugin_qt.prg
    + Activated new resource binary generator code, which
      doesn't require qt headers anymore.

  * contrib/hbqt/hbqt.hbc
    - Deleted qt dependency. Not needed anymore.

  * contrib/Makefile
  * contrib/makefile.prg
    + Some contrib libs will now be built using new hbmk2 based
      method as an experiment.
    + hbnetiosrv will now be built as well using hbmk2, also as
      an experiment.

  * contrib/hbide/hbide.prg
    + Loading resources manually using new QResource method
      implemented by Bacco.

  * utils/hbmk2/hbmk2.prg
    + Implemented support for #import Objective C specific
      directive when detecting header dependencies.
    * .m extension is now compiled with C compiler (not C++)
    - Deleted 'experimental' status from plugin related options.

  ; Patches from Bacco:

  * contrib/hbqt/generator/hbqtgen.prg
  * contrib/hbqt/qth/QResource.qth
  * contrib/hbqt/qtcore/TQResource.prg
  * contrib/hbqt/qtcore/QResource.cpp
  * contrib/hbqt/doc/en/class_qresource.txt
  * contrib/hbqt/hbqt.h
    + Added QResource:registerResource()/QResource:unregisterResource()
    * With some minor modification from me (unsigned char -> uchar,
      some formatting)

  ; Patches from Tamas Tevesz:

  * src/rtl/memvarhb.prg
  * src/rtl/hbcom.c
    * Tweaks for prev patch: formatting and .hbv type description.

  ; Thanks to both contributors!
2010-07-02 12:36:21 +00:00
Viktor Szakats
796a93512c 2010-06-29 08:46 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
    + Added HB_QT_UIC_BIN.

  * utils/hbmk2/hbmk2.prg
    ! Fixed to call 'pre_prg' plugin state from a better
      position, so that it works in incremental mode.

  * contrib/hbqt/hbmk2_plugin_ui.prg
    * Variable name cleanup.
    * Marked parameters passed by reference.

  * contrib/Makefile
    * Finalizing GNU Make -> hbmk2 job transfer.

  * contrib/makefile.prg
    * Finalizing clean/install/make job control.

  * contrib/hbide/hbide.hbp
    + Use explicit .ui input file list instead of using wildcards.

  * contrib/hbide/setup.ui
    ! Fixed mixed-case hbide.ini filename on UI.
    ! Fixed .exe extension (and mixed case) on UI.
2010-06-29 06:47:23 +00:00
Viktor Szakats
0d75628529 2010-06-28 10:45 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* external/patchup.prg
    * Changed gtcgi force option to be the more portable-style one.

  * contrib/hbqt/utils/hbqtui.prg
    + Added error message
    ; TOFIX: This tool needs serious ruggedizing to be ready for
             production environment. It just fails to give _any_
             on screen feedback about what's happening, or what
             fails. This means that the caller will fail in various
             ways depending on how hbqtui failed. It also doesn't
             return anything via errorlevel. Pritpal can you look
             at it?

  * contrib/Makefile
  * contrib/makefile.prg
    + Added experimental call out from GNU Make to Harbour
      contrib make orchestrator script.
2010-06-28 08:45:41 +00:00
Viktor Szakats
9adc0c8611 2010-06-14 11:55 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
  * include/hbsetup.h
  * utils/hbmk2/hbmk2.prg
    + Added experimental support for QNX operating systems.
      Tested with 6.2.1.

  + config/qnx
  + config/qnx/gcc.mk
  + config/qnx/global.mk
    + Added qnx GNU make files. For now this is a simple copy
      of linux ones.

  * src/common/hbgete.c
  * src/common/hbprintf.c
    + HB_OS_QNX tweaks.

  * src/common/hbffind.c
  * src/rtl/fssize.c
    ! Disabled stat64 for HB_OS_QNX.

  * src/common/hbffind.c
    ! Fixed very old error in default (todo) branch 
      where hbrtl function was mistakenly referenced.

  * external/Makefile
  * contrib/Makefile
  * contrib/sddoci/Makefile
  * config/none.mk
  * config/global.mk
  * config/bin.mk
  * config/dir.mk
    + Since QNX has GNU Make 3.79.1, I had to re-xmastree
      the GNU Make files (though I didn't restore the xmas
      indentation), plus restore all logic that dealt
      with older GNU Make versions. Also added some new logic.
    + Changed to give warning only when using older than
      3.81 make versions. Some feature are disabled in this case,
      f.e. HB_BUILD_PKG (win/dos specific feature)
    ; TOFIX: host platform and cpu detection relies on $(eval)
             which is not present on pre 3.80.

  ; habour and hbpp builds fine, but there are several remaining
    problems in rtl and vm.

  * mpkg_nightly.sh
    + Added feeback about what the script does.
    + Using -q for zip to lessen large amount of unnecessary feedback

  * external/pcre/pcre.dif
  * external/pcre/Makefile
    ! Tweak to make PCRE build on djgpp 2.3
      Patch by Tamas Tevesz (2nd version posted on dev list)
2010-06-14 09:59:41 +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
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
948023ab13 2010-05-15 17:43 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* harbour.spec
  * contrib/Makefile
  + contrib/hbsms
  + contrib/hbsms/tests
  + contrib/hbsms/tests/send.prg
  + contrib/hbsms/tests/hbmk.hbm
  + contrib/hbsms/hbsms.prg
  + contrib/hbsms/hbsms.hbc
  + contrib/hbsms/Makefile
  * utils/hbmk2/examples/contribf.hbc
    + Readded hbsms lib.
    + Modified to use newly added core com functions
      via HBCT .prg level interface. (instead of hbtpathy)
    + Added disclaimer:
        EXPERIMENTAL CODE. USE AT YOUR OWN RISK. NO GUARANTEES.
      The code well may be pure crap, so if you have problem
      with it, supply working patches. Pls note that the
      reader function uses locally implemented timeout
      functionality, which may or may not work at all,
      though you can fix it if you have better idea.
      I've only tested it using Mac OS X 10.6 + old Nokia "S40"
      phone and one bad SMS number to see it kicks off at
      all and that's also the end of my testing possibilities.
2010-05-15 15:47:11 +00:00
Viktor Szakats
869dd87d12 2010-04-22 14:38 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/Makefile
  + contrib/hbcups
  + contrib/hbcups/Makefile
  + contrib/hbcups/hbcups.c
  + contrib/hbcups/hbcups.hbc
  + contrib/hbcups/tests
  + contrib/hbcups/tests/hbmk.hbm
  + contrib/hbcups/tests/test.prg
    + Added basic CUPS wrapper lib, based on code idea posted on the
      list by Doug.
2010-04-22 12:38:52 +00:00
Viktor Szakats
5405a20528 2010-04-09 23:15 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* harbour.spec
  * utils/hbmk2/examples/contribf.hbc
  * contrib/Makefile
  + contrib/hbblink
  + contrib/hbblink/hbblink.ch
  + contrib/hbblink/hbblink.hbc
  + contrib/hbblink/Makefile
  + contrib/hbblink/blinker.prg
  * contrib/hbmisc/hbmisc.hbc
  * contrib/hbmisc/Makefile
  - contrib/hbmisc/blinker.prg
  - contrib/hbmisc/blinker.ch
    * Moved Blinker compatibility calls to separate library.
    * Renamed blinker.ch to hbblink.ch
    ! Changed to use '-c' instead of '/c' in command execution.
    ; QUESTION: Any opinions on including that in core?
2010-04-09 21:15:45 +00:00
Viktor Szakats
9bf13d9bc0 2010-03-24 21:42 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* contrib/Makefile
    + sdd libs ordered alphabetically like other contribs.
2010-03-24 20:42:44 +00:00
Viktor Szakats
58be19d9e6 2010-03-24 10:24 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* contrib/Makefile
  * contrib/rddsql/Makefile
  - contrib/rddsql/sddmy
  + contrib/sddmy
  * contrib/sddmy/Makefile
  * contrib/sddmy/sddmy.hbc
  - contrib/rddsql/sddfb
  + contrib/sddfb
  * contrib/sddfb/Makefile
  * contrib/sddfb/sddfb.hbc
  - contrib/rddsql/sddpg
  + contrib/sddpg
  * contrib/sddpg/Makefile
  * contrib/sddpg/sddpg.hbc
  - contrib/rddsql/sddsqlt3
  + contrib/sddsqlt3
  * contrib/sddsqlt3/Makefile
  * contrib/sddsqlt3/sddsqlt3.hbc
  - contrib/rddsql/sddoci
  + contrib/sddoci
  * contrib/sddoci/sddoci.hbc
  * contrib/sddoci/Makefile
    * Flattened dir structure.

  * contrib/sddfb/sddfb.c
  * contrib/sddsqlt3/sddsqlt3.c
    * Minor formatting.
2010-03-24 09:25:29 +00:00
Viktor Szakats
32f95811e1 2010-03-20 10:42 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
- contrib/hbbzip2
  + contrib/hbbz2
  * contrib/Makefile
  * contrib/hbbz2/hbbzip2.hbc
    * Renaming hbbzip2 to hbbz2 (pass 1/2)
2010-03-20 09:43:04 +00:00
Przemyslaw Czerpak
5d7406d3bb 2010-03-16 13:56 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/Makefile
  + harbour/contrib/hbbzip2
  + harbour/contrib/hbbzip2/hbbzip2.c
  + harbour/contrib/hbbzip2/hbbzip2.ch
  + harbour/contrib/hbbzip2/Makefile
    + added very simple wrapper to BZIP2 compression
      Now only buffer compression functions.
         HB_BZ2_VERSION() -> <cBZlibVersion>
         HB_BZ2_COMPRESSBOUND( <cData> | <nDataLen> ) -> <nMaxCompressLen>
         HB_BZ2_UNCOMPRESSLEN( <cCompressedData>, [<@nResult>] )
                  -> <nUnCompressedDataLen> or 0 on error
         HB_BZ2_COMPRESS( <cData>, [<nDstBufLen>|<@cBuffer>], [<@nResult>],
                          [<nLevel>] ) -> <cCompressedData> or NIL on Error
         HB_BZ2_UNCOMPRESS( <cCompressedData>, [<nDstBufLen>|<@cBuffer>],
                            [<@nResult>] ) -> <cUnCompressedData> or NIL
                                              on Error
2010-03-16 12:56:23 +00:00
Viktor Szakats
8bb33ae346 2010-03-04 19:08 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* harbour.spec
  * contrib/Makefile
  - contrib/hbsms
    - Deleted hbsms lib.
2010-03-04 18:08:34 +00:00
Viktor Szakats
66b730d32d 2010-02-26 10:56 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
+ contrib/hbfoxpro/dll.prg
  + contrib/hbfoxpro/Makefile
  * contrib/hbwin/Makefile
  - contrib/hbwin/win_dllf.prg
    + Moved FoxPro-like dynamic call function to
      hbfoxpro lib.
      Renamed it to FOX___DYNCALL() until we find
      it a better name, or someone will suggest
      how this is best presented for actual FoxPro
      users.

  * contrib/Makefile
  * utils/hbmk2/examples/contribf.hbc
    + Enabled hbfoxpro lib.

  * config/wce/global.mk
  * config/win/global.mk
    * Formatting.
2010-02-26 09:57:39 +00:00
Viktor Szakats
fb8f347420 2010-02-20 13:02 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* contrib/Makefile
  - contrib/xpp
  + contrib/hbxpp
  * contrib/hbxpp/Makefile
  - contrib/hbxpp/xpp.hbc
  + contrib/hbxpp/hbxpp.hbc
  - contrib/hbxpp/xppextrn.ch
  + contrib/hbxpp/hbxppext.ch
  - contrib/hbxpp/xpp.ch
  + contrib/hbxpp/hbxpp.ch
  * contrib/hbxpp/tests/hbmk.hbm
  * utils/hbmk2/examples/contribf.hbc
    * Renamed 'xpp' lib to 'hbxpp'. Final name.
2010-02-20 12:03:26 +00:00
Viktor Szakats
fe38540ca2 2010-02-20 12:55 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* include/hbsetup.ch
  * src/common/hbverdsp.c
    - Deleted HB_COMPAT_FLAGSHIP, HB_COMPAT_FOXPRO.

  * include/hbextern.ch
  * src/rtl/seconds.c
    + Added HB_SECONDSCPU()
      (native Harbour version of FlagShip specific SECONDSCPU())

  * tests/memtst.prg
  * tests/speedold.prg
  * tests/speedtst.prg
  * tests/vidtest.prg
    * Changed to use HB_SECONDSCPU().
    + Added translation from SECONDSCPU() to HB_SECONDSCPU() when
      built for FlagShip (where applicable).

  * include/hbextern.ch
  * src/rtl/Makefile
  - src/rtl/strpeek.c
  - src/rtl/secondfs.c
  * contrib/Makefile
  + contrib/hbfship
  + contrib/hbfship/Makefile
  + contrib/hbfship/hbfship.hbc
  + contrib/hbfship/secondfs.c
  + contrib/hbfship/strpeek.c
    - Moved FlagShip specific function from core to new hbfship lib.
    * Changed SECONDSCPU() to be just a wrapper over core HB_SECONDSCPU().
    ; INCOMPATIBLE: If you used SECONDSCPU() function, change it to
                    HB_SECONDSCPU(), or add hbfship to your lib list.
                    If you used STRPEEK() or STRPOKE() functions,
                    add hbfship to your lib list.

  * utils/hbmk2/examples/contribf.hbc
    + Added hbfship.
2010-02-20 11:57:17 +00:00
Viktor Szakats
b41aa9e908 2010-02-12 21:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* include/hbdefs.h
    * HB_BYTE made a synonym for HB_UCHAR.
      HB_BYTE is only there for convenience, HB_UCHAR is recommended
      for unsigned byte streams.
    * HB_U8 now based on HB_UCHAR.
    ! Fixed UINT64/INT64 left defined in some cases.

  * contrib/hbwin/hbwin.h
  * contrib/hbwin/hbwin.ch
  * contrib/hbwin/tests/testdll.prg
  * contrib/hbwin/win_dll.c
  * contrib/hbwin/legacycd.c
    + Added LONGLONG C types.
    + Added support for user-specifiable parameter types.
      This works now in low-level C dll call function and also
      on high level in HB_DLLCALL().
    + Added support for LONGLONG/int64 integers.
    + Added support for raw strings. (no UNICODE or codepage
      conversion).
    ! Fixed typo in iRetTypeRaw assigment.
    + Added one new test for param type spec test. (pretty bare)
    ! Fixed WAPI_GETPROCADDRESS() to GETPROCADDRESS(). Latter
      has some extra features so we still need it.
    * GETPROCADDRESS() moved back to non-compatibility.
    ; Please review the code. There are some integer conversion
      which might not be proper (& 0xFFFF).

  * utils/hbmk2/hbmk2.prg
    ! Typo in recently added help text.

  * contrib/Makefile
  - contrib/hbbmcdx
  + contrib/rddbmcdx
  * contrib/rddbmcdx/bmdbfcdx.c
  * contrib/rddbmcdx/Makefile
    * Renamed hbbmcdx to rddbmcdx.
    * More cleanup to RDD code. (sync with rddcdx, deleted
      unnecessary lines)
    - Deleted "turbo" functionality. BM_TURBO() is now a dummy.
      AFAIR this isn't safe, and even if it is it should be
      implemented differently, not as a static variable.
2010-02-12 20:02:34 +00:00
Viktor Szakats
c00a4ce387 2010-01-28 04:23 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
  * external/Makefile
  * contrib/Makefile
    + Added build option to exclude specific list of contrib/external 
      libraries using syntax: 'HB_CONTRIBLIBS=no lib1 lib2 libn'
2010-01-28 03:24:37 +00:00
Viktor Szakats
f421b674e6 2009-12-06 12:39 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* contrib/Makefile
  * contrib/hbwin/win_reg.prg
  * contrib/hbwin/win_os.prg
  * contrib/hbwin/win_tprn.prg
  * contrib/hbwin/hbwin.ch
  * contrib/hbwin/win_tcom.prg
  * contrib/hbwin/win_com.c
  * contrib/hbwin/win_regc.c
  * contrib/hbwin/win_prn1.c
  * contrib/hbwin/win_osc.c
  * contrib/hbwin/win_dll.c
  * contrib/hbide/ideparseexpr.c
    * Formatting.
2009-12-06 11:40:52 +00:00
Viktor Szakats
e1f3d8f9fe 2009-12-03 18:47 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* contrib/Makefile
    + Moved hbcairo to section for contribs with external dependencies.
2009-12-03 17:47:55 +00:00
Mindaugas Kavaliauskas
c32cc9088c 2009-12-03 18:56 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/contrib/hbcairo/Makefile
  * harbour/contrib/hbcairo/context.c
  * harbour/contrib/hbcairo/paths.c
  * harbour/contrib/hbcairo/pdf.c
  * harbour/contrib/hbcairo/png.c
  + harbour/contrib/hbcairo/surface.c
  * harbour/contrib/hbcairo/text.c
  + harbour/contrib/hbcairo/transfor.c
  + harbour/contrib/hbcairo/util.c
  * harbour/contrib/hbcairo/hbcairo.ch
    + Added more Cairo functions

  * harbour/contrib/Makefile
    * added hbcairo into contrib compile list
2009-12-03 16:59:36 +00:00
Viktor Szakats
2bf21ca21e 2009-11-15 05:12 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* src/compiler/genc.c
  * src/compiler/gencc.c
    * Using HB_BYTE instead of BYTE in generated .c sources.

  * contrib/Makefile
  + contrib/hbsms
  + contrib/hbsms/Makefile
  + contrib/hbsms/hbsms.hbc
  + contrib/hbsms/hbsms.prg
  + contrib/hbsms/tests
  + contrib/hbsms/tests/hbmk.hbm
  + contrib/hbsms/tests/send.prg
    + Added SMS library. Currently sending is implemented.
      SMS_SEND( <cPort>, <cPhoneNumber>, <cText>, [<lDeliveryReport>], [<cPIN>] ) -> <nErrorCode. 0 = success>
    ; Uses hbtpathy.

  * contrib/hbwin/tests/hbmk.hbm
    ! Missing -es2.
2009-11-15 04:22:05 +00:00
Viktor Szakats
46519d7827 2009-11-09 23:35 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
* contrib/rddads/adsfunc.c
    * Minor cleanup.

  * doc/dirstruc.txt
  * utils/hbmk2/examples/contribf.hbc
  * contrib/Makefile
  - contrib/rddado
  + examples/rddado
  + examples/rddado/rddado.hbp
  - examples/rddado/Makefile
    * Moved rddado from contrib to examples area.
      It's an almost working example.
2009-11-09 22:38:57 +00:00
Viktor Szakats
e0ca13db06 2009-09-21 00:11 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
- contrib/iodmem
  + contrib/hbmemio
  - contrib/hbmemio/iodmem.hbc
  + contrib/hbmemio/hbmemio.hbc
  * contrib/hbmemio/Makefile
  * contrib/Makefile
    * Renamed to have 'hb' prefix and to be in line with hbnetio.
    ! Fixed props on Makefile.
    ! Corrected to list this lib in no-dependency section in contrib/Makefile.
2009-09-21 22:13:27 +00:00
Mindaugas Kavaliauskas
0c8a24aae9 2009-09-21 22:50 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
+ harbour/contrib/Makefile
  + harbour/contrib/iodmem/Makefile
  + harbour/contrib/iodmem/iodmem.hbc
    + added make files
  * harbour/contrib/iodmem/iodmem.c
    ! updated to be compatible with the latest SVN (rename method implemented)
    * some warnings are fixed
2009-09-21 19:51:10 +00:00
Viktor Szakats
6ff6aa0f45 2009-09-16 12:59 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/examples/contribf.hbc
  * contrib/Makefile
  - contrib/hbvpdf
  + examples/hbvpdf
    * Moved hbvpdf lib to examples section.
      This code is barely updated and offers duplicate functionality
      of superior hbhpdf lib.

  * source/rtl/filesys.c
    * Minor formatting.
2009-09-16 11:00:23 +00:00
Przemyslaw Czerpak
08e0268da4 2009-09-01 00:56 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/harbour.spec
  * harbour/harbour-win-spec
  * harbour/harbour-wce-spec
  * harbour/bin/hb-func.sh
  * harbour/contrib/Makefile
  + harbour/contrib/hbnetio
  + harbour/contrib/hbnetio/netio.h
  + harbour/contrib/hbnetio/netiomt.prg
  + harbour/contrib/hbnetio/netiocli.c
  + harbour/contrib/hbnetio/netiosrv.c
  + harbour/contrib/hbnetio/Makefile
    + added new library: HBNETIO.
      It implements alternative RDD IO API which uses own TCP/IP sockets
      to exchange data between client and server.
      This library contains client and server code and is fully MT safe.
      On client side it's enough to execute:
         NETIO_CONNECT( [<cServer>], [<cPort>], [<nTimeOut>] ) -> <lOK>
      function to register alternative NETIO RDD API and set default
      server address and port.
         <cServer>  - server addres       (default 127.0.0.1)
         <cPort>    - server port         (default 2941)
         <nTimeOut> - connection timeout  (default -1 - not timeout)
      Above settings are thread local and parameters of the 1-st successful
      connection are used as default values for each new thread.
      After registering NETIO client by above function each file starting
      "net:" prefix is automatically redirected to given NETIO server, i.e.
         use "net:mytable"
      It's also possible to pass NETIO server and port as part of file name,
      i.e.:
         use "net:192.168.0.1:10005:mytable"
      On the server side the following functions are available:
      create NETIO listen socket:
         NETIO_LISTEN( [<nPort>], [<cAddress>], [<cRootDir>] )
                                                -> <pListenSocket> | NIL
      accept new connection on NETIO listen socket:
         NETIO_ACCEPT( <pListenSocket> [, <nTimeOut>] )
                                                -> <pConnectionSocket> | NIL
      start connection server:
         NETIO_SERVER( <pConnectionSocket> ) -> NIL
      stop connection accepting or connection server:
         NETIO_SERVERSTOP( <pListenSocket> | <pConnectionSocket>, <lStop> )
                                                -> NIL
      activate MT NETIO server (it needs MT HVM):
         NETIO_MTSERVER( [<nPort>], [<cAddress>] ) -> <pListenSocket> | NIL

      To create NETIO server is enough to compile and link with MT HVM
      this code:

         proc main()
            local pListenSocket

            pListenSocket := netio_mtserver()
            if empty( pListenSocket )
               ? "Cannot start server."
            else
               wait "Press any key to stop NETIO server."
               netio_serverstop( pListenSocket )
               pListenSocket := NIL
            endif
         return

      NETIO works with all core RDDs (DBF, DBFFPT, DBFBLOB, DBFNTX, DBFCDX,
      DBFNSX, SDF, DELIM) and any other RDD which inherits from above or
      use standard RDD IO API (hb_file*() functions).
      Without touching even single line in RDD code it gives the same
      functionality as REDBFCDX in xHarbour but for all RDDs.
      It's possible that such direct TCP/IP connection is faster then
      file server protocols especially if they need more then one IP frame
      to exchange data so it's one of the reason to use it in such cases.
      Please make real speed tests.
      The second reason to use NETIO server is resolving problem with
      concurrent access to the same files using Harbour applications
      compiled for different platforms, i.e. DOS, LINUX, Windows and OS2.
      It's very hard to configure all client stations to use correct
      locking system. NETIO fully resolves this problem so it can be
      interesting alternative also for MS-Windows users only if they
      do not want to play with oplocks setting on each station.
      I'm interesting in user opinions about real life NETIO usage.

      Have a fun with this new toy ;-)

  + harbour/contrib/hbnetio/tests
  + harbour/contrib/hbnetio/tests/netiotst.prg
  + harbour/contrib/hbnetio/tests/netiotst.hbp
  + harbour/contrib/hbnetio/tests/data
    + added simple test code for NETIO. It activates NETIO MT server
      and then connects to this server to create and browse table with
      memo file and production index with few tags.
2009-08-31 22:56:45 +00:00
Viktor Szakats
868a22ea84 2009-08-17 19:27 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* external/sqlite3/Makefile
  * external/libhpdf/Makefile
  * external/libpng/Makefile
  * external/Makefile
  * include/Makefile
  * source/pp/Makefile
  * source/hbextern/Makefile
  * source/lang/Makefile
  * source/vm/maindllh/Makefile
  * source/vm/mainstd/Makefile
  * source/vm/maindllp/Makefile
  * source/vm/Makefile
  * source/vm/vmmt/Makefile
  * source/vm/mainwin/Makefile
  * source/main/Makefile
  * source/debug/Makefile
  * source/common/Makefile
  * source/nortl/Makefile
  * source/rtl/gtdos/Makefile
  * source/rtl/gtwin/Makefile
  * source/rtl/gtxwc/Makefile
  * source/rtl/gtcrs/Makefile
  * source/rtl/gtstd/Makefile
  * source/rtl/gttrm/Makefile
  * source/rtl/Makefile
  * source/rtl/gtcgi/Makefile
  * source/rtl/gtos2/Makefile
  * source/rtl/gtsln/Makefile
  * source/rtl/gtpca/Makefile
  * source/rtl/gtgui/Makefile
  * source/rtl/gt_tpl/Makefile
  * source/rtl/gtwvt/Makefile
  * source/macro/Makefile
  * source/hbpcre/Makefile
  * source/codepage/Makefile
  * source/rdd/dbfntx/Makefile
  * source/rdd/nulsys/Makefile
  * source/rdd/Makefile
  * source/rdd/dbfnsx/Makefile
  * source/rdd/dbfcdx/Makefile
  * source/rdd/hsx/Makefile
  * source/rdd/usrrdd/rdds/Makefile
  * source/rdd/usrrdd/Makefile
  * source/rdd/dbffpt/Makefile
  * source/rdd/hbsix/Makefile
  * source/hbzlib/Makefile
  * source/compiler/Makefile
  * source/Makefile
  * utils/hbformat/Makefile
  * utils/hbmk2/Makefile
  * utils/hbtest/Makefile
  * utils/hbi18n/Makefile
  * utils/Makefile
  * utils/hbrun/Makefile
  * contrib/gtalleg/Makefile
  * contrib/hbmysql/Makefile
  * contrib/hbct/Makefile
  * contrib/xhb/Makefile
  * contrib/hbodbc/Makefile
  * contrib/hbtpathy/Makefile
  * contrib/hbgt/Makefile
  * contrib/hbmzip/Makefile
  * contrib/hbsqlit3/Makefile
  * contrib/hbblat/Makefile
  * contrib/hbqt/Makefile
  * contrib/hbfbird/Makefile
  * contrib/hbziparc/Makefile
  * contrib/hbxbp/Makefile
  * contrib/xpp/Makefile
  * contrib/Makefile
  * contrib/hbnf/Makefile
  * contrib/hbcurl/hbcurls/Makefile
  * contrib/hbcurl/Makefile
  * contrib/gtqtc/Makefile
  * contrib/rddsql/sddmy/Makefile
  * contrib/rddsql/sddpg/Makefile
  * contrib/rddsql/sddfb/Makefile
  * contrib/rddsql/sddodbc/Makefile
  * contrib/rddsql/Makefile
  * contrib/hbhpdf/Makefile
  * contrib/rddado/Makefile
  * contrib/gtwvg/Makefile
  * contrib/hbpgsql/Makefile
  * contrib/rddads/Makefile
  * contrib/hbclipsm/Makefile
  * contrib/hbfimage/Makefile
  * contrib/hbgd/Makefile
  * contrib/hbmisc/Makefile
  * contrib/hbtip/Makefile
  * contrib/hbwin/Makefile
  * contrib/hbbmcdx/Makefile
  * contrib/hbvpdf/Makefile
  * contrib/hbssl/Makefile
  * contrib/hbbtree/Makefile
  * tests/bldtest/Makefile
  * doc/en-EN/Makefile
  * doc/Makefile
  * Makefile
    * Renaming .cf files to .mk.
      Pass 3. Changing .cf references to .mk ones outside config.
      SVN is in working state again. I'll do a final check after 
      this commit.
2009-08-17 17:32:21 +00:00
Viktor Szakats
6969cc0123 2009-08-15 11:21 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
- make_gnu.sh
  * config/linux/global.cf
    - Deleted. The -fPIC logic is moved to linux/global.cf but it's
      incomplete yet, some comments were added there.

  * contrib/hbcurl/hbcurl.hbc
  + contrib/hbcurl/hbcurls.hbc
    + Added separate .hbc file for static mode hbcurl lib.
      This replaces former HB_CURL_STATIC setting.

  * contrib/hbcurl/Makefile
  * external/Makefile
  * contrib/Makefile
    % Minor optimization to DIRS var.
      (in few cases it wasn't init to empty with := operator)

  + contrib/hbtip/hbtipssl.hbc
  + contrib/hbtip/hbtipssl
  + contrib/hbtip/hbtipssl/Makefile
  * contrib/hbtip/Makefile
    + Now building separate SSL enabled hbtip lib in case HB_HAS_OPENSSL.
    + Added separate .hbc file for SSL enabled hbtip lib, which also
      pulls hbssl libs and dependencies.

  * config/prg.cf
  * config/lib.cf
  * config/bin.cf
  * config/globsh.cf
  * config/dir.cf
  * config/c.cf
  * config/header.cf
  * config/doc.cf
  * config/instsh.cf
  * config/dirsh.cf
    % Optimized remaining (more delicate) logic to use :=
      instead of = assigment operator.
      At this point there is nothing left to optimize in this
      regard.
    ; I didn't restest parallel build and BISON related rules,
      please do so, I hope they aren't broken. Or in case you
      notice anything strange please shout.

  * config/global.cf
    + Added link to GNU Make NEWS files which describes at which release
      some features were added.

  * config/dos/watcom.cf
  * config/win/watcom.cf
  * config/os2/watcom.cf
    ! Synced special watcom CC_RULEs with recent changes to global CC_RULE.
2009-08-15 09:37:39 +00:00
Viktor Szakats
3bd5b77f25 2009-08-13 12:27 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
    * OS/2 prerequisites added. (currently not relevant, but anyway)

  * bin/postinst.bat
  * bin/hb-mkdyn.bat
  * make_gnu.bat
    + Reworked the way .dll generation is done in Harbour build process.
      New method solves the problem in one pass, instead of invoking
      make twice and requiring starter script to control this.
      The new trick is that CC_RULE will generate both dynamic and static
      objects for libs included in the .dll for compilers where such trick
      is necessary (currently all win/wce compilers except gcc based ones).
    * Changed HB_BUILD_LOG forming. Since at this point ARCH/COMP values
      aren't known (and just for this purpose it's not worth to maintain
      parallel detection logic in start script), the automatically
      generated log file will contain the date/time. Maybe even this will
      be dropped in the future. Since this is the only remaining logic
      in starter script (plus finding correct GNU Make, but that's even
      smaller role)
    ; I didn't test watcom yet, plus mpkg_gnu.bat isn't working yet,
      it needs to be moved to postinst phase.
    ; After these changes, there is basically no need for make starter
      scripts. Maybe I'll even remove included make tools to make things
      cleaner/leaner.
    ; TODO: Revise starter .sh scripts.
    ; TODO: mpkg_gnu.bat rework to run from postinst.
    ; TODO: Do some cleanup, remove redundancy in settings, etcetc.
    ; TOFIX: Fix watcom .dll generation.

  * config/global.cf
    ! Deleted double MAKE info line.
    + Showing detected shell in verbose mode.
    + Added mkdir/rm detection for OS/2 shells. (commented)
    % Optimized HB_BIN_COMPILE detection by using $(realpath) function.
      Now it's only detected once per make run.
    + Added HB_*_INSTALL value defaulting similar to make_gnu.sh
      for *nix platforms. (adding /harbour postfix to lib/inc dirs when
      HB_INSTALL_PREFIX is system location (/usr or /opt). Please review.

  * config/lib.cf
    + Added HB_DYN_COMPILE to control compiling for dynamic libs in
      a sperate command.
    + Added HB_DYN_LIBS to hold list of libs which should be built
      with separate command for dynamic libs.

  * config/rules.cf
    + Added logic for duplicate CC_RULE.
      TODO: Notice that it's not yet working when CC_RULE is overridden
            on compiler level. Help would be appreciate here.

  * config/wce/msvcarm.cf
  * config/wce/poccarm.cf
  * config/win/watcom.cf
  * config/win/icc.cf
  * config/win/msvc.cf
  * config/win/xcc.cf
  * config/win/pocc.cf
  * config/win/bcc.cf
    + Enabled HB_DYN_COMPILE for these compilers.

  * contrib/gtqtc/gtqtc.hbc
    ! Fixed lib order for mingw, supc++ moved to the end of list.

  * external/sqlite3/Makefile
  * external/libhpdf/Makefile
  * external/libpng/Makefile
  * external/Makefile
  * source/rtl/gtxwc/Makefile
  * source/rtl/gtcrs/Makefile
  * source/rtl/gtsln/Makefile
  * contrib/Makefile
  * contrib/gtalleg/Makefile
  * contrib/hbmysql/Makefile
  * contrib/hbodbc/Makefile
  * contrib/hbsqlit3/Makefile
  * contrib/hbqt/Makefile
  * contrib/hbfbird/Makefile
  * contrib/hbcurl/Makefile
  * contrib/gtqtc/Makefile
  * contrib/rddsql/sddmy/Makefile
  * contrib/rddsql/sddpg/Makefile
  * contrib/rddsql/sddfb/Makefile
  * contrib/rddsql/sddodbc/Makefile
  * contrib/hbhpdf/Makefile
  * contrib/hbpgsql/Makefile
  * contrib/rddads/Makefile
  * contrib/hbfimage/Makefile
  * contrib/hbgd/Makefile
  * contrib/hbssl/Makefile
    + Indentation.
    % Using ':=' in '*_OK := $(foreach...' expressions, instead of
      former unsafe '+='.

  * config/win/mingw.cf
  * config/wce/mingwarm.cf
  * config/win/cygwin.cf
    + Using 'crs' instead of 'r' as AR command.

  * config/install.cf
    + Don't define rule if INSTALL_RULE is empty.
      Cannot currently happen.

  * config/header.cf
    % Minor optimization.
2009-08-13 10:31:58 +00:00
Viktor Szakats
6944db77d7 2009-08-10 14:47 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* doc/en-EN/Makefile
  * doc/Makefile
  * include/Makefile
  * contrib/gtalleg/Makefile
  * contrib/hbmysql/Makefile
  * contrib/hbct/Makefile
  * contrib/xhb/Makefile
  * contrib/hbodbc/Makefile
  * contrib/hbtpathy/Makefile
  * contrib/hbgt/Makefile
  * contrib/hbmzip/Makefile
  * contrib/hbsqlit3/Makefile
  * contrib/hbblat/Makefile
  * contrib/hbqt/generator/hbqtgen.prg
  * contrib/hbqt/Makefile_gen
  * contrib/hbfbird/Makefile
  * contrib/hbziparc/Makefile
  * contrib/hbxbp/Makefile
  * contrib/xpp/Makefile
  * contrib/hbnf/Makefile
  * contrib/Makefile
  * contrib/hbcurl/hbcurls/Makefile
  * contrib/hbcurl/Makefile
  * contrib/gtqtc/Makefile
  * contrib/rddsql/sddmy/Makefile
  * contrib/rddsql/sddpg/Makefile
  * contrib/rddsql/sddfb/Makefile
  * contrib/rddsql/sddodbc/Makefile
  * contrib/rddsql/Makefile
  * contrib/hbhpdf/Makefile
  * contrib/rddado/Makefile
  * contrib/gtwvg/Makefile
  * contrib/hbpgsql/Makefile
  * contrib/hbclipsm/Makefile
  * contrib/rddads/Makefile
  * contrib/hbfimage/Makefile
  * contrib/hbgd/Makefile
  * contrib/hbmisc/Makefile
  * contrib/hbtip/Makefile
  * contrib/hbwin/Makefile
  * contrib/hbbmcdx/Makefile
  * contrib/hbvpdf/Makefile
  * contrib/hbssl/Makefile
  * contrib/hbbtree/Makefile
  * source/pp/Makefile
  * source/hbextern/Makefile
  * source/lang/Makefile
  * source/vm/maindllh/Makefile
  * source/vm/mainstd/Makefile
  * source/vm/maindllp/Makefile
  * source/vm/Makefile
  * source/vm/vmmt/Makefile
  * source/vm/mainwin/Makefile
  * source/main/Makefile
  * source/debug/Makefile
  * source/common/Makefile
  * source/nortl/Makefile
  * source/rtl/gtdos/Makefile
  * source/rtl/gtwin/Makefile
  * source/rtl/gtxwc/Makefile
  * source/rtl/gtcrs/Makefile
  * source/rtl/gtstd/Makefile
  * source/rtl/gttrm/Makefile
  * source/rtl/Makefile
  * source/rtl/gtcgi/Makefile
  * source/rtl/gtos2/Makefile
  * source/rtl/gtsln/Makefile
  * source/rtl/gtpca/Makefile
  * source/rtl/gtgui/Makefile
  * source/rtl/gt_tpl/Makefile
  * source/rtl/gtwvt/Makefile
  * source/macro/Makefile
  * source/hbpcre/Makefile
  * source/codepage/Makefile
  * source/rdd/dbfntx/Makefile
  * source/rdd/nulsys/Makefile
  * source/rdd/Makefile
  * source/rdd/dbfnsx/Makefile
  * source/rdd/dbfcdx/Makefile
  * source/rdd/hsx/Makefile
  * source/rdd/usrrdd/rdds/Makefile
  * source/rdd/usrrdd/Makefile
  * source/rdd/dbffpt/Makefile
  * source/rdd/hbsix/Makefile
  * source/hbzlib/Makefile
  * source/compiler/Makefile
    * Finished replacing TABs with spaces in simple variable assigments.
      TABs are only required when specifiying a rule command.
2009-08-10 12:48:47 +00:00
Viktor Szakats
504ca98e1c 2009-08-09 21:18 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* tests/hbpptest/Makefile
  * tests/bldtest/Makefile
  * tests/Makefile
  * tests/multifnc/Makefile
  * doc/en-EN/Makefile
  * doc/Makefile
  * external/sqlite3/Makefile
  * external/libhpdf/Makefile
  * external/libpng/Makefile
  * external/Makefile
  * include/Makefile
  * source/hbextern/Makefile
  * source/pp/Makefile
  * source/lang/Makefile
  * source/vm/maindllh/Makefile
  * source/vm/mainstd/Makefile
  * source/vm/maindllp/Makefile
  * source/vm/Makefile
  * source/vm/vmmt/Makefile
  * source/vm/mainwin/Makefile
  * source/main/Makefile
  * source/debug/Makefile
  * source/common/Makefile
  * source/nortl/Makefile
  * source/macro/Makefile
  * source/rtl/gtdos/Makefile
  * source/rtl/gtwin/Makefile
  * source/rtl/gtxwc/Makefile
  * source/rtl/gtcrs/Makefile
  * source/rtl/gtstd/Makefile
  * source/rtl/gttrm/Makefile
  * source/rtl/Makefile
  * source/rtl/gtcgi/Makefile
  * source/rtl/gtos2/Makefile
  * source/rtl/gtsln/Makefile
  * source/rtl/gtpca/Makefile
  * source/rtl/gtgui/Makefile
  * source/rtl/gt_tpl/Makefile
  * source/rtl/gtwvt/Makefile
  * source/hbpcre/Makefile
  * source/codepage/Makefile
  * source/rdd/dbfntx/Makefile
  * source/rdd/nulsys/Makefile
  * source/rdd/Makefile
  * source/rdd/dbfnsx/Makefile
  * source/rdd/dbfcdx/Makefile
  * source/rdd/hsx/Makefile
  * source/rdd/usrrdd/rdds/Makefile
  * source/rdd/usrrdd/Makefile
  * source/rdd/dbffpt/Makefile
  * source/rdd/hbsix/Makefile
  * source/compiler/Makefile
  * source/hbzlib/Makefile
  * source/Makefile
  * utils/hbformat/Makefile
  * utils/hbmk2/Makefile
  * utils/hbtest/Makefile
  * utils/hbi18n/Makefile
  * utils/hbrun/Makefile
  * contrib/gtalleg/Makefile
  * contrib/hbmysql/Makefile
  * contrib/hbct/Makefile
  * contrib/xhb/Makefile
  * contrib/hbodbc/Makefile
  * contrib/hbtpathy/Makefile
  * contrib/hbgt/Makefile
  * contrib/hbmzip/Makefile
  * contrib/hbsqlit3/Makefile
  * contrib/hbblat/Makefile
  * contrib/hbqt/Makefile
  * contrib/hbqt/generator/hbqtgen.prg
  * contrib/hbqt/Makefile_gen
  * contrib/hbfbird/Makefile
  * contrib/hbziparc/Makefile
  * contrib/hbxbp/Makefile
  * contrib/xpp/Makefile
  * contrib/hbnf/Makefile
  * contrib/Makefile
  * contrib/hbcurl/hbcurls/Makefile
  * contrib/hbcurl/Makefile
  * contrib/gtqtc/Makefile
  * contrib/rddsql/sddmy/Makefile
  * contrib/rddsql/sddpg/Makefile
  * contrib/rddsql/sddfb/Makefile
  * contrib/rddsql/sddodbc/Makefile
  * contrib/rddsql/Makefile
  * contrib/hbhpdf/Makefile
  * contrib/rddado/Makefile
  * contrib/gtwvg/Makefile
  * contrib/hbpgsql/Makefile
  * contrib/hbclipsm/Makefile
  * contrib/rddads/Makefile
  * contrib/hbfimage/Makefile
  * contrib/hbgd/Makefile
  * contrib/hbtip/Makefile
  * contrib/hbbmcdx/Makefile
  * contrib/hbvpdf/Makefile
  * contrib/hbssl/Makefile
  * contrib/hbbtree/Makefile
    % Using ':=' instead of '=' where possible.
    ; TODO: Central make files (.cf).

  * config/global.cf
  * config/bin.cf
  * config/globsh.cf
  * config/dir.cf
  * config/bsd/gcc.cf
  * config/bsd/global.cf
  * config/c.cf
  * config/wce/msvcarm.cf
  * config/wce/global.cf
  * config/wce/mingwarm.cf
  * config/wce/poccarm.cf
  * config/rules.cf
  * config/hpux/gcc.cf
  * config/darwin/gcc.cf
  * config/darwin/global.cf
  * config/dos/watcom.cf
  * config/dos/djgpp.cf
  * config/win/watcom.cf
  * config/win/icc.cf
  * config/win/global.cf
  * config/win/cygwin.cf
  * config/win/msvc.cf
  * config/win/xcc.cf
  * config/win/mingw.cf
  * config/win/pocc.cf
  * config/win/bcc.cf
  * config/linux/watcom.cf
  * config/linux/gcc.cf
  * config/linux/icc.cf
  * config/linux/sunpro64.cf
  * config/linux/sunpro.cf
  * config/os2/watcom.cf
  * config/os2/gcc.cf
  * config/sunos/gcc.cf
  * config/sunos/sunpro64.cf
  * config/sunos/sunpro.cf
    % Using ':=' instead of '=' where possible.
      (incomplete. pass one)

  * config/none.cf
    * Little change in text.

  * config/global.cf
    ! Fixed HB_ARCHITECTURE mis-detection as wce for a few win compilers.
2009-08-09 19:23:43 +00:00
Viktor Szakats
40a7012cb7 2009-07-22 15:48 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* bin/hb-func.sh
  * include/hbextern.ch
  * contrib/Makefile
  * source/rtl/Makefile
  + source/rtl/sha1.c
  + source/rtl/sha1.h
  + source/rtl/hbsha1hm.c
  + source/rtl/sha2.c
  + source/rtl/sha2.h
  + source/rtl/hbsha2hm.c
  + source/rtl/sha1hmac.c
  + source/rtl/sha1hmac.h
  + source/rtl/hbsha1.c
  + source/rtl/sha2hmac.c
  + source/rtl/sha2hmac.h
  + source/rtl/hbsha2.c
  + tests/testsha1.prg
  + tests/testsha2.prg
    * hbcrypt contrib library merged into the core.
2009-07-22 13:53:21 +00:00