* utils/hbmk2/hbmk2.prg
+ Added executable / dll compression using -compr switch.
hbmk2 uses UPX, which needs to be in PATH to work.
Not having UPX won't cause a fatal error even when -compr
switch is specified.
* INSTALL
* Cross build text fixed to be multiplatform.
* contrib/rddsql/sddfb/Makefile
! Excluded for msvc64:
../../fbirddd.c(187) : warning C4244: 'argument' : conversion from 'ULONG' to 'short', possible loss of data
../../fbirddd.c(231) : warning C4244: 'argument' : conversion from 'ISC_STATUS' to 'USHORT', possible loss of data
../../fbirddd.c(241) : warning C4244: 'argument' : conversion from 'ISC_STATUS' to 'USHORT', possible loss of data
../../fbirddd.c(249) : warning C4244: 'argument' : conversion from 'ISC_STATUS' to 'USHORT', possible loss of data
../../fbirddd.c(265) : warning C4244: 'argument' : conversion from 'ISC_STATUS' to 'USHORT', possible loss of data
../../fbirddd.c(409) : error C2440: '=' : cannot convert from 'isc_stmt_handle' to 'void *'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
../../fbirddd.c(410) : error C2440: '=' : cannot convert from 'isc_tr_handle' to 'void *'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
../../fbirddd.c(446) : error C2664: 'isc_dsql_free_statement' : cannot convert parameter 2 from 'void **' to 'isc_stmt_handle *'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
../../fbirddd.c(451) : error C2664: 'isc_rollback_transaction' : cannot convert parameter 2 from 'void **' to 'isc_tr_handle *'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
../../fbirddd.c(469) : error C2664: 'isc_dsql_fetch' : cannot convert parameter 2 from 'void **' to 'isc_stmt_handle *'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
../../fbirddd.c(531) : error C2664: 'isc_dsql_free_statement' : cannot convert parameter 2 from 'void **' to 'isc_stmt_handle *'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
../../fbirddd.c(533) : warning C4244: 'argument' : conversion from 'ISC_STATUS' to 'USHORT', possible loss of data
../../fbirddd.c(538) : error C2664: 'isc_commit_transaction' : cannot convert parameter 2 from 'void **' to 'isc_tr_handle *'
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
../../fbirddd.c(540) : warning C4244: 'argument' : conversion from 'ISC_STATUS' to 'USHORT', possible loss of data
* utils/hbmk2/hbmk2.prg
! Possible fix for *nix shared lib problem when Harbour
is installed in system location. Couldn't test it.
* ar now called with 'rcs' parameter (was: cr).
Advertized as runlib equivalent, but it doesn't seem to
make any difference.
* bin/postinst.bat
! Fixed shared executable creation for cross-builds.
* utils/hbmk2/hbmk2.hbm
* utils/hbi18n/hbi18n.hbm
% Added -nulrdd. This will remove the hbmk2 build size overhead
compared to GNU Make built executables.
* utils/hbmk2/hbmk2.prg
! Don't add the same libdir twice in some cases.
+ Added support for wce arch in remaining places.
! Added hbmainwin and hbmainstd for mingw targets.
This should fix some failing shared lib scenarios I've
experienced with minwgce. I hope it doesn't break
everything else (tested mingw64 and mingw scenarios worked).
* Internal change to handle shared libname separately
so that special extensions and handling can be added
for it, if needed.
* contrib/hbqt/generator/qt45.qtp
* contrib/hbqt/generator/hbqtgen.prg
* contrib/hbqt/generator/rebuild_hbqt.bat
* Changed to create files directly in live source dir.
(can be overridden using cmdline switches)
* qt45.qtp will be picked automatically if no project
file is passed and the file exists.
! Fixed default paths for all platforms.
+ Added feedback when creating files.
! Fixed one FCreate() session which always failed.
! Fixed generation of Makefile_gen to always have two
closing empty lines to make GNU Make happy. Otherwise
it failed when assembling the lib with MinGW/msys.
% Commented output of source parts.
; This means that the .bat file is no more necessary.
Please use: 'hbmk2 hbqtgen.prg -run' command to generate
hbqt sources.
- contrib/hbqt/tests/Vou.ICO
+ contrib/hbqt/tests/test.ico
! Renamed to have all lower case. Please stick to this rule.
Couldn't find any reference to this file, please fix it
where needed.
; TOFIX: hbqt.h has hb_ToOutDebug() declared as external. So,
hbqt will also depend on xhb lib? If this function is
so important I'd suggest to create a fully portable
version of it locally in hbqt.
- contrib/hbqt/gensource/Makefile
- Removed duplicate copy of Makefile. I'm not sure what was
the purpose but it wouldn't work here, and it wouldn't be
good to update this file in two copies.
* harbour/contrib/examples/uhttpd/uhttpd.prg
+ Added _HTTP_RESPONSE headers
* Renamed defineServerAdresses() function to defineServer()
as now define all _SERVER variables
* ParseRequest() now uses uhttpd_SplitUrl() to define URI parts
* Host now is defined according with RFC2616
* HRB session now is defined as UHTTPD-SESSION to avoid collision with
SESSION in cookies
! uhttpd_AddHeader() renamed to uhttpd_SetHeader() to be conformed to
RFC2616 that wants that a header variable is defined only once.
See cookie.prg changes.
Headers now are contained in a Hash instead of an array
* fixed as per above also uhttpd_GetHeader() / uhttpd_DelHeader()
* harbour/contrib/examples/uhttpd/session.prg
* uhttpd_AddHeader() -> uhttpd_SetHeader()
* harbour/contrib/examples/uhttpd/cgifunc.prg
* in function uhttpd_SplitUrl() added URI hash field
+ harbour/contrib/examples/uhttpd/cookie.prg
* To conform to RFC2616 now if Set-Cookie has more than one value than
is created a comma separated list of cookie-name=cookie-value
* uhttpd_AddHeader() -> uhttpd_SetHeader()
* harbour/contrib/examples/uhttpd/modules/info.prg
+ Added _HTTP_RESPONSE display
* harbour/contrib/examples/uhttpd/modules/cookie.prg
* harbour/contrib/examples/uhttpd/modules/showcounter.prg
* harbour/contrib/examples/uhttpd/modules/tableservletdb.prg
* uhttpd_AddHeader() -> uhttpd_SetHeader()
* utils/hbmk2/hbmk2.prg
! Fixed to properly set errorlevels. For some reason I thought
returning a number from MAIN() will set the errorlevel. Now
using ErrorLevel() function.
* contrib/hbqt/generator/rebuild_hbqt.bat
* Added errorlevel checking after hbmk2 call.
! Removed HB_COMPILER check.
* harbour/harbour-wce-spec
! fixed MinGWCE cross compilation for Pocket PC by simple removing
__PLATFORM__WINCE from Harbour build parameters. It's now defined
by config/wce/mingwarm.cf
BTW why it's called mingwarm not mingwce? Is is planed to add for
each CPU type separate .cf file? For Linux it will be more then
20 files.
I do not know if MS plans to release (or maybe released) WinCE for
non ARM based computers (f.e. x86 ones) but it may happen. Just like
non x86 normal Windows ports may exist.
* harbour/source/rtl/hbstrfmt.c
+ added precision support for %s and %d.
COMMENT: I've used GNU printf() function for test. Some of
formats is not supported by it. For example, zero padding is
ignored if left alignment is used, etc. I'm not sure if it is
intentional.
* 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