annotate recipes/kde_enterprise_4/kdepim.py @ 274:2676abfc0e1d

Refactoring: Implement do_package in treepkg.packager.SourcePackager. The actual implementation in the derived classes is almost identical in all cases so it's better to have as much of the implementation in the base class. The update_version_numbers method is not called directly by the base class code so is removed from the base class. OTOH, prepare_sources_for_tarball has been added as a more general variant of update_version_numbers that is actually called by the default implementation of do_package.
author Bernhard Herzog <bh@intevation.de>
date Thu, 07 May 2009 15:19:15 +0000
parents 024b309c0520
children
rev   line source
221
024b309c0520 Use the recipes.kde_enterprise_4.base module to define the kdepim packager
Bernhard Herzog <bh@intevation.de>
parents: 214
diff changeset
1 # Copyright (C) 2007, 2008, 2009 by Intevation GmbH
204
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
2 # Authors:
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
3 # Bernhard Herzog <bh@intevation.de>
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
4 #
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
5 # This program is free software under the GPL (>=v2)
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
6 # Read the file COPYING coming with the software for details.
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
7
221
024b309c0520 Use the recipes.kde_enterprise_4.base module to define the kdepim packager
Bernhard Herzog <bh@intevation.de>
parents: 214
diff changeset
8 """Build kdepim debian packages from the kdepim/enterprise4 branch.
204
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
9 """
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
10
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
11 import os
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
12
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
13 import treepkg.util
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
14
221
024b309c0520 Use the recipes.kde_enterprise_4.base module to define the kdepim packager
Bernhard Herzog <bh@intevation.de>
parents: 214
diff changeset
15 import base
204
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
16
221
024b309c0520 Use the recipes.kde_enterprise_4.base module to define the kdepim packager
Bernhard Herzog <bh@intevation.de>
parents: 214
diff changeset
17 class SourcePackager(base.BaseSourcePackager):
204
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
18
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
19 pkg_basename = "kdepim"
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
20
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
21 def update_version_numbers(self, pkgbasedir):
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
22 """Overrides the inherited method to update version numbers in the code
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
23 """
214
4307e25d2afe Activate version number patching for KDEPIM enterprise4 packages.
Bernhard Herzog <bh@intevation.de>
parents: 204
diff changeset
24 versionstring = "(enterprise4 %s)" % self.enterprise_version
204
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
25 failed = []
214
4307e25d2afe Activate version number patching for KDEPIM enterprise4 packages.
Bernhard Herzog <bh@intevation.de>
parents: 204
diff changeset
26 for versionfile in ["kaddressbook/kabcore.cpp",
4307e25d2afe Activate version number patching for KDEPIM enterprise4 packages.
Bernhard Herzog <bh@intevation.de>
parents: 204
diff changeset
27 "kmail/kmversion.h",
4307e25d2afe Activate version number patching for KDEPIM enterprise4 packages.
Bernhard Herzog <bh@intevation.de>
parents: 204
diff changeset
28 "kontact/src/main.cpp",
204
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
29 "korganizer/version.h"]:
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
30 if not treepkg.util.replace_in_file(os.path.join(pkgbasedir,
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
31 versionfile),
214
4307e25d2afe Activate version number patching for KDEPIM enterprise4 packages.
Bernhard Herzog <bh@intevation.de>
parents: 204
diff changeset
32 "\(enterprise4 ([^)]*)\)",
204
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
33 versionstring):
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
34 failed.append(versionfile)
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
35 if failed:
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
36 raise RuntimeError("kdepim: failed to update version numbers in %s"
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
37 % (", ".join(failed),))
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
38
e868c6818f8c Add recipes for KDEPIM enterprise 4 packages
Bernhard Herzog <bh@intevation.de>
parents:
diff changeset
39
221
024b309c0520 Use the recipes.kde_enterprise_4.base module to define the kdepim packager
Bernhard Herzog <bh@intevation.de>
parents: 214
diff changeset
40 base.define_kdepim_packager()
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)