aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2013-11-24 16:03:03 -0400
committerGravatar Joey Hess <joey@kitenet.net>2013-11-24 16:03:03 -0400
commitc22facd63b079f50e39926d172b66e3bf3835e7e (patch)
tree9fbb36bcee3edef556beb9aef01b9f5ecb1f94a8
parent774b203d85bbbb4ac03f95d622fd9b6ef9fe54d5 (diff)
move programPath out of Config.Files to Annex.Path
This works around horribleness in the Mavericks cpp, which falls over on the #if when configure is running. Moving it avoids the file being built at that point. But it's also a location that makes sense..
-rw-r--r--Annex/Path.hs34
-rw-r--r--Config/Files.hs23
2 files changed, 34 insertions, 23 deletions
diff --git a/Annex/Path.hs b/Annex/Path.hs
new file mode 100644
index 000000000..a8c4907b2
--- /dev/null
+++ b/Annex/Path.hs
@@ -0,0 +1,34 @@
+{- git-annex program path
+ -
+ - Copyright 2013 Joey Hess <joey@kitenet.net>
+ -
+ - Licensed under the GNU GPL version 3 or higher.
+ -}
+
+{-# LANGUAGE CPP #-}
+
+module Annex.Path where
+
+import Common
+import Config.Files
+import System.Environment
+
+{- A fully qualified path to the currently running git-annex program.
+ -
+ - getExecutablePath is available since ghc 7.4.2. On OSs it supports
+ - well, it returns the complete path to the program. But, on other OSs,
+ - it might return just the basename.
+ -}
+programPath :: IO (Maybe FilePath)
+programPath = do
+#if MIN_VERSION_base(4,6,0)
+ exe <- getExecutablePath
+ p <- if isAbsolute exe
+ then return exe
+ else readProgramFile
+#else
+ p <- readProgramFile
+#endif
+ -- In case readProgramFile returned just the command name,
+ -- fall back to finding it in PATH.
+ searchPath p
diff --git a/Config/Files.hs b/Config/Files.hs
index 285ae570b..30ed0a3cf 100644
--- a/Config/Files.hs
+++ b/Config/Files.hs
@@ -5,14 +5,11 @@
- Licensed under the GNU GPL version 3 or higher.
-}
-{-# LANGUAGE CPP #-}
-
module Config.Files where
import Common
import Utility.Tmp
import Utility.FreeDesktop
-import System.Environment
{- ~/.config/git-annex/file -}
userConfigFile :: FilePath -> IO FilePath
@@ -70,23 +67,3 @@ readProgramFile = do
)
where
cmd = "git-annex"
-
-{- A fully qualified path to the currently running git-annex program.
- -
- - getExecutablePath is available since ghc 7.4.2. On OSs it supports
- - well, it returns the complete path to the program. But, on other OSs,
- - it might return just the basename.
- -}
-programPath :: IO (Maybe FilePath)
-programPath = do
-#if MIN_VERSION_base(4,6,0)
- exe <- getExecutablePath
- p <- if isAbsolute exe
- then return exe
- else readProgramFile
-#else
- p <- readProgramFile
-#endif
- -- In case readProgramFile returned just the command name,
- -- fall back to finding it in PATH.
- searchPath p