]> granicus.if.org Git - python/commitdiff
Moved some application-bundle specific code from the BundleBuilder class to
authorJack Jansen <jack.jansen@cwi.nl>
Wed, 5 Mar 2003 14:42:18 +0000 (14:42 +0000)
committerJack Jansen <jack.jansen@cwi.nl>
Wed, 5 Mar 2003 14:42:18 +0000 (14:42 +0000)
AppBuilder, and set the default type to BNDL (overridden in AppBuilder).

This surfaced when trying to build help bundles.

Lib/plat-mac/bundlebuilder.py

index 8502f81c903edde7defaf759ae0856b57297bd4e..cd370fd03627e0f82ffc4edaaa78ea68dc0121da 100755 (executable)
@@ -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: