Commit Graph

552 Commits

Author SHA1 Message Date
Viktor Szakats
b17e5a0163 2009-03-14 16:00 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* contrib/hbgt/strasint.c
    % Using HB_ISDIGIT()
    ! Fixed to not include hbtrace.h directly.

  * make_gnu.bat
    % make clean and install phases merged in HB_BUILD_DLL mode.

  * bin/postinst.bat
    ! Fix to recent change.

  * include/hbdefs.h
    ! Moved #include hbtrace.h after HB_EXPORT is defined.
      (hack)
2009-03-14 15:17:52 +00:00
Viktor Szakats
ba58f8b279 2009-03-12 03:45 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/postinst.bat
  * mpkg_win.bat
    * HB_DIR_IMPLIB -> HB_BUILD_IMPLIB
      ATTENTION: Please modify your local settings. This setting
                 is now closer to final.

  * mpkg_win.bat
    + Turning on optimizations.
    + Turning off debug mode.
2009-03-12 02:53:13 +00:00
Przemyslaw Czerpak
fbe48a5385 2009-03-04 12:56 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/bin/hb-func.sh
    * explicitly bind system libraries with harbour shared library.
      RPM/DEB packages should automatically detect these dependencies.
      Viktor, now you do not have to pass system libraries like
      m, dl, rt, pthread, socket, nsl, resolv, curses, slang, x11,
      wininet, ws2, commdlg, commctrl, uuid, ole32 ... when you create
      shared binaries by hbmk2 - all bindings are in harbour shared
      library. They are necessary only for static builds.
2009-03-04 11:50:35 +00:00
Viktor Szakats
0241a36c7d 2009-03-04 10:00 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-mkdyn.sh
  * bin/postinst.sh
    + Added some level of cygwin support.
    ; TOFIX: .dlls are not generated.

  * make_gnu.sh
    * Change recently added '==' operators to '='.
    + Added link to GNU bash and POSIX shell docs.
      For Harbour we need to comply with the latter
      (at least for OS neutral script parts).

  * INSTALL
  * mpkg_win.bat
  * config/global.cf
    * Formatting.
2009-03-04 09:06:38 +00:00
Viktor Szakats
0edd8a7ebd 2009-03-03 20:05 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
    + Extended 'HOW TO ENABLE OPTIONAL COMPONENTS BEFORE BUILD'
      section a bit. (HB_DIR_* stuff still not included as it's
      early to document it yet, refer to the ChangeLog for info
      on it).

  * bin/hbmk.bat
    - Removed -n switch.

  + mpkg_win.bat
    + Added Windows installer creator script.
    ; TODO: Move all mpkg_*.* and related files to new /package dir.

  * mpkg_win.nsi
    + Changed to use HB_*_INSTALL envvars for source file locations.
    ! Fixed to exclude .tds files.
    + Will now will include version number, architecture and compiler
      in installer .exe name.
    + Default install destination will now include compiler name.

  * source/compiler/hbmain.c
  * source/compiler/cmdcheck.c
  * source/compiler/gencobj.c
  * source/compiler/hbusage.c
    + Marked -go option as HB_LEGACY_LEVEL2. Deprecated text
      shown on help screen.

  * utils/hbmk2/hbmk2.prg
    ! Fixed entry func autodetection problem with gcc when
      source file is passed without .prg extension.
      Reported by Maurilio.
2009-03-03 19:18:03 +00:00
Przemyslaw Czerpak
14507e8487 2009-03-03 16:40 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/Makefile
    ! fixed compilation with C compilers which does not support MT mode
      (HB_MT=no) - it's seldom situation but may exists on some platforms,
      f.e. in *nixes when PTHREADS is not available

  * harbour/config/win/bcc.cf
    ! fixed compilation in SHELL environment
      (if exists ... del ...  is COMMAND.COM/CMD.EXE only command)

  * harbour/source/rtl/hbstrfmt.c
    ! casting for C++ compilation

  * harbour/contrib/xhb/dbf2txt.c
    ! casting for C++ compilation
    ! fixed two bad bugs which can cause GPF or some other bad results
      I'd seen after short check. I haven't analyzed this code carefully
      for others.

  * harbour/bin/postinst.sh
    ! fixed hb*-mkslib link in cross builds (MinGW/MinGWCE)
2009-03-03 15:34:58 +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
4a1bc7d22f 2009-02-28 01:22 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
    + Added win/owatcom.
    + Added contrib control options.

  * bin/postinst.bat
    % Optimized, cleaned.

  * mpkg_win.nsi
    - Turned off checkbox in "view readme" option.
2009-02-28 00:22:43 +00:00
Viktor Szakats
c8698dd068 2009-02-27 16:05 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
  * bin/postinst.bat
    * Formatting.
2009-02-27 15:06:12 +00:00
Viktor Szakats
33813a81d6 2009-02-27 15:49 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
    + Added more information.
      (everyone trying to build Harbour from source
      should read this first.)

  * bin/postinst.bat
    + Added option to copy import libs belonging to
      external tools for msvc and bcc32 to HB_LIB_INSTALL.
      This is to keep this debated, but convenient feature
      for the GNU-make world, until we find some better way
      to deal with it. Now it's self contained, detached from
      all important Harbour parts. And most importantly:
      You don't have to use it, if you don't want to.
      Now, if you want, set HB_DIR_IMPLIB to "yes" and
      setup your HB_DIR_* dirs to the roots of the external
      tool dirs, like this (adjust to your environment):
      ---
      set HB_DIR_IMPLIB=yes
      set HB_DIR_ADS=C:\devl\ADS910\ACESDK
      set HB_DIR_ALLEGRO=C:\devl\allegro-4.2.2
      set HB_DIR_APOLLO=C:\devl\Apollo-6.1.0.4
      set HB_DIR_BLAT=C:\devl\blat-2.6.2
      set HB_DIR_CURL=C:\devl\curl-7.19.0
      set HB_DIR_FIREBIRD=C:\devl\Firebird-2.1.1
      set HB_DIR_FREEIMAGE=C:\devl\FreeImage-3.11.0
      set HB_DIR_GD=C:\devl\gd-2.0.34
      set HB_DIR_LIBHARU=C:\devl\libharu-2.1.0
      set HB_DIR_MYSQL=C:\devl\mysql-5.0.67
      set HB_DIR_OPENSSL=C:\devl\openssl-0.9.8j
      set HB_DIR_PGSQL=C:\devl\pgsql-8.3.3
      ---
      (This may be tweaked in the future, so I don't
      guarantee any compatibility for this stuff)
2009-02-27 14:51:03 +00:00
Przemyslaw Czerpak
1e9cfeea1b 2009-02-27 12:38 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/bin/postinst.sh
    ! fixed hb-mkslib link. Please test this version in MSys.
2009-02-27 11:32:48 +00:00
Viktor Szakats
8acc79d48e 2009-02-27 11:51 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/postinst.bat
  * make_gnu.bat
  * config/win/global.cf
    * Renamed HB_DLL to HB_BUILD_DLL, which makes this GNU make 
      setting compatible with old non-GNU make.
2009-02-27 10:52:05 +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
084776409c 2009-02-26 20:30 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-mkdyn.bat
    + Added hbrun-dll.exe generation for msvc64.
2009-02-26 19:31:09 +00:00
Viktor Szakats
f119ad2135 2009-02-26 19:46 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-mkdyn.bat
    * Minor cleanup.
2009-02-26 18:51:02 +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
df007814b5 2009-02-26 12:16 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* config/rules.cf
  * config/win/global.cf
  * config/lib.cf
  * config/bin.cf
    * Make files changed to:
      - add Harbour option -n1 for all lib .prgs.
      - add Harbour option -n for all binary .prgs.
      - use HB_GCMODE to override -gc mode for binaries.
      - add C -DHB_DYNLIB option when HB_DLL envvar is set to 'yes'.
    ; This means that now 'set HB_DLL=yes' setting works as planned,
      and will compile Harbour to allow the creation of .dlls
      and will also create those (msvc, bcc32, owatcom).
      (MinGW has been covered before these changes already.)
    ; TOFIX: .dlls still need tweaking to work properly.
             owatcom doesn't create usable binaries when
             using HB_DLL=yes f.e., also hbrun-dll cannot be
             built with msvc/bcc32.

  * config/win/owatcom.cf
    % Removed DOS hack.

  * bin/hb-mkdyn.bat
    ! Fixes to recent changes.
2009-02-26 11:17:38 +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
2f538dad8d 2009-02-25 23:44 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/postinst.cmd
  * bin/postinst.bat
  * bin/postinst.sh
    - Removed creation of hb*.bat files.

  * contrib/make_b32_all.bat
  * contrib/make_gcc_all.sh
  * contrib/make_vc_all.bat
  * contrib/Makefile
    * Disabled hbwhat.

  * contrib/gtwvg/wvggui.c
    ! Fixed a few warnings.
2009-02-25 22:45:12 +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
9d904ec97f 2009-02-24 13:36 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
    + Added MinGW + msys specific entry.

  * bin/postinst.sh
    + Added generation of hbcc.bat, hbcmp.bat, hblnk.bat 
      to be in complete feature sync with the non-msys method.
      NOTE: non-msys method isn't recommended.

  * make_gnu_os2.cmd
    + Added automatic HB_*_INSTALL setup based on HB_INSTALL_PREFIX 
      to be in sync with the rest of Harbour.

  * make_gnu.bat
    ! Fixed forward slashed to backslashes.
    * Changed default compiler from mingw to msvc.
2009-02-25 12:36:45 +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
Przemyslaw Czerpak
4f7bb3e481 2009-02-25 03:37 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
+ harbour/config/linux/icc.cf
  * harbour/config/linux/gcc.cf
  * harbour/bin/hb-func.sh
  * harbour/bin/postinst.sh
  * harbour/source/common/hbver.c
    + added support for Intel(R) C/C++ compiler

  * harbour/bin/postinst.sh
    % use hb-mkdyn symlink instead of regenerating it as hb-mkslib
      It will work also in DOS/Windows (MSys/DJGPP emulates ln -s ...)

  * harbour/source/vm/thread.c
    * removed all references to HB_THREAD_EQUAL()/HB_THREAD_SELF() in
      non MT builds

  * harbour/source/rtl/console.c
    ! fixed default color setting in hb_dispOutAtBox()

  * harbour/contrib/gtwvg/wvggui.h
  * harbour/contrib/gtwvg/wvgwin.c
  * harbour/contrib/gtwvg/wincallb.c
  * harbour/contrib/gtwvg/wvgsink.c
    ! fixes for C++ compilation:
      - this is reserved word in C++ - do not use it as variable name
      - class is reserved word in C++ - do not use it as variable name
      - use macros to hide differences between C and C++ WinAPI
      - casting
2009-02-25 02:32:40 +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
e76c266289 2009-02-24 17:07 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/postinst.sh
    + Added 'hb-mkslib' creation for compatibility.
      NOTE: This name is deprecated and will be removed in next
            major release (1.2). Update your environment to
            use the name: 'hb_mkdyn'.
2009-02-24 16:07:48 +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
183cafe983 2009-02-24 02:13 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-mkdyn.bat
    + Added Open Watcom .dll building.
    ; Quickest and most clean case so far.
2009-02-24 01:15:00 +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
a403aeb9f5 2009-02-23 16:40 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-mkdll.bat
    - Removed no longer relevant NOTE. BCC tlib can actually
      handle dots in pathname if put between quotes, which
      is how it is.

  * contrib/gtwvg/gtwvg.h
  * contrib/gtwvg/wvggui.h
    ! Applied former owatcom fix to GTWVG, too. Please retry,
      I didn't test it.
    ! Converted failing declarations to use HB_ID_REF().
    ! Applied more casting fixes shown by owatcom 1.8.

    ; Remaining errors and warnings posted on the list.
2009-02-23 15:43:05 +00:00
Viktor Szakats
4696e8764f 2009-02-23 15:14 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/postinst.bat
    ! Protected command from pre-NT systems.

  * harbour-win-spec
  * harbour-wce-spec
  * harbour.spec
    + hbmkcfg.hbp added to distros (I hope to all of them).

  * ChangeLog
    * Updated statuses of a few pending items.
2009-02-23 14:15:04 +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
a48f3abcc3 2009-02-22 21:52 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-mkdll.bat
    + Added Borland C/C++ .dll building.
      It has the same requirements as MSVC.
      NOTE: Due to tlib bug, it won't work if the HB_LIB_INSTALL
            path contains '.' chars. I can add a workaround, 
            but at the cost of speed.
2009-02-22 20:53:25 +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
fa5e255220 2009-02-22 19:34 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/postinst.sh
    % Deleted part generating hbfm/hbfmmt libs. Now this is 
      done my GNU make.
2009-02-22 18:34:46 +00:00
Viktor Szakats
0eea0e3932 2009-02-22 18:33 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-func.sh
    ! Fixed stupid typos after testing on Linux.

  * contrib/examples/terminal/terminal.hbp
  * contrib/examples/terminal/trm_appn.hbm
    * Minor change.
2009-02-22 17:34:06 +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
a7839840aa 2009-02-21 19:31 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-func.sh
  * harbour.spec
  * mpkg_tgz.sh
    % Removed -O3 user gcc switch. It's the default in all
      gcc family .cf files.
2009-02-21 18:33:50 +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
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
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
Viktor Szakats
4dfad4f3ef 2009-02-20 15:30 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* Makefile
   * bin/postinst.bat
   + bin/postinst.cmd
     + Added postinst for OS/2.

   * utils/hbmk2/hbmk2.prg
     * Minor in comment.
2009-02-20 14:30:36 +00:00
Viktor Szakats
326a725b7e 2009-02-20 14:57 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-func.sh
    + Added gpm lib to config file when mouse is enabled at build time.

  * utils/hbmk2/hbmk2.prg
    ! Fixed not to use '$' sign in generated temp filename.
    ! Fixed recent typo causing RTE in *nix.
    ; After these changes linux/gcc works out of the box, but 
      it still needs tweaking (x11, other libs).
2009-02-20 13:59:33 +00:00
Viktor Szakats
a663960109 2009-02-20 13:08 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/hb-func.sh
    + Added generation of hbmkcfg.hbp.
      gt override, cflags, ldflags and slang/curses libs are
      currently added.
    ; TODO: Add this file to distro packages.

  * utils/hbmk2/hbmk2.prg
    ! Fixed handling of -DHB_EXT_ZLIB.
    ! Fixed handling of -DHB_PCRE_REGEX.
    + Added support for -DHB_POSIX_REGEX.
    ! Removed -mconsole from *nix gccs too.
    + Added new Linux targets mingw and mingwce for future
      cross compiling support.
    + Added remaining system libs for linux, sunos and hpux.
    + Added a more complete set of win system libs for mingw.
      TODO: Some more generic solution needs to be developed
            because currently the win systems libs add by our
            tools are pretty much random across the different
            supported compilers.
    + Added system lib list for mingwce.
    + Path separator translation for mingwce.
2009-02-20 12:26:01 +00:00
Viktor Szakats
3107d37a05 2009-02-20 11:03 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/postinst.sh
    ! Fix to prev HB_USR_LIBTOOL should be HB_USER_LIBTOOL to be
      consistent.

  * bin/hb-func.sh
    * HB_USR_LIBS -> HB_USER_LIBS to be in sync with rest of Harbour.
2009-02-20 10:03:08 +00:00
Viktor Szakats
6e2ef26c78 2009-02-20 10:58 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/postinst.sh
    ! Fixed s&r error (LIBTOOHB_USR_LDFLAGS).
    * Renamed LIBTOOL_USR to HB_USR_LIBTOOL.
2009-02-20 09:59:02 +00:00
Viktor Szakats
a2eb6c9690 2009-02-18 13:14 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk2.prg
    + Added new TODOs.
    + Now using GTCGI as the GT.
    + Added -info option to enable informational output.
      (currently this is the default for testing period)
    + Added -arch=<arch> command line option. Same as HB_ARCHITECTURE.
      Added -comp=<comp> command line option. Same as HB_COMPILER.
      envvars are kept for compatibility.
    + Added -hblnk option to give plave for hblnk script behaviour
      emulation.
    * Changed -cc, -cmp options to -hbcc, -hbcmp respecitvely.
    + Changed -hbcc, -hbcmp, -hblnk switches to turn off information
      output and turn on quiet mode by default.
    + Added autodetection of architecture when unique to
      architecture compiler is choosen manually. IOW, when
      -comp=msvc|mingw|pocc|dmc|xcc is passed the architecture will
      be set to win automatically. When -comp=djgpp is used,
      dos will be selected.
    ! Fixed ordering of compiler autodetection because f.e. owatcom
      bin dir holds a 'cl.exe', which made hbmk2 falsely detect msvc.
    + Added trick which I'm not sure I like, and may cause problems
      and seemingly unpredictable behaviour, but could also help
      in some environments where multiple compilers are setup in
      parallel (this isn't a recommended scenario for various other
      reasons, so maybe we shouldn't support it further). So from
      now on the compiler autodetection will first look for the
      compiler used to build hbmk2.exe, and check for the rest
      afterwards. This feature is turned off for msvc builds of
      hbmk2.exe because it breaks owatcom autodetection.
    + Added possibility to pass a plain dir by using -odir[\|/]
      switch. The final name will be determined by first input
      file name, if this one also has a dir, -o option will be
      ignored. Added logic to handle separator differences, this
      wasn't tested to a great deal.
    + Added -Wl,--start-group support for linux/gcc|gpp, win/mingw,
      dos/djgpp.
    ! Fixed owatcom support to setup library paths.
    ! Fixed linux/owatcom to use link script.
    * Some adjustments to win/owatcom C compiler settings. I guess
      the ones in .cf should also need a cleanup.
    * Few minor indentation problems fixed.
    ! C compiler and linker scripts now got an extension in
      the generated temp filename to make some of them happy
      (owatcom in this case). .cpl is used for compiler scripts,
      .lnk for linker ones.
    + Compiler autodetection now also looks in hbmk2 executable
      dir before looking into the PATH.
    ! Link script content was wrong due to typo.
    ! Fixed problem with library paths being wrong (doubly
      decorated) in the link command. This may also fix some
      problems with double extensions and final .c file cleanup.
    ! Fixed to add hbdebug lib when building in shared mode.
    ! Fixed typo in automatically adding './' on *nix systems.
    ; Please test, I definitely couldn't retest all scenaros
      after all these changes.

  * bin/postinst.bat
    * Adapted change in mode modifier switches, also
      added new -hblnk one.
  * utils/hbmk/examples/winapi.hbp
    + Added mapi32.
  + utils/hbmk/examples/contrib.hbp
    + Added .hbp file for popular and portable only contribs.
  * config/win/owatcom.cf
    - Removed unnecessary system libs.
  * contrib/hbvpdf/hbvpdft.prg
    * hbwhat32 -> hbwhat in comment.
  * contrib/hbwin/wapi_commctrl.c
  * contrib/hbwin/wapi_winuser.c
    ! Fixed harbour-project page link in header.
  * contrib/hbwin/hbwapi.h
    * Formatting (indenting the whole file content inside
      self-guard isn't necessary.)
2009-02-19 12:46:19 +00:00
Viktor Szakats
733a2ddad2 2009-02-18 10:34 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* bin/postinst.bat
    + Added generation of hbcc[.bat|.cmd], hbcmp[.bat|.cmd]
      and hblnk[.bat|.cmd].
    ; NOTE: Available only when using GNU-make to build Harbour.

  * utils/hbmk/hbmk2.prg
    % Minor optimizations.
    + HB_USER_LIBS now gets automatic path separator adjustment.

  * config/win/msvc.cf
    ! Added missing system libs.
    ! Tweaked C options to be like in non-GNU make.

  * make_gcc.sh
  * make_gnu.sh
    - Removed compatibility with HB_ARCHITECTURE = w32.
2009-02-18 09:34:50 +00:00
Viktor Szakats
6de8d77075 2009-02-17 17:34 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk/hbmk2.prg
    + Added support for -fullstatic.
    + Added '-lm' to linux/gcc. Still needs to tweaking, like gpm.

  * bin/hbmk.bat
    + Added missing '@'.
2009-02-17 16:35:14 +00:00