Moved some application-bundle specific code from the BundleBuilder class to

AppBuilder, and set the default type to BNDL (overridden in AppBuilder).

This surfaced when trying to build help bundles.
This commit is contained in:
Jack Jansen 2003-03-05 14:42:18 +00:00
parent 9c20615d4f
commit cc81b80710
1 changed files with 9 additions and 5 deletions

View File

@ -83,7 +83,7 @@ class BundleBuilder(Defaults):
CFBundleInfoDictionaryVersion = "6.0")
# The type of the bundle.
type = "APPL"
type = "BNDL"
# The creator code of the bundle.
creator = None
@ -97,9 +97,6 @@ class BundleBuilder(Defaults):
# Directory where the bundle will be assembled.
builddir = "build"
# platform, name of the subfolder of Contents that contains the executable.
platform = "MacOS"
# Make symlinks instead copying files. This is handy during debugging, but
# makes the bundle non-distributable.
symlink = 0
@ -115,7 +112,6 @@ class BundleBuilder(Defaults):
bundleextension = ext
# misc (derived) attributes
self.bundlepath = pathjoin(self.builddir, self.name + bundleextension)
self.execdir = pathjoin("Contents", self.platform)
plist = self.plist
plist.CFBundleName = self.name
@ -294,6 +290,12 @@ execfile(os.path.join(os.path.split(__file__)[0], "%(realmainprogram)s"))
class AppBuilder(BundleBuilder):
# Override type of the bundle.
type = "BNDL"
# platform, name of the subfolder of Contents that contains the executable.
platform = "MacOS"
# A Python main program. If this argument is given, the main
# executable in the bundle will be a small wrapper that invokes
# the main program. (XXX Discuss why.)
@ -355,6 +357,8 @@ class AppBuilder(BundleBuilder):
raise BundleBuilderError, ("must specify either or both of "
"'executable' and 'mainprogram'")
self.execdir = pathjoin("Contents", self.platform)
if self.name is not None:
pass
elif self.mainprogram is not None: