Przemek, Maurilio:

[Przemek]
I'm sorry I forgot about it and I do not remember the exact arguments
against TCPV40HDRS. I should wait with committing it.
Now IMHO you should agree it together. I'm not OS2 user and I cannot
make any decision here.
If you will need arbiter then please send a message here describing
problem(s) created by TCPV40HDRS here and the final default setting
will be group decision.

If this switch allows to use Harbour binaries on wider range of OS2
versions then probably it should be default. But I do not remember
what exact problems it was creating. AFAIR some additional dependences
to old socket library but I'm not sure.

Yes, it is libraries for TCP/IP

../../../../lib/os2/gcc/hbrtl.a(hbinet.o): Undefined symbol tcp_h_errno
referenced from text segment
make[3]: *** [hbrun.exe] Error 1
make[2]: *** [descend] Error 2


[Maurilio]
first of all, I'm sorry we're wasting your time with this issue.

Then, since you added the new envvar, David can build his copy with new
headers, but the 'default' build, the one that gets distributed should be with the old headers.

Those old headers make it possible for a program built with them to
run >on every copy of OS/2 starting from OS/2 Warp 3.0 up until now.
Warp 3.0 >was released in 1992 or 1993 (I don't remember exactly), while
new >headers run only on eCs and some Warp Server, so we are talking of
OS/2 >versions from around 2001-2002 up until now, but with a much lower
number of copies. I don't think eCS has sold more than a few thousands copies up until now.


I tried to build Harbour with "old" TCPIP in eComStation 1.2MR

ReleaseNotes.os2 doc say:
---------------------------------------
v3.2.2 Alpha 2:
---------------
    A few bugfixes and a couple of new features.

        o The TCP/IP headers and libraries scheme have been changed.
          The default is the current OS/2 tcpip toolkit (BSD 4.4 based).
          To target the older OS/2 tcpip stack (BSD 4.3 based) you must
          define TCPV40HDRS before including any TCP/IP headers and make
          sure usr/lib/tcpipv4 is searched before usr/lib (this is to
          get the right libsocket). It is recommended to use the -D
          compiler option for the define and either the LIBRARY_PATH or
          the -L compiler/linker option for the library.
---------------------------------------

and was explained by Maurilio earlier

So I used:
-------
  Rem set HB_OS2_NEW_TCP=yes
  set L_USR=-Le:\usr\lib\tcpipv4
-------

and Harbour compile/run fine

For hbrun.exe linking result in:
gcc -W -Wall -O2 -o hbrun.exe hbrun.o  -L../../../../lib/os2/gcc
-Le:\usr\lib\tcpipv4   -lhbextern  -lhbdebug  -lhbvm  -lhbrtl  -lhblang
 -lhbcpage  -lhbrdd  -lhbrtl  -lhbvm  -lhbmacro  -lhbpp  -lhbcplr
-lhbcommon  -lhbpcre  -lhbzlib  -lrddntx  -lrddcdx  -lrddfpt  -lhbsix
-lhbhsx  -lhbusrrdd  -lgtcgi  -lgtos2  -lgtpca  -lgtstd -lhbrtl -lsocket

which clear this error:
../../../../lib/os2/gcc/hbrtl.a(hbinet.o): Undefined symbol tcp_h_errno
referenced from text segment
make[3]: *** [hbrun.exe] Error 1
make[2]: *** [descend] Error 2


Due good results, we can leave as default, as it is:
gcc.cf: -DTCPV40HDRS
build, with a note about use of \usr\lib\tcpipv4 :
Rem set HB_OS2_NEW_TCP=yes
set L_USR=-Le:\usr\lib\tcpipv4

but Iam still not agree with name HB_OS2_NEW_TCP
Can you change to name suggested by Maurilio ?
--------------
We could call it HB_OS2_TCP32 :)
--------------

I rebuilt hbrun with MT and tested problem of Maurilio again:
--------------------------------
[E:\harbour809mt\harbour\tests]e:\harbour809mt\harbour\bin\hbrun_mt.exe
mt\mttest01.prg

Harbour 1.1.0dev (Rev. 9489)
join: .T.
result: Hello World!!! Hello World!!! Hello World!!!
static var type: B
     12345.678
     12346.678
--------------------------------

and checking with ST it fail as well with HB_THREADJOIN

speedtst.prg works fine too


Yesterday I wrote to Maurilio about Harbour for OS/2:
-------------------------------
But since I started doing Harbour releases, there are 403 downloads,
behind Windows, Dos and ahead of MacOS, Ubuntu, Fedora, Mandriva, Suse, ...
-------------------------------

Today are 404 downloads  :-)

That amount of dowloads mean a good interest in Harbour for OS/2 and
justify efforts of Przemek to maintain it clean in OS/2 and efforts of
Maurilio for explanations / hints

Next Harbour for OS/2 will be with "old" TCPIP  :-)
Or should be two versions ?

David Macias


_______________________________________________
Harbour mailing list
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to