restore 2.2 compatibility:
- don't use "abc" in aString
- don't reorganize extension modules when not using zipimport
diff --git a/Lib/plat-mac/bundlebuilder.py b/Lib/plat-mac/bundlebuilder.py
index a2a68c1..554b0f1 100755
--- a/Lib/plat-mac/bundlebuilder.py
+++ b/Lib/plat-mac/bundlebuilder.py
@@ -310,6 +310,9 @@
     "Resources/version.plist",
 ]
 
+def isFramework():
+    return sys.exec_prefix.find("Python.framework") > 0
+
 
 LIB = os.path.join(sys.prefix, "lib", "python" + sys.version[:3])
 SITE_PACKAGES = os.path.join(LIB, "site-packages")
@@ -400,7 +403,7 @@
             self.name += ".app"
 
         if self.executable is None:
-            if not self.standalone:
+            if not self.standalone and not isFramework():
                 self.symlink_exec = 1
             self.executable = sys.executable
 
@@ -409,7 +412,7 @@
             if not hasattr(self.plist, "NSPrincipalClass"):
                 self.plist.NSPrincipalClass = "NSApplication"
 
-        if self.standalone and "Python.framework" in sys.exec_prefix:
+        if self.standalone and isFramework():
             self.addPythonFramework()
 
         BundleBuilder.setup(self)
@@ -619,16 +622,13 @@
             if path and mod.__code__ is None:
                 # C extension
                 filename = os.path.basename(path)
-                dstpath = name.split(".")[:-1] + [filename]
-                if name != "zlib":
-                    # put all extension module in a separate folder
-                    # inside Contents/Resources/
-                    dstpath = pathjoin("ExtensionModules", *dstpath)
-                else:
-                    # zlib is neccesary for bootstrapping, so don't
-                    # hide it in "ExtensionModules"
-                    dstpath = pathjoin(*dstpath)
+                pathitems = name.split(".")[:-1] + [filename]
+                dstpath = pathjoin(*pathitems)
                 if USE_ZIPIMPORT:
+                    if name != "zlib":
+                        # neatly pack all extension modules in a subdirectory,
+                        # except zlib, since it's neccesary for bootstrapping.
+                        dstpath = pathjoin("ExtensionModules", dstpath)
                     # Python modules are stored in a Zip archive, but put
                     # extensions in Contents/Resources/. Add a tiny "loader"
                     # program in the Zip archive. Due to Thomas Heller.