diff options
author | tschmelcher@google.com <tschmelcher@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-20 21:16:30 +0000 |
---|---|---|
committer | tschmelcher@google.com <tschmelcher@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-20 21:16:30 +0000 |
commit | 1649d0194959c4ac0ae9d862dd5815e0e2b298a3 (patch) | |
tree | 6b7393da5d89010dd2a57f568ea40b856d2ba02c /o3d | |
parent | 8ecad3a1d01d5e79b09cf12b454a97f3b9c2f578 (diff) | |
download | chromium_src-1649d0194959c4ac0ae9d862dd5815e0e2b298a3.zip chromium_src-1649d0194959c4ac0ae9d862dd5815e0e2b298a3.tar.gz chromium_src-1649d0194959c4ac0ae9d862dd5815e0e2b298a3.tar.bz2 |
Update deb package version to 0.1.40.0-1 and add some code to produce an error if it ever gets out of sync with the plugin version in the future. We can't really update the deb package version automatically because packages ship with a changelog that needs to be updated by a human to describe changes in each new release. Hence it will now be necessary to update the Debian changelog when bumping the plugin version.
Review URL: http://codereview.chromium.org/155728
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21105 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'o3d')
-rw-r--r-- | o3d/installer/linux/build.scons | 36 | ||||
-rw-r--r-- | o3d/installer/linux/debian_amd64/changelog | 10 |
2 files changed, 41 insertions, 5 deletions
diff --git a/o3d/installer/linux/build.scons b/o3d/installer/linux/build.scons index 2a0d609..c68c93e 100644 --- a/o3d/installer/linux/build.scons +++ b/o3d/installer/linux/build.scons @@ -43,7 +43,8 @@ if subprocess.Popen(["which", "dpkg-buildpackage"], process = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE) return process.communicate()[0].strip() - def BuildDebianPackage(debian_files, package_files, output_dir=None): + def BuildDebianPackage(debian_files, package_files, output_dir=None, + force_version=None): """Creates build rules to build a Debian package from the specified sources. Args: @@ -58,6 +59,11 @@ if subprocess.Popen(["which", "dpkg-buildpackage"], The second element is the file source. output_dir: An optional directory to place the files in. If omitted, the current output directory is used. + force_version: Optional. Forces the version of the package to start with + this version string if specified. If the last entry in the changelog + is not for a version that starts with this then a dummy entry is + generated with this version and a ~prerelease suffix (so that the + final version will compare as greater). Return: A list of the (two) targets. @@ -82,6 +88,14 @@ if subprocess.Popen(["which", "dpkg-buildpackage"], + changelog_file) arch = OutputFromShellCommand("awk '/^Architecture:/ { print $2; }' " + control_file) + add_dummy_changelog_entry = False + if force_version != None and not version.startswith(force_version): + print('Warning: no entry in ' + changelog_file + ' for version ' + + force_version + ' (last is ' + version +'). A dummy entry will be ' + + 'generated. Remember to add the real changelog entry before ' + + 'releasing.'); + version = force_version + '~prerelease' + add_dummy_changelog_entry = True package_file_name = package + "_" + version + "_" + arch # Path to the outputs, minus extension. if output_dir != None: @@ -105,18 +119,29 @@ if subprocess.Popen(["which", "dpkg-buildpackage"], for file in debian_files: copied_debian_files_paths.append(os.path.join(deb_build_tree, "debian", os.path.basename(file))) - env.Command(copied_debian_files_paths, debian_files, + copy_commands = [ """dir=$$(dirname $TARGET) && \ rm -Rf $$dir && \ mkdir -p $$dir && \ - cp $SOURCES $$dir""") + cp $SOURCES $$dir""" + ] + if add_dummy_changelog_entry: + copy_commands += [ + """debchange -c $$(dirname $TARGET)/changelog --newversion """ + + version + """ --distribution UNRELEASED """ + + """'Developer preview build.'""" + ] + env.Command(copied_debian_files_paths, debian_files, copy_commands) env.Depends(targets, copied_debian_files_paths) # TODO(tschmelcher): Change this to sign the package for Google builds once # we start putting out Linux releases. + # Must explicitly specify -a because otherwise cross-builds won't work. + # Must explicitly specify -D because -a disables it. + # Must explicitly specify fakeroot because old dpkg tools don't assume that. env.Command(targets, None, """dir=$OBJ_ROOT/installer/linux/""" + deb_build_tree + """ && \ cd $$dir && \ - dpkg-buildpackage -b -uc -aamd64 -D -rfakeroot && \ + dpkg-buildpackage -b -uc -a""" + arch + """ -D -rfakeroot && \ cd $$OLDPWD && \ mv $$dir/../""" + package_file_name + """.deb \ $$(dirname $TARGET) && \ @@ -139,7 +164,8 @@ if subprocess.Popen(["which", "dpkg-buildpackage"], ("libCg.so", '$ARTIFACTS_DIR/libCg.so'), ("libCgGL.so", '$ARTIFACTS_DIR/libCgGL.so') ], - output_dir='$ARTIFACTS_DIR') + output_dir='$ARTIFACTS_DIR', + force_version=env.get('O3D_PLUGIN_VERSION')) # TODO(tschmelcher): Also build an i386 deb. diff --git a/o3d/installer/linux/debian_amd64/changelog b/o3d/installer/linux/debian_amd64/changelog index f3babe6..47efedf 100644 --- a/o3d/installer/linux/debian_amd64/changelog +++ b/o3d/installer/linux/debian_amd64/changelog @@ -1,3 +1,13 @@ +google-o3d (0.1.40.0-1) UNRELEASED; urgency=low + + * Install the 32-bit plugin too to support users that have a 32-bit browser + installed on a 64-bit OS (e.g., Swiftfox). + * Conflicts/replaces Ubuntu community-provided o3d-plugin from + https://launchpad.net/~ubuntu-webtech/+archive/o3d-daily + * Other miscellaneous improvements. + + -- tschmelcher <tschmelcher@google.com> Fri, 17 Jul 2009 15:21:51 -0700 + google-o3d (0.1.39.0-1) UNRELEASED; urgency=low * Initial package. |