             (clojure.set/union (set non-windows-device-adapters)
                                (missing-vcproj)
                                (set dll-names))
-            (set device-page-names)))))
+            (set device-page-names)
+            (do-not-build)))))
 
 (defn str-lines [sequence]
   (apply str (interpose "\n" sequence)))

                                          (device-vcproj-files)))]
    (sort (clojure.set/difference (set project-names)
                                  (set dll-names)
                                  helper-vcprojs))))
     
(defn device-pages []

        pattern (re-pattern (str "MMSetup" bits "BIT_[^\\s]+?_" date-token ".exe"))]
    (re-find pattern txt)))

(def device-adapter-parent-dirs [(File. micromanager "/DeviceAdapters")
                                 (File. micromanager "/SecretDeviceAdapters")])

(defn do-not-build []
  (set (apply concat
         (for [blacklist (map #(File. % "_ADAPTERS_NOT_IN_BUILD.txt") device-adapter-parent-dirs)]
           (let [txt (slurp blacklist)]
             (map #(first (.split % ":")) (.split txt "\n")))))))

(def non-windows-device-adapters #{"dc1394" "SimpleCam" "Video4Linux"})

(defn missing-vcproj []
  (let [device-adapter-dirs (filter #(and (.isDirectory %)
                                          (not (.. % getName (startsWith "."))))
                                    (mapcat #(.listFiles %) device-adapter-parent-dirs))
        directories-without-vcproj
