Commit Graph

557 Commits

Author SHA1 Message Date
Viktor Szakats
9f2c4df193 2009-03-02 09:36 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/rtl/Makefile
  * include/hbextern.ch
  + source/rtl/hbstrfmt.c
    + Added HB_STRFORMAT() sprintf()-like formatting.
    + Added hb_StrFormat() C level function.
    ; Work of Mindaugas sent to the list, with some minor 
      cleanups applied. Please test on your platform/compiler.

  * contrib/examples/uhttpd/uhttpd.prg
  * contrib/examples/uhttpd/cgifunc.prg
  * contrib/examples/uhttpd/session.prg
  * contrib/examples/uhttpd/uhttpd.hbm
    * xhb compatibility cleanups.
    - xhb lib and header dependency removed.

  * utils/hbmk2/hbmk2.prg
    * Changed so that libs won't inherit their .hbm file paths.
    + Embedded .hbm files will inherit their parents dir.
2009-03-02 08:36:55 +00:00
Viktor Szakats
1961ff18c2 2009-03-01 23:54 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
- contrib/examples/uhttpd/hbmk.bat
  + contrib/examples/uhttpd/uhttpdgd.hbm
  * contrib/examples/uhttpd/uhttpd.prg
  * contrib/examples/uhttpd/readme.txt
    * Added separate GD enabled .hbm file.
    * Remaining hbmk.bat features moved to .prg code and into readme.txt.

  * utils/hbmk2/hbmk2.prg
    + Added support for @ and .hbm parameters inside .hbm files.
      Currently three levels deep nesting in allowed.

  * contrib/xhb/Makefile
  + contrib/xhb/dbf2txt.c
    + Added DBF2TXT() function from xhb.
    ; TODO: RPC support and HB_SERVICE*() API ?
2009-03-01 22:58:28 +00:00
Viktor Szakats
eb1767f8f3 2009-03-01 18:16 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
  * make_b32.bat
  * doc/gmake.txt
  * bin/postinst.bat
  * bin/hb-mkdyn.bat
  * make_gnu.bat
  * contrib/hbfimage/readme.txt
  * contrib/examples/uhttpd/modules/bldhrb.bat
  * source/vm/Makefile
  * source/rtl/console.c
  * source/compiler/gencobj.c
  * utils/hbmk2/hbmk2.prg
  * utils/hbmk2/examples/winapi.hbp
  - config/win/bcc32.cf
  + config/win/bcc.cf
    * Long time TODO done: Renamed bcc32 compiler name to bcc.
      bcc32 is still accepted by make_gnu.bat, but will be 
      removed in the future, so it's recommended to update 
      your local settings to use:
      set HB_COMPILER=bcc

  - config/dos/bcc16.cf
    - Deleted bcc16 compiler support. I didn't work since ages,
      and Harbour doesn't support 16-bit compilers anyway.
2009-03-01 17:19:29 +00:00
Viktor Szakats
42a21eb2ef 2009-03-01 15:27 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
- contrib/hbct/ctflist.txt
  - contrib/hbodbc/odbc.txt
  - contrib/hbodbc/readme.txt
  - contrib/hbpgsql/readme.txt
  - contrib/hbgd/readme.txt
  * contrib/hbgd/tests/counter.prg
  * contrib/hbgd/Makefile
  - contrib/hbvpdf/readme.txt
  + contrib/hbvpdf/ChangeLog
    * Some cleanups.

  * doc/gmake.txt
    * '-r' requirement removed.

  * doc/codestyl.txt
    * Grammar.

  - doc/funclist.txt
  - doc/howtomak.txt
  - doc/hrb_faq.txt
  - doc/hbmake.txt
  - doc/lang_id.txt
    - Deleted obsolete files.

  * INSTALL
    + Added Bison version required.
    * Minor typo.

  * contrib/hbvpdf/tests/files/test.txt
    * Changed text to lorem ipsum.

  * utils/hbmk2/hbmk2.prg
    * Two line ending spaces removed from output.

  * mpkg_win.nsi
    ! Fixed to include subdir for doc dir.

  * config/global.cf
    + Added comment from doc file.
2009-03-01 14:32:18 +00:00
Viktor Szakats
63dee01939 2009-02-28 10:15 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    + Reenabled and fixed call to entry function autodetection 
      for gcc.
    + Now all Harbour dirs are always normalized (stripped).
2009-02-28 09:15:59 +00:00
Viktor Szakats
d991d0f361 2009-02-28 09:56 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed yesterday's -fullstatic patch. Now it should work.

  * make_b32.bat
  * make_vc.bat
    - Disabled automatic .dll builds to expose the 
      pure make_gnu.bat interface.
    * Some refininements to vc version.
2009-02-28 08:56:45 +00:00
Viktor Szakats
51b014356f 2009-02-27 23:40 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
+ mpkg_win.nsi
    + Added NSIS Windows installer script.
      Needs to be inserted into build creation process,
      which is completely missing yet from SVN. Anyhow
      it's tested and working well. At this moment it should
      be run from a freshly created dir created with
      'make_gnu.bat install'.
      You can find the result here:
      http://www.syenar.hu/harbour/harbour-1.1.0dev-win32-msvc.exe

  * utils/hbrun/hbrun.prg
    + Added -v option which simply runs '? hb_version()' after
      startup.

  * make_gnu.bat
    + Added init of HB_DOC_INSTALL.

  * doc/license.txt
    - Removed SVN header to be in full sync with /COPYING.

  * INSTALL
    * Minor cleanups.
2009-02-27 22:57:40 +00:00
Viktor Szakats
8a2383dfb2 2009-02-27 22:13 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    + Added '-Wl,-static' option for gcc/*nix when -fullstatic
      hbmk option is used. I hope this is fine. On my Ubuntu,
      this says: '/usr/bin/ld: cannot find -lgcc_s'.
    - Removed debug trace line left in.

  * contrib/Makefile
    ! Fixed commenting hbwhat.
2009-02-27 21:15:08 +00:00
Viktor Szakats
00048732c1 2009-02-27 20:15 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* make_gnu.bat
    + Added autodetection of mingw32-make.exe. If found in 
      PATH, it will be used instead of make.exe.
      This way the build process is much less resistant of 
      environment configuration. If this works out, I'll 
      lax the rules in INSTALL.

  * utils/hbmk2/hbmk2.prg
    * Minor internal cleanup to previous.
2009-02-27 19:18:26 +00:00
Viktor Szakats
7ef2ee0b48 2009-02-27 19:59 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
    + Added text to specifically tell to rename mingw32-make.exe 
      to make.exe if the former is found in a distro.
      BTW most probably mingw32-make.exe would also make it, but
      our make_gnu.bat file wants make.exe, and there is no 
      easy way to check (but can be done).

  * utils/hbmk2/hbmk2.prg
    ! Fixed silly typo preventing object files to get their 
      proper extension in -hbcc mode.
    * Minor internal change to avoid changing extensions twice 
      on the same string, since this may cause loss.
2009-02-27 18:59:58 +00:00
Viktor Szakats
03f89cb121 2009-02-27 19:19 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
  * make_gnu.bat
  * make_gnu.sh
    + Added listing of supported C compilers.
    + Added list of available built-time options.
      (may be incomplete).
    ! Added -n options to hbmk2 calls.
    - Removed similar content from script files.

  * make_gnu.bat
    - Removed --install-with-dll option.
      Use set HB_BUILD_DLL=yes instead.

  * utils/hbmk2/hbmk2.prg
    ! Fixed swapped -hbcc and -hbcmp meaning.
    + Don't deal with compiler autodetection if called with
      -hbcmp option. In this mode a C compiler isn't needed
      at all.
2009-02-27 18:19:42 +00:00
Viktor Szakats
a762831ec6 2009-02-27 10:44 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
  * make_gnu.bat
    + Added --install-with-dll option. This will build
      and install Harbour with .dlls. Some examples:
      --- for msvc:
      call "%ProgramFiles%\Microsoft Visual Studio 9.0\VC\vcvarsall.bat"
      set PATH=C:\devl\make-3.81;%PATH%
      set HB_INSTALL_PREFIX=C:\devl\hbvc-1.1
      call make_gnu.bat --install-with-dll > out.txt 2>&1
      ---
      --- for bcc32:
      set PATH=C:\devl\bcc55\bin;%PATH%
      set PATH=C:\devl\make-3.81;%PATH%
      set HB_COMPILER=bcc32
      set HB_INSTALL_PREFIX=C:\devl\hbb32-1.1
      call make_gnu.bat --install-with-dll > out.txt 2>&1
      ---

  * make_gnu.bat
  * make_gnu_os2.cmd
    + Will now automatically create the install destination dirs.

    ; TODO: Could someone please add this feature to make_gnu.sh?

  * bin/postinst.bat
  * bin/hb-mkdyn.bat
    * Moved building dll flavoured executables to postinst,
      so they will be rebuilt even if HB_DLL!=yes but .dlls
      are available.

  * contrib/Makefile
    + Added support for option: HB_CONTRIBLIBS=no.
      This will disable building any Harbour contribs.
      (no need to resort to hacks here anymore)

  * utils/hbmk2/hbmk2.prg
    * Minor on help screen.
2009-02-27 09:45:17 +00:00
Viktor Szakats
6db18bf28a 2009-02-27 08:41 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    + Now all dirs of input files referred to through .hbm
      make files will be adjusted with the .hbm path as passed 
      on the command line. This allows to use .hbm files without 
      switching to their host dirs:
      'hbmk2 examples/hello/hello.hbm'
      (internal logic also allows to display error messages
      pointing to the exact location where the error
      was detected)
    + Added simple macro substitution engine. Not used yet.
    % Minor optimizations.

  * bin/hb-mkdyn.bat
  * source/vm/Makefile
  * utils/hbmk2/hbmk2.prg
  + config/win/msvcia64.cf
    + Added support for IA64 architecure with MSVC.
      (actual compilation untested as it needs MSVC Team System)

  * bin/hb-mkdyn.bat
    % Now using .hbm files.
2009-02-27 07:56:22 +00:00
Viktor Szakats
09621b1eed 2009-02-26 19:44 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-mkdyn.bat
    * Cleaned tool outputs.
    + Added hbmaindllh lib to included liblist.
      (dunno what this serves, but we had it in non-GNU make)
      Do we need this at all?
    + Added support for msvc64 dll name.
    * Some tweak to owatcom, but it's just guessing, it still
      doesn't work.
    + Added generating hbrun-dll executable.

  * source/vm/hvm.c
  * source/vm/mainstd.c
    * Random tweak for owatcom/win dll support without success.
      Best result so far is:
      "Unrecoverable error 9012: Can't locate the starting procedure: 'MAIN'"

  * source/vm/Makefile
    + Added mainddllp generation for msvc, msvc64, bcc32, owatcom.

  * source/vm/maindllp.c
    + Added msvc64 and msvcia64 .dll names.

  * source/vm/extrap.c
    * Minor tweak to use alternate (documented) CPU detection macro.

  * utils/hbmk2/hbmk2.prg
    + Added msvc64 .dll name.
    * Removed automatic addition of hbcommon lib for shared
      mode for win compilers.

  * utils/hbtest/hbtest.hbm
  * utils/hbrun/hbrun.hbm
    + Added make files.
2009-02-26 18:48:17 +00:00
Viktor Szakats
7bdb1a9ea4 2009-02-26 10:24 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-mkdyn.bat
    + Moving .lib and .exp (if they are generated) files
      to LIB dir.

  * source/vm/maindllp.c
    + Added owatcom flavour of .dll name.

  * contrib/hbwin/win_misc.c
    + Added WAPI_GETLASTERROR(), WAPI_SETLASTERROR(), WAPI_SETERRORMODE().

  * utils/hbmk2/hbmk2.prg
    + Added TODO to create temp .c files in temp location.
      Looks this can create a few problems (-hbcc, .ppo output
      location when -p is used by user).
    + '/o' flavour of -o option is now ignored on non-*nix
      systems to make sure users cannot mess up the hbmk process
      flow.
    * -o option modified to reset any previous explicit -o settings.
    * Some minor internal renames, comments.
    + Added new hbmk.cfg / .hbp option: 'shareddef='. This can
      change the default state of shared/static setting, so it
      can be used by installers or user to override default
      behaviour. NOTE: HB_SHARED envvar can also be used.
    * Changed hbmk.cfg lookup preferences to this:
      1. $HOME/.harbour
      2. /etc/harbour
      3. <hbmkdir>/../etc/harbour
      4. <hbmkdir>/../etc
      5. <hbmkdir>
      (NOTE: I've deleted /etc as etc/harbour seems superior
             and we already store a .def file there.
             I've also deleted /usr/local/etc)
2009-02-26 09:25:29 +00:00
Viktor Szakats
3c4c8c85a5 2009-02-25 14:36 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/postinst.sh
    ! Fixed hb_mkslib link generation.
  * contrib/gtwvg/wvgwin.c
    ! Fixed owatcom error. (removed Windows structure redefinition)
  * utils/hbmk2/hbmk2.prg
    * Some screen messages slightly refined.
  * doc/whatsnew.txt
    * Minor.
  * ChangeLog
    * Fixed dates.
2009-02-25 13:37:13 +00:00
Viktor Szakats
3e516c46fd 2009-02-24 11:37 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    ! Refined autodetection of msvc to not be confused by
      watcom binary dir in the path.
    ! Refined autodetection of owatcom by also checking for
      WATCOM envvar. Thanks Petr Chornyj for the hint.
    % Removed hack to not prioritize MSVC compiler detection,
      so it's now handled just like the others.
2009-02-25 10:38:06 +00:00
Viktor Szakats
bdb3a56b3d 2009-02-24 10:41 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/postinst.cmd
  * bin/postinst.bat
  * bin/hb-func.sh
    + Added arch= and comp= variables to hbmk.cfg.
      I plan to use these for autoconfiguration.

  * make_gnu_os2.cmd
  * make_gnu.bat
    - Removed built in output redirection to make them in sync
      with the bash flavour. Users can easily redirect it themselves.

  * utils/hbmk2/hbmk2.prg
    + Formally added icc.

  * config/win/msvcce.cf
    ! Untested fixes for msvcce in GNU make.
2009-02-25 09:42:17 +00:00
Viktor Szakats
6e462461ac 2009-02-24 23:14 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed warning.
2009-02-24 22:14:49 +00:00
Viktor Szakats
4dd79912df 2009-02-24 22:52 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    * On *nix platform hbmk.cfg is now first checked for
      in /usr/local/etc, then in /etc and after that in
      hbmk2's dir. Please advise if there are other such 
      global config dirs to check on different platforms.
2009-02-24 21:53:34 +00:00
Viktor Szakats
4de3d9252a 2009-02-24 22:39 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* harbour-win-spec
  * harbour-wce-spec
  * harbour.spec
  * bin/hb-func.sh
  * utils/hbmk2/hbmk2.prg
    * hbmkcfg.hbp file renamed to the clearer: hbmk.cfg
      Same rules apply, the format is .hbp, which is also
      made clear on the hbmk2 help screen.

      hbmk2 and hbmk.cfg now effecticely replaces harbour.cfg,
      which can now be considered obsolete, along with the
      /go option. If someone knows some real-life tasks
      which can be done with /go+harbour.cfg, but cannot
      with hbmk2, please speak up.
2009-02-24 21:43:55 +00:00
Viktor Szakats
527a1031ef 2009-02-24 21:35 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* include/hbapi.h
  * source/pp/hbpp.c
  * source/vm/cmdarg.c
  * source/main/harbour.c
    + Added hb_verHB_ARCH(), hb_verHB_COMP() to
      retrieve build time HB_ARCHITECTURE and HB_COMPILER
      settings.

  * include/hbver.ch
  * source/rtl/version.c
    + Added new hb_version() information:
      hb_version( HB_VERSION_BUILD_ARCH )
      hb_version( HB_VERSION_BUILD_COMP )

  * utils/hbmk2/hbmk2.prg
    + Using above hb_version() values to find out the exact
      build time architecture/compiler instead of guessing.
2009-02-24 20:37:19 +00:00
Viktor Szakats
8a4c51e39f 2009-02-24 16:54 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed last minute typo.
2009-02-24 15:55:00 +00:00
Viktor Szakats
11acb420e2 2009-02-24 15:07 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
  * utils/hbmk2/Makefile
  * common.mak
    + Added -DHBMK_INTEGRATED_COMPILER compile time option
      to enable integrated Harbour compiler. Experimental, 
      please test. This results is bigger executable (obviously) 
      but may be more efficient on some platforms.
    % Using .exe extension for external commands on non-*nix.
    * Using slightly different format to echo commands on 
      screen, they are now printed in a new line and they are 
      not put between quotes.
2009-02-24 14:55:49 +00:00
Viktor Szakats
951cfb9d56 2009-02-24 15:07 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    + Added autodetection for pocc64.
2009-02-24 14:08:09 +00:00
Viktor Szakats
684c276e5a 2009-02-24 13:27 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-mkdyn.bat
  * make_gnu.bat
  * make_gnu.sh
  * utils/hbmk2/hbmk2.prg
  * config/win/msvc.cf
  + config/win/msvc64.cf
    + Added separate HB_COMPILER for msvc x64 mode.
      This allows to keep both the 32 and 64-bit builds
      built in parallel.
      NOTE: This is only supported with GNU Make.

  * utils/hbmk2/hbmk2.prg
    + Added autodetection of msvc64.
    + Added pocc64 and msvc64 support in self-detection
      code.

  * bin/hbmk.bat
    + Added -n to stay compatible with former hbmk.bat.
2009-02-24 12:31:07 +00:00
Viktor Szakats
78c78aa2d6 2009-02-24 10:20 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* ChangeLog
    * Updates.
    ! Correction made to entry:
      2009-02-24 01:30 UTC+0100 Viktor Szakats (harbour.01 syenar hu)

  * utils/hbmk2/hbmk2.prg
    * Attempt to add .dll support for win/owatcom.
    ; TOFIX: This happens:
             Warning! W1023: no starting address found, using 00401000
2009-02-24 09:20:30 +00:00
Viktor Szakats
1788166bdb 2009-02-24 01:30 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    ! Tweaked to only include path in shared lib name on *nixes,
      if Harbour is installed in a system location.
    ! Forgot to add bin dir to lib path in shared mode in gcc/*nix.
    ! Fixed macro substitution order for {DB}.
    ! Tweaks for library name forming on gcc family.
      The applied rule is to prepend -l, delete lib prefix and extension,
      when the libname doesn't have a path in it, if it has, the libname
      will be passed as is (without -l, with lib prefix and extension).
2009-02-24 00:30:48 +00:00
Viktor Szakats
04099cecdc 2009-02-23 22:29 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    + Added -map support for owatcom on all platforms.
2009-02-23 21:30:06 +00:00
Viktor Szakats
c7888e9b42 2009-02-23 22:17 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed bug in path normalization which stripped leading
      (root) path separator. Guy, could you please retest now?

  - bin/hb-mkdll.bat
  + bin/hb-mkdyn.bat
  * bin/postinst.bat
  * harbour-win-spec
  * harbour-wce-spec
  * harbour.spec
  * bin/postinst.sh
  * bin/hb-func.sh
  - bin/hb-mkslib.sh
  + bin/hb-mkdyn.sh
    * Synced the name of these tools with similar function,
      name also converted to 8.3.
    ; NOTE: lib/dll creation functionality (which is the 
            difference now between .sh and .bat flavour) may
            once in the future be implemented in hbmk2. See 
            existing TODO there.
2009-02-23 21:19:25 +00:00
Viktor Szakats
6fa344035f 2009-02-23 19:36 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    % Normalizing autodetected paths when system locations
      are used on *nix and always for win/dos/os2.
    ! Fix to MSVC resource handling.
2009-02-23 18:47:34 +00:00
Viktor Szakats
3ebb8f1432 2009-02-23 19:40 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    + Added support for resources on Windows platform.
      mingw, owatcom, msvc, bcc32 are supported. mingw and
      owatcom support single resources only.

  * config/rules.cf
    + Added owatcom .err files to the clean list. Maybe there
      is more appropriate place to put this. Please correct it.
2009-02-23 18:15:41 +00:00
Viktor Szakats
1a0ef66629 2009-02-23 14:51 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed bug which made gtwvt the default GT for mingw.
    ! Fixed to create final exe in current dir if no output
      filename was specified and the first input file
      contained a path.
    * Changed to use version-less harbour shared lib names
      on *nixes.
    ! Fixed to pass full path with harbour.so to gcc.
      (even when Harbour isn't run from a system location)
    ! Fixed compilation/linking/cleanup if an input file
      wasn't in current dir.
    * Temp stub file is now created in system default temp dir,
      instead of the current one.
    + Harbour shared lib path is normalized when Harbour
      is found on system locations. (so '*/bin/../lib/' becomes
      '*/lib')
    * Better I hope handling of .so/.dylib/.sl/.dll files passed
      on the command line.

  * bin/hb-mkdll.bat
    ! Fixed typo in Borland MT .dll name.
    ! Fixed to not include maindll.obj, maindllp.obj in
      Borland .dlls.
    * Minor formatting and cleanup on internal names.
    + Added checking for source lib existence, showing
      message if not found.
    + Better user feedback.

  * bin/postinst.bat
    + Added running hb_mkdll.bat at the end of the build
      process. For now users have to use 'set HB_DLL=yes'
      to enable this features. It's experimental yet,
      see previous comments.

  * source/vm/Makefile
    + Now generating hbmainstd and hbmainwin for remaining
      (non-mingw and non-mingwce) compilers. MSVC and BCC
      need this for -shared linkage, I'm not sure about the
      rest, anyhow we can disable it for other compilers
      if it isn't needed in future.

  * bin/hb-func.sh
    % Refined hbmkcfg.hbp setup to better detect conditions.

  * contrib/hbcurl/hbcurl.c
    ! Pacified this only one new gcc 4.3.3 warning.

  * config/win/gcc.cf
  * config/win/mingw.cf
    + Added -mtune=pentiumpro gcc optimization.
2009-02-23 13:53:42 +00:00
Viktor Szakats
7080cd9c62 2009-02-22 21:04 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-func.sh
  * utils/hbmk2/hbmk2.prg
    + Previous workaround changed to generic solution, keeping 
      all Harbour lib specific external lib knowledge inside 
      hbmk2.
      Guy, if you can please retest.

  * bin/hb-mkdll.bat
    * Minor in comment.
2009-02-22 20:05:16 +00:00
Viktor Szakats
0d04b875e1 2009-02-22 18:00 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* contrib/hbbtree/tests/test.hbm
  * contrib/examples/guestbk/guestbk.hbm
  * contrib/examples/pe/pe.hbm
  * contrib/examples/terminal/trm_appn.hbm
  * contrib/examples/hscript/hscript.hbm
  * utils/hbdoc/hbdoc.hbm
  + utils/hbmk2/hbmk2.hbm
    + Added -n switch to .hbm files.

  * contrib/examples/uhttpd/hbmk.bat
  + contrib/examples/uhttpd/uhttpd.hbm
    + Moved most make params to new .hbm file.
2009-02-22 17:06:44 +00:00
Viktor Szakats
a2d19fb47d 2009-02-22 17:49 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* config/lib.cf
   * config/bin.cf
     + Added -n to Harbour flags to bin.cf.
     + Added -n1 to Harbour flags to lib.cf.
     ; TOFIX: The former works, the latter doesn't.
              Could someone please help why is this
              happening?

   * utils/hbmk2/hbmk2.prg
     - Removed -n from default Harbour switches.
     ; TODO: Add prgflags=-n to all .hbp files.
     ; TODO: Add -n to all .hbm files.
     ; TODO: Add .hbp file to dirs where there are .prgs
             needing -n flag.

   + bin/hb-mkdll.bat
     + Added .dll creation for GNU-make. Not yet enabled,
       only MSVC supported, and by the nature of the
       wonderful world of Microsoft, whole Harbour needs
       to be compiled with HB_USER_CFLAGS=-DHB_DYNLIB to
       make this work. -DHB_DYNLIB has some drawbacks
       though: export table will be generated for all
       executables made from these .libs, .exp/.lib will
       also be generated for all executables.
     ; TODO: Solve to compile Harbour lib .prgs using 
             -n1 switch. (needed for .dll, and this
             one has only befenefits for other scenarios)
     ; TODO: Add hb-mkdll.bat to postinst.bat.
     ; TODO: Add BCC support, if possible.
     ; TODO: Rename hb-mkslib.sh to 8.3 name and sync
             name with the .bat version (not necessarily
             mkdll, but something short.)

   * bin/hb-func.sh
     ! Added system libs for optional components included
       in the harbour dynlib. I plan to make some more
       changes here, but this should fix missing system
       libs with shared option enabled in hbmk2.

   * contrib/examples/dbu/dbu.hbm
   * contrib/examples/rl/rl.hbm
     + Added -n.

   * utils/hbdoc/Makefile
   * utils/hbmk2/Makefile
   * utils/hbtest/Makefile
   * utils/hbi18n/Makefile
   * utils/hbrun/Makefile
     - Removed explicit -gc0 -n override.
       Should now be set automatically for all binaries.
2009-02-22 16:53:11 +00:00
Viktor Szakats
333bc99a4b 2009-02-22 00:17 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    ! Fix to -mwindow/-mconsole switch handling for MinGW.
2009-02-21 23:17:15 +00:00
Viktor Szakats
287974f000 2009-02-21 18:44 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed forming Harbour installed paths when alternate
      *nix dir layout is detected.
      Thanks to Guy also. Please retest.
2009-02-21 17:46:35 +00:00
Viktor Szakats
b37b755697 2009-02-21 18:36 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed recent typo in shared names for *nix systems.
      Thanks Guy.
2009-02-21 17:37:09 +00:00
Viktor Szakats
c54d40edd9 2009-02-21 14:03 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-func.sh
  * utils/hbmk2/hbmk2.prg
    ! Some three bad typos in recent commit.
    ! Fixed the way build-default GT is supplied via hbmkcfg file.
      (via gtdef= line)
    ! Fixed to fill gtdef= line only if GT was overridden at
      build time. Previously it was filled with gtstd, which
      is wrong.
    ! Temporarily disabled automatic entry point detection,
      as it needs more complicated management because there
      needs to be a second C compiler pass. We should try
      to use some other means to implement this feature IMO.
2009-02-21 13:30:37 +00:00
Viktor Szakats
3beb6d15ad 2009-02-21 13:55 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    ! Fix to prev.
2009-02-21 12:55:54 +00:00
Viktor Szakats
445f4da00c 2009-02-21 13:37 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    + Added internal function to check for linked GTs, so that
      platform/compiler code can act accordingly.
    + Added required system libs and paths for gtsln, gtcrs
      and gtxwc. So now it's 100% hbmk script compatible.
      This effectively added support for gtsln and gtcrs
      (for *nix only). ncur194 support is missing though,
      plus maybe some build-time modifier switches aren't
      honored (the WITHOUT* ones, but I'm not positive that
      all of them have to be handled on hbmk2 level).
      Probably some clever autodetection can be used on 
      hbmk2 level for such cases.
    ! Fixed to not be case-sensitive when dealing with GT names.
    + Added NOTE about 3rd party/contrib stuff handling.
    * Minor formatting.

    ; NOTE: What remains is cross compilation support, which
            is a new topic. -n support tweak, if needed.
            And testing, adding missing compilers, fixing
            existing ones if needed, syncing with build-time
            switches, clean Win32 system libs.

  * contrib/gtwvg/tests/gtwvg.hbp
    + Readded gui=yes to better separate compontents.
  * ChangeLog
    * Entry marked done.
2009-02-21 12:45:46 +00:00
Viktor Szakats
b9cf36014c 2009-02-21 10:57 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    - Removed HBMK_NO_GTCGI macro.
    * Cleanups and fixes to GT list handling after recent
      changes.
    * Minor rearrangement on help screen.
2009-02-21 09:57:13 +00:00
Viktor Szakats
30cfa4b77b 2009-02-21 10:02 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    ! Debug line removed.
2009-02-21 09:02:57 +00:00
Viktor Szakats
caf7db1318 2009-02-21 09:33 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    + Added automatic selection of GUI/non-GNU modes for
      core/contrib GTs. This can be overridden by user by
      putting -gui (and related switches) _after_ -gt switch.
      In normal cases this isn't necessary.
    + Invalid GT names are ignored, instead of creating
      compile error in the stub.
    + GTs and FM are now requested from C stub just like they
      are in hbmk script. This makes it possible to override
      GT even for apps that already uses an official method
      to choose a GT. hbmk2 uses function call also to set GT.
    - Removed .prg stub.
    ! Fixed recent potential RTE when using darwin.
2009-02-21 08:48:35 +00:00
Viktor Szakats
f99693f142 2009-02-21 08:44 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/vm/hvm.c
    + Added hb_vmSetLinkedMain() function to replace direct
      access to exported variable hb_vm_pszLinkedMain.
      (it's not a public call and caller should always pass
      a string literal).
    * hb_vm_pszLinkedMain -> s_vm_pszLinkedMain and made static.

  * utils/hbmk2/hbmk2.prg
    ! Not adding 'dllimport' for externs in C stub when
      MSVC is used, to avoid compiler warning mentioned in 
      previous entry.

  * utils/hbmk2/hbmk2.prg
  * bin/hb-func.sh
    * Updated for above change.

  ; TODO: Convert GT defaulting to function call too.
2009-02-21 07:45:05 +00:00
Viktor Szakats
63870d6932 2009-02-21 01:11 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/compiler/hbusage.c
    ! Fixed to not show -n option as '(default)' on help screen.
      -n isn't the default in Harbour, nor in Clipper.
      Please review me.

  * utils/hbmk2/hbmk2.prg
    + Added -main=<id> option to override starting function/procedure
      name. Using the method from hbmk script, but made portable
      to all compilers. Can we add somewhat more official method
      to set this up? Preferably .prg level, but even a function
      call seems better, as with current method, MSVC complains
      with this warning:
      "hbsc_2nwvzg.obj : warning LNK4217: locally defined symbol \
         _hb_vm_pszLinkedMain imported in function __hb_hbmk_setdef_"
    + Added code to only accept valid Harbour identified as
      -main= value.
    + Added first module detection.
    + Enabled code to automatically find entry function in first
      module and make it the app entry point. This is very serious
      hack dealing with lots of internals.

  * source/compiler/cmdcheck.c
    * Typo in comment.
2009-02-21 00:13:47 +00:00
Viktor Szakats
71928f06cb 2009-02-20 22:41 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* contrib/hbgd/gdwrp.c
    ! Fixed double implementation of GDIMAGEELLIPSE().
      The so far inactive .c version got enabled by recently
      making lib version detection automatic, which made it
      collide with the existing .prg implementation.
      Left the .prg one active because it works regardless
      of the lib gd version. Francesco, please verify me.
    - Deleted disabled, probably older copy of GDIMAGEELLIPSE()
      from .c source.

  * utils/hbmk2/hbmk2.prg
    * Help screen update.
2009-02-20 21:42:40 +00:00
Viktor Szakats
84a89f08ff 2009-02-20 19:03 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-func.sh
    ! Fixed gtalleg lib name.
    % Removed explicit harbour -gc0 option. This is now the default.

  * utils/hbmk2/hbmk2.prg
    + Added fmstat/nofmstat support.
    ! Minor fix to allow more freedom in formatting inside .hbp files.
    ! Fixed to delete prg stub file when using -hbcc option.
    + Added Copyright section for Przemek for the ideas I've
      borrowed from hbmk script and contributed code.
    + Detect platform default GT and only create stub if the
      user selected GT is different.
    + Now using versions shared libs on *nixes.
    + Mode detection now regards the ending or the beginning
      of the original name, so prefixed or postfixed names will
      also be recognized: xhbcmp, hbcmpx, myhbcmp.
    ! Fixed to multiple -gt options override each other so the
      last one will be effective.
    ! Fixed error message text when stub cannot be created.
      Furthermore in this case hbmk will now quit.
    + Also using '-Wl,--start-group' for bsd (from hbmk script).
    + Added '-bind_at_load', '-multiply_defined suppress' gcc
      options for darwin shared mode (from hbmk script).
    * Changed stub name to hbstub (from hbmkgt).
    * pthread lib handling streamlined based on hbmk script,
      but this probably needs further cleaning as the script
      isn't clear to me here.
    + Added fmstat/nofmstat switch. It most probably needs some
      tweaking, as the conditions seem rather sophisticated here.
      TODO: For non-*nix/non-gcc platforms (msvc/bcc32/owatcom
            most importantly).
    + Added system libs for darwin if gtcrs or gtsln are selected.
      (nslang isn't a default lib here, so it won't work on plain
      installations, slang however will).
    + Missed from previous commit: Fix so that -nohbp doesn't
      prevent processing the global config .hbp file.
    ! Fixed typo in prev commit.

  * utils/hbmk2/examples/contrib.hbp
    - Removed hbtip as it's not fully portable (dos).
  + utils/hbmk2/examples/contribf.hbp
    + Added complete database of contrib, with
      availability information.

  * contrib/xhb/Makefile
  * contrib/hbmsql/Makefile
  * contrib/hbmzip/Makefile
  * contrib/hbziparc/Makefile
  * contrib/hbnf/Makefile
  * contrib/hbmisc/Makefile
  * contrib/hbvpdf/Makefile
    * Formatting.
2009-02-20 18:06:33 +00:00
Viktor Szakats
932edd00cd 2009-02-20 15:47 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-func.sh
    ! Two typos.
    - Disabled slang/ncurses lib stuff.

  * utils/hbmk2/hbmk2.prg
    ! Fixed to put a space after -o gcc option for darwin.
    ; This makes hbmk2 work under darwin (for basic cases).
2009-02-20 14:48:55 +00:00