Sumit,Here's an example:
```
flag production
default: False
Executable Foo
if flag(production)
cpp-options: -DPRODUCTION
```I should note that while I have this mechanism in my code, I think that overall it wasn't a good choice, and I'd rather prefer parsing a command-line argument and passing it through my code in stead of having a flag like this. It makes code much harder to write, because each usage has heavy syntax of:
```
#ifdef PRODUCTIONsomething#elsesomethingElse#endif
```while instead you could just write:
```if production then something else somethingElse
```On Thu, Mar 12, 2015 at 11:43 PM, Sumit Sahrawat, Maths & Computing, IIT (BHU) <sumit.sahrawat.apm13@iitbhu.ac.in> wrote:Hi Konstantine, thanks for the replyI decide to use flags, but then the trouble is that I will need some mechanism to flag parts of the code, possibly using the CPP extension.I wanted to know whether there is a better way. Also, does CPP allow checking cabal configure flags? The user-guide did not mention such usecases.--On 13 March 2015 at 02:23, Konstantine Rybnikov <k-bx@k-bx.com> wrote:Hi Sumit,
Documentation clearly mentions it is related to API, so don't worry with executable and feel free to use the flags (still, depending on what are you doing, flags might not be the best solution).
12 бер. 2015 18:40, користувач "Sumit Sahrawat, Maths & Computing, IIT (BHU)" <sumit.sahrawat.apm13@iitbhu.ac.in> написав:_______________________________________________Hi everybody,I am looking for the correct way to provide additional functionality using cabal configure flags.Even though the developer faq [1] says that it is not recommended, I don't see any downsides for an executable package.Is it 'not recommended' even for executable packages? If not, then how can I do it?
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
RegardsSumit Sahrawat