mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-22 22:43:03 +01:00
Sync recent windows installer changes for fb3 into trunk
This commit is contained in:
parent
e5fdfec4bf
commit
17192cdf66
@ -125,6 +125,10 @@ if %FBBUILD_ISX_PACK% EQU 1 (
|
||||
) else (@echo o Inno Setup found at %INNO5_SETUP_PATH%.)
|
||||
)
|
||||
|
||||
if not defined WIX (
|
||||
call :ERROR WIX not defined. WiX is needed to build the MSI kits of the CRT runtimes.
|
||||
@goto :EOF
|
||||
) else (@echo o WiX found at "%WIX%".)
|
||||
|
||||
if not DEFINED FB_EXTERNAL_DOCS (
|
||||
@echo.
|
||||
@ -199,8 +203,8 @@ set FBBUILD_FB_LAST_VER=%FBBUILD_FB25_CUR_VER%
|
||||
:: as well as set up the correct shortcuts
|
||||
set FBBUILD_FB15_CUR_VER=1.5.6
|
||||
set FBBUILD_FB20_CUR_VER=2.0.7
|
||||
set FBBUILD_FB21_CUR_VER=2.1.5
|
||||
set FBBUILD_FB25_CUR_VER=2.5.2
|
||||
set FBBUILD_FB21_CUR_VER=2.1.7
|
||||
set FBBUILD_FB25_CUR_VER=2.5.5
|
||||
|
||||
:: Now fix up the major.minor version strings in the readme files.
|
||||
:: We place output in %FB_GEN_DIR%\readmes
|
||||
@ -240,7 +244,7 @@ del %temp%.\b$?.txt
|
||||
@echo Copying MSVC runtime libraries...
|
||||
if not exist %FB_OUTPUT_DIR%\system32 (mkdir %FB_OUTPUT_DIR%\system32)
|
||||
@echo on
|
||||
for %%f in ( msvcp%MSVC_VERSION%?.dll msvcr%MSVC_VERSION%?.dll ) do (
|
||||
@for %%f in ( msvcp%MSVC_VERSION%?.dll msvcr%MSVC_VERSION%?.dll ) do (
|
||||
if exist "%VCINSTALLDIR%\redist\%PROCESSOR_ARCHITECTURE%\Microsoft.VC%MSVC_VERSION%0.CRT\%%f" (
|
||||
copy "%VCINSTALLDIR%\redist\%PROCESSOR_ARCHITECTURE%\Microsoft.VC%MSVC_VERSION%0.CRT\%%f" %FB_OUTPUT_DIR%\
|
||||
)
|
||||
@ -357,7 +361,7 @@ for %%v in (IPLicense.txt IDPLicense.txt ) do (
|
||||
@copy %FB_GEN_DIR%\readmes\readme.txt %FB_OUTPUT_DIR%\ > nul
|
||||
|
||||
:: Walk through all docs and transform any that are not .txt, .pdf or .html to .txt
|
||||
echo Setting .txt filetype to ascii docs.
|
||||
@echo Setting .txt filetype to ascii docs.
|
||||
for /R %FB_OUTPUT_DIR%\doc %%v in (.) do (
|
||||
pushd %%v
|
||||
for /F %%W in ( 'dir /B /A-D' ) do (
|
||||
@ -385,18 +389,18 @@ for /R %FB_OUTPUT_DIR%\doc %%v in (.) do (
|
||||
|
||||
:BUILD_CRT_MSI
|
||||
:: Generate runtimes as an MSI file.
|
||||
:: This requires WiX 2.0 to be installed
|
||||
:: This requires WiX 3.0 to be installed
|
||||
::============
|
||||
:: This is only relevent if we are shipping packages built with MSVS 2005 (MSVC8)
|
||||
:: We have never shipped packages with MSVS 2008 (MSVC9) and we are hoping not
|
||||
:: to deploy MSI runtimes if we build with MSVC 2010 (MVC10)
|
||||
if %MSVC_VERSION% EQU 8 (
|
||||
:: This is only relevent if we are shipping packages built with Visual Studio 2010 (MSVC10)
|
||||
:: for Firebird 3.0 there are no plans to ship oficial builds with other MSVC runtimes. But we could.
|
||||
if %MSVC_VERSION% EQU 10 (
|
||||
if not exist %FB_OUTPUT_DIR%\system32\vccrt%MSVC_VERSION%_%FB_TARGET_PLATFORM%.msi (
|
||||
%WIX%\candle.exe -v0 %FB_ROOT_PATH%\builds\win32\msvc%MSVC_VERSION%\VCCRT_%FB_TARGET_PLATFORM%.wxs -out %FB_GEN_DIR%\vccrt_%FB_TARGET_PLATFORM%.wixobj
|
||||
%WIX%\light.exe %FB_GEN_DIR%\vccrt_%FB_TARGET_PLATFORM%.wixobj -out %FB_OUTPUT_DIR%\system32\vccrt%MSVC_VERSION%_%FB_TARGET_PLATFORM%.msi
|
||||
"%WIX%\bin\candle.exe" -v -sw1091 %FB_ROOT_PATH%\builds\win32\msvc%MSVC_VERSION%\VCCRT_%FB_TARGET_PLATFORM%.wxs -out %FB_GEN_DIR%\vccrt_%FB_TARGET_PLATFORM%.wixobj
|
||||
"%WIX%\bin\light.exe" -sw1076 %FB_GEN_DIR%\vccrt_%FB_TARGET_PLATFORM%.wixobj -out %FB_OUTPUT_DIR%\system32\vccrt%MSVC_VERSION%_%FB_TARGET_PLATFORM%.msi
|
||||
) else (
|
||||
@echo Using an existing build of %FB_OUTPUT_DIR%\system32\vccrt%MSVC_VERSION%_%FB_TARGET_PLATFORM%.msi
|
||||
))
|
||||
)
|
||||
)
|
||||
|
||||
::End of BUILD_CRT_MSI
|
||||
::--------------------
|
||||
@ -484,16 +488,6 @@ copy %FB_ROOT_PATH%\builds\install\misc\databases.conf.in %FB_OUTPUT_DIR%\databa
|
||||
@goto :EOF
|
||||
|
||||
|
||||
::TOUCH_LOCAL
|
||||
::==========
|
||||
:: Note 1: This doesn't seem to make any difference to whether local libraries are used.
|
||||
:: Note 2: MS documentation was incorrectly interpreted. .local files should not be created
|
||||
:: for libraries, they should be created for executables.
|
||||
:: Create libname.local files for each locally installed library
|
||||
::for %%v in ( fbclient msvcrt msvcp%VS_VER%0 ) do touch %FB_OUTPUT_DIR%\%%v.local
|
||||
::@goto :EOF
|
||||
|
||||
|
||||
:GEN_ZIP
|
||||
::======
|
||||
if %FBBUILD_ZIP_PACK% EQU 0 goto :EOF
|
||||
@ -660,6 +654,9 @@ if NOT DEFINED GNU_TOOLCHAIN (
|
||||
@echo o sed is required for packaging. Use the sed provided by
|
||||
@echo gnuwin32. The cygwin one is not guaranteed to work.
|
||||
@echo.
|
||||
@echo o WiX v3.0 is required to build installable msi packages of the
|
||||
@echo MS runtime libraries.
|
||||
@echo.
|
||||
|
||||
::End of HELP
|
||||
::-----------
|
||||
|
@ -42,8 +42,11 @@
|
||||
function CopyFbClientLib: boolean;
|
||||
function ShowCopyFbClientLibTask: boolean;
|
||||
|
||||
function SummarizeInstalledProducts: String;
|
||||
function AnalysisAssessment: boolean;
|
||||
function SummarizeInstalledProducts: String;
|
||||
function AnalysisAssessment: boolean;
|
||||
|
||||
function HasWI30: boolean;
|
||||
function HasNotWI30: boolean;
|
||||
|
||||
*)
|
||||
|
||||
@ -1189,3 +1192,24 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
function HasWI30: boolean;
|
||||
//We need at least Windows Installer 3.0 available if we
|
||||
//are installing the msi bundles for the VC10 CRT libraries.
|
||||
var
|
||||
VersionStr: String;
|
||||
VerInt: array of Integer;
|
||||
begin
|
||||
Result := False;
|
||||
VersionStr := WIVersion;
|
||||
DecodeVersion(VersionStr, VerInt);
|
||||
if (VerInt[0] >= 3) then
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
|
||||
function HasNotWI30: boolean;
|
||||
//Used to check if O/S does NOT have minimum version of Windows Installer
|
||||
begin
|
||||
result := NOT HasWI30;
|
||||
end;
|
||||
|
||||
|
@ -46,6 +46,7 @@ Function Prototypes
|
||||
function CheckWinsock2(): Boolean;
|
||||
function GetAppPath: String;
|
||||
function GetSysPath: String;
|
||||
function WIVersion: string;
|
||||
function ReplaceLine(Filename, StringToFind, NewLine,CommentType: string): boolean;
|
||||
procedure DecodeVersion( VerStr: String; var VerInt: array of Integer );
|
||||
function CompareVersion( ver1, ver2: String ) : Integer;
|
||||
@ -290,6 +291,16 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
function WIVersion: string;
|
||||
//Get version of Windows Installer
|
||||
var
|
||||
VersionStr: string;
|
||||
begin
|
||||
GetVersionNumbersString(GetSysPath + '\msi.dll', VersionStr);
|
||||
result := VersionStr;
|
||||
end;
|
||||
|
||||
|
||||
(*Based on InnoSetup KB example at http://www13.brinkster.com/vincenzog/isxart.asp?idart=14)*)
|
||||
function ReplaceLine(Filename, StringToFind, NewLine,CommentType: string): boolean;
|
||||
var
|
||||
|
@ -392,6 +392,13 @@ Name: EnableLegacyClientAuth; Description: {cm:EnableLegacyClientAuth}; Componen
|
||||
|
||||
|
||||
[Run]
|
||||
#if msvc_version == 10
|
||||
Filename: msiexec.exe; Parameters: "/qn /i ""{tmp}\vccrt{#msvc_version}_Win32.msi"" /L*v ""{tmp}\vccrt{#msvc_version}_Win32.log"" "; StatusMsg: "Installing MSVC 32-bit runtime libraries to system directory"; Check: HasWI30; Components: ClientComponent;
|
||||
#if PlatformTarget == "x64"
|
||||
Filename: msiexec.exe; Parameters: "/qn /i ""{tmp}\vccrt{#msvc_version}_x64.msi"" /L*v ""{tmp}\vccrt{#msvc_version}_x64.log"" "; StatusMsg: "Installing MSVC 64-bit runtime libraries to system directory"; Check: HasWI30; Components: ClientComponent;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
;Only register Firebird if we are installing AND configuring
|
||||
Filename: {app}\instreg.exe; Parameters: "install "; StatusMsg: {cm:instreg}; MinVersion: 4.0,4.0; Components: ClientComponent; Flags: runminimized; Check: ConfigureFirebird;
|
||||
|
||||
@ -517,6 +524,17 @@ Source: {#WOW64Dir}\msvcp{#msvc_version}?.dll; DestDir: {app}\WOW64; Components:
|
||||
#endif
|
||||
#endif /* if msvc_version >= 10 */
|
||||
|
||||
#if msvc_version == 10
|
||||
;Try to install CRT libraries to <sys> via msi, _IF_ msvc_version is 10.
|
||||
#if PlatformTarget == "x64"
|
||||
;MinVersion 0,5.0 means no version of Win9x and at least Win2k if NT O/S
|
||||
;In addition, O/S must have Windows Installer 3.0.
|
||||
Source: {#FilesDir}\system32\vccrt10_x64.msi; DestDir: {tmp}; Check: HasWI30; MinVersion: 0,5.0; Components: ClientComponent;
|
||||
Source: {#WOW64Dir}\system32\vccrt10_Win32.msi; DestDir: {tmp}; Check: HasWI30; MinVersion: 0,5.0; Components: ClientComponent;
|
||||
#else
|
||||
Source: {#FilesDir}\system32\vccrt10_Win32.msi; DestDir: {tmp}; Check: HasWI30; MinVersion: 0,5.0; Components: ClientComponent;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
;Docs
|
||||
Source: {#ScriptsDir}\installation_scripted.txt; DestDir: {app}\doc; Components: DevAdminComponent; Flags: skipifsourcedoesntexist ignoreversion
|
||||
|
@ -19,7 +19,6 @@ Sadrzaj
|
||||
--------
|
||||
|
||||
o Prije instalacije
|
||||
o Instalacija MS VC runtime biblioteka
|
||||
o Deployment gds32.dll
|
||||
o Instalacija Guardian-a
|
||||
o Re-instalacija Firebird-a 3
|
||||
@ -42,15 +41,6 @@ firebird-a 3, instalacija ce preimenovati firebid.conf i
|
||||
security3.fdb jer ove datoteke vise nisu kompatibilne.
|
||||
|
||||
|
||||
Instalacija MS VC runtime biblioteka
|
||||
---------------------------------------
|
||||
|
||||
Firebird 3 vise ne zahtjeva deploy MSVC runtime-a
|
||||
u windows system direktorije, pa se vise ne radi deploy
|
||||
redistributable run-time paketa. Firebird 3.0 ucitava runtime
|
||||
biblioteke iz direktorija gdje je instaliran.
|
||||
|
||||
|
||||
Deployment gds32.dll
|
||||
-----------------------
|
||||
|
||||
|
@ -25,7 +25,6 @@ Contenu
|
||||
--------
|
||||
|
||||
o Avant l'installation
|
||||
o Installation des bibliothèques MS VC runtime
|
||||
o Déployement de gds32.dll
|
||||
o Installation du Guardian
|
||||
o Réinstallation de Firebird 3
|
||||
@ -48,15 +47,6 @@ l'installeur va renommer firebird.conf et security3.fdb, car ces
|
||||
fichiers ne sont plus compatibles avec la version actuelle.
|
||||
|
||||
|
||||
Installation des bibliothèques MS VC runtime
|
||||
-------------------------------------------------------------
|
||||
|
||||
|
||||
Firebird 3 n'a plus besoin de déployer les runtimes MSVC dans les
|
||||
répertoires système de windows. Frebird 3 charge ces bibliothèques depuis
|
||||
son répertoire d'installation.
|
||||
|
||||
|
||||
Déployement de gds32.dll
|
||||
------------------------
|
||||
|
||||
@ -140,7 +130,7 @@ o La désinstallation laisse cinq fichiers dans le
|
||||
- firebird.conf
|
||||
- fbtrace.conf
|
||||
- firebird.log
|
||||
- security2.fdb
|
||||
- security3.fdb
|
||||
|
||||
Ceci est intentionnel. Ces fichiers sont tous
|
||||
potentiellement modifiables par les utilisateurs et peuvent
|
||||
|
@ -19,7 +19,6 @@ Contents
|
||||
--------
|
||||
|
||||
o Before installation
|
||||
o Installation of MS VC runtime libraries
|
||||
o Deployment of gds32.dll
|
||||
o Installation of the Guardian
|
||||
o Re-installation of Firebird $MAJOR.$MINOR
|
||||
@ -42,15 +41,6 @@ the installer will rename firebird.conf and security3.fdb as
|
||||
these files are no longer compatible.
|
||||
|
||||
|
||||
Installation of MS VC runtime libraries
|
||||
---------------------------------------
|
||||
|
||||
Firebird $MAJOR.$MINOR no longer needs to deploy the MSVC runtimes
|
||||
into the windows system directories so no redistributable
|
||||
run-time package is deployed. Firebird $MAJOR.$MINOR loads the runtime
|
||||
libraries from the root installation directory.
|
||||
|
||||
|
||||
Deployment of gds32.dll
|
||||
-----------------------
|
||||
|
||||
|
@ -19,7 +19,6 @@
|
||||
----------
|
||||
|
||||
o Перед установкой
|
||||
o Установка библиотек MS VC runtime
|
||||
o Установка gds32.dll
|
||||
o Установка Firebird Guardian
|
||||
o Повторная установка Firebird $MAJOR.$MINOR
|
||||
@ -41,14 +40,6 @@ o Установка из пакетного (bat) файла
|
||||
из-за их несовместимости с устанавливаемой версией.
|
||||
|
||||
|
||||
Установка библиотек MS VC runtime
|
||||
---------------------------------
|
||||
|
||||
Firebird $MAJOR.$MINOR более не требует размещения библиотек MS VC
|
||||
runtime в системных папках Windows. Firebird $MAJOR.$MINOR загружает
|
||||
библиотеки из корневой папки установки.
|
||||
|
||||
|
||||
Установка gds32.dll
|
||||
-------------------
|
||||
|
||||
|
43
builds/win32/msvc10/VCCRT_Shared_Body.wxi
Normal file
43
builds/win32/msvc10/VCCRT_Shared_Body.wxi
Normal file
@ -0,0 +1,43 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><Include xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||
|
||||
<Product Id="$(var.PRODUCT_ID)"
|
||||
Name="MSI to redistribute MS VS2010 CRT libraries"
|
||||
Language="1033"
|
||||
Version="$(var.MS_CRT_VER)"
|
||||
Manufacturer="$(var.MANUFACTURER)"
|
||||
UpgradeCode="$(var.UPGRADE_CODE)"
|
||||
>
|
||||
|
||||
<Package Id="$(var.PACKAGE_ID)"
|
||||
Description="$(var.DESCRIPTION)"
|
||||
Comments="$(var.COMMENTS)"
|
||||
Manufacturer="$(var.MANUFACTURER)"
|
||||
InstallerVersion="300"
|
||||
Compressed="yes"
|
||||
Platform="$(var.CPUArch)"
|
||||
/>
|
||||
|
||||
<Media Id="1" Cabinet="VCCRT.cab" EmbedCab="yes"
|
||||
/>
|
||||
|
||||
<Directory Id="TARGETDIR" Name="SourceDir">
|
||||
<!-- <Merge Id="CRT" Language="0" SourceFile="$(var.MMDIR)\$(var.MSM)" DiskId="1" ProcessorArchitecture="$(var.CPUArch)" /> -->
|
||||
<Merge Id="CRT" Language="0" SourceFile="$(var.MMDIR)\$(var.MSM)" DiskId="1" />
|
||||
</Directory>
|
||||
|
||||
<Feature Id="CRT_WinSXS" Title="CRT WinSXS" Level="1">
|
||||
<MergeRef Id="CRT" />
|
||||
</Feature>
|
||||
|
||||
<InstallExecuteSequence>
|
||||
<RemoveRegistryValues />
|
||||
<RemoveFiles />
|
||||
<InstallFiles />
|
||||
<WriteRegistryValues />
|
||||
</InstallExecuteSequence>
|
||||
|
||||
</Product>
|
||||
|
||||
</Include>
|
||||
|
||||
|
17
builds/win32/msvc10/VCCRT_Shared_Header.wxi
Normal file
17
builds/win32/msvc10/VCCRT_Shared_Header.wxi
Normal file
@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Include xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||
|
||||
<!-- This is bad - we really should not be hard coding this
|
||||
version string, but for now it will have to do. .-->
|
||||
<?define MS_CRT_VER = "10.0.30319.1" ?>
|
||||
|
||||
<?define DESCRIPTION = "MSI to redistribute VS2010 CRT libraries" ?>
|
||||
|
||||
<?define COMMENTS = "This MSI specially created for Firebird." ?>
|
||||
|
||||
<?define MMDIR = "C:\Program Files (x86)\Common Files\Merge Modules" ?>
|
||||
|
||||
<?define MANUFACTURER = "The Firebird Project" ?>
|
||||
|
||||
</Include>
|
14
builds/win32/msvc10/VCCRT_Win32.wxi
Normal file
14
builds/win32/msvc10/VCCRT_Win32.wxi
Normal file
@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><Include xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||
<?define PRODUCT_ID=3EE48F79-0D53-4FE3-B611-280D1EB6873A ?>
|
||||
|
||||
<?define PACKAGE_ID=D97457E5-DA65-48B7-9B6F-56B4B4ED34C6 ?>
|
||||
|
||||
<?define UPGRADE_CODE=15373B00-49EF-4122-A7E1-6EF59F9594F9 ?>
|
||||
|
||||
<?define MSM="microsoft_vc100_crt_x86.msm" ?>
|
||||
|
||||
<?define CPUArch="x86" ?>
|
||||
|
||||
|
||||
|
||||
</Include>
|
12
builds/win32/msvc10/VCCRT_Win32.wxs
Normal file
12
builds/win32/msvc10/VCCRT_Win32.wxs
Normal file
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<?include $(sys.SOURCEFILEDIR)\VCCRT_Shared_Header.wxi ?>
|
||||
<?include $(sys.SOURCEFILEDIR)\VCCRT_Win32.wxi ?>
|
||||
|
||||
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||
|
||||
<?include $(sys.SOURCEFILEDIR)\VCCRT_Shared_Body.wxi ?>
|
||||
|
||||
</Wix>
|
||||
|
||||
|
15
builds/win32/msvc10/VCCRT_x64.wxi
Normal file
15
builds/win32/msvc10/VCCRT_x64.wxi
Normal file
@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Include xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||
<?define PRODUCT_ID=D9D020C0-B53E-4A40-B2FA-35D47966601B ?>
|
||||
|
||||
<?define PACKAGE_ID=C9EF87F4-E3EE-47AB-BCE1-2CFFDF7AEA54 ?>
|
||||
|
||||
<?define UPGRADE_CODE=522E3661-6F13-45E9-AE77-9278F52B34FA ?>
|
||||
|
||||
<?define MSM="microsoft_vc100_crt_x64.msm" ?>
|
||||
|
||||
<?define CPUArch="x64" ?>
|
||||
|
||||
</Include>
|
||||
|
||||
|
12
builds/win32/msvc10/VCCRT_x64.wxs
Normal file
12
builds/win32/msvc10/VCCRT_x64.wxs
Normal file
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<?include $(sys.SOURCEFILEDIR)\VCCRT_Shared_Header.wxi ?>
|
||||
<?include $(sys.SOURCEFILEDIR)\VCCRT_x64.wxi ?>
|
||||
|
||||
|
||||
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
|
||||
|
||||
<?include $(sys.SOURCEFILEDIR)\VCCRT_Shared_Body.wxi ?>
|
||||
|
||||
</Wix>
|
||||
|
Loading…
Reference in New Issue
Block a user