diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 392d35e59e..05b3f7576d 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,48 @@ 2009-12-31 13:59 UTC+0100 Foo Bar (foo.bar foobar.org) */ +2009-04-06 15:41 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) + * 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. + 2009-04-06 14:33 UTC+0200 Viktor Szakats (harbour.01 syenar hu) * contrib/hbole/Makefile * contrib/hbole/olecore.c diff --git a/harbour/harbour-wce-spec b/harbour/harbour-wce-spec index 39b7ec5840..b3381614e1 100644 --- a/harbour/harbour-wce-spec +++ b/harbour/harbour-wce-spec @@ -90,7 +90,7 @@ export HB_HOST_BUILD=yes export HB_ARCHITECTURE=linux export HB_COMPILER=gcc export HB_USER_CFLAGS="-DHB_FM_STATISTICS_OFF" -make +make %{?_smp_mflags} export HB_HOST_BUILD=lib export HB_ARCHITECTURE=wce @@ -116,8 +116,9 @@ export HB_BIN_INSTALL=%{_bindir} export HB_INC_INSTALL=%{_includedir}/%{name} export HB_LIB_INSTALL=%{_libdir}/%{name} export HB_CONTRIBLIBS="gtwvg hbbmcdx hbbtree hbclipsm hbct hbgt hbmisc hbmzip hbtip hbvpdf hbwin hbziparc rddado xhb %{!?_without_nf:hbnf} %{?_with_odbc:hbodbc} %{?_with_curl:hbcurl} %{?_with_ads:rddads} %{?_with_gd:hbgd} %{?_with_pgsql:hbpgsql} %{?_with_mysql:hbmysql} %{?_with_allegro:gtalleg}" +export HB_EXTERNALLIBS=no -make +make %{?_smp_mflags} ###################################################################### ## Install. @@ -145,6 +146,7 @@ export HB_BIN_INSTALL=%{_bindir} export HB_INC_INSTALL=%{_includedir}/%{name} export HB_LIB_INSTALL=%{_libdir}/%{name} export HB_CONTRIBLIBS="gtwvg hbbmcdx hbbtree hbclipsm hbct hbgt hbmisc hbmzip hbtip hbvpdf hbwin hbziparc rddado xhb %{!?_without_nf:hbnf} %{?_with_odbc:hbodbc} %{?_with_curl:hbcurl} %{?_with_ads:rddads} %{?_with_gd:hbgd} %{?_with_pgsql:hbpgsql} %{?_with_mysql:hbmysql} %{?_with_allegro:gtalleg}" +export HB_EXTERNALLIBS=no export _DEFAULT_BIN_DIR=$HB_BIN_INSTALL export _DEFAULT_INC_DIR=$HB_INC_INSTALL @@ -158,7 +160,7 @@ mkdir -p $HB_BIN_INSTALL mkdir -p $HB_INC_INSTALL mkdir -p $HB_LIB_INSTALL -make -i install +make -i install %{?_smp_mflags} [ "%{?_with_odbc:1}" ] || rm -f $HB_LIB_INSTALL/libhbodbc.a [ "%{?_with_allegro:1}" ] || rm -f $HB_LIB_INSTALL/libgtalleg.a @@ -328,6 +330,8 @@ rm -fR $RPM_BUILD_ROOT %{_libdir}/%{name}/libhbvmmt.a %{_libdir}/%{name}/libhbmainstd.a %{_libdir}/%{name}/libhbmainwin.a +%{_libdir}/%{name}/libhbmaindllp.a +%{_libdir}/%{name}/libhbmaindllh.a %{_libdir}/%{name}/libhbusrrdd.a %{_libdir}/%{name}/libhbuddall.a diff --git a/harbour/harbour-win-spec b/harbour/harbour-win-spec index f81da81387..f0843de935 100644 --- a/harbour/harbour-win-spec +++ b/harbour/harbour-win-spec @@ -90,7 +90,7 @@ export HB_HOST_BUILD=yes export HB_ARCHITECTURE=linux export HB_COMPILER=gcc export HB_USER_CFLAGS="-DHB_FM_STATISTICS_OFF" -make +make %{?_smp_mflags} export HB_HOST_BUILD=lib export HB_ARCHITECTURE=win @@ -116,8 +116,9 @@ export HB_BIN_INSTALL=%{_bindir} export HB_INC_INSTALL=%{_includedir}/%{name} export HB_LIB_INSTALL=%{_libdir}/%{name} export HB_CONTRIBLIBS="gtwvg hbbmcdx hbbtree hbclipsm hbct hbgt hbmisc hbmzip hbtip hbvpdf hbwin hbziparc rddado xhb %{!?_without_nf:hbnf} %{?_with_odbc:hbodbc} %{?_with_curl:hbcurl} %{?_with_ads:rddads} %{?_with_gd:hbgd} %{?_with_pgsql:hbpgsql} %{?_with_mysql:hbmysql} %{?_with_allegro:gtalleg}" +export HB_EXTERNALLIBS=no -make +make %{?_smp_mflags} ###################################################################### ## Install. @@ -145,6 +146,7 @@ export HB_BIN_INSTALL=%{_bindir} export HB_INC_INSTALL=%{_includedir}/%{name} export HB_LIB_INSTALL=%{_libdir}/%{name} export HB_CONTRIBLIBS="gtwvg hbbmcdx hbbtree hbclipsm hbct hbgt hbmisc hbmzip hbtip hbvpdf hbwin hbziparc rddado xhb %{!?_without_nf:hbnf} %{?_with_odbc:hbodbc} %{?_with_curl:hbcurl} %{?_with_ads:rddads} %{?_with_gd:hbgd} %{?_with_pgsql:hbpgsql} %{?_with_mysql:hbmysql} %{?_with_allegro:gtalleg}" +export HB_EXTERNALLIBS=no export _DEFAULT_BIN_DIR=$HB_BIN_INSTALL export _DEFAULT_INC_DIR=$HB_INC_INSTALL @@ -158,7 +160,7 @@ mkdir -p $HB_BIN_INSTALL mkdir -p $HB_INC_INSTALL mkdir -p $HB_LIB_INSTALL -make -i install +make -i install %{?_smp_mflags} [ "%{?_with_odbc:1}" ] || rm -f $HB_LIB_INSTALL/libhbodbc.a [ "%{?_with_allegro:1}" ] || rm -f $HB_LIB_INSTALL/libgtalleg.a @@ -327,6 +329,9 @@ rm -fR $RPM_BUILD_ROOT %{_libdir}/%{name}/libhbvm.a %{_libdir}/%{name}/libhbvmmt.a %{_libdir}/%{name}/libhbmainstd.a +%{_libdir}/%{name}/libhbmainwin.a +%{_libdir}/%{name}/libhbmaindllp.a +%{_libdir}/%{name}/libhbmaindllh.a %{_libdir}/%{name}/libhbusrrdd.a %{_libdir}/%{name}/libhbuddall.a diff --git a/harbour/harbour.spec b/harbour/harbour.spec index de5245603b..f128a0add2 100644 --- a/harbour/harbour.spec +++ b/harbour/harbour.spec @@ -81,8 +81,9 @@ %define hb_idir export HB_INC_INSTALL=%{_includedir}/%{name} %define hb_ldir export HB_LIB_INSTALL=%{_libdir}/%{name} %define hb_cmrc export HB_COMMERCE=%{?_without_gpllib:yes} -%define hb_ctrb export HB_CONTRIBLIBS="hbbmcdx hbbtree hbclipsm hbct hbgt hbmisc hbmsql hbmzip hbsqlit3 hbtip hbtpathy hbvpdf hbziparc xhb rddsql %{!?_without_nf:hbnf} %{?_with_odbc:hbodbc} %{?_with_curl:hbcurl} %{?_with_libharu:hbhpdf} %{?_with_ads:rddads} %{?_with_gd:hbgd} %{?_with_pgsql:hbpgsql} %{?_with_mysql:hbmysql} %{?_with_fbsql:hbfbird} %{?_with_allegro:gtalleg}" -%define hb_env %{hb_arch} ; %{hb_cc} ; %{hb_cflag} ; %{hb_lflag} ; %{hb_gpm} ; %{hb_crs} ; %{hb_sln} ; %{hb_x11} ; %{hb_bdir} ; %{hb_idir} ; %{hb_ldir} ; %{hb_ctrb} ; %{hb_cmrc} +%define hb_ctrb export HB_CONTRIBLIBS="hbbmcdx hbbtree hbclipsm hbct hbgt hbmisc hbmsql hbmzip hbsqlit3 hbtip hbtpathy hbhpdf hbvpdf hbziparc xhb rddsql %{!?_without_nf:hbnf} %{?_with_odbc:hbodbc} %{?_with_curl:hbcurl} %{?_with_libharu:hbhpdf} %{?_with_ads:rddads} %{?_with_gd:hbgd} %{?_with_pgsql:hbpgsql} %{?_with_mysql:hbmysql} %{?_with_fbsql:hbfbird} %{?_with_allegro:gtalleg}" +%define hb_extrn export HB_EXTERNALLIBS=no +%define hb_env %{hb_arch} ; %{hb_cc} ; %{hb_cflag} ; %{hb_lflag} ; %{hb_gpm} ; %{hb_crs} ; %{hb_sln} ; %{hb_x11} ; %{hb_bdir} ; %{hb_idir} ; %{hb_ldir} ; %{hb_ctrb} ; %{hb_extrn} ; %{hb_cmrc} %define hb_host www.harbour-project.org %define readme README.RPM ###################################################################### @@ -384,7 +385,7 @@ case "`uname -m`" in ;; esac -make +make %{?_smp_mflags} ###################################################################### ## Install. @@ -412,7 +413,7 @@ mkdir -p $HB_BIN_INSTALL mkdir -p $HB_INC_INSTALL mkdir -p $HB_LIB_INSTALL -make -i install +make -i install %{?_smp_mflags} [ "%{?_with_allegro:1}" ] || rm -f $HB_LIB_INSTALL/libgtalleg.a [ "%{?_without_gtcrs:1}" ] && rm -f $HB_LIB_INSTALL/libgtcrs.a @@ -598,7 +599,7 @@ rm -rf $RPM_BUILD_ROOT %doc ChangeLog* %doc doc/*.txt %doc doc/%{readme} -%doc doc/en/ +%doc doc/en-EN/ %dir /etc/harbour %verify(not md5 mtime) %config /etc/harbour.cfg @@ -662,6 +663,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/%{name}/libhbtip.a %{_libdir}/%{name}/libxhb.a %{_libdir}/%{name}/libhbvpdf.a +%{_libdir}/%{name}/libhbhpdf.a %{_libdir}/%{name}/libhbgt.a %{_libdir}/%{name}/libhbbmcdx.a %{_libdir}/%{name}/libhbclipsm.a diff --git a/harbour/source/compiler/harbour.y b/harbour/source/compiler/harbour.y index 1b4e3f8778..f47a682e0a 100644 --- a/harbour/source/compiler/harbour.y +++ b/harbour/source/compiler/harbour.y @@ -568,7 +568,7 @@ NumValue : NUM_DOUBLE { $$ = hb_compExprNewDouble( $1.dNumber, $1.bWidth | NUM_LONG { $$ = hb_compExprNewLong( $1.lNumber, HB_COMP_PARAM ); } ; -DateValue : NUM_DATE { $$ = hb_compExprNewDate( $1.lNumber, HB_COMP_PARAM ); } +DateValue : NUM_DATE { $$ = hb_compExprNewDate( ( LONG ) $1.lNumber, HB_COMP_PARAM ); } ; TimeStampValue : TIMESTAMP { $$ = hb_compExprNewTimeStamp( $1.date, $1.time, HB_COMP_PARAM ); } diff --git a/harbour/source/compiler/harbour.yyc b/harbour/source/compiler/harbour.yyc index 1eb464c2f7..4b12bce134 100644 --- a/harbour/source/compiler/harbour.yyc +++ b/harbour/source/compiler/harbour.yyc @@ -4905,7 +4905,7 @@ yyreduce: case 141: #line 571 "harbour.y" - { (yyval.asExpr) = hb_compExprNewDate( (yyvsp[(1) - (1)].valLong).lNumber, HB_COMP_PARAM ); ;} + { (yyval.asExpr) = hb_compExprNewDate( ( LONG ) (yyvsp[(1) - (1)].valLong).lNumber, HB_COMP_PARAM ); ;} break; case 142: diff --git a/harbour/source/compiler/hbcomp.c b/harbour/source/compiler/hbcomp.c index 68222e322b..e2292c79eb 100644 --- a/harbour/source/compiler/hbcomp.c +++ b/harbour/source/compiler/hbcomp.c @@ -235,6 +235,7 @@ HB_COMP_PTR hb_comp_new( void ) pComp->iStartProc = 0; /* no implicit starting procedure */ pComp->iWarnings = 0; /* enable parse warnings */ + pComp->iErrorCount = 0; /* number of compile errors */ pComp->iGenCOutput= HB_COMPGENC_COMPACT; /* C code generation default mode */ pComp->iExitLevel = HB_EXITLEVEL_DEFAULT; /* holds if there was any warning during the compilation process */ diff --git a/harbour/source/compiler/hbmain.c b/harbour/source/compiler/hbmain.c index 4684933ca1..67158d645a 100644 --- a/harbour/source/compiler/hbmain.c +++ b/harbour/source/compiler/hbmain.c @@ -3720,9 +3720,7 @@ static void hb_compInitVars( HB_COMP_DECL ) HB_COMP_PARAM->symbols.pLast = NULL; HB_COMP_PARAM->pInitFunc = NULL; HB_COMP_PARAM->pLineFunc = NULL; - HB_COMP_PARAM->fAnyWarning = FALSE; - HB_COMP_PARAM->iErrorCount = 0; HB_COMP_PARAM->lastLinePos = 0; HB_COMP_PARAM->iStaticCnt = 0; HB_COMP_PARAM->iVarScope = VS_LOCAL; @@ -4324,12 +4322,10 @@ static int hb_compAutoOpen( HB_COMP_DECL, const char * szPrg, BOOL * pbSkipGen, if( !HB_COMP_PARAM->fExit ) { int i = HB_COMP_PARAM->iExitLevel ; - BOOL b = HB_COMP_PARAM->fAnyWarning; hb_compparse( HB_COMP_PARAM ); HB_COMP_PARAM->iExitLevel = ( i > HB_COMP_PARAM->iExitLevel ? i : HB_COMP_PARAM->iExitLevel ); - HB_COMP_PARAM->fAnyWarning = ( b ? b : HB_COMP_PARAM->fAnyWarning ); } if( HB_COMP_PARAM->fAnyWarning ) diff --git a/harbour/source/vm/Makefile b/harbour/source/vm/Makefile index 67ad4c4330..dd683d0163 100644 --- a/harbour/source/vm/Makefile +++ b/harbour/source/vm/Makefile @@ -7,21 +7,18 @@ ROOT = ../../ ifeq ($(HB_ARCHITECTURE),win) ifeq ($(HB_COMPILER),mingw) C_MAIN = mainwin.c - DIRS = mainstd else ifeq ($(HB_COMPILER),mingwce) C_MAIN = mainwin.c - DIRS = mainstd mainwin else C_MAIN = mainstd.c mainwin.c - DIRS = mainstd mainwin endif endif - DIRS += maindllh maindllp + DIRS = mainstd mainwin maindllh maindllp else - ifeq ($(HB_COMPILER),wce) + ifeq ($(HB_ARCHITECTURE),wce) C_MAIN = mainwin.c - DIRS = mainstd mainwin + DIRS = mainstd mainwin maindllh maindllp else ifeq ($(HB_ARCHITECTURE),os2) C_MAIN = mainstd.c diff --git a/harbour/source/vm/maindllh/Makefile b/harbour/source/vm/maindllh/Makefile new file mode 100644 index 0000000000..1e704850fc --- /dev/null +++ b/harbour/source/vm/maindllh/Makefile @@ -0,0 +1,17 @@ +# +# $Id$ +# + +vpath %.c ../ + +ROOT = ../../../ + +C_SOURCES=\ + maindllh.c \ + +LIBNAME=hbmaindllh + +# always export symbols +HB_USER_CFLAGS += -DHB_DYNLIB + +include $(TOP)$(ROOT)config/lib.cf