diff --git a/Language/Preprocessor/Cpphs/Options.hs b/Language/Preprocessor/Cpphs/Options.hs
--- a/Language/Preprocessor/Cpphs/Options.hs
+++ b/Language/Preprocessor/Cpphs/Options.hs
@@ -80,6 +80,7 @@
     | Macro (String,String)
     | Path String
     | PreInclude FilePath
+    | IgnoredForCompatibility
       deriving (Eq, Show)
 
 flags :: [(String, RawOption)]
@@ -103,6 +104,7 @@
     where a = lookup x flags
 rawOption ('-':'D':xs) = Just $ Macro (s, if null d then "1" else tail d)
     where (s,d) = break (=='=') xs
+rawOption ('-':'U':xs) = Just $ IgnoredForCompatibility
 rawOption ('-':'I':xs) = Just $ Path $ trailing "/\\" xs
 rawOption xs | "--include="`isPrefixOf`xs
             = Just $ PreInclude (drop 10 xs)
diff --git a/cpphs.cabal b/cpphs.cabal
--- a/cpphs.cabal
+++ b/cpphs.cabal
@@ -1,52 +1,59 @@
 Name: cpphs
-Version: 1.12
+Version: 1.13
 Copyright: 2004-2011, Malcolm Wallace
 Build-Depends: base>3&&<6, old-locale, old-time, directory
 License: LGPL
 License-File: LICENCE-LGPL
+Cabal-Version: >= 1.6
 Author: Malcolm Wallace <Malcolm.Wallace@me.com>
 Maintainer: Malcolm Wallace <Malcolm.Wallace@me.com>
 Homepage: http://haskell.org/cpphs/
 Synopsis: A liberalised re-implementation of cpp, the C pre-processor.
 Description:
-	Cpphs is a re-implementation of the C pre-processor that is both
-	more compatible with Haskell, and itself written in Haskell so
-	that it can be distributed with compilers.
-	.
-	This version of the C pre-processor is pretty-much
-	feature-complete and compatible with traditional (K&R)
-	pre-processors.  Additional features include: a plain-text mode;
-	an option to unlit literate code files; and an option to turn
-	off macro-expansion.
+    Cpphs is a re-implementation of the C pre-processor that is both
+    more compatible with Haskell, and itself written in Haskell so
+    that it can be distributed with compilers.
+    .
+    This version of the C pre-processor is pretty-much
+    feature-complete and compatible with traditional (K&R)
+    pre-processors.  Additional features include: a plain-text mode;
+    an option to unlit literate code files; and an option to turn
+    off macro-expansion.
 Category: Development
 Build-type: Simple
-Exposed-Modules:
-	Language.Preprocessor.Cpphs
-	Language.Preprocessor.Unlit
-Other-Modules:
-	Language.Preprocessor.Cpphs.CppIfdef,
-	Language.Preprocessor.Cpphs.HashDefine,
-	Language.Preprocessor.Cpphs.MacroPass,
-	Language.Preprocessor.Cpphs.Options,
-	Language.Preprocessor.Cpphs.Position,
-	Language.Preprocessor.Cpphs.ReadFirst,
-	Language.Preprocessor.Cpphs.RunCpphs,
-	Language.Preprocessor.Cpphs.SymTab,
-	Language.Preprocessor.Cpphs.Tokenise,
-	Text.ParserCombinators.HuttonMeijer
 
-Executable: cpphs
-Main-Is: cpphs.hs
-Other-Modules:
-	Language.Preprocessor.Cpphs
-	Language.Preprocessor.Unlit
-	Language.Preprocessor.Cpphs.CppIfdef,
-	Language.Preprocessor.Cpphs.HashDefine,
-	Language.Preprocessor.Cpphs.MacroPass,
-	Language.Preprocessor.Cpphs.Options,
-	Language.Preprocessor.Cpphs.Position,
-	Language.Preprocessor.Cpphs.ReadFirst,
-	Language.Preprocessor.Cpphs.RunCpphs,
-	Language.Preprocessor.Cpphs.SymTab,
-	Language.Preprocessor.Cpphs.Tokenise,
-	Text.ParserCombinators.HuttonMeijer
+Library
+    Exposed-Modules:
+        Language.Preprocessor.Cpphs
+        Language.Preprocessor.Unlit
+    Other-Modules:
+        Language.Preprocessor.Cpphs.CppIfdef,
+        Language.Preprocessor.Cpphs.HashDefine,
+        Language.Preprocessor.Cpphs.MacroPass,
+        Language.Preprocessor.Cpphs.Options,
+        Language.Preprocessor.Cpphs.Position,
+        Language.Preprocessor.Cpphs.ReadFirst,
+        Language.Preprocessor.Cpphs.RunCpphs,
+        Language.Preprocessor.Cpphs.SymTab,
+        Language.Preprocessor.Cpphs.Tokenise,
+        Text.ParserCombinators.HuttonMeijer
+
+Executable cpphs
+    Main-Is: cpphs.hs
+    Other-Modules:
+        Language.Preprocessor.Cpphs
+        Language.Preprocessor.Unlit
+        Language.Preprocessor.Cpphs.CppIfdef,
+        Language.Preprocessor.Cpphs.HashDefine,
+        Language.Preprocessor.Cpphs.MacroPass,
+        Language.Preprocessor.Cpphs.Options,
+        Language.Preprocessor.Cpphs.Position,
+        Language.Preprocessor.Cpphs.ReadFirst,
+        Language.Preprocessor.Cpphs.RunCpphs,
+        Language.Preprocessor.Cpphs.SymTab,
+        Language.Preprocessor.Cpphs.Tokenise,
+        Text.ParserCombinators.HuttonMeijer
+
+Source-Repository head
+    Type:     darcs
+    Location: http://code.haskell.org/cpphs
