The .preprocess() method didn't work, because it didn't add the input file
    to the command-line arguments.  Fix this by adding the source filename.
diff --git a/Lib/distutils/unixccompiler.py b/Lib/distutils/unixccompiler.py
index d94c384..831717b 100644
--- a/Lib/distutils/unixccompiler.py
+++ b/Lib/distutils/unixccompiler.py
@@ -92,6 +92,7 @@
             pp_args[:0] = extra_preargs
         if extra_postargs:
             pp_args.extend(extra_postargs)
+        pp_args.append(source)
 
         # We need to preprocess: either we're being forced to, or we're
         # generating output to stdout, or there's a target output file and