split BuildInfo and BuildFlags
The problem with combining these is that Build.Standalone etc need only the BuildInfo, and since not built with cabal, the BuildFlags ifdefs were causing bogus warnings.
This commit is contained in:
parent
25703e1413
commit
75366d3c34
5 changed files with 114 additions and 101 deletions
|
@ -12,7 +12,7 @@ module Assistant.WebApp.Documentation where
|
||||||
import Assistant.WebApp.Common
|
import Assistant.WebApp.Common
|
||||||
import Assistant.Install (standaloneAppBase)
|
import Assistant.Install (standaloneAppBase)
|
||||||
import BuildInfo (packageversion)
|
import BuildInfo (packageversion)
|
||||||
import BuildInfo
|
import BuildFlags
|
||||||
|
|
||||||
{- The full license info may be included in a file on disk that can
|
{- The full license info may be included in a file on disk that can
|
||||||
- be read in and displayed. -}
|
- be read in and displayed. -}
|
||||||
|
|
109
BuildFlags.hs
Normal file
109
BuildFlags.hs
Normal file
|
@ -0,0 +1,109 @@
|
||||||
|
{- git-annex build flags
|
||||||
|
-
|
||||||
|
- Copyright 2013-2017 Joey Hess <id@joeyh.name>
|
||||||
|
-
|
||||||
|
- Licensed under the GNU GPL version 3 or higher.
|
||||||
|
-}
|
||||||
|
|
||||||
|
{-# LANGUAGE CPP #-}
|
||||||
|
|
||||||
|
module BuildFlags where
|
||||||
|
|
||||||
|
import Data.List
|
||||||
|
import Data.Ord
|
||||||
|
import qualified Data.CaseInsensitive as CI
|
||||||
|
|
||||||
|
buildFlags :: [String]
|
||||||
|
buildFlags = filter (not . null)
|
||||||
|
[ ""
|
||||||
|
#ifdef WITH_ASSISTANT
|
||||||
|
, "Assistant"
|
||||||
|
#else
|
||||||
|
#warning Building without the assistant.
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_WEBAPP
|
||||||
|
, "Webapp"
|
||||||
|
#else
|
||||||
|
#warning Building without the webapp. You probably need to install Yesod..
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_PAIRING
|
||||||
|
, "Pairing"
|
||||||
|
#else
|
||||||
|
#warning Building without local pairing.
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_S3
|
||||||
|
, "S3"
|
||||||
|
#if MIN_VERSION_aws(0,10,6)
|
||||||
|
++ "(multipartupload)"
|
||||||
|
#endif
|
||||||
|
#if MIN_VERSION_aws(0,13,0)
|
||||||
|
++ "(storageclasses)"
|
||||||
|
#endif
|
||||||
|
#else
|
||||||
|
#warning Building without S3.
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_WEBDAV
|
||||||
|
, "WebDAV"
|
||||||
|
#else
|
||||||
|
#warning Building without WebDAV.
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_INOTIFY
|
||||||
|
, "Inotify"
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_FSEVENTS
|
||||||
|
, "FsEvents"
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_KQUEUE
|
||||||
|
, "Kqueue"
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_DBUS
|
||||||
|
, "DBus"
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_DESKTOP_NOTIFY
|
||||||
|
, "DesktopNotify"
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_CONCURRENTOUTPUT
|
||||||
|
, "ConcurrentOutput"
|
||||||
|
#else
|
||||||
|
#warning Building without ConcurrentOutput
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_TORRENTPARSER
|
||||||
|
, "TorrentParser"
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_MAGICMIME
|
||||||
|
, "MagicMime"
|
||||||
|
#endif
|
||||||
|
-- Always enabled now, but users may be used to seeing these flags
|
||||||
|
-- listed.
|
||||||
|
, "Feeds"
|
||||||
|
, "Testsuite"
|
||||||
|
]
|
||||||
|
|
||||||
|
-- Not a complete list, let alone a listing transitive deps, but only
|
||||||
|
-- the ones that are often interesting to know.
|
||||||
|
dependencyVersions :: [String]
|
||||||
|
dependencyVersions = map fmt $ sortBy (comparing (CI.mk . fst))
|
||||||
|
[ ("feed", VERSION_feed)
|
||||||
|
, ("uuid", VERSION_uuid)
|
||||||
|
, ("bloomfilter", VERSION_bloomfilter)
|
||||||
|
, ("http-client", VERSION_http_client)
|
||||||
|
, ("persistent-sqlite", VERSION_persistent_sqlite)
|
||||||
|
, ("cryptonite", VERSION_cryptonite)
|
||||||
|
#ifdef WITH_S3
|
||||||
|
, ("aws", VERSION_aws)
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_WEBDAV
|
||||||
|
, ("DAV", VERSION_DAV)
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_TORRENTPARSER
|
||||||
|
, ("torrent", VERSION_torrent)
|
||||||
|
#endif
|
||||||
|
#ifdef WITH_WEBAPP
|
||||||
|
, ("yesod", VERSION_yesod)
|
||||||
|
#endif
|
||||||
|
#ifdef TOOL_VERSION_ghc
|
||||||
|
, ("ghc", TOOL_VERSION_ghc)
|
||||||
|
#endif
|
||||||
|
]
|
||||||
|
where
|
||||||
|
fmt (p, v) = p ++ "-" ++ v
|
101
BuildInfo.hs
101
BuildInfo.hs
|
@ -9,103 +9,6 @@
|
||||||
|
|
||||||
module BuildInfo where
|
module BuildInfo where
|
||||||
|
|
||||||
import Data.List
|
-- This file is generated by the configure program with the results of its
|
||||||
import Data.Ord
|
-- probing.
|
||||||
import qualified Data.CaseInsensitive as CI
|
|
||||||
|
|
||||||
#include "Build/SysConfig"
|
#include "Build/SysConfig"
|
||||||
|
|
||||||
buildFlags :: [String]
|
|
||||||
buildFlags = filter (not . null)
|
|
||||||
[ ""
|
|
||||||
#ifdef WITH_ASSISTANT
|
|
||||||
, "Assistant"
|
|
||||||
#else
|
|
||||||
#warning Building without the assistant.
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_WEBAPP
|
|
||||||
, "Webapp"
|
|
||||||
#else
|
|
||||||
#warning Building without the webapp. You probably need to install Yesod..
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_PAIRING
|
|
||||||
, "Pairing"
|
|
||||||
#else
|
|
||||||
#warning Building without local pairing.
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_S3
|
|
||||||
, "S3"
|
|
||||||
#if MIN_VERSION_aws(0,10,6)
|
|
||||||
++ "(multipartupload)"
|
|
||||||
#endif
|
|
||||||
#if MIN_VERSION_aws(0,13,0)
|
|
||||||
++ "(storageclasses)"
|
|
||||||
#endif
|
|
||||||
#else
|
|
||||||
#warning Building without S3.
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_WEBDAV
|
|
||||||
, "WebDAV"
|
|
||||||
#else
|
|
||||||
#warning Building without WebDAV.
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_INOTIFY
|
|
||||||
, "Inotify"
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_FSEVENTS
|
|
||||||
, "FsEvents"
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_KQUEUE
|
|
||||||
, "Kqueue"
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_DBUS
|
|
||||||
, "DBus"
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_DESKTOP_NOTIFY
|
|
||||||
, "DesktopNotify"
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_CONCURRENTOUTPUT
|
|
||||||
, "ConcurrentOutput"
|
|
||||||
#else
|
|
||||||
#warning Building without ConcurrentOutput
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_TORRENTPARSER
|
|
||||||
, "TorrentParser"
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_MAGICMIME
|
|
||||||
, "MagicMime"
|
|
||||||
#endif
|
|
||||||
-- Always enabled now, but users may be used to seeing these flags
|
|
||||||
-- listed.
|
|
||||||
, "Feeds"
|
|
||||||
, "Testsuite"
|
|
||||||
]
|
|
||||||
|
|
||||||
-- Not a complete list, let alone a listing transitive deps, but only
|
|
||||||
-- the ones that are often interesting to know.
|
|
||||||
dependencyVersions :: [String]
|
|
||||||
dependencyVersions = map fmt $ sortBy (comparing (CI.mk . fst))
|
|
||||||
[ ("feed", VERSION_feed)
|
|
||||||
, ("uuid", VERSION_uuid)
|
|
||||||
, ("bloomfilter", VERSION_bloomfilter)
|
|
||||||
, ("http-client", VERSION_http_client)
|
|
||||||
, ("persistent-sqlite", VERSION_persistent_sqlite)
|
|
||||||
, ("cryptonite", VERSION_cryptonite)
|
|
||||||
#ifdef WITH_S3
|
|
||||||
, ("aws", VERSION_aws)
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_WEBDAV
|
|
||||||
, ("DAV", VERSION_DAV)
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_TORRENTPARSER
|
|
||||||
, ("torrent", VERSION_torrent)
|
|
||||||
#endif
|
|
||||||
#ifdef WITH_WEBAPP
|
|
||||||
, ("yesod", VERSION_yesod)
|
|
||||||
#endif
|
|
||||||
#ifdef TOOL_VERSION_ghc
|
|
||||||
, ("ghc", TOOL_VERSION_ghc)
|
|
||||||
#endif
|
|
||||||
]
|
|
||||||
where
|
|
||||||
fmt (p, v) = p ++ "-" ++ v
|
|
||||||
|
|
|
@ -8,9 +8,9 @@
|
||||||
module Command.Version where
|
module Command.Version where
|
||||||
|
|
||||||
import Command
|
import Command
|
||||||
import qualified BuildInfo
|
|
||||||
import Annex.Version
|
import Annex.Version
|
||||||
import BuildInfo
|
import BuildInfo
|
||||||
|
import BuildFlags
|
||||||
import Types.Key
|
import Types.Key
|
||||||
import qualified Types.Backend as B
|
import qualified Types.Backend as B
|
||||||
import qualified Types.Remote as R
|
import qualified Types.Remote as R
|
||||||
|
|
|
@ -666,6 +666,7 @@ Executable git-annex
|
||||||
Build.TestConfig
|
Build.TestConfig
|
||||||
Build.Version
|
Build.Version
|
||||||
BuildInfo
|
BuildInfo
|
||||||
|
BuildFlags
|
||||||
CmdLine
|
CmdLine
|
||||||
CmdLine.Action
|
CmdLine.Action
|
||||||
CmdLine.Batch
|
CmdLine.Batch
|
||||||
|
|
Loading…
Reference in a new issue