--- development-support/_install_tool.py
+++ development-support/_install_tool.py.orig
@@ -145,57 +145,61 @@
         min_platform = "10.0"
         max_platform = "99.9"
 
-        with open(setup) as fp:
-            for ln in fp:
-                if not in_requires:
-                    if ln.strip().startswith("install_requires"):
-                        in_requires = True
-
-                        if "]" in ln:
-                            # Dependencies on a single line
-                            start = ln.find("[")
-                            deps = ln[start + 1 :].strip().split(",")
-                            for d in deps:
-                                d = d.strip()[1:]
-                                if d.startswith("pyobjc-framework-"):
-                                    d = d.split(">")[0]
-                                    requires.append(d)
-                else:
-                    if ln.strip().startswith("]"):
-                        in_requires = False
-                        continue
-
-                    dep = ln.strip()[1:-1]
-                    if dep.startswith("pyobjc-framework"):
-                        dep = dep.split(">")[0]
-                        requires.append(dep)
-
-                if ln.strip().startswith("min_os_level"):
-                    min_platform = ln.strip().split("=")[-1]
-                    if min_platform.endswith(","):
-                        min_platform = min_platform[:-1]
-                    min_platform = min_platform[1:-1]
-
-                if ln.strip().startswith("max_os_level"):
-                    max_platform = ln.strip().split("=")[-1]
-                    if max_platform.endswith(","):
-                        max_platform = max_platform[:-1]
-                    max_platform = max_platform[1:-1]
-
-        if not (
-            version_key(min_platform)
-            <= version_key(cur_platform)
-            <= version_key(max_platform)
-        ):
-            print(
-                "Skipping {!r} because it is not supported on the current platform".format(
-                    subdir
+        try:
+            with open(setup) as fp:
+                print("fp is ", fp)
+                for ln in fp:
+                    if not in_requires:
+                        if ln.strip().startswith("install_requires"):
+                            in_requires = True
+
+                            if "]" in ln:
+                                # Dependencies on a single line
+                                start = ln.find("[")
+                                deps = ln[start + 1 :].strip().split(",")
+                                for d in deps:
+                                    d = d.strip()[1:]
+                                    if d.startswith("pyobjc-framework-"):
+                                        d = d.split(">")[0]
+                                        requires.append(d)
+                    else:
+                        if ln.strip().startswith("]"):
+                            in_requires = False
+                            continue
+
+                        dep = ln.strip()[1:-1]
+                        if dep.startswith("pyobjc-framework"):
+                            dep = dep.split(">")[0]
+                            requires.append(dep)
+
+                    if ln.strip().startswith("min_os_level"):
+                        min_platform = ln.strip().split("=")[-1]
+                        if min_platform.endswith(","):
+                            min_platform = min_platform[:-1]
+                        min_platform = min_platform[1:-1]
+
+                    if ln.strip().startswith("max_os_level"):
+                        max_platform = ln.strip().split("=")[-1]
+                        if max_platform.endswith(","):
+                            max_platform = max_platform[:-1]
+                        max_platform = max_platform[1:-1]
+            if not (
+                version_key(min_platform)
+                <= version_key(cur_platform)
+                <= version_key(max_platform)
+            ):
+                print(
+                    "Skipping {!r} because it is not supported on the current platform".format(
+                        subdir
+                    )
                 )
-            )
-            continue
-        frameworks.append(subdir)
-        for dep in requires:
-            partial_order.append((dep, subdir))
+                continue
+            frameworks.append(subdir)
+            for dep in requires:
+                partial_order.append((dep, subdir))
+
+        except:
+            print("Skipping {!r} because it has no setup.py script".format(subdir))
 
     frameworks = topological_sort(frameworks, partial_order)
     return frameworks
