diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 65f286750a..23c42352a0 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -17,6 +17,30 @@ past entries belonging to author(s): Viktor Szakats. */ +2009-09-09 18:12 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) + * bin/postinst.bat + ! Fixed for dos shells. (cmdline lenght problems, end of .cfg + extension was clipped on the longest line to .cf) + + + package/winuni + + package/winuni/HARBOUR_README_MINGW + + package/winuni/HARBOUR_README_MINGWARM + + package/winuni/HARBOUR_README_ADDINS + + package/winuni/HARBOUR_README_DJGPP + + package/winuni/HARBOUR_README_POCC + + package/winuni/HARBOUR_README_WATCOM + + package/winuni/HARBOUR_README_MINGW64 + + package/winuni/mpkg_win_uni.bat + + package/winuni/mpkg_win_uni_extra_copy.bat + + package/winuni/RELNOTES + + package/winuni/mpkg_win_uni.nsi + + Added components needed to create unified Windows build. + Of course the dir structure with content should be assembled + manually. These files are rough ones, ease of use was no + concern. + + Anyone please feel free to continue this work. + 2009-09-09 13:27 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) * config/detfun.mk ! Reverted prev. It was wrong and also unnecessary. diff --git a/harbour/bin/postinst.bat b/harbour/bin/postinst.bat index de88971f77..43602d804f 100644 --- a/harbour/bin/postinst.bat +++ b/harbour/bin/postinst.bat @@ -28,18 +28,18 @@ if "%HB_BIN_INSTALL%" == "" echo ! HB_BIN_INSTALL needs to be set. if "%HB_BIN_INSTALL%" == "" goto END echo ! Making %HB_BIN_INSTALL%\hbmk.cfg... -echo # hbmk2 configuration> %HB_BIN_INSTALL%\hbmk.cfg -echo # Generated by Harbour build process>> %HB_BIN_INSTALL%\hbmk.cfg -echo.>> %HB_BIN_INSTALL%\hbmk.cfg -echo libpaths=../contrib/%%{hb_name}>> %HB_BIN_INSTALL%\hbmk.cfg -echo libpaths=../contrib/rddsql/%%{hb_name}>> %HB_BIN_INSTALL%\hbmk.cfg -echo libpaths=../addons/%%{hb_name}>> %HB_BIN_INSTALL%\hbmk.cfg -echo libpaths=../examples/%%{hb_name}>> %HB_BIN_INSTALL%\hbmk.cfg +echo # hbmk2 configuration>%HB_BIN_INSTALL%\hbmk.cfg +echo # Generated by Harbour build process>>%HB_BIN_INSTALL%\hbmk.cfg +echo.>>%HB_BIN_INSTALL%\hbmk.cfg +echo libpaths=../contrib/%%{hb_name}>>%HB_BIN_INSTALL%\hbmk.cfg +echo libpaths=../contrib/rddsql/%%{hb_name}>>%HB_BIN_INSTALL%\hbmk.cfg +echo libpaths=../addons/%%{hb_name}>>%HB_BIN_INSTALL%\hbmk.cfg +echo libpaths=../examples/%%{hb_name}>>%HB_BIN_INSTALL%\hbmk.cfg -if not "%HB_HAS_WATT%" == "" echo.>> %HB_BIN_INSTALL%\hbmk.cfg -if not "%HB_HAS_WATT%" == "" echo {dos&djgpp}syslibs=watt>> %HB_BIN_INSTALL%\hbmk.cfg -if not "%HB_HAS_WATT%" == "" echo {dos&watcom}syslibs=wattcpwf>> %HB_BIN_INSTALL%\hbmk.cfg -if not "%HB_HAS_WATT%" == "" echo {dos}libpaths=${WATT_ROOT}/lib>> %HB_BIN_INSTALL%\hbmk.cfg +if not "%HB_HAS_WATT%" == "" echo.>>%HB_BIN_INSTALL%\hbmk.cfg +if not "%HB_HAS_WATT%" == "" echo {dos&djgpp}syslibs=watt>>%HB_BIN_INSTALL%\hbmk.cfg +if not "%HB_HAS_WATT%" == "" echo {dos&watcom}syslibs=wattcpwf>>%HB_BIN_INSTALL%\hbmk.cfg +if not "%HB_HAS_WATT%" == "" echo {dos}libpaths=${WATT_ROOT}/lib>>%HB_BIN_INSTALL%\hbmk.cfg if "%HB_SHELL%" == "nt" goto _SH_NT diff --git a/harbour/package/winuni/HARBOUR_README_ADDINS b/harbour/package/winuni/HARBOUR_README_ADDINS new file mode 100644 index 0000000000..dcd76605d7 --- /dev/null +++ b/harbour/package/winuni/HARBOUR_README_ADDINS @@ -0,0 +1,2 @@ + +Copy/install 3rd party Harbour libraries into this directory. diff --git a/harbour/package/winuni/HARBOUR_README_DJGPP b/harbour/package/winuni/HARBOUR_README_DJGPP new file mode 100644 index 0000000000..6c31b54500 --- /dev/null +++ b/harbour/package/winuni/HARBOUR_README_DJGPP @@ -0,0 +1,5 @@ + +If this directory is empty, download package from link below +and install into this directory. + +http://www.delorie.com/djgpp/ diff --git a/harbour/package/winuni/HARBOUR_README_MINGW b/harbour/package/winuni/HARBOUR_README_MINGW new file mode 100644 index 0000000000..548e86d3ad --- /dev/null +++ b/harbour/package/winuni/HARBOUR_README_MINGW @@ -0,0 +1,8 @@ + +If this directory is empty, download package from below links +and unpack/install into this directory. + +Non-official: + http://www.tdragon.net/recentgcc/ +Official: + https://sourceforge.net/project/showfiles.php?group_id=2435 diff --git a/harbour/package/winuni/HARBOUR_README_MINGW64 b/harbour/package/winuni/HARBOUR_README_MINGW64 new file mode 100644 index 0000000000..609a89c1b4 --- /dev/null +++ b/harbour/package/winuni/HARBOUR_README_MINGW64 @@ -0,0 +1,5 @@ + +If this directory is empty, download package from link below +and unpack into this directory. + +http://sourceforge.net/projects/mingw-w64/files/ diff --git a/harbour/package/winuni/HARBOUR_README_MINGWARM b/harbour/package/winuni/HARBOUR_README_MINGWARM new file mode 100644 index 0000000000..ff66eb990a --- /dev/null +++ b/harbour/package/winuni/HARBOUR_README_MINGWARM @@ -0,0 +1,22 @@ + +If this directory is empty, download package from link below +and unpack into this directory. + +https://sourceforge.net/project/downloading.php?group_id=173455&use_mirror=switch&filename=cygwin-cegcc-mingw32ce-0.51.0-1.tar.gz&a=34126466 + +NOTES: - In order to unpack and *use* this package, you'll + need Cygwin package (from http://cygwin.com) installed + and put in PATH for Cygwin runtime (cygwin1.dll). + - To unpack: + > sh + $ tar -zxvf cygwin-cegcc-mingw32ce-0.51.0-1.tar.gz + $ exit + - Move content of /opt/mingw32ce directory to this one. + - If you feel unconfortable with Cygwin shell, you can + use gzip and GNU Tar to unpack it from Windows command + line, using these commands: + > gzip -d cygwin-cegcc-mingw32ce-0.51.0-1.tar.gz + > tar -xvf cygwin-cegcc-mingw32ce-0.51.0-1.tar -h + +UPDATE: It seems the cegcc team doesn't provide this binary download + anymore. Please consult their website for more information. diff --git a/harbour/package/winuni/HARBOUR_README_POCC b/harbour/package/winuni/HARBOUR_README_POCC new file mode 100644 index 0000000000..a4b81d9713 --- /dev/null +++ b/harbour/package/winuni/HARBOUR_README_POCC @@ -0,0 +1,5 @@ + +If this directory is empty, download package from link below +and unpack / install into this directory. + +http://www.smorgasbordet.com/pellesc/ diff --git a/harbour/package/winuni/HARBOUR_README_WATCOM b/harbour/package/winuni/HARBOUR_README_WATCOM new file mode 100644 index 0000000000..e418699c27 --- /dev/null +++ b/harbour/package/winuni/HARBOUR_README_WATCOM @@ -0,0 +1,5 @@ + +If this directory is empty, download package from link below +and unpack / install into this directory. + +http://www.openwatcom.org/ diff --git a/harbour/package/winuni/RELNOTES b/harbour/package/winuni/RELNOTES new file mode 100644 index 0000000000..91ef5b47f3 --- /dev/null +++ b/harbour/package/winuni/RELNOTES @@ -0,0 +1,153 @@ +Hi All, + +Harbour 2.0.0beta3 (r12422) source archives and Windows binary +releases are available for download on sourceforge.net. + +Make sure to check INSTALL doc "QUICK START" section and visit +our user forums at: + http://sourceforge.net/apps/phpbb/harbour-project/ + +Release notes: +----------------------------------------------------------------------- +Unified Windows release for most supported compilers and +x86, x64, WinCE/ARM, MS-DOS, OS/2, Linux target platforms. + +Installed size: 232MB (46MB - 340MB) + +The default installation will install MinGW compiler + x86 static and +shared libs, MSVC and BCC x86 libs and examples. + +Options: x86 shared tools, x64 shared tools, MinGW x64 and +WinCE-ARM libs, MSVC x64 libs, Open Watcom x86 libs, +shared x64/WinCE-ARM libs, MS-DOS 32-bit DJGPP libs, +OS/2 (watcom) libs, Linux (watcom) libs. + +Usage: +1) install/unpack to any directory (C:\hb20) +2) go to bin dir (optional if you specify path for hbmk2) +3) For x86 executable, type: 'hbmk2 ../tests/hello.prg' +4) For x64 executable, type: 'hbmk2 ../tests/hello.prg -compiler=mingw64' + [needs mingw64 to be installed into 'comp/mingw64' dir beforehand] +5) For WinCE/ARM executable, type: 'hbmk2 ../tests/hello.prg -platform=wce' + [needs cegcc to be installed into 'comp/mingwarm' dir beforehand] +6) For MS-DOS executable, type: 'hbmk2 ../tests/hello.prg -platform=dos' + [needs DJGPP to be installed into 'comp/djgpp' dir beforehand] +7) For Linux executable, type: 'hbmk2 ../tests/hello.prg -platform=linux' + [needs OpenWatcom to be installed into 'comp/watcom' dir beforehand] + +Tool/lib versions used to create this package: +----------------------------------------------------------------------- + + Compiler tools + -------------- + + MinGW 4.4.1 (included) + MinGW w64 4.5.0 + MinGW CEGCC 4.1.0 + DJGPP 4.4.1 (2.04b1) + MSVC 2008 SP1 + Open Watcom C++ 1.8 + Borland C++ 5.5.1 + + External lib dependencies + ------------------------- + + ACE 9.10 + Allegro 4.2.2 + Blat 2.6.2 + libcurl 7.19.6 + Firebird 2.1.2 + FreeImage 3.12.0 + GD 2.0.35 + MySQL 5.1.35 + OpenSSL 0.9.8k + PostgreSQL 8.3.7 + QT 4.5.2 + WATTCG 2.2.10 + +Changes since previous (2.0.0beta2 20090624) release: +----------------------------------------------------------------------- + +- Harbour updated to r12422 (from r11508) +- Rewritten socket library. +- Fixed remaining Clipper compatibility issues (@.clp, SET PROC TO, DO WITH, etc) +- Added replaceable core file I/O layer. +- Reworked build system with integrated dynlib creation, cross-platform + support, compiler and external component autodetection and much more. +- MinGW updated to 4.4.1 +- MinGW x64 updated to 4.5.0 (20090905) +- Finalizing ActiveX/OLE2 support. +- Timestamp/datetime support in core. +- Added MT support for dos platform. +- Added socket support for dos platform (via WATTCP lib). +- Added hbnetio lib client/server file I/O implementation. +- hbxbp lib about feature complete. +- wce/msvcarm target improvements, sunpro compiler support. +- hbssl OpenSSL wrapper lib. +- SSL support in hbtip lib. +- Serial communication fixes in hbwin/hbtpathy on win platform. +- Lots of other additions and some fixes. +- Changed default install path to be 'hb20' rather than 'harbour20', + to avoid long filenames. +- Replaced mingw64 built x64 shared tools with msvc64 builds, as + the former didn't work. +- Included hbqt lib which links against static QT libs. + +Changes since previous (2.0.0beta1 20090609) release: +----------------------------------------------------------------------- +- Harbour updated to r11508 (from r11287) +- New User's Forum linked +- upx compressor included in install package +- DOS cross build libs included in install package +- preparation to host 3rd party packages inside Harbour directory tree +- new "zero-conf" library install system in preparation +- hbmk2: lots of minor refinements, support for all free compilers + in embedded form, support spaces in filenames/paths, all Harbour + supported C compilers have now complete support in hbmk2 +- DOS support tested and required fixes applied +- embedded compilers moved to 'comp' subdir +- support for latest MinGW x64 and MSVS 2010 compilers +- extended INSTALL with new examples and app build quick guide +- icon for installer and hbrun tool +- hbxbp and hbqt enhancements +- hbwin refinements and better compatibility +- new uhttpd2 sessioned HTTP server +- C++ build support for all compilers, new HB_WAEVAL() function, + new xpp (Xbase++ compatibility) lib, .hrb loading enhancements +- DBU, RL, SuperLib fixes. +- MinGW64 updated to 4.4.1 +- There were a few changes in this release which may require updating + your source code (hb_par*()/hb_stor*() in .c files and GTWVG WIN_*() + function in .prg files). Search for 'incompatible' word in ChangeLog + for more. +----------------------------------------------------------------------- + +Changes since previous (1.1.0dev 20090602) release: +----------------------------------------------------------------------- +- Harbour updated to r11287 (from r11179) +- all contrib tests included in install package +- All 3rd party packages upgraded to latest version. +- hbmk2: project support, new file extensions, fixes, Harbour 1.0.x + support. +- further simplified/updated build process and instructions +- hbqt many enhancements +- almost full xhb compatibility +- 'terminal' fixed in examples +- source formatter, Cl*pper RL tool, legacy hbmake added +- MT Xbase++ compatibility +----------------------------------------------------------------------- + +Changes since previous (1.1.0dev 20090408) release: +----------------------------------------------------------------------- +- Harbour updated to r11179 (from r10819) +- Updated hbmk2 (filter issues + experimental Harbour 1.0.x support) +- Included contrib tests/utils +- Full and now standalone 'examples' +- 'tests' with subdirs included. +- No longer included pocc/pocc64/poccarm libs. +- QT updated to 4.5.1 +- MinGW updated to 4.4.0 + +-- +Brgds, +Viktor Szakats diff --git a/harbour/package/winuni/mpkg_win_uni.bat b/harbour/package/winuni/mpkg_win_uni.bat new file mode 100644 index 0000000000..0c069e25f1 --- /dev/null +++ b/harbour/package/winuni/mpkg_win_uni.bat @@ -0,0 +1,83 @@ +@rem +@rem $Id$ +@rem + +@echo off + +makensis mpkg_win_uni.nsi + +echo.> _hbfiles +echo "hb20\RELNOTES" >> _hbfiles +echo "hb20\INSTALL" >> _hbfiles +echo "hb20\COPYING" >> _hbfiles +echo "hb20\ERRATA" >> _hbfiles +echo "hb20\TODO" >> _hbfiles +echo "hb20\ChangeLog*" >> _hbfiles +echo "hb20\bin\hb-mkimp.bat" >> _hbfiles +echo "hb20\bin\harbour-20.dll" >> _hbfiles +echo "hb20\bin\harbourmt-20.dll" >> _hbfiles +echo "hb20\bin\harbour.exe" >> _hbfiles +echo "hb20\bin\hbi18n.exe" >> _hbfiles +echo "hb20\bin\hbmk2.exe" >> _hbfiles +echo "hb20\bin\hbmk2.*.hbl" >> _hbfiles +echo "hb20\bin\hbpp.exe" >> _hbfiles +echo "hb20\bin\hbrun.exe" >> _hbfiles +echo "hb20\bin\hbtest.exe" >> _hbfiles +echo "hb20\bin\hbformat.exe" >> _hbfiles +echo "hb20\bin\hbmk.cfg" >> _hbfiles +echo "hb20\bin\upx*.*" >> _hbfiles +echo "hb20\include\*.*" >> _hbfiles +echo "hb20\bin\hbi18n-dll.exe" >> _hbfiles +echo "hb20\bin\hbmk2-dll.exe" >> _hbfiles +echo "hb20\bin\hbrun-dll.exe" >> _hbfiles +echo "hb20\bin\hbtest-dll.exe" >> _hbfiles +echo "hb20\bin\hbformat-dll.exe" >> _hbfiles +echo "hb20\bin\harbour-x64.exe" >> _hbfiles +echo "hb20\bin\hbi18n-x64.exe" >> _hbfiles +echo "hb20\bin\hbmk2-x64.exe" >> _hbfiles +echo "hb20\bin\hbpp-x64.exe" >> _hbfiles +echo "hb20\bin\hbrun-x64.exe" >> _hbfiles +echo "hb20\bin\hbtest-x64.exe" >> _hbfiles +echo "hb20\bin\hbformat-x64.exe" >> _hbfiles +echo "hb20\lib\win\mingw\*.*" >> _hbfiles +echo "hb20\lib\win\mingw64\*.*" >> _hbfiles +echo "hb20\lib\wce\mingwarm\*.*" >> _hbfiles +echo "hb20\addons\HARBOUR_README_ADDONS" >> _hbfiles +echo "hb20\comp\djgpp\HARBOUR_README_DJGPP" >> _hbfiles +echo "hb20\comp\watcom\HARBOUR_README_WATCOM" >> _hbfiles +echo "hb20\comp\pocc\HARBOUR_README_POCC" >> _hbfiles +echo "hb20\comp\mingw\HARBOUR_README_MINGW" >> _hbfiles +echo "hb20\comp\mingw64\HARBOUR_README_MINGW64" >> _hbfiles +echo "hb20\comp\mingwarm\HARBOUR_README_MINGWARM" >> _hbfiles +echo "hb20\lib\dos\djgpp\*.*" >> _hbfiles +echo "hb20\lib\linux\watcom\*.*" >> _hbfiles +echo "hb20\lib\os2\watcom\*.*" >> _hbfiles +echo "hb20\lib\win\msvc\*.*" >> _hbfiles +echo "hb20\lib\win\msvc64\*.*" >> _hbfiles +echo "hb20\bin\harbour-20-bcc.dll" >> _hbfiles +echo "hb20\bin\harbourmt-20-bcc.dll" >> _hbfiles +echo "hb20\lib\win\bcc\*.*" >> _hbfiles +echo "hb20\lib\win\watcom\*.*" >> _hbfiles +rem echo "hb20\lib\win\pocc\*.*" >> _hbfiles +rem echo "hb20\lib\win\pocc64\*.*" >> _hbfiles +rem echo "hb20\lib\wce\poccarm\*.*" >> _hbfiles +echo "hb20\bin\harbour-20-x64.dll" >> _hbfiles +echo "hb20\bin\harbourmt-20-x64.dll" >> _hbfiles +echo "hb20\bin\harbour-20-wce-arm.dll" >> _hbfiles +echo "hb20\bin\harbourmt-20-wce-arm.dll" >> _hbfiles +rem echo "hb20\bin\harbour-20-os2.dll" >> _hbfiles +rem echo "hb20\bin\harbourmt-20-os2.dll" >> _hbfiles +echo "hb20\tests\*.*" >> _hbfiles +echo "hb20\doc\*.*" >> _hbfiles +echo "hb20\comp\mingw\*" >> _hbfiles +echo "hb20\examples\*.*" >> _hbfiles +echo "hb20\contrib\*.*" >> _hbfiles +echo "hb20\source\hbpcre\LICENCE" >> _hbfiles +echo "hb20\source\hbpcre\*.h" >> _hbfiles +echo "hb20\source\hbzlib\README" >> _hbfiles +echo "hb20\source\hbzlib\*.h" >> _hbfiles + +if exist harbour-2.0.0beta3-win-20090905.7z del harbour-2.0.0beta3-win-20090905.7z +7z a -r harbour-2.0.0beta3-win-20090905.7z @_hbfiles + +del _hbfiles diff --git a/harbour/package/winuni/mpkg_win_uni.nsi b/harbour/package/winuni/mpkg_win_uni.nsi new file mode 100644 index 0000000000..0305929ce8 --- /dev/null +++ b/harbour/package/winuni/mpkg_win_uni.nsi @@ -0,0 +1,419 @@ +; +; $Id$ +; + +; --------------------------------------------------------------- +; NSIS installer script for Harbour Project +; +; Copyright 2009 Viktor Szakats (harbour.01 syenar.hu) +; See COPYING for licensing terms. +; --------------------------------------------------------------- + +; TODO: option: install .dlls to system paths + +SetCompressor /solid lzma + + !include "MUI2.nsh" + + !define MUI_HEADERIMAGE + !define MUI_HEADERIMAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Header\win.bmp" + !define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED + !define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\doc\readme.txt" + !define MUI_ICON "harbour.ico" + +SetDateSave on +SetDatablockOptimize on +CRCCheck on + +!define /date NOW "%Y%m%d" + +!ifdef PKG_FULL + ; The name of the installer + Name "Harbour Project 2.0 (full)" + ; The file to write + OutFile "harbour-2.0.0beta3-win-full.exe" +!else + !ifdef PKG_MINI + Name "Harbour Project 2.0 (minimal)" + OutFile "harbour-2.0.0beta3-win-mini.exe" + !else + Name "Harbour Project 2.0" + OutFile "harbour-2.0.0beta3-win-20090905.exe" + !endif +!endif + +InstallDir C:\hb20 + +;-------------------------------- +; Interface Settings + + !define MUI_ABORTWARNING + +;-------------------------------- +; Pages + + !insertmacro MUI_PAGE_WELCOME + !insertmacro MUI_PAGE_LICENSE $(MUILicense) + !insertmacro MUI_PAGE_COMPONENTS + !insertmacro MUI_PAGE_DIRECTORY + !insertmacro MUI_PAGE_INSTFILES + !insertmacro MUI_PAGE_FINISH + + !insertmacro MUI_UNPAGE_WELCOME + !insertmacro MUI_UNPAGE_CONFIRM + !insertmacro MUI_UNPAGE_INSTFILES + !insertmacro MUI_UNPAGE_FINISH + +;-------------------------------- +; Languages + + !insertmacro MUI_LANGUAGE "English" + +;-------------------------------- +; License Language String + +LicenseLangString MUILicense ${LANG_ENGLISH} "hb20\COPYING" + +;-------------------------------- +; The stuff to install + +Section "Main components" hb_main + + SectionIn RO + + ; Set output path to the installation directory. + SetOutPath $INSTDIR + + File /nonfatal "hb20\RELNOTES" + + File /nonfatal "hb20\INSTALL" + File /nonfatal "hb20\COPYING" + File /nonfatal "hb20\ERRATA" + File /nonfatal "hb20\TODO" + File /nonfatal "hb20\ChangeLog*" + + SetOutPath $INSTDIR\bin + File "hb20\bin\harbour-20.dll" + File "hb20\bin\harbourmt-20.dll" + File "hb20\bin\harbour.exe" + File "hb20\bin\hbi18n.exe" + File "hb20\bin\hbmk2.exe" + File "hb20\bin\hbmk2.*.hbl" + File "hb20\bin\hbpp.exe" + File "hb20\bin\hbrun.exe" + File "hb20\bin\hbtest.exe" + File "hb20\bin\hbformat.exe" + File "hb20\bin\hb-mkimp.bat" + File "hb20\bin\hbmk.cfg" + File "hb20\bin\upx*.*" + + SetOutPath $INSTDIR\include + File "hb20\include\*.*" + + SetOutPath $INSTDIR\source\hbpcre + File "hb20\source\hbpcre\LICENCE" + File "hb20\source\hbpcre\*.h" + + SetOutPath $INSTDIR\source\hbzlib + File "hb20\source\hbzlib\README" + File "hb20\source\hbzlib\*.h" + + SetOutPath $INSTDIR\doc + File /r "hb20\doc\*.*" + + SetOutPath $INSTDIR\addons + File "hb20\addons\HARBOUR_README_ADDONS" + + ; Write the installation path into the registry +; WriteRegStr HKLM "Software\Harbour" "Install_Dir" "$INSTDIR" + + ; Write the uninstall keys for Windows +; WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Harbour" "DisplayName" "Harbour Project" +; WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Harbour" "UninstallString" '"$INSTDIR\uninstall.exe"' +; WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Harbour" "NoModify" 1 +; WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Harbour" "NoRepair" 1 + WriteUninstaller "uninstall.exe" + +SectionEnd + +Section /o "Shared tools" hb_main_dll + SetOutPath $INSTDIR\bin + File "hb20\bin\hbi18n-dll.exe" + File "hb20\bin\hbmk2-dll.exe" + File "hb20\bin\hbrun-dll.exe" + File "hb20\bin\hbtest-dll.exe" + File "hb20\bin\hbformat-dll.exe" +SectionEnd + +Section /o "Shared x64 tools" hb_main_x64 + SetOutPath $INSTDIR\bin + File "hb20\bin\harbour-x64.exe" + File "hb20\bin\hbi18n-x64.exe" + File "hb20\bin\hbmk2-x64.exe" + File "hb20\bin\hbpp-x64.exe" + File "hb20\bin\hbrun-x64.exe" + File "hb20\bin\hbtest-x64.exe" + File "hb20\bin\hbformat-x64.exe" +SectionEnd + +!ifndef PKG_NO_MINGW +Section "MinGW compiler" hb_mingw + SetOutPath $INSTDIR\comp\mingw + File /r "hb20\comp\mingw\*.*" +SectionEnd +!endif + +!ifdef PKG_FULL +Section "MinGW x64 compiler" hb_mingw64 + SetOutPath $INSTDIR\comp\mingw64 + File /r "hb20\comp\mingw64\*.*" +SectionEnd + +Section "MinGW WinCE/ARM compiler" hb_mingwarm + SetOutPath $INSTDIR\comp\mingwarm + File /r "hb20\comp\mingwarm\*.*" +SectionEnd +!endif + +Section "Libs for MinGW" hb_lib_mingw + SectionIn RO + SetOutPath $INSTDIR\lib\win\mingw + File "hb20\lib\win\mingw\*.*" + SetOutPath $INSTDIR\comp\mingw + File "hb20\comp\mingw\HARBOUR_README_MINGW" +SectionEnd + +Section /o "Libs for MinGW x64" hb_lib_mingw64 + SetOutPath $INSTDIR\lib\win\mingw64 + File "hb20\lib\win\mingw64\*.*" + SetOutPath $INSTDIR\comp\mingw64 + File "hb20\comp\mingw64\HARBOUR_README_MINGW64" +SectionEnd + +Section /o "Libs for MinGW WinCE/ARM" hb_lib_mingwarm + SetOutPath $INSTDIR\lib\wce\mingwarm + File "hb20\lib\wce\mingwarm\*.*" + SetOutPath $INSTDIR\comp\mingwarm + File "hb20\comp\mingwarm\HARBOUR_README_MINGWARM" +SectionEnd + +Section "Libs for MSVC 2008" hb_lib_msvc + SetOutPath $INSTDIR\lib\win\msvc + File "hb20\lib\win\msvc\*.*" +SectionEnd + +Section /o "Libs for MSVC 2008 x64" hb_lib_msvc64 + SetOutPath $INSTDIR\lib\win\msvc64 + File "hb20\lib\win\msvc64\*.*" +SectionEnd + +Section "Libs for Borland C" hb_lib_bcc + SetOutPath $INSTDIR\bin + File "hb20\bin\harbour-20-bcc.dll" + File "hb20\bin\harbourmt-20-bcc.dll" + SetOutPath $INSTDIR\lib\win\bcc + File "hb20\lib\win\bcc\*.*" +SectionEnd + +Section /o "Libs for Open Watcom" hb_lib_watcom + SetOutPath $INSTDIR\lib\win\watcom + File "hb20\lib\win\watcom\*.*" + SetOutPath $INSTDIR\comp\watcom + File "hb20\comp\watcom\HARBOUR_README_WATCOM" +SectionEnd + +!ifdef PKG_ADDPOCC +Section /o "Libs for Pelles C" hb_lib_pocc + SetOutPath $INSTDIR\lib\win\pocc + File "hb20\lib\win\pocc\*.*" + SetOutPath $INSTDIR\comp\pocc + File "hb20\comp\pocc\HARBOUR_README_POCC" +SectionEnd + +Section /o "Libs for Pelles C x64" hb_lib_pocc64 + SetOutPath $INSTDIR\lib\win\pocc64 + File "hb20\lib\win\pocc64\*.*" +SectionEnd + +Section /o "Libs for Pelles C WinCE/ARM" hb_lib_poccarm + SetOutPath $INSTDIR\lib\wce\poccarm + File "hb20\lib\wce\poccarm\*.*" +SectionEnd +!endif + +!ifndef PKG_NOLINUX +Section "Libs for Open Watcom Linux" hb_lib_linux + SetOutPath $INSTDIR\lib\linux\watcom + File "hb20\lib\linux\watcom\*.*" + SetOutPath $INSTDIR\comp\watcom + File "hb20\comp\watcom\HARBOUR_README_WATCOM" +SectionEnd +!endif + +!ifndef PKG_NOOS2 +Section "Libs for Open Watcom OS/2" hb_lib_os2 + SetOutPath $INSTDIR\lib\os2\watcom + File "hb20\lib\os2\watcom\*.*" + SetOutPath $INSTDIR\comp\watcom + File "hb20\comp\watcom\HARBOUR_README_WATCOM" +SectionEnd +!endif + +!ifndef PKG_NODJGPP +Section "Libs for DJGPP MS-DOS" hb_lib_djgpp + SetOutPath $INSTDIR\lib\dos\djgpp + File "hb20\lib\dos\djgpp\*.*" + SetOutPath $INSTDIR\comp\djgpp + File "hb20\comp\djgpp\HARBOUR_README_DJGPP" +SectionEnd +!endif + +Section /o "Dlls for x64" hb_dlls_x64 + SetOutPath $INSTDIR\bin + File "hb20\bin\harbour-20-x64.dll" + File "hb20\bin\harbourmt-20-x64.dll" +SectionEnd + +Section /o "Dlls for WinCE/ARM" hb_dlls_arm + SetOutPath $INSTDIR\bin + File "hb20\bin\harbour-20-wce-arm.dll" + File "hb20\bin\harbourmt-20-wce-arm.dll" +SectionEnd + +!ifdef _NEVER_ +!ifndef PKG_NOOS2 +Section /o "Dlls for OS/2" hb_dlls_os2 + SetOutPath $INSTDIR\bin + File "hb20\bin\harbour-20-os2.dll" + File "hb20\bin\harbourmt-20-os2.dll" +SectionEnd +!endif +!endif + +; The stuff to install +Section "Examples" hb_examples + SetOutPath $INSTDIR\examples + File /r "hb20\examples\*.*" + SetOutPath $INSTDIR\tests + File /r "hb20\tests\*.*" + SetOutPath $INSTDIR\contrib + File /r "hb20\contrib\*.*" +SectionEnd + +; Optional section (can be disabled by the user) +Section "Start Menu and Desktop icons" hb_shortcuts + + ; this will be the working dir for shortcuts + SetOutPath $INSTDIR + + CreateShortCut "$DESKTOP\Harbour Project 2.0.lnk" "$INSTDIR" "" "$INSTDIR" 0 + CreateDirectory "$SMPROGRAMS\Harbour Project 2.0" + CreateShortCut "$SMPROGRAMS\Harbour Project 2.0\Uninstall.lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0 + CreateShortCut "$SMPROGRAMS\Harbour Project 2.0\Harbour Project (Command line).lnk" "cmd.exe" "/k cd $INSTDIR\bin" "cmd.exe" 0 + CreateShortCut "$SMPROGRAMS\Harbour Project 2.0\Harbour Project.lnk" "$INSTDIR" "" "$INSTDIR" 0 + CreateShortCut "$SMPROGRAMS\Harbour Project 2.0\hbrun.lnk" "$INSTDIR\bin\hbrun.exe" "-v" "$INSTDIR\bin\hbrun.exe" 0 + CreateDirectory "$SMPROGRAMS\Harbour Project 2.0\Links" + WriteINIStr "$SMPROGRAMS\Harbour Project 2.0\Links\Homepage.url" "InternetShortcut" "URL" "http://www.harbour-project.org/" + WriteINIStr "$SMPROGRAMS\Harbour Project 2.0\Links\User Forums.url" "InternetShortcut" "URL" "http://sourceforge.net/apps/phpbb/harbour-project/" + WriteINIStr "$SMPROGRAMS\Harbour Project 2.0\Links\Sourceforge Page.url" "InternetShortcut" "URL" "http://sourceforge.net/projects/harbour-project/" + WriteINIStr "$SMPROGRAMS\Harbour Project 2.0\Links\Developers' Mail Archives.url" "InternetShortcut" "URL" "http://lists.harbour-project.org/pipermail/harbour/" + WriteINIStr "$SMPROGRAMS\Harbour Project 2.0\Links\Development Timeline.url" "InternetShortcut" "URL" "http://sourceforge.net/apps/trac/harbour-project/timeline" + +SectionEnd + +;-------------------------------- +; Descriptions + + ; Language strings + 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" + LangString DESC_hb_main_dll ${LANG_ENGLISH} "Harbour shared tools" + LangString DESC_hb_main_x64 ${LANG_ENGLISH} "Harbour shared x64 tools" + LangString DESC_hb_dlls_x64 ${LANG_ENGLISH} "Harbour dlls for x64" + LangString DESC_hb_dlls_arm ${LANG_ENGLISH} "Harbour dlls for WinCE/ARM" +!ifndef PKG_NOOS2 + LangString DESC_hb_dlls_os2 ${LANG_ENGLISH} "Harbour dlls for OS/2" +!endif + LangString DESC_hb_mingw ${LANG_ENGLISH} "MinGW compiler" +!ifdef PKG_FULL + LangString DESC_hb_mingw64 ${LANG_ENGLISH} "MinGW x64 compiler" + LangString DESC_hb_mingwarm ${LANG_ENGLISH} "MinGW WinCE/ARM compiler" +!endif + LangString DESC_hb_lib_mingw ${LANG_ENGLISH} "Harbour libs for MinGW" + LangString DESC_hb_lib_mingw64 ${LANG_ENGLISH} "Harbour libs for MinGW x64" + 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" + LangString DESC_hb_lib_bcc ${LANG_ENGLISH} "Harbour libs for Borland C" + LangString DESC_hb_lib_watcom ${LANG_ENGLISH} "Harbour libs for Open Watcom" +!ifdef PKG_ADDPOCC + LangString DESC_hb_lib_pocc ${LANG_ENGLISH} "Harbour libs for Pelles C" + LangString DESC_hb_lib_pocc64 ${LANG_ENGLISH} "Harbour libs for Pelles C x64" + LangString DESC_hb_lib_poccarm ${LANG_ENGLISH} "Harbour libs for Pelles C WinCE/ARM" +!endif +!ifndef PKG_NOLINUX + LangString DESC_hb_lib_linux ${LANG_ENGLISH} "Harbour libs for Open Watcom Linux" +!endif +!ifndef PKG_NOOS2 + LangString DESC_hb_lib_os2 ${LANG_ENGLISH} "Harbour libs for Open Watcom OS/2" +!endif +!ifndef PKG_NODJGPP + LangString DESC_hb_lib_djgpp ${LANG_ENGLISH} "Harbour libs for DJGPP MS-DOS" +!endif + + ; Assign language strings to sections + !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN + !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) + !insertmacro MUI_DESCRIPTION_TEXT ${hb_main_dll} $(DESC_hb_main_dll) + !insertmacro MUI_DESCRIPTION_TEXT ${hb_main_x64} $(DESC_hb_main_x64) + !insertmacro MUI_DESCRIPTION_TEXT ${hb_dlls_x64} $(DESC_hb_dlls_x64) + !insertmacro MUI_DESCRIPTION_TEXT ${hb_dlls_arm} $(DESC_hb_dlls_arm) + !insertmacro MUI_DESCRIPTION_TEXT ${hb_mingw} $(DESC_hb_mingw) +!ifdef PKG_FULL + !insertmacro MUI_DESCRIPTION_TEXT ${hb_mingw64} $(DESC_hb_mingw64) + !insertmacro MUI_DESCRIPTION_TEXT ${hb_mingwarm} $(DESC_hb_mingwarm) +!endif + !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_mingw} $(DESC_hb_lib_mingw) + !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_mingw64} $(DESC_hb_lib_mingw64) + !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_mingwarm} $(DESC_hb_lib_mingwarm) + !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_msvc} $(DESC_hb_lib_msvc) + !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_msvc64} $(DESC_hb_lib_msvc64) + !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_bcc} $(DESC_hb_lib_bcc) + !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_watcom} $(DESC_hb_lib_watcom) +!ifdef PKG_ADDPOCC + !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_pocc} $(DESC_hb_lib_pocc) + !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_pocc64} $(DESC_hb_lib_pocc64) + !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_poccarm} $(DESC_hb_lib_poccarm) +!endif +!ifndef PKG_NOLINUX + !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_linux} $(DESC_hb_lib_linux) +!endif +!ifndef PKG_NOOS2 + !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_os2} $(DESC_hb_lib_os2) +!endif +!ifndef PKG_NODJGPP + !insertmacro MUI_DESCRIPTION_TEXT ${hb_lib_djgpp} $(DESC_hb_lib_djgpp) +!endif + !insertmacro MUI_FUNCTION_DESCRIPTION_END + +;-------------------------------- +; Uninstaller + +Section "Uninstall" + + ; Remove files and uninstaller + RMDir /r $INSTDIR + + ; Remove directories used + Delete "$SMPROGRAMS\Harbour Project 2.0\Links\*.*" + RMDir "$SMPROGRAMS\Harbour Project 2.0\Links" + Delete "$SMPROGRAMS\Harbour Project 2.0\*.*" + RMDir "$SMPROGRAMS\Harbour Project 2.0" + RMDir "$INSTDIR" + + Delete "$DESKTOP\Harbour Project 2.0.lnk" + +SectionEnd diff --git a/harbour/package/winuni/mpkg_win_uni_extra_copy.bat b/harbour/package/winuni/mpkg_win_uni_extra_copy.bat new file mode 100644 index 0000000000..3acdad859d --- /dev/null +++ b/harbour/package/winuni/mpkg_win_uni_extra_copy.bat @@ -0,0 +1,23 @@ +@rem +@rem $Id$ +@rem + +@echo off + +@rem has to be run from contrib root. Adjust target dir. + +for /F %%a in ( 'dir /b /ad' ) do ( + echo %%a + xcopy /y /s %%a\*.hbc C:\hb\hb20\contrib\%%a\ + xcopy /y /s %%a\tests\*.* C:\hb\hb20\contrib\%%a\tests\ + xcopy /y /s %%a\utils\*.* C:\hb\hb20\contrib\%%a\utils\ +) + +for /F %%a in ( 'dir /b /ad rddsql' ) do ( + echo %%a + xcopy /y /s rddsql\%%a\*.hbc C:\hb\hb20\contrib\rddsql\%%a\ + xcopy /y /s rddsql\%%a\tests\*.* C:\hb\hb20\contrib\rddsql\%%a\tests\ +) + +rem xcopy /D /Y source\hbzlib\*.h %HB_INSTALL_PREFIX%\source\hbzlib\ +rem xcopy /D /Y source\hbpcre\*.h %HB_INSTALL_PREFIX%\source\hbpcre\