>Should be fixed. Please tray after:
>   2008-11-04 17:28 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)

>> ../../../thread.c(402): Warning! W869: col(25) use of '_beginthread'
>> requires build target to be multi-threaded

>add -bm to OpenWatcom switches (CPPFLAGS) in owatcom.cf

OW docs said on "bm":
-----------------
(Netware, OS/2, Win32 only) This option causes the compiler to emit into
the object file references to the appropriate multi-threaded library
name(s).  The macros _MT and __SW_BM will be predefined if "bm" is
selected.
-----------------

If "-bm" is added to owatcom.cf how it affect Harbour ST / MT ?
"appropriate multi-threaded library name(s)" refer to OW libraries ?

>2008-11-04 17:28 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
>  * harbour/source/vm/hvm.c
>  * harbour/source/vm/mainstd.c
>    * force linking main() function in OpenWatcom OS2 builds
>
>  * harbour/contrib/xhb/hbcrypt.c
>    ! casting

Thanks Przemek, AND CONGRATULATIONS  :-)
For first time in Human history we have a build complete for current Harbour - OS/2 - OpenWatcom 1.7


Not checked
[ Current Harbour code compile fine with gcc335 with just well known
warnings ]


With OpenWatcom 1.7:
- Screen output   --> clean
-----------------------
-----------------------

. 41 libraries created ---> all

- 6 executables created:  ---> all
  harbour.exe, hbpp.exe, hbdoc.exe, hbmake.exe, hbrun.exe, hbtest.exe

- New make_ow.log
Sent

OpenWatcom
==========
harbour.exe, hbpp.exe run fine
hbdoc.exe, hbmake.exe, hbrun.exe, hbtest.exe: run fine

In make_ow.log I found:

for hbvmmt:
../../../thread.c(402): Warning! W869: col(25) use of '_beginthread'
requires build target to be multi-threaded

( not -bm added until confirmation )



hbtest.exe output included below

Can you add harbour\config\os2\owatcom.cf to SVN ?

-----------------
and for config\os2\owatcom.cf:

 >[19]: CPPFLAGS = -w2 -d1 -zq -bt=NT

-bt=OS2

 >[56]: echo @%watcom%/binnt/wlink.lnk >> __link__.tmp

For now is excluded

If included, should be used SYSTEM directive and which value ?

------------------------
For each executable file format that can be created using the Open Watcom
  Linker, a specific SYSTEM directive may be used.  The SYSTEM directive
selects a subset of the available directives necessary to create each
specific executable file format.

System
Description

[...]
os2
16-bit x86 OS/2 executable

os2_dll
16-bit x86 OS/2 Dynamic Link Library

os2_pm
16-bit x86 OS/2 Presentation Manager executable

os2v2
32-bit x86 OS/2 executable

os2v2_dll
32-bit x86 OS/2 Dynamic Link Library

os2v2_pm
32-bit x86 OS/2 Presentation Manager executable

[...]

windows
16-bit x86 Windows 3.x executable

windows_dll
16-bit x86 Windows 3.x Dynamic Link Library

win_vxd
32-bit x86 Windows 3.x or 9x Virtual Device Driver

win95
32-bit x86 Windows 9x executable

win95 dll
32-bit x86 Windows 9x Dynamic Link Library

nt
32-bit x86 Windows NT character-mode executable

nt_win
32-bit x86 Windows NT windowed executable

win32
synonym for "nt_win"

nt_dll
32-bit x86 Windows NT Dynamic Link Library

win386
32-bit x86 Open Watcom extended Windows 3.x executable or Dynamic Link
Library

The various systems that we have listed above are defined in special
linker directive files which are plain ASCII text files that you can
edit.  These files are called wlink.lnk and wlsystem.lnk.

The file wlink.lnk is a special linker directive file that is
automatically processed by the Open Watcom Linker before processing any
other directives.  On a DOS, OS/2, or Windows-hosted system, this file
must be located in one of the paths specified in the PATH environment
variable.  On a QNX-hosted system, this file should be located in the
/etc directory.  A default version of this file is located in the
\watcom\binw directory on DOS-hosted systems, the \watcom\binp directory
on OS/2-hosted systems, the /etc directory on QNX-hosted systems, and
the \watcom\binnt directory on Windows 95 or Windows NT-hosted systems.
  Note that the file wlink.lnk includes the file wlsystem.lnk which is
located in the \watcom\binw directory on DOS, OS/2, or Windows-hosted
systems and the /etc directory on QNX-hosted systems.

The files wlink.lnk and wlsystem.lnk reference the WATCOM environment
variable which must be set to the directory in which you installed your
software.

In the following sections, we show some of the typical directives that
you might use to create a particular executable file format.  The common
directives are described in the chapter entitled Linker Directives and
Options.  They are "common" in the sense that they may be used with any
executable format.  There are other, less general, directives that may
be specified for a particular executable format.  In each of the
following sections, we refer you to chapters in which you will find more
information on the directives available with the executable format used.

At this point, it should be noted that various systems have adopted
particular executable file formats.  For example, both the Tenberry
Software DOS/4G(W) and FlashTek DOS extenders support one of the OS/2
executable file formats.  It is for this reason that you may find that
we direct you to a chapter which would, at first glance, seem unrelated
to the executable file format in which you are interested.

To summarize, the steps that you should follow to learn about creating a
particular executable are:

  1.Look for a section in this chapter that describes the executable
format in which you are interested.

  2.See the chapter entitled Linker Directives and Options for a
description of the common directives.

  3.If you require additional information, see also the chapter to which
we have referred you.

  4.Also check the Open Watcom C/C++ Programmer's Guide or Open Watcom
FORTRAN 77 Programmer's Guide for more information on creating specific
types of applications.

------------------------


 >[57]: echo LIB kernel32.lib, user32.lib, wsock32.lib, winspool.lib,
 >oleaut32.lib, uuid.lib, comctl32.lib, mapi32.lib >> __link__.tmp

Excluded

 >[62]: LDFLAGS = debug all OP osn=NT OP stack=65536 OP CASEEXACT

osn excluded. OpenWatcom should define one based in platform

Rest of os2\owatcom.cf untouched

-----------------


David Macias


Harbour Regression Test Suite
Copyright (c) 1999-2008, http://www.harbour-project.org/
---------------------------------------------------------------------------
      Version: Harbour 1.1.0dev (Rev. 9832)
     Compiler: Open Watcom C++ 12.70.8 (32-bit)
           OS: OS/2 4.50
   Date, Time: 2008.11.05 01:50:46
       Output: (stdout)
Shortcut opt.: ON
     Switches:
===========================================================================
R No. Line TestCall() -> Result | Expected
---------------------------------------------------------------------------
!  600 MAIN_HVMA(0)    saArray[ 1000 ]
       Result: "E BASE 1132 Bound error array access A:2:A:{.[1].};N:1000 "
     Expected: "E BASE 1132 Bound error array access "
!  601 MAIN_HVMA(0)    saArray[ 1000 ] := 1
       Result: "E BASE 1133 Bound error array assign A:1:N:1000 "
     Expected: "E BASE 1133 Bound error array assign "
!  730 MAIN_HVMA(0)    RTSTR( 00000500000000000000 )
       Result: " 16  500000000000000"
     Expected: " 21       500000000000000"
!  731 MAIN_HVMA(0)    RTSTR( 0500000000000000 )
       Result: " 16  500000000000000"
     Expected: " 17   500000000000000"
! 1075 MAIN_MATH(0)    Str(1234567890 * 1234567890 )
       Result: " 1524157875019052100"
     Expected: " 1524157875019052000"
! 1470 MAIN_STR(0)     AllTrim( NIL )
       Result: "E BASE 2022 Argument error ALLTRIM A:1:U:NIL F:S"
     Expected: "E BASE 2022 Argument error ALLTRIM F:S"
! 1471 MAIN_STR(0)     AllTrim( 100 )
       Result: "E BASE 2022 Argument error ALLTRIM A:1:N:100 F:S"
     Expected: "E BASE 2022 Argument error ALLTRIM F:S"
! 1543 MAIN_STR(0)     StrTran( NIL )
       Result: "E BASE 1126 Argument error STRTRAN A:1:U:NIL F:S"
     Expected: "E BASE 1126 Argument error STRTRAN F:S"
! 1544 MAIN_STR(0)     StrTran( 100 )
       Result: "E BASE 1126 Argument error STRTRAN A:1:N:100 F:S"
     Expected: "E BASE 1126 Argument error STRTRAN F:S"
! 1545 MAIN_STR(0)     StrTran( "AA", 1 )
       Result: "E BASE 1126 Argument error STRTRAN A:2:C:AA;N:1 F:S"
     Expected: "E BASE 1126 Argument error STRTRAN F:S"
! 2832 MAIN_ARRAY(0)   AFill( NIL )
       Result: "E BASE 6004 Argument error AFILL A:1:U:NIL "
     Expected: "E BASE 6004 Argument error AFILL "
! 2876 MAIN_ARRAY(0)   ASize( NIL )
       Result: "E BASE 2023 Argument error ASIZE A:1:U:NIL "
     Expected: "E BASE 2023 Argument error ASIZE "
! 2877 MAIN_ARRAY(0)   ASize( {} )
       Result: "E BASE 2023 Argument error ASIZE A:1:A:{.[0].} "
     Expected: "E BASE 2023 Argument error ASIZE "
! 2878 MAIN_ARRAY(0)   ASize( ErrorNew() )
       Result: "E BASE 2023 Argument error ASIZE A:1:O:ERROR Object "
     Expected: "E BASE 2023 Argument error ASIZE "
! 2879 MAIN_ARRAY(0)   ASize( NIL, 0 )
       Result: "E BASE 2023 Argument error ASIZE A:2:U:NIL;N:0 "
     Expected: "E BASE 2023 Argument error ASIZE "
! 2880 MAIN_ARRAY(0)   ASize( NIL, 1 )
       Result: "E BASE 2023 Argument error ASIZE A:2:U:NIL;N:1 "
     Expected: "E BASE 2023 Argument error ASIZE "
! 2881 MAIN_ARRAY(0)   ASize( NIL, -1 )
       Result: "E BASE 2023 Argument error ASIZE A:2:U:NIL;N:-1 "
     Expected: "E BASE 2023 Argument error ASIZE "
! 2903 MAIN_ARRAY(0)   Array( -1 )
       Result: "E BASE 1131 Bound error array dimension A:1:N:-1 "
     Expected: "E BASE 1131 Bound error array dimension "
! 2904 MAIN_ARRAY(0)   Array( 1, 0, -10 )
       Result: "E BASE 1131 Bound error array dimension A:3:N:1;N:0;N:-10 "
     Expected: "E BASE 1131 Bound error array dimension "
! 3030 MAIN_ARRAY(0)   TAEVSM()
       Result: "N10N 9N 8N 7N 6         5"
     Expected: "N10N 9N 8N 7N 6N 5N 4N 3N 2N 1         0"
! 3031 MAIN_ARRAY(0)   TASOSM1()
       Result: "NN 5NN 4NN 3NN 2         1{ 3 }"
Expected: "NN 5NN 4NN 3NN 2NN 1NN 0NN 0NN 0NN 0NN 0NN 0NN 0 0{ }"
! 3032 MAIN_ARRAY(0)   TASOSM2()
       Result: "NN 5NN 4NN 3NN 2         1{ 3 }"
     Expected: "NN 5NN 4NN 3NN 2NN 1NN 0NN 0NN 0NN 0NN 0         0{  }"
! 4709 MAIN_LAST(0)    __MRestore( "$NOTHERE.MEM", .F. )
Result: "E BASE 2005 Open error $NOTHERE.MEM A:2:C:$NOTHERE.MEM;L:.F. F:DR"
     Expected: "E BASE 2005 Open error $NOTHERE.MEM F:DR"
! 4711 MAIN_LAST(0)    __MSave( BADFNAME(), "*", .T. )
Result: "E BASE 2006 Create error *BADNAM*.MEM A:3:C:*BADNAM*.MEM;C:*;L:.T. F:DR"
     Expected: "E BASE 2006 Create error *BADNAM*.MEM F:DR"
===========================================================================
Test calls passed:       4687 ( 99.49 % )
Test calls failed:         24 ( 0.51 % )
                   ----------
            Total:       4711 ( Time elapsed: 0.17 seconds )

WARNING ! Failures detected



_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to