Merge pull request #169 from seabaylea/dispatch-overlay

Add Dispatch overlay to test configuration
diff --git a/Tests/Functional/lit.cfg b/Tests/Functional/lit.cfg
index 5d40f8f..a8a8f05 100644
--- a/Tests/Functional/lit.cfg
+++ b/Tests/Functional/lit.cfg
@@ -81,12 +81,16 @@
     # swift-corelibs-foundation is using it.
     libdispatch_src_dir = os.getenv('LIBDISPATCH_SRC_DIR')
     libdispatch_build_dir = os.getenv('LIBDISPATCH_BUILD_DIR')
-    if (libdispatch_src_dir is not None) and (libdispatch_build_dir is not None):
-        swift_exec.extend([
-            '-Xcc', '-fblocks',
-            '-I', libdispatch_src_dir,
-            '-L', libdispatch_build_dir,
-        ])
+    libdispatch_overlay_dir = os.getenv('LIBDISPATCH_OVERLAY_DIR')
+    if ((libdispatch_src_dir is not None) 
+        and (libdispatch_build_dir is not None)
+        and (libdispatch_overlay_dir is not None)):
+            swift_exec.extend([
+                '-Xcc', '-fblocks',
+                '-I', libdispatch_src_dir,
+                '-I', libdispatch_overlay_dir,
+                '-L', libdispatch_build_dir,
+            ])
 
 # Having prepared the swiftc command, we set the substitution.
 config.substitutions.append(('%{swiftc}', ' '.join(swift_exec)))
diff --git a/build_script.py b/build_script.py
index 4ac20e6..7d6ab90 100755
--- a/build_script.py
+++ b/build_script.py
@@ -237,9 +237,13 @@
             symlink_force(os.path.join(args.libdispatch_build_dir, "src", ".libs", "libdispatch.so"),
                 foundation_build_dir)
         if args.libdispatch_src_dir and args.libdispatch_build_dir:
-            libdispatch_src_args = "LIBDISPATCH_SRC_DIR={libdispatch_src_dir} LIBDISPATCH_BUILD_DIR={libdispatch_build_dir}".format(
-                libdispatch_src_dir=os.path.abspath(args.libdispatch_src_dir),
-                libdispatch_build_dir=os.path.join(args.libdispatch_build_dir, 'src', '.libs'))
+            libdispatch_src_args = ( 
+               "LIBDISPATCH_SRC_DIR={libdispatch_src_dir} "
+               "LIBDISPATCH_BUILD_DIR={libdispatch_build_dir} "
+               "LIBDISPATCH_OVERLAY_DIR={libdispatch_overlay_dir}".format(
+                   libdispatch_src_dir=os.path.abspath(args.libdispatch_src_dir),
+                   libdispatch_build_dir=os.path.join(args.libdispatch_build_dir, 'src', '.libs'),
+                   libdispatch_overlay_dir=os.path.join(args.libdispatch_build_dir, 'src', 'swift')))
         else:
             libdispatch_src_args = ""