diff --git a/harbour/ChangeLog b/harbour/ChangeLog index e97b43bfe0..a5f06496c9 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -16,6 +16,24 @@ The license applies to all entries newer than 2009-04-28. */ +2010-08-19 03:07 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) + + package/mpkg_win_nightly.bat + + Added nightly binary builder script. Relocatable. + Makes unified Windows build. Regular target builds + also supported. + Unified build currently has mingw and bcc enabled. + + - package/winuni/mpkg_win_uni_extra_copy.bat + * package/winuni/mpkg_win_uni.bat + * package/winuni/mpkg_win_uni.nsi + + Made it fully configurable, removed any hard-wired + version numbers, .nsi now fully modular, manual steps + no more required. + + - package/mpkg_nightly.sh + + package/mpkg_src_nightly.sh + * Renamed. + 2010-08-18 22:48 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) * utils/hbmk2/hbmk2.prg + Added extension to license. Pls read it, especially projects diff --git a/harbour/package/mpkg_nightly.sh b/harbour/package/mpkg_src_nightly.sh similarity index 100% rename from harbour/package/mpkg_nightly.sh rename to harbour/package/mpkg_src_nightly.sh diff --git a/harbour/package/mpkg_win_nightly.bat b/harbour/package/mpkg_win_nightly.bat new file mode 100644 index 0000000000..52bf441a05 --- /dev/null +++ b/harbour/package/mpkg_win_nightly.bat @@ -0,0 +1,95 @@ +@rem +@rem $Id$ +@rem + +@echo off + +rem --------------------------------------------------------------- +rem Copyright 2010 Viktor Szakats (harbour.01 syenar.hu) +rem See COPYING for licensing terms. +rem --------------------------------------------------------------- + +echo ! Downloading Harbour sources... + +if exist harbour rd /q /s harbour +svn export http://harbour-project.svn.sourceforge.net/svnroot/harbour-project/trunk/harbour + +echo ! Setting up generic build parameters... + +cd harbour + +set HB_VF=nightly +set HB_VL=%HB_VF% +set HB_RT=%~dp0 + +set _HB_DIR_3RD=%~dp03rd\ +set _HB_DIR_COMP=%~dp0comp\ +set _HB_DIR_TOOL=%~dp0tool\ +set _HB_MAKE_OPTION=HB_VERSION=%HB_VF% +set _HB_SFNET_URL=,harbour-project@frs.sourceforge.net:/home/frs/project/h/ha/harbour-project/binaries-windows/nightly/ + +set HB_BUILD_PKG=yes + +set HB_DIR_NSIS=%_HB_DIR_TOOL%nsis\ +set HB_OPT_NSIS=/DPKG_NO_COMP_MSVC /DPKG_NO_COMP_MSVC64 /DPKG_NO_COMP_MINGW64 /DPKG_NO_COMP_MINGWARM /DPKG_NO_PLAT_LINUX /DPKG_NO_PLAT_OS2 /DPKG_NO_PLAT_DOS /DPKG_NO_COMP_WATCOM +set HB_DIR_ZIP=%_HB_DIR_TOOL%misc\ +set HB_DIR_7Z=%_HB_DIR_TOOL%misc\ +set HB_DIR_UPX=%_HB_DIR_TOOL%upx\ +set HB_DIR_BCC_IMPLIB=%_HB_DIR_COMP%bcc\Bin\ +set HB_DIR_MINGW=%_HB_DIR_COMP%mingw + +set HB_WITH_ADS=%_HB_DIR_3RD%ads\acesdk +set HB_WITH_BLAT=%_HB_DIR_3RD%blat\full\source +set HB_WITH_CAIRO=%_HB_DIR_3RD%cairo\include\cairo +set HB_WITH_CURL=%_HB_DIR_3RD%curl\include +set HB_WITH_FIREBIRD=%_HB_DIR_3RD%firebird\include +set HB_WITH_FREEIMAGE=%_HB_DIR_3RD%freeimage\Dist +set HB_WITH_GD=%_HB_DIR_3RD%gd\include +set HB_WITH_MYSQL=%_HB_DIR_3RD%mysql\include +set HB_WITH_OCILIB=%_HB_DIR_3RD%ocilib\include +set HB_WITH_OPENSSL=%_HB_DIR_3RD%openssl\include +set HB_WITH_PGSQL=%_HB_DIR_3RD%pgsql\include +set HB_WITH_QT=%_HB_DIR_3RD%qt\include + +echo ! Building Harbour... + +setlocal +echo ! Setting environment for using MinGW GCC +set PATH=%_HB_DIR_COMP%mingw\bin +win-make clean install %_HB_MAKE_OPTION% > "%~dp0harbour-nightly-win-mingw.txt" 2>&1 +endlocal + +setlocal +echo ! Setting environment for using Borland C++ +set PATH=%_HB_DIR_COMP%bcc\Bin +win-make clean install %_HB_MAKE_OPTION% > "%~dp0harbour-nightly-win-bcc.txt" 2>&1 +endlocal + +rem setlocal +rem echo ! Setting environment for using Open Watcom +rem SET WATCOM=%_HB_DIR_COMP%watcom +rem SET PATH=%WATCOM%\BINNT;%WATCOM%\BINW +rem SET EDPATH=%WATCOM%\EDDAT +rem SET INCLUDE=%WATCOM%\H;%WATCOM%\H\NT +rem win-make clean install %_HB_MAKE_OPTION% > "%~dp0harbour-nightly-win-watcom.txt" 2>&1 +rem endlocal + +rem echo ! Uploading Harbour Windows binaries... +rem +rem %_HB_DIR_TOOL%misc\pscp.exe -batch -i %HB_SFNET_FRS_PRIVATE_KEY% harbour-nightly-win-mingw.exe %HB_SFNET_USER%%_HB_SFNET_URL% +rem %_HB_DIR_TOOL%misc\pscp.exe -batch -i %HB_SFNET_FRS_PRIVATE_KEY% harbour-nightly-win-mingw.zip %HB_SFNET_USER%%_HB_SFNET_URL% +rem %_HB_DIR_TOOL%misc\pscp.exe -batch -i %HB_SFNET_FRS_PRIVATE_KEY% harbour-nightly-win-bcc.exe %HB_SFNET_USER%%_HB_SFNET_URL% +rem %_HB_DIR_TOOL%misc\pscp.exe -batch -i %HB_SFNET_FRS_PRIVATE_KEY% harbour-nightly-win-bcc.zip %HB_SFNET_USER%%_HB_SFNET_URL% +rem %_HB_DIR_TOOL%misc\pscp.exe -batch -i %HB_SFNET_FRS_PRIVATE_KEY% harbour-nightly-win-watcom.exe %HB_SFNET_USER%%_HB_SFNET_URL% +rem %_HB_DIR_TOOL%misc\pscp.exe -batch -i %HB_SFNET_FRS_PRIVATE_KEY% harbour-nightly-win-watcom.zip %HB_SFNET_USER%%_HB_SFNET_URL% + +echo ! Creating unified Windows package... + +call package\winuni\mpkg_win_uni.bat + +echo ! Uploading Harbour unified Windows package... + +%_HB_DIR_TOOL%misc\pscp.exe -batch -i %HB_SFNET_FRS_PRIVATE_KEY% %HB_RT%harbour-nightly-win.exe %HB_SFNET_USER%%_HB_SFNET_URL% +%_HB_DIR_TOOL%misc\pscp.exe -batch -i %HB_SFNET_FRS_PRIVATE_KEY% %HB_RT%harbour-nightly-win.7z %HB_SFNET_USER%%_HB_SFNET_URL% + +echo ! Finished. diff --git a/harbour/package/winuni/mpkg_win_uni.bat b/harbour/package/winuni/mpkg_win_uni.bat index 545944fc1a..76617b5fd3 100644 --- a/harbour/package/winuni/mpkg_win_uni.bat +++ b/harbour/package/winuni/mpkg_win_uni.bat @@ -4,81 +4,168 @@ @echo off +@rem - Adjust target dir, mingw dirs, set HB_DIR_UPX, HB_DIR_MINGW, create required packages beforehand. +@rem - Requires BCC in PATH or HB_DIR_BCC_IMPLIB (for implib). +@rem - Run this from vanilla official source tree only. + +if "%HB_VS%" == "" set HB_VS=21 +if "%HB_VL%" == "" set HB_VL=210 +if "%HB_VM%" == "" set HB_VM=2.1 +if "%HB_VF%" == "" set HB_VF=2.1.0 +if "%HB_RT%" == "" set HB_RT=F:\hb\ + +set HB_DR=hb%HB_VS%\ +set HB_ABSROOT=%HB_RT%%HB_DR% + +rem ; Assemble unified package from per-target builds + +if exist %HB_ABSROOT% rd /q /s %HB_ABSROOT% + +xcopy /y %~dp0RELNOTES %HB_ABSROOT% +xcopy /y /s %~dp0..\..\examples\*.* %HB_ABSROOT%examples\ +xcopy /y /s %~dp0..\..\tests\*.* %HB_ABSROOT%tests\ +xcopy /y %~dp0HARBOUR_README_ADDONS %HB_ABSROOT%addons\ +xcopy /y %~dp0HARBOUR_README_DJGPP %HB_ABSROOT%comp\djgpp\ +xcopy /y %~dp0HARBOUR_README_MINGW %HB_ABSROOT%comp\mingw\ +xcopy /y %~dp0HARBOUR_README_MINGW64 %HB_ABSROOT%comp\mingw64\ +xcopy /y %~dp0HARBOUR_README_MINGWARM %HB_ABSROOT%comp\mingwarm\ +xcopy /y %~dp0HARBOUR_README_POCC %HB_ABSROOT%comp\pocc\ +xcopy /y %~dp0HARBOUR_README_WATCOM %HB_ABSROOT%comp\watcom\ + +xcopy /y /s %~dp0..\..\contrib\hbide\*.* %HB_ABSROOT%contrib\hbide\ + +xcopy /y /s %~dp0..\..\pkg\win\mingw\harbour-%HB_VF%-win-mingw %HB_ABSROOT% + +xcopy /y /s %~dp0..\..\pkg\linux\watcom\harbour-%HB_VF%-linux-watcom\lib %HB_ABSROOT%lib\linux\watcom\ +xcopy /y /s %~dp0..\..\pkg\dos\watcom\hb%HB_VL%wa\lib %HB_ABSROOT%lib\ +xcopy /y /s %~dp0..\..\pkg\os2\watcom\harbour-%HB_VF%-os2-watcom\lib %HB_ABSROOT%lib\ +xcopy /y /s %~dp0..\..\pkg\wce\mingwarm\harbour-%HB_VF%-wce-mingwarm\lib %HB_ABSROOT%lib\ +xcopy /y /s %~dp0..\..\pkg\win\bcc\harbour-%HB_VF%-win-bcc\lib %HB_ABSROOT%lib\ +xcopy /y /s %~dp0..\..\pkg\win\mingw\harbour-%HB_VF%-win-mingw\lib %HB_ABSROOT%lib\ +xcopy /y /s %~dp0..\..\pkg\win\mingw64\harbour-%HB_VF%-win-mingw64\lib %HB_ABSROOT%lib\ +xcopy /y /s %~dp0..\..\pkg\win\msvc\harbour-%HB_VF%-win-msvc\lib %HB_ABSROOT%lib\ +xcopy /y /s %~dp0..\..\pkg\win\msvc64\harbour-%HB_VF%-win-msvc64\lib %HB_ABSROOT%lib\ +xcopy /y /s %~dp0..\..\pkg\win\watcom\harbour-%HB_VF%-win-watcom\lib %HB_ABSROOT%lib\ + +xcopy /y %~dp0..\..\pkg\wce\mingwarm\harbour-%HB_VF%-wce-mingwarm\bin\*.dll %HB_ABSROOT%bin\ +xcopy /y %~dp0..\..\pkg\win\bcc\harbour-%HB_VF%-win-bcc\bin\*.dll %HB_ABSROOT%bin\ +xcopy /y %~dp0..\..\pkg\win\msvc64\harbour-%HB_VF%-win-msvc64\bin\*.dll %HB_ABSROOT%bin\ + +rem ; Create special implibs for Borland (requires BCC in PATH) +"%HB_DIR_BCC_IMPLIB%implib.exe" -c -a %HB_ABSROOT%lib\win\bcc\harbour-%HB_VS%-bcc.lib %HB_ABSROOT%bin\harbour-%HB_VS%.dll +"%HB_DIR_BCC_IMPLIB%implib.exe" -c -a %HB_ABSROOT%lib\win\bcc\harbourmt-%HB_VS%-bcc.lib %HB_ABSROOT%bin\harbourmt-%HB_VS%.dll + +del %HB_ABSROOT%bin\harbour-%HB_VS%-bcc.dll +del %HB_ABSROOT%bin\harbourmt-%HB_VS%-bcc.dll + +rem ; Using msvc64 because mingw64 .dll handling is broken. + copy /y %~dp0..\..\pkg\win\msvc64\harbour-%HB_VF%-win-msvc64\bin\harbour.exe %HB_ABSROOT%bin\harbour-x64.exe + copy /y %~dp0..\..\pkg\win\msvc64\harbour-%HB_VF%-win-msvc64\bin\hbpp.exe %HB_ABSROOT%bin\hbpp-x64.exe + copy /y %~dp0..\..\pkg\win\msvc64\harbour-%HB_VF%-win-msvc64\bin\hbformat.exe %HB_ABSROOT%bin\hbformat-x64.exe + copy /y %~dp0..\..\pkg\win\msvc64\harbour-%HB_VF%-win-msvc64\bin\hbi18n.exe %HB_ABSROOT%bin\hbi18n-x64.exe + copy /y %~dp0..\..\pkg\win\msvc64\harbour-%HB_VF%-win-msvc64\bin\hbmk2.exe %HB_ABSROOT%bin\hbmk2-x64.exe + copy /y %~dp0..\..\pkg\win\msvc64\harbour-%HB_VF%-win-msvc64\bin\hbrun.exe %HB_ABSROOT%bin\hbrun-x64.exe + copy /y %~dp0..\..\pkg\win\msvc64\harbour-%HB_VF%-win-msvc64\bin\hbtest.exe %HB_ABSROOT%bin\hbtest-x64.exe + copy /y %~dp0..\..\pkg\win\msvc64\harbour-%HB_VF%-win-msvc64\bin\hbnetio.exe %HB_ABSROOT%bin\hbnetio-x64.exe + +xcopy /y "%HB_DIR_UPX%upx.exe" %HB_ABSROOT%bin\ + copy /y "%HB_DIR_UPX%LICENSE" %HB_ABSROOT%bin\upx_LICENSE.txt + +xcopy /y /s /e %HB_DIR_MINGW% %HB_ABSROOT%comp\mingw\ +rem del %HB_ABSROOT%comp\mingw\tdm-mingw-1.908.0-4.4.1-2.exe + pushd -cd F:\hb\hb21\.. +cd %~dp0..\..\contrib -if exist %~dp0harbour-2.1.0-win-log.txt del %~dp0harbour-2.1.0-win-log.txt +for /F %%a in ( 'dir /b /ad' ) do ( + echo %%a + xcopy /y /s %%a\*.hbc %HB_ABSROOT%contrib\%%a\ + xcopy /y /s %%a\*.def %HB_ABSROOT%contrib\%%a\ + xcopy /y /s %%a\tests\*.* %HB_ABSROOT%contrib\%%a\tests\ +) -set HB_ROOT=F:\hb\ -"%HB_DIR_NSIS%makensis.exe" %~dp0mpkg_win_uni.nsi >> %~dp0harbour-2.1.0-win-log.txt +popd + +rem ; Create unified installer + +pushd + +cd %HB_RT% + +if exist %HB_RT%harbour-%HB_VF%-win-log.txt del %HB_RT%harbour-%HB_VF%-win-log.txt +if exist %HB_RT%harbour-%HB_VF%-win.exe del %HB_RT%harbour-%HB_VF%-win.exe + +"%HB_DIR_NSIS%makensis.exe" %HB_OPT_NSIS% %~dp0mpkg_win_uni.nsi >> %HB_RT%harbour-%HB_VF%-win-log.txt + +rem ; Create unified archive echo.> _hbfiles -echo "hb21\RELNOTES" >> _hbfiles -echo "hb21\INSTALL" >> _hbfiles -echo "hb21\COPYING" >> _hbfiles -echo "hb21\NEWS" >> _hbfiles -echo "hb21\TODO" >> _hbfiles -echo "hb21\ChangeLog*" >> _hbfiles -echo "hb21\bin\harbour-20.dll" >> _hbfiles -echo "hb21\bin\harbourmt-20.dll" >> _hbfiles -echo "hb21\bin\harbour.exe" >> _hbfiles -echo "hb21\bin\hbi18n.exe" >> _hbfiles -echo "hb21\bin\hbmk2.exe" >> _hbfiles -echo "hb21\bin\hbmk2.*.hbl" >> _hbfiles -echo "hb21\bin\hbpp.exe" >> _hbfiles -echo "hb21\bin\hbrun.exe" >> _hbfiles -echo "hb21\bin\hbtest.exe" >> _hbfiles -echo "hb21\bin\hbformat.exe" >> _hbfiles -echo "hb21\bin\hbnetio.exe" >> _hbfiles -if exist "hb21\bin\hbmk.hbc" echo "hb21\bin\hbmk.hbc" >> _hbfiles -echo "hb21\bin\upx*.*" >> _hbfiles -echo "hb21\include\*.*" >> _hbfiles -echo "hb21\bin\harbour-x64.exe" >> _hbfiles -echo "hb21\bin\hbi18n-x64.exe" >> _hbfiles -echo "hb21\bin\hbmk2-x64.exe" >> _hbfiles -echo "hb21\bin\hbpp-x64.exe" >> _hbfiles -echo "hb21\bin\hbrun-x64.exe" >> _hbfiles -echo "hb21\bin\hbtest-x64.exe" >> _hbfiles -echo "hb21\bin\hbformat-x64.exe" >> _hbfiles -echo "hb21\bin\hbnetio-x64.exe" >> _hbfiles -echo "hb21\lib\win\mingw\*.*" >> _hbfiles -echo "hb21\lib\win\mingw64\*.*" >> _hbfiles -echo "hb21\lib\wce\mingwarm\*.*" >> _hbfiles -echo "hb21\addons\HARBOUR_README_ADDONS" >> _hbfiles -rem echo "hb21\comp\djgpp\HARBOUR_README_DJGPP" >> _hbfiles -echo "hb21\comp\watcom\HARBOUR_README_WATCOM" >> _hbfiles -echo "hb21\comp\pocc\HARBOUR_README_POCC" >> _hbfiles -echo "hb21\comp\mingw\HARBOUR_README_MINGW" >> _hbfiles -echo "hb21\comp\mingw64\HARBOUR_README_MINGW64" >> _hbfiles -echo "hb21\comp\mingwarm\HARBOUR_README_MINGWARM" >> _hbfiles -rem echo "hb21\lib\dos\djgpp\*.*" >> _hbfiles -echo "hb21\lib\dos\watcom\*.*" >> _hbfiles -echo "hb21\lib\linux\watcom\*.*" >> _hbfiles -echo "hb21\lib\os2\watcom\*.*" >> _hbfiles -echo "hb21\lib\win\msvc\*.*" >> _hbfiles -echo "hb21\lib\win\msvc64\*.*" >> _hbfiles -echo "hb21\bin\harbour-20-bcc.dll" >> _hbfiles -echo "hb21\bin\harbourmt-20-bcc.dll" >> _hbfiles -echo "hb21\lib\win\bcc\*.*" >> _hbfiles -echo "hb21\lib\win\watcom\*.*" >> _hbfiles -rem echo "hb21\lib\win\pocc\*.*" >> _hbfiles -rem echo "hb21\lib\win\pocc64\*.*" >> _hbfiles -rem echo "hb21\lib\wce\poccarm\*.*" >> _hbfiles -echo "hb21\bin\harbour-20-x64.dll" >> _hbfiles -echo "hb21\bin\harbourmt-20-x64.dll" >> _hbfiles -echo "hb21\bin\harbour-20-wce-arm.dll" >> _hbfiles -echo "hb21\bin\harbourmt-20-wce-arm.dll" >> _hbfiles -rem echo "hb21\bin\harbour-20-os2.dll" >> _hbfiles -rem echo "hb21\bin\harbourmt-20-os2.dll" >> _hbfiles -echo "hb21\tests\*.*" >> _hbfiles -echo "hb21\doc\*.*" >> _hbfiles -echo "hb21\comp\mingw\*" >> _hbfiles -echo "hb21\examples\*.*" >> _hbfiles -echo "hb21\contrib\*.*" >> _hbfiles +echo "%HB_DR%RELNOTES" >> _hbfiles +echo "%HB_DR%INSTALL" >> _hbfiles +echo "%HB_DR%COPYING" >> _hbfiles +echo "%HB_DR%NEWS" >> _hbfiles +echo "%HB_DR%TODO" >> _hbfiles +echo "%HB_DR%ChangeLog*" >> _hbfiles +echo "%HB_DR%bin\harbour-%HB_VS%.dll" >> _hbfiles +echo "%HB_DR%bin\harbourmt-%HB_VS%.dll" >> _hbfiles +echo "%HB_DR%bin\harbour.exe" >> _hbfiles +echo "%HB_DR%bin\hbi18n.exe" >> _hbfiles +echo "%HB_DR%bin\hbmk2.exe" >> _hbfiles +echo "%HB_DR%bin\hbmk2.*.hbl" >> _hbfiles +echo "%HB_DR%bin\hbpp.exe" >> _hbfiles +echo "%HB_DR%bin\hbrun.exe" >> _hbfiles +echo "%HB_DR%bin\hbtest.exe" >> _hbfiles +echo "%HB_DR%bin\hbformat.exe" >> _hbfiles +echo "%HB_DR%bin\hbnetio.exe" >> _hbfiles +if exist "%HB_DR%bin\hbmk.hbc" echo "%HB_DR%bin\hbmk.hbc" >> _hbfiles +echo "%HB_DR%bin\upx*.*" >> _hbfiles +echo "%HB_DR%include\*.*" >> _hbfiles +echo "%HB_DR%bin\harbour-x64.exe" >> _hbfiles +echo "%HB_DR%bin\hbi18n-x64.exe" >> _hbfiles +echo "%HB_DR%bin\hbmk2-x64.exe" >> _hbfiles +echo "%HB_DR%bin\hbpp-x64.exe" >> _hbfiles +echo "%HB_DR%bin\hbrun-x64.exe" >> _hbfiles +echo "%HB_DR%bin\hbtest-x64.exe" >> _hbfiles +echo "%HB_DR%bin\hbformat-x64.exe" >> _hbfiles +echo "%HB_DR%bin\hbnetio-x64.exe" >> _hbfiles +echo "%HB_DR%lib\win\mingw\*.*" >> _hbfiles +echo "%HB_DR%lib\win\mingw64\*.*" >> _hbfiles +echo "%HB_DR%lib\wce\mingwarm\*.*" >> _hbfiles +echo "%HB_DR%addons\HARBOUR_README_ADDONS" >> _hbfiles +rem echo "%HB_DR%comp\djgpp\HARBOUR_README_DJGPP" >> _hbfiles +echo "%HB_DR%comp\watcom\HARBOUR_README_WATCOM" >> _hbfiles +echo "%HB_DR%comp\pocc\HARBOUR_README_POCC" >> _hbfiles +echo "%HB_DR%comp\mingw\HARBOUR_README_MINGW" >> _hbfiles +echo "%HB_DR%comp\mingw64\HARBOUR_README_MINGW64" >> _hbfiles +echo "%HB_DR%comp\mingwarm\HARBOUR_README_MINGWARM" >> _hbfiles +rem echo "%HB_DR%lib\dos\djgpp\*.*" >> _hbfiles +echo "%HB_DR%lib\dos\watcom\*.*" >> _hbfiles +echo "%HB_DR%lib\linux\watcom\*.*" >> _hbfiles +echo "%HB_DR%lib\os2\watcom\*.*" >> _hbfiles +echo "%HB_DR%lib\win\msvc\*.*" >> _hbfiles +echo "%HB_DR%lib\win\msvc64\*.*" >> _hbfiles +rem echo "%HB_DR%bin\harbour-20-bcc.dll" >> _hbfiles +rem echo "%HB_DR%bin\harbourmt-20-bcc.dll" >> _hbfiles +echo "%HB_DR%lib\win\bcc\*.*" >> _hbfiles +echo "%HB_DR%lib\win\watcom\*.*" >> _hbfiles +rem echo "%HB_DR%lib\win\pocc\*.*" >> _hbfiles +rem echo "%HB_DR%lib\win\pocc64\*.*" >> _hbfiles +rem echo "%HB_DR%lib\wce\poccarm\*.*" >> _hbfiles +echo "%HB_DR%bin\harbour-%HB_VS%-x64.dll" >> _hbfiles +echo "%HB_DR%bin\harbourmt-%HB_VS%-x64.dll" >> _hbfiles +echo "%HB_DR%bin\harbour-%HB_VS%-wce-arm.dll" >> _hbfiles +echo "%HB_DR%bin\harbourmt-%HB_VS%-wce-arm.dll" >> _hbfiles +rem echo "%HB_DR%bin\harbour-%HB_VS%-os2.dll" >> _hbfiles +rem echo "%HB_DR%bin\harbourmt-%HB_VS%-os2.dll" >> _hbfiles +echo "%HB_DR%tests\*.*" >> _hbfiles +echo "%HB_DR%doc\*.*" >> _hbfiles +echo "%HB_DR%comp\mingw\*" >> _hbfiles +echo "%HB_DR%examples\*.*" >> _hbfiles +echo "%HB_DR%contrib\*.*" >> _hbfiles -if exist %~dp0harbour-2.1.0-win.7z del %~dp0harbour-2.1.0-win.7z -7za a -r %~dp0harbour-2.1.0-win.7z @_hbfiles >> %~dp0harbour-2.1.0-win-log.txt +if exist %HB_RT%harbour-%HB_VF%-win.7z del %HB_RT%harbour-%HB_VF%-win.7z +"%HB_DIR_7Z%7za.exe" a -r %HB_RT%harbour-%HB_VF%-win.7z @_hbfiles >> %HB_RT%harbour-%HB_VF%-win-log.txt del _hbfiles diff --git a/harbour/package/winuni/mpkg_win_uni.nsi b/harbour/package/winuni/mpkg_win_uni.nsi index c921a7a9af..6e8dadca97 100644 --- a/harbour/package/winuni/mpkg_win_uni.nsi +++ b/harbour/package/winuni/mpkg_win_uni.nsi @@ -27,26 +27,19 @@ CRCCheck on RequestExecutionLevel user -!define PKG_NODJGPP +!define PKG_NO_CC_MINGW64 +!define PKG_NO_CC_MINGWARM +!define PKG_NO_COMP_DJGPP +!define PKG_NO_COMP_POCC +!define PKG_NO_COMP_POCC64 +!define PKG_NO_COMP_POCCARM !define /date NOW "%Y%m%d" -!ifdef PKG_FULL - ; The name of the installer - Name "Harbour Project 2.1 (full)" - ; The file to write - OutFile "harbour-2.1.0-win-full.exe" -!else - !ifdef PKG_MINI - Name "Harbour Project 2.1 (minimal)" - OutFile "harbour-2.1.0-win-mini.exe" - !else - Name "Harbour Project 2.1" - OutFile "harbour-2.1.0-win.exe" - !endif -!endif +Name "Harbour Project $%HB_VM%" +OutFile "$%HB_RT%harbour-$%HB_VF%-win.exe" -InstallDir C:\hb21 +InstallDir C:\hb$%HB_VS% ;-------------------------------- ; Interface Settings @@ -76,7 +69,7 @@ InstallDir C:\hb21 ;-------------------------------- ; License Language String -LicenseLangString MUILicense ${LANG_ENGLISH} "$%HB_ROOT%hb21\COPYING" +LicenseLangString MUILicense ${LANG_ENGLISH} "$%HB_ABSROOT%COPYING" ;-------------------------------- ; The stuff to install @@ -88,213 +81,237 @@ Section "Main components" hb_main ; Set output path to the installation directory. SetOutPath $INSTDIR - File /nonfatal "$%HB_ROOT%hb21\RELNOTES" + File /nonfatal "$%HB_ABSROOT%RELNOTES" - File /nonfatal "$%HB_ROOT%hb21\INSTALL" - File /nonfatal "$%HB_ROOT%hb21\COPYING" - File /nonfatal "$%HB_ROOT%hb21\NEWS" - File /nonfatal "$%HB_ROOT%hb21\TODO" - File /nonfatal "$%HB_ROOT%hb21\ChangeLog*" + File /nonfatal "$%HB_ABSROOT%INSTALL" + File /nonfatal "$%HB_ABSROOT%COPYING" + File /nonfatal "$%HB_ABSROOT%NEWS" + File /nonfatal "$%HB_ABSROOT%TODO" + File /nonfatal "$%HB_ABSROOT%ChangeLog*" SetOutPath $INSTDIR\bin - File "$%HB_ROOT%hb21\bin\harbour-21.dll" - File "$%HB_ROOT%hb21\bin\harbourmt-21.dll" - File "$%HB_ROOT%hb21\bin\harbour.exe" - File "$%HB_ROOT%hb21\bin\hbi18n.exe" - File "$%HB_ROOT%hb21\bin\hbmk2.exe" - File "$%HB_ROOT%hb21\bin\hbmk2.*.hbl" - File "$%HB_ROOT%hb21\bin\hbpp.exe" - File "$%HB_ROOT%hb21\bin\hbrun.exe" - File "$%HB_ROOT%hb21\bin\hbtest.exe" - File "$%HB_ROOT%hb21\bin\hbformat.exe" - File "$%HB_ROOT%hb21\bin\hbnetio.exe" - File "$%HB_ROOT%hb21\bin\*.hbs" - File /nonfatal "$%HB_ROOT%hb21\bin\hbmk.hbc" - File "$%HB_ROOT%hb21\bin\upx*.*" + File "$%HB_ABSROOT%bin\harbour-$%HB_VS%.dll" + File "$%HB_ABSROOT%bin\harbourmt-$%HB_VS%.dll" + File "$%HB_ABSROOT%bin\harbour.exe" + File "$%HB_ABSROOT%bin\hbi18n.exe" + File "$%HB_ABSROOT%bin\hbmk2.exe" + File "$%HB_ABSROOT%bin\hbmk2.*.hbl" + File "$%HB_ABSROOT%bin\hbpp.exe" + File "$%HB_ABSROOT%bin\hbrun.exe" + File "$%HB_ABSROOT%bin\hbtest.exe" + File "$%HB_ABSROOT%bin\hbformat.exe" + File "$%HB_ABSROOT%bin\hbnetio.exe" + File "$%HB_ABSROOT%bin\*.hbs" + File /nonfatal "$%HB_ABSROOT%bin\hbmk.hbc" + File "$%HB_ABSROOT%bin\upx*.*" SetOutPath $INSTDIR\include - File "$%HB_ROOT%hb21\include\*.*" + File "$%HB_ABSROOT%include\*.*" SetOutPath $INSTDIR\doc - File "$%HB_ROOT%hb21\doc\*.*" + File "$%HB_ABSROOT%doc\*.*" SetOutPath $INSTDIR\addons - File "$%HB_ROOT%hb21\addons\HARBOUR_README_ADDONS" + File "$%HB_ABSROOT%addons\HARBOUR_README_ADDONS" ; Write the installation path into the registry -; WriteRegStr HKLM "SOFTWARE\Harbour Project 2.1" "InstallDir" "$INSTDIR" - WriteRegStr HKCU "Software\Harbour Project 2.1" "InstallDir" "$INSTDIR" +; WriteRegStr HKLM "SOFTWARE\Harbour Project $%HB_VM%" "InstallDir" "$INSTDIR" + WriteRegStr HKCU "Software\Harbour Project $%HB_VM%" "InstallDir" "$INSTDIR" ; Write the uninstall keys for Windows -; WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Harbour Project 2.1" "DisplayName" "Harbour Project" -; WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Harbour Project 2.1" "UninstallString" '"$INSTDIR\uninstall.exe"' -; WriteRegDWORD HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Harbour Project 2.1" "NoModify" 1 -; WriteRegDWORD HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Harbour Project 2.1" "NoRepair" 1 +; WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Harbour Project $%HB_VM%" "DisplayName" "Harbour Project" +; WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Harbour Project $%HB_VM%" "UninstallString" '"$INSTDIR\uninstall.exe"' +; WriteRegDWORD HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Harbour Project $%HB_VM%" "NoModify" 1 +; WriteRegDWORD HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Harbour Project $%HB_VM%" "NoRepair" 1 WriteUninstaller "uninstall.exe" SectionEnd +!ifndef PKG_NO_COMP_MINGW64 Section /o "x64 tools" hb_main_x64 SetOutPath $INSTDIR\bin - File "$%HB_ROOT%hb21\bin\harbour-x64.exe" - File "$%HB_ROOT%hb21\bin\hbi18n-x64.exe" - File "$%HB_ROOT%hb21\bin\hbmk2-x64.exe" - File "$%HB_ROOT%hb21\bin\hbpp-x64.exe" - File "$%HB_ROOT%hb21\bin\hbrun-x64.exe" - File "$%HB_ROOT%hb21\bin\hbtest-x64.exe" - File "$%HB_ROOT%hb21\bin\hbformat-x64.exe" - File "$%HB_ROOT%hb21\bin\hbnetio-x64.exe" -SectionEnd - -!ifndef PKG_NO_MINGW -Section "MinGW compiler" hb_mingw - SetOutPath $INSTDIR\comp\mingw - File /r "$%HB_ROOT%hb21\comp\mingw\*.*" + File "$%HB_ABSROOT%bin\harbour-x64.exe" + File "$%HB_ABSROOT%bin\hbi18n-x64.exe" + File "$%HB_ABSROOT%bin\hbmk2-x64.exe" + File "$%HB_ABSROOT%bin\hbpp-x64.exe" + File "$%HB_ABSROOT%bin\hbrun-x64.exe" + File "$%HB_ABSROOT%bin\hbtest-x64.exe" + File "$%HB_ABSROOT%bin\hbformat-x64.exe" + File "$%HB_ABSROOT%bin\hbnetio-x64.exe" SectionEnd !endif -!ifdef PKG_FULL +!ifndef PKG_NO_CC_MINGW +Section "MinGW compiler" hb_mingw + SetOutPath $INSTDIR\comp\mingw + File /r "$%HB_ABSROOT%comp\mingw\*.*" +SectionEnd +!endif + +!ifndef PKG_NO_CC_MINGW64 Section "MinGW x64 compiler" hb_mingw64 SetOutPath $INSTDIR\comp\mingw64 - File /r "$%HB_ROOT%hb21\comp\mingw64\*.*" + File /r "$%HB_ABSROOT%comp\mingw64\*.*" SectionEnd +!endif +!ifndef PKG_NO_CC_MINGWARM Section "MinGW WinCE/ARM compiler" hb_mingwarm SetOutPath $INSTDIR\comp\mingwarm - File /r "$%HB_ROOT%hb21\comp\mingwarm\*.*" + File /r "$%HB_ABSROOT%comp\mingwarm\*.*" SectionEnd !endif Section "Libs for MinGW" hb_lib_mingw SectionIn RO SetOutPath $INSTDIR\lib\win\mingw - File "$%HB_ROOT%hb21\lib\win\mingw\*.*" + File "$%HB_ABSROOT%lib\win\mingw\*.*" SetOutPath $INSTDIR\comp\mingw - File "$%HB_ROOT%hb21\comp\mingw\HARBOUR_README_MINGW" + File "$%HB_ABSROOT%comp\mingw\HARBOUR_README_MINGW" SectionEnd +!ifndef PKG_NO_COMP_MINGW64 Section /o "Libs for MinGW x64" hb_lib_mingw64 SetOutPath $INSTDIR\lib\win\mingw64 - File "$%HB_ROOT%hb21\lib\win\mingw64\*.*" + File "$%HB_ABSROOT%lib\win\mingw64\*.*" SetOutPath $INSTDIR\comp\mingw64 - File "$%HB_ROOT%hb21\comp\mingw64\HARBOUR_README_MINGW64" + File "$%HB_ABSROOT%comp\mingw64\HARBOUR_README_MINGW64" SectionEnd +!endif +!ifndef PKG_NO_COMP_MINGWARM Section /o "Libs for MinGW WinCE/ARM" hb_lib_mingwarm SetOutPath $INSTDIR\lib\wce\mingwarm - File "$%HB_ROOT%hb21\lib\wce\mingwarm\*.*" + File "$%HB_ABSROOT%lib\wce\mingwarm\*.*" SetOutPath $INSTDIR\comp\mingwarm - File "$%HB_ROOT%hb21\comp\mingwarm\HARBOUR_README_MINGWARM" + File "$%HB_ABSROOT%comp\mingwarm\HARBOUR_README_MINGWARM" SectionEnd +!endif -Section "Libs for MSVC 2008" hb_lib_msvc +!ifndef PKG_NO_COMP_MSVC +Section "Libs for MSVC" hb_lib_msvc SetOutPath $INSTDIR\lib\win\msvc - File "$%HB_ROOT%hb21\lib\win\msvc\*.*" + File "$%HB_ABSROOT%lib\win\msvc\*.*" SectionEnd +!endif -Section /o "Libs for MSVC 2008 x64" hb_lib_msvc64 +!ifndef PKG_NO_COMP_MSVC64 +Section /o "Libs for MSVC x64" hb_lib_msvc64 SetOutPath $INSTDIR\lib\win\msvc64 - File "$%HB_ROOT%hb21\lib\win\msvc64\*.*" + File "$%HB_ABSROOT%lib\win\msvc64\*.*" SectionEnd +!endif +!ifndef PKG_NO_COMP_BCC Section "Libs for Borland C" hb_lib_bcc SetOutPath $INSTDIR\bin - File "$%HB_ROOT%hb21\bin\harbour-21-bcc.dll" - File "$%HB_ROOT%hb21\bin\harbourmt-21-bcc.dll" + ; File "$%HB_ABSROOT%bin\harbour-$%HB_VS%-bcc.dll" + ; File "$%HB_ABSROOT%bin\harbourmt-$%HB_VS%-bcc.dll" SetOutPath $INSTDIR\lib\win\bcc - File "$%HB_ROOT%hb21\lib\win\bcc\*.*" + File "$%HB_ABSROOT%lib\win\bcc\*.*" SectionEnd +!endif +!ifndef PKG_NO_COMP_WATCOM Section /o "Libs for Open Watcom" hb_lib_watcom SetOutPath $INSTDIR\lib\win\watcom - File "$%HB_ROOT%hb21\lib\win\watcom\*.*" + File "$%HB_ABSROOT%lib\win\watcom\*.*" SetOutPath $INSTDIR\comp\watcom - File "$%HB_ROOT%hb21\comp\watcom\HARBOUR_README_WATCOM" + File "$%HB_ABSROOT%comp\watcom\HARBOUR_README_WATCOM" SectionEnd +!endif -!ifdef PKG_ADDPOCC +!ifndef PKG_NO_COMP_POCC Section /o "Libs for Pelles C" hb_lib_pocc SetOutPath $INSTDIR\lib\win\pocc - File "$%HB_ROOT%hb21\lib\win\pocc\*.*" + File "$%HB_ABSROOT%lib\win\pocc\*.*" SetOutPath $INSTDIR\comp\pocc - File "$%HB_ROOT%hb21\comp\pocc\HARBOUR_README_POCC" + File "$%HB_ABSROOT%comp\pocc\HARBOUR_README_POCC" SectionEnd +!endif +!ifndef PKG_NO_COMP_POCC64 Section /o "Libs for Pelles C x64" hb_lib_pocc64 SetOutPath $INSTDIR\lib\win\pocc64 - File "$%HB_ROOT%hb21\lib\win\pocc64\*.*" + File "$%HB_ABSROOT%lib\win\pocc64\*.*" SectionEnd +!endif +!ifndef PKG_NO_COMP_POCCARM Section /o "Libs for Pelles C WinCE/ARM" hb_lib_poccarm SetOutPath $INSTDIR\lib\wce\poccarm - File "$%HB_ROOT%hb21\lib\wce\poccarm\*.*" + File "$%HB_ABSROOT%lib\wce\poccarm\*.*" SectionEnd !endif -!ifndef PKG_NOLINUX +!ifndef PKG_NO_PLAT_LINUX Section /o "Libs for Open Watcom Linux" hb_lib_linux SetOutPath $INSTDIR\lib\linux\watcom - File "$%HB_ROOT%hb21\lib\linux\watcom\*.*" + File "$%HB_ABSROOT%lib\linux\watcom\*.*" SetOutPath $INSTDIR\comp\watcom - File "$%HB_ROOT%hb21\comp\watcom\HARBOUR_README_WATCOM" + File "$%HB_ABSROOT%comp\watcom\HARBOUR_README_WATCOM" SectionEnd !endif -!ifndef PKG_NOOS2 +!ifndef PKG_NO_PLAT_OS2 Section /o "Libs for Open Watcom OS/2" hb_lib_os2 SetOutPath $INSTDIR\lib\os2\watcom - File "$%HB_ROOT%hb21\lib\os2\watcom\*.*" + File "$%HB_ABSROOT%lib\os2\watcom\*.*" SetOutPath $INSTDIR\comp\watcom - File "$%HB_ROOT%hb21\comp\watcom\HARBOUR_README_WATCOM" + File "$%HB_ABSROOT%comp\watcom\HARBOUR_README_WATCOM" SectionEnd !endif -!ifndef PKG_NODOS +!ifndef PKG_NO_PLAT_DOS Section /o "Libs for Open Watcom MS-DOS" hb_lib_dos SetOutPath $INSTDIR\lib\dos\watcom - File "$%HB_ROOT%hb21\lib\dos\watcom\*.*" + File "$%HB_ABSROOT%lib\dos\watcom\*.*" SetOutPath $INSTDIR\comp\watcom - File "$%HB_ROOT%hb21\comp\watcom\HARBOUR_README_WATCOM" + File "$%HB_ABSROOT%comp\watcom\HARBOUR_README_WATCOM" SectionEnd !endif -!ifndef PKG_NODJGPP +!ifndef PKG_NO_COMP_DJGPP Section /o "Libs for DJGPP MS-DOS" hb_lib_djgpp SetOutPath $INSTDIR\lib\dos\djgpp - File "$%HB_ROOT%hb21\lib\dos\djgpp\*.*" + File "$%HB_ABSROOT%lib\dos\djgpp\*.*" SetOutPath $INSTDIR\comp\djgpp - File "$%HB_ROOT%hb21\comp\djgpp\HARBOUR_README_DJGPP" + File "$%HB_ABSROOT%comp\djgpp\HARBOUR_README_DJGPP" SectionEnd !endif +!ifndef PKG_NO_COMP_MINGW64 Section /o "Dlls for x64" hb_dlls_x64 SetOutPath $INSTDIR\bin - File "$%HB_ROOT%hb21\bin\harbour-21-x64.dll" - File "$%HB_ROOT%hb21\bin\harbourmt-21-x64.dll" + File "$%HB_ABSROOT%bin\harbour-$%HB_VS%-x64.dll" + File "$%HB_ABSROOT%bin\harbourmt-$%HB_VS%-x64.dll" SectionEnd +!endif +!ifndef PKG_NO_COMP_MINGWARM Section /o "Dlls for WinCE/ARM" hb_dlls_arm SetOutPath $INSTDIR\bin - File "$%HB_ROOT%hb21\bin\harbour-21-wce-arm.dll" - File "$%HB_ROOT%hb21\bin\harbourmt-21-wce-arm.dll" + File "$%HB_ABSROOT%bin\harbour-$%HB_VS%-wce-arm.dll" + File "$%HB_ABSROOT%bin\harbourmt-$%HB_VS%-wce-arm.dll" SectionEnd +!endif !ifdef _NEVER_ -!ifndef PKG_NOOS2 +!ifndef PKG_NO_PLAT_OS2 Section /o "Dlls for OS/2" hb_dlls_os2 SetOutPath $INSTDIR\bin ; TOFIX: .dll name collision with MS-DOS - File "$%HB_ROOT%hb21\bin\harbour.dll" - File "$%HB_ROOT%hb21\bin\harbourm.dll" + File "$%HB_ABSROOT%bin\harbour.dll" + File "$%HB_ABSROOT%bin\harbourm.dll" SectionEnd !endif -!ifndef PKG_NODOS +!ifndef PKG_NO_PLAT_DOS Section /o "Dlls for MS-DOS" hb_dlls_dos SetOutPath $INSTDIR\bin ; TOFIX: .dll name collision with OS/2 - File "$%HB_ROOT%hb21\bin\harbour.dll" - File "$%HB_ROOT%hb21\bin\harbourm.dll" + File "$%HB_ABSROOT%bin\harbour.dll" + File "$%HB_ABSROOT%bin\harbourm.dll" SectionEnd !endif !endif @@ -302,11 +319,11 @@ SectionEnd ; The stuff to install Section "Examples" hb_examples SetOutPath $INSTDIR\examples - File /r "$%HB_ROOT%hb21\examples\*.*" + File /r "$%HB_ABSROOT%examples\*.*" SetOutPath $INSTDIR\tests - File /r "$%HB_ROOT%hb21\tests\*.*" + File /r "$%HB_ABSROOT%tests\*.*" SetOutPath $INSTDIR\contrib - File /r "$%HB_ROOT%hb21\contrib\*.*" + File /r "$%HB_ABSROOT%contrib\*.*" SectionEnd ; Optional section (can be disabled by the user) @@ -315,18 +332,18 @@ Section "Start Menu and Desktop icons" hb_shortcuts ; this will be the working dir for shortcuts SetOutPath $INSTDIR - CreateShortCut "$DESKTOP\Harbour Project 2.1.lnk" "$INSTDIR" "" "$INSTDIR" 0 - CreateDirectory "$SMPROGRAMS\Harbour Project 2.1" - CreateShortCut "$SMPROGRAMS\Harbour Project 2.1\Uninstall.lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0 - CreateShortCut "$SMPROGRAMS\Harbour Project 2.1\Harbour Project (Command line).lnk" "cmd.exe" "/k cd $INSTDIR\bin" "cmd.exe" 0 - CreateShortCut "$SMPROGRAMS\Harbour Project 2.1\Harbour Project.lnk" "$INSTDIR" "" "$INSTDIR" 0 - CreateShortCut "$SMPROGRAMS\Harbour Project 2.1\hbrun.lnk" "$INSTDIR\bin\hbrun.exe" "-v" "$INSTDIR\bin\hbrun.exe" 0 - CreateDirectory "$SMPROGRAMS\Harbour Project 2.1\Links" - WriteINIStr "$SMPROGRAMS\Harbour Project 2.1\Links\Homepage.url" "InternetShortcut" "URL" "http://harbour-project.org/" - WriteINIStr "$SMPROGRAMS\Harbour Project 2.1\Links\Sourceforge Page.url" "InternetShortcut" "URL" "http://sourceforge.net/projects/harbour-project/" - WriteINIStr "$SMPROGRAMS\Harbour Project 2.1\Links\Users' Mailing List.url" "InternetShortcut" "URL" "http://groups.google.com/group/harbour-users/" - WriteINIStr "$SMPROGRAMS\Harbour Project 2.1\Links\Developers' Mailing List.url" "InternetShortcut" "URL" "http://groups.google.com/group/harbour-devel/" - WriteINIStr "$SMPROGRAMS\Harbour Project 2.1\Links\Development Timeline.url" "InternetShortcut" "URL" "http://sourceforge.net/apps/trac/harbour-project/timeline" + CreateShortCut "$DESKTOP\Harbour Project $%HB_VM%.lnk" "$INSTDIR" "" "$INSTDIR" 0 + CreateDirectory "$SMPROGRAMS\Harbour Project $%HB_VM%" + CreateShortCut "$SMPROGRAMS\Harbour Project $%HB_VM%\Uninstall.lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0 + CreateShortCut "$SMPROGRAMS\Harbour Project $%HB_VM%\Harbour Project (Command line).lnk" "cmd.exe" "/k cd $INSTDIR\bin" "cmd.exe" 0 + CreateShortCut "$SMPROGRAMS\Harbour Project $%HB_VM%\Harbour Project.lnk" "$INSTDIR" "" "$INSTDIR" 0 + CreateShortCut "$SMPROGRAMS\Harbour Project $%HB_VM%\hbrun.lnk" "$INSTDIR\bin\hbrun.exe" "-v" "$INSTDIR\bin\hbrun.exe" 0 + CreateDirectory "$SMPROGRAMS\Harbour Project $%HB_VM%\Links" + WriteINIStr "$SMPROGRAMS\Harbour Project $%HB_VM%\Links\Homepage.url" "InternetShortcut" "URL" "http://harbour-project.org/" + WriteINIStr "$SMPROGRAMS\Harbour Project $%HB_VM%\Links\Sourceforge Page.url" "InternetShortcut" "URL" "http://sourceforge.net/projects/harbour-project/" + WriteINIStr "$SMPROGRAMS\Harbour Project $%HB_VM%\Links\Users' Mailing List.url" "InternetShortcut" "URL" "http://groups.google.com/group/harbour-users/" + WriteINIStr "$SMPROGRAMS\Harbour Project $%HB_VM%\Links\Developers' Mailing List.url" "InternetShortcut" "URL" "http://groups.google.com/group/harbour-devel/" + WriteINIStr "$SMPROGRAMS\Harbour Project $%HB_VM%\Links\Development Timeline.url" "InternetShortcut" "URL" "http://sourceforge.net/apps/trac/harbour-project/timeline" SectionEnd @@ -337,44 +354,68 @@ SectionEnd LangString DESC_hb_main ${LANG_ENGLISH} "Harbour main components" LangString DESC_hb_shortcuts ${LANG_ENGLISH} "Add icons to Start Menu and Desktop" LangString DESC_hb_examples ${LANG_ENGLISH} "Harbour samples and tests" +!ifndef PKG_NO_COMP_MINGW64 LangString DESC_hb_main_x64 ${LANG_ENGLISH} "Harbour x64 tools" LangString DESC_hb_dlls_x64 ${LANG_ENGLISH} "Harbour dlls for x64" +!endif +!ifndef PKG_NO_COMP_MINGWARM LangString DESC_hb_dlls_arm ${LANG_ENGLISH} "Harbour dlls for WinCE/ARM" +!endif !ifdef _NEVER_ -!ifndef PKG_NOOS2 +!ifndef PKG_NO_PLAT_OS2 LangString DESC_hb_dlls_os2 ${LANG_ENGLISH} "Harbour dlls for OS/2" !endif -!ifndef PKG_NODOS +!ifndef PKG_NO_PLAT_DOS LangString DESC_hb_dlls_dos ${LANG_ENGLISH} "Harbour dlls for MS-DOS" !endif !endif +!ifndef PKG_NO_CC_MINGW LangString DESC_hb_mingw ${LANG_ENGLISH} "MinGW compiler" -!ifdef PKG_FULL +!endif +!ifndef PKG_NO_CC_MINGW64 LangString DESC_hb_mingw64 ${LANG_ENGLISH} "MinGW x64 compiler" +!endif +!ifndef PKG_NO_CC_MINGWARM LangString DESC_hb_mingwarm ${LANG_ENGLISH} "MinGW WinCE/ARM compiler" !endif LangString DESC_hb_lib_mingw ${LANG_ENGLISH} "Harbour libs for MinGW" +!ifndef PKG_NO_COMP_MINGW64 LangString DESC_hb_lib_mingw64 ${LANG_ENGLISH} "Harbour libs for MinGW x64" +!endif +!ifndef PKG_NO_COMP_MINGWARM LangString DESC_hb_lib_mingwarm ${LANG_ENGLISH} "Harbour libs for MinGW WinCE/ARM" - LangString DESC_hb_lib_msvc ${LANG_ENGLISH} "Harbour libs for MSVC 2008" - LangString DESC_hb_lib_msvc64 ${LANG_ENGLISH} "Harbour libs for MSVC 2008 x64" +!endif +!ifndef PKG_NO_COMP_MSVC + LangString DESC_hb_lib_msvc ${LANG_ENGLISH} "Harbour libs for MSVC" +!endif +!ifndef PKG_NO_COMP_MSVC64 + LangString DESC_hb_lib_msvc64 ${LANG_ENGLISH} "Harbour libs for MSVC x64" +!endif +!ifndef PKG_NO_COMP_BCC LangString DESC_hb_lib_bcc ${LANG_ENGLISH} "Harbour libs for Borland C" +!endif +!ifndef PKG_NO_COMP_WATCOM LangString DESC_hb_lib_watcom ${LANG_ENGLISH} "Harbour libs for Open Watcom" -!ifdef PKG_ADDPOCC +!endif +!ifndef PKG_NO_COMP_POCC LangString DESC_hb_lib_pocc ${LANG_ENGLISH} "Harbour libs for Pelles C" +!endif +!ifndef PKG_NO_COMP_POCC64 LangString DESC_hb_lib_pocc64 ${LANG_ENGLISH} "Harbour libs for Pelles C x64" +!endif +!ifndef PKG_NO_COMP_POCCARM LangString DESC_hb_lib_poccarm ${LANG_ENGLISH} "Harbour libs for Pelles C WinCE/ARM" !endif -!ifndef PKG_NOLINUX +!ifndef PKG_NO_PLAT_LINUX LangString DESC_hb_lib_linux ${LANG_ENGLISH} "Harbour libs for Open Watcom Linux" !endif -!ifndef PKG_NOOS2 +!ifndef PKG_NO_PLAT_OS2 LangString DESC_hb_lib_os2 ${LANG_ENGLISH} "Harbour libs for Open Watcom OS/2" !endif -!ifndef PKG_NODOS +!ifndef PKG_NO_PLAT_DOS LangString DESC_hb_lib_dos ${LANG_ENGLISH} "Harbour libs for Open Watcom MS-DOS" !endif -!ifndef PKG_NODJGPP +!ifndef PKG_NO_COMP_DJGPP LangString DESC_hb_lib_djgpp ${LANG_ENGLISH} "Harbour libs for DJGPP MS-DOS" !endif @@ -383,36 +424,60 @@ SectionEnd !insertmacro MUI_DESCRIPTION_TEXT ${hb_main} $(DESC_hb_main) !insertmacro MUI_DESCRIPTION_TEXT ${hb_shortcuts} $(DESC_hb_shortcuts) !insertmacro MUI_DESCRIPTION_TEXT ${hb_examples} $(DESC_hb_examples) +!ifndef PKG_NO_COMP_MINGW64 !insertmacro MUI_DESCRIPTION_TEXT ${hb_main_x64} $(DESC_hb_main_x64) !insertmacro MUI_DESCRIPTION_TEXT ${hb_dlls_x64} $(DESC_hb_dlls_x64) +!endif +!ifndef PKG_NO_COMP_MINGWARM !insertmacro MUI_DESCRIPTION_TEXT ${hb_dlls_arm} $(DESC_hb_dlls_arm) +!endif +!ifndef PKG_NO_CC_MINGW !insertmacro MUI_DESCRIPTION_TEXT ${hb_mingw} $(DESC_hb_mingw) -!ifdef PKG_FULL +!endif +!ifndef PKG_NO_CC_MINGW64 !insertmacro MUI_DESCRIPTION_TEXT ${hb_mingw64} $(DESC_hb_mingw64) +!endif +!ifndef PKG_NO_CC_MINGWARM !insertmacro MUI_DESCRIPTION_TEXT ${hb_mingwarm} $(DESC_hb_mingwarm) !endif !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_mingw} $(DESC_hb_lib_mingw) +!ifndef PKG_NO_COMP_MINGW64 !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_mingw64} $(DESC_hb_lib_mingw64) +!endif +!ifndef PKG_NO_COMP_MINGWARM !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_mingwarm} $(DESC_hb_lib_mingwarm) +!endif +!ifndef PKG_NO_COMP_MSVC !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_msvc} $(DESC_hb_lib_msvc) +!endif +!ifndef PKG_NO_COMP_MSVC64 !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_msvc64} $(DESC_hb_lib_msvc64) +!endif +!ifndef PKG_NO_COMP_BCC !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_bcc} $(DESC_hb_lib_bcc) +!endif +!ifndef PKG_NO_COMP_WATCOM !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_watcom} $(DESC_hb_lib_watcom) -!ifdef PKG_ADDPOCC +!endif +!ifndef PKG_NO_COMP_POCC !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_pocc} $(DESC_hb_lib_pocc) +!endif +!ifndef PKG_NO_COMP_POCC64 !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_pocc64} $(DESC_hb_lib_pocc64) +!endif +!ifndef PKG_NO_COMP_POCCARM !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_poccarm} $(DESC_hb_lib_poccarm) !endif -!ifndef PKG_NOLINUX +!ifndef PKG_NO_PLAT_LINUX !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_linux} $(DESC_hb_lib_linux) !endif -!ifndef PKG_NOOS2 +!ifndef PKG_NO_PLAT_OS2 !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_os2} $(DESC_hb_lib_os2) !endif -!ifndef PKG_NODOS +!ifndef PKG_NO_PLAT_DOS !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_dos} $(DESC_hb_lib_dos) !endif -!ifndef PKG_NODJGPP +!ifndef PKG_NO_COMP_DJGPP !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_djgpp} $(DESC_hb_lib_djgpp) !endif !insertmacro MUI_FUNCTION_DESCRIPTION_END @@ -426,15 +491,15 @@ Section "Uninstall" RMDir /r $INSTDIR ; Remove directories used - Delete "$SMPROGRAMS\Harbour Project 2.1\Links\*.*" - RMDir "$SMPROGRAMS\Harbour Project 2.1\Links" - Delete "$SMPROGRAMS\Harbour Project 2.1\*.*" - RMDir "$SMPROGRAMS\Harbour Project 2.1" + Delete "$SMPROGRAMS\Harbour Project $%HB_VM%\Links\*.*" + RMDir "$SMPROGRAMS\Harbour Project $%HB_VM%\Links" + Delete "$SMPROGRAMS\Harbour Project $%HB_VM%\*.*" + RMDir "$SMPROGRAMS\Harbour Project $%HB_VM%" RMDir "$INSTDIR" - Delete "$DESKTOP\Harbour Project 2.1.lnk" + Delete "$DESKTOP\Harbour Project $%HB_VM%.lnk" -; DeleteRegKey HKLM "SOFTWARE\Harbour Project 2.1" - DeleteRegKey HKCU "Software\Harbour Project 2.1" +; DeleteRegKey HKLM "SOFTWARE\Harbour Project $%HB_VM%" + DeleteRegKey HKCU "Software\Harbour Project $%HB_VM%" SectionEnd diff --git a/harbour/package/winuni/mpkg_win_uni_extra_copy.bat b/harbour/package/winuni/mpkg_win_uni_extra_copy.bat deleted file mode 100644 index a22f2baed9..0000000000 --- a/harbour/package/winuni/mpkg_win_uni_extra_copy.bat +++ /dev/null @@ -1,75 +0,0 @@ -@rem -@rem $Id$ -@rem - -@echo off - -@rem - Adjust target dir, mingw dirs, set HB_DIR_UPX, create required packages beforehand. -@rem - Requires BCC in PATH or HB_DIR_BCC_IMPLIB (for implib). -@rem - Run this from vanilla official source tree only. - -xcopy /y RELNOTES F:\hb\hb21\ -xcopy /y /s ..\..\examples\*.* F:\hb\hb21\examples\ -xcopy /y /s ..\..\tests\*.* F:\hb\hb21\tests\ -xcopy /y HARBOUR_README_ADDONS F:\hb\hb21\addons\ -xcopy /y HARBOUR_README_DJGPP F:\hb\hb21\comp\djgpp\ -xcopy /y HARBOUR_README_MINGW F:\hb\hb21\comp\mingw\ -xcopy /y HARBOUR_README_MINGW64 F:\hb\hb21\comp\mingw64\ -xcopy /y HARBOUR_README_MINGWARM F:\hb\hb21\comp\mingwarm\ -xcopy /y HARBOUR_README_POCC F:\hb\hb21\comp\pocc\ -xcopy /y HARBOUR_README_WATCOM F:\hb\hb21\comp\watcom\ - -xcopy /y /s ..\..\contrib\hbide\*.* F:\hb\hb21\contrib\hbide\ - -xcopy /y /s ..\..\pkg\win\mingw\harbour-2.1.0-win-mingw F:\hb\hb21\ - -xcopy /y /s ..\..\pkg\linux\watcom\harbour-2.1.0-linux-watcom\lib F:\hb\hb21\lib\linux\watcom\ -xcopy /y /s ..\..\pkg\dos\watcom\hb210wa\lib F:\hb\hb21\lib\ -xcopy /y /s ..\..\pkg\os2\watcom\harbour-2.1.0-os2-watcom\lib F:\hb\hb21\lib\ -xcopy /y /s ..\..\pkg\wce\mingwarm\harbour-2.1.0-wce-mingwarm\lib F:\hb\hb21\lib\ -xcopy /y /s ..\..\pkg\win\bcc\harbour-2.1.0-win-bcc\lib F:\hb\hb21\lib\ -xcopy /y /s ..\..\pkg\win\mingw\harbour-2.1.0-win-mingw\lib F:\hb\hb21\lib\ -xcopy /y /s ..\..\pkg\win\mingw64\harbour-2.1.0-win-mingw64\lib F:\hb\hb21\lib\ -xcopy /y /s ..\..\pkg\win\msvc\harbour-2.1.0-win-msvc\lib F:\hb\hb21\lib\ -xcopy /y /s ..\..\pkg\win\msvc64\harbour-2.1.0-win-msvc64\lib F:\hb\hb21\lib\ -xcopy /y /s ..\..\pkg\win\watcom\harbour-2.1.0-win-watcom\lib F:\hb\hb21\lib\ - -xcopy /y ..\..\pkg\wce\mingwarm\harbour-2.1.0-wce-mingwarm\bin\*.dll F:\hb\hb21\bin\ -xcopy /y ..\..\pkg\win\bcc\harbour-2.1.0-win-bcc\bin\*.dll F:\hb\hb21\bin\ -xcopy /y ..\..\pkg\win\msvc64\harbour-2.1.0-win-msvc64\bin\*.dll F:\hb\hb21\bin\ - -rem ; Create special implibs for Borland (requires BCC in PATH) -"%HB_DIR_BCC_IMPLIB%implib.exe" -c -a F:\hb\hb21\lib\win\bcc\harbour-21-bcc.lib F:\hb\hb21\bin\harbour-21.dll -"%HB_DIR_BCC_IMPLIB%implib.exe" -c -a F:\hb\hb21\lib\win\bcc\harbourmt-21-bcc.lib F:\hb\hb21\bin\harbourmt-21.dll - -del F:\hb\hb21\bin\harbour-21-bcc.dll -del F:\hb\hb21\bin\harbourmt-21-bcc.dll - -rem ; Using msvc64 because mingw64 .dll handling is broken. - copy /y ..\..\pkg\win\msvc64\harbour-2.1.0-win-msvc64\bin\harbour.exe F:\hb\hb21\bin\harbour-x64.exe - copy /y ..\..\pkg\win\msvc64\harbour-2.1.0-win-msvc64\bin\hbpp.exe F:\hb\hb21\bin\hbpp-x64.exe - copy /y ..\..\pkg\win\msvc64\harbour-2.1.0-win-msvc64\bin\hbformat.exe F:\hb\hb21\bin\hbformat-x64.exe - copy /y ..\..\pkg\win\msvc64\harbour-2.1.0-win-msvc64\bin\hbi18n.exe F:\hb\hb21\bin\hbi18n-x64.exe - copy /y ..\..\pkg\win\msvc64\harbour-2.1.0-win-msvc64\bin\hbmk2.exe F:\hb\hb21\bin\hbmk2-x64.exe - copy /y ..\..\pkg\win\msvc64\harbour-2.1.0-win-msvc64\bin\hbrun.exe F:\hb\hb21\bin\hbrun-x64.exe - copy /y ..\..\pkg\win\msvc64\harbour-2.1.0-win-msvc64\bin\hbtest.exe F:\hb\hb21\bin\hbtest-x64.exe - copy /y ..\..\pkg\win\msvc64\harbour-2.1.0-win-msvc64\bin\hbnetio.exe F:\hb\hb21\bin\hbnetio-x64.exe - -xcopy /y "%HB_DIR_UPX%upx.exe" F:\hb\hb21\bin\ - copy /y "%HB_DIR_UPX%LICENSE" F:\hb\hb21\bin\upx_LICENSE.txt - -xcopy /y /s /e F:\devl\MinGW-450 F:\hb\hb21\comp\mingw\ -rem del F:\hb\hb21\comp\mingw\tdm-mingw-1.908.0-4.4.1-2.exe - -pushd - -cd ..\..\contrib - -for /F %%a in ( 'dir /b /ad' ) do ( - echo %%a - xcopy /y /s %%a\*.hbc F:\hb\hb21\contrib\%%a\ - xcopy /y /s %%a\*.def F:\hb\hb21\contrib\%%a\ - xcopy /y /s %%a\tests\*.* F:\hb\hb21\contrib\%%a\tests\ -) - -popd