diff --git a/smp/threads007/Main.hs b/smp/threads007/Main.hs
index e3f42e2a063bb904aec16e94fc56ef4fbf7e09cf..ef12be0d2f804c629a96bf48adb40be809f00a6b 100644
--- a/smp/threads007/Main.hs
+++ b/smp/threads007/Main.hs
@@ -12,5 +12,5 @@ main :: IO ()
 main = do 
   let numChoices = 2
   cs <- replicateM numChoices channel
-  mapM_ forkIO [replicateM_ (50000 `div` numChoices) $ sync $ transmit c () | c <- cs]
-  replicateM_ 50000 $ sync $ choose [receive c (const True) | c <- cs] 
+  mapM_ forkIO [replicateM_ (100000 `div` numChoices) $ sync $ transmit c () | c <- cs]
+  replicateM_ 100000 $ sync $ choose [receive c (const True) | c <- cs] 
diff --git a/smp/threads007/Makefile b/smp/threads007/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..3e952d6004441312f39b15849d48da4fd39f9d8c
--- /dev/null
+++ b/smp/threads007/Makefile
@@ -0,0 +1,6 @@
+TOP = ../..
+include $(TOP)/mk/boilerplate.mk
+
+ALL_DIRS += Control/Concurrent
+
+include $(TOP)/mk/target.mk