contrib/wix/locale.wxs
author Patrick Mezard <patrick@mezard.eu>
Wed, 18 Apr 2012 14:04:58 +0200
branchstable
changeset 16466 c53a49c345e1
parent 13042 bd9bc4123920
child 32456 14e8fef9158d
permissions -rw-r--r--
convert/svn: do not try converting empty head revisions (issue3347) Subversion conversion works by picking trunk and branches heads, computing a revision graph from them and converting the selected commits. By design we fail to convert empty revisions so we have to be careful when discovering the revision graph. In this particular issue, the source svn repository was a partial mirror made by svnsync. The funny part is svnsync preserves all revisions including empty ones. Also, we trusted ra.stat(path, stop).created_rev to give us the latest revision with changes in path history up to stop. This assumption broke at least when path is '', that is the repository root, which always returned 'stop' revision despited being empty. The workaround is to first trust ra.stat() but if the returned revision appear empty, search the whole path history from stop to r1 until some changes are found.

<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">

  <?include defines.wxi ?>

  <?define hglocales =
    da;de;el;fr;it;ja;pt_BR;sv;zh_CN;zh_TW
  ?>

  <Fragment>
    <ComponentGroup Id="localeFolder">
      <?foreach LOC in $(var.hglocales) ?>
        <ComponentRef Id="hg.locale.$(var.LOC)"/>
      <?endforeach?>
    </ComponentGroup>
  </Fragment>

  <Fragment>
    <DirectoryRef Id="INSTALLDIR">
      <Directory Id="localedir" Name="locale" FileSource="$(var.SourceDir)">
        <?foreach LOC in $(var.hglocales) ?>
          <Directory Id="hg.locale.$(var.LOC)" Name="$(var.LOC)">
            <Directory Id="hg.locale.$(var.LOC).LC_MESSAGES" Name="LC_MESSAGES">
              <Component Id="hg.locale.$(var.LOC)" Guid="*" Win64='$(var.IsX64)'>
                <File Id="hg.mo.$(var.LOC)" Name="hg.mo" KeyPath="yes" />
              </Component>
            </Directory>
          </Directory>
        <?endforeach?>
      </Directory>
    </DirectoryRef>
  </Fragment>

</Wix>