Commit Graph

1796 Commits

Author SHA1 Message Date
Viktor Szakats
a325676ce2 2012-06-27 12:49 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    ! fixed similar regression as in 2012-06-27 10:35 UTC+0200
      but for hbrun
2012-06-27 10:50:26 +00:00
Viktor Szakats
77ed79aebd 2012-06-27 10:35 UTC+0200 Viktor Szakats (harbour syenar.net)
+ examples/hbdoc/hbdoc.css
  * examples/hbdoc/genhtml.prg
  * examples/hbdoc/hbdoc.prg
  * examples/hbdoc/tmplates.prg
    % avoid simpleio.ch
    * moved CSS code to separate file
    * renamed CSS file to hbdoc.css
    ! further unicode fix for html/xml outputs

  * utils/hbmk2/hbmk2.prg
    ! fixed recent regression
2012-06-27 08:37:24 +00:00
Viktor Szakats
8bba1dd746 2012-06-26 11:19 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    % use HBMK_IS_IN() where possible
2012-06-26 09:19:48 +00:00
Viktor Szakats
4dbffeb075 2012-06-26 11:09 UTC+0200 Viktor Szakats (harbour syenar.net)
* INSTALL
    * minor update
  * utils/hbmk2/hbmk2.prg
    * make sure to convert script parameter to native pathseps
2012-06-26 09:10:50 +00:00
Viktor Szakats
b08206bdd9 2012-06-22 19:39 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    * minor cleanup (var renamed)
2012-06-22 17:40:23 +00:00
Viktor Szakats
318d7f894a 2012-06-22 19:36 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    % consolidated/updated TODO comments
    ! fixed and optimized _HBMK_EMBEDDED_ build mode
2012-06-22 17:37:22 +00:00
Viktor Szakats
2999d17091 2012-06-22 19:25 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.hbp
  * utils/hbmk2/hbmk2.prg
  * utils/hbmk2/Makefile
    * minor changes to do not require std.ch
    + enabled -u option for hbmk2 source code.
2012-06-22 17:25:37 +00:00
Viktor Szakats
a492d8754e 2012-06-22 19:17 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    * avoiding some language elements/minor optimizations
2012-06-22 17:19:24 +00:00
Viktor Szakats
a787fd60ac 2012-06-20 19:02 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    * marked the file as UTF8
    * added accent to my own name. let's see on which platforms
      and configs it appears alright (second "a" should appear
      with an acute accent: "a'")
      [ms-dos and OS/2 is not expected to work]
2012-06-20 17:06:19 +00:00
Viktor Szakats
20dfd62b9e 2012-06-19 14:29 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    * deleted all remaining "hbmk2" occurrences from comments
2012-06-19 12:29:54 +00:00
Viktor Szakats
f1a837228b 2012-06-18 21:12 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    - do not include Harbour bin dir in linker libpath on non-*nix
      systems. In could cause some compilers (f.e. mingw) to link
      to .dlls stored there (f.e. 3rd party dynamic dlls enabled
      with HB_INSTALL_3RDDYN), not letting user supplied libpaths
      to kick in. If you for some reason want to include Harbour
      bin dir in libpath, use: -L${HB_LIB} option, or to include
      dynamic lib dir (emulating old behavior on non-*nix), use
      -L${HB_DYN}
    ! fixed -env option processing after 2012-06-14 12:01 UTC+0200
2012-06-18 19:12:49 +00:00
Viktor Szakats
b2045d96b5 2012-06-18 12:49 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    * made --hbinfo to return information only for the top project
      (not nested ones)
      This should fix regression of not generating .hbx files for
      the hbqt special case since 2012-06-06 16:02 UTC+0200
    + added --hbinfo=nested to return information also on nested
      projects
    + --hbinfo will now append an 0x0A byte after each JSON
      block, so multiple JSON blocks can be parsed by the caller

  * contrib/hbqt/hbqt_commons.hbm
    * changed to be friendly with '--hbinfo=nested' hbmk2 option
      (not used in Harbour make process)
2012-06-18 10:49:51 +00:00
Viktor Szakats
411e468e81 2012-06-17 15:59 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbrun/hbrun.hbp
  * utils/hbmk2/hbmk2.hbp
  * utils/hbmk2/Makefile
  * package/mpkg_win.nsi
  * package/winuni/mpkg_win_uni.nsi
    ; trying to crawl out from this pool of dynamic mud.
    * enabled all embedded headers for both hbmk2 and hbrun
      so we're back to square one with this, except that
      now hbmk2 also holds the full set of core headers not
      just a minimal selection. The reason is to keep hbmk2
      as the distributable runner tool. It also syncs all
      C compilers and platforms.
    * hbmk2 built in -static mode again. It will fix the
      'make clean' problem, it will make it distributable.
    * hbrun changed to be built in -shared mode to allow
      to load dynamic modules.
    ; so this is the state right now (if I didn't make any mistake):
        hbmk2:
           all embedded core headers
           no contrib modules
           static build
           no dynamic modules
           fully movable/distributable as a runner
           cannot be self-registered as .hb runner on Windows
        hbrun:
           all embedded core headers
           some contrib modules
           shared build when HB_BUILD_CONTRIB_DYN enabled
           dynamic modules possible
           less movable/distributable, needs harbour dll, dynamic modules need Harbour dir layout
           can be self-registered as .hb runner on Windows
    ; "Ext:" banner on interactive shell will have blue color
      if dynamic modules are enabled and grey if not.

  * utils/hbmk2/hbmk2.prg
    * minor change to show the actual name of the tool
      in the error message requesting a -shared build.
2012-06-17 14:05:24 +00:00
Viktor Szakats
ebaf33647f 2012-06-17 14:49 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/rddads/ads1.c
  * contrib/rddads/adsfunc.c
  * contrib/rddads/adsx.c
  * src/common/hbfsapi.c
    ! deleted explicit newlines at EOL in HB_TRACE() calls

  * INSTALL
    + added new '0. GUARANTEES AND LIABILITY' section
    ! updated instructions to create debug build

  * utils/hbmk2/hbmk2.prg
    * minor cleanups

  * utils/hbmk2/Makefile
    + enabled dynamic version of hbmk2 only for mingw builds.
      Rest of the targets may or may not work due to CRTL
      usage (fprintf()) from HB_COMPILE*() calls which causes
      GPF in currently generated shared builds, most probably
      due to double copy of statically linked CRTL code.
      mingw uses MSVCRT.DLL, so it's not prone to this.
      Solution is either to avoid file handling CRTL calls
      in compiler code, or to tweak -shared build setting to
      death to make it work for all non-mingw compilers.
      Both of these is very difficult.
      This means that dynamic module loading from scripts
      will only work in hbmk2 built with mingw.

   ; TOFIX: 'make clean' on contribs doesn't work with mingw,
            because harbour dll is deleted before hbmk2 is
            called, so it cannot be started for cleanup.
2012-06-17 12:50:22 +00:00
Viktor Szakats
9a8f43c273 2012-06-17 11:23 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbtip/encqp.prg
  * contrib/hbtip/hbtip.hbx
    + added two new functions:
        TIP_QPENCODE(), TIP_QPDECODE()
      formerly only accessible via OOP code

  * utils/hbmk2/hbmk2.prg
    % merged FindInPath() and __hbshell_FindInPath() into one
2012-06-17 09:24:08 +00:00
Viktor Szakats
504f829813 2012-06-17 02:51 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbrun/hbrun.hbp
    * restored to embed headers in hbrun

  * utils/hbmk2/hbmk2.prg
    ! minor cleanups in runner UI
    ! fixed to open .dbf using cmd 'hbmk2 test.dbf' (emulating
      old hbrun behavior)
    + shows error messages when dynamic library failed to load
2012-06-17 00:55:46 +00:00
Viktor Szakats
f5f7f12fd9 2012-06-17 01:39 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbblat/hbblat.hbp
  * contrib/hbcurl/hbcurl.hbp
  * contrib/hbssl/hbssl.hbp
    ! fix to prev

  * contrib/hbpost.hbm
  * contrib/hbqt/hbqt_common.hbm
    * deleted extra pathsep

  * contrib/hbfbird/hbfbird.hbp
  * contrib/hbgd/hbgd.hbp
  * contrib/sddfb/sddfb.hbp
    ! fixed to use .dll imp lib source in -hbdyn mode.
      it's a fix for experimental HB_INSTALL_3RDDYN option.

  * contrib/make.hb
    * minor cleanups in errorlevel descriptions

  * utils/hbmk2/hbmk2.prg
    ! fixed finding scripts in path and without extensions 
      in runner mode
    ! fixed to not execute '.' when runner mode is started 
      with 'hbmk2 .' command
2012-06-16 23:44:08 +00:00
Viktor Szakats
e70fa438ce 2012-06-17 00:18 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    + will now gather a list of existing 3rd party dll dependencies
      using the file-group named 'depimplibsrc'. This list can
      be used to install these files to user-specific locations

  * contrib/hbpost.hbm
    + added global solution to install 3rd party dll dependencies,
      with minor fixes

  * contrib/hbblat/hbblat.hbp
  * contrib/hbcurl/hbcurl.hbp
  * contrib/hbssl/hbssl.hbp
    - deleted local solution to install 3rd party dll dependencies
2012-06-16 22:20:54 +00:00
Viktor Szakats
79bdb0e6d9 2012-06-16 21:52 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbcurl/hbcurl.hbp
  * contrib/hbssl/hbssl.hbp
    + added experimental support to install 3rd party .dll
      dependencies for these libs into the Harbour bin dir.
      Enabled with new build option, not yet documented,
      see it in the patch.

  * src/rtl/cdpdet.prg
    + request linkage of all codepages. I chose this to ensure
      the detection code can use all CPs automatically and it
      won't be unusable if users forget to request CPs
      themselves. This has an overhead if someone uses CP
      autodetection, but it makes it foolproof.

  * utils/hbmk2/hbmk2.prg
    * minor formatting
2012-06-16 19:56:11 +00:00
Viktor Szakats
b679a19cbb 2012-06-16 18:02 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.hbp
  * utils/hbmk2/Makefile
    % disabled embedded headers again, now dir layout detection should
      work well even under GNU Make, so it's not necessary
2012-06-16 16:03:29 +00:00
Viktor Szakats
03d3b0e465 deleted double empty line 2012-06-16 16:01:20 +00:00
Viktor Szakats
2f5e3e1201 2012-06-16 17:59 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    ! ignore HB_INSTALL_* envvars too in runner mode
2012-06-16 16:00:21 +00:00
Viktor Szakats
e244eedb87 2012-06-16 16:48 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbamf/hbamfobj.prg
    * made it more friendly with grep when finding undocumented functions
      by removing #translate.

  * src/vm/hvm.c
    ! added HB_STACK_TLS_PRELOAD

  * include/harbour.hbx
    ! added __ITEMSETREF(), __VMITEMID()

  * src/rtl/valtoexp.prg
    * hb_setItemRef() -> __itemSetRef(). Please tell if it's meant to
      be a user-accessible, public core API

  * utils/hbmk2/hbmk2.prg
    ! fixed to ignore HB_INSTALL_PREFIX variable in runner mode.
      This points to invalid places while running as part of GNU
      Make and prevents autodetection.
      TODO: Recheck if it now works without embedded headers.
      TODO: Obsolete HB_INSTALL_PREFIX also in hbmk2 mode.
2012-06-16 14:53:27 +00:00
Viktor Szakats
b85b90362a 2012-06-16 11:41 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/xhb/xhbcls.ch
    ! include hboo.ch

  * utils/hbmk2/hbmk2.prg
    ! Fixed to transform \n to eol in one certain warning
      message newly issued from the runner subsystem

  * utils/hbmk2/Makefile
  * utils/hbmk2/hbmk2.hbp
  * contrib/hbrun/hbrun.hbp
    ! restored to embed core headers. It's required when
      running build scripts as part of the GNU Make process,
      while HB_INSTALL_PREFIX setting is set to a value where
      Harbour isn't installed yet
2012-06-16 09:41:45 +00:00
Viktor Szakats
5969f97d7f 2012-06-15 10:59 UTC+0200 Viktor Szakats (harbour syenar.net)
+ contrib/hbamf/hbamfobj.prg
  * contrib/hbamf/amfdec.c
  * contrib/hbamf/amfenc.c
  * contrib/hbamf/hbamf.hbp
  * contrib/hbamf/hbamf.hbx
    + added missing parts as per Aleksander's instructions.
      with some renames/formatting. OBJAMF renamed to AMF_OBJ, 
      please review and test.
        https://groups.google.com/d/msg/harbour-devel/EPdeo6zbFt8/FTd7mkyTPawJ

  * utils/hbmk2/hbmk2.prg
    * minor formatting
2012-06-15 09:01:56 +00:00
Viktor Szakats
9493a734f2 2012-06-15 10:16 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    ! fixed RTE when running hbrun without parameter
2012-06-15 08:17:18 +00:00
Viktor Szakats
6d385827a5 2012-06-15 03:28 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    ! do not try to dynamically load hbwin for registry 
      functions, if the lib is already linked
    ! allow -hbreg and -hbunreg to be passed when it's 
      renamed to hbrun
2012-06-15 01:30:47 +00:00
Viktor Szakats
285921c547 2012-06-15 02:26 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/make.hb
  * contrib/hbrun/hbrun.hbp
  * INSTALL
    + enabled HB_BUILD_CONTRIB_DYN=yes by default. It will
      cause longer build-times, but it will also create dynamic
      builds for all contribs now. HBQT is particularly huge,
      so maybe we should disable dynamic libs creations for
      them.
    ; EXPERIMENTAL. This feature has been available for quite
      a long time now and some users have tested, but anyways
      build breaks are possible.

  - contrib/hbrun/extstat.prg
  * contrib/hbrun/extdyn.prg
  * contrib/hbrun/hbrun.hbp
  * contrib/hbrun/hbrun.prg
    % simplified the way static contribs are pulled into the
      executable. Now the list if linked contribs needs to be
      maintained only inside hbrun.hbp

  * utils/hbmk2/hbmk2.prg
    + inclusion of embedded core headers can now be enabled
      using -DHBMK_WITH_EMBEDDED_HEADERS build-time option for
      a minimal set (formely enabled by default in hbmk2)
      and -DHBMK_WITH_ALL_EMBEDDED_HEADERS for the full set,
      which is compatible with hbrun
    * hbmk2 will act as a shell/script runner also if its
      own name _starts_ or _ends_ with hbrun, so f.e. hbrun2,
      and xhbrun will be okay as well (in sync with other
      similar alias name rules).
    + shell screen will now display the list of non-core,
      statically linked extra libs
    ; NOTE: to custom build a complete hbrun emulation from
            hbmk2 source, use the following configuration:
      1. create file 'hbrun_emu.hbm' with this content:
         ---
         -ohbrun

         -static

         -DHBMK_WITH_ALL_EMBEDDED_HEADERS

         hbct.hbc           -request=__HBEXTERN__HBCT__
         hbexpat.hbc        -request=__HBEXTERN__HBEXPAT__
         hbmemio.hbc        -request=__HBEXTERN__HBMEMIO__
         hbmzip.hbc         -request=__HBEXTERN__HBMZIP__
         hbnetio.hbc        -request=__HBEXTERN__HBNETIO__
         hbunix.hbc{unix}   -request=__HBEXTERN__HBUNIX__{unix}
         hbwin.hbc{allwin}  -request=__HBEXTERN__HBWIN__{allwin}
         ---
      2. build hbrun emulation using this command:
         $ hbmk2 utils/hbmk2/hbmk2.hbp hbrun_emu.hbm
      3. This will create a fully static executable, with
         the name hbrun, with all embedded core headers and
         statically linked list of contribs listed in the .hbm
         file. The list can be configured at will. This is
         self-contained executable that can be distributed
         easily. Notice however that dynamic extension feature
         will not work in this type of build.

  * utils/hbmk2/hbmk2.hbp
    * minor formatting
2012-06-15 00:30:54 +00:00
Viktor Szakats
59d7ea89f9 2012-06-14 14:40 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.hbp
    - -head=dep no longer needed (with embedded plugin code)
2012-06-14 12:41:33 +00:00
Viktor Szakats
837d53ede4 2012-06-14 14:38 UTC+0200 Viktor Szakats (harbour syenar.net)
* INSTALL
    + documented hbmk2 usage as shell, script runner and
      .hrb builder/runner

  * package/mpkg_win.nsi
  * package/winuni/mpkg_win_uni.nsi
    + use hbmk2 as interactive shell instead of hbrun

  * utils/hbmk2/hbmk2.prg
    + display Harbour version when starting up the interactive shell
2012-06-14 12:39:38 +00:00
Viktor Szakats
231c24cbfa 2012-06-14 14:27 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    * killed some more 'dynamic' in hbshell source
2012-06-14 12:28:25 +00:00
Viktor Szakats
e6d0360980 2012-06-14 14:22 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbrun/hbrun.prg
  * utils/hbmk2/hbmk2.prg
    ! old indentation problem
2012-06-14 12:23:30 +00:00
Viktor Szakats
136dd444a9 2012-06-14 14:21 UTC+0200 Viktor Szakats (harbour syenar.net)
- utils/hbmk2/p_ext.hb
  * utils/hbmk2/hbmk2.prg
    * embedded shell plugin into hbmk2.prg
    ! fixed typos in prev causing shell plugin to not load
    * killed the word 'dynamic extension'. All extensions are 
      now dynamic
    * killed word 'hbrun' from hbmk2 source, now the shell is
      called 'hbshell', 'shell' or 'Harbour shell'
2012-06-14 12:22:05 +00:00
Viktor Szakats
8d67a5d0d8 2012-06-14 13:30 UTC+0200 Viktor Szakats (harbour syenar.net)
+ contrib/hbrun/p_ext.hb
  + utils/hbmk2/p_ext.hb
  - contrib/hbrun/extdynpl.hb
  - utils/hbmk2/p_extdyn.hb
  * contrib/hbqt/hbmk2_qt.hb
  * contrib/hbrun/hbrun.prg
  * contrib/hbrun/plugins.prg
  * contrib/make.hb
  * utils/hbmk2/hbmk2.prg
    * cleanups, syncing between hbrun and hbmk2 runner mode.
      __HBSCRIPT__* predefined macros renamed, public hbshell
      (was hbrun) APIs renamed. INCOMPATIBLE but its doubtful
      anybody used these.
    - deleted just added public APIs to load/unload extensions
2012-06-14 11:33:20 +00:00
Viktor Szakats
e59340ef18 2012-06-14 12:12 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    ! bah, leftover test line deleted
2012-06-14 10:13:12 +00:00
Viktor Szakats
f7a438ec12 2012-06-14 12:11 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    ! fixed not updating extension list on screen when it 
      became empty
2012-06-14 10:12:00 +00:00
Viktor Szakats
ebf9e1dd12 2012-06-14 12:01 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbide/hbide.hbp
  * contrib/hbide/idemain.prg
    + enabled rddads by default. Requires rddads dynamic 
      build, use HB_BUILD_CONTRIB_DYN=yes

  * contrib/hbrun/plugins.prg
    ! fixed shell plugin extension changed in prev

  * utils/hbmk2/hbmk2.prg
  * utils/hbmk2/hbmk2.es_PE.po
  * utils/hbmk2/hbmk2.hu_HU.po
  * utils/hbmk2/hbmk2.pt_BR.po
    + -env: option is now available inside .hbp/.hbp files
    ! fixed -env: option to be processed only for the main
      project (and not processed again for subprojects)
2012-06-14 10:02:11 +00:00
Viktor Szakats
340e351307 2012-06-14 04:00 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbnetio/utils/hbnetio/hbnetio.hbp
  - contrib/hbnetio/utils/hbnetio/netiomgm.prg
  + contrib/hbnetio/utils/hbnetio/netiomgm.hb
    * renamed hbrun/hbmk2 shell plugin code to .hb extension

  * contrib/hbnetio/utils/hbnetio/netiosvc.prg
    ! added missing copyright and SVN ID header

  * utils/hbmk2/hbmk2.prg
    + documented '.' parameter on -help screen.
    ; With this, hbmk2 has all the features of hbrun. Except:
      - it doesn't contain the selection of statically linked
        contribs:
           hbct, hbxpp, hbexpat, hbmemio, hbmzip, hbnetio, hbunix, hbwin
        These can now be loaded on-demand, f.e. by speccing
        them in envvar HB_EXTENSION, from shell prompt or
        #require directive, etc
      - it doesn't contain the 'hbnetio management console' shell
        plugin.
        It now can be loaded by copying /contrib/hbnetio/utils/hbnetio/netiomgm.hb
        to <home>/.harbour/.
      It means hbmk2 can now be used to:
        - convert Harbour source code to various kind of executables/binaries
        - run Harbour source code directly
        - serve as an interactive Harbour prompt/shell.

    ; As a next steps, HB_BUILD_CONTRIB_DYN may be enabled by
      default, hbrun be deleted and hbmk2 renamed to f.e. simply 'hb'.
    ; Needs testing on non-Windows envs
2012-06-14 02:01:21 +00:00
Viktor Szakats
c0686c0a98 2012-06-14 03:32 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.hbp
    + copied some remaining options from hbrun.hbp

  * utils/hbmk2/hbmk2.prg
    + added -hbreg[=global] and -hbunreg[=global] to register/unregister
      .hb file type on Windows. It uses a trick to load hbwin dynamically,
      so this will only work with HB_BUILD_CONTRIB_DYN=yes. It's grey
      area of dependency because core cannot depend on contrib, but in
      this case it's done dynamically and optionally and it gracefully
      fails if the contrib component is missing, but still, it uses it,
      if available. Hopefully in the future win registry functions can
      be moved to core so it can be cleaned, or this functionality
      removed from hbmk2 anytime, since it's not critical.
    + always detecting Harbour dir layout when entering runner mode,
      so all subsystems can now use that information
    * cleaned loading user configured dynamic extensions in runner mode
    ! fixed not adding global Harbour include dir in runner mode
    + all strings moved from hbrun code made translatable (except some
      CUI elements for now)
    % experimentally disabled embedded Harbour headers (build break
      possible)
    ! fixed loading "ext" (dynamic extension loader) shell plugin
    + output shell plugin load RTE to stderr
2012-06-14 01:35:35 +00:00
Viktor Szakats
bd6343a4d3 2012-06-14 01:09 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbrun/hbrun.prg
  * utils/hbmk2/hbmk2.prg
    % minor optimization to not try to create ~/.harbour directory
      on each __hbrun_ConfigDir() call, only when saving there.
2012-06-13 23:13:24 +00:00
Przemyslaw Czerpak
cda71d8c53 2012-06-14 00:55 UTC+0200 Przemyslaw Czerpak (druzus/at/poczta.onet.pl)
* harbour/include/hbset.h
  * harbour/src/vm/set.c
    % removed HB_SET_OSCODEPAGE
    % replaced HB_SET_DBCODEPAGE with hb_set_dbcp
    * generate RTE when wrong parameter type (not string or NIL) is
      passed to HB_SET_LANGUAGE, HB_SET_CODEPAGE, HB_SET_OSCODEPAGE,
      HB_SET_DBCODEPAGE

  * harbour/src/rtl/langapi.c
    * generate RTE 1303 when not existing lang module name is passed to
      hb_langSelectID() C function. It affects on all upper level
      code using this function. NULL is accepted as valid parameter.

  * harbour/src/rtl/cdpapi.c
    * generate RTE 1302 when not existing codepage name is passed to
      hb_cdpFindExt() C function. It affects on all upper level
      code using this function. NULL is accepted as valid parameter.
      If programmer does not want to generate RTE when wrong codepage
      name is passed then he should use hb_cdpFind() instead.

  * harbour/src/rtl/cdpapihb.c
    * use hb_cdpFindExt() instead if hb_cdpFind() in HB_CDPUNIID()
      function.

  * harbour/src/rtl/cdpapihb.c
  * harbour/contrib/hbexpat/internal.c
    ! use hb_parc() instead of hb_parcx() to get codepage name
      from optional parameter.

  * harbour/utils/hbmk2/Makefile
    ! fixed build process, now hbmk2 need HB_LIBS_MT_RDD

  * harbour/src/rtl/tpersist.prg
    % optimized decoding code which could be two slow with UTF8EX or
      similar CPs.
2012-06-13 22:55:29 +00:00
Viktor Szakats
61ec2cb4d7 2012-06-13 22:55 UTC+0200 Viktor Szakats (harbour syenar.net)
- contrib/hbamf/hbref.c
  * contrib/hbamf/amfdec.c
  * contrib/hbamf/amfenc.c
  * contrib/hbamf/amfstdio.c
  * contrib/hbamf/hbamf.hbp
  * contrib/hbamf/hbcls.c
    * added hbamf_ prefix to public C functions
    * locally used public C functions converted to static

  * utils/hbmk2/hbmk2.prg
    * minor
2012-06-13 20:58:16 +00:00
Viktor Szakats
0bdc87ca0e 2012-06-13 16:16 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbplist
  + contrib/hbamf
  + contrib/hbamf/amf.h
  + contrib/hbamf/amfdec.c
  + contrib/hbamf/amfenc.c
  + contrib/hbamf/amfstdio.c
  + contrib/hbamf/hbamf.hbc
  + contrib/hbamf/hbamf.hbp
  + contrib/hbamf/hbamf.hbx
  + contrib/hbamf/hbcls.c
  + contrib/hbamf/hbref.c
  + contrib/hbamf/issues.txt
  + contrib/hbamf/readme.txt
  + contrib/hbamf/tests
  + contrib/hbamf/tests/hbmk.hbm
  + contrib/hbamf/tests/tstendin.prg
    + added AMF3 encoder/decoder
      work of Aleksander Czajczynski and Ilina Stoilkovska
      (with minor additions of mine: build file
      cleanup, some C level formatting/comment cleanup, C++ 
      fixes)
    ; NOTE: this is only the pure AMF3 encoder/decoder,
            and doesn't include websocket layers
    ; TODO: adding license

  * utils/hbmk2/hbmk2.prg
    * minor in comments
2012-06-13 14:16:52 +00:00
Viktor Szakats
231d40b08d 2012-06-13 15:44 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbrun/hbrun.prg
  * contrib/hbrun/plugins.prg
  * utils/hbmk2/hbmk2.prg
    * synced recent changes
    + changed extension filename to <home>/.harbour/hb_extension (hb_ext.ini in MS-DOS)
      envvar to HB_EXTENSION
    + plugins are now loaded from <home>/.harbour/*.hb, <home>/.harbour/*.hrb
2012-06-13 13:47:13 +00:00
Viktor Szakats
72076b0399 2012-06-13 15:31 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbrun/hbrun.prg
  * utils/hbmk2/hbmk2.prg
    * renamed history file to have a tool agnostic name
      INCOMPATIBLE (history will be lost unless you rename
      the existing file from .hbrun_history to .hb_history)
2012-06-13 13:33:44 +00:00
Viktor Szakats
f2bb8bc732 2012-06-13 15:14 UTC+0200 Viktor Szakats (harbour syenar.net)
* INSTALL
    * minor clarifications to INSTALL/TROUBLESHOOTING

  * config/os2/watcom.mk
  * config/wce/mingwarm.mk
  * config/wce/msvcarm.mk
  * config/wce/poccarm.mk
  * config/win/bcc.mk
  * config/win/mingw.mk
  * config/win/msvc.mk
  * config/win/pocc.mk
  * config/win/watcom.mk
  * config/win/xcc.mk
    + added std header paths to RC commands

  * utils/hbmk2/Makefile
  + utils/hbmk2/hbmk2.rc
  * utils/hbmk2/hbmk2.hbp
    + added std windows versioninfo and manifest to hbmk2

  * utils/hbmk2/hbmk2.prg
  + utils/hbmk2/p_extdyn.hb
    + added almost complete hbrun functionality into hbmk2
      to run it, type: 'hbmk2 .'
      Missing is extension registration, plugins don't seem
      to work yet, and I plan to switch from full screen
      prompt to shell-like prompt. Plugin paths, extension
      configuration, history on-disk files need further
      polishing.
    + hbmk2 will act as a hbrun, if renamed to hbrun

  * contrib/hbqt/qtcore/hbqt_misc.prg
    + added two TOFIXes for missing PROTECTED keyword
      for two object variables of unknown purpose. Not
      even HBQT developers know what it is, but without
      it, HBQT breaks.

  ; Those who need "stable" hbqt (meaning "it builds")
    Go to:
       http://sourceforge.net/p/hbqt/
2012-06-13 13:26:25 +00:00
Viktor Szakats
51f2c4af14 2012-06-13 01:48 UTC+0200 Viktor Szakats (harbour syenar.net)
* utils/hbmk2/hbmk2.prg
    * further cleaned *HB_INSTALL* variable usage
    % merged harbour dir layout detection code used in
      build and runner modes.
2012-06-12 23:51:27 +00:00
Viktor Szakats
df87b48bf8 2012-06-12 21:14 UTC+0200 Viktor Szakats (harbour syenar.net)
* examples/hbbtree/tests/ctest.c
    ! converted Windows type to Harbour one

  * INSTALL
    ! typo in prev

  * utils/hbmk2/hbmk2.prg
    * cleaned output msgs in runner mode
    * cleaning *HB_INSTALL* variable usage. step one.
2012-06-12 19:16:21 +00:00
Viktor Szakats
b88fb293cc 2012-06-12 18:56 UTC+0200 Viktor Szakats (harbour syenar.net)
* INSTALL
    + extended troubleshooting instructions for code that
      involves non-ASCII chars

  * utils/hbmk2/hbmk2.prg
    + use UTF8 HVM in runner mode
    + enabled translations in runner mode
    ! in runner mode fixed setting up core header dir when no
      dyanmic libs are used
    ! in runner mode, dynamic lib location should now be detected
      also on *nix systems (untested)
    * some other minor cleanups and tweaks to runner mode
2012-06-12 17:00:15 +00:00
Viktor Szakats
169631527c 2012-06-12 04:17 UTC+0200 Viktor Szakats (harbour syenar.net)
* contrib/hbhttpd/log.prg
  * contrib/hbtip/log.prg
  * contrib/hbziparc/ziparc.prg
  * src/rtl/hbdoc.prg
  * src/rtl/hbi18n2.prg
  * src/rtl/memvarhb.prg
  * src/rtl/tlabel.prg
  * src/rtl/treport.prg
    % use HB_FNAMEEXTSETDEF() instead of manual logic.
      it also fixes RTEs in hbziparc when passed non-string
      filename to nearly any of its APIs.

  * utils/hbi18n/hbi18n.hbp
    * missed -shared enabler in .hbp

  * utils/hbmk2/Makefile
  * utils/hbmk2/hbmk2.hbp
    + enabled -shared build for hbmk2

  * utils/hbmk2/hbmk2.prg
    % consolidated .hbc finder logic
    % moved 'hbmk' structure initializations to subfunctions
    + added Harbour installation autodetection for hbmk2's
      runner mode. It's copy-paste code yet.
    + added automatic include path configuration in hbmk2's
      runner mode. It means that now #require-d extensions
      will have their include paths setup, so their header
      will be found, so they can be used now.

  ; I more and more see it a reality to integrate hbrun
    functionality into hbmk2. #require logic needs
    much of hbmk2's facilities, and hbmk2 already has
    basic runner capabilities. Contrib libs (and plugins)
    will all have to be loaded dynamically in such case,
    but since it works well, it should not be a problem.
    Finally hbmk2 can be the utility that runs scripts
    dynamically and also able to build an exe from them,
    using the exact same source code, without any external
    configuration, if the source code provides "#require"
    clues. All it needs is both dynamic and static versions 
    of extensions (=contribs or addons).
2012-06-12 02:30:41 +00:00