Thanks Przemek:
>It's not related to Watcom because also gcc.cf needs such trick so I
>guess it's the problem with GNU make port.
Yes
Before does not fail with make376, but as we want to discard make376
then we must to put to work with make381
>I also looks like make problem.
>Try to replace:
> LD_RULE = $(link_exe_file) $(HB_USER_LDFLAGS)
>with:
> empty:=
> space:= $(empty) $(empty)
> comma:= ,
> LDFILES = $(subst $(space),$(comma) ,$(^F))
> LDLIBS = $(subst $(space),$(comma) ,$(strip $(LINKLIBS) $(RDDLIBS)
>$(GTLIBS)))
> LD_RULE = $(LD) $(LDFLAGS) $(HB_USER_LDFLAGS) NAME $(EXE_DIR)/$@
>FILE $(LDFILES)
> ifneq ($(LDLIBS),)
> LD_RULE += LIB $(LDLIBS)
> endif
>It should help.
It work fine
Now Harbour build / run with OpenWatcom 1.8
50 .lib files, same number as gcc .a files
I think you will add your two changes to os2\watcom.cf
Below are all warnings raised with OpenWatcom, selected from 3001 lines
of make_ow.log
David Macias
Building hbpp.exe:
Warning! Duplicate symbol 'hb_pp_initRules_' ignored.
Warning! Duplicate symbol 'hb_pp_tokenGet_' ignored.
Warning! Duplicate symbol 'hb_pp_new_' ignored.
Warning! Duplicate symbol 'hb_pp_free_' ignored.
Warning! Duplicate symbol 'hb_pp_init_' ignored.
Warning! Duplicate symbol 'hb_pp_reset_' ignored.
Warning! Duplicate symbol 'hb_pp_addSearchPath_' ignored.
Warning! Duplicate symbol 'hb_pp_setStdBase_' ignored.
Warning! Duplicate symbol 'hb_pp_initDynDefines_' ignored.
Warning! Duplicate symbol 'hb_pp_readRules_' ignored.
Warning! Duplicate symbol 'hb_pp_inBuffer_' ignored.
Warning! Duplicate symbol 'hb_pp_inFile_' ignored.
Warning! Duplicate symbol 'hb_pp_outFile_' ignored.
Warning! Duplicate symbol 'hb_pp_traceFile_' ignored.
Warning! Duplicate symbol 'hb_pp_lasterror_' ignored.
Warning! Duplicate symbol 'hb_pp_errorCount_' ignored.
Warning! Duplicate symbol 'hb_pp_fileName_' ignored.
Warning! Duplicate symbol 'hb_pp_line_' ignored.
Warning! Duplicate symbol 'hb_pp_lineTot_' ignored.
Warning! Duplicate symbol 'hb_pp_outFileName_' ignored.
Warning! Duplicate symbol 'hb_pp_traceFileName_' ignored.
Warning! Duplicate symbol 'hb_pp_eof_' ignored.
Warning! Duplicate symbol 'hb_pp_addDefine_' ignored.
Warning! Duplicate symbol 'hb_pp_delDefine_' ignored.
Warning! Duplicate symbol 'hb_pp_setStream_' ignored.
Warning! Duplicate symbol 'hb_pp_nextLine_' ignored.
Warning! Duplicate symbol 'hb_pp_parseLine_' ignored.
Warning! Duplicate symbol 'hb_pp_lexNew_' ignored.
Warning! Duplicate symbol 'hb_pp_lexGet_' ignored.
Warning! Duplicate symbol 'hb_pp_tokenNextExp_' ignored.
Warning! Duplicate symbol 'hb_pp_tokenUpper_' ignored.
Warning! Duplicate symbol 'hb_pp_tokenToString_' ignored.
Warning! Duplicate symbol 'hb_pp_tokenBlockString_' ignored.
rm hbpp.obj
../../../hbproces.c(902): Warning! W014: col(1) no reference to symbol
'TODO'
../../../hbproces.c(897): Note! N392: col(8) definition: 'int TODO' in
'unsigned long hb_fsProcessClose( int, unsigned long )'
../../../hbsocket.c(2272): Warning! W014: col(1) no reference to symbol
'TODO'
../../../hbsocket.c(2265): Note! N392: col(8) definition: 'int TODO' in
'int hb_socketSetBlockingIO( int, unsigned long )'
tlabel.c(548): Warning! W013: col(18) unreachable code
treport.c(1153): Warning! W013: col(18) unreachable code
../../../../thread.c(781): Warning! W869: col(25) use of '_beginthread'
requires build target to be multi-threaded
DAVID: OpenWatcom switch -bm not used yet
As you remember it make execution slow
dbjoin.c(188): Warning! W013: col(18) unreachable code
dblist.c(198): Warning! W013: col(18) unreachable code
dbsort.c(101): Warning! W013: col(18) unreachable code
dbstrux.c(147): Warning! W013: col(18) unreachable code
dbstrux.c(311): Warning! W013: col(18) unreachable code
dbtotal.c(420): Warning! W013: col(18) unreachable code
dbupdat.c(147): Warning! W013: col(18) unreachable code
../../../zutil.c(37): Warning! W369: col(13) selection expression in
switch statement is a constant value
../../../zutil.c(43): Warning! W369: col(13) selection expression in
switch statement is a constant value
../../../zutil.c(49): Warning! W369: col(13) selection expression in
switch statement is a constant value
../../../zutil.c(55): Warning! W369: col(13) selection expression in
switch statement is a constant value
..\..\..\hpdf_fontdef_tt.c(2109): Warning! W136: Comparison equivalent
to 'unsigned == 0'
..\..\..\hpdf_image_png.c(195): Warning! W124: Comparison result always 1
..\..\..\hpdf_image_png.c(257): Warning! W124: Comparison result always 1
..\..\..\hpdf_list.c(56): Warning! W136: Comparison equivalent to
'unsigned == 0'
..\..\..\hpdf_page_operator.c(2563): Warning! W136: Comparison
equivalent to 'unsigned == 0'
..\..\..\hpdf_pages.c(1509): Warning! W136: Comparison equivalent to
'unsigned == 0'
..\..\..\hpdf_streams.c(984): Warning! W136: Comparison equivalent to
'unsigned == 0'
..\..\..\hpdf_u3d.c(589): Warning! W131: No prototype found for function
'sqrtf'
..\..\..\hpdf_utils.c(125): Warning! W124: Comparison result always 0
..\..\..\sqlite3.c(19220): Warning! W136: Comparison equivalent to
'unsigned == 0'
..\..\..\sqlite3.c(20798): Warning! W102: Type mismatch (warning)
..\..\..\sqlite3.c(20798): Note! N2003: source conversion type is 'void
*(*)(struct sqlite3_vfs *__p1,void *__p2,char const *__p3)'
..\..\..\sqlite3.c(20798): Note! N2004: target conversion type is 'void
(*(*)(struct sqlite3_vfs *__p1,void *__p2,char const *__p3))(void )'
..\..\..\sqlite3.c(42084): Warning! W136: Comparison equivalent to
'unsigned == 0'
_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour