diff --git a/README b/README
deleted file mode 100644
--- a/README
+++ /dev/null
@@ -1,89 +0,0 @@
-# hasktags
-A tool to generate tag files for vim and emacs
-
-What is it for? A tag file is a index containing key items of your project such as
-- function names
-- module names
-- data declarations
-- ...
-
-So that you can find / jump to them fast.
-
-## HOWTO (GENERATING TAG FILES):
-Build hasktags (standard cabal build)
-
-Ctag format:
-```bash
-hasktags --ignore-close-implementation --ctags .
-```
-
-Etag format (used by emacs):
-```bash
-hasktags --ignore-close-implementation --etags .
-```
-
-Both formats:
-```bash
-hasktags --ignore-close-implementation .
-```
-
-*NB:* Generating both tags generates a file called `TAGS` for Emacs, and one called `ctags` for Vim.
-
-## HOWTO (USING TAG FILES):
-### ViM
-```viml
-let tags+=tagfile " tags,TAGS is the default setting so probably you don't have to do anything
-```
-`:tjump foo<tab>` or such. See `:h` tags
-
-### NEdit
-Load the "tags" file using File/Load Tags File.
-Use "Ctrl-D" to search for a tag.
-
-### XEmacs/Emacs
-Load the "TAGS" file using "visit-tags-table"
-Use "M-." to search for a tag.
-
-### jedit
-There is a plugin.
-
-### Tests
-To run the tests, do `cd testcases; sh test.sh`.
-
-## History
-In the past this tool was distributed with ghc. I forked and added some
-features.  hasktags itself was moved out of the ghc repository. Then I only
-verified that my fork finds at least as much tags as the one forked by Igloo.
-
-## Future
-Things which could be done in the future:
-- make json support optional
-- Marco Túlio Pimenta Gontijo proposed replacing json by aeson because it might
-  be faster
-
-## Maintainers
-See cabal file
-
-## Comments about literate haskell ([lhs][]):
-Alex no longer supports bird style ">", so should we drop support, too?
-
-## Contributors
-- Tsuru Capital (github/liyang)
-- Marco Túlio Pimenta Gontijo (github/marcotmarcot)
-
-## TODO
-Add all people having contributed before Oct 2012
-This includes people contributing to the darcs repository as well as people
-having contributed when this repository has been part of ghc
-
-# Related work
-List taken from announce of lushtags.
-- https://github.com/bitc/lushtags
-- http://hackage.haskell.org/package/hasktags
-- http://kingfisher.nfshost.com/sw/gasbag/
-- http://hackage.haskell.org/package/hothasktags
-- http://majutsushi.github.com/tagbar/
-
-And probably much more
-
-[lhs]: http://www.haskell.org/haskellwiki/Literate_programming
diff --git a/README.md b/README.md
new file mode 100644
--- /dev/null
+++ b/README.md
@@ -0,0 +1,89 @@
+# hasktags
+A tool to generate tag files for vim and emacs
+
+What is it for? A tag file is a index containing key items of your project such as
+- function names
+- module names
+- data declarations
+- ...
+
+So that you can find / jump to them fast.
+
+## HOWTO (GENERATING TAG FILES):
+Build hasktags (standard cabal build)
+
+Ctag format:
+```bash
+hasktags --ignore-close-implementation --ctags .
+```
+
+Etag format (used by emacs):
+```bash
+hasktags --ignore-close-implementation --etags .
+```
+
+Both formats:
+```bash
+hasktags --ignore-close-implementation .
+```
+
+*NB:* Generating both tags generates a file called `TAGS` for Emacs, and one called `ctags` for Vim.
+
+## HOWTO (USING TAG FILES):
+### ViM
+```viml
+let tags+=tagfile " tags,TAGS is the default setting so probably you don't have to do anything
+```
+`:tjump foo<tab>` or such. See `:h` tags
+
+### NEdit
+Load the "tags" file using File/Load Tags File.
+Use "Ctrl-D" to search for a tag.
+
+### XEmacs/Emacs
+Load the "TAGS" file using "visit-tags-table"
+Use "M-." to search for a tag.
+
+### jedit
+There is a plugin.
+
+### Tests
+To run the tests, do `cd testcases; sh test.sh`.
+
+## History
+In the past this tool was distributed with ghc. I forked and added some
+features.  hasktags itself was moved out of the ghc repository. Then I only
+verified that my fork finds at least as much tags as the one forked by Igloo.
+
+## Future
+Things which could be done in the future:
+- make json support optional
+- Marco Túlio Pimenta Gontijo proposed replacing json by aeson because it might
+  be faster
+
+## Maintainers
+See cabal file
+
+## Comments about literate haskell ([lhs][]):
+Alex no longer supports bird style ">", so should we drop support, too?
+
+## Contributors
+- Tsuru Capital (github/liyang)
+- Marco Túlio Pimenta Gontijo (github/marcotmarcot)
+
+## TODO
+Add all people having contributed before Oct 2012
+This includes people contributing to the darcs repository as well as people
+having contributed when this repository has been part of ghc
+
+# Related work
+List taken from announce of lushtags.
+- https://github.com/bitc/lushtags
+- http://hackage.haskell.org/package/hasktags
+- http://kingfisher.nfshost.com/sw/gasbag/
+- http://hackage.haskell.org/package/hothasktags
+- http://majutsushi.github.com/tagbar/
+
+And probably much more
+
+[lhs]: http://www.haskell.org/haskellwiki/Literate_programming
diff --git a/hasktags.cabal b/hasktags.cabal
--- a/hasktags.cabal
+++ b/hasktags.cabal
@@ -1,5 +1,5 @@
 Name: hasktags
-Version: 0.69.4
+Version: 0.69.5
 Copyright: The University Court of the University of Glasgow
 License: BSD3
 License-File: LICENSE
@@ -17,7 +17,7 @@
 build-type: Simple
 cabal-version: >=1.10
 extra-source-files:
-  README,
+  README.md,
   TODO,
   testcases/HUnitBase.lhs
   testcases/Repair.lhs
@@ -62,13 +62,10 @@
     utf8-string,
     base >= 4 && < 5,
     bytestring >= 0.9 && < 0.11,
-    directory >= 1.1 && < 1.4,
+    directory >= 1.2.6 && < 1.4,
     filepath,
     json >= 0.5 && < 0.10
 
-  if !os(windows)
-    build-depends: unix
-
 Executable hasktags
     Main-Is: src/Main.hs
     Build-Depends:
@@ -79,9 +76,6 @@
     ghc-options: -Wall
     default-language: Haskell2010
 
-  if !os(windows)
-    build-depends: unix
-
   if flag(debug)
     cpp-options: -Ddebug
 
@@ -96,14 +90,10 @@
                 directory,
                 filepath,
                 json,
-                HUnit,
-                unix
+                HUnit
   other-modules: Tags, Hasktags, DebugShow
   ghc-options: -Wall
   default-language: Haskell2010
-
-  if !os(windows)
-    build-depends: unix
 
   if flag(debug)
     cpp-options: -Ddebug
diff --git a/src/Hasktags.hs b/src/Hasktags.hs
--- a/src/Hasktags.hs
+++ b/src/Hasktags.hs
@@ -1,5 +1,3 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE CPP #-}
 -- should this be named Data.Hasktags or such?
 module Hasktags (
   FileData,
@@ -43,13 +41,11 @@
     ( getModificationTime,
       getDirectoryContents,
       doesFileExist,
-      doesDirectoryExist )
+      doesDirectoryExist,
+      isSymbolicLink )
 import Text.JSON.Generic ( encodeJSON, decodeJSON )
 import Control.Monad ( when )
 import DebugShow ( trace_ )
-#ifdef VERSION_unix
-import System.Posix.Files ( isSymbolicLink, getSymbolicLinkStatus )
-#endif
 import System.FilePath ( (</>) )
 
 -- search for definitions of things
@@ -502,12 +498,7 @@
 dirToFiles _ _ "STDIN" = fmap lines $ hGetContents stdin
 dirToFiles followSyms suffixes p = do
   isD <- doesDirectoryExist p
-  isSymLink <-
-#ifdef VERSION_unix
-    isSymbolicLink `fmap` getSymbolicLinkStatus p
-#else
-    return False
-#endif
+  isSymLink <- isSymbolicLink p
   case isD of
     False -> return $ if matchingSuffix then [p] else []
     True ->
