wiki:AdminInstallerWin

Version 9 (modified by davea, 8 years ago) (diff)

--

Building a Windows installer for the BOINC client

On the build machine:

Build solution (Release/debug, 32/64 bit)

Make sure you have current dependent libraries.

Set up boinc_codesign directory (peer of boinc/): copy boinc.pfx and android_keystore (get these files from davea or Rom)

Copy customdict.txt and customenv.cmd to boinc_depends_xxx/developr/David (or whatever your username is). Edit customdict.txt to point to where boinc_codesign dir is, e.g. BUILDCODESIGN=C:\users\David\documents\boinc_git\boinc_codesign

(don't use spaces in path).

Run Visual Studio shell: in start menu, Microsoft Visual Studio 2010 / Visual Studio Tools/ Visual Studio Command Prompt

  • on shell command line:
    cd "c:/users/David/documents/boinc git/boinc/win_build/"
    buildenv.cmd type release platform x64
    [ screen turns blue to indicate release mode ]
    codesign
    updatesymstore
    
    buildenv.cmd type release platform x86
    codesign
    updatesymstore
    
    deploysymstore (enter boincadm password)(stores are on isaac in boinc/doc/symstore)
    

(updatesymstore and deploysymstore are scripts in depends directory)

Make sure you the latest VirtualBox and Extension Pack.

Run the Installshield VM (BOINC WIndows Installer.vbox)

In the VM:

  • Start / My computer / Z: (takes you to c: drive of host)
  • go to c:/users/David/documents/boinc_git/boinc/win_build/installerv2
  • open BOINC_x64 (for 64 bit) or BOINC.ism
  • in Installation Designer tab:
    • click on General Information
    • Product version: set
    • Product code: get new one (at right)
    • don't change Upgrade Code!
  • select Media / Releases in navbar:
    • select Releases/Webx64 in dir tree
    • change Setup File Name
    • File / Save
    • Build / batch build
    • check box next to Webx64, click Build
    • Same for BOINC_vbox.ism, etc.
  • installers end up on host in boinc/win_build/installerv2/BOINCx64/WEBx64/Web/DiskImages/DISK1/boincxxx.exe

(that's the file you copy to boinc/doc/dl on isaac)

Updating VirtualBox in InstallShield

The version of vbox in the installer is the one in the installer VM. To update this:

  • On the host, download the version you want from the vbox site (this includes 32 and 64 bit).
  • Extract the various components from the VirtualBox installer via:
    VirtualBox-4.3.20-96996-Win.exe --extract --path c:\temp\virtualbox43
    

(change 4.3.20-96996 and 43 based on the version you downloaded). This produces:

VirtualBox-xxx-amd64.msi

VirtualBox-xxx.x86.msi

Common.cab

In the VM:

Go to c:/program files/InstallShield/2011/SetUpPrerequisites

Copy the above 3 files into this dir; delete older versions of them first.

Rename Oracle VM VirtualBox xxx (x64).prq to new version; same for x86

Run Installshield: Start/All? Programs/Installshield/Installshield? 2011

Tools/Prerequisite? Editor

File/Open? (open the Oracle VM .prq file)

Remove the 2 existing files; add the new ones.

select Conditions tab double click on HKEY_LOCAL.... change version number there

select Application to Run tab update the filename to the new .msi file

select Properties tab Change description to new version #

Open boinc_vbox_x64.ism In Installshield, select Application Data / Redistributables In list of files, check boxes for new .prq file (32 or 64 as appropriate).