Re: [Harbour] Re: Switch to detect undeclared vars being used

2010-02-22 Thread Maurilio Longo
Viktor,

one thing I'd like to have is the ability of the compiler to spot iVars like
it does variables, I mean unused, not declared and so on, while it now simply
ignores all of them and you get an error when executing such code.

Best regards.

Maurilio.

Viktor Szakáts wrote:
>>> lot of success.  One thing that will make our lives easier in 100,000
>>> lines
>>> of Clipper code is some sort of switch in Harbour / hbmk2 that will warn
>>> you
>>> if you are using a variable that wasn't declared by LOCAL, PRIV, MEMVAR,
>>> etc
>>> etc...  in a function.
>>>
>> If tou want to detect such occurances: -w3 -es3
> 
> You probably meant: -es2
> (there is no -es3 option in Harbour (nor Clipper))
> 
>> If you want to detect and ignore: -w0 -es2
> 
> Rather simply: -w3, -w2, or -w1
> 
> extra -es2 means: threat warnings as errors.
> 
> Brgds,
> Viktor
> 
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour
> 

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: SF.net SVN: harbour-project:[13948] trunk/harbour

2010-02-22 Thread Pritpal Bedi


Massimo Belgrano wrote:
> 
> Related function & See also
> 

Implemented: after r13953.


-
 enjoy hbIDEing...
Pritpal Bedi 
_a_student_of_software_analysis_&_design_
-- 
View this message in context: 
http://n2.nabble.com/SF-net-SVN-harbour-project-13948-trunk-harbour-tp4607167p4610819.html
Sent from the harbour-devel mailing list archive at Nabble.com.
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: SF.net SVN: harbour-project:[13948] trunk/harbour

2010-02-22 Thread Pritpal Bedi


Massimo Belgrano wrote:
> 
> Can you give me a solution for having path indipendent
> if i move the structure of project can i move
> Using =&"curdir()" ) in project directory?
> 

1. I assume you have the sources in the same folder where .hbi resides. If
yes,
2. Copy the whole folder contents and paste in the target folder.
3. Open hbIDE.ini and change the path of old project to new one.
4. Run hbIDE, and you are done.



-
 enjoy hbIDEing...
Pritpal Bedi 
_a_student_of_software_analysis_&_design_
-- 
View this message in context: 
http://n2.nabble.com/SF-net-SVN-harbour-project-13948-trunk-harbour-tp4607167p4610827.html
Sent from the harbour-devel mailing list archive at Nabble.com.
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
David,

it seems it does not find os2.a and rtl c library.

I was going to create a ld.exe which simply spits out what it received from
gcc so we can see what it needs :)

Maurilio.

David Arturo Macias Corona wrote:
> Viktor:
> 
>>> Harbour need shorter intermediate file size
> 
>>I also need a bigger house ;) It's not an option
>>unfortunately, at least I don't know of any. But
>>the source is there so anyone can try to enhance
>>it.
> 
> Perhaps you will get your bigger house before we can get a shorter
> intermediate file  :-)
> 
>>IMO rather someone should fix this OS/2 GCC
>>toolchain bug.
> 
> Yes I hope someone can modify this toolchain, but is not a bug, is a
> consequence of design
> 
>>??
> 
>>I'd think it's rather my change here:
>>   2010-02-21 15:03 UTC+0100 Viktor Szakats
> 
>>You say thank you in a rather unique way.
> 
> ???
> 
>>Ops, this was 13946.
> 
>>Anyways.
> 
> I am doing one step in each time, so I stated
> - "13945"
> - "recent libraries changes"
> to avoid confutions. It was not enough
> 
>>2010-02-21 15:03 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
>>  * config/os2/gcc.mk
>>* Changed to use 'ld' tools directly when creating
>>  Harbour dynamic libraries.
>>; Please test, it's possible that some option have to be
>>  deleted, changed, or some system/compiler libs added
>>  manually to make it work.
> 
> And now here we are in next step
> 
> Using os2gcc442:
> 
>  * $Id: ChangeLog 13951 2010-02-21 21:02:05Z vszakats $
>  2010-02-21 22:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
> ---
> make[3]: Entering directory
> `E:/harbour102/harbour/src/dynlib/obj/os2/gccomf'
> emxomfld  -shared -L../../../../../lib/os2/gccomf -Zomf  -o
> ../../../../../bin/os2/gccomf/harbour.dll @__dyn__.tmp __dyn__.def -lsocket
> emxomfld: invalid option (-shared)
> make[3]: *** [harbour.dll] Error 1
> make[3]: Leaving directory
> `E:/harbour102/harbour/src/dynlib/obj/os2/gccomf'
> make[2]: *** [descend] Error 2
> make[2]: Leaving directory `E:/harbour102/harbour/src/dynlib'
> make[1]: *** [dynlib] Error 2
> ---
> 
> and trying manually:
> 
> [E:\harbour102\harbour\src\dynlib\obj\os2\gccomf]emxomfld  -shared
> -L../../../../../lib/os2/gccomf -Zomf  -o
> ../../../../../bin/os2/gccomf/harbour.dll @__dyn__.
> tmp __dyn__.def -lsocket
> emxomfld: invalid option (-shared)
> 
> Removing -shared:
> 
> [E:\harbour102\harbour\src\dynlib\obj\os2\gccomf]emxomfld
> -L../../../../../lib/os2/gccomf -Zomf  -o
> ../../../../../bin/os2/gccomf/harbour.dll @__dyn__.tmp __dy
> n__.def -lsocket
> emxomfld: invalid option (-Zomf)
> 
> Removing -Zomf:
> 
> [E:\harbour102\harbour\src\dynlib\obj\os2\gccomf]emxomfld
> -L../../../../../lib/os2/gccomf -o
> ../../../../../bin/os2/gccomf/harbour.dll @__dyn__.tmp __dyn__.def
>  -lsocket
> weakld: cannot open library file
> '..\..\..\..\..\lib\os2\gccomf\socket_s.a'.
> emxomfld: weak prelinker failed. (rc=8)
> 
> Removing -lsocket:
> 
> 1108 lines of errors
> Some segments are:
> 
> weakld: error: Unresolved symbol (UNDEF) 'DosScanEnv'.
> weakld: info: The symbol is referenced by:
> E:\harbour102\harbour\src\common\obj\os2\gccomf\hbgete.o
> weakld: error: Unresolved symbol (UNDEF) 'recv'.
> weakld: info: The symbol is referenced by:
> E:\harbour102\harbour\src\rtl\obj\os2\gccomf\hbsocket.o
> weakld: error: Unresolved symbol (UNDEF) '_memcmp'.
> weakld: info: The symbol is referenced by:
> E:\harbour102\harbour\src\rtl\obj\os2\gccomf\hbi18n1.o
> E:\harbour102\harbour\src\macro\obj\os2\gccomf\macrolex.o
> [...]
> Error! E2028: _strcmp is an undefined reference
> Error! E2028: ___moddi3 is an undefined reference
> Error! E2028: ___divdi3 is an undefined reference
> Error! E2028: _pow is an undefined reference
> Error! E2028: _fmod is an undefined reference
> Error! E2028: _ldexp is an undefined reference
> [...]
> Error! E2028: ___main is an undefined reference
> file
> E:\harbour102\harbour\src\common\obj\os2\gccomf\expropt1.o(expropt1.o):
> undefined symbol _strcmp
> file
> E:\harbour102\harbour\src\common\obj\os2\gccomf\expropt2.o(expropt2.o):
> undefined symbol ___moddi3
> file
> E:\harbour102\harbour\src\common\obj\os2\gccomf\expropt2.o(expropt2.o):
> undefined symbol ___divdi3
> file
> E:\harbour102\harbour\src\common\obj\os2\gccomf\expropt2.o(expropt2.o):
> undefined symbol _pow
> file
> E:\harbour102\harbour\src\common\obj\os2\gccomf\expropt2.o(expropt2.o):
> undefined symbol _fmod
> file E:\harbour102\harbour\src\common\obj\os2\gccomf\hbarch.o(hbarch.o):
> undefined symbol _ldexp
> file E:\harbour102\harbour\src\common\obj\os2\gccomf\hbarch.o(hbarch.o):
> undefined symbol _frexp
> file E:\harbour102\harbour\src\common\obj\os2\gccomf\hbarch.o(hbarch.o):
> undefined symbol ___fixunsdfdi
> file E:\harbour102\harbour\src\common\obj\os2\gccomf\hbdate.o(hbdate.o):
> undefined symbol ___divdi3
> file E:\harbour102\harbour\src\common\obj\os2\gccomf\hbdate.o(hbdate.o):
> undefined symbol ___moddi3
> 
> [..

Re: [Harbour] Re: Switch to detect undeclared vars being used

2010-02-22 Thread Viktor Szakáts
Hi Maurilio,

On 2010 Feb 22, at 09:02, Maurilio Longo wrote:

> Viktor,
> 
> one thing I'd like to have is the ability of the compiler to spot iVars like
> it does variables, I mean unused, not declared and so on, while it now simply
> ignores all of them and you get an error when executing such code.

By 'iVars', you means object vars?

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] SF.net SVN: harbour-project:[13945] trunk/harbour

2010-02-22 Thread Maurilio Longo
Przemyslaw,

>   * harbour/src/vm/classes.c
> + added new PRG function:
>  __clsMsgType( ,  |  ) -> 
>is one of HB_OO_MSG_* values defined in hboo.ch or -1 if
>   message is not supported.
> 
Thanks, I'll test it shortly.

Maurilio.


-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
David,

here it is my ld.exe while building ld.exe itself after substituing it with
itself :))

(E:\harbour\ld)hbmk2 -st -shared ld.prg
hbmk2: Processing environment options: -mt -compiler=gcc
hbmk2: Processing configuration: E:\HARBOUR\BIN\hbmk.cfg
Harbour 2.1.0dev (Rev. 13913)
Copyright (c) 1999-2010, http://www.harbour-project.org/
Compiling 'ld.prg'...
Lines 8, Functions/Procedures 1
Generating C source output to 'E:\TMP\ld.c'... Done.

8<
-o ld.exe E:/SVILUPPO/GCC/V3.3.5/USR/lib/crt0.o -Le:\harbour\lib -LE:/Sviluppo/g
cc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5 -LE:/Sviluppo/gcc/v3.3.5/usr/lib
/gcc-lib -LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 -LE:/SVI
LUPPO/GCC/V3.3.5/USR/lib/tcpipv4 -LE:/SVILUPPO/GCC/V3.3.5/USR/lib -LE:/harbour/l
d -LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 -LE:/Sviluppo/g
cc/v3.3.5/usr/i386-pc-os2-emx/lib -LE:/SVILUPPO/GCC/V3.3.5/USR/i386-pc-os2-emx/l
ib -LE:/Sviluppo/gcc/v3.3.5/usr/lib E:\TMP\ld.o E:\TMP\hbmk_prvkqn.o -lhbmainstd
 -lhbcplr -lhbdebug -lharbour -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_d
ll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 -
lgcc_so_d -lc_alias -lc_dll -los2
>8

my ld.exe is a simple

function main( ... )
  ? ...
return 0

So, we can see that it points to a lot of libs, now let's see what happens
when it is called in building harbour.dll

Maurilio.



Maurilio Longo wrote:
> David,
> 
> it seems it does not find os2.a and rtl c library.
> 
> I was going to create a ld.exe which simply spits out what it received from
> gcc so we can see what it needs :)
> 
> Maurilio.
> 
> David Arturo Macias Corona wrote:
>> Viktor:
>>
 Harbour need shorter intermediate file size
>>> I also need a bigger house ;) It's not an option
>>> unfortunately, at least I don't know of any. But
>>> the source is there so anyone can try to enhance
>>> it.
>> Perhaps you will get your bigger house before we can get a shorter
>> intermediate file  :-)
>>
>>> IMO rather someone should fix this OS/2 GCC
>>> toolchain bug.
>> Yes I hope someone can modify this toolchain, but is not a bug, is a
>> consequence of design
>>
>>> ??
>>> I'd think it's rather my change here:
>>>   2010-02-21 15:03 UTC+0100 Viktor Szakats
>>> You say thank you in a rather unique way.
>> ???
>>
>>> Ops, this was 13946.
>>> Anyways.
>> I am doing one step in each time, so I stated
>> - "13945"
>> - "recent libraries changes"
>> to avoid confutions. It was not enough
>>
>>> 2010-02-21 15:03 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
>>>  * config/os2/gcc.mk
>>>* Changed to use 'ld' tools directly when creating
>>>  Harbour dynamic libraries.
>>>; Please test, it's possible that some option have to be
>>>  deleted, changed, or some system/compiler libs added
>>>  manually to make it work.
>> And now here we are in next step
>>
>> Using os2gcc442:
>>
>>  * $Id: ChangeLog 13951 2010-02-21 21:02:05Z vszakats $
>>  2010-02-21 22:01 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
>> ---
>> make[3]: Entering directory
>> `E:/harbour102/harbour/src/dynlib/obj/os2/gccomf'
>> emxomfld  -shared -L../../../../../lib/os2/gccomf -Zomf  -o
>> ../../../../../bin/os2/gccomf/harbour.dll @__dyn__.tmp __dyn__.def -lsocket
>> emxomfld: invalid option (-shared)
>> make[3]: *** [harbour.dll] Error 1
>> make[3]: Leaving directory
>> `E:/harbour102/harbour/src/dynlib/obj/os2/gccomf'
>> make[2]: *** [descend] Error 2
>> make[2]: Leaving directory `E:/harbour102/harbour/src/dynlib'
>> make[1]: *** [dynlib] Error 2
>> ---
>>
>> and trying manually:
>>
>> [E:\harbour102\harbour\src\dynlib\obj\os2\gccomf]emxomfld  -shared
>> -L../../../../../lib/os2/gccomf -Zomf  -o
>> ../../../../../bin/os2/gccomf/harbour.dll @__dyn__.
>> tmp __dyn__.def -lsocket
>> emxomfld: invalid option (-shared)
>>
>> Removing -shared:
>>
>> [E:\harbour102\harbour\src\dynlib\obj\os2\gccomf]emxomfld
>> -L../../../../../lib/os2/gccomf -Zomf  -o
>> ../../../../../bin/os2/gccomf/harbour.dll @__dyn__.tmp __dy
>> n__.def -lsocket
>> emxomfld: invalid option (-Zomf)
>>
>> Removing -Zomf:
>>
>> [E:\harbour102\harbour\src\dynlib\obj\os2\gccomf]emxomfld
>> -L../../../../../lib/os2/gccomf -o
>> ../../../../../bin/os2/gccomf/harbour.dll @__dyn__.tmp __dyn__.def
>>  -lsocket
>> weakld: cannot open library file
>> '..\..\..\..\..\lib\os2\gccomf\socket_s.a'.
>> emxomfld: weak prelinker failed. (rc=8)
>>
>> Removing -lsocket:
>>
>> 1108 lines of errors
>> Some segments are:
>>
>> weakld: error: Unresolved symbol (UNDEF) 'DosScanEnv'.
>> weakld: info: The symbol is referenced by:
>> E:\harbour102\harbour\src\common\obj\os2\gccomf\hbgete.o
>> weakld: error: Unresolved symbol (UNDEF) 'recv'.
>> weakld: info: The symbol is referenced by:
>> E:\harbour102\harbour\src\rtl\obj\os2\gccomf\hbsocket.o
>> weakld: error: Unresolved symbol (UNDEF) '_memcmp'.
>> weakld: info: The sy

[Harbour] SF.net SVN: harbour-project:[13955] trunk/harbour

2010-02-22 Thread vouchcac
Revision: 13955
  
http://harbour-project.svn.sourceforge.net/harbour-project/?rev=13955&view=rev
Author:   vouchcac
Date: 2010-02-22 09:45:25 + (Mon, 22 Feb 2010)

Log Message:
---
2010-02-22 01:41 UTC-0800 Pritpal Bedi (prit...@vouchcac.com)
  * contrib/hbide/ideharbourhelp.prg
+ Implemented: presentation of documents per "Category" field.
  
  ; QUESTION: is it worth to populate the tree with sub-category.
In my opinion, a function can belong to many categories.
If yes, what method to adopt?

Modified Paths:
--
trunk/harbour/ChangeLog
trunk/harbour/contrib/hbide/ideharbourhelp.prg


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
And here, in all of its beauty, the call to build harbour.dll

:)

Maurilio.


-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


! Building Harbour 2.1.0dev from source - http://www.harbour-project.org
! MAKE: make 3.81 D:\OS2\CMD.EXE   
! HB_BIN_INSTALL: e:\harbour\bin
! HB_LIB_INSTALL: e:\harbour\lib
! HB_INC_INSTALL: e:\harbour\include
! HB_DOC_INSTALL: e:\harbour\doc
! HB_BUILD_SHARED: yes
! HB_BUILD_STRIP: all
! HB_HOST_PLAT: os2 (x86)  HB_SHELL: os2
! HB_PLATFORM: os2 (x86) (autodetected)
! HB_COMPILER: gcc 
! Component: 'zlib' found in E:/REPOSITORY/HARBOUR/external/zlib (local)
! Component: 'pcre' found in E:/REPOSITORY/HARBOUR/external/pcre (local)
! Component: 'openssl' not found. Configure with HB_WITH_OPENSSL.
! Component: 'gpm' not supported on os2 platform
! Component: 'slang' not found. Configure with HB_WITH_SLANG.
! Component: 'curses' not supported on os2 platform
! Component: 'x11' not found. Configure with HB_WITH_X11.
! Component: 'wattcp/watt-32' not supported on os2 platform
! HB_INSTALL_PREFIX automatically set to: E:\REPOSITORY\HARBOUR
make[2]: `../../../../../lib/os2/gcc/hbcommon.a' is up to date.
make[2]: `../../../../../lib/os2/gcc/hbnortl.a' is up to date.
make[2]: `../../../../../lib/os2/gcc/hbpp.a' is up to date.
make[2]: `../../../../../lib/os2/gcc/hbcplr.a' is up to date.
gcc  -L../../../../../lib/os2/gcc   -o ..\..\..\..\..\bin\os2\gcc\harbour.exe 
harbour.o -lhbcplr -lhbpp -lhbnortl -lhbcommon -s

8<
-o ..\..\..\..\..\bin\os2\gcc\harbour.exe -s 
E:/SVILUPPO/GCC/V3.3.5/USR/lib/crt0.o -L../../../../../lib/os2/gcc 
-LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
-LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib 
-LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
-LE:/SVILUPPO/GCC/V3.3.5/USR/lib -LE:/REPOSITORY/HARBOUR/src/main/obj/os2/gcc 
-LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
-LE:/Sviluppo/gcc/v3.3.5/usr/i386-pc-os2-emx/lib 
-LE:/SVILUPPO/GCC/V3.3.5/USR/i386-pc-os2-emx/lib 
-LE:/Sviluppo/gcc/v3.3.5/usr/lib harbour.o -lhbcplr -lhbpp -lhbnortl -lhbcommon 
-lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias 
-lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll 
-los2
>8make[2]: `../../../../../lib/os2/gcc/hbvm.a' 
is up to date.
make[3]: `../../../../../../lib/os2/gcc/hbmainstd.a' is up to date.
make[3]: `../../../../../../lib/os2/gcc/hbmaindllh.a' is up to date.
make[3]: `../../../../../../lib/os2/gcc/hbvmmt.a' is up to date.
make[2]: `../../../../../lib/os2/gcc/hbrtl.a' is up to date.
make[3]: `../../../../../../lib/os2/gcc/gtcgi.a' is up to date.
! 'gtcrs' library skipped (component not found)
! 'gtdos' library skipped (platform not supported)
! 'gtgui' library skipped (platform not supported)
make[3]: `../../../../../../lib/os2/gcc/gtos2.a' is up to date.
make[3]: `../../../../../../lib/os2/gcc/gtpca.a' is up to date.
! 'gtsln' library skipped (component not found)
make[3]: `../../../../../../lib/os2/gcc/gtstd.a' is up to date.
! 'gttrm' library skipped (platform or compiler not supported)
! 'gtwin' library skipped (platform not supported)
! 'gtwvt' library skipped (platform not supported)
! 'gtxwc' library skipped (component not found)
make[2]: `../../../../../lib/os2/gcc/hbmacro.a' is up to date.
make[2]: `../../../../../lib/os2/gcc/hbcpage.a' is up to date.
make[2]: `../../../../../lib/os2/gcc/hblang.a' is up to date.
make[2]: `../../../../../lib/os2/gcc/hbrdd.a' is up to date.
make[3]: `../../../../../../lib/os2/gcc/hbnulrdd.a' is up to date.
make[3]: `../../../../../../lib/os2/gcc/rddntx.a' is up to date.
make[3]: `../../../../../../lib/os2/gcc/rddnsx.a' is up to date.
make[3]: `../../../../../../lib/os2/gcc/rddcdx.a' is up to date.
make[3]: `../../../../../../lib/os2/gcc/rddfpt.a' is up to date.
make[3]: `../../../../../../lib/os2/gcc/hbsix.a' is up to date.
make[3]: `../../../../../../lib/os2/gcc/hbhsx.a' is up to date.
make[3]: `../../../../../../lib/os2/gcc/hbusrrdd.a' is up to date.
make[3]: `../../../../../../../lib/os2/gcc/hbuddall.a' is up to date.
make[2]: `../../../../../lib/os2/gcc/hbextern.a' is up to date.
make[2]: `../../../../../lib/os2/gcc/hbdebug.a' is up to date.
gcc  -shared -L../../../../../lib/os2/gcc  -o 
../../../../../bin/os2/gcc/harbour.dll @__dyn__.tmp __dyn__.def -lsocket -s

8<
-Zdll -o ../../../../../bin/os2/gcc/harbour.dll -s 
E:/SVILUPPO/GCC/V3.3.5/USR/lib/dll0.o -L../../../../../lib/os2/gcc 
-LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
-LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib 
-LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
-LE:/SVILUPPO/GCC/V3.3.5/USR/lib -LE:/REPOSITORY/HARBOUR/src/dynlib/obj/os2/gcc 
-LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
-LE:/Sviluppo/gcc/v3.3.5/usr/i386-pc-os2-emx/lib 
-LE:/SVILUPPO/GCC/V3.3.5/USR/i386-pc-os2-emx/lib 
-LE:/Sviluppo/gcc

[Harbour] SF.net SVN: harbour-project:[13956] trunk/harbour

2010-02-22 Thread vouchcac
Revision: 13956
  
http://harbour-project.svn.sourceforge.net/harbour-project/?rev=13956&view=rev
Author:   vouchcac
Date: 2010-02-22 09:50:42 + (Mon, 22 Feb 2010)

Log Message:
---
2010-02-22 01:48 UTC-0800 Pritpal Bedi (prit...@vouchcac.com)
  + contrib/hbide/resources/harbour.png
! Missed from prev commit.

! Enabled building the Harbour Documentation structure at the 
  time of hbIDE start.

Modified Paths:
--
trunk/harbour/ChangeLog

Added Paths:
---
trunk/harbour/contrib/hbide/resources/harbour.png


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] SF.net SVN: harbour-project:[13955] trunk/harbour

2010-02-22 Thread marco bra
Version: Harbour 2.1.0dev (Rev. 13954)

Compiler: GNU C 4.4.1 (32-bit)

Platform: Linux 2.6.31-16-generic i686

I get this runtime error on Hbide pressing the "Home" icon on Document
Viewer Dock


Error BASE/1132 Bound error: array access

Called from IDEHARBOURHELP:EXECEVENT(409)

Called from (b)IDEHARBOURHELP_INSTALLSIGNALS(333)

Called from QT_QEVENTLOOP_PROCESSEVENTS(0)

Called from QEVENTLOOP:PROCESSEVENTS(0)

Called from APPEVENT(0)

Called from HBIDE:CREATE(417)

Called from MAIN(110)


Thank you
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] SF.net SVN: harbour-project:[13955] trunk/harbour

2010-02-22 Thread marco bra
Same error on Rev. 13955 ...

Best regards
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Viktor Szakáts
Nice.

Now all the absolute paths to gcc lib locations need 
to be sorted out. I can add support for $(HB_COMP_PATH_PUB) 
variable for os2/gcc, but this is not enough, as the 
relative paths also hold the gcc version number. Plus 
the logic should be checked for each gcc version, as it 
may change along the way.

Brgds,
Viktor

On 2010 Feb 22, at 10:47, Maurilio Longo wrote:

> And here, in all of its beauty, the call to build harbour.dll
> 
> :)
> 
> Maurilio.
> 
> 
> -- 
> __
> |  |  | |__| Maurilio Longo
> |_|_|_|| farmaconsult s.r.l.
> 
> 
> ! Building Harbour 2.1.0dev from source - http://www.harbour-project.org
> ! MAKE: make 3.81 D:\OS2\CMD.EXE   
> ! HB_BIN_INSTALL: e:\harbour\bin
> ! HB_LIB_INSTALL: e:\harbour\lib
> ! HB_INC_INSTALL: e:\harbour\include
> ! HB_DOC_INSTALL: e:\harbour\doc
> ! HB_BUILD_SHARED: yes
> ! HB_BUILD_STRIP: all
> ! HB_HOST_PLAT: os2 (x86)  HB_SHELL: os2
> ! HB_PLATFORM: os2 (x86) (autodetected)
> ! HB_COMPILER: gcc 
> ! Component: 'zlib' found in E:/REPOSITORY/HARBOUR/external/zlib (local)
> ! Component: 'pcre' found in E:/REPOSITORY/HARBOUR/external/pcre (local)
> ! Component: 'openssl' not found. Configure with HB_WITH_OPENSSL.
> ! Component: 'gpm' not supported on os2 platform
> ! Component: 'slang' not found. Configure with HB_WITH_SLANG.
> ! Component: 'curses' not supported on os2 platform
> ! Component: 'x11' not found. Configure with HB_WITH_X11.
> ! Component: 'wattcp/watt-32' not supported on os2 platform
> ! HB_INSTALL_PREFIX automatically set to: E:\REPOSITORY\HARBOUR
> make[2]: `../../../../../lib/os2/gcc/hbcommon.a' is up to date.
> make[2]: `../../../../../lib/os2/gcc/hbnortl.a' is up to date.
> make[2]: `../../../../../lib/os2/gcc/hbpp.a' is up to date.
> make[2]: `../../../../../lib/os2/gcc/hbcplr.a' is up to date.
> gcc  -L../../../../../lib/os2/gcc   -o ..\..\..\..\..\bin\os2\gcc\harbour.exe 
> harbour.o -lhbcplr -lhbpp -lhbnortl -lhbcommon -s
> 
> 8<
> -o ..\..\..\..\..\bin\os2\gcc\harbour.exe -s 
> E:/SVILUPPO/GCC/V3.3.5/USR/lib/crt0.o -L../../../../../lib/os2/gcc 
> -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
> -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib 
> -LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
> -LE:/SVILUPPO/GCC/V3.3.5/USR/lib -LE:/REPOSITORY/HARBOUR/src/main/obj/os2/gcc 
> -LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
> -LE:/Sviluppo/gcc/v3.3.5/usr/i386-pc-os2-emx/lib 
> -LE:/SVILUPPO/GCC/V3.3.5/USR/i386-pc-os2-emx/lib 
> -LE:/Sviluppo/gcc/v3.3.5/usr/lib harbour.o -lhbcplr -lhbpp -lhbnortl 
> -lhbcommon -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 
> -lgcc_so_d -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 
> -lgcc_so_d -lc_alias -lc_dll -los2
> >8make[2]: 
> `../../../../../lib/os2/gcc/hbvm.a' is up to date.
> make[3]: `../../../../../../lib/os2/gcc/hbmainstd.a' is up to date.
> make[3]: `../../../../../../lib/os2/gcc/hbmaindllh.a' is up to date.
> make[3]: `../../../../../../lib/os2/gcc/hbvmmt.a' is up to date.
> make[2]: `../../../../../lib/os2/gcc/hbrtl.a' is up to date.
> make[3]: `../../../../../../lib/os2/gcc/gtcgi.a' is up to date.
> ! 'gtcrs' library skipped (component not found)
> ! 'gtdos' library skipped (platform not supported)
> ! 'gtgui' library skipped (platform not supported)
> make[3]: `../../../../../../lib/os2/gcc/gtos2.a' is up to date.
> make[3]: `../../../../../../lib/os2/gcc/gtpca.a' is up to date.
> ! 'gtsln' library skipped (component not found)
> make[3]: `../../../../../../lib/os2/gcc/gtstd.a' is up to date.
> ! 'gttrm' library skipped (platform or compiler not supported)
> ! 'gtwin' library skipped (platform not supported)
> ! 'gtwvt' library skipped (platform not supported)
> ! 'gtxwc' library skipped (component not found)
> make[2]: `../../../../../lib/os2/gcc/hbmacro.a' is up to date.
> make[2]: `../../../../../lib/os2/gcc/hbcpage.a' is up to date.
> make[2]: `../../../../../lib/os2/gcc/hblang.a' is up to date.
> make[2]: `../../../../../lib/os2/gcc/hbrdd.a' is up to date.
> make[3]: `../../../../../../lib/os2/gcc/hbnulrdd.a' is up to date.
> make[3]: `../../../../../../lib/os2/gcc/rddntx.a' is up to date.
> make[3]: `../../../../../../lib/os2/gcc/rddnsx.a' is up to date.
> make[3]: `../../../../../../lib/os2/gcc/rddcdx.a' is up to date.
> make[3]: `../../../../../../lib/os2/gcc/rddfpt.a' is up to date.
> make[3]: `../../../../../../lib/os2/gcc/hbsix.a' is up to date.
> make[3]: `../../../../../../lib/os2/gcc/hbhsx.a' is up to date.
> make[3]: `../../../../../../lib/os2/gcc/hbusrrdd.a' is up to date.
> make[3]: `../../../../../../../lib/os2/gcc/hbuddall.a' is up to date.
> make[2]: `../../../../../lib/os2/gcc/hbextern.a' is up to date.
> make[2]: `../../../../../lib/os2/gcc/hbdebug.a' is up to date.
> gcc  -shared -L../../../../../lib/os2/gcc  -o 
> ../../../../../bin/os2/gcc/harbour.dll @__dyn__.tmp __dyn__.def -lsocket -s
> 
> 8<-

[Harbour] SF.net SVN: harbour-project:[13957] trunk/harbour

2010-02-22 Thread vouchcac
Revision: 13957
  
http://harbour-project.svn.sourceforge.net/harbour-project/?rev=13957&view=rev
Author:   vouchcac
Date: 2010-02-22 10:05:25 + (Mon, 22 Feb 2010)

Log Message:
---
2010-02-22 02:03 UTC-0800 Pritpal Bedi (prit...@vouchcac.com)
  * contrib/hbide/ideharbourhelp.prg
! A rare-condition bug fix. Thanks Marco.

Modified Paths:
--
trunk/harbour/ChangeLog
trunk/harbour/contrib/hbide/ideharbourhelp.prg


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
Viktor,

I'm checking, a part is from an environment var named library_path which is
set by GCC

(E:\harbour\ld)set library_path
LIBRARY_PATH=E:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5;E:/SVI
LUPPO/GCC/V3.3.5/USR/lib/tcpipv4;E:/SVILUPPO/GCC/V3.3.5/USR/lib;D:\JAVA11\LIB;

But it seems to be using some other path which I'm trying to figure out where
it comes from.

Maurilio.


Viktor Szakáts wrote:
> Nice.
> 
> Now all the absolute paths to gcc lib locations need 
> to be sorted out. I can add support for $(HB_COMP_PATH_PUB) 
> variable for os2/gcc, but this is not enough, as the 
> relative paths also hold the gcc version number. Plus 
> the logic should be checked for each gcc version, as it 
> may change along the way.
> 
> Brgds,
> Viktor
> 
> On 2010 Feb 22, at 10:47, Maurilio Longo wrote:
> 
>> And here, in all of its beauty, the call to build harbour.dll
>>
>> :)
>>
>> Maurilio.
>>
>>
>> -- 
>> __
>> |  |  | |__| Maurilio Longo
>> |_|_|_|| farmaconsult s.r.l.
>>
>> 
>> ! Building Harbour 2.1.0dev from source - http://www.harbour-project.org
>> ! MAKE: make 3.81 D:\OS2\CMD.EXE   
>> ! HB_BIN_INSTALL: e:\harbour\bin
>> ! HB_LIB_INSTALL: e:\harbour\lib
>> ! HB_INC_INSTALL: e:\harbour\include
>> ! HB_DOC_INSTALL: e:\harbour\doc
>> ! HB_BUILD_SHARED: yes
>> ! HB_BUILD_STRIP: all
>> ! HB_HOST_PLAT: os2 (x86)  HB_SHELL: os2
>> ! HB_PLATFORM: os2 (x86) (autodetected)
>> ! HB_COMPILER: gcc 
>> ! Component: 'zlib' found in E:/REPOSITORY/HARBOUR/external/zlib (local)
>> ! Component: 'pcre' found in E:/REPOSITORY/HARBOUR/external/pcre (local)
>> ! Component: 'openssl' not found. Configure with HB_WITH_OPENSSL.
>> ! Component: 'gpm' not supported on os2 platform
>> ! Component: 'slang' not found. Configure with HB_WITH_SLANG.
>> ! Component: 'curses' not supported on os2 platform
>> ! Component: 'x11' not found. Configure with HB_WITH_X11.
>> ! Component: 'wattcp/watt-32' not supported on os2 platform
>> ! HB_INSTALL_PREFIX automatically set to: E:\REPOSITORY\HARBOUR
>> make[2]: `../../../../../lib/os2/gcc/hbcommon.a' is up to date.
>> make[2]: `../../../../../lib/os2/gcc/hbnortl.a' is up to date.
>> make[2]: `../../../../../lib/os2/gcc/hbpp.a' is up to date.
>> make[2]: `../../../../../lib/os2/gcc/hbcplr.a' is up to date.
>> gcc  -L../../../../../lib/os2/gcc   -o 
>> ..\..\..\..\..\bin\os2\gcc\harbour.exe harbour.o -lhbcplr -lhbpp -lhbnortl 
>> -lhbcommon -s
>>
>> 8<
>> -o ..\..\..\..\..\bin\os2\gcc\harbour.exe -s 
>> E:/SVILUPPO/GCC/V3.3.5/USR/lib/crt0.o -L../../../../../lib/os2/gcc 
>> -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
>> -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib 
>> -LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
>> -LE:/SVILUPPO/GCC/V3.3.5/USR/lib 
>> -LE:/REPOSITORY/HARBOUR/src/main/obj/os2/gcc 
>> -LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
>> -LE:/Sviluppo/gcc/v3.3.5/usr/i386-pc-os2-emx/lib 
>> -LE:/SVILUPPO/GCC/V3.3.5/USR/i386-pc-os2-emx/lib 
>> -LE:/Sviluppo/gcc/v3.3.5/usr/lib harbour.o -lhbcplr -lhbpp -lhbnortl 
>> -lhbcommon -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 
>> -lgcc_so_d -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 
>> -lgcc_so_d -lc_alias -lc_dll -los2
>> >8make[2]: 
>> `../../../../../lib/os2/gcc/hbvm.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/hbmainstd.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/hbmaindllh.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/hbvmmt.a' is up to date.
>> make[2]: `../../../../../lib/os2/gcc/hbrtl.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/gtcgi.a' is up to date.
>> ! 'gtcrs' library skipped (component not found)
>> ! 'gtdos' library skipped (platform not supported)
>> ! 'gtgui' library skipped (platform not supported)
>> make[3]: `../../../../../../lib/os2/gcc/gtos2.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/gtpca.a' is up to date.
>> ! 'gtsln' library skipped (component not found)
>> make[3]: `../../../../../../lib/os2/gcc/gtstd.a' is up to date.
>> ! 'gttrm' library skipped (platform or compiler not supported)
>> ! 'gtwin' library skipped (platform not supported)
>> ! 'gtwvt' library skipped (platform not supported)
>> ! 'gtxwc' library skipped (component not found)
>> make[2]: `../../../../../lib/os2/gcc/hbmacro.a' is up to date.
>> make[2]: `../../../../../lib/os2/gcc/hbcpage.a' is up to date.
>> make[2]: `../../../../../lib/os2/gcc/hblang.a' is up to date.
>> make[2]: `../../../../../lib/os2/gcc/hbrdd.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/hbnulrdd.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/rddntx.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/rddnsx.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/rddcdx.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/rddfpt.a' is up to date.
>> make[3]: `../../../../../../lib

Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
Viktor,

but, a lot of references could be simplified, for example:

../../../../../src/common/obj/os2/gcc/expropt2.o

all common objects are inside src/common/obj/os2/gcc an so they could be
referenced as src/common/obj/os2/*.o

If gcc does not expand them and leaves to ld this task than we should be ok!

Maurilio.



-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] SF.net SVN: harbour-project:[13937] trunk/harbour

2010-02-22 Thread Przemysław Czerpak
On Mon, 22 Feb 2010, Xavi wrote:

Hi Xavi,

> Okay. Well..., If it's not possible know the type of adapter
> (Ethernet, Token Ring, ...) on other OS not Windows. :(

It's is possible. Just like many other things which still do
not exists in MS-Windows and we will have to wait next 10
years until MS discover them and add some support for it in
WinSOCK.X.Y.Z which will work correctly in version X.Y.Z + N.
There is only one question: Why we should add such things?
The fact that sth is possible on some platforms does not mean
that it has to be implemented.

> #include "hbsocket.ch"
> proc main( noAlias )
> local iface
> ? os(), version()
> ? "interfaces:"
> for each iface in hb_inetIfInfo( !empty( noAlias ), 0 )
>? "Family  :", iface[HB_SOCKET_IFINFO_FAMILY]
>? "Name .. :", iface[HB_SOCKET_IFINFO_NAME]
>? "Flags . :", iface[HB_SOCKET_IFINFO_FLAGS]
>? "Address ... :", iface[HB_SOCKET_IFINFO_ADDR]
>? "Mask .. :", iface[HB_SOCKET_IFINFO_NETMASK]
>? "Bradcast .. :", iface[HB_SOCKET_IFINFO_BROADCAST]
>? "P2P :", iface[HB_SOCKET_IFINFO_P2PADDR]
>? "MAC ... :", iface[HB_SOCKET_IFINFO_HWADDR]
>? "Gateway ... :", iface[HB_SOCKET_IFINFO_GATEWAY]
>? '---'
> next
> ?
> Wait
> return

Why you added HB_SOCKET_IFINFO_GATEWAY?
What programs do you plan to write which will need such information?
How do you know that which gateway belongs to each IP address?
It's possible that aliases uses different gateways (at least in normal
systems). I do not see any code which tries to bind gateway addresses
with IP addresses so HB_SOCKET_IFINFO_GATEWAY contains correct
information only when the same gateway is used by all aliases.

MS-Windows does not have interface names as other hosts. AFAIR windows
ports of some *nix tools like ifconfing used IP address as interface
name so I decided to use the same. You added code which replace this
IP addres with "localhost" string for LOOPBACK interfaces. Why?
Do you know that it's possible to have more then one LOOPBACK interface
with different addresses?

You created exception with socket initialization for single function only.
This code should be removed. We may decide to add automatic socket
initialization to hbsocket.c code in the future but in such case it will
have to be global feature not hacks in each single function.
Now we have automatic initialization for HB_INET*() PRG functions and
here the problem should be fixed. It's enough to add:
   HB_INET_INITIALIZE();
to HB_INETIFINFO() before hb_socketGetIFaces(). I'll commit the fix
in a while. Thank you very much for information about the problem.

hb_arrayGetC() returns address to dynamically allocated memory block
which should be freed by hb_itemFreeC(). Now this code causes memory
leak.

Is iphlpapi.dll loaded by application at startup and keep alive for
whole application running time?
If not then storing pointer to GetAdaptersInfo() in static variable
seems to be a little bit risk because such address may change.
BTW in which Windows version GetAdaptersInfo() was added?

This code does not detect aliases. It has to be redesigned to eliminate
them.

best regards,
Przemek
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Viktor Szakáts
Hi Maurilio,

> but, a lot of references could be simplified, for example:
> 
> ../../../../../src/common/obj/os2/gcc/expropt2.o
> 
> all common objects are inside src/common/obj/os2/gcc an so they could be
> referenced as src/common/obj/os2/*.o
> 
> If gcc does not expand them and leaves to ld this task than we should be ok!

Referencing objects using wildcards is very error prone, 
and cannot be considered good practice. Build process just 
drops control over what's included and what's not. F.e. 
it only works reliably for clean builds. (Also, *.o picks 
everything, while we only need *_dyn. on some other 
platforms, so it's also not portable and generic solution)
So I don't want to do such simplification, even if it's 
allowed by some tools.

I still think the solution here is fixing OS/2 toolchain.
Spending time to develop hacks to work around such 3rd 
party bugs is not very optimal.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] SF.net SVN: harbour-project:[13957] trunk/harbour

2010-02-22 Thread marco bra
Hbide from rev. 13957 playing with Document Viewer Dock

i set as Harbour installation root "/home/ubuntu/src/harbour" and i live the
"doc folder prefix" empty  pressing the green upper row i get this runtime
error

Unrecoverable error 6005: Exception SIGSEGV at address 0x5d
Called from QT_QTREEWIDGET_SETCURRENTITEM(0)
Called from QTREEWIDGET:SETCURRENTITEM(0) in ../../../TQTreeWidget.prg
Called from IDEHARBOURHELP:EXECEVENT(428) in ideharbourhelp.prg
Called from (b)IDEHARBOURHELP_INSTALLSIGNALS(336) in ideharbourhelp.prg
Called from QT_QEVENTLOOP_PROCESSEVENTS(0)
Called from QEVENTLOOP:PROCESSEVENTS(0) in ../../../TQEventLoop.prg
Called from APPEVENT(0) in ../../../xbpgeneric.prg
Called from HBIDE:CREATE(417) in hbide.prg
Called from MAIN(110) in hbide.prg

Thank you
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
Viktor,

Viktor Szakáts wrote:
> Referencing objects using wildcards is very error prone, 
> and cannot be considered good practice. Build process just 
> drops control over what's included and what's not. F.e. 
> it only works reliably for clean builds. (Also, *.o picks 
> everything, while we only need *_dyn. on some other 
> platforms, so it's also not portable and generic solution)
> So I don't want to do such simplification, even if it's 
> allowed by some tools.
> 
> I still think the solution here is fixing OS/2 toolchain.
> Spending time to develop hacks to work around such 3rd 
> party bugs is not very optimal.
> 

Sure, I agree with you, I'm just fearing it could take _a long_ time before
the tool chain can be fixed, so I was looking at this as a work-around for the
OS/2 platform only.

Anyway, given we have the command line for ld we should be able to make it
work even with full objects specification.

Maurilio.

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] SF.net SVN: harbour-project:[13937] trunk/harbour

2010-02-22 Thread Viktor Szakáts
Hi Przemek,

> If not then storing pointer to GetAdaptersInfo() in static variable
> seems to be a little bit risk because such address may change.
> BTW in which Windows version GetAdaptersInfo() was added?

The whole .dll is not available on my Win95 system, but 
it's there already on Win98.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] SF.net SVN: harbour-project:[13937] trunk/harbour

2010-02-22 Thread Lorenzo Fiorini
On Sat, Feb 20, 2010 at 6:07 PM,   wrote:

>      Please use this code on different non MS-Windows platforms:
>
>            proc main( noAlias )
>               local iface
>               ? os(), version()
>               ? "interfaces:"
>               for each iface in hb_inetIfInfo( !empty( noAlias ), 0 )
>                  ? hb_valToExp( iface )
>               next
>               ?
>            return
>
>      and check if it returns correct information about available
>      interfaces.

Many thanks, it works as expected under Ubuntu 10.04 i386 alpha status
and Centos 5.4 i386.

best regards,
Lorenzo
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
Anyway,

(E:\REPOSITORY\HARBOUR\src\dynlib\obj\os2\gcc)ld -Zdll @__dyn__.tmp

this fails with the runtime symbols not found, so, ld supports @filename to
list the needed .o files.

Maurilio.



-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] SF.net SVN: harbour-project:[13937] trunk/harbour

2010-02-22 Thread Chen Kedem
> BTW in which Windows version GetAdaptersInfo() was added?

It is missing from Win95 (and BCB 3.0)

It exists in WinNT4.0 inside iphlpapi.dll (and in BCB 5.0 iphlpapi.h but is not
documented in Win32 API that arrive with BCB 5.0)

  Chen.
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] SF.net SVN: harbour-project:[13952] trunk/harbour

2010-02-22 Thread Vailton Renato
Pritpal, your work is excellent! But it would be the case for this
doc/writer feature being mounted on an application separately? I think
the tool is very good, but would be much better if we could work with
a maximized window and a toolbar specifically for this application ...
I've been thinking and I think it would be much better, more
productive (and less confusing) to separate it into two separate
applications... least because they have different objectives. What do
you think?

Again congratulations,
Vailton Renato
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
Ok,

this command

ld -Zdll -s -o harbour.dll E:/SVILUPPO/GCC/V3.3.5/USR/lib/dll0.o
-L../../../../../lib/os2/gcc
-LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5
-LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib -LE:/Sviluppo/gcc/v3.3.5/usr/lib
@__dyn__.tmp __dyn__.def -lsocket -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias
-lc_dll -los2 -lgcc_so_d

builds harbour.dll without errors, now, it remains to be seen if the .dll works 
.)

Maurilio.


Maurilio Longo wrote:
> Anyway,
> 
> (E:\REPOSITORY\HARBOUR\src\dynlib\obj\os2\gcc)ld -Zdll @__dyn__.tmp
> 
> this fails with the runtime symbols not found, so, ld supports @filename to
> list the needed .o files.
> 
> Maurilio.
> 
> 
> 

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] SF.net SVN: harbour-project:[13952] trunk/harbour

2010-02-22 Thread marco bra
Pritbal please consider.

I agree with Renato

I hope in something RAD functions/tools in hbide

Congratulation.

Thank you
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] SF.net SVN: harbour-project:[13952] trunk/harbour

2010-02-22 Thread Massimo Belgrano
Imo is right the idea having one exe
Hbide is Good for read and modify  all harbour source and read and modify
also Documentation

If you read source you can start documenting, and updating source
When you modify documentation you require also search find in file in
c\harbour  and subdir and also you need basic editing capability

I Think with future/possible a svn integration (like visual studio) we can
easy upload harbour modification or modification to documentation
Maj be that you think that is not same windows to be clear, docking windows
require also same idea to be productive, ...in first time i think that must
be only two, when you open one automatically close another...
How manage Multiple important activity opened ?
Think that the problem is Have different size

2010/2/22 Vailton Renato 

> Pritpal, your work is excellent! But it would be the case for this
> doc/writer feature being mounted on an application separately? I think
> the tool is very good, but would be much better if we could work with
> a maximized window and a toolbar specifically for this application ...
> I've been thinking and I think it would be much better, more
> productive (and less confusing) to separate it into two separate
> applications... least because they have different objectives. What do
> you think?
>
> Again congratulations,
> Vailton Renato
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour
>


-- 
Massimo Belgrano
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread David Arturo Macias Corona

Maurilio:

>it seems it does not find os2.a and rtl c library.

When we call ld.exe/emxomfld.exe directly perhaps is missing all 
environment values used by gcc settings


>I was going to create a ld.exe which simply spits out what it received 
>from gcc so we can see what it needs :)



>here it is my ld.exe while building ld.exe itself after substituing it
>with itself :))

>(E:\harbour\ld)hbmk2 -st -shared ld.prg
>hbmk2: Processing environment options: -mt -compiler=gcc

-st and -mt  ?

[...]

>my ld.exe is a simple

>function main( ... )
>  ? ...
>return 0

>So, we can see that it points to a lot of libs, now let's see what
>happens when it is called in building harbour.dll

OK

>And here, in all of its beauty, the call to build harbour.dll
>
>:)

>gcc  -shared -L../../../../../lib/os2/gcc  -o
>../../../../../bin/os2/gcc/harbour.dll @__dyn__.tmp __dyn__.def
>-lsocket -s

>8<
>-Zdll -o ../../../../../bin/os2/gcc/harbour.dll -s 
>E:/SVILUPPO/GCC/V3.3.5/USR/lib/dll0.o -L../../../../../lib/os2/gcc 
>-LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
>-LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib 
>-LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5

>-LE:/SVILUPPO/GCC/V3.3.5/USR/lib
>-LE:/REPOSITORY/HARBOUR/src/dynlib/obj/os2/gcc
>-LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5
>-LE:/Sviluppo/gcc/v3.3.5/usr/i386-pc-os2-emx/lib
>-LE:/SVILUPPO/GCC/V3.3.5/USR/i386-pc-os2-emx/lib
>-LE:/Sviluppo/gcc/v3.3.5/usr/lib
>../../../../../src/common/obj/os2/gcc/expropt1.o

[...]

>../../../../../src/vm/obj/os2/gcc/runner.o
>../../../../../src/vm/obj/os2/gcc/vm.o __dyn__.def -lsocket -lc_alias
>-lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias
>-lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias
>-lc_dll -los2
>>8


You obtain same info as I reported before using -v switch in gcc.
See next part of original message
 You can see detailed info in messages from:
   OS/2: harbourm.dll
   4/10/09 07:28 AM

>>>==

At last gcc is expanding __dyn__.tmp generating a long expression

I am intrigued with long expression reported as obtained with -v in gcc

Recalling the parsed structure:
---

  emxomfld.exe -Zdll
-o ../../../../../bin/os2/gcc/harbour.dll
E:/usr/lib/dll0.obj
-L../../../../../lib/os2/gcc
-LE:/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5
-LE:/usr/lib/gcc-lib
-LE:/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5
-LE:/usr/lib
-LE:/harbour909f/harbour/source/dynlib/obj/os2/gcc
-LE:/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5
-LE:/usr/i386-pc-os2-emx/lib
-LE:/USR/i386-pc-os2-emx/lib
-LE:/usr/lib
-LE:/usr/lib

..\..\..\..\..\source\common\obj\os2\gcc\expropt1.obj

[rest of .obj files list]

..\..\..\..\..\source\vm\obj\os2\gcc\vm.obj
__dyn__.def -lsocket
-lc_alias
-lc_dll
-los2
-lgcc_so_d
-lc_alias
-lc_dll
-los2
-lend
--

excluding "ld.exe" or "emxomfld.exe" rest are send to ld or emxomfld
Is a long chain
==

What I see as differences with your and my results
- You are using:
gcc  -shared ... -lsocket -s
  and I am using
gcc  -shared -Zomf... -lsocket
  -Zomf is explained by OMF type, but -s ?
- In my case gcc add this list
  -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 -lend
  while in your case is:
   -lc_alias
   -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias
   -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias
   -lc_dll -los2

Long chain of:
  [rest of .obj files list]
is what surpass 32K limit, as found before and Knut explained

>Ok,

>this command

>ld -Zdll -s -o harbour.dll E:/SVILUPPO/GCC/V3.3.5/USR/lib/dll0.o
>-L../../../../../lib/os2/gcc
>-LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5
>-LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib
>-LE:/Sviluppo/gcc/v3.3.5/usr/lib
>@__dyn__.tmp __dyn__.def -lsocket -lc_alias -lc_dll -los2 -lgcc_so_d
>-lc_alias
>-lc_dll -los2 -lgcc_so_d

>builds harbour.dll without errors,

You are adding the rest of environment values used by gcc settings, as 
gcc does when it call ld.exe/emxomfld.exe


It can work, but taking care of all values used in each compiler environment
For example, for os2gcc442:

-
PATH_EMXPGCC=E:\usr
CCENV=EMX
BUILD_ENV=EMX
BUILD_PLATFORM=OS2
DPATH=E:\usr\local442\lib;E:\usr\lib;E:\MPTN; ...
PATH=E:\usr\local442\libexec\gcc\i386-pc-os2-emx\4.4.2;E:\usr\local442\bin;E:\usr\bin; 
...

C_INCLUDE_PATH=E:/usr/local442/lib/gcc/i386-pc-os2-emx/4.4.2/include;E:/usr/local442/include;E:/usr/include;
CPLUS_INCLUDE_PATH=E:/usr/local442/include/c++/4.4.2;E:/usr/local442/include/c++/4.4.2/i386-pc-os2-emx;E:/usr/local442/include/c++/4.4.2/backward;E:/usr/local442/include;E:/usr/include;
LIBRARY_PATH=E:/usr/local442/lib/gcc/i386-pc-os2-emx/4.4.2;E:/usr/local442/lib;E:/usr/lib;
INFOPATH=E:/usr/local442/info;E:/usr/info;
PROTODIR=E:/usr/include/c++/gen
BEGINLIBPATH=E:\usr\local442\lib;E:\usr\lib;
---

[Harbour] Re: SF.net SVN: harbour-project:[13937] trunk/harbour

2010-02-22 Thread David Arturo Macias Corona

Lorenzo:


Many thanks, it works as expected under Ubuntu 10.04 i386 alpha status
and Centos 5.4 i386.


Can you post output ? Just to compare with OS/2 output

David Macias

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
Viktor,

in this path

-LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5

E:/SVILUPPO/GCC/V3.3.5/ is where I decided to put GCC on my system, while the
last 3.3.5 in the path depends on GCC version and so it changes from release
to release.

So we have to parse LIBRARY_PATH to add -L options to ld command line, but it
is not enough since we need an object, dll0.o, which is inside

E:/SVILUPPO/GCC/V3.3.5/USR/lib/dll0.o

which could be inferred from LIBRARY_PATH, but I don't know whether the new
versions of GCC have it in the same position.

This is something that has to be hard-coded inside gcc when used as dl.exe
front end which should be extracted from it in some way.

Best regards.

Maurilio.

Viktor Szakáts wrote:
> Nice.
> 
> Now all the absolute paths to gcc lib locations need 
> to be sorted out. I can add support for $(HB_COMP_PATH_PUB) 
> variable for os2/gcc, but this is not enough, as the 
> relative paths also hold the gcc version number. Plus 
> the logic should be checked for each gcc version, as it 
> may change along the way.
> 
> Brgds,
> Viktor
> 
> On 2010 Feb 22, at 10:47, Maurilio Longo wrote:
> 
>> And here, in all of its beauty, the call to build harbour.dll
>>
>> :)
>>
>> Maurilio.
>>
>>
>> -- 
>> __
>> |  |  | |__| Maurilio Longo
>> |_|_|_|| farmaconsult s.r.l.
>>
>> 
>> ! Building Harbour 2.1.0dev from source - http://www.harbour-project.org
>> ! MAKE: make 3.81 D:\OS2\CMD.EXE   
>> ! HB_BIN_INSTALL: e:\harbour\bin
>> ! HB_LIB_INSTALL: e:\harbour\lib
>> ! HB_INC_INSTALL: e:\harbour\include
>> ! HB_DOC_INSTALL: e:\harbour\doc
>> ! HB_BUILD_SHARED: yes
>> ! HB_BUILD_STRIP: all
>> ! HB_HOST_PLAT: os2 (x86)  HB_SHELL: os2
>> ! HB_PLATFORM: os2 (x86) (autodetected)
>> ! HB_COMPILER: gcc 
>> ! Component: 'zlib' found in E:/REPOSITORY/HARBOUR/external/zlib (local)
>> ! Component: 'pcre' found in E:/REPOSITORY/HARBOUR/external/pcre (local)
>> ! Component: 'openssl' not found. Configure with HB_WITH_OPENSSL.
>> ! Component: 'gpm' not supported on os2 platform
>> ! Component: 'slang' not found. Configure with HB_WITH_SLANG.
>> ! Component: 'curses' not supported on os2 platform
>> ! Component: 'x11' not found. Configure with HB_WITH_X11.
>> ! Component: 'wattcp/watt-32' not supported on os2 platform
>> ! HB_INSTALL_PREFIX automatically set to: E:\REPOSITORY\HARBOUR
>> make[2]: `../../../../../lib/os2/gcc/hbcommon.a' is up to date.
>> make[2]: `../../../../../lib/os2/gcc/hbnortl.a' is up to date.
>> make[2]: `../../../../../lib/os2/gcc/hbpp.a' is up to date.
>> make[2]: `../../../../../lib/os2/gcc/hbcplr.a' is up to date.
>> gcc  -L../../../../../lib/os2/gcc   -o 
>> ..\..\..\..\..\bin\os2\gcc\harbour.exe harbour.o -lhbcplr -lhbpp -lhbnortl 
>> -lhbcommon -s
>>
>> 8<
>> -o ..\..\..\..\..\bin\os2\gcc\harbour.exe -s 
>> E:/SVILUPPO/GCC/V3.3.5/USR/lib/crt0.o -L../../../../../lib/os2/gcc 
>> -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
>> -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib 
>> -LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
>> -LE:/SVILUPPO/GCC/V3.3.5/USR/lib 
>> -LE:/REPOSITORY/HARBOUR/src/main/obj/os2/gcc 
>> -LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 
>> -LE:/Sviluppo/gcc/v3.3.5/usr/i386-pc-os2-emx/lib 
>> -LE:/SVILUPPO/GCC/V3.3.5/USR/i386-pc-os2-emx/lib 
>> -LE:/Sviluppo/gcc/v3.3.5/usr/lib harbour.o -lhbcplr -lhbpp -lhbnortl 
>> -lhbcommon -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 
>> -lgcc_so_d -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 
>> -lgcc_so_d -lc_alias -lc_dll -los2
>> >8make[2]: 
>> `../../../../../lib/os2/gcc/hbvm.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/hbmainstd.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/hbmaindllh.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/hbvmmt.a' is up to date.
>> make[2]: `../../../../../lib/os2/gcc/hbrtl.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/gtcgi.a' is up to date.
>> ! 'gtcrs' library skipped (component not found)
>> ! 'gtdos' library skipped (platform not supported)
>> ! 'gtgui' library skipped (platform not supported)
>> make[3]: `../../../../../../lib/os2/gcc/gtos2.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/gtpca.a' is up to date.
>> ! 'gtsln' library skipped (component not found)
>> make[3]: `../../../../../../lib/os2/gcc/gtstd.a' is up to date.
>> ! 'gttrm' library skipped (platform or compiler not supported)
>> ! 'gtwin' library skipped (platform not supported)
>> ! 'gtwvt' library skipped (platform not supported)
>> ! 'gtxwc' library skipped (component not found)
>> make[2]: `../../../../../lib/os2/gcc/hbmacro.a' is up to date.
>> make[2]: `../../../../../lib/os2/gcc/hbcpage.a' is up to date.
>> make[2]: `../../../../../lib/os2/gcc/hblang.a' is up to date.
>> make[2]: `../../../../../lib/os2/gcc/hbrdd.a' is up to date.
>> make[3]: `../../../../../../lib/os2/gcc/hbnulrdd.a'

Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Viktor Szakáts
Hi Maurilio,

> in this path
> 
> -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5
> 
> E:/SVILUPPO/GCC/V3.3.5/ is where I decided to put GCC on my system, while the
> last 3.3.5 in the path depends on GCC version and so it changes from release
> to release.

Is '/gcc/3.3.5/' a mandatory element of the base dir, or 
local user preference? I mean, may I simple install it 
to 'E:/os2stuff/gcc/' instead of 'E:/Sviluppo/gcc/v3.3.5/'?

> So we have to parse LIBRARY_PATH to add -L options to ld command line, but it
> is not enough since we need an object, dll0.o, which is inside
> 
> E:/SVILUPPO/GCC/V3.3.5/USR/lib/dll0.o
> 
> which could be inferred from LIBRARY_PATH, but I don't know whether the new
> versions of GCC have it in the same position.

That's a question. Plus whether it's in the same place for 
gccomf vs plain gcc.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] OS/2: hbqt, advances

2010-02-22 Thread David Arturo Macias Corona

I continued making tests with Harbour hbqt and Qt451GA for OS/2

As I was getting many errors, I opened a "ticket" in svn.netlabs.org/qt4

With the fast and excelent help of:
 - Dmitry A. Kuminov (development)
 - Silvan Scherrer (management)
Harbour for OS/2 is very close to have support of hbqt contrib
Just remain eleven .cpp files with problems

I need help on three areas:

1) Maurilio: to check changes in hbdefs.h
   /* 28/03/2000 - maurilio.lo...@libero.it
  The same holds true when using GCC under OS/2
   */
   /* xx/02/2010 - whoe...@there.is
  Include all OS/2 API definitions to make sure other involved parties
  (such as Qt for OS/2) will get everything they want
   */
   #define OS2EMX_PLAIN_CHAR
   #define INCL_BASE
   #define INCL_PM
   #include 
   #undef INT
   #undef UINT
   #define HB_DONT_DEFINE_BASIC_TYPES

2) Pritpal:
   1. Add #ifndef QT_NO_PRINTER / #endif around the parts in the source 
code that use printing classes (QAbstractPrintDialog, QPageSetupDialog 
etc.) This btw will let it build on all platforms that don't provide 
printing support for some reason, not only OS/2.


3) Pritpal:
#ifndef QT_NO_ACCESSIBILITY / #endif around the places that complain 
about missing accessibility methods.


Below are text with relevant facts of tests, info, responses, ...

Qt for OS/2 (4.6.1) will be available soon, with printer support using CUPS

README.OS2 file contain this section, useful for management of 
unavailable classes


>
CURRENT LIMITATIONS
[...]
  4. In order to let Qt correctly detect the regional settings and 
choose the right language for translating the user interface, the LANG 
environment variable must be set. The format is

   set LANG=ll_CC
where  is the language code and  is the country code (refer to 
wikipedia.org to find correct letters for your langage and country 
if you do not know them). Note that the optional encoding part of the LANG
specification is ignored by Qt for OS/2 since 4.5.1 Beta 5 because it 
now detects the encoding automatically based on the system OS/2 settings.

Later, the correct language will be detected from the system settings so
that specifying LANG will be not necessary at all.

[...]

8. The followign classes are not available due to their rare usage or 
low importance on the OS/2 platform: QSharedMemory, QSystemSemaphore,

QInputContext, QAccessible. The following macros are defined to indicate
this: QT_NO_SYSTEMSEMAPHORE, QT_NO_SHAREDMEMORY, QT_NO_IM, 
QT_NO_ACCESSIBILITY. Applications normally use them to guard the

relevant parts of code so they should still build.
<<

David Macias


I installed Qt451GA using .wpi files from Netlabs

Using "Qt4 Command Prompt", setting os2gcc442 environment and Harbour 
environment as usual


In first try to build Harbour-hbqt it fail with this error:

E:\ecs\system\qt4\include/QtCore/qt_os2.h:59:33: error:
API_FPU_CW_Wrappers.h: No such file or directory

Searching for API_FPU_CW_Wrappers.h it does not exist anywhere in 
e:\ecs\system\qt4\include\ directories


Looking for API_FPU_CW_Wrappers.h it exist in:

E:\ecs\system\qt4\mkspecs\os2-g++
E:\ecs\system\qt4\mkspecs\default

with same date and content:

17/12/09 3:22a 145,271 0 a--- API_FPU_CW_Wrappers.h

Copying API_FPU_CW_Wrappers.h to e:\ecs\system\qt4\include\ and trying 
again build of Harbour-hbqt many errors are raised from

API_FPU_CW_Wrappers.h and then GPF with "Killed by SIGSEGV"

So something are wrong in API_FPU_CW_Wrappers.h reference, content and 
use under OS/2


[...]

Dmitry response:
>
As far as I can see, the project doesn't use qmake. For this reason, the 
include path E:\ecs\system\qt4\mkspecs\default (or 
E:\ecs\system\qt4\mkspecs\os2-g++ which is the same in this case) is not 
passed to the compiler. Adding it to the list of include directories for 
the compier should fix the problem for you. Please try and report back.


For the second case, it's the wrong include order -- a typical problem 
for the OS/2 environment caused by the way the os2.h file (which is a 
central access point to the OS/2 APIs) is organized. In your case, it 
seems that os2.h is manually included from either hbqt_hbqmainwindow.cpp 
or hbqt_hbqmainwindow.h (or from another file they include) before Qt4 
headers are included. Such an order is not supported and should not take 
place -- Qt includes must go first. Also, it's not clear why os2.h is 
included manually in a Qt source file in the first place: in theory, 
this should be never needed. If you give me more details on this, I will 
be able to suggest you the best solution.


P.S. SIGSEGV is probably due to too many errors (e.g. maybe a bug of the 
GCC4 port) and is not related to Qt4.

<<


We use GNU make
Using:

set C_INCLUDE_PATH=E:\ecs\system\qt4\mkspecs\default;%C_INCLUDE_PATH%
set 
CPLUS_INCLUDE_PATH=E:\ecs\system\qt4\mkspecs\default;%CPLUS_INCLUDE_

[Harbour] OS/2: hbqt, advances

2010-02-22 Thread David Arturo Macias Corona

I continued making tests with Harbour hbqt and Qt451GA for OS/2

As I was getting many errors, I opened a "ticket" in svn.netlabs.org/qt4

With the fast and excelent help of:
 - Dmitry A. Kuminov (development)
 - Silvan Scherrer (management)
Harbour for OS/2 is very close to have support of hbqt contrib
Just remain eleven .cpp files with problems

I need help on three areas:

1) Maurilio: to check changes in hbdefs.h
   /* 28/03/2000 - maurilio.lo...@libero.it
  The same holds true when using GCC under OS/2
   */
   /* xx/02/2010 - whoe...@there.is
  Include all OS/2 API definitions to make sure other involved parties
  (such as Qt for OS/2) will get everything they want
   */
   #define OS2EMX_PLAIN_CHAR
   #define INCL_BASE
   #define INCL_PM
   #include 
   #undef INT
   #undef UINT
   #define HB_DONT_DEFINE_BASIC_TYPES

2) Pritpal:
   1. Add #ifndef QT_NO_PRINTER / #endif around the parts in the source
code that use printing classes (QAbstractPrintDialog, QPageSetupDialog
etc.) This btw will let it build on all platforms that don't provide
printing support for some reason, not only OS/2.

3) Pritpal:
#ifndef QT_NO_ACCESSIBILITY / #endif around the places that complain
about missing accessibility methods.

Below are text with relevant facts of tests, info, responses, ...

Qt for OS/2 (4.6.1) will be available soon, with printer support using CUPS

README.OS2 file contain this section, useful for management of
unavailable classes




CURRENT LIMITATIONS
[...]
  4. In order to let Qt correctly detect the regional settings and
choose the right language for translating the user interface, the LANG
environment variable must be set. The format is
   set LANG=ll_CC
where  is the language code and  is the country code (refer to
wikipedia.org to find correct letters for your langage and country
if you do not know them). Note that the optional encoding part of the LANG
specification is ignored by Qt for OS/2 since 4.5.1 Beta 5 because it
now detects the encoding automatically based on the system OS/2 settings.
Later, the correct language will be detected from the system settings so
that specifying LANG will be not necessary at all.

[...]

8. The followign classes are not available due to their rare usage or
low importance on the OS/2 platform: QSharedMemory, QSystemSemaphore,
QInputContext, QAccessible. The following macros are defined to indicate
this: QT_NO_SYSTEMSEMAPHORE, QT_NO_SHAREDMEMORY, QT_NO_IM,
QT_NO_ACCESSIBILITY. Applications normally use them to guard the
relevant parts of code so they should still build.
<<

David Macias


I installed Qt451GA using .wpi files from Netlabs

Using "Qt4 Command Prompt", setting os2gcc442 environment and Harbour
environment as usual

In first try to build Harbour-hbqt it fail with this error:

E:\ecs\system\qt4\include/QtCore/qt_os2.h:59:33: error:
API_FPU_CW_Wrappers.h: No such file or directory

Searching for API_FPU_CW_Wrappers.h it does not exist anywhere in
e:\ecs\system\qt4\include\ directories

Looking for API_FPU_CW_Wrappers.h it exist in:

E:\ecs\system\qt4\mkspecs\os2-g++
E:\ecs\system\qt4\mkspecs\default

with same date and content:

17/12/09 3:22a 145,271 0 a--- API_FPU_CW_Wrappers.h

Copying API_FPU_CW_Wrappers.h to e:\ecs\system\qt4\include\ and trying
again build of Harbour-hbqt many errors are raised from
API_FPU_CW_Wrappers.h and then GPF with "Killed by SIGSEGV"

So something are wrong in API_FPU_CW_Wrappers.h reference, content and
use under OS/2

[...]

Dmitry response:



As far as I can see, the project doesn't use qmake. For this reason, the
include path E:\ecs\system\qt4\mkspecs\default (or
E:\ecs\system\qt4\mkspecs\os2-g++ which is the same in this case) is not
passed to the compiler. Adding it to the list of include directories for
the compier should fix the problem for you. Please try and report back.

For the second case, it's the wrong include order -- a typical problem
for the OS/2 environment caused by the way the os2.h file (which is a
central access point to the OS/2 APIs) is organized. In your case, it
seems that os2.h is manually included from either hbqt_hbqmainwindow.cpp
or hbqt_hbqmainwindow.h (or from another file they include) before Qt4
headers are included. Such an order is not supported and should not take
place -- Qt includes must go first. Also, it's not clear why os2.h is
included manually in a Qt source file in the first place: in theory,
this should be never needed. If you give me more details on this, I will
be able to suggest you the best solution.

P.S. SIGSEGV is probably due to too many errors (e.g. maybe a bug of the
GCC4 port) and is not related to Qt4.
<<


We use GNU make
Using:

set C_INCLUDE_PATH=E:\ecs\system\qt4\mkspecs\default;%C_INCLUDE_PATH%
set
CPLUS_INCLUDE_PATH=E:\ecs\system\qt4\mkspecs\default;%CPLUS_INCLUDE_PATH%

then API_FPU_CW_Wrappers.h missing has gone,

Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
Viktor,

Viktor Szakáts wrote:
> Hi Maurilio,
> 
>> in this path
>>
>> -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5
>>
>> E:/SVILUPPO/GCC/V3.3.5/ is where I decided to put GCC on my system, while the
>> last 3.3.5 in the path depends on GCC version and so it changes from release
>> to release.
> 
> Is '/gcc/3.3.5/' a mandatory element of the base dir, or 
> local user preference? I mean, may I simple install it 
> to 'E:/os2stuff/gcc/' instead of 'E:/Sviluppo/gcc/v3.3.5/'?
> 
Sure.

>> So we have to parse LIBRARY_PATH to add -L options to ld command line, but it
>> is not enough since we need an object, dll0.o, which is inside
>>
>> E:/SVILUPPO/GCC/V3.3.5/USR/lib/dll0.o
>>
>> which could be inferred from LIBRARY_PATH, but I don't know whether the new
>> versions of GCC have it in the same position.
> 
> That's a question. Plus whether it's in the same place for 
> gccomf vs plain gcc.
> 
I'd say yes, the OMF version has an .obj extension.

dir \*dll0.* /s

The volume label in drive E is Dati.
The Volume Serial Number is 812E:D5C2.

Directory of E:\Sviluppo\gcc\v3.3.5\usr\lib

11/06/07 22:52  1.955  0 a---  dll0.o
11/06/07 22:52  2.797  0 a---  dll0.obj
2 file(s)   4.752 bytes used

Regards.

Maurilio.


> Brgds,
> Viktor
> 
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour
> 

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: hbqt, advances

2010-02-22 Thread David Arturo Macias Corona

Sorry for double post

Seamonkey report failure to send, does not put message on "Sent" folder, 
but message is delivered


(?)

David Macias


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] OS/2: hbqt, advances

2010-02-22 Thread Viktor Szakáts
Hi,

> I need help on three areas:
> 
> 1) Maurilio: to check changes in hbdefs.h
>   /* 28/03/2000 - maurilio.lo...@libero.it
>  The same holds true when using GCC under OS/2
>   */
>   /* xx/02/2010 - whoe...@there.is
>  Include all OS/2 API definitions to make sure other involved parties
>  (such as Qt for OS/2) will get everything they want
>   */
>   #define OS2EMX_PLAIN_CHAR
>   #define INCL_BASE
>   #define INCL_PM
>   #include 
>   #undef INT
>   #undef UINT
>   #define HB_DONT_DEFINE_BASIC_TYPES

To give everything that's needed for HBQT, 
these must be put inside hbqt.h header, not 
hbdefs.h.

[ Including everything in central header, 
just to satisfy some contribs, or some 
specific core parts is simple, but wrong 
solution, and quite complicated to clean 
later. ]

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] OS/2: hbqt, advances

2010-02-22 Thread Viktor Szakáts
BTW, seeing hbdefs.h. Current method for OS/2 is wrong, 
and should be fixed.

 should only be included when legacy types are 
enabled. This means that  has to be manually 
#included in every source file where it's currently 
missing from, along with proper INCL_ macros needed 
in each specific source file.

I'll fix this, but it may need more passes of fixes 
to get it completely clean.

Brgds,
Viktor

On 2010 Feb 22, at 13:50, Viktor Szakáts wrote:

> Hi,
> 
>> I need help on three areas:
>> 
>> 1) Maurilio: to check changes in hbdefs.h
>>  /* 28/03/2000 - maurilio.lo...@libero.it
>> The same holds true when using GCC under OS/2
>>  */
>>  /* xx/02/2010 - whoe...@there.is
>> Include all OS/2 API definitions to make sure other involved parties
>> (such as Qt for OS/2) will get everything they want
>>  */
>>  #define OS2EMX_PLAIN_CHAR
>>  #define INCL_BASE
>>  #define INCL_PM
>>  #include 
>>  #undef INT
>>  #undef UINT
>>  #define HB_DONT_DEFINE_BASIC_TYPES
> 
> To give everything that's needed for HBQT, 
> these must be put inside hbqt.h header, not 
> hbdefs.h.
> 
> [ Including everything in central header, 
> just to satisfy some contribs, or some 
> specific core parts is simple, but wrong 
> solution, and quite complicated to clean 
> later. ]
> 
> Brgds,
> Viktor
> 

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] OS/2: hbqt, advances

2010-02-22 Thread Maurilio Longo
David,

David Arturo Macias Corona wrote:
> 
> 1) Maurilio: to check changes in hbdefs.h
>/* 28/03/2000 - maurilio.lo...@libero.it
>   The same holds true when using GCC under OS/2
>*/
>/* xx/02/2010 - whoe...@there.is
>   Include all OS/2 API definitions to make sure other involved parties
>   (such as Qt for OS/2) will get everything they want
>*/
>#define OS2EMX_PLAIN_CHAR
>#define INCL_BASE
>#define INCL_PM
>#include 
>#undef INT
>#undef UINT
>#define HB_DONT_DEFINE_BASIC_TYPES
> 
This takes in all #defines related to PM (OS/2 GUI), it should pose no harm,
just a slower building (maybe even not noticeable).

But it would be better, given that qt is a contrib, have an include file at
the top of the qt tree which does just this or at least try to see if it is
enough to get it going.

Maurilio.



___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Viktor Szakáts
>>> -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5
>>> 
>>> E:/SVILUPPO/GCC/V3.3.5/ is where I decided to put GCC on my system, while 
>>> the
>>> last 3.3.5 in the path depends on GCC version and so it changes from release
>>> to release.
>> 
>> Is '/gcc/3.3.5/' a mandatory element of the base dir, or 
>> local user preference? I mean, may I simple install it 
>> to 'E:/os2stuff/gcc/' instead of 'E:/Sviluppo/gcc/v3.3.5/'?
>> 
> Sure.

This means we can't use base path to get version 
information needed to form paths for ld.exe.

To me it's unclear how to make this automatic or 
elegant.

I think the bug should be reported to GCC maintainers, 
to get it fixed ASAP.

>>> So we have to parse LIBRARY_PATH to add -L options to ld command line, but 
>>> it
>>> is not enough since we need an object, dll0.o, which is inside
>>> 
>>> E:/SVILUPPO/GCC/V3.3.5/USR/lib/dll0.o
>>> 
>>> which could be inferred from LIBRARY_PATH, but I don't know whether the new
>>> versions of GCC have it in the same position.
>> 
>> That's a question. Plus whether it's in the same place for 
>> gccomf vs plain gcc.
>> 
> I'd say yes, the OMF version has an .obj extension.
> 
> dir \*dll0.* /s
> 
> The volume label in drive E is Dati.
> The Volume Serial Number is 812E:D5C2.
> 
> Directory of E:\Sviluppo\gcc\v3.3.5\usr\lib
> 
> 11/06/07 22:52  1.955  0 a---  dll0.o
> 11/06/07 22:52  2.797  0 a---  dll0.obj
>2 file(s)   4.752 bytes used

Okay.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] OS/2: hbqt, advances

2010-02-22 Thread Maurilio Longo
Viktor,

you need it also when you call some Dos() APIs to have the function 
prototype.

Maurilio.


Viktor Szakáts wrote:
> BTW, seeing hbdefs.h. Current method for OS/2 is wrong, 
> and should be fixed.
> 
>  should only be included when legacy types are 
> enabled. This means that  has to be manually 
> #included in every source file where it's currently 
> missing from, along with proper INCL_ macros needed 
> in each specific source file.
> 
> I'll fix this, but it may need more passes of fixes 
> to get it completely clean.
> 
> Brgds,
> Viktor
> 
> On 2010 Feb 22, at 13:50, Viktor Szakáts wrote:
> 
>> Hi,
>>
>>> I need help on three areas:
>>>
>>> 1) Maurilio: to check changes in hbdefs.h
>>>  /* 28/03/2000 - maurilio.lo...@libero.it
>>> The same holds true when using GCC under OS/2
>>>  */
>>>  /* xx/02/2010 - whoe...@there.is
>>> Include all OS/2 API definitions to make sure other involved parties
>>> (such as Qt for OS/2) will get everything they want
>>>  */
>>>  #define OS2EMX_PLAIN_CHAR
>>>  #define INCL_BASE
>>>  #define INCL_PM
>>>  #include 
>>>  #undef INT
>>>  #undef UINT
>>>  #define HB_DONT_DEFINE_BASIC_TYPES
>> To give everything that's needed for HBQT, 
>> these must be put inside hbqt.h header, not 
>> hbdefs.h.
>>
>> [ Including everything in central header, 
>> just to satisfy some contribs, or some 
>> specific core parts is simple, but wrong 
>> solution, and quite complicated to clean 
>> later. ]
>>
>> Brgds,
>> Viktor
>>
> 
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour
> 

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: Switch to detect undeclared vars being used

2010-02-22 Thread Maurilio Longo
Viktor,

yes.

Maurilio.

Viktor Szakáts wrote:
> Hi Maurilio,
> 
> On 2010 Feb 22, at 09:02, Maurilio Longo wrote:
> 
>> Viktor,
>>
>> one thing I'd like to have is the ability of the compiler to spot iVars like
>> it does variables, I mean unused, not declared and so on, while it now simply
>> ignores all of them and you get an error when executing such code.
> 
> By 'iVars', you means object vars?
> 
> Brgds,
> Viktor
> 
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour
> 

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] OS/2: -DTCPV40HDRS

2010-02-22 Thread David Arturo Macias Corona

In tests with Harbour hbqt and Qt451GA for OS/2 raised the question of
-DTCPV40HDRS

Perhaps is time to exclude -DTCPV40HDRS ?
I am using it in official builds

See info below

David Macias


Dmitry response:


And BTW, is there any specific reason for -DTCPV40HDRS? This will cause 
gcc to use the outdated TCP stack (which is 16-bit AFAIR) instead of the 
more modern 32-bit stack used by Qt. I heard that these stacks are not 
compatible and won't work together (though I don't know all the details).

<<


In Harbour project Maurilio Longo is our OS/2 expert and he explained us 
years ago that we must build Harbour with -DTCPV40HDRS in order to be 
used in old OS/2 and new eCS
If this case may have problem with Qt I can inform it in Harbour 
project. Just tell me :-)

[...]


Dmitry response:
>
Okay, I had a small discussion on this topic with other OS/2 people and 
this is what I found. The only benefit of the 16-bit stack (that is used 
by Innotek GCC/kLIBC when you use -DTCPV40HDRS) comparing to the 32-bit 
stack (used otherwise) that the former is available on Warp3 while the 
latter is not (32 bit is also not available on Warp4 by default but it 
is easily solvable by installing a free Fixpak on it). So unless you 
really want to support Warp3 you can completely drop this define.


Next, both stacks can be probably used in parallel within the same 
process (never checked that) but they will for sure not be able to 
exchange sockets.


And another important thing that Qt is bound to the 32-bit stack, so 
even if your application using two different stacks will eventually 
work, it will not load on a system with no 32-bit stack installed anyway 
(due to the Qt dependency). So keep that in mind.

<<


It mean that Warp 3 support is excluded in your Qt4 development ?

Dmitry response:
>
Yes. Neither Qt3 nor Qt4 officially supports Warp3. And there are no 
current plans to provide such support.

<<

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] OS/2: hbqt, advances

2010-02-22 Thread Viktor Szakáts
> Viktor,
> 
> you need it also when you call some Dos() APIs to have the function 
> prototype.

I know, but in every such case, it should be 
included on per-source file basis. Similar to 
how we do it now for all other OSes.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
Viktor Szakáts wrote:
> This means we can't use base path to get version 
> information needed to form paths for ld.exe.
> 
No, we should split LIBRARY_PATH and put every piece of it into a -L statement
for ld.exe and, if in one of those paths there is dll0.o (or .obj for omf)
pass it to ld to have it include it in the building.

> To me it's unclear how to make this automatic or 
> elegant.
> 
> I think the bug should be reported to GCC maintainers, 
> to get it fixed ASAP.
> 
I'll try to write to the current porter and see if he can fix it.

David, did you already reported this issue to Paul Smedley?

Best regards.

Maurilio.


-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: Switch to detect undeclared vars being used

2010-02-22 Thread Viktor Szakáts
You're right, this would be an absolutely useful feature.

For me it's actually a show stopper to ever create any 
OOP code in Harbour. It's just too easy to mistype something 
and only get to know about it by live testing complete code 
flow.

Compiler-level solution doesn't seem to be easy though.

Brgds,
Viktor

On 2010 Feb 22, at 14:01, Maurilio Longo wrote:

> Viktor,
> 
> yes.
> 
> Maurilio.
> 
> Viktor Szakáts wrote:
>> Hi Maurilio,
>> 
>> On 2010 Feb 22, at 09:02, Maurilio Longo wrote:
>> 
>>> Viktor,
>>> 
>>> one thing I'd like to have is the ability of the compiler to spot iVars like
>>> it does variables, I mean unused, not declared and so on, while it now 
>>> simply
>>> ignores all of them and you get an error when executing such code.
>> 
>> By 'iVars', you means object vars?
>> 
>> Brgds,
>> Viktor
>> 
>> ___
>> Harbour mailing list (attachment size limit: 40KB)
>> Harbour@harbour-project.org
>> http://lists.harbour-project.org/mailman/listinfo/harbour
>> 
> 
> -- 
> __
> |  |  | |__| Maurilio Longo
> |_|_|_|| farmaconsult s.r.l.
> 
> 
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] OS/2: -DTCPV40HDRS

2010-02-22 Thread Maurilio Longo
David,

do you still use warp 3? If not, we can remove it :D

Jokes apart, we can decide that warp3 is not supported when using Qt or all
together.

I don't really know who is using harbour on OS/2 so I put it in to stay on the
safe side.

Maurilio.


David Arturo Macias Corona wrote:
> In tests with Harbour hbqt and Qt451GA for OS/2 raised the question of
> -DTCPV40HDRS
> 
> Perhaps is time to exclude -DTCPV40HDRS ?
> I am using it in official builds
> 
> See info below
> 
> David Macias
> 
> 
> Dmitry response:
>> 
> And BTW, is there any specific reason for -DTCPV40HDRS? This will cause
> gcc to use the outdated TCP stack (which is 16-bit AFAIR) instead of the
> more modern 32-bit stack used by Qt. I heard that these stacks are not
> compatible and won't work together (though I don't know all the details).
> <<
> 
> 
> In Harbour project Maurilio Longo is our OS/2 expert and he explained us
> years ago that we must build Harbour with -DTCPV40HDRS in order to be
> used in old OS/2 and new eCS
> If this case may have problem with Qt I can inform it in Harbour
> project. Just tell me :-)
> [...]
> 
> 
> Dmitry response:
>>
> Okay, I had a small discussion on this topic with other OS/2 people and
> this is what I found. The only benefit of the 16-bit stack (that is used
> by Innotek GCC/kLIBC when you use -DTCPV40HDRS) comparing to the 32-bit
> stack (used otherwise) that the former is available on Warp3 while the
> latter is not (32 bit is also not available on Warp4 by default but it
> is easily solvable by installing a free Fixpak on it). So unless you
> really want to support Warp3 you can completely drop this define.
> 
> Next, both stacks can be probably used in parallel within the same
> process (never checked that) but they will for sure not be able to
> exchange sockets.
> 
> And another important thing that Qt is bound to the 32-bit stack, so
> even if your application using two different stacks will eventually
> work, it will not load on a system with no 32-bit stack installed anyway
> (due to the Qt dependency). So keep that in mind.
> <<
> 
> 
> It mean that Warp 3 support is excluded in your Qt4 development ?
> 
> Dmitry response:
>>
> Yes. Neither Qt3 nor Qt4 officially supports Warp3. And there are no
> current plans to provide such support.
> <<
> 
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour
> 

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: hbqt, advances

2010-02-22 Thread David Arturo Macias Corona

Viktor, Maurilio:

[Viktor]
>To give everything that's needed for HBQT,
>these must be put inside hbqt.h header, not
>hbdefs.h.

>[ Including everything in central header,
>just to satisfy some contribs, or some
>specific core parts is simple, but wrong
>solution, and quite complicated to clean
>later. ]

[Viktor]
>BTW, seeing hbdefs.h. Current method for OS/2 is wrong,
>and should be fixed.

> should only be included when legacy types are
>enabled. This means that  has to be manually
>#included in every source file where it's currently
>missing from, along with proper INCL_ macros needed
>in each specific source file.

>I'll fix this, but it may need more passes of fixes
>to get it completely clean.

[Maurilio]
>This takes in all #defines related to PM (OS/2 GUI), it should pose no
>harm, just a slower building (maybe even not noticeable).

>But it would be better, given that qt is a contrib, have an include
>file at the top of the qt tree which does just this or at least try to
>see if it is enough to get it going.

[Maurilio]
>you need it also when you call some Dos() APIs to have the function
> prototype.

[Viktor]
>I know, but in every such case, it should be
>included on per-source file basis. Similar to
>how we do it now for all other OSes.


Harbour for OS/2 has been using:

#define INCL_TYPES
#define INCL_DOSEXCEPTIONS/* DOS exception values */
#define INCL_ERRORS   /* DOS error values */
#define INCL_LONGLONG /* include native compiler LONGLONG
definition */

#include 
#undef INT
#undef UINT
#define HB_DONT_DEFINE_BASIC_TYPES


and proposed change is:

#define OS2EMX_PLAIN_CHAR
#define INCL_BASE
#define INCL_PM
#include 
#undef INT
#undef UINT
#define HB_DONT_DEFINE_BASIC_TYPES


I do not know if old or new way are right, so I requested to Maurilio to 
check it

Viktor, I suggest do not apply any changes until agreement
Maurilio, do you have the whole picture ?

Do not forget this info:

(*) The thing with os2.h is that you have to specify what parts of the 
API you want before including it (using the #define INCL_xxx 
directives). If you do it once, all subsequent attempts to include os2.h 
again (probably with a different set of INCL_xxx defines) will be 
ignored by the compiler because os2.h contains a protection code that 
allows to include its contents only once per every compilation unit 
(.cpp file). Therefore, if your set of INCL_xxx doesn't drag in APIs 
needed by some other parties involved in the compilation process there 
is nothing these parties can do.


BTW, if you don't want to toss the Qt includes around in all sources, 
there is one alternative solution. Just add the following to hbdefs.h 
right before the line where os2.h is included:


#define OS2EMX_PLAIN_CHAR
#define INCL_BASE
#define INCL_PM

This will make sure that os2.h will drag in all the APIs it has so every 
party will be eventually happy.


David Macias


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Viktor Szakáts
Hi,

>> This means we can't use base path to get version 
>> information needed to form paths for ld.exe.
>> 
> No, we should split LIBRARY_PATH and put every piece of it into a -L statement
> for ld.exe and, if in one of those paths there is dll0.o (or .obj for omf)
> pass it to ld to have it include it in the building.

Who/what is setting LIBRARY_PATH? Should it be set by user, 
or is it set by some of the GCC tools in GCC toolchain?

>> To me it's unclear how to make this automatic or 
>> elegant.
>> 
>> I think the bug should be reported to GCC maintainers, 
>> to get it fixed ASAP.
>> 
> I'll try to write to the current porter and see if he can fix it.
> 
> David, did you already reported this issue to Paul Smedley?

Thank you.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Macro within codeblock ??

2010-02-22 Thread Shum

Hi Harbour developers,

I use macro within codeblock for years with Xbase++as follow:

cFAction := FIELD->FNCNAME

bAction := {|| &cFAction() }
If isfunction( cFAction )
oXbp:ItemSelected := bAction
Endif

However, Harbour does not support macro within codeblock ...

Hope someone can give me any solution on this topic ...

Shum

-- 
View this message in context: 
http://n2.nabble.com/Macro-within-codeblock-tp4611984p4611984.html
Sent from the harbour-devel mailing list archive at Nabble.com.
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: hbqt, advances

2010-02-22 Thread Viktor Szakáts
> and proposed change is:
> 
>#define OS2EMX_PLAIN_CHAR
>#define INCL_BASE
>#define INCL_PM
>#include 
>#undef INT
>#undef UINT
>#define HB_DONT_DEFINE_BASIC_TYPES
> 
> 
> I do not know if old or new way are right, so I requested to Maurilio to 
> check it
> Viktor, I suggest do not apply any changes until agreement
> Maurilio, do you have the whole picture ?

Sorry, I've already started to clean it, and will 
commit it soon.

This is not a QT specific matter, but generic 
Harbour problem. QT specific part needs to be 
fixed inside HBQT header hbqt.h:

---
#define OS2EMX_PLAIN_CHAR
#define INCL_BASE
#define INCL_PM

{#include Harbour headers}

#if defined( HB_OS_OS2 )
#  include 
#endif
---

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
Viktor Szakáts wrote:
> Who/what is setting LIBRARY_PATH? Should it be set by user, 
> or is it set by some of the GCC tools in GCC toolchain?
> 

The user/installer when it installs the compiler and its tool-chain, so it has
to be present, otherwise you cannot compile even a simple helloworld.c.

>>> I think the bug should be reported to GCC maintainers, 
>>> to get it fixed ASAP.
>>>
>> I'll try to write to the current porter and see if he can fix it.
>>
>> David, did you already reported this issue to Paul Smedley?

Anyway, Viktor, if we can find a way to do that parsing, it would instantly
fix _every_ version out there without forcing all of us (OS/2 users left :))
to upgrade to an instable GCC version.

Best regards.

Maurilio.


-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread David Arturo Macias Corona

Maurilio:

>I'll try to write to the current porter and see if he can fix it.

>David, did you already reported this issue to Paul Smedley?

1) I sent report to many well-known people on OS/2
(Knut, Paul Smedley, Andreas, Sander, Ulrich)
so all of them know this problem

2) I reported Knut response to Harbour group
 See message
   OS/2: Harbour 13841
   12/02/10 08:57 AM
Knut send same response to all, so they know response

3) I posted a ticket in
  svn.netlabs.org/libc

4) I opened an account in mantis.smedley.info, but response to confirm 
account delayed to much and I found it in spam folder


5) I have not posted ticket in mantis yet

If you contact Paul you can recall him for my original message, and if 
you post ticket in mantis, you can use same content I used in netlabs

Content are below

What I see is: change to os2gcc will be available in future releases, so 
maybe only for os2gcc442 and greater and not for os2gcc335. It will 
force you to change your os2gcc compiler

Cons: You need to make adjustments to your environments/systems
Pros: You will be carried to present  :-)

Availability of next os2gcc release depend of Paul and his plans

David Macias

Ticket content 

In Harbour for OS/2 development ( www.harbour-project.org ) we face from 
long time a problem using os2gcc compilers when we try to build some 
.dll files


Tracing I found an now famous 32 Kb limit:

Somewhere gcc is using 32 Kb limit for our case

gcc --> emxomfld.exe ( ld.exe )

( or is OS/2 limit ? :-) )

Below are first quick and clear Knut St. Osmundsen response

Thanks, David Macias

Yes, this is an OS/2 limitation. The usual workaround is to pass the 
arguments in a response file (emxomfld @filename.rsp). Without checking 
all the relevant code, I'm pretty sure that the compiler/linker driver 
(gcc) will not create a response file when invoking sub programs like 
as, ld or emxomfld. The easiest way to hack it into doing this would be 
to change pexecute() in libiberty/pexecute.c to create a response file 
for arguments exceeding, say, 24 KB. 
http://svn.netlabs.org/libc/browser/branches/libc-0.6/src/gcc/libiberty/pexecute.c#L803



___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] SF.net SVN: harbour-project:[13958] trunk/harbour

2010-02-22 Thread vszakats
Revision: 13958
  
http://harbour-project.svn.sourceforge.net/harbour-project/?rev=13958&view=rev
Author:   vszakats
Date: 2010-02-22 13:45:07 + (Mon, 22 Feb 2010)

Log Message:
---
2010-02-22 14:43 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
  * src/vm/extrap.c
  * src/vm/dynlibhb.c
  * src/common/hbgete.c
  * src/common/hbffind.c
  * src/common/hbver.c
  * src/rtl/filesys.c
  * src/rtl/diskspac.c
  * src/rtl/gtos2/gtos2.c
  * src/rtl/cputime.c
  * src/rtl/disksphb.c
  * include/hbthread.h
  * contrib/hbmzip/hbmzip.c
! Fixed to setup all OS/2 INCL_* constants and
  to #include os2.h by themselves, and not to rely
  on Harbour headers to do this job for them.
; TODO: Do the same for dos.h.

  * doc/hdr_tpl.txt
- Deleted local changelog.
! Fixes to .prg function docs
+ Update copyright year to 2010.
+ Added fact that $SEEALSO$ should be comma separated.
+ Added .c function example (far from perfect)

  * examples/hbdoc2/tmplates.prg
  * doc/hdr_tpl.txt
+ Added $VERSION$ tag. (pls update HBIDE. We haven't finalized
  the format yet, to it's little bit premature to create
  new and new parsers/generators for it yet)

  * include/hbdefs.h
! Fixed to not unconditionally include OS/2 headers with
  an arbitrary selection of INCL_ macros.
  Now OS/2 headers will only be included if legacy types
  are requested (off by default), and no INCL_ macros
  are defined. This latter change may affect 3rd party
  code written for OS/2, so I'm marking it INCOMPATIBLE.

  * contrib/hbqt/generator/hbqtgen.prg
  * contrib/hbqt/hbqt.h
* Changed to #include hbapi.h from hbqt.h. It needs it,
  so this is the clean way. Changed generator to leave
  out hbapi.h from each source file and refer to hbqt.h
  only. (untested)
+ Added logic to #include OS/2 headers with some INCL_
  macros defined, to make QT on OS/2 happy. (copied them
  from the dev. list)
; TODO: Regenerate HBQT sources.

  * utils/hbtest/hbtest.prg
! Cleaned old problem reported by Chen. It seems like
  a feature which was never finished, and it's not even
  hugely needed, so I deleted it.

  * config/global.mk
+ Will now provide HB_COMP_PATH_PUB value for os2-gcc, os2-gccomf
  compilers. This value can be used to manually form ld.exe
  command line.
  (NOTE: This may be deleted in the future, when sorting
  out line-length limit problems for these compilers.

Modified Paths:
--
trunk/harbour/ChangeLog
trunk/harbour/config/global.mk
trunk/harbour/contrib/hbmzip/hbmzip.c
trunk/harbour/contrib/hbqt/generator/hbqtgen.prg
trunk/harbour/contrib/hbqt/hbqt.h
trunk/harbour/doc/hdr_tpl.txt
trunk/harbour/examples/hbdoc2/tmplates.prg
trunk/harbour/include/hbdefs.h
trunk/harbour/include/hbthread.h
trunk/harbour/src/common/hbffind.c
trunk/harbour/src/common/hbgete.c
trunk/harbour/src/common/hbver.c
trunk/harbour/src/rtl/cputime.c
trunk/harbour/src/rtl/diskspac.c
trunk/harbour/src/rtl/disksphb.c
trunk/harbour/src/rtl/filesys.c
trunk/harbour/src/rtl/gtos2/gtos2.c
trunk/harbour/src/vm/dynlibhb.c
trunk/harbour/src/vm/extrap.c
trunk/harbour/utils/hbtest/hbtest.prg


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Viktor Szakáts
> The user/installer when it installs the compiler and its tool-chain, so it has
> to be present, otherwise you cannot compile even a simple helloworld.c.

Sorry if I missed it, but can you paste here a living 
example for what value it's actually set to?

I'd also like to include it in INSTALL, since it's 
apparently missing.

>>> David, did you already reported this issue to Paul Smedley?
> 
> Anyway, Viktor, if we can find a way to do that parsing, it would instantly
> fix _every_ version out there without forcing all of us (OS/2 users left :))
> to upgrade to an instable GCC version.

If possible to do, fine for me.

I've just posted a little change which helps 
the case already: $(HB_COMP_PATH_PUB) which 
returns the directory where gcc.exe is residing 
in.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] dos/watcom: warnings in hbsocket.c

2010-02-22 Thread Viktor Szakáts
Hi,

..\..\..\hbsocket.c(3020): Warning! W102: Type mismatch (warning)
..\..\..\hbsocket.c(3020): Note! N2003: source conversion type is 'char *'
..\..\..\hbsocket.c(3020): Note! N2004: target conversion type is 'unsigned 
long '
..\..\..\hbsocket.c(3026): Warning! W131: No prototype found for function 
'ioctl'
..\..\..\hbsocket.c(3028): Warning! W102: Type mismatch (warning)
..\..\..\hbsocket.c(3028): Note! N2003: source conversion type is 'unsigned 
long '
..\..\..\hbsocket.c(3028): Note! N2004: target conversion type is 'char *'

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: -DTCPV40HDRS

2010-02-22 Thread David Arturo Macias Corona

Maurilio:

>do you still use warp 3? If not, we can remove it :D

I just have the red boxes, but do not use it. I was supposing you are 
using it  :-)


I have boxes of OS/2 2.0, 2.1, Warp 3, Warp 4, eCS 1.0, 1.2, 1.2MR

>Jokes apart, we can decide that warp3 is not supported when using Qt or
> all together.

Preferable all together

>I don't really know who is using harbour on OS/2 so I put it in to stay
> on the safe side.

I do not know too
Harbour 2.0.0 for OS/2 downloads have an strange behaviour not expected 
for OS/2. It have downloads in sustained state daily and now have more 
than 600.
Seem notice is spreading between isolated groups, but no one has 
requested help or comment

Many experts in OS/2-Clipper code  :-)

So we exclude -DTCPV40HDRS, dropping Warp 3 support in Harbour ?
( Think carefully: many corporations, banks, ATM, ... will be affected 
:-) )


David Macias

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
Viktor,

Viktor Szakáts wrote:
>> The user/installer when it installs the compiler and its tool-chain, so it 
>> has
>> to be present, otherwise you cannot compile even a simple helloworld.c.
> 
> Sorry if I missed it, but can you paste here a living 
> example for what value it's actually set to?
> 

here is mine when not using old tcp headers,

(E:\harbour\ftpd)set LIBRARY_PATH
LIBRARY_PATH=E:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5;E:/SVI
LUPPO/GCC/V3.3.5/USR/lib;D:\JAVA11\LIB;

> I'd also like to include it in INSTALL, since it's 
> apparently missing.
> 
It is a GCC environment setting, so it has to be OK before trying to install
harbour.

> 
> I've just posted a little change which helps 
> the case already: $(HB_COMP_PATH_PUB) which 
> returns the directory where gcc.exe is residing 
> in.
> 

Ok, but is there a way, inside .mk files to split an env-var using some char
as delimiter? if yes, than we can create the command line for ld which has
this sequence of paths as a variable part, while the rest should be pretty 
fixed.

Thanks.

Maurilio.

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: -DTCPV40HDRS

2010-02-22 Thread Maurilio Longo
David,

David Arturo Macias Corona wrote:
> I do not know too
> Harbour 2.0.0 for OS/2 downloads have an strange behaviour not expected
> for OS/2. It have downloads in sustained state daily and now have more
> than 600.
>From different IPs?

I don't believe there are so many OS/2 programmers still using a clipper
dialect out there. It is not possible!

> So we exclude -DTCPV40HDRS, dropping Warp 3 support in Harbour ?
> ( Think carefully: many corporations, banks, ATM, ... will be affected
> :-) )
> 
Let's hope not to need one of those ATMs after we remove the switch! :D

Anyway, I'd say to remove it, given Warp 3 is as old as Windows 95 or even
older, and let's see what happens.

Maurilio.

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] SF.net SVN: harbour-project:[13959] trunk/harbour

2010-02-22 Thread vszakats
Revision: 13959
  
http://harbour-project.svn.sourceforge.net/harbour-project/?rev=13959&view=rev
Author:   vszakats
Date: 2010-02-22 14:07:26 + (Mon, 22 Feb 2010)

Log Message:
---
2010-02-22 15:06 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
  * include/hbdefs.h
! Fixed to not #include  unconditionally. This should
  be done by specific source code, if needed. INCOMPATIBLE,
  if source code relied on this behavior. From now on it,
  should include dos.h manually.

  * src/vm/thread.c
  * src/common/hbver.c
  * src/rtl/gtdos/gtdos.c
  * src/rtl/isprint.c
  * src/rtl/diskspac.c
  * src/rtl/disksphb.c
  * src/rtl/net.c
  * contrib/hbct/print.c
! Fixed to #include  manually.

  * src/rtl/fstemp.c
! Fixed recent warning for dos targets.

  * contrib/hbct/video.c
! Fixed old unused variable warning for dos/watcom targets.

  * INSTALL
+ Documented that OS/2 Warp 4 is supported (instead of generic OS/2).

Modified Paths:
--
trunk/harbour/ChangeLog
trunk/harbour/INSTALL
trunk/harbour/contrib/hbct/print.c
trunk/harbour/contrib/hbct/video.c
trunk/harbour/include/hbdefs.h
trunk/harbour/src/common/hbver.c
trunk/harbour/src/rtl/diskspac.c
trunk/harbour/src/rtl/disksphb.c
trunk/harbour/src/rtl/fstemp.c
trunk/harbour/src/rtl/gtdos/gtdos.c
trunk/harbour/src/rtl/isprint.c
trunk/harbour/src/rtl/net.c
trunk/harbour/src/vm/thread.c


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: -DTCPV40HDRS

2010-02-22 Thread Viktor Szakáts
> I do not know too
> Harbour 2.0.0 for OS/2 downloads have an strange behaviour not expected for 
> OS/2. It have downloads in sustained state daily and now have more than 600.
> Seem notice is spreading between isolated groups, but no one has requested 
> help or comment
> Many experts in OS/2-Clipper code  :-)
> 
> So we exclude -DTCPV40HDRS, dropping Warp 3 support in Harbour ?
> ( Think carefully: many corporations, banks, ATM, ... will be affected :-) )

Is there any way to detect OS/2 target version and 
automatically toggle this option accordingly?

Also, in such way HBQT could be disabled for < Warp 4 
targets.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Viktor Szakáts
>> Sorry if I missed it, but can you paste here a living 
>> example for what value it's actually set to?
>> 
> 
> here is mine when not using old tcp headers,
> 
> (E:\harbour\ftpd)set LIBRARY_PATH
> LIBRARY_PATH=E:/SVILUPPO/GCC/V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5;E:/SVI
> LUPPO/GCC/V3.3.5/USR/lib;D:\JAVA11\LIB;

Thank you.

>> I'd also like to include it in INSTALL, since it's 
>> apparently missing.
>> 
> It is a GCC environment setting, so it has to be OK before trying to install
> harbour.

Okay, I see now that currently some .cmds are called 
to init the env, maybe this ennvar is setup in there.

> 
>> 
>> I've just posted a little change which helps 
>> the case already: $(HB_COMP_PATH_PUB) which 
>> returns the directory where gcc.exe is residing 
>> in.
>> 
> 
> Ok, but is there a way, inside .mk files to split an env-var using some char
> as delimiter? if yes, than we can create the command line for ld which has
> this sequence of paths as a variable part, while the rest should be pretty 
> fixed.

Yes, it's possble.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: -DTCPV40HDRS

2010-02-22 Thread Maurilio Longo
Viktor,

I'd say a ver command should return a version >= 4.00

(E:\harbour\ftpd)ver

The Operating System/2 Version is 4.50

The issue, though, is not when building on a warp 3 system, but trying to use
a program built without this option on a warp 3 system. More or less like
running the code to find out interface addresses on a win95 pc, because such a
program requires libraries not available on and for warp 3.

Maurilio.

Viktor Szakáts wrote:
>> I do not know too
>> Harbour 2.0.0 for OS/2 downloads have an strange behaviour not expected for 
>> OS/2. It have downloads in sustained state daily and now have more than 600.
>> Seem notice is spreading between isolated groups, but no one has requested 
>> help or comment
>> Many experts in OS/2-Clipper code  :-)
>>
>> So we exclude -DTCPV40HDRS, dropping Warp 3 support in Harbour ?
>> ( Think carefully: many corporations, banks, ATM, ... will be affected :-) )
> 
> Is there any way to detect OS/2 target version and 
> automatically toggle this option accordingly?
> 
> Also, in such way HBQT could be disabled for < Warp 4 
> targets.
> 
> Brgds,
> Viktor
> 
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour
> 

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
Viktor Szakáts wrote:

> Okay, I see now that currently some .cmds are called 
> to init the env, maybe this ennvar is setup in there.
> 

No, the harbour build process should not set nor change LIBRARY_PATH, this has
to be set and be correct _before_ installing harbour.

>> Ok, but is there a way, inside .mk files to split an env-var using some char
>> as delimiter? if yes, than we can create the command line for ld which has
>> this sequence of paths as a variable part, while the rest should be pretty 
>> fixed.
> 
> Yes, it's possble.

Ok, are there examples available?

Best regards.

Maurilio.


-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] SF.net SVN: harbour-project:[13960] trunk/harbour

2010-02-22 Thread vszakats
Revision: 13960
  
http://harbour-project.svn.sourceforge.net/harbour-project/?rev=13960&view=rev
Author:   vszakats
Date: 2010-02-22 14:21:15 + (Mon, 22 Feb 2010)

Log Message:
---
2010-02-22 15:20 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
  * config/os2/gcc.mk
+ Attempt to fix direct ld usage to create Harbour .dlls.
  Please make tests for all versions of gcc/gccomf targets.

  * INSTALL
- Deleted TCPV4 header instructions for OS/2. (they still
  works, it just got less emphasis with this)

Modified Paths:
--
trunk/harbour/ChangeLog
trunk/harbour/INSTALL
trunk/harbour/config/os2/gcc.mk


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: -DTCPV40HDRS

2010-02-22 Thread Viktor Szakáts
> Viktor,
> 
> I'd say a ver command should return a version >= 4.00
> 
> (E:\harbour\ftpd)ver
> 
> The Operating System/2 Version is 4.50

That tells us the host OS version. We need 
a way to tell the version of OS/2 we're 
building _for_ though. Similar to _WIN32_WINNT 
macro.

Such macro may have some default defined 
by headers, and it's also possible to 
override it by user. This is the generic way 
to force a build which targets and older 
version of the OS environment (or even 
newer, if the default is an older version).

> The issue, though, is not when building on a warp 3 system, but trying to use
> a program built without this option on a warp 3 system. More or less like
> running the code to find out interface addresses on a win95 pc, because such a
> program requires libraries not available on and for warp 3.

(pls see above)

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] SF.net SVN: harbour-project:[13937] trunk/harbour

2010-02-22 Thread Xavi

Hi Xavi,


_Przemek, thank you very much for answering me directly_


It's is possible. Just like many other things which still do
not exists in MS-Windows and we will have to wait next 10
years until MS discover them and add some support for it in
WinSOCK.X.Y.Z which will work correctly in version X.Y.Z + N.
There is only one question: Why we should add such things?
The fact that sth is possible on some platforms does not mean
that it has to be implemented.



[...]



Why you added HB_SOCKET_IFINFO_GATEWAY?
What programs do you plan to write which will need such information?
How do you know that which gateway belongs to each IP address?
It's possible that aliases uses different gateways (at least in normal
systems). I do not see any code which tries to bind gateway addresses
with IP addresses so HB_SOCKET_IFINFO_GATEWAY contains correct
information only when the same gateway is used by all aliases.


I did it to make something new, not important in itself.


MS-Windows does not have interface names as other hosts. AFAIR windows
ports of some *nix tools like ifconfing used IP address as interface
name so I decided to use the same. You added code which replace this
IP addres with "localhost" string for LOOPBACK interfaces. Why?


AFAIK in Windows the adapter name is one GUID exept localhost.


Do you know that it's possible to have more then one LOOPBACK interface
with different addresses?


Yes and with the appropriate GUID adapter name.


[...]
hb_arrayGetC() returns address to dynamically allocated memory block
which should be freed by hb_itemFreeC(). Now this code causes memory
leak.

Is iphlpapi.dll loaded by application at startup and keep alive for
whole application running time?


THANK YOU!!! for test and respond.
Yes, I've a pretty hb_out.log report compiling with HB_FM_STATISTICS.
Remember what means a draft code. :)
You can see the interest of people about it because your sample PRG code and my 
sample no presents nothing in Windows.


If not then storing pointer to GetAdaptersInfo() in static variable
seems to be a little bit risk because such address may change.


I think that this may also happen with the system dlls.
Remember my post about this .-

http://lists.harbour-project.org/pipermail/harbour/2010-February/032151.html


BTW in which Windows version GetAdaptersInfo() was added?

This code does not detect aliases. It has to be redesigned to eliminate
them.


Well, what do you suggest?

Best regards,
Xavi
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread David Arturo Macias Corona

Maurilio:

>while the last 3.3.5 in the path depends on GCC version and so it
>changes from release to release.

>So we have to parse LIBRARY_PATH to add -L options to ld command line, 
>but it is not enough since we need an object, dll0.o, which is inside


>E:/SVILUPPO/GCC/V3.3.5/USR/lib/dll0.o

>which could be inferred from LIBRARY_PATH, but I don't know whether 
the >new versions of GCC have it in the same position.


>This is something that has to be hard-coded inside gcc when used as 
>dl.exe front end which should be extracted from it in some way.


Newer os2gcc are installed usually in \usr\(compiler), but os2gcc335 is 
*mandatory* to be installed too, as newer rely in some gcc335 tools


In my machine gcc335 is in \usr\
gcc442 in \usr\local442 and dll0.o exist only in \usr\lib

So path, references for both compilers are included, newer first


>I'd say yes, the OMF version has an .obj extension.

No. Due facts Viktor knows well, .o was impossed to both, a.out and OMF
.obj for OMF was excluded


>Who/what is setting LIBRARY_PATH? Should it be set by user,
>or is it set by some of the GCC tools in GCC toolchain?

This setting can be changed dinamically to fit requirements of many 
systems, not only os2gcc


>Sorry if I missed it, but can you paste here a living
>example for what value it's actually set to?

>I'd also like to include it in INSTALL, since it's
>apparently missing.

>Ok, but is there a way, inside .mk files to split an env-var using 
some >char as delimiter? if yes, than we can create the command line for 
ld >which has this sequence of paths as a variable part, while the rest 
>should be pretty fixed.


I do tests with many os2gcc compilers, so forcing values for 
ld.exe/emxomfld.exe should be practical


For example, for os2gcc442, which show gcc442,gcc335 references:
-
PATH_EMXPGCC=E:\usr
CCENV=EMX
BUILD_ENV=EMX
BUILD_PLATFORM=OS2
DPATH=E:\usr\local442\lib;E:\usr\lib;E:\MPTN; ...
PATH=E:\usr\local442\libexec\gcc\i386-pc-os2-emx\4.4.2;E:\usr\local442\bin;E:\usr\bin; 
...

C_INCLUDE_PATH=E:/usr/local442/lib/gcc/i386-pc-os2-emx/4.4.2/include;E:/usr/local442/include;E:/usr/include;
CPLUS_INCLUDE_PATH=E:/usr/local442/include/c++/4.4.2;E:/usr/local442/include/c++/4.4.2/i386-pc-os2-emx;E:/usr/local442/include/c++/4.4.2/backward;E:/usr/local442/include;E:/usr/include;
LIBRARY_PATH=E:/usr/local442/lib/gcc/i386-pc-os2-emx/4.4.2;E:/usr/local442/lib;E:/usr/lib;
INFOPATH=E:/usr/local442/info;E:/usr/info;
PROTODIR=E:/usr/include/c++/gen
BEGINLIBPATH=E:\usr\local442\lib;E:\usr\lib;
-

>No, the harbour build process should not set nor change LIBRARY_PATH, 
>this has to be set and be correct _before_ installing harbour.


Fully agree. See above

David Macias

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Viktor Szakáts
> >No, the harbour build process should not set nor change LIBRARY_PATH, >this 
> >has to be set and be correct _before_ installing harbour.
> 
> Fully agree. See above

This has been agreed upon 10 years ago, so no need 
to re-agree on anything.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Viktor Szakáts
>> Okay, I see now that currently some .cmds are called 
>> to init the env, maybe this ennvar is setup in there.
>> 
> 
> No, the harbour build process should not set nor change LIBRARY_PATH, this has
> to be set and be correct _before_ installing harbour.

I wasn't clear. I was talking about this in INSTALL:
---
   for OS/2 hosts
   --

  --- GCC 3.3.4 and GCC 3.3.5
  C:\usr\bin\gccenv.cmd
  os2-make
  ---

  --- GCC 4.x
  C:\usr\local433\gcc440.cmd
  set HB_COMPILER=gccomf
  os2-make
  ---
---

Harbour build never modifies system variables. It never did.

>>> Ok, but is there a way, inside .mk files to split an env-var using some char
>>> as delimiter? if yes, than we can create the command line for ld which has
>>> this sequence of paths as a variable part, while the rest should be pretty 
>>> fixed.
>> 
>> Yes, it's possble.
> 
> Ok, are there examples available?

There are quite a few in global.mk and other .mk files, 
anyway I've already committed it, untested, so pls 
check it.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Przemysław Czerpak
On Mon, 22 Feb 2010, Szak�ts Viktor wrote:

Hi,

> >>> -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5
> >>> E:/SVILUPPO/GCC/V3.3.5/ is where I decided to put GCC on my system, while 
> >>> the
> >>> last 3.3.5 in the path depends on GCC version and so it changes from 
> >>> release
> >>> to release.
> >> Is '/gcc/3.3.5/' a mandatory element of the base dir, or 
> >> local user preference? I mean, may I simple install it 
> >> to 'E:/os2stuff/gcc/' instead of 'E:/Sviluppo/gcc/v3.3.5/'?
> > Sure.
> This means we can't use base path to get version 
> information needed to form paths for ld.exe.
> To me it's unclear how to make this automatic or 
> elegant.

Calling LD directly usually creates more or less serious problems
because some important switches set by GCC automatically may not
be added by us.

BTW the problem is caused by too long list of files passed
from GCC to LD because GCC does not use intermediate files.
But maybe it's possible to use small trick. DJGPP and as
I can see OS2 GNU ports expands @ used in parameters.
So maybe we can simply create 2 files. One with GCC/LD options
only and with reference to second file __flst__.tmp will have
list of object files. Such reference can be stored in first file
as: '-Wl,@__flst__.tmp'. If gcc expects at least one .o file then
we can pass first object file directly as GCC parameter and not
include in __flst__.tmp.

If Maurilio or David can verify it works then we can use such
method and it should resolve the problem.

best regards,
Przemek
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: -DTCPV40HDRS

2010-02-22 Thread David Arturo Macias Corona

>> than 600.
>From different IPs?

I do not know.
They are sourceforge numbers

>I don't believe there are so many OS/2 programmers still using a 
>clipper dialect out there. It is not possible!


:-), it is possible

Remember that Clipper and OS/2 are of same age

>Let's hope not to need one of those ATMs after we remove the switch! :D

>Anyway, I'd say to remove it, given Warp 3 is as old as Windows 95 or 
>even older, and let's see what happens.


Just cross your fingers

>The issue, though, is not when building on a warp 3 system, but trying 
>to use a program built without this option on a warp 3 system. More or

>less like running the code to find out interface addresses on a win95
>pc, because such a program requires libraries not available on and for 
>warp 3.


Is correct. Is not Harbour build related, but runtime

>Such macro may have some default defined by headers, and it's also 
>possible to override it by user. This is the generic way

>to force a build which targets and older version of the OS environment
>(or even newer, if the default is an older version).

Is correct too

>  * INSTALL
>- Deleted TCPV4 header instructions for OS/2. (they still
>  works, it just got less emphasis with this)

And due above facts, this has not be deleted
Instructions are for everyone and newer user can be pointed clearly on 
this fact reading INSTALL


David Macias


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Viktor Szakáts
Hi,

> -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i386-pc-os2-emx/3.3.5
> E:/SVILUPPO/GCC/V3.3.5/ is where I decided to put GCC on my system, while 
> the
> last 3.3.5 in the path depends on GCC version and so it changes from 
> release
> to release.
 Is '/gcc/3.3.5/' a mandatory element of the base dir, or 
 local user preference? I mean, may I simple install it 
 to 'E:/os2stuff/gcc/' instead of 'E:/Sviluppo/gcc/v3.3.5/'?
>>> Sure.
>> This means we can't use base path to get version 
>> information needed to form paths for ld.exe.
>> To me it's unclear how to make this automatic or 
>> elegant.
> 
> Calling LD directly usually creates more or less serious problems
> because some important switches set by GCC automatically may not
> be added by us.

Yes.

> BTW the problem is caused by too long list of files passed
> from GCC to LD because GCC does not use intermediate files.
> But maybe it's possible to use small trick. DJGPP and as
> I can see OS2 GNU ports expands @ used in parameters.

Yes.

> So maybe we can simply create 2 files. One with GCC/LD options
> only and with reference to second file __flst__.tmp will have
> list of object files. Such reference can be stored in first file
> as: '-Wl,@__flst__.tmp'. If gcc expects at least one .o file then
> we can pass first object file directly as GCC parameter and not
> include in __flst__.tmp.

That's a good idea.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread David Arturo Macias Corona

Maurilio:

>Newer os2gcc are installed usually in \usr\(compiler), but os2gcc335 is
>*mandatory* to be installed too, as newer rely in some gcc335 tools

>In my machine gcc335 is in \usr\
>gcc442 in \usr\local442 and dll0.o exist only in \usr\lib

>So path, references for both compilers are included, newer first

Do you have dll0.obj ?

I have both .o and .obj

OBJ_EXT is forced to .o, but we need to check what is using gcc in OMF 
(dll0.o or dll0.obj)



dir dll*.o* /s

Directory of E:\usr\lib

11/06/07 10:52p 1,955  0 a---  dll0.o
11/06/07 10:52p 2,797  0 a---  dll0.obj
11/06/07 10:52p 1,955  0 a---  dll0hi.o
11/06/07 10:52p 2,797  0 a---  dll0hi.obj
11/06/07 10:52p 1,279  0 a---  dll0hinofork.o
11/06/07 10:52p 2,105  0 a---  dll0hinofork.obj
11/06/07 10:52p 1,279  0 a---  dll0hinoforknoux.o
11/06/07 10:52p 2,105  0 a---  dll0hinoforknoux.obj
11/06/07 10:52p 1,279  0 a---  dll0hinoux.o
11/06/07 10:52p 2,105  0 a---  dll0hinoux.obj
11/06/07 10:52p 1,279  0 a---  dll0nofork.o
11/06/07 10:52p 2,105  0 a---  dll0nofork.obj
11/06/07 10:52p 1,279  0 a---  dll0noforknoux.o
11/06/07 10:52p 2,105  0 a---  dll0noforknoux.obj
11/06/07 10:52p 1,279  0 a---  dll0noux.o
11/06/07 10:52p 2,105  0 a---  dll0noux.obj

David Macias


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Viktor Szakáts
>> So maybe we can simply create 2 files. One with GCC/LD options
>> only and with reference to second file __flst__.tmp will have
>> list of object files. Such reference can be stored in first file
>> as: '-Wl,@__flst__.tmp'. If gcc expects at least one .o file then
>> we can pass first object file directly as GCC parameter and not
>> include in __flst__.tmp.
> 
> That's a good idea.

The file list is already separate, so to try this solution out, 
only '-Wl,' needs to be added right in front of '@__dyn__.tmp':

--- [gcc.mk]
   $(DY) $(DFLAGS) $(HB_USER_DFLAGS) $(DY_OUT)$(DYN_DIR)/$@ -Wl,@__dyn__.tmp 
__dyn__.def $(DLIBS) $(DYSTRIP)
---

This assumes vanilla 2.0.0 gcc.mk, not the hacked ones currently 
on SVN.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread David Arturo Macias Corona

Przemek:

[Przemek]
>Calling LD directly usually creates more or less serious problems
>because some important switches set by GCC automatically may not
>be added by us.

>BTW the problem is caused by too long list of files passed
>from GCC to LD because GCC does not use intermediate files.
>But maybe it's possible to use small trick. DJGPP and as
>I can see OS2 GNU ports expands @ used in parameters.
>So maybe we can simply create 2 files. One with GCC/LD options
>only and with reference to second file __flst__.tmp will have
>list of object files. Such reference can be stored in first file
>as: '-Wl, at __flst__.tmp'. If gcc expects at least one .o file then
>we can pass first object file directly as GCC parameter and not
>include in __flst__.tmp.

>If Maurilio or David can verify it works then we can use such
>method and it should resolve the problem.


[Viktor]
>The file list is already separate, so to try this solution out,
>only '-Wl,' needs to be added right in front of '@__dyn__.tmp':

>--- [gcc.mk]
>   $(DY) $(DFLAGS) $(HB_USER_DFLAGS) $(DY_OUT)$(DYN_DIR)/$@ -Wl, at 
>__dyn__.tmp __dyn__.def $(DLIBS) $(DYSTRIP)

>---

>This assumes vanilla 2.0.0 gcc.mk, not the hacked ones currently
>on SVN.

Unfortunatelly we do not have matter to test right now
As I posted recently, changes in libraries caused all .dll can be build 
fine, no one fails
I will look for older versions to find which fail and to test this 
approach.

13841 is an option. How must be specified in SVN ?

In all these messages ping-pong I was tempted to insert the question:
 "Do we really need to force direct ld.exe/emxomfld.exe right now ?"
My answer is no

David Macias


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Przemysław Czerpak
On Mon, 22 Feb 2010, Szak�ts Viktor wrote:

Hi,

> >> So maybe we can simply create 2 files. One with GCC/LD options
> >> only and with reference to second file __flst__.tmp will have
> >> list of object files. Such reference can be stored in first file
> >> as: '-Wl,@__flst__.tmp'. If gcc expects at least one .o file then
> >> we can pass first object file directly as GCC parameter and not
> >> include in __flst__.tmp.
> > That's a good idea.
> The file list is already separate, so to try this solution out, 
> only '-Wl,' needs to be added right in front of '@__dyn__.tmp':
> --- [gcc.mk]
>$(DY) $(DFLAGS) $(HB_USER_DFLAGS) $(DY_OUT)$(DYN_DIR)/$@ -Wl,@__dyn__.tmp 
> __dyn__.def $(DLIBS) $(DYSTRIP)
> ---
> This assumes vanilla 2.0.0 gcc.mk, not the hacked ones currently 
> on SVN.

Looks OK for me.
If OS2 GCC port does not need at least one .o/.obj file (in my Linux box
it doesn't) then it should work and resolve the problem without direct
call to LD.

Maurilio or David, Can you check it?

best regards,
Przemek
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread David Arturo Macias Corona

Przemek:

>Looks OK for me.
>If OS2 GCC port does not need at least one .o/.obj file (in my Linux
>box it doesn't) then it should work and resolve the problem without
>direct call to LD.

>Maurilio or David, Can you check it?

Work in progress with "-r 13841"

David Macias

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Przemysław Czerpak
On Mon, 22 Feb 2010, David Arturo Macias Corona wrote:

Hi David,

> >The file list is already separate, so to try this solution out,
> >only '-Wl,' needs to be added right in front of '@__dyn__.tmp':
> >--- [gcc.mk]
> >   $(DY) $(DFLAGS) $(HB_USER_DFLAGS) $(DY_OUT)$(DYN_DIR)/$@ -Wl, at
> >__dyn__.tmp __dyn__.def $(DLIBS) $(DYSTRIP)
> >---
> >This assumes vanilla 2.0.0 gcc.mk, not the hacked ones currently
> >on SVN.
> Unfortunatelly we do not have matter to test right now
> As I posted recently, changes in libraries caused all .dll can be
> build fine, no one fails

It's less important if current version fails or not.
More important is information if above trick can be used.
If this trick works without any errors then it should eliminate
passing object files in command line between GCC and LD what is
the source of problem because GCC will not expand -Wl,@__dyn__.tmp
but pass @__dyn__.tmp directly to LD.

best regards,
Przemek
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread David Arturo Macias Corona

Przemek:

>It's less important if current version fails or not.
>More important is information if above trick can be used.
>If this trick works without any errors then it should eliminate
>passing object files in command line between GCC and LD what is
>the source of problem because GCC will not expand -Wl, at __dyn__.tmp
>but pass @__dyn__.tmp directly to LD.

Check me if  "-Wl," is inserted correctly

First try using -v switch in gcc:
 __dyn__.tmp is expanded

gcc  -shared -L../../../../../lib/os2/gccomf -Zomf -v  -o 
../../../../../bin/os2/gccomf/harbour.dll -Wl, @__dyn__.tmp __dyn__.def 
-lsocket

Using built-in specs.
Target: i386-pc-os2-emx
Configured with: ./configure --prefix=/usr/local44 --enable-shared 
--enable-languages=c,c++,fortran --with-gnu-as --disable-bootstrap 
--disable-libstdcxx-pch --enable-threads

Thread model: os2
gcc version 4.4.2 (GCC)
COMPILER_PATH=E:/usr/local442/bin/../libexec/gcc/i386-pc-os2-emx/4.4.2/;E:/usr/local442/bin/../libexec/gcc/;E:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../../../i386-pc-os2-emx/bin/
LIBRARY_PATH=E:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/;E:/usr/local442/bin/../lib/gcc/;E:/usr/local442/lib/gcc/i386-pc-os2-emx/4.4.2/;E:/usr/local442/lib/;E:/usr/lib/;./;E:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../../../i386-pc-os2-emx/lib/;E:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../../;/usr/lib/
COLLECT_GCC_OPTIONS='-shared' '-L../../../../../lib/os2/gccomf' '-Zomf' 
'-v' '-o' '../../../../../bin/os2/gccomf/harbour.dll' '-mtune=i386'
 emxomfld.exe -Zdll -o ../../../../../bin/os2/gccomf/harbour.dll 
E:/usr/lib/dll0.obj -L../../../../../lib/os2/gccomf 
-LE:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2 
-LE:/usr/local442/bin/../lib/gcc 
-LE:/usr/local442/lib/gcc/i386-pc-os2-emx/4.4.2 -LE:/usr/local442/lib 
-LE:/usr/lib -L. 
-LE:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../../../i386-pc-os2-emx/lib 
-LE:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../.. 
../../../../../src/common/obj/os2/gccomf/expropt1.o 
../../../../../src/common/obj/os2/gccomf/expropt2.o


[...]

../../../../../src/vm/obj/os2/gccomf/pvalue.o 
../../../../../src/vm/obj/os2/gccomf/runner.o 
../../../../../src/vm/obj/os2/gccomf/vm.o __dyn__.def -lsocket -lc_alias 
-lc_dll -los2 -lgcc442 -lc_alias -lc_dll -los2 -lend
emxomf: Input file `E:\harbour102\harbour\src\dynlib\obj\os2\gccomf' is 
not seekable
emxomfld: a.out to omf conversion failed for 
'E:\harbour102\harbour\src\dynlib\obj\os2\gccomf'.

make[3]: *** [harbour.dll] Error 1

David Macias


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread David Arturo Macias Corona

>  emxomfld.exe -Zdll -o ../../../../../bin/os2/gccomf/harbour.dll
>E:/usr/lib/dll0.obj -L../../../../../lib/os2/gccomf
>-LE:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2
[...]
>../../../../../src/common/obj/os2/gccomf/expropt1.o

And is using .obj in OMF type, as usual:
  E:/usr/lib/dll0.obj

OBJ_EXT are forced to .o

David Macias


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Viktor Szakáts
> >../../../../../src/common/obj/os2/gccomf/expropt1.o
> 
> And is using .obj in OMF type, as usual:
>  E:/usr/lib/dll0.obj
> 
> OBJ_EXT are forced to .o

Forced. I have to tell you that I can't remember 
the whole lengthy discussion before implementing 
this the way it is now, but since it takes near 
zero effort to switch to .obj in .mk files, .o 
is used consistently in build/hbmk2, and since 
you didn't report any problems with any of the 
discussed gcc versions, I must assume we settled 
for .o for good reason. Also note I don't personally 
mind what extension does gcc actually requires.

Now it's "forced".

If current state is suddenly wrong for whatever 
reasons, tell clearly what happened in between, 
and what you suggest now for a solution.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Error compiling hbqt_hbslots.cpp

2010-02-22 Thread Franček Prijatelj

Hi

Here is an error compiling with MSVC8:

cl.exe   -I. -I../../../../../include -nologo -TP -W4 -wd4127 -Ot2b1 -EHs-c-
-Zi -DHB_LEGACY_TYPES_OFF -DUNICODE -DHB_TR_LEVEL_DEBUG 
-IC:\Qt\msvc\include -IC:\Qt\msvc\include/QtCore -IC:\Qt\msvc\include/QtGui
-IC:\Qt\msvc\include/QtNetwork  -Fohbqt_hbslots.obj -c
../../../hbqt_hbslots.cpp
hbqt_hbslots.cpp
../../../hbqt_hbslots.cpp(207) : fatal error C1061: compiler limit : blocks
nested too deeply
mingw32-make[3]: [hbqt_hbslots.obj] Error 2 (ignored)


BRGDS
Franček
-- 
View this message in context: 
http://old.nabble.com/Error-compiling-hbqt_hbslots.cpp-tp27689677p27689677.html
Sent from the Harbour - Dev mailing list archive at Nabble.com.

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
Przemyslaw,

it worked here and produced both harbour.dll and harbourm.dll

ar   -M < __lib__.tmp & strip -S ../../../../../lib/os2/gcc/hbdebug.a & ..\..\..
\..\..\config\os2rm -f __lib__.tmp
gcc  -shared -L../../../../../lib/os2/gcc  -o ../../../../../bin/os2/gcc/harbour
.dll -Wl,@__dyn__.tmp __dyn__.def -lsocket -s
emximp -o ../../../../../lib/os2/gcc/harbour.a ../../../../../bin/os2/gcc/harbou
r.dll
gcc  -shared -L../../../../../../lib/os2/gcc  -o ../../../../../../bin/os2/gcc/h
arbourm.dll -Wl,@__dyn__.tmp __dyn__.def -lsocket -s
emximp -o ../../../../../../lib/os2/gcc/harbourm.a ../../../../../../bin/os2/gcc
/harbourm.dll


Question is: did it expand or not @__dyb__.tmp list before calling ld?

Now I'll try with my ld.exe to see what gets passed to ld.exe.

Maurilio.



Przemysław Czerpak wrote:
> On Mon, 22 Feb 2010, Szak�ts Viktor wrote:
> 
> Hi,
> 
 So maybe we can simply create 2 files. One with GCC/LD options
 only and with reference to second file __flst__.tmp will have
 list of object files. Such reference can be stored in first file
 as: '-Wl,@__flst__.tmp'. If gcc expects at least one .o file then
 we can pass first object file directly as GCC parameter and not
 include in __flst__.tmp.
>>> That's a good idea.
>> The file list is already separate, so to try this solution out, 
>> only '-Wl,' needs to be added right in front of '@__dyn__.tmp':
>> --- [gcc.mk]
>>$(DY) $(DFLAGS) $(HB_USER_DFLAGS) $(DY_OUT)$(DYN_DIR)/$@ -Wl,@__dyn__.tmp 
>> __dyn__.def $(DLIBS) $(DYSTRIP)
>> ---
>> This assumes vanilla 2.0.0 gcc.mk, not the hacked ones currently 
>> on SVN.
> 
> Looks OK for me.
> If OS2 GCC port does not need at least one .o/.obj file (in my Linux box
> it doesn't) then it should work and resolve the problem without direct
> call to LD.
> 
> Maurilio or David, Can you check it?
> 
> best regards,
> Przemek
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour
> 

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread David Arturo Macias Corona

Przemek:

>Check me if  "-Wl," is inserted correctly

It was wrong including space at end

Second try using -v switch in gcc:
 __dyn__.tmp is NOT expanded   :-)

gcc  -shared -L../../../../../lib/os2/gccomf -Zomf -v  -o 
../../../../../bin/os2/gccomf/harbour.dll -Wl,@__dyn__.tmp __dyn__.def 
-lsocket

Using built-in specs.
Target: i386-pc-os2-emx
Configured with: ./configure --prefix=/usr/local44 --enable-shared 
--enable-languages=c,c++,fortran --with-gnu-as --disable-bootstrap 
--disable-libstdcxx-pch --enable-threads

Thread model: os2
gcc version 4.4.2 (GCC)
COMPILER_PATH=E:/usr/local442/bin/../libexec/gcc/i386-pc-os2-emx/4.4.2/;E:/usr/local442/bin/../libexec/gcc/;E:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../../../i386-pc-os2-emx/bin/
LIBRARY_PATH=E:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/;E:/usr/local442/bin/../lib/gcc/;E:/usr/local442/lib/gcc/i386-pc-os2-emx/4.4.2/;E:/usr/local442/lib/;E:/usr/lib/;./;E:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../../../i386-pc-os2-emx/lib/;E:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../../;/usr/lib/
COLLECT_GCC_OPTIONS='-shared' '-L../../../../../lib/os2/gccomf' '-Zomf' 
'-v' '-o' '../../../../../bin/os2/gccomf/harbour.dll' '-mtune=i386'
 emxomfld.exe -Zdll -o ../../../../../bin/os2/gccomf/harbour.dll 
E:/usr/lib/dll0.obj -L../../../../../lib/os2/gccomf 
-LE:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2 
-LE:/usr/local442/bin/../lib/gcc 
-LE:/usr/local442/lib/gcc/i386-pc-os2-emx/4.4.2 -LE:/usr/local442/lib 
-LE:/usr/lib -L. 
-LE:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../../../i386-pc-os2-emx/lib 
-LE:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../.. 
@__dyn__.tmp __dyn__.def -lsocket -lc_alias -lc_dll -los2 -lgcc442 
-lc_alias -lc_dll -los2 -lend
Warning! W1058: file ldN4tZz5.: line(618): protmode option not valid for 
an OS/2 EMX dynamic link library
emximp -o ../../../../../lib/os2/gccomf/harbour.lib 
../../../../../bin/os2/gccomf/harbour.dll

make[3]: Leaving directory `E:/harbour102/harbour/src/dynlib/obj/os2/gccomf'
make[3]: Entering directory `E:/harbour102/harbour/src/dynlib/mt'
make[4]: Entering directory 
`E:/harbour102/harbour/src/dynlib/mt/obj/os2/gccomf'
gcc  -shared -L../../../../../../lib/os2/gccomf -Zomf -v  -o 
../../../../../../bin/os2/gccomf/harbourm.dll -Wl,@__dyn__.tmp 
__dyn__.def -lsocket

Using built-in specs.
Target: i386-pc-os2-emx
Configured with: ./configure --prefix=/usr/local44 --enable-shared 
--enable-languages=c,c++,fortran --with-gnu-as --disable-bootstrap 
--disable-libstdcxx-pch --enable-threads

Thread model: os2
gcc version 4.4.2 (GCC)
COMPILER_PATH=E:/usr/local442/bin/../libexec/gcc/i386-pc-os2-emx/4.4.2/;E:/usr/local442/bin/../libexec/gcc/;E:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../../../i386-pc-os2-emx/bin/
LIBRARY_PATH=E:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/;E:/usr/local442/bin/../lib/gcc/;E:/usr/local442/lib/gcc/i386-pc-os2-emx/4.4.2/;E:/usr/local442/lib/;E:/usr/lib/;./;E:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../../../i386-pc-os2-emx/lib/;E:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../../;/usr/lib/
COLLECT_GCC_OPTIONS='-shared' '-L../../../../../../lib/os2/gccomf' 
'-Zomf' '-v' '-o' '../../../../../../bin/os2/gccomf/harbourm.dll' 
'-mtune=i386'
 emxomfld.exe -Zdll -o ../../../../../../bin/os2/gccomf/harbourm.dll 
E:/usr/lib/dll0.obj -L../../../../../../lib/os2/gccomf 
-LE:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2 
-LE:/usr/local442/bin/../lib/gcc 
-LE:/usr/local442/lib/gcc/i386-pc-os2-emx/4.4.2 -LE:/usr/local442/lib 
-LE:/usr/lib -L. 
-LE:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../../../i386-pc-os2-emx/lib 
-LE:/usr/local442/bin/../lib/gcc/i386-pc-os2-emx/4.4.2/../../.. 
@__dyn__.tmp __dyn__.def -lsocket -lc_alias -lc_dll -los2 -lgcc442 
-lc_alias -lc_dll -los2 -lend
Warning! W1058: file ldT6yXLH.: line(617): protmode option not valid for 
an OS/2 EMX dynamic link library
emximp -o ../../../../../../lib/os2/gccomf/harbourm.lib 
../../../../../../bin/os2/gccomf/harbourm.dll
make[4]: Leaving directory 
`E:/harbour102/harbour/src/dynlib/mt/obj/os2/gccomf'



and both .dll are created

22/02/10 10:07a 3,837,134  0 a---  harbour.dll
22/02/10 10:08a 3,837,545  0 a---  harbourm.dll

Maurilio, Viktor, Przemek: solution is "-Wl,"

David Macias



___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Error compiling hbqt_hbslots.cpp

2010-02-22 Thread Franček Prijatelj

Hi


Franček Prijatelj wrote:
> 
> Hi
> 
> Here is an error compiling with MSVC8:
> 
> cl.exe   -I. -I../../../../../include -nologo -TP -W4 -wd4127 -Ot2b1
> -EHs-c- -Zi -DHB_LEGACY_TYPES_OFF -DUNICODE -DHB_TR_LEVEL_DEBUG 
> -IC:\Qt\msvc\include -IC:\Qt\msvc\include/QtCore
> -IC:\Qt\msvc\include/QtGui -IC:\Qt\msvc\include/QtNetwork 
> -Fohbqt_hbslots.obj -c ../../../hbqt_hbslots.cpp
> hbqt_hbslots.cpp
> ../../../hbqt_hbslots.cpp(207) : fatal error C1061: compiler limit :
> blocks nested too deeply
> mingw32-make[3]: [hbqt_hbslots.obj] Error 2 (ignored)
> 
> 


MSVC8 has 128 nesting limit.

BRGDS
Franček

-- 
View this message in context: 
http://old.nabble.com/Error-compiling-hbqt_hbslots.cpp-tp27689677p27689817.html
Sent from the Harbour - Dev mailing list archive at Nabble.com.

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
Przemyslaw, Viktor,

yes it works as expected, ld.exe gets called with @__dyn__.tmp as expected!!

See here

gcc  -shared -L../../../../../lib/os2/gcc  -o ../../../../../bin/os2/gcc/harbour
.dll -Wl,@__dyn__.tmp __dyn__.def -lsocket -s

8<
-Zdll -o ../../../../../bin/os2/gcc/harbour.dll -s E:/SVILUPPO/GCC/V3.3.5/USR/li
b/dll0.o -L../../../../../lib/os2/gcc -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i
386-pc-os2-emx/3.3.5 -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib -LE:/SVILUPPO/GCC/
V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 -LE:/SVILUPPO/GCC/V3.3.5/USR/lib -L
E:/REPOSITORY/HARBOUR/src/dynlib/obj/os2/gcc -LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gc
c-lib/i386-pc-os2-emx/3.3.5 -LE:/Sviluppo/gcc/v3.3.5/usr/i386-pc-os2-emx/lib -LE
:/SVILUPPO/GCC/V3.3.5/USR/i386-pc-os2-emx/lib -LE:/Sviluppo/gcc/v3.3.5/usr/lib @
__dyn__.tmp __dyn__.def -lsocket -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -l
c_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los
2 -lgcc_so_d -lc_alias -lc_dll -los2
>8emximp -o ../../../../../lib/os2/gcc/harbour.a
 ../../../../../bin/os2/gcc/harbour.dll
emximp: Cannot open input file `../../../../../bin/os2/gcc/harbour.dll'
make[2]: *** [harbour.dll] Error 2
make[1]: *** [descend] Error 2
make: *** [dynlib] Error 2


The error come from the fact that my ld.exe does not build harbour.dll

So, this should close the issue for ever :)

Thanks so much, guys!

Maurilio.


Przemysław Czerpak wrote:
> On Mon, 22 Feb 2010, Szak�ts Viktor wrote:
> 
> Hi,
> 
 So maybe we can simply create 2 files. One with GCC/LD options
 only and with reference to second file __flst__.tmp will have
 list of object files. Such reference can be stored in first file
 as: '-Wl,@__flst__.tmp'. If gcc expects at least one .o file then
 we can pass first object file directly as GCC parameter and not
 include in __flst__.tmp.
>>> That's a good idea.
>> The file list is already separate, so to try this solution out, 
>> only '-Wl,' needs to be added right in front of '@__dyn__.tmp':
>> --- [gcc.mk]
>>$(DY) $(DFLAGS) $(HB_USER_DFLAGS) $(DY_OUT)$(DYN_DIR)/$@ -Wl,@__dyn__.tmp 
>> __dyn__.def $(DLIBS) $(DYSTRIP)
>> ---
>> This assumes vanilla 2.0.0 gcc.mk, not the hacked ones currently 
>> on SVN.
> 
> Looks OK for me.
> If OS2 GCC port does not need at least one .o/.obj file (in my Linux box
> it doesn't) then it should work and resolve the problem without direct
> call to LD.
> 
> Maurilio or David, Can you check it?
> 
> best regards,
> Przemek
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour
> 

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread David Arturo Macias Corona

Maurilio:

>Question is: did it expand or not @__dyb__.tmp list before calling ld?

As gcc -v show, does NOT expand

>Now I'll try with my ld.exe to see what gets passed to ld.exe.

Should be as gcc -v

Problem is solved

David Macias


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Error compiling hbqt_hbslots.cpp

2010-02-22 Thread Franček Prijatelj

Hi


Franček Prijatelj wrote:
> 
> 
> Here is an error compiling with MSVC8:
> 
> cl.exe   -I. -I../../../../../include -nologo -TP -W4 -wd4127 -Ot2b1
> -EHs-c- -Zi -DHB_LEGACY_TYPES_OFF -DUNICODE -DHB_TR_LEVEL_DEBUG 
> -IC:\Qt\msvc\include -IC:\Qt\msvc\include/QtCore
> -IC:\Qt\msvc\include/QtGui -IC:\Qt\msvc\include/QtNetwork 
> -Fohbqt_hbslots.obj -c ../../../hbqt_hbslots.cpp
> hbqt_hbslots.cpp
> ../../../hbqt_hbslots.cpp(207) : fatal error C1061: compiler limit :
> blocks nested too deeply
> mingw32-make[3]: [hbqt_hbslots.obj] Error 2 (ignored)
> 
> 


Only solution to simplify nesting level:
http://msdn.microsoft.com/en-us/library/dcda4f64%28VS.71%29.aspx

BRGDS
Franček
-- 
View this message in context: 
http://old.nabble.com/Error-compiling-hbqt_hbslots.cpp-tp27689677p27689885.html
Sent from the Harbour - Dev mailing list archive at Nabble.com.

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Maurilio Longo
Yes,

sorry I rushed testing instead of keep reading messages.

Solved! .)

Maurilio.

David Arturo Macias Corona wrote:
> Maurilio:
> 
>>Question is: did it expand or not @__dyb__.tmp list before calling ld?
> 
> As gcc -v show, does NOT expand
> 
>>Now I'll try with my ld.exe to see what gets passed to ld.exe.
> 
> Should be as gcc -v
> 
> Problem is solved
> 
> David Macias
> 
> 
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour
> 

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread Viktor Szakáts
Great, nice cooperation. Just committed this version. Case closed.

Brgds,
Viktor

On 2010 Feb 22, at 17:18, Maurilio Longo wrote:

> Przemyslaw, Viktor,
> 
> yes it works as expected, ld.exe gets called with @__dyn__.tmp as expected!!
> 
> See here
> 
> gcc  -shared -L../../../../../lib/os2/gcc  -o 
> ../../../../../bin/os2/gcc/harbour
> .dll -Wl,@__dyn__.tmp __dyn__.def -lsocket -s
> 
> 8<
> -Zdll -o ../../../../../bin/os2/gcc/harbour.dll -s 
> E:/SVILUPPO/GCC/V3.3.5/USR/li
> b/dll0.o -L../../../../../lib/os2/gcc 
> -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib/i
> 386-pc-os2-emx/3.3.5 -LE:/Sviluppo/gcc/v3.3.5/usr/lib/gcc-lib 
> -LE:/SVILUPPO/GCC/
> V3.3.5/USR/lib/gcc-lib/i386-pc-os2-emx/3.3.5 -LE:/SVILUPPO/GCC/V3.3.5/USR/lib 
> -L
> E:/REPOSITORY/HARBOUR/src/dynlib/obj/os2/gcc 
> -LE:/SVILUPPO/GCC/V3.3.5/USR/lib/gc
> c-lib/i386-pc-os2-emx/3.3.5 -LE:/Sviluppo/gcc/v3.3.5/usr/i386-pc-os2-emx/lib 
> -LE
> :/SVILUPPO/GCC/V3.3.5/USR/i386-pc-os2-emx/lib 
> -LE:/Sviluppo/gcc/v3.3.5/usr/lib @
> __dyn__.tmp __dyn__.def -lsocket -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias 
> -l
> c_dll -los2 -lgcc_so_d -lc_alias -lc_dll -los2 -lgcc_so_d -lc_alias -lc_dll 
> -los
> 2 -lgcc_so_d -lc_alias -lc_dll -los2
> >8emximp -o 
> ../../../../../lib/os2/gcc/harbour.a
> ../../../../../bin/os2/gcc/harbour.dll
> emximp: Cannot open input file `../../../../../bin/os2/gcc/harbour.dll'
> make[2]: *** [harbour.dll] Error 2
> make[1]: *** [descend] Error 2
> make: *** [dynlib] Error 2
> 
> 
> The error come from the fact that my ld.exe does not build harbour.dll
> 
> So, this should close the issue for ever :)
> 
> Thanks so much, guys!
> 
> Maurilio.
> 
> 
> Przemysław Czerpak wrote:
>> On Mon, 22 Feb 2010, Szak�ts Viktor wrote:
>> 
>> Hi,
>> 
> So maybe we can simply create 2 files. One with GCC/LD options
> only and with reference to second file __flst__.tmp will have
> list of object files. Such reference can be stored in first file
> as: '-Wl,@__flst__.tmp'. If gcc expects at least one .o file then
> we can pass first object file directly as GCC parameter and not
> include in __flst__.tmp.
 That's a good idea.
>>> The file list is already separate, so to try this solution out, 
>>> only '-Wl,' needs to be added right in front of '@__dyn__.tmp':
>>> --- [gcc.mk]
>>>   $(DY) $(DFLAGS) $(HB_USER_DFLAGS) $(DY_OUT)$(DYN_DIR)/$@ -Wl,@__dyn__.tmp 
>>> __dyn__.def $(DLIBS) $(DYSTRIP)
>>> ---
>>> This assumes vanilla 2.0.0 gcc.mk, not the hacked ones currently 
>>> on SVN.
>> 
>> Looks OK for me.
>> If OS2 GCC port does not need at least one .o/.obj file (in my Linux box
>> it doesn't) then it should work and resolve the problem without direct
>> call to LD.
>> 
>> Maurilio or David, Can you check it?
>> 
>> best regards,
>> Przemek
>> ___
>> Harbour mailing list (attachment size limit: 40KB)
>> Harbour@harbour-project.org
>> http://lists.harbour-project.org/mailman/listinfo/harbour
>> 
> 
> -- 
> __
> |  |  | |__| Maurilio Longo
> |_|_|_|| farmaconsult s.r.l.
> 
> 
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] SF.net SVN: harbour-project:[13961] trunk/harbour

2010-02-22 Thread vszakats
Revision: 13961
  
http://harbour-project.svn.sourceforge.net/harbour-project/?rev=13961&view=rev
Author:   vszakats
Date: 2010-02-22 16:24:59 + (Mon, 22 Feb 2010)

Log Message:
---
2010-02-22 17:23 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
  * contrib/hbqt/hbqt_hbdbfmodel.cpp
  * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
  * contrib/hbqt/hbqt_hbqtableview.cpp
  * contrib/hbqt/hbqt_hbevents.cpp
  * contrib/hbqt/hbqt_destruct.cpp
  * contrib/hbqt/hbqt_utils.cpp
  * contrib/hbqt/hbqt_hbqmainwindow.cpp
  * contrib/hbqt/hbqt_hbqplaintextedit.cpp
  * contrib/hbqt/hbqt_base.cpp
  * contrib/hbqt/hbqt_hbslots.cpp
* Cleaned header inclusion order after adding hbapi.h to hbqt.h.

  * config/os2/gcc.mk
! Fixed to use '-Wl,' trick proposed by Przemek, to forward obj list
  script filename directly to linker.
  This gets around the problem where gcc tries to pass expanded
  scripts to subprocesses (ld) via cmdline, thus imposing a 32K
  limit also to script files.

Modified Paths:
--
trunk/harbour/ChangeLog
trunk/harbour/config/os2/gcc.mk
trunk/harbour/contrib/hbqt/hbqt_base.cpp
trunk/harbour/contrib/hbqt/hbqt_destruct.cpp
trunk/harbour/contrib/hbqt/hbqt_hbdbfmodel.cpp
trunk/harbour/contrib/hbqt/hbqt_hbevents.cpp
trunk/harbour/contrib/hbqt/hbqt_hbqmainwindow.cpp
trunk/harbour/contrib/hbqt/hbqt_hbqplaintextedit.cpp
trunk/harbour/contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
trunk/harbour/contrib/hbqt/hbqt_hbqtableview.cpp
trunk/harbour/contrib/hbqt/hbqt_hbslots.cpp
trunk/harbour/contrib/hbqt/hbqt_utils.cpp


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] Re: OS/2: -DTCPV40HDRS

2010-02-22 Thread Maurilio Longo
Viktor,

I'm not aware of such a macro, in the last twenty years, at least, OS/2 APIs
didn't change, so maybe there was not such a need and TCPV40HDRS was
introduced for one of the very few, if not the only one, subsystems to change
APIs during all those years.

Maurilio.


Viktor Szakáts wrote:
>> Viktor,
>>
>> I'd say a ver command should return a version >= 4.00
>>
>> (E:\harbour\ftpd)ver
>>
>> The Operating System/2 Version is 4.50
> 
> That tells us the host OS version. We need 
> a way to tell the version of OS/2 we're 
> building _for_ though. Similar to _WIN32_WINNT 
> macro.
> 
> Such macro may have some default defined 
> by headers, and it's also possible to 
> override it by user. This is the generic way 
> to force a build which targets and older 
> version of the OS environment (or even 
> newer, if the default is an older version).
> 
>> The issue, though, is not when building on a warp 3 system, but trying to use
>> a program built without this option on a warp 3 system. More or less like
>> running the code to find out interface addresses on a win95 pc, because such 
>> a
>> program requires libraries not available on and for warp 3.
> 
> (pls see above)
> 
> Brgds,
> Viktor
> 
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour
> 

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: Harbour 13945

2010-02-22 Thread David Arturo Macias Corona

Viktor:

>> And is using .obj in OMF type, as usual:
>>  E:/usr/lib/dll0.obj
>>
>> OBJ_EXT are forced to .o

>Forced. I have to tell you that I can't remember
>the whole lengthy discussion before implementing
>this the way it is now, but since it takes near
>zero effort to switch to .obj in .mk files, .o
>is used consistently in build/hbmk2, and since
>you didn't report any problems with any of the
>discussed gcc versions, I must assume we settled
>for .o for good reason. Also note I don't personally
>mind what extension does gcc actually requires.

>Now it's "forced".

>If current state is suddenly wrong for whatever
>reasons, tell clearly what happened in between,
>and what you suggest now for a solution.

The reason was hbmk2 feature:
 "you lose the option to build multiple .c input files"

You can check "OS/2: hbmk2" messages, for example
 Re: OS/2: hbmk2
  5/11/09 04:59 AM
is included below

.obj is for OMF type a "convention" in OS/2 world, as .lib does too

gcc -v show this convention in use of:
E:/usr/lib/dll0.obj   in OMF type
and
E:/usr/lib/dll0.o in a.out type

Until today Harbour and hbmk2 work fine using .o, but we must remember 
.obj in OMF when using other object files which not belong to Harbour


David Macias



Viktor:

>So in Harbour we try to force some alien extension instead
>of .o which is the default extension in both OMF and a.out
>modes.

>> Solution is clear: sync use of object extension in both phases

>I know. However I don't like this approach. Speaking
>of both Harbour build and hbmk2, we use the default
>extensions for all supported compilers.

>For some reason this was violated by using .obj for
>gccomf. Not being an OS/2 user this wasn't apparent
>to me, I used what I saw.

>Using non-default extensions have some drawbacks,
>since you need tell each tool your extension of choice.

>In case of gcc, this is -o, however in this mode,
>you lose the option to build multiple .c input files
>at one pass. Which in turn makes performance much
>worse in certain cases. Plus it introduces an exception
>in both hbmk2 and Harbour build. Latter isn't affected
>too much as it doesn't use optimized calls to compiler
>using multiple inputs, but in hbmk2 this would need
>some extra logic to handle this exception case.

>For a peace of mind and "standardness", I vote to follow
>compiler defaults, whatever these are. No need to fight
>what GCC developers have decided on. With the case of .obj,
>we're trying to mimic other OS/2 compilers doesn't seem like
>a good idea.


>I could sure spend a few hours on it, but 1) I don't
>have time for it now 2) This would create an
>unprecedented exception for gccomf, which I don't think
>is a good idea on the long run (it has to be maintained).
>+1) Since this is not the default in GCC, I assume they
>had a good reason to make this decision, and any
>3rd party tool is better not reinvent the wheel
>since it may just cause problems down the road.

>Once GCC OS/2 porters decide to switch to other
>extension, we can follow suit.

>The idea is to use as few forced stuff and special
>tricks as possible. On some occasions gcc -o _is_ used
>even now, but only if inevitable (in -inc mode f.e.).

>If .o/.a is unusual for OS/2-OMF, the best place to
>complain is GCC OS/2 developers.


Due origin from a.out type only, for gcc .obj, .lib, -Zomf, 
EMXOMFLD_TYPE, EXOMFLD_LINKER are aliens but they are well known and 
accepted in OS/2 environment


Remember, os2gcc work with their own aliens and they should be well 
managed/applied


Other aliens for gcc in OS/2 are:
-Zcrtdll, -Zdll, -Zexe, -Zhigh-mem, -Zlinker, -Zmap, -Zno-autoconv,
-Zautoconv, -Zargs-wild, -Zargs-resp, -Zdll-search, -Zsym, -Zhigh-low
-Zno-fork, -Zno-unix, -Zbin-files, -Zbsd-signals, -Zmt, -Zmtd, -Zmts
-Zno-rte, -Zsmall-conv, -Zstack, -Zso, -Zsys, -Zsysv-signals
EMXOMFLD_RC_TYPE, EMXOMFLD_RC
emxomfar.exe, emxomfld.exe, emxomf* family

I do not understand next two:
* _wildcard (int *argc, char ***argv): Same as in EMX, i.e. it 
expands it's arguments like a unix shell would do (but OS/2 cmd.exe 
doesn't), so you typically want to use this when porting a unix command 
line application. Instead of adding this to a program, compilation with 
-Zargs-wild can be used.
* _response (int *argc, char ***argv): Same as in EMX. Expand 
response files (@FILENAME). The FILENAME contains a list of arguments, 
one per line. Arguments enclosed in double quotes will not be expanded. 
If a response file can not be opened, the argument is kept the same. 
-Zargs-resp will automatically compile this in.




I reported one error with hbmk2.exe in os2gcc-OMF and now we know is due 
hbmk2.prg are not managing our own object file extension and are relying 
in default C compiler extensions


Use of .obj just exploited this situation
Is not case of os2gcc-OMF. Any other user may found the problem if 
change object file extension for own purposes


I understand clearly because you explained it, this situation exist

Re: [Harbour] SF.net SVN: harbour-project:[13961] trunk/harbour

2010-02-22 Thread Maurilio Longo
Viktor,

just to know, what does -Wl really mean to the compiler?

Best regards.

Maurilio.

vszak...@users.sourceforge.net wrote:
> Revision: 13961
>   
> http://harbour-project.svn.sourceforge.net/harbour-project/?rev=13961&view=rev
> Author:   vszakats
> Date: 2010-02-22 16:24:59 + (Mon, 22 Feb 2010)
> 
> Log Message:
> ---
> 2010-02-22 17:23 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
>   * contrib/hbqt/hbqt_hbdbfmodel.cpp
>   * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
>   * contrib/hbqt/hbqt_hbqtableview.cpp
>   * contrib/hbqt/hbqt_hbevents.cpp
>   * contrib/hbqt/hbqt_destruct.cpp
>   * contrib/hbqt/hbqt_utils.cpp
>   * contrib/hbqt/hbqt_hbqmainwindow.cpp
>   * contrib/hbqt/hbqt_hbqplaintextedit.cpp
>   * contrib/hbqt/hbqt_base.cpp
>   * contrib/hbqt/hbqt_hbslots.cpp
> * Cleaned header inclusion order after adding hbapi.h to hbqt.h.
> 
>   * config/os2/gcc.mk
> ! Fixed to use '-Wl,' trick proposed by Przemek, to forward obj list
>   script filename directly to linker.
>   This gets around the problem where gcc tries to pass expanded
>   scripts to subprocesses (ld) via cmdline, thus imposing a 32K
>   limit also to script files.
> 
> Modified Paths:
> --
> trunk/harbour/ChangeLog
> trunk/harbour/config/os2/gcc.mk
> trunk/harbour/contrib/hbqt/hbqt_base.cpp
> trunk/harbour/contrib/hbqt/hbqt_destruct.cpp
> trunk/harbour/contrib/hbqt/hbqt_hbdbfmodel.cpp
> trunk/harbour/contrib/hbqt/hbqt_hbevents.cpp
> trunk/harbour/contrib/hbqt/hbqt_hbqmainwindow.cpp
> trunk/harbour/contrib/hbqt/hbqt_hbqplaintextedit.cpp
> trunk/harbour/contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
> trunk/harbour/contrib/hbqt/hbqt_hbqtableview.cpp
> trunk/harbour/contrib/hbqt/hbqt_hbslots.cpp
> trunk/harbour/contrib/hbqt/hbqt_utils.cpp
> 
> 
> This was sent by the SourceForge.net collaborative development platform, the 
> world's largest Open Source development site.
> ___
> Harbour mailing list (attachment size limit: 40KB)
> Harbour@harbour-project.org
> http://lists.harbour-project.org/mailman/listinfo/harbour
> 

-- 
 __
|  |  | |__| Maurilio Longo
|_|_|_|| farmaconsult s.r.l.


___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] SF.net SVN: harbour-project:[13961] trunk/harbour

2010-02-22 Thread Viktor Szakáts
Hi Maurilio,

> just to know, what does -Wl really mean to the compiler?

It means to pass the option (without '-Wl,' prefix) directly 
to the linker subprocess.

It's like -ldflags= option in hbmk2.

Brgds,
Viktor

___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: SF.net SVN: harbour-project:[13961] trunk/harbour

2010-02-22 Thread Pritpal Bedi


vszakats wrote:
> 
> Revision: 13961
>  
> http://harbour-project.svn.sourceforge.net/harbour-project/?rev=13961&view=rev
> Author:   vszakats
> Date: 2010-02-22 16:24:59 + (Mon, 22 Feb 2010)
> 
> Log Message:
> ---
> 2010-02-22 17:23 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
>   * contrib/hbqt/hbqt_hbdbfmodel.cpp
>   * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
>   * contrib/hbqt/hbqt_hbqtableview.cpp
>   * contrib/hbqt/hbqt_hbevents.cpp
>   * contrib/hbqt/hbqt_destruct.cpp
>   * contrib/hbqt/hbqt_utils.cpp
>   * contrib/hbqt/hbqt_hbqmainwindow.cpp
>   * contrib/hbqt/hbqt_hbqplaintextedit.cpp
>   * contrib/hbqt/hbqt_base.cpp
>   * contrib/hbqt/hbqt_hbslots.cpp
> * Cleaned header inclusion order after adding hbapi.h to hbqt.h.
> 

Thank you.

On WinXP everything builds fine and runs as before.
Should I upload .cpp sources or we wait for David to to more
tests on OS ?


-
 enjoy hbIDEing...
Pritpal Bedi 
_a_student_of_software_analysis_&_design_
-- 
View this message in context: 
http://n2.nabble.com/SF-net-SVN-harbour-project-13961-trunk-harbour-tp4613241p4613380.html
Sent from the harbour-devel mailing list archive at Nabble.com.
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: SF.net SVN: harbour-project:[13957] trunk/harbour

2010-02-22 Thread Pritpal Bedi


marco bra wrote:
> 
> Hbide from rev. 13957 playing with Document Viewer Dock
> 
> i set as Harbour installation root "/home/ubuntu/src/harbour" and i live
> the
> "doc folder prefix" empty  pressing the green upper row i get this runtime
> error
> 
> Unrecoverable error 6005: Exception SIGSEGV at address 0x5d
> Called from QT_QTREEWIDGET_SETCURRENTITEM(0)
> Called from QTREEWIDGET:SETCURRENTITEM(0) in ../../../TQTreeWidget.prg
> Called from IDEHARBOURHELP:EXECEVENT(428) in ideharbourhelp.prg
> Called from (b)IDEHARBOURHELP_INSTALLSIGNALS(336) in ideharbourhelp.prg
> Called from QT_QEVENTLOOP_PROCESSEVENTS(0)
> Called from QEVENTLOOP:PROCESSEVENTS(0) in ../../../TQEventLoop.prg
> Called from APPEVENT(0) in ../../../xbpgeneric.prg
> Called from HBIDE:CREATE(417) in hbide.prg
> Called from MAIN(110) in hbide.prg
> 

This is strange error as this line is guarded against such action.

Can you exactly send step-by-step actions toy took, including the 
navigation, to let me understand how I can reproduce it ?

I assume, when you run hbIDE, the documentation tree is already populated.


-
 enjoy hbIDEing...
Pritpal Bedi 
_a_student_of_software_analysis_&_design_
-- 
View this message in context: 
http://n2.nabble.com/SF-net-SVN-harbour-project-13957-trunk-harbour-tp4611158p4613415.html
Sent from the harbour-devel mailing list archive at Nabble.com.
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


[Harbour] Re: OS/2: hbqt, advances

2010-02-22 Thread Pritpal Bedi

Hi David

Many thanks for your efforts and a valuable fact that you 
opened a ticket with netlabs. Probably it will pave the way to 
understand some hidden points where Harbour encounters a
GPF without any understandable reason. Also we may 
get clarified why "delete" operator is not called when an 
object is destroyed. Though it is future, your effort has 
shown that Qt support cares for these issues, if they are 
approached.



> 2) Pritpal: 
> 1. Add #ifndef QT_NO_PRINTER / #endif around the parts in the source 
> code that use printing classes (QAbstractPrintDialog, QPageSetupDialog 
> etc.) This btw will let it build on all platforms that don't provide 
> printing support for some reason, not only OS/2. 
> 
> 3) Pritpal: 
> #ifndef QT_NO_ACCESSIBILITY / #endif around the places that complain 
> about missing accessibility methods. 
> 
> Below are text with relevant facts of tests, info, responses, ... 
> 
> Qt for OS/2 (4.6.1) will be available soon, with printer support using
> CUPS 
> 

It will be extremely difficult if not impossible.

The reason is, Qt wrappers are generated dynamically and no 
developer's tweaking is enabled in them. This is only possible if 
I re-write the generator with OS problem in mind, which I am not 
aware at all.

The other solution could be to write overloading wrappers to these 
functions in a .cpp, say, hbqt_hbos.cpp, which is included per 
OS basis.

As Qt has announced that in 4.6.2 they will provide, we should wait till
then.
No?


-
 enjoy hbIDEing...
Pritpal Bedi 
_a_student_of_software_analysis_&_design_
-- 
View this message in context: 
http://n2.nabble.com/OS-2-hbqt-advances-tp4611775p4613521.html
Sent from the harbour-devel mailing list archive at Nabble.com.
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


Re: [Harbour] SF.net SVN: harbour-project:[13961] trunk/harbour

2010-02-22 Thread Bruno Luciani
Which is the function of hbdbfmodel class ?


Bruno


2010/2/22 

> Revision: 13961
>
> http://harbour-project.svn.sourceforge.net/harbour-project/?rev=13961&view=rev
> Author:   vszakats
> Date: 2010-02-22 16:24:59 + (Mon, 22 Feb 2010)
>
> Log Message:
> ---
> 2010-02-22 17:23 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
>  * contrib/hbqt/hbqt_hbdbfmodel.cpp
>  * contrib/hbqt/hbqt_hbqsyntaxhighlighter.cpp
>  * contrib/hbqt/hbqt_hbqtableview.cpp
>
___
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour


  1   2   >