Viktor, Maurilio, Przemek: In previous messages I exposed details of Harbour build using gcc335, gcc432, gcc433, gcc440
Since then I build and use Harbour with gcc433 Messages are with subject "Harbour under OS/2 - eCS gcc" and they started in 17 August 2009 They contain detailed info Now I present a summary in order to include in current Harbour build process Historically gcc for OS/2 used a.out format, due some limitations in old times Now can use OMF type, as OpenWatcom for OS/2 does gcc335: can use a.out and OMF types gcc432, gcc433, gcc440: use only OMF type due problem with emxbind Harbour use only a.out format If we want to use newer gcc's in OS/2 we must include support for OMF To use OMF: - Same make.exe - Modified OpenWatcom wlink.exe available in ftp://ftp.netlabs.org/pub/gcc/wl-hll-r1.zip and located somewhere in PATH - gcc335, gcc432, gcc433, gcc440 Environment variables: ===================== set EMXOMFLD_TYPE=WLINK set EMXOMFLD_LINKER=WL.EXE harbour\config\os2\gcc.mk ========================= LIB_EXT := .lib CFLAGS := -Zomf Replacement of define create_library (emxomfar.exe work different): define create_library $(if $(wildcard $(subst /,$(DIRSEP),$(LIB_FILE))),@$(RM) $(subst /,$(DIRSEP),$(LIB_FILE)),) for %i in ( *$(OBJ_EXT) ) do $(AR) $(ARFLAGS) $(HB_USER_AFLAGS) -p128 r $(LIB_DIR)/$@ %i$(ECHOQUOTE) endef AR := $(HB_CCPATH)$(HB_CCPREFIX)emxomfar AR_RULE = $(create_library) $(ARSTRIP) harbour\utils\hbmk2\hbmk2.prg ============================= // DAVID: cOpt_CompC := "-c" cOpt_CompC := "-c -Zomf" //DAVID: cOpt_Link := "{LO} {LA} {FL} {DL}" cOpt_Link := "-Zomf {LO} {LA} {FL} {DL}" // DAVID: cLibLibExt := ".a" cLibLibExt := ".lib" // DAVID: cBin_Lib := hbmk[ _HBMK_cCCPREFIX ] + "ar" + cCCEXT cBin_Lib := hbmk[ _HBMK_cCCPREFIX ] + "emxomfar" + cCCEXT After all, changes are minimal Pending adjustment for .dll We need some way to specify which format will be used in OS/2 gcc, at least for gcc335 Default should be OMF as is supported for all os2-gcc compilers My proposal is to use and environmental variable to choose code in gcc.mk and hbmk2.prg Something like HB_OS2_TCP32 which was included to choose "tcp/ip stack" in OS/2 Note for Viktor: In current SVN there are not any reference to HB_OS2_TCP32. It gone when make_gnu_os2.cmd was deleted I still use it and maybe Maurilio will use it if upgrade his OS/2 Any suggestions, comments ? David Macias _______________________________________________ Harbour mailing list Harbour@harbour-project.org http://lists.harbour-project.org/mailman/listinfo/harbour