Difference between revisions of "Release Process/Win"

From Audacity Wiki
Jump to: navigation, search
m (Build the Installer)
m ("e-mail" => "email")
Line 2: Line 2:
  
  
{{Introrel|1=This page provides an overview of how to build Audacity(R) Releases for Microsoft Windows(R).|2=If the advice here is inaccurate or incomplete, please e-mail audacity-devel_AT_lists_DOT_sourceforge_DOT_net.|3=[[Developing On Windows]]
+
{{Introrel|1=This page provides an overview of how to build Audacity(R) Releases for Microsoft Windows(R).|2=If the advice here is inaccurate or incomplete, please email audacity-devel_AT_lists_DOT_sourceforge_DOT_net.|3=[[Developing On Windows]]
 
* [[Release Process]]  
 
* [[Release Process]]  
 
* [[Editing audacity.sourceforge.net]]
 
* [[Editing audacity.sourceforge.net]]

Revision as of 17:30, 28 October 2014



This page provides an overview of how to build Audacity(R) Releases for Microsoft Windows(R).
If the advice here is inaccurate or incomplete, please email audacity-devel_AT_lists_DOT_sourceforge_DOT_net.
 
Related article(s):

Build the Release Executable

  1. Check that your built version of wxWidgets is correct per compile.txt and includes our modified setup.h that switches on accessibility features (step 2.2 of compile.txt).
  2. Check #define IS_ALPHA. Must be 0 for releases.
  3. Make sure you have current source code from our source code repository.
  4. Make sure you have the DirectSound SDK installed (step 5.4.1 of compile.txt).
  5. Turn off ASIO support (step 5.4.2 in compile.txt). We cannot publicly post a build that supports ASIO, for licensing reasons (detailed there).
  6. Make sure the build configuration is set to Release.
  7. Do a full *rebuild*, including the 'locale' project (off by default).


  • For the "locale" project, you will need msgfmt.exe in your PATH. Get it from http://audacity.sourceforge.net/files/msgfmt.zip.
  • It's possibly safer to not only do Build > Clean Solution beforehand, but to also delete the directory (e.g., audacity-src\win\unicode_release) -- all except the five wxWidgets DLL'S, per compile.txt step 7, or you will have to copy them back in. Safest of all is a fresh checkout.

Copy Other Necessities to Release Build Folder

  1. We are still keeping some of the LADSPA plug-ins in the Audacity installer, even though we are now offering a separate installer that includes all the LADSPA plug-ins built from version 0.4.15. We include hard_limiter_1413.dll and sc4_1882.dll. (We no longer include gverb_1216.dll.) So:
    1. Check http://plugin.org.uk/ for updates. As of 2012-08-09, these have not been updated for three years. Development has moved to LV2, so updates are not likely here.
      1. If none, just grab the dlls from a previous release.
      2. If updated, build these via the audacity-src\win\LADSPA_plugins-win project (see audacity-src\win\LADSPA_plugins-win\readme_LADSPA_plugins-win.txt).
    2. Once you have these DLL files, put them in the plug-ins folder, e.g., audacity-src\win\unicode_release\plug-ins.
  2. Make sure you copied to the build folder the appropriate wxWidgets DLLs per "Provide access to the wxWidgets DLLs" at "MSVC++ STEP 7: Build Audacity" in compile.txt.
  3. Adding wxstd.mo files to the "Languages" folder in the Audacity build directory is now automated. This next steps need automating as well:
    1. Go to the newly added "gl_ES" and "zh_CN" folders in turn and copy the "wxstd.mo" files from each into the "gl" and zh" folders, respectively.
    2. Delete the "gl_ES" and "zh_CN" folders.

Manual

You need to include the manual into the tree. The appropriate one should be available at the code repository folder for this release, as a result of Create Local Manual and Release Process. If you are rolling your own, take a look at Create Local Manual.

You need to unzip the 'manual' folder from the version on http://code.google.com/p/audacity to audacity-src\help\ by first browsing into the help folder of the zip.

You should end up with a working audacity-src\help\manual\ for the installer script to find.

Build the Installer

  1. Install the latest Unicode Inno Setup (http://www.jrsoftware.org/isinfo.php).
  2. Open the Inno Setup script:
    • audacity-src\win\audacity.iss
  3. Change the version strings as necessary. Typically need to change, e.g., 2.0.1 to 2.0.2, with:
    • OutputBaseFilename=audacity-win-2.0.2
    • AppVerName=Audacity 2.0.2
    • AppVersion=2.0.2
  4. Save and commit the changes.
  5. Consider people who install over an existing release. Could there be files / directories left that we no longer ship (plugins etc.)? If there are:
    • Add those files / directories to the [InstallDelete] section of the iss file.
  6. Compile and test the installer.
    • Delete any existing folder that you intend to install to (per previous iteration of next step).
    • Install to 'Audacity', or as agreed for other versions (you may be offered something else, depending on your previous installation status) (this is important when it comes to making the zip).
    • The result appears in audacity-src\win\Output.
  7. Check the inbuilt manual to make sure that the 'look' is pretty similar to the previous version. Some changes to style sheets may 'break' the mw2html.py script and cause it to leave in / miss out some vital bits.
  8. Try installing over a couple of previous versions and make sure that the file structure is the same as a clean install.
  9. Rename it as a release candidate, e.g., "audacity-win-2.0.1rc1.exe" for "release candidate 1".

Create the .zip File

  1. Go to to the installed version, e.g., C:\Program Files\Audacity.
  2. Remove the unins*.* files and the "help" folder.
  3. Zip the folder and rename it, e.g., "audacity-win-2.0.1rc1.zip".

Testing

  1. Put the release candidate files on code repository folder for this release, for open testing. Mark any previous rc as 'Deprecated'. Tell RM, so that when all platforms are ready, the release cycle for this rc can be announced.
    • Ask people to test the installer in both a fresh directory and over the top of previous recent and older versions.
    • Ask people to test both cases on several Win OSes, like XP and 7.
  2. If changes are necessary, name successive candidates rcN and deprecate the previous version.
  3. When the final rcN is approved, remove the rcN suffix from the name on the exe and zip files. Those are then the release installer and zip.