* bin/hb-mkdyn.bat
* owatcom tweaks. Build is still going dunno if this will be okay.
* contrib/hbqt/generator/rebuild_hbqt.bat
* Added hbmk2 dir.
* utils/hbmk2/hbmk2.prg
! Fixed stupid MSVC typo.
* utils/hbmk2/hbmk2.prg
+ Added --hbdirbin, --hbdirlib, --hbdirinc
+ Added --version and --help to help screen.
! Changed to use OS native slashed in path when calling harbour executable.
+ -quiet will now suppress messages when -traceonly option is used.
Script dumps will still have a header for clarity.
+ Will now dump harbour executable name to Harbour command -trace
output, even if internal compiler is used.
* harbour/bin/hb-func.sh
+ added support for displaying harbour bin, lib and include directories
for --hbbindir --hblibdir --hbincdir parameters.
Viktor please add such functionality also to hbmk2.
Only given directories should be displayed without any other
characters in the output.
Such feature allows to use -I`hbmk --hbincdir` in *nixes build
scripts what should greatly simplify 3-rd party projects make scripts.
* harbour/source/compiler/hbmain.c
* harbour/source/compiler/hbcomp.c
! fixed ignored -es2 compiler flag when warning is caused by startup
parameters
* harbour/source/compiler/harbour.yyc
* harbour/source/compiler/harbour.y
* pacified warning
* harbour/harbour.spec
! fixed doc/en directory name to doc/en-EN
* harbour/source/vm/Makefile
+ harbour/source/vm/maindllh
+ harbour/source/vm/maindllh/Makefile
+ added hbmaindllh library - it's necessary for some compiler to create
working harbour.dll, f.e. in OpenWatcom builds. Please updated
harbour.dll build scripts to use this library with such compilers.
MinGW based compilers do not need it.
* harbour/source/vm/Makefile
! fixed typo which broke wce builds
* harbour/source/vm/Makefile
* harbour/harbour-wce-spec
* harbour/harbour.spec
+ added mainstd mainwin maindllh maindllp to all win and wce builds
* harbour/harbour-win-spec
* harbour/harbour-wce-spec
* harbour/harbour.spec
+ added support for parallel compilation (-j make flags) in RPMs
which supports %{_smp_mflags} macro
! temporary fix: disabled harbour external libraries.
I do not know what should be the final version.
; WCE builds are still broken due to repeated macro definitions
but I'm lost with the new build time parameters and I do not
know how to fix it without breaking hbce* scripts or bad introduce
some interactions to other build/install time scripts so it will
have to be fixed by Viktor.
* utils/hbmk2/hbmk2.prg
! Fixed finding shared libs since /lib/<arch>/<comp> lib path
autodetection was added. Please test.
+ Added -traceonly cmdline switch which will display all commands to
be executed, without actually executing them. Notice that this isn't
a complete "dry" run, as some temp files will may be created and
normally created temp files are deleted along the process.
* contrib/hbqt/Makefile
! Fix to include statement.
+ harbour/contrib/hbqt/tests/wvtext.prg
+ Added wvtext.prg [ already in harbour/tests ] modified
to invoke QT dialogs. This demo is far from production
environment abd is just a future concept of implementation
what we can achieve with QT with least efforts.
* harbour/contrib/hbqt/hbqt.h
* harbour/contrib/hbqt/generator/hbqtgen.prg
* harbour/contrib/hbqt/generator/qt45.qtp
+ harbour/contrib/hbqt/gensource/Makefile
* harbour/contrib/hbqt/qth/QAbstractButton.qth
* harbour/contrib/hbqt/qth/QAbstractItemView.qth
* harbour/contrib/hbqt/qth/QAbstractPrintDialog.qth
* harbour/contrib/hbqt/qth/QAbstractScrollArea.qth
* harbour/contrib/hbqt/qth/QAbstractSlider.qth
* harbour/contrib/hbqt/qth/QAbstractSpinBox.qth
* harbour/contrib/hbqt/qth/QAction.qth
* harbour/contrib/hbqt/qth/QApplication.qth
* harbour/contrib/hbqt/qth/QAxBase.qth
* harbour/contrib/hbqt/qth/QAxBindable.qth
* harbour/contrib/hbqt/qth/QAxObject.qth
* harbour/contrib/hbqt/qth/QAxWidget.qth
* harbour/contrib/hbqt/qth/QBoxLayout.qth
* harbour/contrib/hbqt/qth/QBrush.qth
* harbour/contrib/hbqt/qth/QCalendarWidget.qth
* harbour/contrib/hbqt/qth/QCheckBox.qth
* harbour/contrib/hbqt/qth/QColor.qth
* harbour/contrib/hbqt/qth/QColorDialog.qth
* harbour/contrib/hbqt/qth/QComboBox.qth
* harbour/contrib/hbqt/qth/QCommandLinkButton.qth
* harbour/contrib/hbqt/qth/QCoreApplication.qth
* harbour/contrib/hbqt/qth/QDateEdit.qth
* harbour/contrib/hbqt/qth/QDateTimeEdit.qth
* harbour/contrib/hbqt/qth/QDesktopWidget.qth
* harbour/contrib/hbqt/qth/QDial.qth
* harbour/contrib/hbqt/qth/QDialog.qth
* harbour/contrib/hbqt/qth/QDir.qth
* harbour/contrib/hbqt/qth/QDockWidget.qth
* harbour/contrib/hbqt/qth/QDoubleSpinBox.qth
* harbour/contrib/hbqt/qth/QErrorMessage.qth
* harbour/contrib/hbqt/qth/QFileDialog.qth
* harbour/contrib/hbqt/qth/QFocusFrame.qth
* harbour/contrib/hbqt/qth/QFont.qth
* harbour/contrib/hbqt/qth/QFontComboBox.qth
* harbour/contrib/hbqt/qth/QFontDialog.qth
* harbour/contrib/hbqt/qth/QFontInfo.qth
* harbour/contrib/hbqt/qth/QFormLayout.qth
* harbour/contrib/hbqt/qth/QFrame.qth
* harbour/contrib/hbqt/qth/QFtp.qth
* harbour/contrib/hbqt/qth/QGridLayout.qth
* harbour/contrib/hbqt/qth/QGroupBox.qth
* harbour/contrib/hbqt/qth/QHBoxLayout.qth
* harbour/contrib/hbqt/qth/QHeaderView.qth
* harbour/contrib/hbqt/qth/QHttp.qth
* harbour/contrib/hbqt/qth/QInputDialog.qth
* harbour/contrib/hbqt/qth/QLabel.qth
* harbour/contrib/hbqt/qth/QLayout.qth
* harbour/contrib/hbqt/qth/QLayoutItem.qth
* harbour/contrib/hbqt/qth/QLCDNumber.qth
* harbour/contrib/hbqt/qth/QLineEdit.qth
* harbour/contrib/hbqt/qth/QListView.qth
* harbour/contrib/hbqt/qth/QListWidget.qth
* harbour/contrib/hbqt/qth/QListWidgetItem.qth
* harbour/contrib/hbqt/qth/QMainWindow.qth
* harbour/contrib/hbqt/qth/QMenu.qth
* harbour/contrib/hbqt/qth/QMenuBar.qth
* harbour/contrib/hbqt/qth/QMessageBox.qth
* harbour/contrib/hbqt/qth/QObject.qth
* harbour/contrib/hbqt/qth/QPageSetupDialog.qth
* harbour/contrib/hbqt/qth/QPaintDevice.qth
* harbour/contrib/hbqt/qth/QPainter.qth
* harbour/contrib/hbqt/qth/QPen.qth
* harbour/contrib/hbqt/qth/QPrintDialog.qth
* harbour/contrib/hbqt/qth/QPrintPreviewDialog.qth
* harbour/contrib/hbqt/qth/QProgressBar.qth
* harbour/contrib/hbqt/qth/QProgressDialog.qth
* harbour/contrib/hbqt/qth/QPushButton.qth
* harbour/contrib/hbqt/qth/QRadioButton.qth
* harbour/contrib/hbqt/qth/QScrollArea.qth
* harbour/contrib/hbqt/qth/QScrollBar.qth
* harbour/contrib/hbqt/qth/QSignalMapper.qth
+ harbour/contrib/hbqt/qth/QSize.qth
* harbour/contrib/hbqt/qth/QSizeGrip.qth
* harbour/contrib/hbqt/qth/QSlider.qth
* harbour/contrib/hbqt/qth/QSpinBox.qth
* harbour/contrib/hbqt/qth/QSplashScreen.qth
* harbour/contrib/hbqt/qth/QSplitter.qth
* harbour/contrib/hbqt/qth/QTabBar.qth
* harbour/contrib/hbqt/qth/QTableView.qth
* harbour/contrib/hbqt/qth/QTableWidget.qth
* harbour/contrib/hbqt/qth/QTableWidgetItem.qth
* harbour/contrib/hbqt/qth/QTabWidget.qth
* harbour/contrib/hbqt/qth/QTextEdit.qth
* harbour/contrib/hbqt/qth/QTimeEdit.qth
* harbour/contrib/hbqt/qth/QTimer.qth
* harbour/contrib/hbqt/qth/QToolBar.qth
* harbour/contrib/hbqt/qth/QToolBox.qth
* harbour/contrib/hbqt/qth/QToolButton.qth
* harbour/contrib/hbqt/qth/QTreeView.qth
* harbour/contrib/hbqt/qth/QTreeWidget.qth
* harbour/contrib/hbqt/qth/QTreeWidgetItem.qth
* harbour/contrib/hbqt/qth/QUrl.qth
* harbour/contrib/hbqt/qth/QVBoxLayout.qth
* harbour/contrib/hbqt/qth/QWebPage.qth
* harbour/contrib/hbqt/qth/QWebView.qth
* harbour/contrib/hbqt/qth/QWidget.qth
* harbour/contrib/hbqt/qth/QWizard.qth
! Restructured the layout of .qth source headers.
List of section blocks:
<CLASS> </CLASS>
<CODE> </CODE>
<ENUMS> </ENUMS>
<PROTOS> </PROTOS>
<SLOTS> </SLOTS>
<SIGNALS> <SIGNALS>
This layout will be useful for future extensions.
We can spread anything outside of these blocks wheatever
is required.
The <hbqtgen> engine has been reworked and enhanced to a
great extent. At this moment about 99% functions are compiled
properly. Except for one warning everypiece compiles fine:
: warning: taking address of temporary
which is the result of code like as below:
/*
* QIcon icon () const
*/
HB_FUNC( QT_QABSTRACTBUTTON_ICON )
{
hb_retptr( &( ( QIcon ) hbqt_par_QAbstractButton( 1 )->icon() ) );
}
is spread all over. I have no clue how to suppress it.
This is why I have not posted the files in root folder.
NOTE: Make system fails for <Makefile_gen>, Viktor?
The demoqt.prg is updated with many features. Just play.
And an Experiment: /tests/wvtext.prg can be updated to work with
QT Widgets. Though this is not the end goal of QT, you may take
advantage of QT's powerful yet simple classes to embed in your
console applications.
* utils/hbmk2/hbmk2.prg
+ Enabled rtlink/blinker parsing code, so now hbmk2 will
work as a plugin replacement for clipper, rtlink/blinker/exospace
when renamed to these names. Example:
---
> copy hbmk2.exe clipper.exe
> copy hbmk2.exe rtlink.exe
> clipper hello.prg
> echo OUT myhello FI hello > rtl.lnk
> rtlink @rtl.lnk
---
* INSTALL
* Minor.
* utils/hbmk2/hbmk2.prg
! Fixed to add 'lib' prefix when -hblib option is used with
GCC family compilers.
! Fixed to not override compiler output when -hblib option is used.
* contrib/hbqt/generator/hbqtgen.prg
+ contrib/hbqt/Makefile_gen
* contrib/hbqt/Makefile
+ Added Makefile_gen which holds the generated part of
the Makefile. This way there is no (less) hidden make
logic inside hbqtgen.
* config/wce/global.cf
- Removed gtwin.
; TODO: Move GT inclusion logic to GT local Makefiles.
* harbour-wce-spec
* INSTALL
* bin/postinst.bat
* Makefile
* make_gnu.bat
* external/sqlite3/Makefile
* external/libhpdf/Makefile
* external/libpng/Makefile
* contrib/gtalleg/Makefile
* contrib/hbodbc/Makefile
* contrib/hbtpathy/Makefile
* contrib/hbole/Makefile
* contrib/hbsqlit3/Makefile
* contrib/hbqt/generator/hbqtgen.prg
* contrib/hbqt/Makefile
* contrib/hbfbird/Makefile
* contrib/hbwin/Makefile
* source/vm/Makefile
* source/vm/vmmt/Makefile
+ Added wce arch and mingwarm/msvcarm/poccarm support.
In parallel with old win/mingwce|msvcce|poccce support.
As soons as this new one work, the old one will be deleted.
* make_gnu.bat
! Fixed to work like rest of targets for GCC family.
It will now only initiate a 'clean install' if HB_BUILD_DLL=yes.
* utils/hbmk2/hbmk2.prg
+ Added Przemek's code for rtlink/blinker script parsing.
Not yet activated.
* harbour/source/rtl/dircmd.prg
! small fix in 'DIR <filemask>' DOS like output formatting.
Note: this function uses strict DOS like 8.3 file name convention
in the output so it will play well with long file names.
Maybe we should change the output formatting?
* harbour/source/vm/hvm.c
* harbour/source/vm/fm.c
* harbour/source/vm/cmdarg.c
! fixed GPF when hb_vmInit() is called without initializing
application startup parameters by hb_cmdargInit().
Thanks to Enrico's friends for information about the problem.
* some code cleanup
* harbour/contrib/examples/uhttpd/uhttpd.prg
+ added Application Root folder
Also as ini command and -a command line switch
* fixed starting path
! fixed CGI/HRB execution path
now uhttpd runs CGI and HRB pointing to document root
as execution path. Pay attention to update existing cgi and
hrb modules.
+ added console rows and cols to alter console display
either as ini command than as -cr and -cc command line switch
! fixed $(APP_DIR) and $(DOCROOT_DIR) macro substitution
now it is possible to run uhttpd executable from a different
folder specifying uhttpd.ini path, application root path and
document root path that may differ from default
* updated help screen
* harbour/contrib/examples/uhttpd/uhttpd.ini
+ added new commands
* harbour/contrib/examples/uhttpd/session.prg
* work in progress to fix error in session handling
* harbour/contrib/examples/uhttpd/modules/tableservletdb.prg
* updated path of test.dbf that now is relative to document root
and not to application path
* harbour/include/hbexpra.c
! verify all expression POP operation for usage as LValue
* harbour/include/hbexprb.c
! fixed possible GPF in unverified send context
+ added support for IIF() usage as LValue even if it cannot be
reduced during [macro]compilation
* harbour/source/macro/macro.yyc
* harbour/source/macro/macro.y
* harbour/source/macro/macrolex.c
* removed support for some characters unsupported by Clipper in
macro expressions like chr(10) as trailing expression character, f.e.:
? &("DATE()"+chr(10))
* harbour/source/compiler/complex.c
* formatting
* INSTALL
+ Made clear that Windows examples are all pure .bat scripts.
+ Made clear that HB_BUILD_IMPLIB isn't supported for MinGW targets.
(and in most cases either not needed or not possible automatically)
* contrib/hbct/ctstrfil.c
! Fixed missing #include which could cause unresolved externals.
* utils/hbmk2/hbmk2.prg
+ Added support for pocc64, poccce. Not tested.
This is a very gray area for pocc. Currently it doesn't work
because polib is broken and doesn't generate an implib:
POLIB: fatal error: Internal error (create_archive_file).
; TOFIX: poccce also doesn't work, but this is probably solvable,
there are unresolved externals when linking.
* bin/hb-mkdyn.bat
* bin/postinst.bat
+ Added support for GCC family .dll creation. (Cygwin not tested)
This will also create .def files. Also implib .a files are possible,
code is there commented.
+ Added 'wce' ARCH support.
! Fixed to not include gtwin in WinCE .dlls.
+ Added support for HB_DLLIBS envvar.
; NOTE: The benefits of using cmd shell instead of msys to create
mingw builds is that hbrun-dll and hbtest-dll are also
created and you don't have use forward slashes in HB_INC_*
envvars. It also allows to more easily add implib creation
in the future. Overall the Windows build environment is
more uniform this way. msys build output though is much
sleeker and also seems faster.
If this method turns out to be okay, it may become the
default/support/standard way to build Harbour with MinGW
on Windows. (if not we can return to the msys method)
; TOFIX: Shared MinGW executables cannot be built if Harbour was built
with -DHB_DYNLIB. IMO this macro should be ignored in MinGW
builds as there is no separate DLL build and non-DLL.
[ I cannot fix this. ]
Until then I had to a hack to starter batch files.
* mpkg_win.bat
* Switched to use make_gnu.bat instead of make_gnu.sh to build
GCC family targets.
* make_gnu.bat
+ Added special codepath for GCC familty as it needs one pass only
to create .dlls.
* INSTALL
* Updated to reflect now possible non-msys MinGW build.
* Updated example to use non-msys flavours.
+ Readded MinGW + msys example.
% Minor simplification in mingw64/mingwce targets.
(HB_CCPATH no longer needed on Windows)
* make_gnu_xmingwce.sh
* bin/hb-mkdyn.sh
* bin/hb-func.sh
* bin/postinst.sh
* mpkg_win.bat
* external/sqlite3/Makefile
* make_gnu.sh
+ Added 'wce' ARCH support and 'mingwce' COMP support where needed.
; TODO: Start using above in local contrib Makefiles.
* bin/hb-mkdyn.sh
+ Added comment on how to generate implib when creating the .dll.
* bin/hb-mkdyn.bat
! Added missing setlocal.
* ChangeLog
! Typos.
* make_gnu.bat
+ Will now exit with message if tried to run with mingw/cygwin
targets.
* harbour/doc/Makefile
! removed unexisting license.txt file
* harbour/include/hbapidbg.h
* do not export Harbour debugger functions. If someone wants to create
3-rd party debugger then we should agree the list of functions which
should be public.
* harbour/include/hbstack.h
* minor cleanup in some definitions
* harbour/include/hbdefs.h
+ added HB_DLL_ENTRY_POINT macro to set default DLL entry point for
different Windows compilers
* harbour/source/vm/maindllh.c
* harbour/source/vm/maindllp.c
* use HB_DLL_ENTRY_POINT macro
* harbour/include/hbsetup.h
* added internal macro to disable flatten optimization
* harbour/include/hbmath.h
* harbour/source/rtl/math.c
* make default math error handler function static
* harbour/include/hbatomic.h
+ added atomic inc/dec inline asm code to OW x86 builds
* harbour/source/rtl/console.c
* small code reorganization to not mix public and private function calls
* harbour/source/rtl/hbregex.c
* harbour/source/hbpcre/_hbpcreg.c
* do not use hb_xfree() function pointer directly to avoid problems
with different calling conventions.
* harbour/config/win/owatcom.cf
* harbour/config/os2/owatcom.cf
* removed unnecessary in recent OpenWatcom versions explicit wlink.lnk
including.
* utils/hbmk2/hbmk2.prg
+ Added clipper/rtlink/exospace/blinker self-name recognition.
clipper will switch it to hbcmp mode,
rtlink/exospace/blinker will switch it to hblnk mode.
rtlink parameter recognition is yet to be done.
* contrib/hbct/ctmisc.prg
! Fixed CENTER() to not LTrim() the input string.
* contrib/hbwin/wapi_commctrl.c
! 0/1 -> FALSE/TRUE
! Fixed to use proper macro instead of hb_parnint().
% Using hb_arraySetNL() rather than hb_arraySet().
* mpkg_win.nsi
* Minor.
* doc/Makefile
! Removed license.txt.
* INSTALL
+ Added Windows/Windows CE build examples.
Cleaned mingw64 and mingwce cross-builds.
* mpkg_win.bat
* Using make_gnu.sh instead of make_gnu_xmingwce.sh
for mingwce target for uniformity.
* utils/hbmk2/hbmk2.prg
! Fixed silly typo causing RTE if compiler autodetection
fails to detect any tier-one compilers (or none).
+ Added automatic postfixing external Harbour executable
name if hbmk2 executable name is also prefixed. Currently
-x64 and -ia64 are recognized. Useful to call harbour-x64.exe
/ harbour-ia64.exe when hbmk2-x64.exe / hbmk2-ia64.exe is used.
* make_gnu_xmingwce.sh
* config/rules.cf
* config/win/mingwce.cf
* config/win/poccce.cf
* config/win/msvcce.cf
* config/wce/global.cf
* Moved -D__PLATFORM__WINCE to .cf files. This also fixes
missing __PLATFORM__WINCE for poccce and msvcce targets.
* bin/postinst.bat
! Fixed regression causing shared hbrun/hbtest binaries to
not be built on x64 targets.
* external/sqlite3/Makefile
! Removed header installer rules. There are no headers here
to install.
* INSTALL
+ Added information on HB_EXTERNAL* envvar settings.
* utils/hbmk2/hbmk2.prg
+ Added support for wce target. Currently in parallel
with win/*ce targets.
* bin/hb-mkdyn.bat
+ Added pocc64 support.
* contrib/gtalleg/Makefile
! Excluded for pocc64 due to compile errors.
* contrib/hbsqlit3/Makefile
! Excluded for pocc64 due to overflow.
* contrib/hbqt/generator/hbqtgen.prg
* contrib/hbqt/Makefile
! Excluded for pocc64.
* contrib/xhb/dbf2txt.c
! Fixed for Win64.
* contrib/xhb/hbserv.c
- Excluded for Win64 builds.
* contrib/hbqt/generator/hbqtgen.prg
* Minor formatting in generated code. (Using double quotes
in #include, CLASS -> CREATE CLASS, DATA -> VAR to follow
Class(y) syntax.)
+ config/wce
+ config/wce/dir.cf
+ config/wce/global.cf
+ config/wce/install.cf
+ config/wce/msvcarm.cf
+ config/wce/mingwarm.cf
+ config/wce/poccarm.cf
+ Added new arch for WinCE: wce
These will now live in parallel with old win/*ce targets
until they are fully functional. We can also back up from
here in case this new method turns out to be a dead end
for any reason. The upgrade path is:
win/msvcce -> wce/msvcarm
win/mingwce -> wce/mingwarm
win/poccce -> wce/poccarm
The idea is that this way we may continue adding support
for non-ARM WinCE platforms, if needed. It also makes it
easier to do things globally for wce platform only.
* INSTALL
* Moved Windows CE compilers into a separate section.
* bin/hb-mkdyn.bat
* Changes made to allow wce arch. (provision for wce arch)
* mpkg_win.bat
* Allows to override HB_ARCHITECTURE. (provision for wce arch)
+ Include arch in target directory. (provision for wce arch)
* include/hbatomic.h
- Turned off inline asm for _MSC_VER compilers in 64-bit mode. (pocc64, msvc64)
These target don't support inline asm.
This fixes previously reported regressions with these targets.
* utils/hbmk2/hbmk2.prg
% win/owatcom: Pentium Pro scheduling.
* win/owatcom: Temply set back stack calling convention.
* external/libhpdf/Makefile
- Disabled for pocc64 due to errors, even internal compiler error:
---
can't spill register variable: rcx (3) image
../../hpdf_image.c(480): fatal error: Internal error: best_spillee.
---
* config/win/bcc.cf
+ Added comment about -4, -5, -6.
* ChangeLog
! Minor fix to prev entry.
* include/hbsetup.h
% '( defined(__POCC_TARGET__) && __POCC_TARGET__ == 2 ) )'
removed altogether. WinCE is detected anyway by using _WINCE.
* external/sqlite3/Makefile
- Disabled for poccce due to errors.
* external/libpng/Makefile
! Fix to prev (poccce).
* config/win/poccce.cf
! Added -D_M_ARM.
* config/win/owatcom.cf
* Pentium Pro scheduling.
* Changed back to __cdecl calling convention from register based
until we find a way to tweak HB_EXPORT to force __cdecl for
.dll exported functions.
; TOFIX: Find out how to force __cdecl for HB_EXPORT functions in owatcom.
Or, if this is no good solution for owatcom users, or not
an option and performace is more important, we must rename
owatcom Harbour .dlls to a distinct name: harbour[mt]-11-ow.dll.
We should try to avoid that.
* config/win/bcc.cf
* -4 -> -6 for Pentium Pro instructions. Looking at the generated
code this looks like rescheduling, if someone now can test Harbour
or plain Pentium, it would be good to know if it still works.
* harbour/config/dos/owatcom.cf
* harbour/config/win/owatcom.cf
* harbour/config/linux/owatcom.cf
* harbour/config/os2/owatcom.cf
* harbour/utils/hbmk2/hbmk2.prg
* removed unnecessary linker options
* use 'SYS causeway' to enable causeway stub in DOS builds instead
of setting it manually. DOS users can also use DOS4G (default) or
PMODE (commercial) stubs.
* harbour/source/vm/dlmalloc.c
! fixed casting
* harbour/source/vm/fm.c
% use DLMALLOC as default memory manager in OpenWatcom Windows builds.
Warning: HB_FM_DLMT_ALLOC does not work with OpenWatcom.
* harbour/config/dos/owatcom.cf
* harbour/config/win/owatcom.cf
* harbour/config/linux/owatcom.cf
* harbour/config/os2/owatcom.cf
* changed alignment settings from 8 to 4
* synced optimization flags used in different builds
! fixed linker parameters when HB_BUILD_DEBUG=yes is set
; TOVERIFY: I do not remember what calling convention should be used
in OpenWatcom MT OS2 builds to eliminate GPF when APIENTRY16 functions
are called. It's possible that current settings are wrong.
* harbour/config/win/owatcom.cf
* removed STACK=65536 from OpenWatcom linker parameters.
This switch probably was inherited from old DOS WatcomC builds.
Later I'll test current OpwnWatcom builds to check if we can also
remove it from DOS builds when cwstub.exe is used.
* restored -bm switch. When DLMALLOC is used it does not cause
noticeable performance reduction.
* use default register calling convention. We can change it
in the future but 1-st we should check the performance overhead.
If calling convention is a problem only for .DLLs then it can
be resolved by modifying HB_EXTERN declaration and adding function
attributes which will force given calling convention.
* harbour/config/linux/owatcom.cf
* enabled pentium pro instruction in OpenWatcom Linux builds.
It reduces the code size and increase performance a little bit.
Windows users which do not need pure pentium CPU support can make
the same.
* harbour/utils/hbmk2/hbmk2.prg
! fixed object extension used in OpenWatcom Linux builds: it's .o not .obj
! fixed linker parameters in OpenWatcom Linux builds: DEBUG ALL is single
option
! fixed OpenWatcom calling convention settings. Viktor you cannot chose
simultaneously register and stack calling convention. You have to chose
one and keep it synced with Harbour compile time settings. Otherwise
you will have unresolved external or you will force creating by linker
dynamically function call wrappers (of course if OW support such
functionality) what may strongly reduce the performance.
! removed -j compile time switch - it's not used to compile core code
* synced optimization flags with core code
I'm really interested in current OpenWatcom speedtst results compared
with other Windows builds (MSVC, MinGW, BCC, POCC) in ST and MT builds.