Commit Graph

408 Commits

Author SHA1 Message Date
Viktor Szakats
340fc1f1de 2009-06-25 02:58 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
  * make_gnu.bat
    + Added support for Cygwin builds (passes call to make_gnu.sh).
    + Added Cygwin build starter example.
    + Cygwin mentioned as a requirement for mingwarm builds,
      also added to PATH.
    ! Fixed cygwin autodetection.
    ! Fixed wrong PATH order in 'MinGW GCC + MSYS' example.
    * Merged mingw+msys and cygwin bash based build methods,
      and titled as "alternate" method.
      Now all supported compilers work by starting up make_gnu.bat.

  * utils/hbmk2/hbmk2.prg
    ! Change compiler autodetection to work for cygwin.

  * mpkg_dos.bat
  * mpkg_win.bat
  * make_gnu.bat
    ! Fixed build process to work in paths containing spaces.
      I didn't test the batch in pure DOS, so I may have broken it.

  * config/win/install.cf
  * config/wce/install.cf
    ! Fixed 'install' to work when there is a space in install path.

  * make_gnu.bat
  * INSTALL
    + Added support for HB_BUILD_LOG envvar. If set to 'yes',
      it will automatically set log output filename to:
         'log-<arch>-<comp>.txt'
      if set to 'no' it will no make any extra redirection,
      if set to any other value, it will be used for output
      (both std and err). The batch will set HB_BUILD_LOGFILE
      to the filename used for output for processing.
      This feature requires Windows NT or upper host.
      I didn't enable this feature yet by default to not break
      existing user setups, but maybe I'll do it before the
      final release.
    * Modified text shown (+ beep thrown) when build failed.
    * Messages now all start with 'Harbour'.
    * Do not do the second build pass if the first one failed.

  * contrib/hbwin/legacy.prg
    ! Fixed CreateObject() not working due to typo.
      Thanks to Itamar Lins for the report.

  * mpkg_dos.bat
  * mpkg_win.bat
  * mpkg_win.nsi
    + Enabled HB_BUILD_LOG=yes.
    * Silenced copy, zip, makensis commands.
    + Added message about failed build process.
    * Changed to use 'copy' instead of 'xcopy'
    * Changed internals so now they don't require HB_COMPILER
      and HB_ARCHITECTURE to be set. This means that now
      we can rely on autodetection even for mpkg_*.bat files.
      Creating an installer is very easy now for most cases.
      Just type:
         mpkg_gnu.bat

  * source/vm/set.c
    + Added file commit support to __MVSAVE(), if Set( _SET_HARDCOMMIT )
      is set to .T.. This is the default which means by default we aren't
      CA-Cl*pper compatible. Addition protected by HB_C52_STRICT.

  * source/rdd/dbf1.c
    ! Minor typo in comment.

  * doc/en-EN/hb_apiit.txt
  * include/hbapi.h
  * include/hbapiitm.h
  * source/vm/itemapi.c
  * source/vm/extend.c
  * source/rtl/gtwvt/gtwvt.c
  * source/rdd/dbf1.c
  * contrib/gtqtc/gtqtc.cpp
  * contrib/gtwvg/gtwvg.c
  * contrib/gtwvg/wvggui.c
  * contrib/hbwin/olecore.c
  * examples/hboleold/win_ole.c
    * Finishing long planned function renames to clear up
      a very (10 years) old naming inconsistency.
      To adapt you code to this, please do changes below:
         1) hb_itemPutCPtr() (with three parameters) -> hb_itemPutCLPtr()
         2) hb_itemPutCPtr2() -> hb_itemPutCPtr()
      Unmodified code will generate compile time errors, so it's easy
      to spot where the modifications need to be done. For most users,
      only case 1) will need to be dealt with.
    ; INCOMPATIBLE. Please update your code.

  * source/rtl/hbi18n1.c
  * source/rdd/dbfnsx/dbfnsx1.c
    * hb_itemPutCPtr() (with three parameters) -> hb_itemPutCLPtr()

  * contrib/gtwvg/wvggui.c
  * contrib/gtqtc/gtqtc.cpp
    ! Fixed GPF in hb_gtInfo( HB_GTI_SCREENSIZE ) call with wrong
      parameter.
2009-06-26 01:11:11 +00:00
Viktor Szakats
d772fc5b2f 2009-06-22 16:05 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* contrib/gtwvg/Makefile
    ! Typo in prev.

  * INSTALL
  - config/linux/gpp.cf
    - Deleted HB_COMPILER=gpp. Please use HB_BUILD_MODE=cpp
      which works with all compilers.
2009-06-22 14:06:43 +00:00
Viktor Szakats
582ba2db28 2009-06-22 15:03 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/hpux/gcc.cf
  * config/sunos/gcc.cf
  * config/bsd/gcc.cf
  * config/darwin/gcc.cf
  * config/dos/djgpp.cf
  * config/win/cygwin.cf
  * config/win/mingw.cf
  * config/win/bcc.cf
  * config/linux/gcc.cf
  * config/linux/icc.cf
  * config/os2/gcc.cf
  * config/wce/mingwarm.cf
  * config/win/icc.cf
    + Added support for HB_BUILD_MODE=cpp for all platforms
      where it's available.
      Now it's about in sync with hbmk2.

  * config/linux/gpp.cf
    * Changed to set HB_BUILD_MODE=cpp and redirect to gcc.
      (retained for compatibility, pls use HB_BUILD_MODE=cpp instead
      of HB_COMPILER=gpp)

  * config/win/gcc.cf
    * Now redirected to mingw (was cygwin).
2009-06-22 13:20:40 +00:00
Viktor Szakats
66126cd394 2009-06-19 22:04 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/darwin/gcc.cf
    ! LIBTOOHB_USER_LDFLAGS -> HB_USER_AFLAGS
2009-06-19 20:05:14 +00:00
Viktor Szakats
2ee89d24cf 2009-06-19 15:18 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/darwin/gcc.cf
    ! Fixed a hard-wired 'cc' to be $(HB_CMP)
2009-06-19 13:18:55 +00:00
Viktor Szakats
8a01b5de4c 2009-06-19 15:03 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/darwin/gcc.cf
    * Changed to use 'gcc' as compiler name like on other platforms 
      and in hbmk2.
      For old Darwin systems it may need to be redefined to 'cc' using 
      export HB_CMP=cc.
2009-06-19 13:03:45 +00:00
Viktor Szakats
2afa463b34 2009-06-19 14:50 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Added basic HB_CCPOSTFIX support.
    + Switched to use libtool (instead of ar) on darwin.
      (to be tested after commit)

  * config/darwin/gcc.cf
    + Added HB_CCPREFIX support.
    + Added HB_CCPOSTFIX support.
    ; Only needed for cc/gcc.

  * config/linux/gcc.cf
    + Added HB_CCPREFIX support.
2009-06-19 12:52:14 +00:00
Przemyslaw Czerpak
5d2a6931be 2009-06-14 14:49 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/contrib/gtwvg/wvgwin.c
    ! fixed wrongly used & operator

  * harbour/source/rtl/hbproces.c
    * added TODO warning in OpenWatcom Linux builds

  * harbour/make_gnu.sh
    ! fixed test_param() function definition - it has to be defined it's
      before use

  * harbour/include/hbexpra.c
  * harbour/include/hbexprb.c
  * harbour/source/common/expropt1.c
  * harbour/source/rtl/round.c
    * removed unnecessary <math.h>

  * harbour/source/vm/hvm.c
  * harbour/source/common/expropt2.c
  * harbour/contrib/hbct/ctmath.h
  * harbour/contrib/hbclipsm/num.c
  * harbour/contrib/hbclipsm/numfloor.c
  * harbour/contrib/hbclipsm/numceil.c
    * use "hbmath.h" instead of <math.h> to avoid possible desynchronization
      between used math libraries and header files

  * harbour/source/pp/Makefile
    ! fixed real DOS compilation - replaced Windows only hack by wildcard
      function usage

  * harbour/config/dos/dir.cf
    * removed intermediate sh call from executed commands

  * harbour/source/vm/Makefile
    * disabled HB_HVM_ALL in all Watcom builds - it works but the compilation
      time is very huge so user who wants to use it should set envvar
      HB_HVM_ALL=yes
    * enabled HB_HVM_ALL for DJGPP builds
2009-06-14 12:40:11 +00:00
Viktor Szakats
a12807edfe 2009-06-12 09:26 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* doc/man/hbmk.1
  * doc/whatsnew.txt
  * INSTALL
  * bin/hb-mkdyn.bat
  * external/libhpdf/Makefile
  * make_gnu.bat
  * utils/hbmk2/hbmk2.pt_BR.po
  * utils/hbmk2/hbmk2.hu_HU.po
  * utils/hbmk2/hbmk2.prg
  * utils/hbmk2/examples/contribf.hbc
  * source/vm/Makefile
  * contrib/gtalleg/Makefile
  * contrib/hbqt/Makefile
  * contrib/hbxbp/Makefile
  * contrib/gtqtc/Makefile
  * contrib/gtwvg/Makefile
  * contrib/hbssl/Makefile
  * config/dos/global.cf
  - config/dos/owatcom.cf
  + config/dos/watcom.cf
  - config/win/owatcom.cf
  + config/win/watcom.cf
  - config/linux/owatcom.cf
  + config/linux/watcom.cf
  - config/os2/owatcom.cf
  + config/os2/watcom.cf
    * Renamed 'owatcom' to 'watcom'.
      Please adjust your make files, or just let them autodetect.

  * utils/hbmk2/examples/contribf.hbc
    ! Adjusted hbsqlit3 filter after enabling for dos.

  * external/sqlite3/Makefile
    + Added comment for DJGPP hack.
2009-06-12 07:28:53 +00:00
Viktor Szakats
8875ec290f 2009-06-10 23:33 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
; TOFIX: dos/owatcom builds can now created successfully
           (using standard Open Watcom 1.8 installation),
           the bad news is that f.e. hbmk2 will crash the
           NTVDM when trying a simple make.

  * INSTALL
    ! Minor fix to DOS instructions.
    + Added DOS build examples.

  * mpkg_dos.bat
    ! Fixed target dir and archive name to be different
      for djgpp and owatcom builds.

  * make_gnu.bat
  + config/djg-make.exe
    + Added embedded copy of DOS build of GNU Make.
      This is to make DOS builds, specifically dos/owatcom
      builds simpler. Original filename was 'make.exe'.
      This can probably be removed once we move DOS
      platform status to a 'target-only' one, like WinCE/ARM.

  * make_gnu.bat
    ! Ugly hack added to create doc/en-EN dir. This still
      won't solve the DOS copy problem unless I remove
      the hack committed previously. If I remove it
      the make process cannot be anymore started without
      this batch file as it would choke on xcopy if
      above dir doesn't exist.

  * make_gnu.sh
    ! Applied fix to only create install dirs if called
      with 'install' option. At the same time enabled
      this feature for all platforms. It will also create
      doc/en-EN dir.
      PLEASE TEST/REVIEW, I didn't do any testing.
    ; TOFIX: Much or all of these should IMO be done directly
             from make files, it would be much self-contained
             and consistent.

  * source/pp/Makefile
    ! Fixed to find ChangeLog when building for DOS targets.
      This was a problem when trying to build dos/owatcom.
      Now in DOS mode it will refer to the ChangeLog by its
      8.3 name.

  * utils/hbmk2/hbmk2.prg
    * Minor formatting.

  * mpkg_deb.sh
  * harbour.spec
    - Deleted hbmsql.
    ; TOFIX: hbqt is missing from some Linux make files.
    ; TOFIX: (in next major release) We should try to 
             make Linux build files less-maintenance intensive.
2009-06-10 21:49:10 +00:00
Viktor Szakats
de8c2e9544 2009-06-10 20:10 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* doc/en-EN/Makefile
  * config/dos/global.cf
  * config/dos/install.cf
  * config/doc.cf
    ! Fixes to prev. Nothing is simple in the world of DOS.
      'copy' restored for general purpose to avoid idiotic 
      and unavoidable Microsoft xcopy message:
      "Does destination specify a file name or directory name on the target 
       (F = file, D = directory)?"
    * Using xcopy for install purposes only.
    * Change the way above idiotic message is avoided. Made the 
      hack local to Makefile. It doesn't work either way, but at 
      least it lets it run.

  * make_gnu.bat
    * Minor.
2009-06-10 18:13:53 +00:00
Viktor Szakats
74897c3b20 2009-06-10 19:42 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/dos/global.cf
    ! Typo in prev.

  * ChangeLog
  - ChangeLog-old
    * Restored unified ChangeLog. I know it has some drawbacks,
      like longer loading time with some apps, but it's much
      more elegant this way and easier to search in it.
2009-06-10 17:44:44 +00:00
Viktor Szakats
6243be7d28 2009-06-10 19:36 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/dos/global.cf
    ! Fixed to use xcopy instead of copy to 'install' files.
      This means long filenames (and also casing) will be retained.
      This also means that now 'install' actually works.
      It may also mean that creating a DJGPP build isn't anymore
      possible on a pure DOS system, I can't remember when xcopy
      was introduced. Anyway I think it's better to have this
      requirement than not having a proper DOS build at all
      (since long years).
      This also means that our DOS release cannot even be *used* 
      in pure DOS environment, since our long filenames will 
      be chopped when extracting the distro .zip. Only final 
      .exes are able to run under DOS.
      We still have the option to implement full short name 
      support, but I'm not sure this has any importance anymore.
      If we don't want to do this, we can finally lift some 
      restrictions which tied our hands so far, based on the 
      fact that DOS builds cannot even be created and run on 
      real DOS. So, this means:
        - We may use long filenames as distro name.
        - We may convert DOS platform as a target only platform, 
          similar to WinCE/ARM.
        - If we do the above, we may even embed our DOS
          libs in Windows distro, and build DOS apps using
            hbmk2 hello.prg -arch=dos
        - We may use long filename anywhere in our tree.
          (but we must check first if long names are also 
          supported for headers, dirnames and source names)
      If you have an opinion, please tell.

  * config/dos/global.cf
    ! Adding ending pathsep to DOC_SUBDIR to make xcopy happy
      and not ask if the target is a file or directory.
    ; TOFIX: Anyhow, DOC_SUBDIR feature simply doesn't work since
             very long, so we should do something about it in the future.

  * debian/changelog
    + Added new version entry. (Thanks Guy)

  * bin/postinst.bat
    ! Added workaround to make it work under DOS.
      (avoiding 'Out of environment space' error)

  + mpkg_dos.bat
    + Added DOS package generator batch. Very similar
      to mpkg_win.bat, maybe we should merge them in
      the future.

  * mpkg_win.bat
    * Using short name for main dir, just to sync it with
      DOS version.

  * utils/hbformat/hbformat.prg
    + Changed default GT to GTCGI.

  * utils/hbmk2/hbmk2.prg
    ! Added workaround for dos/djgpp anomaly in hb_DirBase()
      (and also hb_ProgName()) where path contains forward
      slashed instead of backslashes.
    ; TOFIX: In core.

  * source/vm/Makefile
    ! Disabled hbvmall for dos build because of thid djgpp error:
      ---
      gcc -I. -I../../../../include  -Wall -W -O3    -c ../../hvmall.c -ohvmall.o
      In file included from ../../../../include/hbmath.h:60,
                      from ../../itemapi.c:97,
                      from ../../hvmall.c:67:
      c:/devl/djgpp/include/libm/math.h:97: error: redefinition of 'struct exception'
      ---

  * contrib/hbblat/hbblat.hbc
  * contrib/hbhpdf/hbhpdf.hbc
    * Minor formatting.
2009-06-10 17:38:18 +00:00
Viktor Szakats
950b5fc4a4 2009-06-08 14:33 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/wce/mingwarm.cf
    ! Fixed 'del' command receiving wrongly formed path seps
      in non-msys mode when lib creation failed.
2009-06-08 12:33:47 +00:00
Viktor Szakats
4c91e51985 2009-06-08 06:30 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
    + Added minimum tested version of MinGW.

  * make_gnu.bat
    + Added echo to display errorlevel after running GNU Make
      if it's not zero. Eventually I'd like to add proper
      error display in case GNU Make returned with error
      (not that GNU Make doesn't display it), but first I'd
      like to inspect how it works (there is no documentation
      about returned errorlevels).

  * config/win/mingw.cf
    ! Fixed 'del' command receiving wrongly formed path seps
      in non-msys mode when lib creation failed.

  * ChangeLog
    ! Typo in one yesterday's entry.
2009-06-08 04:32:19 +00:00
Viktor Szakats
8fcec391a4 2009-06-05 23:05 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
+ config/mingw32-make.exe
    + Added GNU Make (Windows, 32-bit) executable (size: 173KB),
      this is the version recommended by INSTALL, found here:
      https://sourceforge.net/project/showfiles.php?group_id=2435&package_id=23918

  * make_gnu.bat
    * Modified to utilize above GNU Make binary for Harbour
      Windows/WinCE builds in order to make one thing less to
      worry about for users wishing to build from source.
      From this point the only two requirements for building
      Harbour are a C compiler and the source itself. Much less
      things to go/get wrong. If this works out good, we can
      remove a few instructions from INSTALL.
      If someone wants to override supplied version (not very
      good idea, but who knows) the supplied version has to be
      replaced by custom version.
      In case group thinks it's onorthodox or inappropriate
      (or outright illegal) to have such binaries stored in
      our repository, please shout, it's not yet late to undo
      this change.
      Also please test.

  * include/hbsetup.h
    + Added MSVS 2010 version information.

  * contrib/gtwvg/wvggui.c
    - Temporarily disabled whole file for MSVS 2010 due to lots
      of compilation errors, similar to the ones recently seen
      with letdb. (errors posted on the list)
2009-06-05 21:15:52 +00:00
Viktor Szakats
2ff37b72ec 2009-05-28 08:20 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    * .hbl extension changed to .hbc (Harbour Make Config).
    * -nohbl -> -nohbc
    ; Sorry for the mess.
    + Added support for instpaths= in .hbc files.
    + Added support for HB_USER_LIBPATHS envvar to specify
      lib search paths (similar to -L).
    ! Fixed so that sripping/compressing isn't attempted if
      the target didn't need an update.

  * source/rtl/Makefile
  * source/rdd/Makefile
    + Enabled -gc3 for hbrtl and hbrdd locally
      (except for wce builds). Same can be done locally
      for any libs where we find performance increase
      due to -gc3.
    ; NOTE: Probably it would be enough to compile just a few
            sensitive .prg sources (or program parts) with -gc3,
            so it would great to have such #pragma option in
            Harbour. Doesn't seem easy to implement though.

  * config/rules.cf
    * HB_GCMODE default set 0 (from 3).
      This means .prgs will be again compiled with -gc0 by default.
      Because of the contribs, this means the complete size
      of Harbour libs is now reduced significantly.

  * config/wce/global.cf
  * config/wce/msvcarm.cf
  * config/wce/mingwarm.cf
  * config/wce/poccarm.cf
    % HB_GCMODE=0 moved to wce/global.cf

  - utils/hbmk2/examples/hmg.hbl
  + utils/hbmk2/examples/fwh.hbc
  - utils/hbmk2/examples/whoo.hbl
  + utils/hbmk2/examples/xhgtk.hbc
  - utils/hbmk2/examples/xbgtk.hbl
  - utils/hbmk2/examples/hwgui.hbl
  - utils/hbmk2/examples/fwh.hbl
  + utils/hbmk2/examples/c4w.hbc
  - utils/hbmk2/examples/xhgtk.hbl
  + utils/hbmk2/examples/contrib.hbc
  - utils/hbmk2/examples/c4w.hbl
  + utils/hbmk2/examples/contribf.hbc
  - utils/hbmk2/examples/contrib.hbl
  + utils/hbmk2/examples/hmg.hbc
  + utils/hbmk2/examples/whoo.hbc
  - utils/hbmk2/examples/contribf.hbl
  + utils/hbmk2/examples/xbgtk.hbc
  + utils/hbmk2/examples/hwgui.hbc
  - contrib/gtalleg/tests/gtallegs.hbl
  - contrib/gtalleg/tests/gtallegd.hbl
  + contrib/gtalleg/tests/gtallegs.hbc
  + contrib/gtalleg/tests/gtallegd.hbc
  - contrib/hbmysql/utils/hbmysql.hbl
  + contrib/hbmysql/utils/hbmysql.hbc
  - contrib/hbmysql/tests/hbmysql.hbl
  + contrib/hbmysql/tests/hbmysql.hbc
  + contrib/hbct/tests/hbct.hbc
  - contrib/hbct/tests/hbct.hbl
  - contrib/xhb/tests/xhb.hbl
  + contrib/xhb/tests/xhb.hbc
  - contrib/hbodbc/tests/hbodbc.hbl
  + contrib/hbodbc/tests/hbodbc.hbc
  - contrib/hbtpathy/tests/hbtpathy.hbl
  + contrib/hbtpathy/tests/hbtpathy.hbc
  + contrib/hbmsql/tests/hbmsql.hbc
  - contrib/hbmsql/tests/hbmsql.hbl
  + contrib/hbmzip/tests/hbmzip.hbc
  - contrib/hbmzip/tests/hbmzip.hbl
  + contrib/hbsqlit3/tests/hbsqlit3.hbc
  - contrib/hbsqlit3/tests/hbsqlit3.hbl
  - contrib/hbblat/tests/hbblat.hbl
  + contrib/hbblat/tests/hbblat.hbc
  - contrib/hbqt/tests/hbqt.hbl
  + contrib/hbqt/tests/hbqt.hbc
  - contrib/hbfbird/tests/hbfbird.hbl
  + contrib/hbfbird/tests/hbfbird.hbc
  - contrib/hbziparc/tests/hbziparc.hbl
  + contrib/hbziparc/tests/hbziparc.hbc
  - contrib/hbnf/tests/hbnf.hbl
  + contrib/hbnf/tests/hbnf.hbc
  - contrib/hbcurl/tests/hbcurl.hbl
  + contrib/hbcurl/tests/hbcurl.hbc
  - contrib/gtqtc/tests/gtqtc.hbl
  + contrib/gtqtc/tests/gtqtc.hbc
  - contrib/rddsql/sddmy/tests/sddmy.hbl
  + contrib/rddsql/sddmy/tests/sddmy.hbc
  + contrib/rddsql/tests/rddsql.hbc
  - contrib/rddsql/tests/rddsql.hbl
  - contrib/rddsql/sddodbc/tests/sddodbc.hbl
  + contrib/rddsql/sddodbc/tests/sddodbc.hbc
  - contrib/hbhpdf/tests/hbhpdf.hbl
  + contrib/hbhpdf/tests/hbhpdf.hbc
  - contrib/rddado/tests/rddado.hbl
  + contrib/rddado/tests/rddado.hbc
  + contrib/gtwvg/tests/gtwvg.hbc
  - contrib/gtwvg/tests/gtwvg.hbl
  - contrib/hbpgsql/tests/hbpgsql.hbl
  + contrib/hbpgsql/tests/hbpgsql.hbc
  - contrib/rddads/tests/rddads.hbl
  + contrib/rddads/tests/rddads.hbc
  - contrib/hbclipsm/tests/hbclipsm.hbl
  + contrib/hbclipsm/tests/hbclipsm.hbc
  - contrib/hbfimage/tests/hbfimage.hbl
  + contrib/hbfimage/tests/hbfimage.hbc
  + contrib/hbgd/tests/hbgd.hbc
  - contrib/hbgd/tests/hbgd.hbl
  + contrib/hbmisc/tests/hbmisc.hbc
  - contrib/hbmisc/tests/hbmisc.hbl
  + contrib/hbtip/tests/hbtip.hbc
  - contrib/hbtip/tests/hbtip.hbl
  + contrib/hbwin/tests/hbwin.hbc
  - contrib/hbwin/tests/hbwin.hbl
  + contrib/hbvpdf/tests/hbvpdf.hbc
  - contrib/hbvpdf/tests/hbvpdf.hbl
  - contrib/hbssl/tests/hbssl.hbl
  + contrib/hbssl/tests/hbssl.hbc
  - contrib/hbbtree/tests/hbbtree.hbl
  + contrib/hbbtree/tests/hbbtree.hbc
  - contrib/hbcrypt/tests/hbcrypt.hbl
  + contrib/hbcrypt/tests/hbcrypt.hbc
  + contrib/examples/hbsqlit2/tests/hbsqlit2.hbc
  - contrib/examples/hbsqlit2/tests/hbsqlit2.hbl
  - contrib/examples/hbapollo/tests/hbapollo.hbl
  + contrib/examples/hbapollo/tests/hbapollo.hbc
  + contrib/examples/hbgf/tests/hbgf.hbc
  - contrib/examples/hbgf/tests/hbgf.hbl
  - contrib/examples/terminal/terminal.hbl
  + contrib/examples/terminal/terminal.hbc
  - contrib/examples/hbwhat/tests/hbwhat.hbl
  + contrib/examples/hbwhat/tests/hbwhat.hbc
    * Renamed *.hbl -> *.hbc (Harbour Make Config) in whole source tree.
2009-05-28 06:26:06 +00:00
Viktor Szakats
cfcb03dcb6 2009-05-22 17:31 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    ! Fixed to use hb_osPathSeparator() instead of hardcoded 
      backslash in mingw* init section, as it may also be used 
      on *nix in cross compilation scenarios.
    ! Dropped .exe extensions from mingw* init section to also 
      work on *nix systems.
    * Extended xmingw, mingw32ce detection for all *nix systems.

  * contrib/hbodbc/odbc.c
    ! Cast.

  * INSTALL
  * config/global.cf
    * Removed requirement of 3.81 or upper GNU Make, now it's a
      recommendation only. If I understand correctly after
      2009-05-22 16:28 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
      older ones can also be used without parallel build feature.
      Lowered minimum version to 3.70.
2009-05-22 15:31:56 +00:00
Przemyslaw Czerpak
2d14461b98 2009-05-22 16:28 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/config/dir.cf
    * do not enable parallel execution rules for GNU makes 3.7* and 3.80*
      which are known to have problems with them
2009-05-22 14:19:51 +00:00
Viktor Szakats
a4bf12517d 2009-05-21 08:53 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    + Added automatic configuration for bcc compiler. This kicks in 
      for bcc installations missing bcc32.cfg or ilink32.cfg next to 
      bcc32.exe. In this case Lib/Include dir will automatically
      added to the lib/include lists by hbmk2. This means that
      hbmk2 will work with bare bcc installations without doing any
      manual configuration.

  * config/global.cf
    + Added link to blog dealing with GNU Make.
2009-05-21 06:54:01 +00:00
Viktor Szakats
71a63b4c22 2009-05-21 07:46 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* config/global.cf
    + Added Make version check and appropriate error message in case 
      wrong version found.

  * ChangeLog
    ! Typos.
2009-05-21 05:47:09 +00:00
Przemyslaw Czerpak
eb76f97482 2009-05-11 13:00 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/rdd/workarea.c
    * formatting

  * harbour/source/vm/Makefile
    * minor cleanup

  * harbour/config/dir.cf
    ! added protection against double build call when -j<n> is used in
      install phase
2009-05-11 10:51:39 +00:00
Viktor Szakats
d610c88430 2009-04-16 12:00 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
    + Added support for source file parsing for headers in -inc mode.
      .prg, .c and .rc files are currently parsed recursively,
      include paths will be scanned for included files. There are
      currently three levels of scanning: disabled, partial (default)
      and full. Partial will scan the first 16K of each source file
      for performance reasons, full will scan the complete files.
      The source parser is currently very simple; '#include "<filename>"'
      pattern is recognized anywhere in the processed source, no
      other variations are supported ATM. Using this format is IMO
      best practice for user programs, if someone needs more
      than this, it needs to be developed, current method is quite
      fast, which is important when dealing with lots of source
      files.
    + Added option to control header scanning: -[no]head=<mode>
      This is also supported in .hbp files.
    + Added support to look in current dir for libs for compilers
      where this is supported.
    + Added cmdline option -resflag=, .hbp option resflags= and
      overall support for user supplied resource compiler flags.
    + Added support for cyg*.dll style libs.
    ! Fixed to handle libs with explicit dirs for compilers
      where this is supported.

  * config/dos/owatcom.cf
  * config/win/owatcom.cf
  * config/linux/owatcom.cf
  * config/os2/owatcom.cf
    + Added link to wlink options.
2009-04-16 10:33:36 +00:00
Viktor Szakats
8d7a4d4b6f 2009-04-07 17:37 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* make_gnu_xmingwce.sh
  * doc/man/hbmk.1
  * bin/hb-mkdyn.sh
  * bin/postinst.bat
  * bin/hb-func.sh
  * bin/postinst.sh
  * bin/hb-mkdyn.bat
  * external/sqlite3/Makefile
  * external/libhpdf/Makefile
  * external/libpng/Makefile
  * make_gnu.bat
  * contrib/gtalleg/Makefile
  * contrib/hbsqlit3/Makefile
  * contrib/hbqt/Makefile
  * contrib/hbfbird/Makefile
  * source/vm/Makefile
  * source/vm/vmmt/Makefile
  * utils/hbmk2/hbmk2.prg
  - config/win/mingwce.cf
  - config/win/poccce.cf
  - config/win/msvcce.cf
    - Deleted targets: win/msvcce, win/mingwce, win/poccce.
      Use these instead: wce/msvcarm, wce/mingwarm, wce/poccarm
2009-04-07 15:41:53 +00:00
Viktor Szakats
0ae41f7a0e 2009-04-04 17:06 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
    * Minor.

  * utils/hbmk2/hbmk2.prg
    ! Fixed to add 'lib' prefix when -hblib option is used with 
      GCC family compilers.
    ! Fixed to not override compiler output when -hblib option is used.

  * contrib/hbqt/generator/hbqtgen.prg
  + contrib/hbqt/Makefile_gen
  * contrib/hbqt/Makefile
    + Added Makefile_gen which holds the generated part of 
      the Makefile. This way there is no (less) hidden make 
      logic inside hbqtgen.

  * config/wce/global.cf
    - Removed gtwin.
    ; TODO: Move GT inclusion logic to GT local Makefiles.
2009-04-04 15:06:55 +00:00
Przemyslaw Czerpak
3672e94c50 2009-04-01 22:10 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/doc/Makefile
    ! removed unexisting license.txt file

  * harbour/include/hbapidbg.h
    * do not export Harbour debugger functions. If someone wants to create
      3-rd party debugger then we should agree the list of functions which
      should be public.

  * harbour/include/hbstack.h
    * minor cleanup in some definitions

  * harbour/include/hbdefs.h
    + added HB_DLL_ENTRY_POINT macro to set default DLL entry point for
      different Windows compilers

  * harbour/source/vm/maindllh.c
  * harbour/source/vm/maindllp.c
    * use HB_DLL_ENTRY_POINT macro

  * harbour/include/hbsetup.h
    * added internal macro to disable flatten optimization

  * harbour/include/hbmath.h
  * harbour/source/rtl/math.c
    * make default math error handler function static

  * harbour/include/hbatomic.h
    + added atomic inc/dec inline asm code to OW x86 builds

  * harbour/source/rtl/console.c
    * small code reorganization to not mix public and private function calls

  * harbour/source/rtl/hbregex.c
  * harbour/source/hbpcre/_hbpcreg.c
    * do not use hb_xfree() function pointer directly to avoid problems
      with different calling conventions.

  * harbour/config/win/owatcom.cf
  * harbour/config/os2/owatcom.cf
    * removed unnecessary in recent OpenWatcom versions explicit wlink.lnk
      including.
2009-04-01 20:04:37 +00:00
Viktor Szakats
3c718f1cd5 2009-04-01 10:45 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* doc/Makefile
    ! Removed license.txt.

  * INSTALL
    + Added Windows/Windows CE build examples.
      Cleaned mingw64 and mingwce cross-builds.

  * mpkg_win.bat
    * Using make_gnu.sh instead of make_gnu_xmingwce.sh 
      for mingwce target for uniformity.

  * utils/hbmk2/hbmk2.prg
    ! Fixed silly typo causing RTE if compiler autodetection 
      fails to detect any tier-one compilers (or none).
    + Added automatic postfixing external Harbour executable
      name if hbmk2 executable name is also prefixed. Currently 
      -x64 and -ia64 are recognized. Useful to call harbour-x64.exe 
      / harbour-ia64.exe when hbmk2-x64.exe / hbmk2-ia64.exe is used.

  * make_gnu_xmingwce.sh
  * config/rules.cf
  * config/win/mingwce.cf
  * config/win/poccce.cf
  * config/win/msvcce.cf
  * config/wce/global.cf
    * Moved -D__PLATFORM__WINCE to .cf files. This also fixes 
      missing __PLATFORM__WINCE for poccce and msvcce targets.
2009-04-01 08:47:52 +00:00
Viktor Szakats
ea90ff81f0 2009-03-31 12:03 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
+ config/wce
  + config/wce/dir.cf
  + config/wce/global.cf
  + config/wce/install.cf
  + config/wce/msvcarm.cf
  + config/wce/mingwarm.cf
  + config/wce/poccarm.cf
    + Added new arch for WinCE: wce
      These will now live in parallel with old win/*ce targets
      until they are fully functional. We can also back up from
      here in case this new method turns out to be a dead end
      for any reason. The upgrade path is:
      win/msvcce  -> wce/msvcarm
      win/mingwce -> wce/mingwarm
      win/poccce  -> wce/poccarm
      The idea is that this way we may continue adding support
      for non-ARM WinCE platforms, if needed. It also makes it
      easier to do things globally for wce platform only.
2009-03-31 10:06:15 +00:00
Viktor Szakats
27f7edb625 2009-03-31 11:46 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
    * Moved Windows CE compilers into a separate section.

  * bin/hb-mkdyn.bat
    * Changes made to allow wce arch. (provision for wce arch)

  * mpkg_win.bat
    * Allows to override HB_ARCHITECTURE. (provision for wce arch)
    + Include arch in target directory. (provision for wce arch)

  * include/hbatomic.h
    - Turned off inline asm for _MSC_VER compilers in 64-bit mode. (pocc64, msvc64)
      These target don't support inline asm.
      This fixes previously reported regressions with these targets.

  * utils/hbmk2/hbmk2.prg
    % win/owatcom: Pentium Pro scheduling.
    * win/owatcom: Temply set back stack calling convention.

  * external/libhpdf/Makefile
    - Disabled for pocc64 due to errors, even internal compiler error:
      ---
      can't spill register variable: rcx (3) image
      ../../hpdf_image.c(480): fatal error: Internal error: best_spillee.
      ---

  * config/win/bcc.cf
    + Added comment about -4, -5, -6.

  * ChangeLog
    ! Minor fix to prev entry.
2009-03-31 09:58:43 +00:00
Viktor Szakats
9b35872d6f 2009-03-31 02:58 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* include/hbsetup.h
    % '( defined(__POCC_TARGET__) && __POCC_TARGET__ == 2 ) )'
      removed altogether. WinCE is detected anyway by using _WINCE.

  * external/sqlite3/Makefile
    - Disabled for poccce due to errors.

  * external/libpng/Makefile
    ! Fix to prev (poccce).

  * config/win/poccce.cf
    ! Added -D_M_ARM.

  * config/win/owatcom.cf
    * Pentium Pro scheduling.
    * Changed back to __cdecl calling convention from register based
      until we find a way to tweak HB_EXPORT to force __cdecl for 
      .dll exported functions.
    ; TOFIX: Find out how to force __cdecl for HB_EXPORT functions in owatcom.
             Or, if this is no good solution for owatcom users, or not 
             an option and performace is more important, we must rename
             owatcom Harbour .dlls to a distinct name: harbour[mt]-11-ow.dll.
             We should try to avoid that.

  * config/win/bcc.cf
    * -4 -> -6 for Pentium Pro instructions. Looking at the generated
      code this looks like rescheduling, if someone now can test Harbour
      or plain Pentium, it would be good to know if it still works.
2009-03-31 01:11:22 +00:00
Przemyslaw Czerpak
662007fa1c 2009-03-31 02:46 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/config/dos/owatcom.cf
  * harbour/config/win/owatcom.cf
  * harbour/config/linux/owatcom.cf
  * harbour/config/os2/owatcom.cf
  * harbour/utils/hbmk2/hbmk2.prg
    * removed unnecessary linker options
    * use 'SYS causeway' to enable causeway stub in DOS builds instead
      of setting it manually. DOS users can also use DOS4G (default) or
      PMODE (commercial) stubs.
2009-03-31 00:39:37 +00:00
Przemyslaw Czerpak
5feb21d8c8 2009-03-30 22:17 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/dlmalloc.c
    ! fixed casting

  * harbour/source/vm/fm.c
    % use DLMALLOC as default memory manager in OpenWatcom Windows builds.
      Warning: HB_FM_DLMT_ALLOC does not work with OpenWatcom.

  * harbour/config/dos/owatcom.cf
  * harbour/config/win/owatcom.cf
  * harbour/config/linux/owatcom.cf
  * harbour/config/os2/owatcom.cf
    * changed alignment settings from 8 to 4
    * synced optimization flags used in different builds
    ! fixed linker parameters when HB_BUILD_DEBUG=yes is set
    ; TOVERIFY: I do not remember what calling convention should be used
      in OpenWatcom MT OS2 builds to eliminate GPF when APIENTRY16 functions
      are called. It's possible that current settings are wrong.

  * harbour/config/win/owatcom.cf
    * removed STACK=65536 from OpenWatcom linker parameters.
      This switch probably was inherited from old DOS WatcomC builds.
      Later I'll test current OpwnWatcom builds to check if we can also
      remove it from DOS builds when cwstub.exe is used.
    * restored -bm switch. When DLMALLOC is used it does not cause
      noticeable performance reduction.
    * use default register calling convention. We can change it
      in the future but 1-st we should check the performance overhead.
      If calling convention is a problem only for .DLLs then it can
      be resolved by modifying HB_EXTERN declaration and adding function
      attributes which will force given calling convention.

  * harbour/config/linux/owatcom.cf
    * enabled pentium pro instruction in OpenWatcom Linux builds.
      It reduces the code size and increase performance a little bit.
      Windows users which do not need pure pentium CPU support can make
      the same.

  * harbour/utils/hbmk2/hbmk2.prg
    ! fixed object extension used in OpenWatcom Linux builds: it's .o not .obj
    ! fixed linker parameters in OpenWatcom Linux builds: DEBUG ALL is single
      option
    ! fixed OpenWatcom calling convention settings. Viktor you cannot chose
      simultaneously register and stack calling convention. You have to chose
      one and keep it synced with Harbour compile time settings. Otherwise
      you will have unresolved external or you will force creating by linker
      dynamically function call wrappers (of course if OW support such
      functionality) what may strongly reduce the performance.
    ! removed -j compile time switch - it's not used to compile core code
    * synced optimization flags with core code

   I'm really interested in current OpenWatcom speedtst results compared
   with other Windows builds (MSVC, MinGW, BCC, POCC) in ST and MT builds.
2009-03-30 20:10:32 +00:00
Viktor Szakats
6b2caac544 2009-03-30 17:28 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* contrib/hbfbird/Makefile
  * contrib/gtalleg/Makefile
    - Disabled for poccce due to errors.

  * contrib/hbfimage/fi_winfu.c
    - Disabled Windows specific functions for poccce due to errors.

  * config/win/owatcom.cf
    % Removed -bm (MT mode) switch, because besides creating MT friendly
      code, it kills performance. Pls shout if MT mode is now broken in
      any ways.

  * mpkg_win.bat
    * Generate .zip file first.
2009-03-30 16:31:50 +00:00
Viktor Szakats
ef66cea2e6 2009-03-30 10:01 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* config/win/owatcom.cf
  * config/linux/owatcom.cf
  * config/os2/owatcom.cf
    - Reverted yesterdays attempt to make owatcom builds faster.
      After the change the compilation time went slower, the
      binaries got smaller, but execution speed got actually worse.
      I've left -oz option removed for win, that's the only
      remaining change, plus -5r in os2/dos.
      owatcom seems not very useful for production.
2009-03-30 08:03:36 +00:00
Viktor Szakats
e2de6c0119 2009-03-29 22:26 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* config/dos/owatcom.cf
  * config/win/owatcom.cf
  * config/linux/owatcom.cf
  * config/os2/owatcom.cf
    % Tweaked optimization options. This will result in slower
      build process, but more optimal runtime performance and
      executable sizes. One option is now turned on which can
      cause bad code with OW 1.1, so make sure you use latest
      Open Watcom version, after all the upgrade is free.
      It'd be great if owatcom users could make speedtst runs
      with this revision and older ones to see the difference,
      maybe now owatcom won't perform so poorly as before.
    + Added link to C compiler option docs.
    ! Fixed to convert slashes in HB_USER_CFLAGS.
    % Enabled -5r for DOS and OS/2.

  * contrib/hbct/disk.c
    ! Disabled some volume/disk related code for WinCE.

  * contrib/xhb/hbserv.c
    ! Disabled for poccce.

  * contrib/hbnf/getenvrn.c
    ! Disabled FT_GETE() for poccce.
    ! Fixed FT_GETE() to return zero/empty string on platforms not
      supported (like also OS/2).

  * doc/en-EN/Makefile
  - doc/en-EN/error.txt
  + doc/en-EN/errsys.txt
  * source/rtl/Makefile
  - source/rtl/fserror.c
  - source/rtl/errorapi.c
  - source/rtl/errorapu.c
  - source/rtl/errorint.c
  - source/rtl/errorsys.prg
  + source/rtl/fserr.c
  + source/rtl/errapi.c
  + source/rtl/errint.c
  + source/rtl/errapiu.c
  + source/rtl/errsys.prg
  * contrib/examples/hbdoc/examples/core_es/Makefile
  - contrib/examples/hbdoc/examples/core_es/error.txt
  + contrib/examples/hbdoc/examples/core_es/errsys.txt
    * Most filenames containing 'error' renamed to make
      it easier to search for errors in build logs.
    ; Three headers remain.
2009-03-29 20:53:47 +00:00
Viktor Szakats
79199ce199 2009-03-28 18:09 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* config/dos/owatcom.cf
  * config/win/owatcom.cf
  * config/linux/owatcom.cf
  * config/os2/owatcom.cf
    + Added HB_BUILD_MODE=c/cpp support for Watcom compilers.
    + Tweaked optimization options to work with wcc386 (C mode compiler).
    + Tweaked C make rule for wcc386 (only accepts backslashes).
    ; So now sqlite3 will be forced to C mode and will compile.
    ; TOFIX: .cpp file compilation will be broken in forced C mode, 
             so more cleanup will be needed here if we want to allow 
             all combinations.
2009-03-28 17:12:12 +00:00
Viktor Szakats
142a03c102 2009-03-27 18:30 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* config/win/poccce.cf
  * config/win/pocc.cf
    * Warning level taken down to -w2.

  * contrib/hbsqlit3/Makefile
    - Disabled for pocc, as it chokes on the new version of
      sqlite3.h.

  * INSTALL
    * Minor update.

  * include/hbapifs.h
  * include/hbdbsort.h
  * include/hbsetup.h
  * contrib/hbct/files.c
  * contrib/hbct/disk.c
  * contrib/hbmzip/hbmzip.c
  * contrib/rddads/ads1.c
  * contrib/hbbmcdx/bmdbfcdx.c
  * contrib/examples/pp/pp.c
  * contrib/examples/pp/hbppcore.c
  * source/pp/ppcore.c
  * source/pp/hbpp.c
  * source/vm/runner.c
  * source/vm/estack.c
  * source/vm/hvm.c
  * source/vm/cmdarg.c
  * source/vm/fm.c
  * source/vm/proc.c
  * source/vm/extrap.c
  * source/vm/memvars.c
  * source/vm/set.c
  * source/main/harbour.c
  * source/common/hbfsapi.c
  * source/common/hbwince.c
  * source/rtl/spfiles.c
  * source/rtl/defpath.c
  * source/rtl/philes.c
  * source/rtl/fnsplit.c
  * source/rtl/fstemp.c
  * source/rtl/gtchrmap.c
  * source/rtl/errorint.c
  * source/rtl/filebuf.c
  * source/rtl/hbffind.c
  * source/rtl/filesys.c
  * source/rtl/file.c
  * source/rdd/dbfntx/dbfntx1.c
  * source/rdd/sdf1.c
  * source/rdd/dbfnsx/dbfnsx1.c
  * source/rdd/dbfcdx/dbfcdx1.c
  * source/rdd/delim1.c
  * source/rdd/dbf1.c
  * source/rdd/hsx/hsx.c
  * source/rdd/dbffpt/dbffpt1.c
  * source/rdd/hbsix/sxsem.c
  * source/rdd/hbsix/sxfname.c
  * source/compiler/hbmain.c
  * source/compiler/genc.c
  * source/compiler/harbour.yyc
  * source/compiler/harbour.y
  * source/compiler/compi18n.c
  * source/compiler/genhrb.c
  * source/compiler/gencobj.c
  * source/compiler/genobj32.c
    * _POSIX_PATH_MAX + 1 -> HB_PATH_MAX
    * _POSIX_PATH_MAX -> HB_PATH_MAX - 1
      Please update your .c code to use new constant.
      Harbour initialization of the value is now HB_LEGACY_LEVEL2
      and will be removed in next version.
    ; Please review me.
2009-03-27 17:35:14 +00:00
Viktor Szakats
72bb7bff3b 2009-03-27 16:37 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* debian/dirs
    * Changed en -> en-EN.

  * external/sqlite3/Makefile
  * external/sqlite3/_sqlite3.c
    + Disabled warnings and forced C mode for sqlite3.
    - Deleted no longer needed stub.

  * include/hbsetup.h
    + Added HB_PATH_MAX.

  * source/compiler/genc.c
    * Minor modification to recent addition to make code
      more grep friendly.

  * config/win/msvc.cf
  * config/win/msvcce.cf
    + Added HB_BUILD_MODE=c and HB_BUILD_MODE=cpp support
      to force specific build mode.
      ATTENTION: Don't use this for normal Harbour code,
                 it's only meant for external libs hosted
                 inside Harbour source tree.

  * config/win/pocc.cf
  * config/win/poccce.cf
    + Added -w3 (default is -w2).

  * config/darwin/gcc.cf
  * config/hpux/gcc.cf
  * config/dos/owatcom.cf
  * config/dos/djgpp.cf
  * config/win/mingwce.cf
  * config/win/poccce.cf
  * config/win/icc.cf
  * config/win/cygwin.cf
  * config/win/msvc.cf
  * config/win/owatcom.cf
  * config/win/msvcce.cf
  * config/win/mingw.cf
  * config/win/pocc.cf
  * config/win/bcc.cf
  * config/linux/owatcom.cf
  * config/linux/gcc.cf
  * config/linux/icc.cf
  * config/os2/owatcom.cf
  * config/os2/gcc.cf
  * config/sunos/gcc.cf
  * config/bsd/gcc.cf
    + Added support for HB_BUILD_WARN=no to reset warning levels
      to compiler defaults.
      ATTENTION: Don't use this for normal Harbour code,
                 it's only meant for external libs hosted
                 inside Harbour source tree.
2009-03-27 15:40:18 +00:00
Viktor Szakats
bc6f0bce7d 2009-03-25 15:55 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* external/Makefile
    + Added HB_EXTERNAL_ADDON envvar support.

  * config/win/bcc.cf
    * -d moved to optimization switches.
2009-03-25 14:55:55 +00:00
Viktor Szakats
61cfc5b576 2009-03-21 15:02 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* utils/hbmk2/hbmk2.prg
  * config/win/icc.cf
  * config/win/cygwin.cf
  * config/win/msvc.cf
  * config/win/owatcom.cf
  * config/win/xcc.cf
  * config/win/mingw.cf
  * config/win/pocc.cf
    * Changed Harbour to uniformly link against ws2_32 winsock
      lib on Windows. Previous we've been using a mixture of
      ws2_32 and wsock32, sometimes both. For some platforms
      one of these libs is automatically included by linker,
      f.e. for bcc, wsock32 is used.
    ! This fixes wsock32 no longer available for mingw64.
    ; These platforms should be retested if this causes any
      problems, but ws2_32 should be available for all since long.

  * utils/hbmk2/hbmk2.prg
    ! Typo in prev commit.

  * source/vm/maindllp.c
  * source/vm/extrap.c
    ! Fixed for mingw64.
    ! Fixed warning for mingw64.
      ; TODO: Check for possible regression.

  * contrib/hbodbc/odbc.c
    ! Fixed mingw64 warning.
    ; TODO: Check for possible regression.

    ; TOFIX: (3rd party dependent contribs not yet included)
      Errors/Core:
      Temp/ccVJXjZS.s: Assembler messages:
      Temp/ccVJXjZS.s:19: Error: Incorrect register `%rax' used with `l' suffix
      Temp/ccVJXjZS.s:20: Error: `0x0e10(%rax,%ecx,4)' is not a valid base/index expression
      Temp/ccVJXjZS.s:36: Error: Incorrect register `%rax' used with `l' suffix
      Temp/ccVJXjZS.s:37: Error: `0x0e10(%rax,%ecx,4)' is not a valid base/index expression
      + GTWVG (also lots of warning)

      Warnings/Core:
      ../../hbprintf.c: In function 'hb_snprintf':
      ../../hbprintf.c:1067: warning: implicit declaration of function 'finite'
      ../../hbprintf.c:1148: warning: cast from pointer to integer of different size
      ../../itemapi.c: In function 'hb_itemStrBuf':
      ../../itemapi.c:2159: warning: implicit declaration of function 'finite'
      ../../dbfntx1.c: In function 'hb_ntxTagHeaderCheck':
      ../../dbfntx1.c:1016: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfntx1.c:1016: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfntx1.c:1017: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfntx1.c:1017: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfntx1.c:1017: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfntx1.c:1017: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfnsx1.c: In function 'hb_nsxTagHeaderCheck':
      ../../dbfnsx1.c:1233: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfnsx1.c:1235: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfnsx1.c:1236: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfnsx1.c:1236: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfnsx1.c:1236: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfnsx1.c:1236: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfnsx1.c: In function 'hb_nsxPageFree':
      ../../dbfnsx1.c:1525: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfnsx1.c:1525: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfnsx1.c:1525: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfnsx1.c:1525: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfnsx1.c: In function 'hb_nsxPageNew':
      ../../dbfnsx1.c:1574: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfnsx1.c:1574: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfnsx1.c:1574: warning: dereferencing type-punned pointer will break strict-aliasing rules
      ../../dbfnsx1.c:1574: warning: dereferencing type-punned pointer will break strict-aliasing rules

      Warnings/Contrib:
      ../../files.c: In function 'HB_FUN_SETFDATI':
      ../../files.c:247: warning: cast to pointer from integer of different size
      ../../files.c:268: warning: cast from pointer to integer of different size
      ../../getenvrn.c: In function 'HB_FUN_FT_GETE':
      ../../getenvrn.c:178: warning: implicit declaration of function 'GetEnvironmentStrings'
      ../../getenvrn.c:178: warning: initialization makes pointer from integer without a cast
      ../../tpwin.c: In function 'HB_FUN_P_INITPORTSPEED':
      ../../tpwin.c:78: warning: cast to pointer from integer of different size
      ../../tpwin.c:89: warning: cast to pointer from integer of different size
      ../../tpwin.c: In function 'HB_FUN_P_READPORT':
      ../../tpwin.c:108: warning: cast to pointer from integer of different size
      ../../tpwin.c: In function 'HB_FUN_P_WRITEPORT':
      ../../tpwin.c:119: warning: cast to pointer from integer of different size
      ../../win_dll.c: In function 'DllExec':
      ../../win_dll.c:509: warning: cast from pointer to integer of different size
      ../../win_dll.c:603: warning: cast to pointer from integer of different size
      ../../win_dll.c:672: warning: cast to pointer from integer of different size
      ../../win_dll.c:689: warning: cast to pointer from integer of different size
      ../../win_dll.c: In function 'hb_getprocaddress':
      ../../win_dll.c:809: warning: cast to pointer from integer of different size
      ../../win_ole.c: In function 'hb_oleItemToVariant':
      ../../win_ole.c:466: warning: cast to pointer from integer of different size
      ../../win_ole.c: In function 'FreeParams':
      ../../win_ole.c:762: warning: cast from pointer to integer of different size
      ../../win_ole.c: In function 'hb_oleVariantToItem':
      ../../win_ole.c:1092: warning: cast from pointer to integer of different size
      ../../win_ole.c: In function 'HB_FUN_CREATEOLEOBJECT':
      ../../win_ole.c:1425: warning: cast from pointer to integer of different size
      ../../win_ole.c: In function 'HB_FUN_GETOLEOBJECT':
      ../../win_ole.c:1478: warning: cast from pointer to integer of different size
      ../../win_ole.c: In function 'HB_FUN_OLEADDREF':
      ../../win_ole.c:1486: warning: cast to pointer from integer of different size
      ../../win_ole.c: In function 'HB_FUN_OLERELEASEOBJECT':
      ../../win_ole.c:1498: warning: cast to pointer from integer of different size
      ../../win_ole.c: In function 'HB_FUN_TOLEAUTO_OLEVALUE':
      ../../win_ole.c:1648: warning: cast to pointer from integer of different size
      ../../win_ole.c: In function 'HB_FUN_TOLEAUTO__OLEVALUE':
      ../../win_ole.c:1675: warning: cast to pointer from integer of different size
      ../../win_ole.c: In function 'HB_FUN_TOLEAUTO_OLENEWENUMERATOR':
      ../../win_ole.c:1703: warning: cast to pointer from integer of different size
      ../../win_ole.c: In function 'HB_FUN_TOLEAUTO_INVOKE':
      ../../win_ole.c:1786: warning: cast to pointer from integer of different size
      ../../win_ole.c: In function 'HB_FUN_TOLEAUTO_SET':
      ../../win_ole.c:1810: warning: cast to pointer from integer of different size
      ../../win_ole.c: In function 'HB_FUN_TOLEAUTO_GET':
      ../../win_ole.c:1834: warning: cast to pointer from integer of different size
      ../../win_ole.c: In function 'HB_FUN_TOLEAUTO_ONERROR':
      ../../win_ole.c:1861: warning: cast to pointer from integer of different size
      ../../win_regc.c: In function 'hb_regkeyconv':
      ../../win_regc.c:77: warning: cast to pointer from integer of different size
      ../../win_regc.c: In function 'HB_FUN_WIN_REGCREATEKEYEX':
      ../../win_regc.c:82: warning: cast to pointer from integer of different size
      ../../win_regc.c:96: warning: cast from pointer to integer of different size
      ../../win_regc.c: In function 'HB_FUN_WIN_REGOPENKEYEX':
      ../../win_regc.c:118: warning: cast from pointer to integer of different size
      ../../win_regc.c: In function 'HB_FUN_WIN_REGCLOSEKEY':
      ../../win_regc.c:193: warning: cast to pointer from integer of different size
      ../../wapi_commctrl.c: In function 'HB_FUN_WAPI_TABCTRL_GETITEMRECT':
      ../../wapi_commctrl.c:521: warning: value computed is not used
      ../../wapi_commctrl.c: In function 'HB_FUN_WAPI_TABCTRL_GETIMAGELIST':
      ../../wapi_commctrl.c:553: warning: cast from pointer to integer of different size
      ../../wapi_commctrl.c: In function 'HB_FUN_WAPI_TABCTRL_ADJUSTRECT':
      ../../wapi_commctrl.c:632: warning: value computed is not used
      ../../wapi_commctrl.c: In function 'HB_FUN_WAPI_TABCTRL_CREATE':
      ../../wapi_commctrl.c:782: warning: cast to pointer from integer of different size
      ../../wapi_commctrl.c:786: warning: cast from pointer to integer of different size
      ../../wapi_winbase.c: In function 'HB_FUN_WAPI_GETMODULEHANDLE':
      ../../wapi_winbase.c:83: warning: cast to pointer from integer of different size
      ../../hbserv.c: In function 's_serviceSetHBSig':
      ../../hbserv.c:638: warning: passing argument 1 of 'SetUnhandledExceptionFilter' from incompatible pointer type
      ../../hbxml.c: In function 'HB_FUN_HBXML_DATAREAD':
      ../../hbxml.c:2321: warning: cast to pointer from integer of different size
2009-03-21 14:07:25 +00:00
Viktor Szakats
90697727c5 2009-03-21 14:23 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
  * utils/hbmk2/hbmk2.prg
  + config/win/mingw64.cf
  * config/win/mingw.cf
    + Added support for mingw64. MinGW 64-bit mode.
      Harbour doesn't build yet due to some compiling errors
      (plus some internal MinGW ones to be investigated).
    ; TODO: Add support in postinst.sh.

  * source/vm/extrap.c
    * win32 -> win.
2009-03-21 13:26:41 +00:00
Viktor Szakats
85acfff985 2009-03-21 13:21 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* config/win/mingwce.cf
  * config/win/cygwin.cf
  * config/win/mingw.cf
    + Added -fomit-frame-pointer switch for win/gcc family.
      It causes quite a huge improvement in all areas, bringing
      MinGW very close to MSVC and even faster in many aspects.
      Some FP operations are still slower a bit, and this seems
      to be the only remaining - small - disadvantage.
      For C level debugging this switch should be turned off AFAIK.
2009-03-21 12:22:55 +00:00
Viktor Szakats
b8451d6e7c 2009-03-21 10:17 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* tests/bnchmark/bnch_win.bat
    + Added option to override benchmark program name, so now
      it can be used with customized speedtst versions or other
      benchmark apps.
    + Added HB_CMP_FLAGS envvar to define common compilation flags.
    + Now echoing all benchmark settings to output.

  * config/win/icc.cf
    + Added -nologo.
    * Changed -W4 to -W3, as -W3 is really verbose in this compiler.

  * INSTALL
  * bin/hb-mkdyn.bat
  * utils/hbmk2/hbmk2.prg
  + config/win/iccia64.cf
    + Added Intel(R) C++ Compiler IA64 support.
      All Harbour libs (including contribs) compiled successfully,
      but I couldn't try linking any executables.
    ; TODO: Add processor information to appropriate places into
            Harbour. Currently we have only bit width and endianness,
            but no actual CPU family info. CPU instruction families
            Harbour can currently be built on out of the box:
            x86, amd64, IA64, PPC, PPC64, ARM.
2009-03-21 09:23:32 +00:00
Viktor Szakats
31b813cd7e 2009-03-20 17:33 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* tests/bnchmark
  + tests/bnchmark/bnch_win.bat
    + Added speedtst comparison tool, featuring:
      - CPU + physical memory info dump from WMI
      - Tasklist before and after test runs
      - Harbour /build info included in output
      - Complete dump of commands executed, hbmk2 output
      - Dir listing of tested .exes
      - All tests repeated three times by default (configurable)
      - 8 slots maximum to compare different speedtst scenarios
      - By default it will run -st vs. -mt tests.
    ; Please read the comments in the file for usage instructions.
      Here's an example for parameter setup:
      --
      set PATH=C:\devl\MinGW-432\bin;%PATH%
      set HB_BENCH_RUNS=3
      set HB_RUN_FLAGS=--exclude=030
      set HB_CMP_FLAGS_1=-gc2
      set HB_CMP_FLAGS_2=-gc3
      call bnch_win.bat > results.txt 2>&1
      --

  * config/rules.cf
    + Restored -ko flag. Thanks Mindaugas for analysing test result.

  * contrib/hbodbc/todbc.prg
  * contrib/hbodbc/odbc.c
    * Formatting + minor cleanups.
2009-03-20 16:38:16 +00:00
Viktor Szakats
10ce64a632 2009-03-19 12:58 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* config/rules.cf
    % Removed -ko option as it slightly decreases performance in -gc3 mode.
      (it's better in -gc[0-2] only)
2009-03-19 11:59:40 +00:00
Viktor Szakats
970ec4e61d 2009-03-18 20:17 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* source/vm/Makefile
  + source/vm/maindllp
  + source/vm/maindllp/Makefile
    + Added generation of hbmaindllp lib, to create pcode .dlls
      on Windows platform. -DHB_DYNLIB is always defined for
      this lib. This is just the first step, we will need compiler,
      hbmk2 and other changes. I'll contribute with hbmk2 changes.

  * source/vm/maindllp.c
    % Code made less verbose.
    ! Created HB_EXPORT declaration for DllEntryPoint().

  * config/win/icc.cf
    * Changed optimization to -O3 (from MSVC ones).
      With max optim (-Ox) it was just a bit faster than MSVC 2008.

  + contrib/hbqt
  + contrib/hbqt/hbqt_qabstractbutton.cpp
  + contrib/hbqt/hbqt_qdialog.cpp
  + contrib/hbqt/hbqt.h
  + contrib/hbqt/Makefile
    + Added initial QT wrapper lib layout with content posted
      by Pritpal to the list. (I did a few renames, please check
      them)

  * contrib/hbwin/hbwapi.h
    * Fixes in header.
2009-03-18 19:22:47 +00:00
Viktor Szakats
c7d56abd33 2009-03-18 00:31 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* config/rules.cf
    + Added -ko optimization switch for Harbour.
    ; TODO: Disable it for specific places of hbtest.

  * bin/hb-mkdyn.bat
    + Added missing pocc implib generation.

  * utils/hbmk2/hbmk2.prg
    + mingwce support synced with mingw some more.
      F.e. now resources are supported for mingwce executables.
2009-03-17 23:31:50 +00:00
Viktor Szakats
0a96f4ec34 2009-03-17 13:40 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* harbour-win-spec
  * harbour-wce-spec
  * make_gnu_xmingw.sh
  * make_gnu_xmingwce.sh
  * mpkg_rpm_win.sh
  * mpkg_tgz.sh
  * bin/hb-mkdyn.sh
  * bin/hb-func.sh
  * bin/postinst.sh
  * config/win/mingwce.cf
  * config/win/mingw.cf
    * CCPATH -> HB_CCPATH
    * CCPREFIX -> HB_CCPREFIX
2009-03-17 12:41:13 +00:00
Viktor Szakats
80323481d9 2009-03-16 15:18 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* INSTALL
    + Added 3.81 or upper as GNU Make requirement. Older ones
      have bugs exploitet by current .cf files.

  * contrib/hbssl/Makefile
    - Disabled for owatcom.

  * config/win/msvc.cf
    ! Fixed -TP switch. Stopped using CFLAGS.
    * Changed to use link.exe directly instead of cl.exe.

  * config/win/msvcce.cf
    * Minor cleanup.
2009-03-16 14:24:15 +00:00
Viktor Szakats
2cad8acaeb 2009-03-16 12:40 UTC+0100 Viktor Szakats (harbour.01 syenar hu)
* include/hbdefs.h
    + Enabled new Harbour types. Still incomplete, and relying
      on old unsafe types in places.

  * contrib/gtwvg/gtwvg.c
    ! Warning.

  * contrib/gtwvg/wvgcuig.c
    ! Cast errors.

  * config/win/msvc.cf
    + Enabled C++ mode. This should result in stricter compiler
      warnings/errors, and also enables to use standard init
      method (non-C++ method is broken when using LTCG
      and potentially in other scenarios like IA64). Note, this
      doesn't mean we'd allow non-ANSI C usage inside Harbour,
      so no C++ features are allowd. This won't cause any
      drawbacks for the user AFAIK, if you know otherwise, pls
      speak up. [Notice that we're using C++ mode for owatcom
      on all platforms.]

  * doc/whatsnew.txt
    + Documented win/owatcom and OpenSSL incompatibility.
      (maybe it can be resolved, I didn't spend time on it)

  * INSTALL
    * C compiler -> ANSI C compiler.
2009-03-16 12:08:23 +00:00