1CABAL(1) General Commands Manual CABAL(1)
2
3
4
6 cabal - a system for building and packaging Haskell libraries and pro‐
7 grams
8
10 cabal command <arguments|[options]>...
11
12 Where the commands are
13
14 cabal list - List packages matching a search string.
15 cabal info - Display detailed information about a particular package.
16 cabal fetch - Downloads packages for later installation.
17 cabal get - Download/Extract a package's source code (repository).
18 cabal check - Check the package for common mistakes.
19 cabal upload - Uploads source packages or documentation to Hackage.
20 cabal report - Upload build reports to a remote server.
21 cabal init - Create a new .cabal package file.
22 cabal user-config - Display and update the user's global cabal configu‐
23 ration.
24 cabal gen-bounds - Generate dependency bounds.
25 cabal outdated - Check for outdated dependencies
26 cabal hscolour - Generate HsColour colourised code, in HTML format.
27 cabal configure - Add extra project configuration
28 cabal new-configure - Add extra project configuration
29 cabal v2-configure - Add extra project configuration
30 cabal update - Updates list of known packages.
31 cabal new-update - Updates list of known packages.
32 cabal v2-update - Updates list of known packages.
33 cabal build - Compile targets within the project.
34 cabal new-build - Compile targets within the project.
35 cabal v2-build - Compile targets within the project.
36 cabal repl - Open an interactive session for the given component.
37 cabal new-repl - Open an interactive session for the given component.
38 cabal v2-repl - Open an interactive session for the given component.
39 cabal freeze - Freeze dependencies.
40 cabal new-freeze - Freeze dependencies.
41 cabal v2-freeze - Freeze dependencies.
42 cabal haddock - Build Haddock documentation
43 cabal new-haddock - Build Haddock documentation
44 cabal v2-haddock - Build Haddock documentation
45 cabal install - Install packages.
46 cabal new-install - Install packages.
47 cabal v2-install - Install packages.
48 cabal run - Run an executable.
49 cabal new-run - Run an executable.
50 cabal v2-run - Run an executable.
51 cabal test - Run test-suites
52 cabal new-test - Run test-suites
53 cabal v2-test - Run test-suites
54 cabal bench - Run benchmarks
55 cabal new-bench - Run benchmarks
56 cabal v2-bench - Run benchmarks
57 cabal exec - Give a command access to the store.
58 cabal new-exec - Give a command access to the store.
59 cabal v2-exec - Give a command access to the store.
60 cabal clean - Clean the package store and remove temporary files.
61 cabal new-clean - Clean the package store and remove temporary files.
62 cabal v2-clean - Clean the package store and remove temporary files.
63 cabal sdist - Generate a source distribution file (.tar.gz).
64 cabal new-sdist - Generate a source distribution file (.tar.gz).
65 cabal v2-sdist - Generate a source distribution file (.tar.gz).
66 cabal v1-configure - Prepare to build the package.
67 cabal v1-update - Updates list of known packages.
68 cabal v1-build - Compile all/specific components.
69 cabal v1-repl - Open an interpreter session for the given component.
70 cabal v1-freeze - Freeze dependencies.
71 cabal v1-haddock - Generate Haddock HTML documentation.
72 cabal v1-install - Install packages.
73 cabal v1-run - Builds and runs an executable.
74 cabal v1-test - Run all/specific tests in the test suite.
75 cabal v1-bench - Run all/specific benchmarks.
76 cabal v1-exec - Give a command access to the sandbox package reposi‐
77 tory.
78 cabal v1-clean - Clean up after a build.
79 cabal v1-sdist - Generate a source distribution file (.tar.gz).
80 cabal v1-doctest - Run doctest tests.
81 cabal v1-copy - Copy the files of all/specific components to install
82 locations.
83 cabal v1-register - Register this package with the compiler.
84 cabal v1-reconfigure - Reconfigure the package if necessary.
85 cabal v1-sandbox - Create/modify/delete a sandbox.
86
88 Cabal is the standard package system for Haskell software. It helps
89 people to configure, build and install Haskell software and to distrib‐
90 ute it easily to other users and developers.
91
92 The command line cabal tool (also referred to as cabal-install) helps
93 with installing existing packages and developing new packages. It can
94 be used to work with local packages or to install packages from online
95 package archives, including automatically installing dependencies. By
96 default it is configured to use Hackage, which is Haskell's central
97 package archive that contains thousands of libraries and applications
98 in the Cabal package format.
99
101 Global options:
102
103 -V, --version
104 Print version information
105
106 --numeric-version
107 Print just the version number
108
109 --config-file FILE
110 Set an alternate location for the config file
111
112 --sandbox-config-file FILE
113 Set an alternate location for the sandbox config file (default:
114 './cabal.sandbox.config')
115
116 --default-user-config FILE
117 Set a location for a cabal.config file for projects without
118 their own cabal.config freeze file.
119
120 --require-sandbox
121 --no-require-sandbox
122 requiring the presence of a sandbox for sandbox-aware commands
123
124 --ignore-sandbox
125 Ignore any existing sandbox
126
127 --ignore-expiry
128 Ignore expiry dates on signed metadata (use only in exceptional
129 circumstances)
130
131 --http-transport HttpTransport
132 Set a transport for http(s) requests. Accepts 'curl', 'wget',
133 'powershell', and 'plain-http'. (default: 'curl')
134
135 --enable-nix
136 --disable-nix
137 Nix integration: run commands through nix-shell if a 'shell.nix'
138 file exists
139
140 --remote-repo NAME:URL
141 The name and url for a remote repository
142
143 --remote-repo-cache DIR
144 The location where downloads from all remote repos are cached
145
146 --local-repo DIR
147 The location of a local repository
148
149 --logs-dir, --logsdir DIR
150 The location to put log files
151
152 --world-file FILE
153 The location of the world file
154
155 --store-dir, --storedir DIR
156 The location of the nix-local-build store
157
158
160 cabal list
161
162 Usage: cabal list [FLAGS]
163 or: cabal list [FLAGS] STRINGS
164
165
166 List all packages, or all packages matching one of the search strings.
167
168 If there is a sandbox in the current directory and config:ignore-sand‐
169 box is False, use the sandbox package database. Otherwise, use the
170 package database specified with --package-db. If not specified, use the
171 user package database.
172
173
174 Examples:
175 cabal list pandoc
176 Will find pandoc, pandoc-citeproc, pandoc-lens, ...
177
178
179 Flags:
180 -v, --verbose [n]
181 Control verbosity (n is 0--3, default verbosity level is
182 1)
183
184 --installed
185 Only print installed packages
186
187 --simple-output
188 Print in a easy-to-parse format
189
190 --package-db DB
191 Append the given package database to the list of package
192 databases used (to satisfy dependencies and register
193 into). May be a specific file, 'global' or 'user'. The
194 initial list is ['global'], ['global', 'user'], or
195 ['global', $sandbox], depending on context. Use 'clear'
196 to reset the list to empty. See the user guide for
197 details.
198
199
200 cabal info
201
202 Usage: cabal info [FLAGS] PACKAGES
203
204
205 If there is a sandbox in the current directory and config:ignore-sand‐
206 box is False, use the sandbox package database. Otherwise, use the
207 package database specified with --package-db. If not specified, use the
208 user package database.
209
210
211 Flags:
212 -v, --verbose [n]
213 Control verbosity (n is 0--3, default verbosity level is
214 1)
215
216 --package-db DB
217 Append the given package database to the list of package
218 databases used (to satisfy dependencies and register
219 into). May be a specific file, 'global' or 'user'. The
220 initial list is ['global'], ['global', 'user'], or
221 ['global', $sandbox], depending on context. Use 'clear'
222 to reset the list to empty. See the user guide for
223 details.
224
225
226 cabal fetch
227
228 Usage: cabal fetch [FLAGS] PACKAGES
229
230
231 Note that it currently is not possible to fetch the dependencies for a
232 package in the current directory.
233
234
235 Flags:
236 -v, --verbose [n]
237 Control verbosity (n is 0--3, default verbosity level is
238 1)
239
240 --dependencies, --deps
241 Resolve and fetch dependencies (default)
242
243 --no-dependencies, --no-deps
244 Ignore dependencies
245
246 --dry-run
247 Do not install anything, only print what would be
248 installed.
249
250 --enable-tests
251 --disable-tests
252 dependency checking and compilation for test suites
253 listed in the package description file.
254
255 --enable-benchmarks
256 --disable-benchmarks
257 dependency checking and compilation for benchmarks listed
258 in the package description file.
259
260 --solver SOLVER
261 Select dependency solver to use (default: modular).
262 Choices: modular.
263
264 --max-backjumps NUM
265 Maximum number of backjumps allowed while solving
266 (default: 4000). Use a negative number to enable unlim‐
267 ited backtracking. Use 0 to disable backtracking com‐
268 pletely.
269
270 --reorder-goals
271 --no-reorder-goals
272 Try to reorder goals according to certain heuristics.
273 Slows things down on average, but may make backtracking
274 faster for some packages.
275
276 --count-conflicts
277 --no-count-conflicts
278 Try to speed up solving by preferring goals that are
279 involved in a lot of conflicts (default).
280
281 --minimize-conflict-set
282 --no-minimize-conflict-set
283 When there is no solution, try to improve the error mes‐
284 sage by finding a minimal conflict set (default: false).
285 May increase run time significantly.
286
287 --independent-goals
288 --no-independent-goals
289 Treat several goals on the command line as independent.
290 If several goals depend on the same package, different
291 versions can be chosen.
292
293 --shadow-installed-packages
294 --no-shadow-installed-packages
295 If multiple package instances of the same version are
296 installed, treat all but one as shadowed.
297
298 --strong-flags
299 --no-strong-flags
300 Do not defer flag choices (this used to be the default in
301 cabal-install <= 1.20).
302
303 --allow-boot-library-installs
304 --no-allow-boot-library-installs
305 Allow cabal to install base, ghc-prim, integer-simple,
306 integer-gmp, and template-haskell.
307
308 --reject-unconstrained-dependencies none|all
309 Require these packages to have constraints on them if
310 they are to be selected (default: none).
311
312
313 cabal get
314
315 Usage: cabal get [PACKAGES]
316
317
318 Creates a local copy of a package's source code. By default it gets the
319 source tarball and unpacks it in a local subdirectory. Alternatively,
320 with -s it will get the code from the source repository specified by
321 the package.
322
323
324 Examples:
325 cabal get hlint
326 Download the latest stable version of hlint;
327 cabal get lens --source-repository=head
328 Download the source repository (i.e. git clone from github).
329
330
331 Flags:
332 -v, --verbose [n]
333 Control verbosity (n is 0--3, default verbosity level is
334 1)
335
336 -d, --destdir PATH
337 Where to place the package source, defaults to the cur‐
338 rent directory.
339
340 -s, --source-repository [[head|this|...]]
341 Copy the package's source repository (ie git clone, darcs
342 get, etc as appropriate).
343
344 --index-state STATE
345 Use source package index state as it existed at a previ‐
346 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
347 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
348 'HEAD' (default: 'HEAD'). This determines which package
349 versions are available as well as .cabal file revision is
350 selected (unless --pristine is used).
351
352 --pristine
353 Unpack the original pristine tarball, rather than updat‐
354 ing the .cabal file with the latest revision from the
355 package archive.
356
357
358 cabal check
359
360 Usage: cabal check [FLAGS]
361
362
363 Expects a .cabal package file in the current directory.
364
365 The checks correspond to the requirements to packages on Hackage. If no
366 errors and warnings are reported, Hackage will accept this package.
367
368
369 Flags:
370 -v, --verbose [n]
371 Control verbosity (n is 0--3, default verbosity level is
372 1)
373
374
375 cabal upload
376
377 Usage: cabal upload [FLAGS] TARFILES
378
379
380 You can store your Hackage login in the ~/.cabal/config file Relevant
381 global configuration keys:
382 username
383 password
384
385
386 Flags:
387 -v, --verbose [n]
388 Control verbosity (n is 0--3, default verbosity level is
389 1)
390
391 --publish
392 Publish the package instead of uploading it as a candi‐
393 date.
394
395 -d, --documentation
396 Upload documentation instead of a source package. By
397 default, this uploads documentation for a package candi‐
398 date. To upload documentation for a published package,
399 combine with --publish.
400
401 -u, --username USERNAME
402 Hackage username.
403
404 -p, --password PASSWORD
405 Hackage password.
406
407 -P, --password-command PASSWORD
408 Command to get Hackage password.
409
410
411 cabal report
412
413 Usage: cabal report [FLAGS]
414
415
416 You can store your Hackage login in the ~/.cabal/config file
417
418
419 Flags:
420 -v, --verbose [n]
421 Control verbosity (n is 0--3, default verbosity level is
422 1)
423
424 -u, --username USERNAME
425 Hackage username.
426
427 -p, --password PASSWORD
428 Hackage password.
429
430
431 cabal init
432
433 Usage: cabal init [FLAGS]
434
435
436 Create a .cabal, Setup.hs, and optionally a LICENSE file.
437
438 Calling init with no arguments creates an executable, guessing as many
439 options as possible. The interactive mode can be invoked by the
440 -i/--interactive flag, which will try to guess as much as possible and
441 prompt you for the rest. You can change init to always be interactive
442 by setting the interactive flag in your configuration file. Command-
443 line arguments are provided for scripting purposes.
444
445
446 Flags:
447 -i, --interactive
448 -n, --non-interactive
449 interactive mode.
450
451 -q, --quiet
452 Do not generate log messages to stdout.
453
454 --no-comments
455 Do not generate explanatory comments in the .cabal file.
456
457 -m, --minimal
458 Generate a minimal .cabal file, that is, do not include
459 extra empty fields. Also implies --no-comments.
460
461 --overwrite
462 Overwrite any existing .cabal, LICENSE, or Setup.hs files
463 without warning.
464
465 --package-dir, --packagedir DIRECTORY
466 Root directory of the package (default = current direc‐
467 tory).
468
469 -p, --package-name PACKAGE
470 Name of the Cabal package to create.
471
472 --version VERSION
473 Initial version of the package.
474
475 --cabal-version VERSION_RANGE
476 Version of the Cabal specification.
477
478 -l, --license LICENSE
479 Project license.
480
481 -a, --author NAME
482 Name of the project's author.
483
484 -e, --email EMAIL
485 Email address of the maintainer.
486
487 -u, --homepage URL
488 Project homepage and/or repository.
489
490 -s, --synopsis TEXT
491 Short project synopsis.
492
493 -c, --category CATEGORY
494 Project category.
495
496 -x, --extra-source-file FILE
497 Extra source file to be distributed with tarball.
498
499 --lib, --is-library
500 Build a library.
501
502 --exe, --is-executable
503 Build an executable.
504
505 --libandexe, --is-libandexe
506 Build a library and an executable.
507
508 --tests
509 Generate a test suite for the library.
510
511 --test-dir DIR
512 Directory containing tests.
513
514 --simple
515 Create a simple project with sensible defaults.
516
517 --main-is FILE
518 Specify the main module.
519
520 --language LANGUAGE
521 Specify the default language.
522
523 -o, --expose-module MODULE
524 Export a module from the package.
525
526 --extension EXTENSION
527 Use a LANGUAGE extension (in the other-extensions field).
528
529 -d, --dependency PACKAGE
530 Package dependency.
531
532 --application-dir DIR
533 Directory containing package application executable.
534
535 --source-dir, --sourcedir DIR
536 Directory containing package library source.
537
538 --build-tool TOOL
539 Required external build tool.
540
541 -w, --with-compiler PATH
542 give the path to a particular compiler
543
544 -v, --verbose [n]
545 Control verbosity (n is 0--3, default verbosity level is
546 1)
547
548
549 cabal user-config
550
551 Usage: cabal user-config init
552 or: cabal user-config diff
553 or: cabal user-config update
554
555
556 When upgrading cabal, the set of configuration keys and their default
557 values may change. This command provides means to merge the existing
558 config in ~/.cabal/config (i.e. all bindings that are actually defined
559 and not commented out) and the default config of the new version.
560
561 init: Creates a new config file at either ~/.cabal/config or as speci‐
562 fied by --config-file, if given. An existing file won't be overwritten
563 unless -f or --force is given. diff: Shows a pseudo-diff of the user's
564 ~/.cabal/config file and the default configuration that would be cre‐
565 ated by cabal if the config file did not exist. update: Applies the
566 pseudo-diff to the configuration that would be created by default, and
567 write the result back to ~/.cabal/config.
568
569
570 Flags:
571 -v, --verbose [n]
572 Control verbosity (n is 0--3, default verbosity level is
573 1)
574
575 -f, --force
576 Overwrite the config file if it already exists.
577
578 -a, --augment CONFIGLINE
579 Additional setting to augment the config file (replacing
580 a previous setting if it existed).
581
582
583 cabal gen-bounds
584
585 Usage: cabal gen-bounds [FLAGS]
586
587
588 Generates bounds for all dependencies that do not currently have them.
589 Generated bounds are printed to stdout. You can then paste them into
590 your
591
592
593
594 Flags:
595 -v, --verbose [n]
596 Control verbosity (n is 0--3, default verbosity level is
597 1)
598
599
600 cabal outdated
601
602 Usage: cabal outdated [FLAGS]
603
604
605 Checks for outdated dependencies in the package description file or
606 freeze file
607
608
609 Flags:
610 -v, --verbose [n]
611 Control verbosity (n is 0--3, default verbosity level is
612 1)
613
614 --freeze-file, --v1-freeze-file
615 Act on the freeze file
616
617 --v2-freeze-file, --new-freeze-file
618 Act on the new-style freeze file (default:
619 cabal.project.freeze)
620
621 --project-file PROJECTFILE
622 Act on the new-style freeze file named PROJECTFILE.freeze
623 rather than the default cabal.project.freeze
624
625 --simple-output
626 Only print names of outdated dependencies, one per line
627
628 --exit-code
629 Exit with non-zero when there are outdated dependencies
630
631 -q, --quiet
632 Don't print any output. Implies '--exit-code' and '-v0'
633
634 --ignore PKGS
635 Packages to ignore
636
637 --minor [PKGS]
638 Ignore major version bumps for these packages
639
640
641 cabal hscolour
642
643 Usage: cabal hscolour [FLAGS]
644
645
646 Requires the hscolour program.
647
648
649 Deprecated in favour of 'cabal haddock --hyperlink-source'.
650
651 Flags:
652 -v, --verbose [n]
653 Control verbosity (n is 0--3, default verbosity level is
654 1)
655
656 --builddir, --distdir, --distpref DIR
657 The directory where Cabal puts generated build files
658 (default dist)
659
660 --executables
661 Run hscolour for Executables targets
662
663 --tests
664 Run hscolour for Test Suite targets
665
666 --benchmarks
667 Run hscolour for Benchmark targets
668
669 --foreign-libraries
670 Run hscolour for Foreign Library targets
671
672 --all
673 Run hscolour for all targets
674
675 --css PATH
676 Use a cascading style sheet
677
678
679 cabal configure
680
681 Usage: cabal configure [FLAGS]
682
683
684 Adjust how the project is built by setting additional package flags and
685 other flags.
686
687 The configuration options are written to the 'cabal.project.local' file
688 (or configuration from the 'cabal.project' file (if any). This combina‐
689 tion is used as the project configuration for all other commands (such
690 as 'build',
691
692 The configure command also checks that the project configuration will
693 work. In particular it checks that there is a consistent set of depen‐
694 dencies for the project as a whole.
695
696 The 'cabal.project.local' file persists across 'clean' but is overwrit‐
697 ten on the next use of the 'configure' command. The intention is that
698 the
699
700 It is never necessary to use the 'configure' command. It is merely a
701 convenience in cases where you do not want to specify flags to 'build'
702 (and other commands) every time and yet do not want to alter the
703 'cabal.project' persistently.
704
705
706 Adjust how the project is built by setting additional package flags and
707 other flags.
708
709 The configuration options are written to the 'cabal.project.local' file
710 (or configuration from the 'cabal.project' file (if any). This combina‐
711 tion is used as the project configuration for all other commands (such
712 as 'build',
713
714 The configure command also checks that the project configuration will
715 work. In particular it checks that there is a consistent set of depen‐
716 dencies for the project as a whole.
717
718 The 'cabal.project.local' file persists across 'clean' but is overwrit‐
719 ten on the next use of the 'configure' command. The intention is that
720 the
721
722 It is never necessary to use the 'configure' command. It is merely a
723 convenience in cases where you do not want to specify flags to 'build'
724 (and other commands) every time and yet do not want to alter the
725 'cabal.project' persistently.
726
727
728 Flags:
729 -v, --verbose [n]
730 Control verbosity (n is 0--3, default verbosity level is
731 1)
732
733 --builddir, --distdir, --distpref DIR
734 The directory where Cabal puts generated build files
735 (default dist)
736
737 -g, --ghc
738 compile with GHC
739
740 --ghcjs
741 compile with GHCJS
742
743 --uhc
744 compile with UHC
745
746 --haskell-suite
747 compile with a haskell-suite compiler
748
749 --cabal-file PATH
750 use this Cabal file
751
752 -w, --with-compiler PATH
753 give the path to a particular compiler
754
755 --with-hc-pkg PATH
756 give the path to the package tool
757
758 --prefix DIR
759 bake this prefix in preparation of installation
760
761 --bindir DIR
762 installation directory for executables
763
764 --libdir DIR
765 installation directory for libraries
766
767 --libsubdir DIR
768 subdirectory of libdir in which libs are installed
769
770 --dynlibdir DIR
771 installation directory for dynamic libraries
772
773 --libexecdir DIR
774 installation directory for program executables
775
776 --libexecsubdir DIR
777 subdirectory of libexecdir in which private executables
778 are installed
779
780 --datadir DIR
781 installation directory for read-only data
782
783 --datasubdir DIR
784 subdirectory of datadir in which data files are installed
785
786 --docdir DIR
787 installation directory for documentation
788
789 --htmldir DIR
790 installation directory for HTML documentation
791
792 --haddockdir DIR
793 installation directory for haddock interfaces
794
795 --sysconfdir DIR
796 installation directory for configuration files
797
798 --program-prefix PREFIX
799 prefix to be applied to installed executables
800
801 --program-suffix SUFFIX
802 suffix to be applied to installed executables
803
804 --enable-library-vanilla
805 --disable-library-vanilla
806 Vanilla libraries
807
808 -p, --enable-library-profiling
809 --disable-library-profiling
810 Library profiling
811
812 --enable-shared
813 --disable-shared
814 Shared library
815
816 --enable-static
817 --disable-static
818 Static library
819
820 --enable-executable-dynamic
821 --disable-executable-dynamic
822 Executable dynamic linking
823
824 --enable-executable-static
825 --disable-executable-static
826 Executable fully static linking
827
828 --enable-profiling
829 --disable-profiling
830 Executable and library profiling
831
832 --enable-executable-profiling
833 --disable-executable-profiling
834 Executable profiling (DEPRECATED)
835
836 --profiling-detail level
837 Profiling detail level for executable and library
838 (default, none, exported-functions, toplevel-functions,
839 all-functions).
840
841 --library-profiling-detail level
842 Profiling detail level for libraries only.
843
844 -O, --enable-optimization, --enable-optimisation [n]
845 Build with optimization (n is 0--2, default is 1)
846
847 --disable-optimization, --disable-optimisation
848 Build without optimization
849
850 --enable-debug-info [n]
851 Emit debug info (n is 0--3, default is 0)
852
853 --disable-debug-info
854 Don't emit debug info
855
856 --enable-library-for-ghci
857 --disable-library-for-ghci
858 compile library for use with GHCi
859
860 --enable-split-sections
861 --disable-split-sections
862 compile library code such that unneeded definitions can
863 be dropped from the final executable (GHC 7.8+)
864
865 --enable-split-objs
866 --disable-split-objs
867 split library into smaller objects to reduce binary sizes
868 (GHC 6.6+)
869
870 --enable-executable-stripping
871 --disable-executable-stripping
872 strip executables upon installation to reduce binary
873 sizes
874
875 --enable-library-stripping
876 --disable-library-stripping
877 strip libraries upon installation to reduce binary sizes
878
879 --configure-option OPT
880 Extra option for configure
881
882 --user
883 --global
884 doing a per-user installation
885
886 --package-db DB
887 Append the given package database to the list of package
888 databases used (to satisfy dependencies and register
889 into). May be a specific file, 'global' or 'user'. The
890 initial list is ['global'], ['global', 'user'], or
891 ['global', $sandbox], depending on context. Use 'clear'
892 to reset the list to empty. See the user guide for
893 details.
894
895 -f, --flags FLAGS
896 Force values for the given flags in Cabal conditionals in
897 the .cabal file. E.g., --flags="debug -usebytestrings"
898 forces the flag "debug" to true and "usebytestrings" to
899 false.
900
901 --extra-include-dirs PATH
902 A list of directories to search for header files
903
904 --enable-deterministic
905 --disable-deterministic
906 Try to be as deterministic as possible (used by the test
907 suite)
908
909 --ipid IPID
910 Installed package ID to compile this package as
911
912 --cid CID
913 Installed component ID to compile this component as
914
915 --extra-lib-dirs PATH
916 A list of directories to search for external libraries
917
918 --extra-framework-dirs PATH
919 A list of directories to search for external frameworks
920 (OS X only)
921
922 --extra-prog-path PATH
923 A list of directories to search for required programs (in
924 addition to the normal search locations)
925
926 --instantiate-with NAME=MOD
927 A mapping of signature names to concrete module instanti‐
928 ations.
929
930 --enable-tests
931 --disable-tests
932 dependency checking and compilation for test suites
933 listed in the package description file.
934
935 --enable-coverage
936 --disable-coverage
937 build package with Haskell Program Coverage. (GHC only)
938
939 --enable-library-coverage
940 --disable-library-coverage
941 build package with Haskell Program Coverage. (GHC only)
942 (DEPRECATED)
943
944 --enable-benchmarks
945 --disable-benchmarks
946 dependency checking and compilation for benchmarks listed
947 in the package description file.
948
949 --enable-relocatable
950 --disable-relocatable
951 building a package that is relocatable. (GHC only)
952
953 --disable-response-files
954 enable workaround for old versions of programs like "ar"
955 that do not support @file arguments
956
957 --allow-depending-on-private-libs
958 Allow depending on private libraries. If set, the library
959 visibility check MUST be done externally.
960
961 --with-alex PATH
962 give the path to alex
963
964 --with-ar PATH
965 give the path to ar
966
967 --with-c2hs PATH
968 give the path to c2hs
969
970 --with-cpphs PATH
971 give the path to cpphs
972
973 --with-doctest PATH
974 give the path to doctest
975
976 --with-gcc PATH
977 give the path to gcc
978
979 --with-ghc PATH
980 give the path to ghc
981
982 --with-ghc-pkg PATH
983 give the path to ghc-pkg
984
985 --with-ghcjs PATH
986 give the path to ghcjs
987
988 --with-ghcjs-pkg PATH
989 give the path to ghcjs-pkg
990
991 --with-greencard PATH
992 give the path to greencard
993
994 --with-haddock PATH
995 give the path to haddock
996
997 --with-happy PATH
998 give the path to happy
999
1000 --with-haskell-suite PATH
1001 give the path to haskell-suite
1002
1003 --with-haskell-suite-pkg PATH
1004 give the path to haskell-suite-pkg
1005
1006 --with-hmake PATH
1007 give the path to hmake
1008
1009 --with-hpc PATH
1010 give the path to hpc
1011
1012 --with-hsc2hs PATH
1013 give the path to hsc2hs
1014
1015 --with-hscolour PATH
1016 give the path to hscolour
1017
1018 --with-jhc PATH
1019 give the path to jhc
1020
1021 --with-ld PATH
1022 give the path to ld
1023
1024 --with-pkg-config PATH
1025 give the path to pkg-config
1026
1027 --with-runghc PATH
1028 give the path to runghc
1029
1030 --with-strip PATH
1031 give the path to strip
1032
1033 --with-tar PATH
1034 give the path to tar
1035
1036 --with-uhc PATH
1037 give the path to uhc
1038
1039 --alex-option OPT
1040 give an extra option to alex (no need to quote options
1041 containing spaces)
1042
1043 --ar-option OPT
1044 give an extra option to ar (no need to quote options con‐
1045 taining spaces)
1046
1047 --c2hs-option OPT
1048 give an extra option to c2hs (no need to quote options
1049 containing spaces)
1050
1051 --cpphs-option OPT
1052 give an extra option to cpphs (no need to quote options
1053 containing spaces)
1054
1055 --doctest-option OPT
1056 give an extra option to doctest (no need to quote options
1057 containing spaces)
1058
1059 --gcc-option OPT
1060 give an extra option to gcc (no need to quote options
1061 containing spaces)
1062
1063 --ghc-option OPT
1064 give an extra option to ghc (no need to quote options
1065 containing spaces)
1066
1067 --ghc-pkg-option OPT
1068 give an extra option to ghc-pkg (no need to quote options
1069 containing spaces)
1070
1071 --ghcjs-option OPT
1072 give an extra option to ghcjs (no need to quote options
1073 containing spaces)
1074
1075 --ghcjs-pkg-option OPT
1076 give an extra option to ghcjs-pkg (no need to quote
1077 options containing spaces)
1078
1079 --greencard-option OPT
1080 give an extra option to greencard (no need to quote
1081 options containing spaces)
1082
1083 --haddock-option OPT
1084 give an extra option to haddock (no need to quote options
1085 containing spaces)
1086
1087 --happy-option OPT
1088 give an extra option to happy (no need to quote options
1089 containing spaces)
1090
1091 --haskell-suite-option OPT
1092 give an extra option to haskell-suite (no need to quote
1093 options containing spaces)
1094
1095 --haskell-suite-pkg-option OPT
1096 give an extra option to haskell-suite-pkg (no need to
1097 quote options containing spaces)
1098
1099 --hmake-option OPT
1100 give an extra option to hmake (no need to quote options
1101 containing spaces)
1102
1103 --hpc-option OPT
1104 give an extra option to hpc (no need to quote options
1105 containing spaces)
1106
1107 --hsc2hs-option OPT
1108 give an extra option to hsc2hs (no need to quote options
1109 containing spaces)
1110
1111 --hscolour-option OPT
1112 give an extra option to hscolour (no need to quote
1113 options containing spaces)
1114
1115 --jhc-option OPT
1116 give an extra option to jhc (no need to quote options
1117 containing spaces)
1118
1119 --ld-option OPT
1120 give an extra option to ld (no need to quote options con‐
1121 taining spaces)
1122
1123 --pkg-config-option OPT
1124 give an extra option to pkg-config (no need to quote
1125 options containing spaces)
1126
1127 --runghc-option OPT
1128 give an extra option to runghc (no need to quote options
1129 containing spaces)
1130
1131 --strip-option OPT
1132 give an extra option to strip (no need to quote options
1133 containing spaces)
1134
1135 --tar-option OPT
1136 give an extra option to tar (no need to quote options
1137 containing spaces)
1138
1139 --uhc-option OPT
1140 give an extra option to uhc (no need to quote options
1141 containing spaces)
1142
1143 --alex-options OPTS
1144 give extra options to alex
1145
1146 --ar-options OPTS
1147 give extra options to ar
1148
1149 --c2hs-options OPTS
1150 give extra options to c2hs
1151
1152 --cpphs-options OPTS
1153 give extra options to cpphs
1154
1155 --doctest-options OPTS
1156 give extra options to doctest
1157
1158 --gcc-options OPTS
1159 give extra options to gcc
1160
1161 --ghc-options OPTS
1162 give extra options to ghc
1163
1164 --ghc-pkg-options OPTS
1165 give extra options to ghc-pkg
1166
1167 --ghcjs-options OPTS
1168 give extra options to ghcjs
1169
1170 --ghcjs-pkg-options OPTS
1171 give extra options to ghcjs-pkg
1172
1173 --greencard-options OPTS
1174 give extra options to greencard
1175
1176 --haddock-options OPTS
1177 give extra options to haddock
1178
1179 --happy-options OPTS
1180 give extra options to happy
1181
1182 --haskell-suite-options OPTS
1183 give extra options to haskell-suite
1184
1185 --haskell-suite-pkg-options OPTS
1186 give extra options to haskell-suite-pkg
1187
1188 --hmake-options OPTS
1189 give extra options to hmake
1190
1191 --hpc-options OPTS
1192 give extra options to hpc
1193
1194 --hsc2hs-options OPTS
1195 give extra options to hsc2hs
1196
1197 --hscolour-options OPTS
1198 give extra options to hscolour
1199
1200 --jhc-options OPTS
1201 give extra options to jhc
1202
1203 --ld-options OPTS
1204 give extra options to ld
1205
1206 --pkg-config-options OPTS
1207 give extra options to pkg-config
1208
1209 --runghc-options OPTS
1210 give extra options to runghc
1211
1212 --strip-options OPTS
1213 give extra options to strip
1214
1215 --tar-options OPTS
1216 give extra options to tar
1217
1218 --uhc-options OPTS
1219 give extra options to uhc
1220
1221 --cabal-lib-version VERSION
1222 Select which version of the Cabal lib to use to build
1223 packages (useful for testing).
1224
1225 --constraint CONSTRAINT
1226 Specify constraints on a package (version,
1227 installed/source, flags)
1228
1229 --preference CONSTRAINT
1230 Specify preferences (soft constraints) on the version of
1231 a package
1232
1233 --solver SOLVER
1234 Select dependency solver to use (default: modular).
1235 Choices: modular.
1236
1237 --allow-older [DEPS]
1238 Ignore lower bounds in all dependencies or DEPS
1239
1240 --allow-newer [DEPS]
1241 Ignore upper bounds in all dependencies or DEPS
1242
1243 --write-ghc-environment-files always|never|ghc8.4.4+
1244 Whether to create a .ghc.environment file after a suc‐
1245 cessful build (v2-build only)
1246
1247 --enable-documentation
1248 --disable-documentation
1249 building of documentation
1250
1251 --doc-index-file TEMPLATE
1252 A central index of haddock API documentation (template
1253 cannot use $pkgid)
1254
1255 --dry-run
1256 Do not install anything, only print what would be
1257 installed.
1258
1259 --max-backjumps NUM
1260 Maximum number of backjumps allowed while solving
1261 (default: 4000). Use a negative number to enable unlim‐
1262 ited backtracking. Use 0 to disable backtracking com‐
1263 pletely.
1264
1265 --reorder-goals
1266 --no-reorder-goals
1267 Try to reorder goals according to certain heuristics.
1268 Slows things down on average, but may make backtracking
1269 faster for some packages.
1270
1271 --count-conflicts
1272 --no-count-conflicts
1273 Try to speed up solving by preferring goals that are
1274 involved in a lot of conflicts (default).
1275
1276 --minimize-conflict-set
1277 --no-minimize-conflict-set
1278 When there is no solution, try to improve the error mes‐
1279 sage by finding a minimal conflict set (default: false).
1280 May increase run time significantly.
1281
1282 --independent-goals
1283 --no-independent-goals
1284 Treat several goals on the command line as independent.
1285 If several goals depend on the same package, different
1286 versions can be chosen.
1287
1288 --shadow-installed-packages
1289 --no-shadow-installed-packages
1290 If multiple package instances of the same version are
1291 installed, treat all but one as shadowed.
1292
1293 --strong-flags
1294 --no-strong-flags
1295 Do not defer flag choices (this used to be the default in
1296 cabal-install <= 1.20).
1297
1298 --allow-boot-library-installs
1299 --no-allow-boot-library-installs
1300 Allow cabal to install base, ghc-prim, integer-simple,
1301 integer-gmp, and template-haskell.
1302
1303 --reject-unconstrained-dependencies none|all
1304 Require these packages to have constraints on them if
1305 they are to be selected (default: none).
1306
1307 --reinstall
1308 --no-reinstall
1309 Install even if it means installing the same version
1310 again.
1311
1312 --avoid-reinstalls
1313 --no-avoid-reinstalls
1314 Do not select versions that would destructively overwrite
1315 installed packages.
1316
1317 --force-reinstalls
1318 --no-force-reinstalls
1319 Reinstall packages even if they will most likely break
1320 other installed packages.
1321
1322 --upgrade-dependencies
1323 --no-upgrade-dependencies
1324 Pick the latest version for all dependencies, rather than
1325 trying to pick an installed version.
1326
1327 --only-dependencies
1328 --no-only-dependencies
1329 Install only the dependencies necessary to build the
1330 given packages
1331
1332 --dependencies-only
1333 --no-dependencies-only
1334 A synonym for --only-dependencies
1335
1336 --index-state STATE
1337 Use source package index state as it existed at a previ‐
1338 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
1339 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
1340 'HEAD' (default: 'HEAD').
1341
1342 --root-cmd COMMAND
1343 (No longer supported, do not use.)
1344
1345 --symlink-bindir DIR
1346 Add symlinks to installed executables into this direc‐
1347 tory.
1348
1349 --build-summary TEMPLATE
1350 Save build summaries to file (name template can use
1351 $pkgid, $compiler, $os, $arch)
1352
1353 --build-log TEMPLATE
1354 Log all builds to file (name template can use $pkgid,
1355 $compiler, $os, $arch)
1356
1357 --remote-build-reporting LEVEL
1358 Generate build reports to send to a remote server (none,
1359 anonymous or detailed).
1360
1361 --report-planning-failure
1362 Generate build reports when the dependency solver fails.
1363 This is used by the Hackage build bot.
1364
1365 --enable-per-component
1366 --disable-per-component
1367 Per-component builds when possible
1368
1369 --one-shot
1370 --no-one-shot
1371 Do not record the packages in the world file.
1372
1373 --run-tests
1374 Run package test suites during installation.
1375
1376 -j, --jobs [NUM]
1377 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
1378 given).
1379
1380 --keep-going
1381 After a build failure, continue to build other unaffected
1382 packages.
1383
1384 --offline
1385 --no-offline
1386 Don't download packages from the Internet.
1387
1388 --project-file FILE
1389 Set the name of the cabal.project file to search for in
1390 parent directories
1391
1392 --only
1393 Only installs the package in the current directory.
1394
1395 --haddock-hoogle
1396 Generate a hoogle database
1397
1398 --haddock-html
1399 Generate HTML documentation (the default)
1400
1401 --haddock-html-location URL
1402 Location of HTML documentation for pre-requisite packages
1403
1404 --haddock-for-hackage
1405 Collection of flags to generate documentation suitable
1406 for upload to hackage
1407
1408 --haddock-executables
1409 Run haddock for Executables targets
1410
1411 --haddock-tests
1412 Run haddock for Test Suite targets
1413
1414 --haddock-benchmarks
1415 Run haddock for Benchmark targets
1416
1417 --haddock-all
1418 Run haddock for all targets
1419
1420 --haddock-internal
1421 Run haddock for internal modules and include all symbols
1422
1423 --haddock-css PATH
1424 Use PATH as the haddock stylesheet
1425
1426 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
1427 dock-hyperlinked-source
1428 Hyperlink the documentation to the source code
1429
1430 --haddock-quickjump
1431 Generate an index for interactive documentation naviga‐
1432 tion
1433
1434 --haddock-hscolour-css PATH
1435 Use PATH as the HsColour stylesheet
1436
1437 --haddock-contents-location URL
1438 Bake URL in as the location for the contents page
1439
1440 --test-log TEMPLATE
1441 Log all test suite results to file (name template can use
1442 $pkgid, $compiler, $os, $arch, $test-suite, $result)
1443
1444 --test-machine-log TEMPLATE
1445 Produce a machine-readable log file (name template can
1446 use $pkgid, $compiler, $os, $arch, $result)
1447
1448 --test-show-details FILTER
1449
1450 --test-keep-tix-files
1451 keep .tix files for HPC between test runs
1452
1453 --test-wrapper FILE
1454 Run test through a wrapper.
1455
1456 --test-fail-when-no-test-suites
1457 Exit with failure when no test suites are found.
1458
1459 --test-options TEMPLATES
1460 give extra options to test executables (name templates
1461 can use $pkgid, $compiler, $os, $arch, $test-suite)
1462
1463 --test-option TEMPLATE
1464 give extra option to test executables (no need to quote
1465 options containing spaces, name template can use $pkgid,
1466 $compiler, $os, $arch, $test-suite)
1467
1468
1469 cabal new-configure
1470
1471 Usage: cabal new-configure [FLAGS]
1472
1473
1474 Adjust how the project is built by setting additional package flags and
1475 other flags.
1476
1477 The configuration options are written to the 'cabal.project.local' file
1478 (or configuration from the 'cabal.project' file (if any). This combina‐
1479 tion is used as the project configuration for all other commands (such
1480 as 'new-build',
1481
1482 The new-configure command also checks that the project configuration
1483 will work. In particular it checks that there is a consistent set of
1484 dependencies for the project as a whole.
1485
1486 The 'cabal.project.local' file persists across 'new-clean' but is over‐
1487 written on the next use of the 'new-configure' command. The intention
1488 is that the
1489
1490 It is never necessary to use the 'new-configure' command. It is merely
1491 a convenience in cases where you do not want to specify flags to 'new-
1492 build' (and other commands) every time and yet do not want to alter the
1493 'cabal.project' persistently.
1494
1495
1496 Adjust how the project is built by setting additional package flags and
1497 other flags.
1498
1499 The configuration options are written to the 'cabal.project.local' file
1500 (or configuration from the 'cabal.project' file (if any). This combina‐
1501 tion is used as the project configuration for all other commands (such
1502 as 'new-build',
1503
1504 The new-configure command also checks that the project configuration
1505 will work. In particular it checks that there is a consistent set of
1506 dependencies for the project as a whole.
1507
1508 The 'cabal.project.local' file persists across 'new-clean' but is over‐
1509 written on the next use of the 'new-configure' command. The intention
1510 is that the
1511
1512 It is never necessary to use the 'new-configure' command. It is merely
1513 a convenience in cases where you do not want to specify flags to 'new-
1514 build' (and other commands) every time and yet do not want to alter the
1515 'cabal.project' persistently.
1516
1517
1518 Flags:
1519 -v, --verbose [n]
1520 Control verbosity (n is 0--3, default verbosity level is
1521 1)
1522
1523 --builddir, --distdir, --distpref DIR
1524 The directory where Cabal puts generated build files
1525 (default dist)
1526
1527 -g, --ghc
1528 compile with GHC
1529
1530 --ghcjs
1531 compile with GHCJS
1532
1533 --uhc
1534 compile with UHC
1535
1536 --haskell-suite
1537 compile with a haskell-suite compiler
1538
1539 --cabal-file PATH
1540 use this Cabal file
1541
1542 -w, --with-compiler PATH
1543 give the path to a particular compiler
1544
1545 --with-hc-pkg PATH
1546 give the path to the package tool
1547
1548 --prefix DIR
1549 bake this prefix in preparation of installation
1550
1551 --bindir DIR
1552 installation directory for executables
1553
1554 --libdir DIR
1555 installation directory for libraries
1556
1557 --libsubdir DIR
1558 subdirectory of libdir in which libs are installed
1559
1560 --dynlibdir DIR
1561 installation directory for dynamic libraries
1562
1563 --libexecdir DIR
1564 installation directory for program executables
1565
1566 --libexecsubdir DIR
1567 subdirectory of libexecdir in which private executables
1568 are installed
1569
1570 --datadir DIR
1571 installation directory for read-only data
1572
1573 --datasubdir DIR
1574 subdirectory of datadir in which data files are installed
1575
1576 --docdir DIR
1577 installation directory for documentation
1578
1579 --htmldir DIR
1580 installation directory for HTML documentation
1581
1582 --haddockdir DIR
1583 installation directory for haddock interfaces
1584
1585 --sysconfdir DIR
1586 installation directory for configuration files
1587
1588 --program-prefix PREFIX
1589 prefix to be applied to installed executables
1590
1591 --program-suffix SUFFIX
1592 suffix to be applied to installed executables
1593
1594 --enable-library-vanilla
1595 --disable-library-vanilla
1596 Vanilla libraries
1597
1598 -p, --enable-library-profiling
1599 --disable-library-profiling
1600 Library profiling
1601
1602 --enable-shared
1603 --disable-shared
1604 Shared library
1605
1606 --enable-static
1607 --disable-static
1608 Static library
1609
1610 --enable-executable-dynamic
1611 --disable-executable-dynamic
1612 Executable dynamic linking
1613
1614 --enable-executable-static
1615 --disable-executable-static
1616 Executable fully static linking
1617
1618 --enable-profiling
1619 --disable-profiling
1620 Executable and library profiling
1621
1622 --enable-executable-profiling
1623 --disable-executable-profiling
1624 Executable profiling (DEPRECATED)
1625
1626 --profiling-detail level
1627 Profiling detail level for executable and library
1628 (default, none, exported-functions, toplevel-functions,
1629 all-functions).
1630
1631 --library-profiling-detail level
1632 Profiling detail level for libraries only.
1633
1634 -O, --enable-optimization, --enable-optimisation [n]
1635 Build with optimization (n is 0--2, default is 1)
1636
1637 --disable-optimization, --disable-optimisation
1638 Build without optimization
1639
1640 --enable-debug-info [n]
1641 Emit debug info (n is 0--3, default is 0)
1642
1643 --disable-debug-info
1644 Don't emit debug info
1645
1646 --enable-library-for-ghci
1647 --disable-library-for-ghci
1648 compile library for use with GHCi
1649
1650 --enable-split-sections
1651 --disable-split-sections
1652 compile library code such that unneeded definitions can
1653 be dropped from the final executable (GHC 7.8+)
1654
1655 --enable-split-objs
1656 --disable-split-objs
1657 split library into smaller objects to reduce binary sizes
1658 (GHC 6.6+)
1659
1660 --enable-executable-stripping
1661 --disable-executable-stripping
1662 strip executables upon installation to reduce binary
1663 sizes
1664
1665 --enable-library-stripping
1666 --disable-library-stripping
1667 strip libraries upon installation to reduce binary sizes
1668
1669 --configure-option OPT
1670 Extra option for configure
1671
1672 --user
1673 --global
1674 doing a per-user installation
1675
1676 --package-db DB
1677 Append the given package database to the list of package
1678 databases used (to satisfy dependencies and register
1679 into). May be a specific file, 'global' or 'user'. The
1680 initial list is ['global'], ['global', 'user'], or
1681 ['global', $sandbox], depending on context. Use 'clear'
1682 to reset the list to empty. See the user guide for
1683 details.
1684
1685 -f, --flags FLAGS
1686 Force values for the given flags in Cabal conditionals in
1687 the .cabal file. E.g., --flags="debug -usebytestrings"
1688 forces the flag "debug" to true and "usebytestrings" to
1689 false.
1690
1691 --extra-include-dirs PATH
1692 A list of directories to search for header files
1693
1694 --enable-deterministic
1695 --disable-deterministic
1696 Try to be as deterministic as possible (used by the test
1697 suite)
1698
1699 --ipid IPID
1700 Installed package ID to compile this package as
1701
1702 --cid CID
1703 Installed component ID to compile this component as
1704
1705 --extra-lib-dirs PATH
1706 A list of directories to search for external libraries
1707
1708 --extra-framework-dirs PATH
1709 A list of directories to search for external frameworks
1710 (OS X only)
1711
1712 --extra-prog-path PATH
1713 A list of directories to search for required programs (in
1714 addition to the normal search locations)
1715
1716 --instantiate-with NAME=MOD
1717 A mapping of signature names to concrete module instanti‐
1718 ations.
1719
1720 --enable-tests
1721 --disable-tests
1722 dependency checking and compilation for test suites
1723 listed in the package description file.
1724
1725 --enable-coverage
1726 --disable-coverage
1727 build package with Haskell Program Coverage. (GHC only)
1728
1729 --enable-library-coverage
1730 --disable-library-coverage
1731 build package with Haskell Program Coverage. (GHC only)
1732 (DEPRECATED)
1733
1734 --enable-benchmarks
1735 --disable-benchmarks
1736 dependency checking and compilation for benchmarks listed
1737 in the package description file.
1738
1739 --enable-relocatable
1740 --disable-relocatable
1741 building a package that is relocatable. (GHC only)
1742
1743 --disable-response-files
1744 enable workaround for old versions of programs like "ar"
1745 that do not support @file arguments
1746
1747 --allow-depending-on-private-libs
1748 Allow depending on private libraries. If set, the library
1749 visibility check MUST be done externally.
1750
1751 --with-alex PATH
1752 give the path to alex
1753
1754 --with-ar PATH
1755 give the path to ar
1756
1757 --with-c2hs PATH
1758 give the path to c2hs
1759
1760 --with-cpphs PATH
1761 give the path to cpphs
1762
1763 --with-doctest PATH
1764 give the path to doctest
1765
1766 --with-gcc PATH
1767 give the path to gcc
1768
1769 --with-ghc PATH
1770 give the path to ghc
1771
1772 --with-ghc-pkg PATH
1773 give the path to ghc-pkg
1774
1775 --with-ghcjs PATH
1776 give the path to ghcjs
1777
1778 --with-ghcjs-pkg PATH
1779 give the path to ghcjs-pkg
1780
1781 --with-greencard PATH
1782 give the path to greencard
1783
1784 --with-haddock PATH
1785 give the path to haddock
1786
1787 --with-happy PATH
1788 give the path to happy
1789
1790 --with-haskell-suite PATH
1791 give the path to haskell-suite
1792
1793 --with-haskell-suite-pkg PATH
1794 give the path to haskell-suite-pkg
1795
1796 --with-hmake PATH
1797 give the path to hmake
1798
1799 --with-hpc PATH
1800 give the path to hpc
1801
1802 --with-hsc2hs PATH
1803 give the path to hsc2hs
1804
1805 --with-hscolour PATH
1806 give the path to hscolour
1807
1808 --with-jhc PATH
1809 give the path to jhc
1810
1811 --with-ld PATH
1812 give the path to ld
1813
1814 --with-pkg-config PATH
1815 give the path to pkg-config
1816
1817 --with-runghc PATH
1818 give the path to runghc
1819
1820 --with-strip PATH
1821 give the path to strip
1822
1823 --with-tar PATH
1824 give the path to tar
1825
1826 --with-uhc PATH
1827 give the path to uhc
1828
1829 --alex-option OPT
1830 give an extra option to alex (no need to quote options
1831 containing spaces)
1832
1833 --ar-option OPT
1834 give an extra option to ar (no need to quote options con‐
1835 taining spaces)
1836
1837 --c2hs-option OPT
1838 give an extra option to c2hs (no need to quote options
1839 containing spaces)
1840
1841 --cpphs-option OPT
1842 give an extra option to cpphs (no need to quote options
1843 containing spaces)
1844
1845 --doctest-option OPT
1846 give an extra option to doctest (no need to quote options
1847 containing spaces)
1848
1849 --gcc-option OPT
1850 give an extra option to gcc (no need to quote options
1851 containing spaces)
1852
1853 --ghc-option OPT
1854 give an extra option to ghc (no need to quote options
1855 containing spaces)
1856
1857 --ghc-pkg-option OPT
1858 give an extra option to ghc-pkg (no need to quote options
1859 containing spaces)
1860
1861 --ghcjs-option OPT
1862 give an extra option to ghcjs (no need to quote options
1863 containing spaces)
1864
1865 --ghcjs-pkg-option OPT
1866 give an extra option to ghcjs-pkg (no need to quote
1867 options containing spaces)
1868
1869 --greencard-option OPT
1870 give an extra option to greencard (no need to quote
1871 options containing spaces)
1872
1873 --haddock-option OPT
1874 give an extra option to haddock (no need to quote options
1875 containing spaces)
1876
1877 --happy-option OPT
1878 give an extra option to happy (no need to quote options
1879 containing spaces)
1880
1881 --haskell-suite-option OPT
1882 give an extra option to haskell-suite (no need to quote
1883 options containing spaces)
1884
1885 --haskell-suite-pkg-option OPT
1886 give an extra option to haskell-suite-pkg (no need to
1887 quote options containing spaces)
1888
1889 --hmake-option OPT
1890 give an extra option to hmake (no need to quote options
1891 containing spaces)
1892
1893 --hpc-option OPT
1894 give an extra option to hpc (no need to quote options
1895 containing spaces)
1896
1897 --hsc2hs-option OPT
1898 give an extra option to hsc2hs (no need to quote options
1899 containing spaces)
1900
1901 --hscolour-option OPT
1902 give an extra option to hscolour (no need to quote
1903 options containing spaces)
1904
1905 --jhc-option OPT
1906 give an extra option to jhc (no need to quote options
1907 containing spaces)
1908
1909 --ld-option OPT
1910 give an extra option to ld (no need to quote options con‐
1911 taining spaces)
1912
1913 --pkg-config-option OPT
1914 give an extra option to pkg-config (no need to quote
1915 options containing spaces)
1916
1917 --runghc-option OPT
1918 give an extra option to runghc (no need to quote options
1919 containing spaces)
1920
1921 --strip-option OPT
1922 give an extra option to strip (no need to quote options
1923 containing spaces)
1924
1925 --tar-option OPT
1926 give an extra option to tar (no need to quote options
1927 containing spaces)
1928
1929 --uhc-option OPT
1930 give an extra option to uhc (no need to quote options
1931 containing spaces)
1932
1933 --alex-options OPTS
1934 give extra options to alex
1935
1936 --ar-options OPTS
1937 give extra options to ar
1938
1939 --c2hs-options OPTS
1940 give extra options to c2hs
1941
1942 --cpphs-options OPTS
1943 give extra options to cpphs
1944
1945 --doctest-options OPTS
1946 give extra options to doctest
1947
1948 --gcc-options OPTS
1949 give extra options to gcc
1950
1951 --ghc-options OPTS
1952 give extra options to ghc
1953
1954 --ghc-pkg-options OPTS
1955 give extra options to ghc-pkg
1956
1957 --ghcjs-options OPTS
1958 give extra options to ghcjs
1959
1960 --ghcjs-pkg-options OPTS
1961 give extra options to ghcjs-pkg
1962
1963 --greencard-options OPTS
1964 give extra options to greencard
1965
1966 --haddock-options OPTS
1967 give extra options to haddock
1968
1969 --happy-options OPTS
1970 give extra options to happy
1971
1972 --haskell-suite-options OPTS
1973 give extra options to haskell-suite
1974
1975 --haskell-suite-pkg-options OPTS
1976 give extra options to haskell-suite-pkg
1977
1978 --hmake-options OPTS
1979 give extra options to hmake
1980
1981 --hpc-options OPTS
1982 give extra options to hpc
1983
1984 --hsc2hs-options OPTS
1985 give extra options to hsc2hs
1986
1987 --hscolour-options OPTS
1988 give extra options to hscolour
1989
1990 --jhc-options OPTS
1991 give extra options to jhc
1992
1993 --ld-options OPTS
1994 give extra options to ld
1995
1996 --pkg-config-options OPTS
1997 give extra options to pkg-config
1998
1999 --runghc-options OPTS
2000 give extra options to runghc
2001
2002 --strip-options OPTS
2003 give extra options to strip
2004
2005 --tar-options OPTS
2006 give extra options to tar
2007
2008 --uhc-options OPTS
2009 give extra options to uhc
2010
2011 --cabal-lib-version VERSION
2012 Select which version of the Cabal lib to use to build
2013 packages (useful for testing).
2014
2015 --constraint CONSTRAINT
2016 Specify constraints on a package (version,
2017 installed/source, flags)
2018
2019 --preference CONSTRAINT
2020 Specify preferences (soft constraints) on the version of
2021 a package
2022
2023 --solver SOLVER
2024 Select dependency solver to use (default: modular).
2025 Choices: modular.
2026
2027 --allow-older [DEPS]
2028 Ignore lower bounds in all dependencies or DEPS
2029
2030 --allow-newer [DEPS]
2031 Ignore upper bounds in all dependencies or DEPS
2032
2033 --write-ghc-environment-files always|never|ghc8.4.4+
2034 Whether to create a .ghc.environment file after a suc‐
2035 cessful build (v2-build only)
2036
2037 --enable-documentation
2038 --disable-documentation
2039 building of documentation
2040
2041 --doc-index-file TEMPLATE
2042 A central index of haddock API documentation (template
2043 cannot use $pkgid)
2044
2045 --dry-run
2046 Do not install anything, only print what would be
2047 installed.
2048
2049 --max-backjumps NUM
2050 Maximum number of backjumps allowed while solving
2051 (default: 4000). Use a negative number to enable unlim‐
2052 ited backtracking. Use 0 to disable backtracking com‐
2053 pletely.
2054
2055 --reorder-goals
2056 --no-reorder-goals
2057 Try to reorder goals according to certain heuristics.
2058 Slows things down on average, but may make backtracking
2059 faster for some packages.
2060
2061 --count-conflicts
2062 --no-count-conflicts
2063 Try to speed up solving by preferring goals that are
2064 involved in a lot of conflicts (default).
2065
2066 --minimize-conflict-set
2067 --no-minimize-conflict-set
2068 When there is no solution, try to improve the error mes‐
2069 sage by finding a minimal conflict set (default: false).
2070 May increase run time significantly.
2071
2072 --independent-goals
2073 --no-independent-goals
2074 Treat several goals on the command line as independent.
2075 If several goals depend on the same package, different
2076 versions can be chosen.
2077
2078 --shadow-installed-packages
2079 --no-shadow-installed-packages
2080 If multiple package instances of the same version are
2081 installed, treat all but one as shadowed.
2082
2083 --strong-flags
2084 --no-strong-flags
2085 Do not defer flag choices (this used to be the default in
2086 cabal-install <= 1.20).
2087
2088 --allow-boot-library-installs
2089 --no-allow-boot-library-installs
2090 Allow cabal to install base, ghc-prim, integer-simple,
2091 integer-gmp, and template-haskell.
2092
2093 --reject-unconstrained-dependencies none|all
2094 Require these packages to have constraints on them if
2095 they are to be selected (default: none).
2096
2097 --reinstall
2098 --no-reinstall
2099 Install even if it means installing the same version
2100 again.
2101
2102 --avoid-reinstalls
2103 --no-avoid-reinstalls
2104 Do not select versions that would destructively overwrite
2105 installed packages.
2106
2107 --force-reinstalls
2108 --no-force-reinstalls
2109 Reinstall packages even if they will most likely break
2110 other installed packages.
2111
2112 --upgrade-dependencies
2113 --no-upgrade-dependencies
2114 Pick the latest version for all dependencies, rather than
2115 trying to pick an installed version.
2116
2117 --only-dependencies
2118 --no-only-dependencies
2119 Install only the dependencies necessary to build the
2120 given packages
2121
2122 --dependencies-only
2123 --no-dependencies-only
2124 A synonym for --only-dependencies
2125
2126 --index-state STATE
2127 Use source package index state as it existed at a previ‐
2128 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
2129 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
2130 'HEAD' (default: 'HEAD').
2131
2132 --root-cmd COMMAND
2133 (No longer supported, do not use.)
2134
2135 --symlink-bindir DIR
2136 Add symlinks to installed executables into this direc‐
2137 tory.
2138
2139 --build-summary TEMPLATE
2140 Save build summaries to file (name template can use
2141 $pkgid, $compiler, $os, $arch)
2142
2143 --build-log TEMPLATE
2144 Log all builds to file (name template can use $pkgid,
2145 $compiler, $os, $arch)
2146
2147 --remote-build-reporting LEVEL
2148 Generate build reports to send to a remote server (none,
2149 anonymous or detailed).
2150
2151 --report-planning-failure
2152 Generate build reports when the dependency solver fails.
2153 This is used by the Hackage build bot.
2154
2155 --enable-per-component
2156 --disable-per-component
2157 Per-component builds when possible
2158
2159 --one-shot
2160 --no-one-shot
2161 Do not record the packages in the world file.
2162
2163 --run-tests
2164 Run package test suites during installation.
2165
2166 -j, --jobs [NUM]
2167 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
2168 given).
2169
2170 --keep-going
2171 After a build failure, continue to build other unaffected
2172 packages.
2173
2174 --offline
2175 --no-offline
2176 Don't download packages from the Internet.
2177
2178 --project-file FILE
2179 Set the name of the cabal.project file to search for in
2180 parent directories
2181
2182 --only
2183 Only installs the package in the current directory.
2184
2185 --haddock-hoogle
2186 Generate a hoogle database
2187
2188 --haddock-html
2189 Generate HTML documentation (the default)
2190
2191 --haddock-html-location URL
2192 Location of HTML documentation for pre-requisite packages
2193
2194 --haddock-for-hackage
2195 Collection of flags to generate documentation suitable
2196 for upload to hackage
2197
2198 --haddock-executables
2199 Run haddock for Executables targets
2200
2201 --haddock-tests
2202 Run haddock for Test Suite targets
2203
2204 --haddock-benchmarks
2205 Run haddock for Benchmark targets
2206
2207 --haddock-all
2208 Run haddock for all targets
2209
2210 --haddock-internal
2211 Run haddock for internal modules and include all symbols
2212
2213 --haddock-css PATH
2214 Use PATH as the haddock stylesheet
2215
2216 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
2217 dock-hyperlinked-source
2218 Hyperlink the documentation to the source code
2219
2220 --haddock-quickjump
2221 Generate an index for interactive documentation naviga‐
2222 tion
2223
2224 --haddock-hscolour-css PATH
2225 Use PATH as the HsColour stylesheet
2226
2227 --haddock-contents-location URL
2228 Bake URL in as the location for the contents page
2229
2230 --test-log TEMPLATE
2231 Log all test suite results to file (name template can use
2232 $pkgid, $compiler, $os, $arch, $test-suite, $result)
2233
2234 --test-machine-log TEMPLATE
2235 Produce a machine-readable log file (name template can
2236 use $pkgid, $compiler, $os, $arch, $result)
2237
2238 --test-show-details FILTER
2239
2240 --test-keep-tix-files
2241 keep .tix files for HPC between test runs
2242
2243 --test-wrapper FILE
2244 Run test through a wrapper.
2245
2246 --test-fail-when-no-test-suites
2247 Exit with failure when no test suites are found.
2248
2249 --test-options TEMPLATES
2250 give extra options to test executables (name templates
2251 can use $pkgid, $compiler, $os, $arch, $test-suite)
2252
2253 --test-option TEMPLATE
2254 give extra option to test executables (no need to quote
2255 options containing spaces, name template can use $pkgid,
2256 $compiler, $os, $arch, $test-suite)
2257
2258
2259 cabal v2-configure
2260
2261 Usage: cabal v2-configure [FLAGS]
2262
2263
2264 Adjust how the project is built by setting additional package flags and
2265 other flags.
2266
2267 The configuration options are written to the 'cabal.project.local' file
2268 (or configuration from the 'cabal.project' file (if any). This combina‐
2269 tion is used as the project configuration for all other commands (such
2270 as 'v2-build',
2271
2272 The v2-configure command also checks that the project configuration
2273 will work. In particular it checks that there is a consistent set of
2274 dependencies for the project as a whole.
2275
2276 The 'cabal.project.local' file persists across 'v2-clean' but is over‐
2277 written on the next use of the 'v2-configure' command. The intention is
2278 that the
2279
2280 It is never necessary to use the 'v2-configure' command. It is merely a
2281 convenience in cases where you do not want to specify flags to
2282 'v2-build' (and other commands) every time and yet do not want to alter
2283 the 'cabal.project' persistently.
2284
2285
2286 Examples:
2287 cabal v2-configure --with-compiler ghc-7.10.3
2288 Adjust the project configuration to use the given compiler
2289 program and check the resulting configuration works.
2290 cabal v2-configure
2291 Reset the local configuration to empty and check the overall
2292 project configuration works.
2293
2294 Note: this command is part of the new project-based system (aka nix-
2295 style local builds). These features are currently in beta. Please see
2296 http://cabal.readthedocs.io/en/latest/nix-local-build-overview.html for
2297 details and advice on what you can expect to work. If you encounter
2298 problems please file issues at https://github.com/haskell/cabal/issues
2299 and if you have any time to get involved and help with testing, fixing
2300 bugs etc then that is very much appreciated.
2301
2302
2303 Flags:
2304 -v, --verbose [n]
2305 Control verbosity (n is 0--3, default verbosity level is
2306 1)
2307
2308 --builddir, --distdir, --distpref DIR
2309 The directory where Cabal puts generated build files
2310 (default dist)
2311
2312 -g, --ghc
2313 compile with GHC
2314
2315 --ghcjs
2316 compile with GHCJS
2317
2318 --uhc
2319 compile with UHC
2320
2321 --haskell-suite
2322 compile with a haskell-suite compiler
2323
2324 --cabal-file PATH
2325 use this Cabal file
2326
2327 -w, --with-compiler PATH
2328 give the path to a particular compiler
2329
2330 --with-hc-pkg PATH
2331 give the path to the package tool
2332
2333 --prefix DIR
2334 bake this prefix in preparation of installation
2335
2336 --bindir DIR
2337 installation directory for executables
2338
2339 --libdir DIR
2340 installation directory for libraries
2341
2342 --libsubdir DIR
2343 subdirectory of libdir in which libs are installed
2344
2345 --dynlibdir DIR
2346 installation directory for dynamic libraries
2347
2348 --libexecdir DIR
2349 installation directory for program executables
2350
2351 --libexecsubdir DIR
2352 subdirectory of libexecdir in which private executables
2353 are installed
2354
2355 --datadir DIR
2356 installation directory for read-only data
2357
2358 --datasubdir DIR
2359 subdirectory of datadir in which data files are installed
2360
2361 --docdir DIR
2362 installation directory for documentation
2363
2364 --htmldir DIR
2365 installation directory for HTML documentation
2366
2367 --haddockdir DIR
2368 installation directory for haddock interfaces
2369
2370 --sysconfdir DIR
2371 installation directory for configuration files
2372
2373 --program-prefix PREFIX
2374 prefix to be applied to installed executables
2375
2376 --program-suffix SUFFIX
2377 suffix to be applied to installed executables
2378
2379 --enable-library-vanilla
2380 --disable-library-vanilla
2381 Vanilla libraries
2382
2383 -p, --enable-library-profiling
2384 --disable-library-profiling
2385 Library profiling
2386
2387 --enable-shared
2388 --disable-shared
2389 Shared library
2390
2391 --enable-static
2392 --disable-static
2393 Static library
2394
2395 --enable-executable-dynamic
2396 --disable-executable-dynamic
2397 Executable dynamic linking
2398
2399 --enable-executable-static
2400 --disable-executable-static
2401 Executable fully static linking
2402
2403 --enable-profiling
2404 --disable-profiling
2405 Executable and library profiling
2406
2407 --enable-executable-profiling
2408 --disable-executable-profiling
2409 Executable profiling (DEPRECATED)
2410
2411 --profiling-detail level
2412 Profiling detail level for executable and library
2413 (default, none, exported-functions, toplevel-functions,
2414 all-functions).
2415
2416 --library-profiling-detail level
2417 Profiling detail level for libraries only.
2418
2419 -O, --enable-optimization, --enable-optimisation [n]
2420 Build with optimization (n is 0--2, default is 1)
2421
2422 --disable-optimization, --disable-optimisation
2423 Build without optimization
2424
2425 --enable-debug-info [n]
2426 Emit debug info (n is 0--3, default is 0)
2427
2428 --disable-debug-info
2429 Don't emit debug info
2430
2431 --enable-library-for-ghci
2432 --disable-library-for-ghci
2433 compile library for use with GHCi
2434
2435 --enable-split-sections
2436 --disable-split-sections
2437 compile library code such that unneeded definitions can
2438 be dropped from the final executable (GHC 7.8+)
2439
2440 --enable-split-objs
2441 --disable-split-objs
2442 split library into smaller objects to reduce binary sizes
2443 (GHC 6.6+)
2444
2445 --enable-executable-stripping
2446 --disable-executable-stripping
2447 strip executables upon installation to reduce binary
2448 sizes
2449
2450 --enable-library-stripping
2451 --disable-library-stripping
2452 strip libraries upon installation to reduce binary sizes
2453
2454 --configure-option OPT
2455 Extra option for configure
2456
2457 --user
2458 --global
2459 doing a per-user installation
2460
2461 --package-db DB
2462 Append the given package database to the list of package
2463 databases used (to satisfy dependencies and register
2464 into). May be a specific file, 'global' or 'user'. The
2465 initial list is ['global'], ['global', 'user'], or
2466 ['global', $sandbox], depending on context. Use 'clear'
2467 to reset the list to empty. See the user guide for
2468 details.
2469
2470 -f, --flags FLAGS
2471 Force values for the given flags in Cabal conditionals in
2472 the .cabal file. E.g., --flags="debug -usebytestrings"
2473 forces the flag "debug" to true and "usebytestrings" to
2474 false.
2475
2476 --extra-include-dirs PATH
2477 A list of directories to search for header files
2478
2479 --enable-deterministic
2480 --disable-deterministic
2481 Try to be as deterministic as possible (used by the test
2482 suite)
2483
2484 --ipid IPID
2485 Installed package ID to compile this package as
2486
2487 --cid CID
2488 Installed component ID to compile this component as
2489
2490 --extra-lib-dirs PATH
2491 A list of directories to search for external libraries
2492
2493 --extra-framework-dirs PATH
2494 A list of directories to search for external frameworks
2495 (OS X only)
2496
2497 --extra-prog-path PATH
2498 A list of directories to search for required programs (in
2499 addition to the normal search locations)
2500
2501 --instantiate-with NAME=MOD
2502 A mapping of signature names to concrete module instanti‐
2503 ations.
2504
2505 --enable-tests
2506 --disable-tests
2507 dependency checking and compilation for test suites
2508 listed in the package description file.
2509
2510 --enable-coverage
2511 --disable-coverage
2512 build package with Haskell Program Coverage. (GHC only)
2513
2514 --enable-library-coverage
2515 --disable-library-coverage
2516 build package with Haskell Program Coverage. (GHC only)
2517 (DEPRECATED)
2518
2519 --enable-benchmarks
2520 --disable-benchmarks
2521 dependency checking and compilation for benchmarks listed
2522 in the package description file.
2523
2524 --enable-relocatable
2525 --disable-relocatable
2526 building a package that is relocatable. (GHC only)
2527
2528 --disable-response-files
2529 enable workaround for old versions of programs like "ar"
2530 that do not support @file arguments
2531
2532 --allow-depending-on-private-libs
2533 Allow depending on private libraries. If set, the library
2534 visibility check MUST be done externally.
2535
2536 --with-alex PATH
2537 give the path to alex
2538
2539 --with-ar PATH
2540 give the path to ar
2541
2542 --with-c2hs PATH
2543 give the path to c2hs
2544
2545 --with-cpphs PATH
2546 give the path to cpphs
2547
2548 --with-doctest PATH
2549 give the path to doctest
2550
2551 --with-gcc PATH
2552 give the path to gcc
2553
2554 --with-ghc PATH
2555 give the path to ghc
2556
2557 --with-ghc-pkg PATH
2558 give the path to ghc-pkg
2559
2560 --with-ghcjs PATH
2561 give the path to ghcjs
2562
2563 --with-ghcjs-pkg PATH
2564 give the path to ghcjs-pkg
2565
2566 --with-greencard PATH
2567 give the path to greencard
2568
2569 --with-haddock PATH
2570 give the path to haddock
2571
2572 --with-happy PATH
2573 give the path to happy
2574
2575 --with-haskell-suite PATH
2576 give the path to haskell-suite
2577
2578 --with-haskell-suite-pkg PATH
2579 give the path to haskell-suite-pkg
2580
2581 --with-hmake PATH
2582 give the path to hmake
2583
2584 --with-hpc PATH
2585 give the path to hpc
2586
2587 --with-hsc2hs PATH
2588 give the path to hsc2hs
2589
2590 --with-hscolour PATH
2591 give the path to hscolour
2592
2593 --with-jhc PATH
2594 give the path to jhc
2595
2596 --with-ld PATH
2597 give the path to ld
2598
2599 --with-pkg-config PATH
2600 give the path to pkg-config
2601
2602 --with-runghc PATH
2603 give the path to runghc
2604
2605 --with-strip PATH
2606 give the path to strip
2607
2608 --with-tar PATH
2609 give the path to tar
2610
2611 --with-uhc PATH
2612 give the path to uhc
2613
2614 --alex-option OPT
2615 give an extra option to alex (no need to quote options
2616 containing spaces)
2617
2618 --ar-option OPT
2619 give an extra option to ar (no need to quote options con‐
2620 taining spaces)
2621
2622 --c2hs-option OPT
2623 give an extra option to c2hs (no need to quote options
2624 containing spaces)
2625
2626 --cpphs-option OPT
2627 give an extra option to cpphs (no need to quote options
2628 containing spaces)
2629
2630 --doctest-option OPT
2631 give an extra option to doctest (no need to quote options
2632 containing spaces)
2633
2634 --gcc-option OPT
2635 give an extra option to gcc (no need to quote options
2636 containing spaces)
2637
2638 --ghc-option OPT
2639 give an extra option to ghc (no need to quote options
2640 containing spaces)
2641
2642 --ghc-pkg-option OPT
2643 give an extra option to ghc-pkg (no need to quote options
2644 containing spaces)
2645
2646 --ghcjs-option OPT
2647 give an extra option to ghcjs (no need to quote options
2648 containing spaces)
2649
2650 --ghcjs-pkg-option OPT
2651 give an extra option to ghcjs-pkg (no need to quote
2652 options containing spaces)
2653
2654 --greencard-option OPT
2655 give an extra option to greencard (no need to quote
2656 options containing spaces)
2657
2658 --haddock-option OPT
2659 give an extra option to haddock (no need to quote options
2660 containing spaces)
2661
2662 --happy-option OPT
2663 give an extra option to happy (no need to quote options
2664 containing spaces)
2665
2666 --haskell-suite-option OPT
2667 give an extra option to haskell-suite (no need to quote
2668 options containing spaces)
2669
2670 --haskell-suite-pkg-option OPT
2671 give an extra option to haskell-suite-pkg (no need to
2672 quote options containing spaces)
2673
2674 --hmake-option OPT
2675 give an extra option to hmake (no need to quote options
2676 containing spaces)
2677
2678 --hpc-option OPT
2679 give an extra option to hpc (no need to quote options
2680 containing spaces)
2681
2682 --hsc2hs-option OPT
2683 give an extra option to hsc2hs (no need to quote options
2684 containing spaces)
2685
2686 --hscolour-option OPT
2687 give an extra option to hscolour (no need to quote
2688 options containing spaces)
2689
2690 --jhc-option OPT
2691 give an extra option to jhc (no need to quote options
2692 containing spaces)
2693
2694 --ld-option OPT
2695 give an extra option to ld (no need to quote options con‐
2696 taining spaces)
2697
2698 --pkg-config-option OPT
2699 give an extra option to pkg-config (no need to quote
2700 options containing spaces)
2701
2702 --runghc-option OPT
2703 give an extra option to runghc (no need to quote options
2704 containing spaces)
2705
2706 --strip-option OPT
2707 give an extra option to strip (no need to quote options
2708 containing spaces)
2709
2710 --tar-option OPT
2711 give an extra option to tar (no need to quote options
2712 containing spaces)
2713
2714 --uhc-option OPT
2715 give an extra option to uhc (no need to quote options
2716 containing spaces)
2717
2718 --alex-options OPTS
2719 give extra options to alex
2720
2721 --ar-options OPTS
2722 give extra options to ar
2723
2724 --c2hs-options OPTS
2725 give extra options to c2hs
2726
2727 --cpphs-options OPTS
2728 give extra options to cpphs
2729
2730 --doctest-options OPTS
2731 give extra options to doctest
2732
2733 --gcc-options OPTS
2734 give extra options to gcc
2735
2736 --ghc-options OPTS
2737 give extra options to ghc
2738
2739 --ghc-pkg-options OPTS
2740 give extra options to ghc-pkg
2741
2742 --ghcjs-options OPTS
2743 give extra options to ghcjs
2744
2745 --ghcjs-pkg-options OPTS
2746 give extra options to ghcjs-pkg
2747
2748 --greencard-options OPTS
2749 give extra options to greencard
2750
2751 --haddock-options OPTS
2752 give extra options to haddock
2753
2754 --happy-options OPTS
2755 give extra options to happy
2756
2757 --haskell-suite-options OPTS
2758 give extra options to haskell-suite
2759
2760 --haskell-suite-pkg-options OPTS
2761 give extra options to haskell-suite-pkg
2762
2763 --hmake-options OPTS
2764 give extra options to hmake
2765
2766 --hpc-options OPTS
2767 give extra options to hpc
2768
2769 --hsc2hs-options OPTS
2770 give extra options to hsc2hs
2771
2772 --hscolour-options OPTS
2773 give extra options to hscolour
2774
2775 --jhc-options OPTS
2776 give extra options to jhc
2777
2778 --ld-options OPTS
2779 give extra options to ld
2780
2781 --pkg-config-options OPTS
2782 give extra options to pkg-config
2783
2784 --runghc-options OPTS
2785 give extra options to runghc
2786
2787 --strip-options OPTS
2788 give extra options to strip
2789
2790 --tar-options OPTS
2791 give extra options to tar
2792
2793 --uhc-options OPTS
2794 give extra options to uhc
2795
2796 --cabal-lib-version VERSION
2797 Select which version of the Cabal lib to use to build
2798 packages (useful for testing).
2799
2800 --constraint CONSTRAINT
2801 Specify constraints on a package (version,
2802 installed/source, flags)
2803
2804 --preference CONSTRAINT
2805 Specify preferences (soft constraints) on the version of
2806 a package
2807
2808 --solver SOLVER
2809 Select dependency solver to use (default: modular).
2810 Choices: modular.
2811
2812 --allow-older [DEPS]
2813 Ignore lower bounds in all dependencies or DEPS
2814
2815 --allow-newer [DEPS]
2816 Ignore upper bounds in all dependencies or DEPS
2817
2818 --write-ghc-environment-files always|never|ghc8.4.4+
2819 Whether to create a .ghc.environment file after a suc‐
2820 cessful build (v2-build only)
2821
2822 --enable-documentation
2823 --disable-documentation
2824 building of documentation
2825
2826 --doc-index-file TEMPLATE
2827 A central index of haddock API documentation (template
2828 cannot use $pkgid)
2829
2830 --dry-run
2831 Do not install anything, only print what would be
2832 installed.
2833
2834 --max-backjumps NUM
2835 Maximum number of backjumps allowed while solving
2836 (default: 4000). Use a negative number to enable unlim‐
2837 ited backtracking. Use 0 to disable backtracking com‐
2838 pletely.
2839
2840 --reorder-goals
2841 --no-reorder-goals
2842 Try to reorder goals according to certain heuristics.
2843 Slows things down on average, but may make backtracking
2844 faster for some packages.
2845
2846 --count-conflicts
2847 --no-count-conflicts
2848 Try to speed up solving by preferring goals that are
2849 involved in a lot of conflicts (default).
2850
2851 --minimize-conflict-set
2852 --no-minimize-conflict-set
2853 When there is no solution, try to improve the error mes‐
2854 sage by finding a minimal conflict set (default: false).
2855 May increase run time significantly.
2856
2857 --independent-goals
2858 --no-independent-goals
2859 Treat several goals on the command line as independent.
2860 If several goals depend on the same package, different
2861 versions can be chosen.
2862
2863 --shadow-installed-packages
2864 --no-shadow-installed-packages
2865 If multiple package instances of the same version are
2866 installed, treat all but one as shadowed.
2867
2868 --strong-flags
2869 --no-strong-flags
2870 Do not defer flag choices (this used to be the default in
2871 cabal-install <= 1.20).
2872
2873 --allow-boot-library-installs
2874 --no-allow-boot-library-installs
2875 Allow cabal to install base, ghc-prim, integer-simple,
2876 integer-gmp, and template-haskell.
2877
2878 --reject-unconstrained-dependencies none|all
2879 Require these packages to have constraints on them if
2880 they are to be selected (default: none).
2881
2882 --reinstall
2883 --no-reinstall
2884 Install even if it means installing the same version
2885 again.
2886
2887 --avoid-reinstalls
2888 --no-avoid-reinstalls
2889 Do not select versions that would destructively overwrite
2890 installed packages.
2891
2892 --force-reinstalls
2893 --no-force-reinstalls
2894 Reinstall packages even if they will most likely break
2895 other installed packages.
2896
2897 --upgrade-dependencies
2898 --no-upgrade-dependencies
2899 Pick the latest version for all dependencies, rather than
2900 trying to pick an installed version.
2901
2902 --only-dependencies
2903 --no-only-dependencies
2904 Install only the dependencies necessary to build the
2905 given packages
2906
2907 --dependencies-only
2908 --no-dependencies-only
2909 A synonym for --only-dependencies
2910
2911 --index-state STATE
2912 Use source package index state as it existed at a previ‐
2913 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
2914 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
2915 'HEAD' (default: 'HEAD').
2916
2917 --root-cmd COMMAND
2918 (No longer supported, do not use.)
2919
2920 --symlink-bindir DIR
2921 Add symlinks to installed executables into this direc‐
2922 tory.
2923
2924 --build-summary TEMPLATE
2925 Save build summaries to file (name template can use
2926 $pkgid, $compiler, $os, $arch)
2927
2928 --build-log TEMPLATE
2929 Log all builds to file (name template can use $pkgid,
2930 $compiler, $os, $arch)
2931
2932 --remote-build-reporting LEVEL
2933 Generate build reports to send to a remote server (none,
2934 anonymous or detailed).
2935
2936 --report-planning-failure
2937 Generate build reports when the dependency solver fails.
2938 This is used by the Hackage build bot.
2939
2940 --enable-per-component
2941 --disable-per-component
2942 Per-component builds when possible
2943
2944 --one-shot
2945 --no-one-shot
2946 Do not record the packages in the world file.
2947
2948 --run-tests
2949 Run package test suites during installation.
2950
2951 -j, --jobs [NUM]
2952 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
2953 given).
2954
2955 --keep-going
2956 After a build failure, continue to build other unaffected
2957 packages.
2958
2959 --offline
2960 --no-offline
2961 Don't download packages from the Internet.
2962
2963 --project-file FILE
2964 Set the name of the cabal.project file to search for in
2965 parent directories
2966
2967 --only
2968 Only installs the package in the current directory.
2969
2970 --haddock-hoogle
2971 Generate a hoogle database
2972
2973 --haddock-html
2974 Generate HTML documentation (the default)
2975
2976 --haddock-html-location URL
2977 Location of HTML documentation for pre-requisite packages
2978
2979 --haddock-for-hackage
2980 Collection of flags to generate documentation suitable
2981 for upload to hackage
2982
2983 --haddock-executables
2984 Run haddock for Executables targets
2985
2986 --haddock-tests
2987 Run haddock for Test Suite targets
2988
2989 --haddock-benchmarks
2990 Run haddock for Benchmark targets
2991
2992 --haddock-all
2993 Run haddock for all targets
2994
2995 --haddock-internal
2996 Run haddock for internal modules and include all symbols
2997
2998 --haddock-css PATH
2999 Use PATH as the haddock stylesheet
3000
3001 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
3002 dock-hyperlinked-source
3003 Hyperlink the documentation to the source code
3004
3005 --haddock-quickjump
3006 Generate an index for interactive documentation naviga‐
3007 tion
3008
3009 --haddock-hscolour-css PATH
3010 Use PATH as the HsColour stylesheet
3011
3012 --haddock-contents-location URL
3013 Bake URL in as the location for the contents page
3014
3015 --test-log TEMPLATE
3016 Log all test suite results to file (name template can use
3017 $pkgid, $compiler, $os, $arch, $test-suite, $result)
3018
3019 --test-machine-log TEMPLATE
3020 Produce a machine-readable log file (name template can
3021 use $pkgid, $compiler, $os, $arch, $result)
3022
3023 --test-show-details FILTER
3024
3025 --test-keep-tix-files
3026 keep .tix files for HPC between test runs
3027
3028 --test-wrapper FILE
3029 Run test through a wrapper.
3030
3031 --test-fail-when-no-test-suites
3032 Exit with failure when no test suites are found.
3033
3034 --test-options TEMPLATES
3035 give extra options to test executables (name templates
3036 can use $pkgid, $compiler, $os, $arch, $test-suite)
3037
3038 --test-option TEMPLATE
3039 give extra option to test executables (no need to quote
3040 options containing spaces, name template can use $pkgid,
3041 $compiler, $os, $arch, $test-suite)
3042
3043
3044 cabal update
3045
3046 Usage: cabal update [FLAGS] [REPOS]
3047
3048
3049 For all known remote repositories, download the package list.
3050
3051
3052 For all known remote repositories, download the package list.
3053
3054
3055 Flags:
3056 -v, --verbose [n]
3057 Control verbosity (n is 0--3, default verbosity level is
3058 1)
3059
3060 --builddir, --distdir, --distpref DIR
3061 The directory where Cabal puts generated build files
3062 (default dist)
3063
3064 -g, --ghc
3065 compile with GHC
3066
3067 --ghcjs
3068 compile with GHCJS
3069
3070 --uhc
3071 compile with UHC
3072
3073 --haskell-suite
3074 compile with a haskell-suite compiler
3075
3076 --cabal-file PATH
3077 use this Cabal file
3078
3079 -w, --with-compiler PATH
3080 give the path to a particular compiler
3081
3082 --with-hc-pkg PATH
3083 give the path to the package tool
3084
3085 --prefix DIR
3086 bake this prefix in preparation of installation
3087
3088 --bindir DIR
3089 installation directory for executables
3090
3091 --libdir DIR
3092 installation directory for libraries
3093
3094 --libsubdir DIR
3095 subdirectory of libdir in which libs are installed
3096
3097 --dynlibdir DIR
3098 installation directory for dynamic libraries
3099
3100 --libexecdir DIR
3101 installation directory for program executables
3102
3103 --libexecsubdir DIR
3104 subdirectory of libexecdir in which private executables
3105 are installed
3106
3107 --datadir DIR
3108 installation directory for read-only data
3109
3110 --datasubdir DIR
3111 subdirectory of datadir in which data files are installed
3112
3113 --docdir DIR
3114 installation directory for documentation
3115
3116 --htmldir DIR
3117 installation directory for HTML documentation
3118
3119 --haddockdir DIR
3120 installation directory for haddock interfaces
3121
3122 --sysconfdir DIR
3123 installation directory for configuration files
3124
3125 --program-prefix PREFIX
3126 prefix to be applied to installed executables
3127
3128 --program-suffix SUFFIX
3129 suffix to be applied to installed executables
3130
3131 --enable-library-vanilla
3132 --disable-library-vanilla
3133 Vanilla libraries
3134
3135 -p, --enable-library-profiling
3136 --disable-library-profiling
3137 Library profiling
3138
3139 --enable-shared
3140 --disable-shared
3141 Shared library
3142
3143 --enable-static
3144 --disable-static
3145 Static library
3146
3147 --enable-executable-dynamic
3148 --disable-executable-dynamic
3149 Executable dynamic linking
3150
3151 --enable-executable-static
3152 --disable-executable-static
3153 Executable fully static linking
3154
3155 --enable-profiling
3156 --disable-profiling
3157 Executable and library profiling
3158
3159 --enable-executable-profiling
3160 --disable-executable-profiling
3161 Executable profiling (DEPRECATED)
3162
3163 --profiling-detail level
3164 Profiling detail level for executable and library
3165 (default, none, exported-functions, toplevel-functions,
3166 all-functions).
3167
3168 --library-profiling-detail level
3169 Profiling detail level for libraries only.
3170
3171 -O, --enable-optimization, --enable-optimisation [n]
3172 Build with optimization (n is 0--2, default is 1)
3173
3174 --disable-optimization, --disable-optimisation
3175 Build without optimization
3176
3177 --enable-debug-info [n]
3178 Emit debug info (n is 0--3, default is 0)
3179
3180 --disable-debug-info
3181 Don't emit debug info
3182
3183 --enable-library-for-ghci
3184 --disable-library-for-ghci
3185 compile library for use with GHCi
3186
3187 --enable-split-sections
3188 --disable-split-sections
3189 compile library code such that unneeded definitions can
3190 be dropped from the final executable (GHC 7.8+)
3191
3192 --enable-split-objs
3193 --disable-split-objs
3194 split library into smaller objects to reduce binary sizes
3195 (GHC 6.6+)
3196
3197 --enable-executable-stripping
3198 --disable-executable-stripping
3199 strip executables upon installation to reduce binary
3200 sizes
3201
3202 --enable-library-stripping
3203 --disable-library-stripping
3204 strip libraries upon installation to reduce binary sizes
3205
3206 --configure-option OPT
3207 Extra option for configure
3208
3209 --user
3210 --global
3211 doing a per-user installation
3212
3213 --package-db DB
3214 Append the given package database to the list of package
3215 databases used (to satisfy dependencies and register
3216 into). May be a specific file, 'global' or 'user'. The
3217 initial list is ['global'], ['global', 'user'], or
3218 ['global', $sandbox], depending on context. Use 'clear'
3219 to reset the list to empty. See the user guide for
3220 details.
3221
3222 -f, --flags FLAGS
3223 Force values for the given flags in Cabal conditionals in
3224 the .cabal file. E.g., --flags="debug -usebytestrings"
3225 forces the flag "debug" to true and "usebytestrings" to
3226 false.
3227
3228 --extra-include-dirs PATH
3229 A list of directories to search for header files
3230
3231 --enable-deterministic
3232 --disable-deterministic
3233 Try to be as deterministic as possible (used by the test
3234 suite)
3235
3236 --ipid IPID
3237 Installed package ID to compile this package as
3238
3239 --cid CID
3240 Installed component ID to compile this component as
3241
3242 --extra-lib-dirs PATH
3243 A list of directories to search for external libraries
3244
3245 --extra-framework-dirs PATH
3246 A list of directories to search for external frameworks
3247 (OS X only)
3248
3249 --extra-prog-path PATH
3250 A list of directories to search for required programs (in
3251 addition to the normal search locations)
3252
3253 --instantiate-with NAME=MOD
3254 A mapping of signature names to concrete module instanti‐
3255 ations.
3256
3257 --enable-tests
3258 --disable-tests
3259 dependency checking and compilation for test suites
3260 listed in the package description file.
3261
3262 --enable-coverage
3263 --disable-coverage
3264 build package with Haskell Program Coverage. (GHC only)
3265
3266 --enable-library-coverage
3267 --disable-library-coverage
3268 build package with Haskell Program Coverage. (GHC only)
3269 (DEPRECATED)
3270
3271 --enable-benchmarks
3272 --disable-benchmarks
3273 dependency checking and compilation for benchmarks listed
3274 in the package description file.
3275
3276 --enable-relocatable
3277 --disable-relocatable
3278 building a package that is relocatable. (GHC only)
3279
3280 --disable-response-files
3281 enable workaround for old versions of programs like "ar"
3282 that do not support @file arguments
3283
3284 --allow-depending-on-private-libs
3285 Allow depending on private libraries. If set, the library
3286 visibility check MUST be done externally.
3287
3288 --with-alex PATH
3289 give the path to alex
3290
3291 --with-ar PATH
3292 give the path to ar
3293
3294 --with-c2hs PATH
3295 give the path to c2hs
3296
3297 --with-cpphs PATH
3298 give the path to cpphs
3299
3300 --with-doctest PATH
3301 give the path to doctest
3302
3303 --with-gcc PATH
3304 give the path to gcc
3305
3306 --with-ghc PATH
3307 give the path to ghc
3308
3309 --with-ghc-pkg PATH
3310 give the path to ghc-pkg
3311
3312 --with-ghcjs PATH
3313 give the path to ghcjs
3314
3315 --with-ghcjs-pkg PATH
3316 give the path to ghcjs-pkg
3317
3318 --with-greencard PATH
3319 give the path to greencard
3320
3321 --with-haddock PATH
3322 give the path to haddock
3323
3324 --with-happy PATH
3325 give the path to happy
3326
3327 --with-haskell-suite PATH
3328 give the path to haskell-suite
3329
3330 --with-haskell-suite-pkg PATH
3331 give the path to haskell-suite-pkg
3332
3333 --with-hmake PATH
3334 give the path to hmake
3335
3336 --with-hpc PATH
3337 give the path to hpc
3338
3339 --with-hsc2hs PATH
3340 give the path to hsc2hs
3341
3342 --with-hscolour PATH
3343 give the path to hscolour
3344
3345 --with-jhc PATH
3346 give the path to jhc
3347
3348 --with-ld PATH
3349 give the path to ld
3350
3351 --with-pkg-config PATH
3352 give the path to pkg-config
3353
3354 --with-runghc PATH
3355 give the path to runghc
3356
3357 --with-strip PATH
3358 give the path to strip
3359
3360 --with-tar PATH
3361 give the path to tar
3362
3363 --with-uhc PATH
3364 give the path to uhc
3365
3366 --alex-option OPT
3367 give an extra option to alex (no need to quote options
3368 containing spaces)
3369
3370 --ar-option OPT
3371 give an extra option to ar (no need to quote options con‐
3372 taining spaces)
3373
3374 --c2hs-option OPT
3375 give an extra option to c2hs (no need to quote options
3376 containing spaces)
3377
3378 --cpphs-option OPT
3379 give an extra option to cpphs (no need to quote options
3380 containing spaces)
3381
3382 --doctest-option OPT
3383 give an extra option to doctest (no need to quote options
3384 containing spaces)
3385
3386 --gcc-option OPT
3387 give an extra option to gcc (no need to quote options
3388 containing spaces)
3389
3390 --ghc-option OPT
3391 give an extra option to ghc (no need to quote options
3392 containing spaces)
3393
3394 --ghc-pkg-option OPT
3395 give an extra option to ghc-pkg (no need to quote options
3396 containing spaces)
3397
3398 --ghcjs-option OPT
3399 give an extra option to ghcjs (no need to quote options
3400 containing spaces)
3401
3402 --ghcjs-pkg-option OPT
3403 give an extra option to ghcjs-pkg (no need to quote
3404 options containing spaces)
3405
3406 --greencard-option OPT
3407 give an extra option to greencard (no need to quote
3408 options containing spaces)
3409
3410 --haddock-option OPT
3411 give an extra option to haddock (no need to quote options
3412 containing spaces)
3413
3414 --happy-option OPT
3415 give an extra option to happy (no need to quote options
3416 containing spaces)
3417
3418 --haskell-suite-option OPT
3419 give an extra option to haskell-suite (no need to quote
3420 options containing spaces)
3421
3422 --haskell-suite-pkg-option OPT
3423 give an extra option to haskell-suite-pkg (no need to
3424 quote options containing spaces)
3425
3426 --hmake-option OPT
3427 give an extra option to hmake (no need to quote options
3428 containing spaces)
3429
3430 --hpc-option OPT
3431 give an extra option to hpc (no need to quote options
3432 containing spaces)
3433
3434 --hsc2hs-option OPT
3435 give an extra option to hsc2hs (no need to quote options
3436 containing spaces)
3437
3438 --hscolour-option OPT
3439 give an extra option to hscolour (no need to quote
3440 options containing spaces)
3441
3442 --jhc-option OPT
3443 give an extra option to jhc (no need to quote options
3444 containing spaces)
3445
3446 --ld-option OPT
3447 give an extra option to ld (no need to quote options con‐
3448 taining spaces)
3449
3450 --pkg-config-option OPT
3451 give an extra option to pkg-config (no need to quote
3452 options containing spaces)
3453
3454 --runghc-option OPT
3455 give an extra option to runghc (no need to quote options
3456 containing spaces)
3457
3458 --strip-option OPT
3459 give an extra option to strip (no need to quote options
3460 containing spaces)
3461
3462 --tar-option OPT
3463 give an extra option to tar (no need to quote options
3464 containing spaces)
3465
3466 --uhc-option OPT
3467 give an extra option to uhc (no need to quote options
3468 containing spaces)
3469
3470 --alex-options OPTS
3471 give extra options to alex
3472
3473 --ar-options OPTS
3474 give extra options to ar
3475
3476 --c2hs-options OPTS
3477 give extra options to c2hs
3478
3479 --cpphs-options OPTS
3480 give extra options to cpphs
3481
3482 --doctest-options OPTS
3483 give extra options to doctest
3484
3485 --gcc-options OPTS
3486 give extra options to gcc
3487
3488 --ghc-options OPTS
3489 give extra options to ghc
3490
3491 --ghc-pkg-options OPTS
3492 give extra options to ghc-pkg
3493
3494 --ghcjs-options OPTS
3495 give extra options to ghcjs
3496
3497 --ghcjs-pkg-options OPTS
3498 give extra options to ghcjs-pkg
3499
3500 --greencard-options OPTS
3501 give extra options to greencard
3502
3503 --haddock-options OPTS
3504 give extra options to haddock
3505
3506 --happy-options OPTS
3507 give extra options to happy
3508
3509 --haskell-suite-options OPTS
3510 give extra options to haskell-suite
3511
3512 --haskell-suite-pkg-options OPTS
3513 give extra options to haskell-suite-pkg
3514
3515 --hmake-options OPTS
3516 give extra options to hmake
3517
3518 --hpc-options OPTS
3519 give extra options to hpc
3520
3521 --hsc2hs-options OPTS
3522 give extra options to hsc2hs
3523
3524 --hscolour-options OPTS
3525 give extra options to hscolour
3526
3527 --jhc-options OPTS
3528 give extra options to jhc
3529
3530 --ld-options OPTS
3531 give extra options to ld
3532
3533 --pkg-config-options OPTS
3534 give extra options to pkg-config
3535
3536 --runghc-options OPTS
3537 give extra options to runghc
3538
3539 --strip-options OPTS
3540 give extra options to strip
3541
3542 --tar-options OPTS
3543 give extra options to tar
3544
3545 --uhc-options OPTS
3546 give extra options to uhc
3547
3548 --cabal-lib-version VERSION
3549 Select which version of the Cabal lib to use to build
3550 packages (useful for testing).
3551
3552 --constraint CONSTRAINT
3553 Specify constraints on a package (version,
3554 installed/source, flags)
3555
3556 --preference CONSTRAINT
3557 Specify preferences (soft constraints) on the version of
3558 a package
3559
3560 --solver SOLVER
3561 Select dependency solver to use (default: modular).
3562 Choices: modular.
3563
3564 --allow-older [DEPS]
3565 Ignore lower bounds in all dependencies or DEPS
3566
3567 --allow-newer [DEPS]
3568 Ignore upper bounds in all dependencies or DEPS
3569
3570 --write-ghc-environment-files always|never|ghc8.4.4+
3571 Whether to create a .ghc.environment file after a suc‐
3572 cessful build (v2-build only)
3573
3574 --enable-documentation
3575 --disable-documentation
3576 building of documentation
3577
3578 --doc-index-file TEMPLATE
3579 A central index of haddock API documentation (template
3580 cannot use $pkgid)
3581
3582 --dry-run
3583 Do not install anything, only print what would be
3584 installed.
3585
3586 --max-backjumps NUM
3587 Maximum number of backjumps allowed while solving
3588 (default: 4000). Use a negative number to enable unlim‐
3589 ited backtracking. Use 0 to disable backtracking com‐
3590 pletely.
3591
3592 --reorder-goals
3593 --no-reorder-goals
3594 Try to reorder goals according to certain heuristics.
3595 Slows things down on average, but may make backtracking
3596 faster for some packages.
3597
3598 --count-conflicts
3599 --no-count-conflicts
3600 Try to speed up solving by preferring goals that are
3601 involved in a lot of conflicts (default).
3602
3603 --minimize-conflict-set
3604 --no-minimize-conflict-set
3605 When there is no solution, try to improve the error mes‐
3606 sage by finding a minimal conflict set (default: false).
3607 May increase run time significantly.
3608
3609 --independent-goals
3610 --no-independent-goals
3611 Treat several goals on the command line as independent.
3612 If several goals depend on the same package, different
3613 versions can be chosen.
3614
3615 --shadow-installed-packages
3616 --no-shadow-installed-packages
3617 If multiple package instances of the same version are
3618 installed, treat all but one as shadowed.
3619
3620 --strong-flags
3621 --no-strong-flags
3622 Do not defer flag choices (this used to be the default in
3623 cabal-install <= 1.20).
3624
3625 --allow-boot-library-installs
3626 --no-allow-boot-library-installs
3627 Allow cabal to install base, ghc-prim, integer-simple,
3628 integer-gmp, and template-haskell.
3629
3630 --reject-unconstrained-dependencies none|all
3631 Require these packages to have constraints on them if
3632 they are to be selected (default: none).
3633
3634 --reinstall
3635 --no-reinstall
3636 Install even if it means installing the same version
3637 again.
3638
3639 --avoid-reinstalls
3640 --no-avoid-reinstalls
3641 Do not select versions that would destructively overwrite
3642 installed packages.
3643
3644 --force-reinstalls
3645 --no-force-reinstalls
3646 Reinstall packages even if they will most likely break
3647 other installed packages.
3648
3649 --upgrade-dependencies
3650 --no-upgrade-dependencies
3651 Pick the latest version for all dependencies, rather than
3652 trying to pick an installed version.
3653
3654 --only-dependencies
3655 --no-only-dependencies
3656 Install only the dependencies necessary to build the
3657 given packages
3658
3659 --dependencies-only
3660 --no-dependencies-only
3661 A synonym for --only-dependencies
3662
3663 --index-state STATE
3664 Use source package index state as it existed at a previ‐
3665 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
3666 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
3667 'HEAD' (default: 'HEAD').
3668
3669 --root-cmd COMMAND
3670 (No longer supported, do not use.)
3671
3672 --symlink-bindir DIR
3673 Add symlinks to installed executables into this direc‐
3674 tory.
3675
3676 --build-summary TEMPLATE
3677 Save build summaries to file (name template can use
3678 $pkgid, $compiler, $os, $arch)
3679
3680 --build-log TEMPLATE
3681 Log all builds to file (name template can use $pkgid,
3682 $compiler, $os, $arch)
3683
3684 --remote-build-reporting LEVEL
3685 Generate build reports to send to a remote server (none,
3686 anonymous or detailed).
3687
3688 --report-planning-failure
3689 Generate build reports when the dependency solver fails.
3690 This is used by the Hackage build bot.
3691
3692 --enable-per-component
3693 --disable-per-component
3694 Per-component builds when possible
3695
3696 --one-shot
3697 --no-one-shot
3698 Do not record the packages in the world file.
3699
3700 --run-tests
3701 Run package test suites during installation.
3702
3703 -j, --jobs [NUM]
3704 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
3705 given).
3706
3707 --keep-going
3708 After a build failure, continue to build other unaffected
3709 packages.
3710
3711 --offline
3712 --no-offline
3713 Don't download packages from the Internet.
3714
3715 --project-file FILE
3716 Set the name of the cabal.project file to search for in
3717 parent directories
3718
3719 --only
3720 Only installs the package in the current directory.
3721
3722 --haddock-hoogle
3723 Generate a hoogle database
3724
3725 --haddock-html
3726 Generate HTML documentation (the default)
3727
3728 --haddock-html-location URL
3729 Location of HTML documentation for pre-requisite packages
3730
3731 --haddock-for-hackage
3732 Collection of flags to generate documentation suitable
3733 for upload to hackage
3734
3735 --haddock-executables
3736 Run haddock for Executables targets
3737
3738 --haddock-tests
3739 Run haddock for Test Suite targets
3740
3741 --haddock-benchmarks
3742 Run haddock for Benchmark targets
3743
3744 --haddock-all
3745 Run haddock for all targets
3746
3747 --haddock-internal
3748 Run haddock for internal modules and include all symbols
3749
3750 --haddock-css PATH
3751 Use PATH as the haddock stylesheet
3752
3753 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
3754 dock-hyperlinked-source
3755 Hyperlink the documentation to the source code
3756
3757 --haddock-quickjump
3758 Generate an index for interactive documentation naviga‐
3759 tion
3760
3761 --haddock-hscolour-css PATH
3762 Use PATH as the HsColour stylesheet
3763
3764 --haddock-contents-location URL
3765 Bake URL in as the location for the contents page
3766
3767 --test-log TEMPLATE
3768 Log all test suite results to file (name template can use
3769 $pkgid, $compiler, $os, $arch, $test-suite, $result)
3770
3771 --test-machine-log TEMPLATE
3772 Produce a machine-readable log file (name template can
3773 use $pkgid, $compiler, $os, $arch, $result)
3774
3775 --test-show-details FILTER
3776
3777 --test-keep-tix-files
3778 keep .tix files for HPC between test runs
3779
3780 --test-wrapper FILE
3781 Run test through a wrapper.
3782
3783 --test-fail-when-no-test-suites
3784 Exit with failure when no test suites are found.
3785
3786 --test-options TEMPLATES
3787 give extra options to test executables (name templates
3788 can use $pkgid, $compiler, $os, $arch, $test-suite)
3789
3790 --test-option TEMPLATE
3791 give extra option to test executables (no need to quote
3792 options containing spaces, name template can use $pkgid,
3793 $compiler, $os, $arch, $test-suite)
3794
3795
3796 cabal new-update
3797
3798 Usage: cabal new-update [FLAGS] [REPOS]
3799
3800
3801 For all known remote repositories, download the package list.
3802
3803
3804 For all known remote repositories, download the package list.
3805
3806
3807 Flags:
3808 -v, --verbose [n]
3809 Control verbosity (n is 0--3, default verbosity level is
3810 1)
3811
3812 --builddir, --distdir, --distpref DIR
3813 The directory where Cabal puts generated build files
3814 (default dist)
3815
3816 -g, --ghc
3817 compile with GHC
3818
3819 --ghcjs
3820 compile with GHCJS
3821
3822 --uhc
3823 compile with UHC
3824
3825 --haskell-suite
3826 compile with a haskell-suite compiler
3827
3828 --cabal-file PATH
3829 use this Cabal file
3830
3831 -w, --with-compiler PATH
3832 give the path to a particular compiler
3833
3834 --with-hc-pkg PATH
3835 give the path to the package tool
3836
3837 --prefix DIR
3838 bake this prefix in preparation of installation
3839
3840 --bindir DIR
3841 installation directory for executables
3842
3843 --libdir DIR
3844 installation directory for libraries
3845
3846 --libsubdir DIR
3847 subdirectory of libdir in which libs are installed
3848
3849 --dynlibdir DIR
3850 installation directory for dynamic libraries
3851
3852 --libexecdir DIR
3853 installation directory for program executables
3854
3855 --libexecsubdir DIR
3856 subdirectory of libexecdir in which private executables
3857 are installed
3858
3859 --datadir DIR
3860 installation directory for read-only data
3861
3862 --datasubdir DIR
3863 subdirectory of datadir in which data files are installed
3864
3865 --docdir DIR
3866 installation directory for documentation
3867
3868 --htmldir DIR
3869 installation directory for HTML documentation
3870
3871 --haddockdir DIR
3872 installation directory for haddock interfaces
3873
3874 --sysconfdir DIR
3875 installation directory for configuration files
3876
3877 --program-prefix PREFIX
3878 prefix to be applied to installed executables
3879
3880 --program-suffix SUFFIX
3881 suffix to be applied to installed executables
3882
3883 --enable-library-vanilla
3884 --disable-library-vanilla
3885 Vanilla libraries
3886
3887 -p, --enable-library-profiling
3888 --disable-library-profiling
3889 Library profiling
3890
3891 --enable-shared
3892 --disable-shared
3893 Shared library
3894
3895 --enable-static
3896 --disable-static
3897 Static library
3898
3899 --enable-executable-dynamic
3900 --disable-executable-dynamic
3901 Executable dynamic linking
3902
3903 --enable-executable-static
3904 --disable-executable-static
3905 Executable fully static linking
3906
3907 --enable-profiling
3908 --disable-profiling
3909 Executable and library profiling
3910
3911 --enable-executable-profiling
3912 --disable-executable-profiling
3913 Executable profiling (DEPRECATED)
3914
3915 --profiling-detail level
3916 Profiling detail level for executable and library
3917 (default, none, exported-functions, toplevel-functions,
3918 all-functions).
3919
3920 --library-profiling-detail level
3921 Profiling detail level for libraries only.
3922
3923 -O, --enable-optimization, --enable-optimisation [n]
3924 Build with optimization (n is 0--2, default is 1)
3925
3926 --disable-optimization, --disable-optimisation
3927 Build without optimization
3928
3929 --enable-debug-info [n]
3930 Emit debug info (n is 0--3, default is 0)
3931
3932 --disable-debug-info
3933 Don't emit debug info
3934
3935 --enable-library-for-ghci
3936 --disable-library-for-ghci
3937 compile library for use with GHCi
3938
3939 --enable-split-sections
3940 --disable-split-sections
3941 compile library code such that unneeded definitions can
3942 be dropped from the final executable (GHC 7.8+)
3943
3944 --enable-split-objs
3945 --disable-split-objs
3946 split library into smaller objects to reduce binary sizes
3947 (GHC 6.6+)
3948
3949 --enable-executable-stripping
3950 --disable-executable-stripping
3951 strip executables upon installation to reduce binary
3952 sizes
3953
3954 --enable-library-stripping
3955 --disable-library-stripping
3956 strip libraries upon installation to reduce binary sizes
3957
3958 --configure-option OPT
3959 Extra option for configure
3960
3961 --user
3962 --global
3963 doing a per-user installation
3964
3965 --package-db DB
3966 Append the given package database to the list of package
3967 databases used (to satisfy dependencies and register
3968 into). May be a specific file, 'global' or 'user'. The
3969 initial list is ['global'], ['global', 'user'], or
3970 ['global', $sandbox], depending on context. Use 'clear'
3971 to reset the list to empty. See the user guide for
3972 details.
3973
3974 -f, --flags FLAGS
3975 Force values for the given flags in Cabal conditionals in
3976 the .cabal file. E.g., --flags="debug -usebytestrings"
3977 forces the flag "debug" to true and "usebytestrings" to
3978 false.
3979
3980 --extra-include-dirs PATH
3981 A list of directories to search for header files
3982
3983 --enable-deterministic
3984 --disable-deterministic
3985 Try to be as deterministic as possible (used by the test
3986 suite)
3987
3988 --ipid IPID
3989 Installed package ID to compile this package as
3990
3991 --cid CID
3992 Installed component ID to compile this component as
3993
3994 --extra-lib-dirs PATH
3995 A list of directories to search for external libraries
3996
3997 --extra-framework-dirs PATH
3998 A list of directories to search for external frameworks
3999 (OS X only)
4000
4001 --extra-prog-path PATH
4002 A list of directories to search for required programs (in
4003 addition to the normal search locations)
4004
4005 --instantiate-with NAME=MOD
4006 A mapping of signature names to concrete module instanti‐
4007 ations.
4008
4009 --enable-tests
4010 --disable-tests
4011 dependency checking and compilation for test suites
4012 listed in the package description file.
4013
4014 --enable-coverage
4015 --disable-coverage
4016 build package with Haskell Program Coverage. (GHC only)
4017
4018 --enable-library-coverage
4019 --disable-library-coverage
4020 build package with Haskell Program Coverage. (GHC only)
4021 (DEPRECATED)
4022
4023 --enable-benchmarks
4024 --disable-benchmarks
4025 dependency checking and compilation for benchmarks listed
4026 in the package description file.
4027
4028 --enable-relocatable
4029 --disable-relocatable
4030 building a package that is relocatable. (GHC only)
4031
4032 --disable-response-files
4033 enable workaround for old versions of programs like "ar"
4034 that do not support @file arguments
4035
4036 --allow-depending-on-private-libs
4037 Allow depending on private libraries. If set, the library
4038 visibility check MUST be done externally.
4039
4040 --with-alex PATH
4041 give the path to alex
4042
4043 --with-ar PATH
4044 give the path to ar
4045
4046 --with-c2hs PATH
4047 give the path to c2hs
4048
4049 --with-cpphs PATH
4050 give the path to cpphs
4051
4052 --with-doctest PATH
4053 give the path to doctest
4054
4055 --with-gcc PATH
4056 give the path to gcc
4057
4058 --with-ghc PATH
4059 give the path to ghc
4060
4061 --with-ghc-pkg PATH
4062 give the path to ghc-pkg
4063
4064 --with-ghcjs PATH
4065 give the path to ghcjs
4066
4067 --with-ghcjs-pkg PATH
4068 give the path to ghcjs-pkg
4069
4070 --with-greencard PATH
4071 give the path to greencard
4072
4073 --with-haddock PATH
4074 give the path to haddock
4075
4076 --with-happy PATH
4077 give the path to happy
4078
4079 --with-haskell-suite PATH
4080 give the path to haskell-suite
4081
4082 --with-haskell-suite-pkg PATH
4083 give the path to haskell-suite-pkg
4084
4085 --with-hmake PATH
4086 give the path to hmake
4087
4088 --with-hpc PATH
4089 give the path to hpc
4090
4091 --with-hsc2hs PATH
4092 give the path to hsc2hs
4093
4094 --with-hscolour PATH
4095 give the path to hscolour
4096
4097 --with-jhc PATH
4098 give the path to jhc
4099
4100 --with-ld PATH
4101 give the path to ld
4102
4103 --with-pkg-config PATH
4104 give the path to pkg-config
4105
4106 --with-runghc PATH
4107 give the path to runghc
4108
4109 --with-strip PATH
4110 give the path to strip
4111
4112 --with-tar PATH
4113 give the path to tar
4114
4115 --with-uhc PATH
4116 give the path to uhc
4117
4118 --alex-option OPT
4119 give an extra option to alex (no need to quote options
4120 containing spaces)
4121
4122 --ar-option OPT
4123 give an extra option to ar (no need to quote options con‐
4124 taining spaces)
4125
4126 --c2hs-option OPT
4127 give an extra option to c2hs (no need to quote options
4128 containing spaces)
4129
4130 --cpphs-option OPT
4131 give an extra option to cpphs (no need to quote options
4132 containing spaces)
4133
4134 --doctest-option OPT
4135 give an extra option to doctest (no need to quote options
4136 containing spaces)
4137
4138 --gcc-option OPT
4139 give an extra option to gcc (no need to quote options
4140 containing spaces)
4141
4142 --ghc-option OPT
4143 give an extra option to ghc (no need to quote options
4144 containing spaces)
4145
4146 --ghc-pkg-option OPT
4147 give an extra option to ghc-pkg (no need to quote options
4148 containing spaces)
4149
4150 --ghcjs-option OPT
4151 give an extra option to ghcjs (no need to quote options
4152 containing spaces)
4153
4154 --ghcjs-pkg-option OPT
4155 give an extra option to ghcjs-pkg (no need to quote
4156 options containing spaces)
4157
4158 --greencard-option OPT
4159 give an extra option to greencard (no need to quote
4160 options containing spaces)
4161
4162 --haddock-option OPT
4163 give an extra option to haddock (no need to quote options
4164 containing spaces)
4165
4166 --happy-option OPT
4167 give an extra option to happy (no need to quote options
4168 containing spaces)
4169
4170 --haskell-suite-option OPT
4171 give an extra option to haskell-suite (no need to quote
4172 options containing spaces)
4173
4174 --haskell-suite-pkg-option OPT
4175 give an extra option to haskell-suite-pkg (no need to
4176 quote options containing spaces)
4177
4178 --hmake-option OPT
4179 give an extra option to hmake (no need to quote options
4180 containing spaces)
4181
4182 --hpc-option OPT
4183 give an extra option to hpc (no need to quote options
4184 containing spaces)
4185
4186 --hsc2hs-option OPT
4187 give an extra option to hsc2hs (no need to quote options
4188 containing spaces)
4189
4190 --hscolour-option OPT
4191 give an extra option to hscolour (no need to quote
4192 options containing spaces)
4193
4194 --jhc-option OPT
4195 give an extra option to jhc (no need to quote options
4196 containing spaces)
4197
4198 --ld-option OPT
4199 give an extra option to ld (no need to quote options con‐
4200 taining spaces)
4201
4202 --pkg-config-option OPT
4203 give an extra option to pkg-config (no need to quote
4204 options containing spaces)
4205
4206 --runghc-option OPT
4207 give an extra option to runghc (no need to quote options
4208 containing spaces)
4209
4210 --strip-option OPT
4211 give an extra option to strip (no need to quote options
4212 containing spaces)
4213
4214 --tar-option OPT
4215 give an extra option to tar (no need to quote options
4216 containing spaces)
4217
4218 --uhc-option OPT
4219 give an extra option to uhc (no need to quote options
4220 containing spaces)
4221
4222 --alex-options OPTS
4223 give extra options to alex
4224
4225 --ar-options OPTS
4226 give extra options to ar
4227
4228 --c2hs-options OPTS
4229 give extra options to c2hs
4230
4231 --cpphs-options OPTS
4232 give extra options to cpphs
4233
4234 --doctest-options OPTS
4235 give extra options to doctest
4236
4237 --gcc-options OPTS
4238 give extra options to gcc
4239
4240 --ghc-options OPTS
4241 give extra options to ghc
4242
4243 --ghc-pkg-options OPTS
4244 give extra options to ghc-pkg
4245
4246 --ghcjs-options OPTS
4247 give extra options to ghcjs
4248
4249 --ghcjs-pkg-options OPTS
4250 give extra options to ghcjs-pkg
4251
4252 --greencard-options OPTS
4253 give extra options to greencard
4254
4255 --haddock-options OPTS
4256 give extra options to haddock
4257
4258 --happy-options OPTS
4259 give extra options to happy
4260
4261 --haskell-suite-options OPTS
4262 give extra options to haskell-suite
4263
4264 --haskell-suite-pkg-options OPTS
4265 give extra options to haskell-suite-pkg
4266
4267 --hmake-options OPTS
4268 give extra options to hmake
4269
4270 --hpc-options OPTS
4271 give extra options to hpc
4272
4273 --hsc2hs-options OPTS
4274 give extra options to hsc2hs
4275
4276 --hscolour-options OPTS
4277 give extra options to hscolour
4278
4279 --jhc-options OPTS
4280 give extra options to jhc
4281
4282 --ld-options OPTS
4283 give extra options to ld
4284
4285 --pkg-config-options OPTS
4286 give extra options to pkg-config
4287
4288 --runghc-options OPTS
4289 give extra options to runghc
4290
4291 --strip-options OPTS
4292 give extra options to strip
4293
4294 --tar-options OPTS
4295 give extra options to tar
4296
4297 --uhc-options OPTS
4298 give extra options to uhc
4299
4300 --cabal-lib-version VERSION
4301 Select which version of the Cabal lib to use to build
4302 packages (useful for testing).
4303
4304 --constraint CONSTRAINT
4305 Specify constraints on a package (version,
4306 installed/source, flags)
4307
4308 --preference CONSTRAINT
4309 Specify preferences (soft constraints) on the version of
4310 a package
4311
4312 --solver SOLVER
4313 Select dependency solver to use (default: modular).
4314 Choices: modular.
4315
4316 --allow-older [DEPS]
4317 Ignore lower bounds in all dependencies or DEPS
4318
4319 --allow-newer [DEPS]
4320 Ignore upper bounds in all dependencies or DEPS
4321
4322 --write-ghc-environment-files always|never|ghc8.4.4+
4323 Whether to create a .ghc.environment file after a suc‐
4324 cessful build (v2-build only)
4325
4326 --enable-documentation
4327 --disable-documentation
4328 building of documentation
4329
4330 --doc-index-file TEMPLATE
4331 A central index of haddock API documentation (template
4332 cannot use $pkgid)
4333
4334 --dry-run
4335 Do not install anything, only print what would be
4336 installed.
4337
4338 --max-backjumps NUM
4339 Maximum number of backjumps allowed while solving
4340 (default: 4000). Use a negative number to enable unlim‐
4341 ited backtracking. Use 0 to disable backtracking com‐
4342 pletely.
4343
4344 --reorder-goals
4345 --no-reorder-goals
4346 Try to reorder goals according to certain heuristics.
4347 Slows things down on average, but may make backtracking
4348 faster for some packages.
4349
4350 --count-conflicts
4351 --no-count-conflicts
4352 Try to speed up solving by preferring goals that are
4353 involved in a lot of conflicts (default).
4354
4355 --minimize-conflict-set
4356 --no-minimize-conflict-set
4357 When there is no solution, try to improve the error mes‐
4358 sage by finding a minimal conflict set (default: false).
4359 May increase run time significantly.
4360
4361 --independent-goals
4362 --no-independent-goals
4363 Treat several goals on the command line as independent.
4364 If several goals depend on the same package, different
4365 versions can be chosen.
4366
4367 --shadow-installed-packages
4368 --no-shadow-installed-packages
4369 If multiple package instances of the same version are
4370 installed, treat all but one as shadowed.
4371
4372 --strong-flags
4373 --no-strong-flags
4374 Do not defer flag choices (this used to be the default in
4375 cabal-install <= 1.20).
4376
4377 --allow-boot-library-installs
4378 --no-allow-boot-library-installs
4379 Allow cabal to install base, ghc-prim, integer-simple,
4380 integer-gmp, and template-haskell.
4381
4382 --reject-unconstrained-dependencies none|all
4383 Require these packages to have constraints on them if
4384 they are to be selected (default: none).
4385
4386 --reinstall
4387 --no-reinstall
4388 Install even if it means installing the same version
4389 again.
4390
4391 --avoid-reinstalls
4392 --no-avoid-reinstalls
4393 Do not select versions that would destructively overwrite
4394 installed packages.
4395
4396 --force-reinstalls
4397 --no-force-reinstalls
4398 Reinstall packages even if they will most likely break
4399 other installed packages.
4400
4401 --upgrade-dependencies
4402 --no-upgrade-dependencies
4403 Pick the latest version for all dependencies, rather than
4404 trying to pick an installed version.
4405
4406 --only-dependencies
4407 --no-only-dependencies
4408 Install only the dependencies necessary to build the
4409 given packages
4410
4411 --dependencies-only
4412 --no-dependencies-only
4413 A synonym for --only-dependencies
4414
4415 --index-state STATE
4416 Use source package index state as it existed at a previ‐
4417 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
4418 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
4419 'HEAD' (default: 'HEAD').
4420
4421 --root-cmd COMMAND
4422 (No longer supported, do not use.)
4423
4424 --symlink-bindir DIR
4425 Add symlinks to installed executables into this direc‐
4426 tory.
4427
4428 --build-summary TEMPLATE
4429 Save build summaries to file (name template can use
4430 $pkgid, $compiler, $os, $arch)
4431
4432 --build-log TEMPLATE
4433 Log all builds to file (name template can use $pkgid,
4434 $compiler, $os, $arch)
4435
4436 --remote-build-reporting LEVEL
4437 Generate build reports to send to a remote server (none,
4438 anonymous or detailed).
4439
4440 --report-planning-failure
4441 Generate build reports when the dependency solver fails.
4442 This is used by the Hackage build bot.
4443
4444 --enable-per-component
4445 --disable-per-component
4446 Per-component builds when possible
4447
4448 --one-shot
4449 --no-one-shot
4450 Do not record the packages in the world file.
4451
4452 --run-tests
4453 Run package test suites during installation.
4454
4455 -j, --jobs [NUM]
4456 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
4457 given).
4458
4459 --keep-going
4460 After a build failure, continue to build other unaffected
4461 packages.
4462
4463 --offline
4464 --no-offline
4465 Don't download packages from the Internet.
4466
4467 --project-file FILE
4468 Set the name of the cabal.project file to search for in
4469 parent directories
4470
4471 --only
4472 Only installs the package in the current directory.
4473
4474 --haddock-hoogle
4475 Generate a hoogle database
4476
4477 --haddock-html
4478 Generate HTML documentation (the default)
4479
4480 --haddock-html-location URL
4481 Location of HTML documentation for pre-requisite packages
4482
4483 --haddock-for-hackage
4484 Collection of flags to generate documentation suitable
4485 for upload to hackage
4486
4487 --haddock-executables
4488 Run haddock for Executables targets
4489
4490 --haddock-tests
4491 Run haddock for Test Suite targets
4492
4493 --haddock-benchmarks
4494 Run haddock for Benchmark targets
4495
4496 --haddock-all
4497 Run haddock for all targets
4498
4499 --haddock-internal
4500 Run haddock for internal modules and include all symbols
4501
4502 --haddock-css PATH
4503 Use PATH as the haddock stylesheet
4504
4505 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
4506 dock-hyperlinked-source
4507 Hyperlink the documentation to the source code
4508
4509 --haddock-quickjump
4510 Generate an index for interactive documentation naviga‐
4511 tion
4512
4513 --haddock-hscolour-css PATH
4514 Use PATH as the HsColour stylesheet
4515
4516 --haddock-contents-location URL
4517 Bake URL in as the location for the contents page
4518
4519 --test-log TEMPLATE
4520 Log all test suite results to file (name template can use
4521 $pkgid, $compiler, $os, $arch, $test-suite, $result)
4522
4523 --test-machine-log TEMPLATE
4524 Produce a machine-readable log file (name template can
4525 use $pkgid, $compiler, $os, $arch, $result)
4526
4527 --test-show-details FILTER
4528
4529 --test-keep-tix-files
4530 keep .tix files for HPC between test runs
4531
4532 --test-wrapper FILE
4533 Run test through a wrapper.
4534
4535 --test-fail-when-no-test-suites
4536 Exit with failure when no test suites are found.
4537
4538 --test-options TEMPLATES
4539 give extra options to test executables (name templates
4540 can use $pkgid, $compiler, $os, $arch, $test-suite)
4541
4542 --test-option TEMPLATE
4543 give extra option to test executables (no need to quote
4544 options containing spaces, name template can use $pkgid,
4545 $compiler, $os, $arch, $test-suite)
4546
4547
4548 cabal v2-update
4549
4550 Usage: cabal v2-update [FLAGS] [REPOS]
4551
4552
4553 For all known remote repositories, download the package list.
4554
4555
4556 REPO has the format <repo-id>[,<index-state>] where index-state follows
4557 the same format and syntax that is supported by the --index-state flag.
4558
4559 Examples:
4560 cabal v2-update
4561 Download the package list for all known remote repositories.
4562
4563 cabal v2-update hackage.haskell.org,@1474732068
4564 cabal v2-update hackage.haskell.org,2016-09-24T17:47:48Z
4565 cabal v2-update hackage.haskell.org,HEAD
4566 cabal v2-update hackage.haskell.org
4567 Download hackage.haskell.org at a specific index state.
4568
4569 cabal new update hackage.haskell.org head.hackage
4570 Download hackage.haskell.org and head.hackage
4571 head.hackage must be a known repo-id. E.g. from
4572 your cabal.project(.local) file.
4573
4574 Note: this command is part of the new project-based system (aka nix-
4575 style local builds). These features are currently in beta. Please see
4576 http://cabal.readthedocs.io/en/latest/nix-local-build-overview.html for
4577 details and advice on what you can expect to work. If you encounter
4578 problems please file issues at https://github.com/haskell/cabal/issues
4579 and if you have any time to get involved and help with testing, fixing
4580 bugs etc then that is very much appreciated.
4581
4582
4583 Flags:
4584 -v, --verbose [n]
4585 Control verbosity (n is 0--3, default verbosity level is
4586 1)
4587
4588 --builddir, --distdir, --distpref DIR
4589 The directory where Cabal puts generated build files
4590 (default dist)
4591
4592 -g, --ghc
4593 compile with GHC
4594
4595 --ghcjs
4596 compile with GHCJS
4597
4598 --uhc
4599 compile with UHC
4600
4601 --haskell-suite
4602 compile with a haskell-suite compiler
4603
4604 --cabal-file PATH
4605 use this Cabal file
4606
4607 -w, --with-compiler PATH
4608 give the path to a particular compiler
4609
4610 --with-hc-pkg PATH
4611 give the path to the package tool
4612
4613 --prefix DIR
4614 bake this prefix in preparation of installation
4615
4616 --bindir DIR
4617 installation directory for executables
4618
4619 --libdir DIR
4620 installation directory for libraries
4621
4622 --libsubdir DIR
4623 subdirectory of libdir in which libs are installed
4624
4625 --dynlibdir DIR
4626 installation directory for dynamic libraries
4627
4628 --libexecdir DIR
4629 installation directory for program executables
4630
4631 --libexecsubdir DIR
4632 subdirectory of libexecdir in which private executables
4633 are installed
4634
4635 --datadir DIR
4636 installation directory for read-only data
4637
4638 --datasubdir DIR
4639 subdirectory of datadir in which data files are installed
4640
4641 --docdir DIR
4642 installation directory for documentation
4643
4644 --htmldir DIR
4645 installation directory for HTML documentation
4646
4647 --haddockdir DIR
4648 installation directory for haddock interfaces
4649
4650 --sysconfdir DIR
4651 installation directory for configuration files
4652
4653 --program-prefix PREFIX
4654 prefix to be applied to installed executables
4655
4656 --program-suffix SUFFIX
4657 suffix to be applied to installed executables
4658
4659 --enable-library-vanilla
4660 --disable-library-vanilla
4661 Vanilla libraries
4662
4663 -p, --enable-library-profiling
4664 --disable-library-profiling
4665 Library profiling
4666
4667 --enable-shared
4668 --disable-shared
4669 Shared library
4670
4671 --enable-static
4672 --disable-static
4673 Static library
4674
4675 --enable-executable-dynamic
4676 --disable-executable-dynamic
4677 Executable dynamic linking
4678
4679 --enable-executable-static
4680 --disable-executable-static
4681 Executable fully static linking
4682
4683 --enable-profiling
4684 --disable-profiling
4685 Executable and library profiling
4686
4687 --enable-executable-profiling
4688 --disable-executable-profiling
4689 Executable profiling (DEPRECATED)
4690
4691 --profiling-detail level
4692 Profiling detail level for executable and library
4693 (default, none, exported-functions, toplevel-functions,
4694 all-functions).
4695
4696 --library-profiling-detail level
4697 Profiling detail level for libraries only.
4698
4699 -O, --enable-optimization, --enable-optimisation [n]
4700 Build with optimization (n is 0--2, default is 1)
4701
4702 --disable-optimization, --disable-optimisation
4703 Build without optimization
4704
4705 --enable-debug-info [n]
4706 Emit debug info (n is 0--3, default is 0)
4707
4708 --disable-debug-info
4709 Don't emit debug info
4710
4711 --enable-library-for-ghci
4712 --disable-library-for-ghci
4713 compile library for use with GHCi
4714
4715 --enable-split-sections
4716 --disable-split-sections
4717 compile library code such that unneeded definitions can
4718 be dropped from the final executable (GHC 7.8+)
4719
4720 --enable-split-objs
4721 --disable-split-objs
4722 split library into smaller objects to reduce binary sizes
4723 (GHC 6.6+)
4724
4725 --enable-executable-stripping
4726 --disable-executable-stripping
4727 strip executables upon installation to reduce binary
4728 sizes
4729
4730 --enable-library-stripping
4731 --disable-library-stripping
4732 strip libraries upon installation to reduce binary sizes
4733
4734 --configure-option OPT
4735 Extra option for configure
4736
4737 --user
4738 --global
4739 doing a per-user installation
4740
4741 --package-db DB
4742 Append the given package database to the list of package
4743 databases used (to satisfy dependencies and register
4744 into). May be a specific file, 'global' or 'user'. The
4745 initial list is ['global'], ['global', 'user'], or
4746 ['global', $sandbox], depending on context. Use 'clear'
4747 to reset the list to empty. See the user guide for
4748 details.
4749
4750 -f, --flags FLAGS
4751 Force values for the given flags in Cabal conditionals in
4752 the .cabal file. E.g., --flags="debug -usebytestrings"
4753 forces the flag "debug" to true and "usebytestrings" to
4754 false.
4755
4756 --extra-include-dirs PATH
4757 A list of directories to search for header files
4758
4759 --enable-deterministic
4760 --disable-deterministic
4761 Try to be as deterministic as possible (used by the test
4762 suite)
4763
4764 --ipid IPID
4765 Installed package ID to compile this package as
4766
4767 --cid CID
4768 Installed component ID to compile this component as
4769
4770 --extra-lib-dirs PATH
4771 A list of directories to search for external libraries
4772
4773 --extra-framework-dirs PATH
4774 A list of directories to search for external frameworks
4775 (OS X only)
4776
4777 --extra-prog-path PATH
4778 A list of directories to search for required programs (in
4779 addition to the normal search locations)
4780
4781 --instantiate-with NAME=MOD
4782 A mapping of signature names to concrete module instanti‐
4783 ations.
4784
4785 --enable-tests
4786 --disable-tests
4787 dependency checking and compilation for test suites
4788 listed in the package description file.
4789
4790 --enable-coverage
4791 --disable-coverage
4792 build package with Haskell Program Coverage. (GHC only)
4793
4794 --enable-library-coverage
4795 --disable-library-coverage
4796 build package with Haskell Program Coverage. (GHC only)
4797 (DEPRECATED)
4798
4799 --enable-benchmarks
4800 --disable-benchmarks
4801 dependency checking and compilation for benchmarks listed
4802 in the package description file.
4803
4804 --enable-relocatable
4805 --disable-relocatable
4806 building a package that is relocatable. (GHC only)
4807
4808 --disable-response-files
4809 enable workaround for old versions of programs like "ar"
4810 that do not support @file arguments
4811
4812 --allow-depending-on-private-libs
4813 Allow depending on private libraries. If set, the library
4814 visibility check MUST be done externally.
4815
4816 --with-alex PATH
4817 give the path to alex
4818
4819 --with-ar PATH
4820 give the path to ar
4821
4822 --with-c2hs PATH
4823 give the path to c2hs
4824
4825 --with-cpphs PATH
4826 give the path to cpphs
4827
4828 --with-doctest PATH
4829 give the path to doctest
4830
4831 --with-gcc PATH
4832 give the path to gcc
4833
4834 --with-ghc PATH
4835 give the path to ghc
4836
4837 --with-ghc-pkg PATH
4838 give the path to ghc-pkg
4839
4840 --with-ghcjs PATH
4841 give the path to ghcjs
4842
4843 --with-ghcjs-pkg PATH
4844 give the path to ghcjs-pkg
4845
4846 --with-greencard PATH
4847 give the path to greencard
4848
4849 --with-haddock PATH
4850 give the path to haddock
4851
4852 --with-happy PATH
4853 give the path to happy
4854
4855 --with-haskell-suite PATH
4856 give the path to haskell-suite
4857
4858 --with-haskell-suite-pkg PATH
4859 give the path to haskell-suite-pkg
4860
4861 --with-hmake PATH
4862 give the path to hmake
4863
4864 --with-hpc PATH
4865 give the path to hpc
4866
4867 --with-hsc2hs PATH
4868 give the path to hsc2hs
4869
4870 --with-hscolour PATH
4871 give the path to hscolour
4872
4873 --with-jhc PATH
4874 give the path to jhc
4875
4876 --with-ld PATH
4877 give the path to ld
4878
4879 --with-pkg-config PATH
4880 give the path to pkg-config
4881
4882 --with-runghc PATH
4883 give the path to runghc
4884
4885 --with-strip PATH
4886 give the path to strip
4887
4888 --with-tar PATH
4889 give the path to tar
4890
4891 --with-uhc PATH
4892 give the path to uhc
4893
4894 --alex-option OPT
4895 give an extra option to alex (no need to quote options
4896 containing spaces)
4897
4898 --ar-option OPT
4899 give an extra option to ar (no need to quote options con‐
4900 taining spaces)
4901
4902 --c2hs-option OPT
4903 give an extra option to c2hs (no need to quote options
4904 containing spaces)
4905
4906 --cpphs-option OPT
4907 give an extra option to cpphs (no need to quote options
4908 containing spaces)
4909
4910 --doctest-option OPT
4911 give an extra option to doctest (no need to quote options
4912 containing spaces)
4913
4914 --gcc-option OPT
4915 give an extra option to gcc (no need to quote options
4916 containing spaces)
4917
4918 --ghc-option OPT
4919 give an extra option to ghc (no need to quote options
4920 containing spaces)
4921
4922 --ghc-pkg-option OPT
4923 give an extra option to ghc-pkg (no need to quote options
4924 containing spaces)
4925
4926 --ghcjs-option OPT
4927 give an extra option to ghcjs (no need to quote options
4928 containing spaces)
4929
4930 --ghcjs-pkg-option OPT
4931 give an extra option to ghcjs-pkg (no need to quote
4932 options containing spaces)
4933
4934 --greencard-option OPT
4935 give an extra option to greencard (no need to quote
4936 options containing spaces)
4937
4938 --haddock-option OPT
4939 give an extra option to haddock (no need to quote options
4940 containing spaces)
4941
4942 --happy-option OPT
4943 give an extra option to happy (no need to quote options
4944 containing spaces)
4945
4946 --haskell-suite-option OPT
4947 give an extra option to haskell-suite (no need to quote
4948 options containing spaces)
4949
4950 --haskell-suite-pkg-option OPT
4951 give an extra option to haskell-suite-pkg (no need to
4952 quote options containing spaces)
4953
4954 --hmake-option OPT
4955 give an extra option to hmake (no need to quote options
4956 containing spaces)
4957
4958 --hpc-option OPT
4959 give an extra option to hpc (no need to quote options
4960 containing spaces)
4961
4962 --hsc2hs-option OPT
4963 give an extra option to hsc2hs (no need to quote options
4964 containing spaces)
4965
4966 --hscolour-option OPT
4967 give an extra option to hscolour (no need to quote
4968 options containing spaces)
4969
4970 --jhc-option OPT
4971 give an extra option to jhc (no need to quote options
4972 containing spaces)
4973
4974 --ld-option OPT
4975 give an extra option to ld (no need to quote options con‐
4976 taining spaces)
4977
4978 --pkg-config-option OPT
4979 give an extra option to pkg-config (no need to quote
4980 options containing spaces)
4981
4982 --runghc-option OPT
4983 give an extra option to runghc (no need to quote options
4984 containing spaces)
4985
4986 --strip-option OPT
4987 give an extra option to strip (no need to quote options
4988 containing spaces)
4989
4990 --tar-option OPT
4991 give an extra option to tar (no need to quote options
4992 containing spaces)
4993
4994 --uhc-option OPT
4995 give an extra option to uhc (no need to quote options
4996 containing spaces)
4997
4998 --alex-options OPTS
4999 give extra options to alex
5000
5001 --ar-options OPTS
5002 give extra options to ar
5003
5004 --c2hs-options OPTS
5005 give extra options to c2hs
5006
5007 --cpphs-options OPTS
5008 give extra options to cpphs
5009
5010 --doctest-options OPTS
5011 give extra options to doctest
5012
5013 --gcc-options OPTS
5014 give extra options to gcc
5015
5016 --ghc-options OPTS
5017 give extra options to ghc
5018
5019 --ghc-pkg-options OPTS
5020 give extra options to ghc-pkg
5021
5022 --ghcjs-options OPTS
5023 give extra options to ghcjs
5024
5025 --ghcjs-pkg-options OPTS
5026 give extra options to ghcjs-pkg
5027
5028 --greencard-options OPTS
5029 give extra options to greencard
5030
5031 --haddock-options OPTS
5032 give extra options to haddock
5033
5034 --happy-options OPTS
5035 give extra options to happy
5036
5037 --haskell-suite-options OPTS
5038 give extra options to haskell-suite
5039
5040 --haskell-suite-pkg-options OPTS
5041 give extra options to haskell-suite-pkg
5042
5043 --hmake-options OPTS
5044 give extra options to hmake
5045
5046 --hpc-options OPTS
5047 give extra options to hpc
5048
5049 --hsc2hs-options OPTS
5050 give extra options to hsc2hs
5051
5052 --hscolour-options OPTS
5053 give extra options to hscolour
5054
5055 --jhc-options OPTS
5056 give extra options to jhc
5057
5058 --ld-options OPTS
5059 give extra options to ld
5060
5061 --pkg-config-options OPTS
5062 give extra options to pkg-config
5063
5064 --runghc-options OPTS
5065 give extra options to runghc
5066
5067 --strip-options OPTS
5068 give extra options to strip
5069
5070 --tar-options OPTS
5071 give extra options to tar
5072
5073 --uhc-options OPTS
5074 give extra options to uhc
5075
5076 --cabal-lib-version VERSION
5077 Select which version of the Cabal lib to use to build
5078 packages (useful for testing).
5079
5080 --constraint CONSTRAINT
5081 Specify constraints on a package (version,
5082 installed/source, flags)
5083
5084 --preference CONSTRAINT
5085 Specify preferences (soft constraints) on the version of
5086 a package
5087
5088 --solver SOLVER
5089 Select dependency solver to use (default: modular).
5090 Choices: modular.
5091
5092 --allow-older [DEPS]
5093 Ignore lower bounds in all dependencies or DEPS
5094
5095 --allow-newer [DEPS]
5096 Ignore upper bounds in all dependencies or DEPS
5097
5098 --write-ghc-environment-files always|never|ghc8.4.4+
5099 Whether to create a .ghc.environment file after a suc‐
5100 cessful build (v2-build only)
5101
5102 --enable-documentation
5103 --disable-documentation
5104 building of documentation
5105
5106 --doc-index-file TEMPLATE
5107 A central index of haddock API documentation (template
5108 cannot use $pkgid)
5109
5110 --dry-run
5111 Do not install anything, only print what would be
5112 installed.
5113
5114 --max-backjumps NUM
5115 Maximum number of backjumps allowed while solving
5116 (default: 4000). Use a negative number to enable unlim‐
5117 ited backtracking. Use 0 to disable backtracking com‐
5118 pletely.
5119
5120 --reorder-goals
5121 --no-reorder-goals
5122 Try to reorder goals according to certain heuristics.
5123 Slows things down on average, but may make backtracking
5124 faster for some packages.
5125
5126 --count-conflicts
5127 --no-count-conflicts
5128 Try to speed up solving by preferring goals that are
5129 involved in a lot of conflicts (default).
5130
5131 --minimize-conflict-set
5132 --no-minimize-conflict-set
5133 When there is no solution, try to improve the error mes‐
5134 sage by finding a minimal conflict set (default: false).
5135 May increase run time significantly.
5136
5137 --independent-goals
5138 --no-independent-goals
5139 Treat several goals on the command line as independent.
5140 If several goals depend on the same package, different
5141 versions can be chosen.
5142
5143 --shadow-installed-packages
5144 --no-shadow-installed-packages
5145 If multiple package instances of the same version are
5146 installed, treat all but one as shadowed.
5147
5148 --strong-flags
5149 --no-strong-flags
5150 Do not defer flag choices (this used to be the default in
5151 cabal-install <= 1.20).
5152
5153 --allow-boot-library-installs
5154 --no-allow-boot-library-installs
5155 Allow cabal to install base, ghc-prim, integer-simple,
5156 integer-gmp, and template-haskell.
5157
5158 --reject-unconstrained-dependencies none|all
5159 Require these packages to have constraints on them if
5160 they are to be selected (default: none).
5161
5162 --reinstall
5163 --no-reinstall
5164 Install even if it means installing the same version
5165 again.
5166
5167 --avoid-reinstalls
5168 --no-avoid-reinstalls
5169 Do not select versions that would destructively overwrite
5170 installed packages.
5171
5172 --force-reinstalls
5173 --no-force-reinstalls
5174 Reinstall packages even if they will most likely break
5175 other installed packages.
5176
5177 --upgrade-dependencies
5178 --no-upgrade-dependencies
5179 Pick the latest version for all dependencies, rather than
5180 trying to pick an installed version.
5181
5182 --only-dependencies
5183 --no-only-dependencies
5184 Install only the dependencies necessary to build the
5185 given packages
5186
5187 --dependencies-only
5188 --no-dependencies-only
5189 A synonym for --only-dependencies
5190
5191 --index-state STATE
5192 Use source package index state as it existed at a previ‐
5193 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
5194 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
5195 'HEAD' (default: 'HEAD').
5196
5197 --root-cmd COMMAND
5198 (No longer supported, do not use.)
5199
5200 --symlink-bindir DIR
5201 Add symlinks to installed executables into this direc‐
5202 tory.
5203
5204 --build-summary TEMPLATE
5205 Save build summaries to file (name template can use
5206 $pkgid, $compiler, $os, $arch)
5207
5208 --build-log TEMPLATE
5209 Log all builds to file (name template can use $pkgid,
5210 $compiler, $os, $arch)
5211
5212 --remote-build-reporting LEVEL
5213 Generate build reports to send to a remote server (none,
5214 anonymous or detailed).
5215
5216 --report-planning-failure
5217 Generate build reports when the dependency solver fails.
5218 This is used by the Hackage build bot.
5219
5220 --enable-per-component
5221 --disable-per-component
5222 Per-component builds when possible
5223
5224 --one-shot
5225 --no-one-shot
5226 Do not record the packages in the world file.
5227
5228 --run-tests
5229 Run package test suites during installation.
5230
5231 -j, --jobs [NUM]
5232 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
5233 given).
5234
5235 --keep-going
5236 After a build failure, continue to build other unaffected
5237 packages.
5238
5239 --offline
5240 --no-offline
5241 Don't download packages from the Internet.
5242
5243 --project-file FILE
5244 Set the name of the cabal.project file to search for in
5245 parent directories
5246
5247 --only
5248 Only installs the package in the current directory.
5249
5250 --haddock-hoogle
5251 Generate a hoogle database
5252
5253 --haddock-html
5254 Generate HTML documentation (the default)
5255
5256 --haddock-html-location URL
5257 Location of HTML documentation for pre-requisite packages
5258
5259 --haddock-for-hackage
5260 Collection of flags to generate documentation suitable
5261 for upload to hackage
5262
5263 --haddock-executables
5264 Run haddock for Executables targets
5265
5266 --haddock-tests
5267 Run haddock for Test Suite targets
5268
5269 --haddock-benchmarks
5270 Run haddock for Benchmark targets
5271
5272 --haddock-all
5273 Run haddock for all targets
5274
5275 --haddock-internal
5276 Run haddock for internal modules and include all symbols
5277
5278 --haddock-css PATH
5279 Use PATH as the haddock stylesheet
5280
5281 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
5282 dock-hyperlinked-source
5283 Hyperlink the documentation to the source code
5284
5285 --haddock-quickjump
5286 Generate an index for interactive documentation naviga‐
5287 tion
5288
5289 --haddock-hscolour-css PATH
5290 Use PATH as the HsColour stylesheet
5291
5292 --haddock-contents-location URL
5293 Bake URL in as the location for the contents page
5294
5295 --test-log TEMPLATE
5296 Log all test suite results to file (name template can use
5297 $pkgid, $compiler, $os, $arch, $test-suite, $result)
5298
5299 --test-machine-log TEMPLATE
5300 Produce a machine-readable log file (name template can
5301 use $pkgid, $compiler, $os, $arch, $result)
5302
5303 --test-show-details FILTER
5304
5305 --test-keep-tix-files
5306 keep .tix files for HPC between test runs
5307
5308 --test-wrapper FILE
5309 Run test through a wrapper.
5310
5311 --test-fail-when-no-test-suites
5312 Exit with failure when no test suites are found.
5313
5314 --test-options TEMPLATES
5315 give extra options to test executables (name templates
5316 can use $pkgid, $compiler, $os, $arch, $test-suite)
5317
5318 --test-option TEMPLATE
5319 give extra option to test executables (no need to quote
5320 options containing spaces, name template can use $pkgid,
5321 $compiler, $os, $arch, $test-suite)
5322
5323
5324 cabal build
5325
5326 Usage: cabal build [TARGETS] [FLAGS]
5327
5328
5329 Build one or more targets from within the project. The available tar‐
5330 gets are the packages in the project as well as individual components
5331 within those packages, including libraries, executables, test-suites or
5332 benchmarks. Targets can be specified by name or location. If no target
5333 is specified then the default is to build the package in the current
5334 directory.
5335
5336 Dependencies are built or rebuilt as necessary. Additional configura‐
5337 tion flags can be specified on the command line and these extend the
5338 project configuration from the 'cabal.project', 'cabal.project.local'
5339 and other files.
5340
5341
5342 Build one or more targets from within the project. The available tar‐
5343 gets are the packages in the project as well as individual components
5344 within those packages, including libraries, executables, test-suites or
5345 benchmarks. Targets can be specified by name or location. If no target
5346 is specified then the default is to build the package in the current
5347 directory.
5348
5349 Dependencies are built or rebuilt as necessary. Additional configura‐
5350 tion flags can be specified on the command line and these extend the
5351 project configuration from the 'cabal.project', 'cabal.project.local'
5352 and other files.
5353
5354
5355 Flags:
5356 -v, --verbose [n]
5357 Control verbosity (n is 0--3, default verbosity level is
5358 1)
5359
5360 --builddir, --distdir, --distpref DIR
5361 The directory where Cabal puts generated build files
5362 (default dist)
5363
5364 -g, --ghc
5365 compile with GHC
5366
5367 --ghcjs
5368 compile with GHCJS
5369
5370 --uhc
5371 compile with UHC
5372
5373 --haskell-suite
5374 compile with a haskell-suite compiler
5375
5376 --cabal-file PATH
5377 use this Cabal file
5378
5379 -w, --with-compiler PATH
5380 give the path to a particular compiler
5381
5382 --with-hc-pkg PATH
5383 give the path to the package tool
5384
5385 --prefix DIR
5386 bake this prefix in preparation of installation
5387
5388 --bindir DIR
5389 installation directory for executables
5390
5391 --libdir DIR
5392 installation directory for libraries
5393
5394 --libsubdir DIR
5395 subdirectory of libdir in which libs are installed
5396
5397 --dynlibdir DIR
5398 installation directory for dynamic libraries
5399
5400 --libexecdir DIR
5401 installation directory for program executables
5402
5403 --libexecsubdir DIR
5404 subdirectory of libexecdir in which private executables
5405 are installed
5406
5407 --datadir DIR
5408 installation directory for read-only data
5409
5410 --datasubdir DIR
5411 subdirectory of datadir in which data files are installed
5412
5413 --docdir DIR
5414 installation directory for documentation
5415
5416 --htmldir DIR
5417 installation directory for HTML documentation
5418
5419 --haddockdir DIR
5420 installation directory for haddock interfaces
5421
5422 --sysconfdir DIR
5423 installation directory for configuration files
5424
5425 --program-prefix PREFIX
5426 prefix to be applied to installed executables
5427
5428 --program-suffix SUFFIX
5429 suffix to be applied to installed executables
5430
5431 --enable-library-vanilla
5432 --disable-library-vanilla
5433 Vanilla libraries
5434
5435 -p, --enable-library-profiling
5436 --disable-library-profiling
5437 Library profiling
5438
5439 --enable-shared
5440 --disable-shared
5441 Shared library
5442
5443 --enable-static
5444 --disable-static
5445 Static library
5446
5447 --enable-executable-dynamic
5448 --disable-executable-dynamic
5449 Executable dynamic linking
5450
5451 --enable-executable-static
5452 --disable-executable-static
5453 Executable fully static linking
5454
5455 --enable-profiling
5456 --disable-profiling
5457 Executable and library profiling
5458
5459 --enable-executable-profiling
5460 --disable-executable-profiling
5461 Executable profiling (DEPRECATED)
5462
5463 --profiling-detail level
5464 Profiling detail level for executable and library
5465 (default, none, exported-functions, toplevel-functions,
5466 all-functions).
5467
5468 --library-profiling-detail level
5469 Profiling detail level for libraries only.
5470
5471 -O, --enable-optimization, --enable-optimisation [n]
5472 Build with optimization (n is 0--2, default is 1)
5473
5474 --disable-optimization, --disable-optimisation
5475 Build without optimization
5476
5477 --enable-debug-info [n]
5478 Emit debug info (n is 0--3, default is 0)
5479
5480 --disable-debug-info
5481 Don't emit debug info
5482
5483 --enable-library-for-ghci
5484 --disable-library-for-ghci
5485 compile library for use with GHCi
5486
5487 --enable-split-sections
5488 --disable-split-sections
5489 compile library code such that unneeded definitions can
5490 be dropped from the final executable (GHC 7.8+)
5491
5492 --enable-split-objs
5493 --disable-split-objs
5494 split library into smaller objects to reduce binary sizes
5495 (GHC 6.6+)
5496
5497 --enable-executable-stripping
5498 --disable-executable-stripping
5499 strip executables upon installation to reduce binary
5500 sizes
5501
5502 --enable-library-stripping
5503 --disable-library-stripping
5504 strip libraries upon installation to reduce binary sizes
5505
5506 --configure-option OPT
5507 Extra option for configure
5508
5509 --user
5510 --global
5511 doing a per-user installation
5512
5513 --package-db DB
5514 Append the given package database to the list of package
5515 databases used (to satisfy dependencies and register
5516 into). May be a specific file, 'global' or 'user'. The
5517 initial list is ['global'], ['global', 'user'], or
5518 ['global', $sandbox], depending on context. Use 'clear'
5519 to reset the list to empty. See the user guide for
5520 details.
5521
5522 -f, --flags FLAGS
5523 Force values for the given flags in Cabal conditionals in
5524 the .cabal file. E.g., --flags="debug -usebytestrings"
5525 forces the flag "debug" to true and "usebytestrings" to
5526 false.
5527
5528 --extra-include-dirs PATH
5529 A list of directories to search for header files
5530
5531 --enable-deterministic
5532 --disable-deterministic
5533 Try to be as deterministic as possible (used by the test
5534 suite)
5535
5536 --ipid IPID
5537 Installed package ID to compile this package as
5538
5539 --cid CID
5540 Installed component ID to compile this component as
5541
5542 --extra-lib-dirs PATH
5543 A list of directories to search for external libraries
5544
5545 --extra-framework-dirs PATH
5546 A list of directories to search for external frameworks
5547 (OS X only)
5548
5549 --extra-prog-path PATH
5550 A list of directories to search for required programs (in
5551 addition to the normal search locations)
5552
5553 --instantiate-with NAME=MOD
5554 A mapping of signature names to concrete module instanti‐
5555 ations.
5556
5557 --enable-tests
5558 --disable-tests
5559 dependency checking and compilation for test suites
5560 listed in the package description file.
5561
5562 --enable-coverage
5563 --disable-coverage
5564 build package with Haskell Program Coverage. (GHC only)
5565
5566 --enable-library-coverage
5567 --disable-library-coverage
5568 build package with Haskell Program Coverage. (GHC only)
5569 (DEPRECATED)
5570
5571 --enable-benchmarks
5572 --disable-benchmarks
5573 dependency checking and compilation for benchmarks listed
5574 in the package description file.
5575
5576 --enable-relocatable
5577 --disable-relocatable
5578 building a package that is relocatable. (GHC only)
5579
5580 --disable-response-files
5581 enable workaround for old versions of programs like "ar"
5582 that do not support @file arguments
5583
5584 --allow-depending-on-private-libs
5585 Allow depending on private libraries. If set, the library
5586 visibility check MUST be done externally.
5587
5588 --with-alex PATH
5589 give the path to alex
5590
5591 --with-ar PATH
5592 give the path to ar
5593
5594 --with-c2hs PATH
5595 give the path to c2hs
5596
5597 --with-cpphs PATH
5598 give the path to cpphs
5599
5600 --with-doctest PATH
5601 give the path to doctest
5602
5603 --with-gcc PATH
5604 give the path to gcc
5605
5606 --with-ghc PATH
5607 give the path to ghc
5608
5609 --with-ghc-pkg PATH
5610 give the path to ghc-pkg
5611
5612 --with-ghcjs PATH
5613 give the path to ghcjs
5614
5615 --with-ghcjs-pkg PATH
5616 give the path to ghcjs-pkg
5617
5618 --with-greencard PATH
5619 give the path to greencard
5620
5621 --with-haddock PATH
5622 give the path to haddock
5623
5624 --with-happy PATH
5625 give the path to happy
5626
5627 --with-haskell-suite PATH
5628 give the path to haskell-suite
5629
5630 --with-haskell-suite-pkg PATH
5631 give the path to haskell-suite-pkg
5632
5633 --with-hmake PATH
5634 give the path to hmake
5635
5636 --with-hpc PATH
5637 give the path to hpc
5638
5639 --with-hsc2hs PATH
5640 give the path to hsc2hs
5641
5642 --with-hscolour PATH
5643 give the path to hscolour
5644
5645 --with-jhc PATH
5646 give the path to jhc
5647
5648 --with-ld PATH
5649 give the path to ld
5650
5651 --with-pkg-config PATH
5652 give the path to pkg-config
5653
5654 --with-runghc PATH
5655 give the path to runghc
5656
5657 --with-strip PATH
5658 give the path to strip
5659
5660 --with-tar PATH
5661 give the path to tar
5662
5663 --with-uhc PATH
5664 give the path to uhc
5665
5666 --alex-option OPT
5667 give an extra option to alex (no need to quote options
5668 containing spaces)
5669
5670 --ar-option OPT
5671 give an extra option to ar (no need to quote options con‐
5672 taining spaces)
5673
5674 --c2hs-option OPT
5675 give an extra option to c2hs (no need to quote options
5676 containing spaces)
5677
5678 --cpphs-option OPT
5679 give an extra option to cpphs (no need to quote options
5680 containing spaces)
5681
5682 --doctest-option OPT
5683 give an extra option to doctest (no need to quote options
5684 containing spaces)
5685
5686 --gcc-option OPT
5687 give an extra option to gcc (no need to quote options
5688 containing spaces)
5689
5690 --ghc-option OPT
5691 give an extra option to ghc (no need to quote options
5692 containing spaces)
5693
5694 --ghc-pkg-option OPT
5695 give an extra option to ghc-pkg (no need to quote options
5696 containing spaces)
5697
5698 --ghcjs-option OPT
5699 give an extra option to ghcjs (no need to quote options
5700 containing spaces)
5701
5702 --ghcjs-pkg-option OPT
5703 give an extra option to ghcjs-pkg (no need to quote
5704 options containing spaces)
5705
5706 --greencard-option OPT
5707 give an extra option to greencard (no need to quote
5708 options containing spaces)
5709
5710 --haddock-option OPT
5711 give an extra option to haddock (no need to quote options
5712 containing spaces)
5713
5714 --happy-option OPT
5715 give an extra option to happy (no need to quote options
5716 containing spaces)
5717
5718 --haskell-suite-option OPT
5719 give an extra option to haskell-suite (no need to quote
5720 options containing spaces)
5721
5722 --haskell-suite-pkg-option OPT
5723 give an extra option to haskell-suite-pkg (no need to
5724 quote options containing spaces)
5725
5726 --hmake-option OPT
5727 give an extra option to hmake (no need to quote options
5728 containing spaces)
5729
5730 --hpc-option OPT
5731 give an extra option to hpc (no need to quote options
5732 containing spaces)
5733
5734 --hsc2hs-option OPT
5735 give an extra option to hsc2hs (no need to quote options
5736 containing spaces)
5737
5738 --hscolour-option OPT
5739 give an extra option to hscolour (no need to quote
5740 options containing spaces)
5741
5742 --jhc-option OPT
5743 give an extra option to jhc (no need to quote options
5744 containing spaces)
5745
5746 --ld-option OPT
5747 give an extra option to ld (no need to quote options con‐
5748 taining spaces)
5749
5750 --pkg-config-option OPT
5751 give an extra option to pkg-config (no need to quote
5752 options containing spaces)
5753
5754 --runghc-option OPT
5755 give an extra option to runghc (no need to quote options
5756 containing spaces)
5757
5758 --strip-option OPT
5759 give an extra option to strip (no need to quote options
5760 containing spaces)
5761
5762 --tar-option OPT
5763 give an extra option to tar (no need to quote options
5764 containing spaces)
5765
5766 --uhc-option OPT
5767 give an extra option to uhc (no need to quote options
5768 containing spaces)
5769
5770 --alex-options OPTS
5771 give extra options to alex
5772
5773 --ar-options OPTS
5774 give extra options to ar
5775
5776 --c2hs-options OPTS
5777 give extra options to c2hs
5778
5779 --cpphs-options OPTS
5780 give extra options to cpphs
5781
5782 --doctest-options OPTS
5783 give extra options to doctest
5784
5785 --gcc-options OPTS
5786 give extra options to gcc
5787
5788 --ghc-options OPTS
5789 give extra options to ghc
5790
5791 --ghc-pkg-options OPTS
5792 give extra options to ghc-pkg
5793
5794 --ghcjs-options OPTS
5795 give extra options to ghcjs
5796
5797 --ghcjs-pkg-options OPTS
5798 give extra options to ghcjs-pkg
5799
5800 --greencard-options OPTS
5801 give extra options to greencard
5802
5803 --haddock-options OPTS
5804 give extra options to haddock
5805
5806 --happy-options OPTS
5807 give extra options to happy
5808
5809 --haskell-suite-options OPTS
5810 give extra options to haskell-suite
5811
5812 --haskell-suite-pkg-options OPTS
5813 give extra options to haskell-suite-pkg
5814
5815 --hmake-options OPTS
5816 give extra options to hmake
5817
5818 --hpc-options OPTS
5819 give extra options to hpc
5820
5821 --hsc2hs-options OPTS
5822 give extra options to hsc2hs
5823
5824 --hscolour-options OPTS
5825 give extra options to hscolour
5826
5827 --jhc-options OPTS
5828 give extra options to jhc
5829
5830 --ld-options OPTS
5831 give extra options to ld
5832
5833 --pkg-config-options OPTS
5834 give extra options to pkg-config
5835
5836 --runghc-options OPTS
5837 give extra options to runghc
5838
5839 --strip-options OPTS
5840 give extra options to strip
5841
5842 --tar-options OPTS
5843 give extra options to tar
5844
5845 --uhc-options OPTS
5846 give extra options to uhc
5847
5848 --cabal-lib-version VERSION
5849 Select which version of the Cabal lib to use to build
5850 packages (useful for testing).
5851
5852 --constraint CONSTRAINT
5853 Specify constraints on a package (version,
5854 installed/source, flags)
5855
5856 --preference CONSTRAINT
5857 Specify preferences (soft constraints) on the version of
5858 a package
5859
5860 --solver SOLVER
5861 Select dependency solver to use (default: modular).
5862 Choices: modular.
5863
5864 --allow-older [DEPS]
5865 Ignore lower bounds in all dependencies or DEPS
5866
5867 --allow-newer [DEPS]
5868 Ignore upper bounds in all dependencies or DEPS
5869
5870 --write-ghc-environment-files always|never|ghc8.4.4+
5871 Whether to create a .ghc.environment file after a suc‐
5872 cessful build (v2-build only)
5873
5874 --enable-documentation
5875 --disable-documentation
5876 building of documentation
5877
5878 --doc-index-file TEMPLATE
5879 A central index of haddock API documentation (template
5880 cannot use $pkgid)
5881
5882 --dry-run
5883 Do not install anything, only print what would be
5884 installed.
5885
5886 --max-backjumps NUM
5887 Maximum number of backjumps allowed while solving
5888 (default: 4000). Use a negative number to enable unlim‐
5889 ited backtracking. Use 0 to disable backtracking com‐
5890 pletely.
5891
5892 --reorder-goals
5893 --no-reorder-goals
5894 Try to reorder goals according to certain heuristics.
5895 Slows things down on average, but may make backtracking
5896 faster for some packages.
5897
5898 --count-conflicts
5899 --no-count-conflicts
5900 Try to speed up solving by preferring goals that are
5901 involved in a lot of conflicts (default).
5902
5903 --minimize-conflict-set
5904 --no-minimize-conflict-set
5905 When there is no solution, try to improve the error mes‐
5906 sage by finding a minimal conflict set (default: false).
5907 May increase run time significantly.
5908
5909 --independent-goals
5910 --no-independent-goals
5911 Treat several goals on the command line as independent.
5912 If several goals depend on the same package, different
5913 versions can be chosen.
5914
5915 --shadow-installed-packages
5916 --no-shadow-installed-packages
5917 If multiple package instances of the same version are
5918 installed, treat all but one as shadowed.
5919
5920 --strong-flags
5921 --no-strong-flags
5922 Do not defer flag choices (this used to be the default in
5923 cabal-install <= 1.20).
5924
5925 --allow-boot-library-installs
5926 --no-allow-boot-library-installs
5927 Allow cabal to install base, ghc-prim, integer-simple,
5928 integer-gmp, and template-haskell.
5929
5930 --reject-unconstrained-dependencies none|all
5931 Require these packages to have constraints on them if
5932 they are to be selected (default: none).
5933
5934 --reinstall
5935 --no-reinstall
5936 Install even if it means installing the same version
5937 again.
5938
5939 --avoid-reinstalls
5940 --no-avoid-reinstalls
5941 Do not select versions that would destructively overwrite
5942 installed packages.
5943
5944 --force-reinstalls
5945 --no-force-reinstalls
5946 Reinstall packages even if they will most likely break
5947 other installed packages.
5948
5949 --upgrade-dependencies
5950 --no-upgrade-dependencies
5951 Pick the latest version for all dependencies, rather than
5952 trying to pick an installed version.
5953
5954 --only-dependencies
5955 --no-only-dependencies
5956 Install only the dependencies necessary to build the
5957 given packages
5958
5959 --dependencies-only
5960 --no-dependencies-only
5961 A synonym for --only-dependencies
5962
5963 --index-state STATE
5964 Use source package index state as it existed at a previ‐
5965 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
5966 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
5967 'HEAD' (default: 'HEAD').
5968
5969 --root-cmd COMMAND
5970 (No longer supported, do not use.)
5971
5972 --symlink-bindir DIR
5973 Add symlinks to installed executables into this direc‐
5974 tory.
5975
5976 --build-summary TEMPLATE
5977 Save build summaries to file (name template can use
5978 $pkgid, $compiler, $os, $arch)
5979
5980 --build-log TEMPLATE
5981 Log all builds to file (name template can use $pkgid,
5982 $compiler, $os, $arch)
5983
5984 --remote-build-reporting LEVEL
5985 Generate build reports to send to a remote server (none,
5986 anonymous or detailed).
5987
5988 --report-planning-failure
5989 Generate build reports when the dependency solver fails.
5990 This is used by the Hackage build bot.
5991
5992 --enable-per-component
5993 --disable-per-component
5994 Per-component builds when possible
5995
5996 --one-shot
5997 --no-one-shot
5998 Do not record the packages in the world file.
5999
6000 --run-tests
6001 Run package test suites during installation.
6002
6003 -j, --jobs [NUM]
6004 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
6005 given).
6006
6007 --keep-going
6008 After a build failure, continue to build other unaffected
6009 packages.
6010
6011 --offline
6012 --no-offline
6013 Don't download packages from the Internet.
6014
6015 --project-file FILE
6016 Set the name of the cabal.project file to search for in
6017 parent directories
6018
6019 --only
6020 Only installs the package in the current directory.
6021
6022 --haddock-hoogle
6023 Generate a hoogle database
6024
6025 --haddock-html
6026 Generate HTML documentation (the default)
6027
6028 --haddock-html-location URL
6029 Location of HTML documentation for pre-requisite packages
6030
6031 --haddock-for-hackage
6032 Collection of flags to generate documentation suitable
6033 for upload to hackage
6034
6035 --haddock-executables
6036 Run haddock for Executables targets
6037
6038 --haddock-tests
6039 Run haddock for Test Suite targets
6040
6041 --haddock-benchmarks
6042 Run haddock for Benchmark targets
6043
6044 --haddock-all
6045 Run haddock for all targets
6046
6047 --haddock-internal
6048 Run haddock for internal modules and include all symbols
6049
6050 --haddock-css PATH
6051 Use PATH as the haddock stylesheet
6052
6053 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
6054 dock-hyperlinked-source
6055 Hyperlink the documentation to the source code
6056
6057 --haddock-quickjump
6058 Generate an index for interactive documentation naviga‐
6059 tion
6060
6061 --haddock-hscolour-css PATH
6062 Use PATH as the HsColour stylesheet
6063
6064 --haddock-contents-location URL
6065 Bake URL in as the location for the contents page
6066
6067 --test-log TEMPLATE
6068 Log all test suite results to file (name template can use
6069 $pkgid, $compiler, $os, $arch, $test-suite, $result)
6070
6071 --test-machine-log TEMPLATE
6072 Produce a machine-readable log file (name template can
6073 use $pkgid, $compiler, $os, $arch, $result)
6074
6075 --test-show-details FILTER
6076
6077 --test-keep-tix-files
6078 keep .tix files for HPC between test runs
6079
6080 --test-wrapper FILE
6081 Run test through a wrapper.
6082
6083 --test-fail-when-no-test-suites
6084 Exit with failure when no test suites are found.
6085
6086 --test-options TEMPLATES
6087 give extra options to test executables (name templates
6088 can use $pkgid, $compiler, $os, $arch, $test-suite)
6089
6090 --test-option TEMPLATE
6091 give extra option to test executables (no need to quote
6092 options containing spaces, name template can use $pkgid,
6093 $compiler, $os, $arch, $test-suite)
6094
6095 --only-configure
6096 --no-only-configure
6097 Instead of performing a full build just run the configure
6098 step
6099
6100
6101 cabal new-build
6102
6103 Usage: cabal new-build [TARGETS] [FLAGS]
6104
6105
6106 Build one or more targets from within the project. The available tar‐
6107 gets are the packages in the project as well as individual components
6108 within those packages, including libraries, executables, test-suites or
6109 benchmarks. Targets can be specified by name or location. If no target
6110 is specified then the default is to build the package in the current
6111 directory.
6112
6113 Dependencies are built or rebuilt as necessary. Additional configura‐
6114 tion flags can be specified on the command line and these extend the
6115 project configuration from the 'cabal.project', 'cabal.project.local'
6116 and other files.
6117
6118
6119 Build one or more targets from within the project. The available tar‐
6120 gets are the packages in the project as well as individual components
6121 within those packages, including libraries, executables, test-suites or
6122 benchmarks. Targets can be specified by name or location. If no target
6123 is specified then the default is to build the package in the current
6124 directory.
6125
6126 Dependencies are built or rebuilt as necessary. Additional configura‐
6127 tion flags can be specified on the command line and these extend the
6128 project configuration from the 'cabal.project', 'cabal.project.local'
6129 and other files.
6130
6131
6132 Flags:
6133 -v, --verbose [n]
6134 Control verbosity (n is 0--3, default verbosity level is
6135 1)
6136
6137 --builddir, --distdir, --distpref DIR
6138 The directory where Cabal puts generated build files
6139 (default dist)
6140
6141 -g, --ghc
6142 compile with GHC
6143
6144 --ghcjs
6145 compile with GHCJS
6146
6147 --uhc
6148 compile with UHC
6149
6150 --haskell-suite
6151 compile with a haskell-suite compiler
6152
6153 --cabal-file PATH
6154 use this Cabal file
6155
6156 -w, --with-compiler PATH
6157 give the path to a particular compiler
6158
6159 --with-hc-pkg PATH
6160 give the path to the package tool
6161
6162 --prefix DIR
6163 bake this prefix in preparation of installation
6164
6165 --bindir DIR
6166 installation directory for executables
6167
6168 --libdir DIR
6169 installation directory for libraries
6170
6171 --libsubdir DIR
6172 subdirectory of libdir in which libs are installed
6173
6174 --dynlibdir DIR
6175 installation directory for dynamic libraries
6176
6177 --libexecdir DIR
6178 installation directory for program executables
6179
6180 --libexecsubdir DIR
6181 subdirectory of libexecdir in which private executables
6182 are installed
6183
6184 --datadir DIR
6185 installation directory for read-only data
6186
6187 --datasubdir DIR
6188 subdirectory of datadir in which data files are installed
6189
6190 --docdir DIR
6191 installation directory for documentation
6192
6193 --htmldir DIR
6194 installation directory for HTML documentation
6195
6196 --haddockdir DIR
6197 installation directory for haddock interfaces
6198
6199 --sysconfdir DIR
6200 installation directory for configuration files
6201
6202 --program-prefix PREFIX
6203 prefix to be applied to installed executables
6204
6205 --program-suffix SUFFIX
6206 suffix to be applied to installed executables
6207
6208 --enable-library-vanilla
6209 --disable-library-vanilla
6210 Vanilla libraries
6211
6212 -p, --enable-library-profiling
6213 --disable-library-profiling
6214 Library profiling
6215
6216 --enable-shared
6217 --disable-shared
6218 Shared library
6219
6220 --enable-static
6221 --disable-static
6222 Static library
6223
6224 --enable-executable-dynamic
6225 --disable-executable-dynamic
6226 Executable dynamic linking
6227
6228 --enable-executable-static
6229 --disable-executable-static
6230 Executable fully static linking
6231
6232 --enable-profiling
6233 --disable-profiling
6234 Executable and library profiling
6235
6236 --enable-executable-profiling
6237 --disable-executable-profiling
6238 Executable profiling (DEPRECATED)
6239
6240 --profiling-detail level
6241 Profiling detail level for executable and library
6242 (default, none, exported-functions, toplevel-functions,
6243 all-functions).
6244
6245 --library-profiling-detail level
6246 Profiling detail level for libraries only.
6247
6248 -O, --enable-optimization, --enable-optimisation [n]
6249 Build with optimization (n is 0--2, default is 1)
6250
6251 --disable-optimization, --disable-optimisation
6252 Build without optimization
6253
6254 --enable-debug-info [n]
6255 Emit debug info (n is 0--3, default is 0)
6256
6257 --disable-debug-info
6258 Don't emit debug info
6259
6260 --enable-library-for-ghci
6261 --disable-library-for-ghci
6262 compile library for use with GHCi
6263
6264 --enable-split-sections
6265 --disable-split-sections
6266 compile library code such that unneeded definitions can
6267 be dropped from the final executable (GHC 7.8+)
6268
6269 --enable-split-objs
6270 --disable-split-objs
6271 split library into smaller objects to reduce binary sizes
6272 (GHC 6.6+)
6273
6274 --enable-executable-stripping
6275 --disable-executable-stripping
6276 strip executables upon installation to reduce binary
6277 sizes
6278
6279 --enable-library-stripping
6280 --disable-library-stripping
6281 strip libraries upon installation to reduce binary sizes
6282
6283 --configure-option OPT
6284 Extra option for configure
6285
6286 --user
6287 --global
6288 doing a per-user installation
6289
6290 --package-db DB
6291 Append the given package database to the list of package
6292 databases used (to satisfy dependencies and register
6293 into). May be a specific file, 'global' or 'user'. The
6294 initial list is ['global'], ['global', 'user'], or
6295 ['global', $sandbox], depending on context. Use 'clear'
6296 to reset the list to empty. See the user guide for
6297 details.
6298
6299 -f, --flags FLAGS
6300 Force values for the given flags in Cabal conditionals in
6301 the .cabal file. E.g., --flags="debug -usebytestrings"
6302 forces the flag "debug" to true and "usebytestrings" to
6303 false.
6304
6305 --extra-include-dirs PATH
6306 A list of directories to search for header files
6307
6308 --enable-deterministic
6309 --disable-deterministic
6310 Try to be as deterministic as possible (used by the test
6311 suite)
6312
6313 --ipid IPID
6314 Installed package ID to compile this package as
6315
6316 --cid CID
6317 Installed component ID to compile this component as
6318
6319 --extra-lib-dirs PATH
6320 A list of directories to search for external libraries
6321
6322 --extra-framework-dirs PATH
6323 A list of directories to search for external frameworks
6324 (OS X only)
6325
6326 --extra-prog-path PATH
6327 A list of directories to search for required programs (in
6328 addition to the normal search locations)
6329
6330 --instantiate-with NAME=MOD
6331 A mapping of signature names to concrete module instanti‐
6332 ations.
6333
6334 --enable-tests
6335 --disable-tests
6336 dependency checking and compilation for test suites
6337 listed in the package description file.
6338
6339 --enable-coverage
6340 --disable-coverage
6341 build package with Haskell Program Coverage. (GHC only)
6342
6343 --enable-library-coverage
6344 --disable-library-coverage
6345 build package with Haskell Program Coverage. (GHC only)
6346 (DEPRECATED)
6347
6348 --enable-benchmarks
6349 --disable-benchmarks
6350 dependency checking and compilation for benchmarks listed
6351 in the package description file.
6352
6353 --enable-relocatable
6354 --disable-relocatable
6355 building a package that is relocatable. (GHC only)
6356
6357 --disable-response-files
6358 enable workaround for old versions of programs like "ar"
6359 that do not support @file arguments
6360
6361 --allow-depending-on-private-libs
6362 Allow depending on private libraries. If set, the library
6363 visibility check MUST be done externally.
6364
6365 --with-alex PATH
6366 give the path to alex
6367
6368 --with-ar PATH
6369 give the path to ar
6370
6371 --with-c2hs PATH
6372 give the path to c2hs
6373
6374 --with-cpphs PATH
6375 give the path to cpphs
6376
6377 --with-doctest PATH
6378 give the path to doctest
6379
6380 --with-gcc PATH
6381 give the path to gcc
6382
6383 --with-ghc PATH
6384 give the path to ghc
6385
6386 --with-ghc-pkg PATH
6387 give the path to ghc-pkg
6388
6389 --with-ghcjs PATH
6390 give the path to ghcjs
6391
6392 --with-ghcjs-pkg PATH
6393 give the path to ghcjs-pkg
6394
6395 --with-greencard PATH
6396 give the path to greencard
6397
6398 --with-haddock PATH
6399 give the path to haddock
6400
6401 --with-happy PATH
6402 give the path to happy
6403
6404 --with-haskell-suite PATH
6405 give the path to haskell-suite
6406
6407 --with-haskell-suite-pkg PATH
6408 give the path to haskell-suite-pkg
6409
6410 --with-hmake PATH
6411 give the path to hmake
6412
6413 --with-hpc PATH
6414 give the path to hpc
6415
6416 --with-hsc2hs PATH
6417 give the path to hsc2hs
6418
6419 --with-hscolour PATH
6420 give the path to hscolour
6421
6422 --with-jhc PATH
6423 give the path to jhc
6424
6425 --with-ld PATH
6426 give the path to ld
6427
6428 --with-pkg-config PATH
6429 give the path to pkg-config
6430
6431 --with-runghc PATH
6432 give the path to runghc
6433
6434 --with-strip PATH
6435 give the path to strip
6436
6437 --with-tar PATH
6438 give the path to tar
6439
6440 --with-uhc PATH
6441 give the path to uhc
6442
6443 --alex-option OPT
6444 give an extra option to alex (no need to quote options
6445 containing spaces)
6446
6447 --ar-option OPT
6448 give an extra option to ar (no need to quote options con‐
6449 taining spaces)
6450
6451 --c2hs-option OPT
6452 give an extra option to c2hs (no need to quote options
6453 containing spaces)
6454
6455 --cpphs-option OPT
6456 give an extra option to cpphs (no need to quote options
6457 containing spaces)
6458
6459 --doctest-option OPT
6460 give an extra option to doctest (no need to quote options
6461 containing spaces)
6462
6463 --gcc-option OPT
6464 give an extra option to gcc (no need to quote options
6465 containing spaces)
6466
6467 --ghc-option OPT
6468 give an extra option to ghc (no need to quote options
6469 containing spaces)
6470
6471 --ghc-pkg-option OPT
6472 give an extra option to ghc-pkg (no need to quote options
6473 containing spaces)
6474
6475 --ghcjs-option OPT
6476 give an extra option to ghcjs (no need to quote options
6477 containing spaces)
6478
6479 --ghcjs-pkg-option OPT
6480 give an extra option to ghcjs-pkg (no need to quote
6481 options containing spaces)
6482
6483 --greencard-option OPT
6484 give an extra option to greencard (no need to quote
6485 options containing spaces)
6486
6487 --haddock-option OPT
6488 give an extra option to haddock (no need to quote options
6489 containing spaces)
6490
6491 --happy-option OPT
6492 give an extra option to happy (no need to quote options
6493 containing spaces)
6494
6495 --haskell-suite-option OPT
6496 give an extra option to haskell-suite (no need to quote
6497 options containing spaces)
6498
6499 --haskell-suite-pkg-option OPT
6500 give an extra option to haskell-suite-pkg (no need to
6501 quote options containing spaces)
6502
6503 --hmake-option OPT
6504 give an extra option to hmake (no need to quote options
6505 containing spaces)
6506
6507 --hpc-option OPT
6508 give an extra option to hpc (no need to quote options
6509 containing spaces)
6510
6511 --hsc2hs-option OPT
6512 give an extra option to hsc2hs (no need to quote options
6513 containing spaces)
6514
6515 --hscolour-option OPT
6516 give an extra option to hscolour (no need to quote
6517 options containing spaces)
6518
6519 --jhc-option OPT
6520 give an extra option to jhc (no need to quote options
6521 containing spaces)
6522
6523 --ld-option OPT
6524 give an extra option to ld (no need to quote options con‐
6525 taining spaces)
6526
6527 --pkg-config-option OPT
6528 give an extra option to pkg-config (no need to quote
6529 options containing spaces)
6530
6531 --runghc-option OPT
6532 give an extra option to runghc (no need to quote options
6533 containing spaces)
6534
6535 --strip-option OPT
6536 give an extra option to strip (no need to quote options
6537 containing spaces)
6538
6539 --tar-option OPT
6540 give an extra option to tar (no need to quote options
6541 containing spaces)
6542
6543 --uhc-option OPT
6544 give an extra option to uhc (no need to quote options
6545 containing spaces)
6546
6547 --alex-options OPTS
6548 give extra options to alex
6549
6550 --ar-options OPTS
6551 give extra options to ar
6552
6553 --c2hs-options OPTS
6554 give extra options to c2hs
6555
6556 --cpphs-options OPTS
6557 give extra options to cpphs
6558
6559 --doctest-options OPTS
6560 give extra options to doctest
6561
6562 --gcc-options OPTS
6563 give extra options to gcc
6564
6565 --ghc-options OPTS
6566 give extra options to ghc
6567
6568 --ghc-pkg-options OPTS
6569 give extra options to ghc-pkg
6570
6571 --ghcjs-options OPTS
6572 give extra options to ghcjs
6573
6574 --ghcjs-pkg-options OPTS
6575 give extra options to ghcjs-pkg
6576
6577 --greencard-options OPTS
6578 give extra options to greencard
6579
6580 --haddock-options OPTS
6581 give extra options to haddock
6582
6583 --happy-options OPTS
6584 give extra options to happy
6585
6586 --haskell-suite-options OPTS
6587 give extra options to haskell-suite
6588
6589 --haskell-suite-pkg-options OPTS
6590 give extra options to haskell-suite-pkg
6591
6592 --hmake-options OPTS
6593 give extra options to hmake
6594
6595 --hpc-options OPTS
6596 give extra options to hpc
6597
6598 --hsc2hs-options OPTS
6599 give extra options to hsc2hs
6600
6601 --hscolour-options OPTS
6602 give extra options to hscolour
6603
6604 --jhc-options OPTS
6605 give extra options to jhc
6606
6607 --ld-options OPTS
6608 give extra options to ld
6609
6610 --pkg-config-options OPTS
6611 give extra options to pkg-config
6612
6613 --runghc-options OPTS
6614 give extra options to runghc
6615
6616 --strip-options OPTS
6617 give extra options to strip
6618
6619 --tar-options OPTS
6620 give extra options to tar
6621
6622 --uhc-options OPTS
6623 give extra options to uhc
6624
6625 --cabal-lib-version VERSION
6626 Select which version of the Cabal lib to use to build
6627 packages (useful for testing).
6628
6629 --constraint CONSTRAINT
6630 Specify constraints on a package (version,
6631 installed/source, flags)
6632
6633 --preference CONSTRAINT
6634 Specify preferences (soft constraints) on the version of
6635 a package
6636
6637 --solver SOLVER
6638 Select dependency solver to use (default: modular).
6639 Choices: modular.
6640
6641 --allow-older [DEPS]
6642 Ignore lower bounds in all dependencies or DEPS
6643
6644 --allow-newer [DEPS]
6645 Ignore upper bounds in all dependencies or DEPS
6646
6647 --write-ghc-environment-files always|never|ghc8.4.4+
6648 Whether to create a .ghc.environment file after a suc‐
6649 cessful build (v2-build only)
6650
6651 --enable-documentation
6652 --disable-documentation
6653 building of documentation
6654
6655 --doc-index-file TEMPLATE
6656 A central index of haddock API documentation (template
6657 cannot use $pkgid)
6658
6659 --dry-run
6660 Do not install anything, only print what would be
6661 installed.
6662
6663 --max-backjumps NUM
6664 Maximum number of backjumps allowed while solving
6665 (default: 4000). Use a negative number to enable unlim‐
6666 ited backtracking. Use 0 to disable backtracking com‐
6667 pletely.
6668
6669 --reorder-goals
6670 --no-reorder-goals
6671 Try to reorder goals according to certain heuristics.
6672 Slows things down on average, but may make backtracking
6673 faster for some packages.
6674
6675 --count-conflicts
6676 --no-count-conflicts
6677 Try to speed up solving by preferring goals that are
6678 involved in a lot of conflicts (default).
6679
6680 --minimize-conflict-set
6681 --no-minimize-conflict-set
6682 When there is no solution, try to improve the error mes‐
6683 sage by finding a minimal conflict set (default: false).
6684 May increase run time significantly.
6685
6686 --independent-goals
6687 --no-independent-goals
6688 Treat several goals on the command line as independent.
6689 If several goals depend on the same package, different
6690 versions can be chosen.
6691
6692 --shadow-installed-packages
6693 --no-shadow-installed-packages
6694 If multiple package instances of the same version are
6695 installed, treat all but one as shadowed.
6696
6697 --strong-flags
6698 --no-strong-flags
6699 Do not defer flag choices (this used to be the default in
6700 cabal-install <= 1.20).
6701
6702 --allow-boot-library-installs
6703 --no-allow-boot-library-installs
6704 Allow cabal to install base, ghc-prim, integer-simple,
6705 integer-gmp, and template-haskell.
6706
6707 --reject-unconstrained-dependencies none|all
6708 Require these packages to have constraints on them if
6709 they are to be selected (default: none).
6710
6711 --reinstall
6712 --no-reinstall
6713 Install even if it means installing the same version
6714 again.
6715
6716 --avoid-reinstalls
6717 --no-avoid-reinstalls
6718 Do not select versions that would destructively overwrite
6719 installed packages.
6720
6721 --force-reinstalls
6722 --no-force-reinstalls
6723 Reinstall packages even if they will most likely break
6724 other installed packages.
6725
6726 --upgrade-dependencies
6727 --no-upgrade-dependencies
6728 Pick the latest version for all dependencies, rather than
6729 trying to pick an installed version.
6730
6731 --only-dependencies
6732 --no-only-dependencies
6733 Install only the dependencies necessary to build the
6734 given packages
6735
6736 --dependencies-only
6737 --no-dependencies-only
6738 A synonym for --only-dependencies
6739
6740 --index-state STATE
6741 Use source package index state as it existed at a previ‐
6742 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
6743 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
6744 'HEAD' (default: 'HEAD').
6745
6746 --root-cmd COMMAND
6747 (No longer supported, do not use.)
6748
6749 --symlink-bindir DIR
6750 Add symlinks to installed executables into this direc‐
6751 tory.
6752
6753 --build-summary TEMPLATE
6754 Save build summaries to file (name template can use
6755 $pkgid, $compiler, $os, $arch)
6756
6757 --build-log TEMPLATE
6758 Log all builds to file (name template can use $pkgid,
6759 $compiler, $os, $arch)
6760
6761 --remote-build-reporting LEVEL
6762 Generate build reports to send to a remote server (none,
6763 anonymous or detailed).
6764
6765 --report-planning-failure
6766 Generate build reports when the dependency solver fails.
6767 This is used by the Hackage build bot.
6768
6769 --enable-per-component
6770 --disable-per-component
6771 Per-component builds when possible
6772
6773 --one-shot
6774 --no-one-shot
6775 Do not record the packages in the world file.
6776
6777 --run-tests
6778 Run package test suites during installation.
6779
6780 -j, --jobs [NUM]
6781 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
6782 given).
6783
6784 --keep-going
6785 After a build failure, continue to build other unaffected
6786 packages.
6787
6788 --offline
6789 --no-offline
6790 Don't download packages from the Internet.
6791
6792 --project-file FILE
6793 Set the name of the cabal.project file to search for in
6794 parent directories
6795
6796 --only
6797 Only installs the package in the current directory.
6798
6799 --haddock-hoogle
6800 Generate a hoogle database
6801
6802 --haddock-html
6803 Generate HTML documentation (the default)
6804
6805 --haddock-html-location URL
6806 Location of HTML documentation for pre-requisite packages
6807
6808 --haddock-for-hackage
6809 Collection of flags to generate documentation suitable
6810 for upload to hackage
6811
6812 --haddock-executables
6813 Run haddock for Executables targets
6814
6815 --haddock-tests
6816 Run haddock for Test Suite targets
6817
6818 --haddock-benchmarks
6819 Run haddock for Benchmark targets
6820
6821 --haddock-all
6822 Run haddock for all targets
6823
6824 --haddock-internal
6825 Run haddock for internal modules and include all symbols
6826
6827 --haddock-css PATH
6828 Use PATH as the haddock stylesheet
6829
6830 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
6831 dock-hyperlinked-source
6832 Hyperlink the documentation to the source code
6833
6834 --haddock-quickjump
6835 Generate an index for interactive documentation naviga‐
6836 tion
6837
6838 --haddock-hscolour-css PATH
6839 Use PATH as the HsColour stylesheet
6840
6841 --haddock-contents-location URL
6842 Bake URL in as the location for the contents page
6843
6844 --test-log TEMPLATE
6845 Log all test suite results to file (name template can use
6846 $pkgid, $compiler, $os, $arch, $test-suite, $result)
6847
6848 --test-machine-log TEMPLATE
6849 Produce a machine-readable log file (name template can
6850 use $pkgid, $compiler, $os, $arch, $result)
6851
6852 --test-show-details FILTER
6853
6854 --test-keep-tix-files
6855 keep .tix files for HPC between test runs
6856
6857 --test-wrapper FILE
6858 Run test through a wrapper.
6859
6860 --test-fail-when-no-test-suites
6861 Exit with failure when no test suites are found.
6862
6863 --test-options TEMPLATES
6864 give extra options to test executables (name templates
6865 can use $pkgid, $compiler, $os, $arch, $test-suite)
6866
6867 --test-option TEMPLATE
6868 give extra option to test executables (no need to quote
6869 options containing spaces, name template can use $pkgid,
6870 $compiler, $os, $arch, $test-suite)
6871
6872 --only-configure
6873 --no-only-configure
6874 Instead of performing a full build just run the configure
6875 step
6876
6877
6878 cabal v2-build
6879
6880 Usage: cabal v2-build [TARGETS] [FLAGS]
6881
6882
6883 Build one or more targets from within the project. The available tar‐
6884 gets are the packages in the project as well as individual components
6885 within those packages, including libraries, executables, test-suites or
6886 benchmarks. Targets can be specified by name or location. If no target
6887 is specified then the default is to build the package in the current
6888 directory.
6889
6890 Dependencies are built or rebuilt as necessary. Additional configura‐
6891 tion flags can be specified on the command line and these extend the
6892 project configuration from the 'cabal.project', 'cabal.project.local'
6893 and other files.
6894
6895
6896 Examples:
6897 cabal v2-build
6898 Build the package in the current directory or all packages in the
6899 project
6900 cabal v2-build pkgname
6901 Build the package named pkgname in the project
6902 cabal v2-build ./pkgfoo
6903 Build the package in the ./pkgfoo directory
6904 cabal v2-build cname
6905 Build the component named cname in the project
6906 cabal v2-build cname --enable-profiling
6907 Build the component in profiling mode (including dependencies as
6908 needed)
6909
6910 Note: this command is part of the new project-based system (aka nix-
6911 style local builds). These features are currently in beta. Please see
6912 http://cabal.readthedocs.io/en/latest/nix-local-build-overview.html for
6913 details and advice on what you can expect to work. If you encounter
6914 problems please file issues at https://github.com/haskell/cabal/issues
6915 and if you have any time to get involved and help with testing, fixing
6916 bugs etc then that is very much appreciated.
6917
6918
6919 Flags:
6920 -v, --verbose [n]
6921 Control verbosity (n is 0--3, default verbosity level is
6922 1)
6923
6924 --builddir, --distdir, --distpref DIR
6925 The directory where Cabal puts generated build files
6926 (default dist)
6927
6928 -g, --ghc
6929 compile with GHC
6930
6931 --ghcjs
6932 compile with GHCJS
6933
6934 --uhc
6935 compile with UHC
6936
6937 --haskell-suite
6938 compile with a haskell-suite compiler
6939
6940 --cabal-file PATH
6941 use this Cabal file
6942
6943 -w, --with-compiler PATH
6944 give the path to a particular compiler
6945
6946 --with-hc-pkg PATH
6947 give the path to the package tool
6948
6949 --prefix DIR
6950 bake this prefix in preparation of installation
6951
6952 --bindir DIR
6953 installation directory for executables
6954
6955 --libdir DIR
6956 installation directory for libraries
6957
6958 --libsubdir DIR
6959 subdirectory of libdir in which libs are installed
6960
6961 --dynlibdir DIR
6962 installation directory for dynamic libraries
6963
6964 --libexecdir DIR
6965 installation directory for program executables
6966
6967 --libexecsubdir DIR
6968 subdirectory of libexecdir in which private executables
6969 are installed
6970
6971 --datadir DIR
6972 installation directory for read-only data
6973
6974 --datasubdir DIR
6975 subdirectory of datadir in which data files are installed
6976
6977 --docdir DIR
6978 installation directory for documentation
6979
6980 --htmldir DIR
6981 installation directory for HTML documentation
6982
6983 --haddockdir DIR
6984 installation directory for haddock interfaces
6985
6986 --sysconfdir DIR
6987 installation directory for configuration files
6988
6989 --program-prefix PREFIX
6990 prefix to be applied to installed executables
6991
6992 --program-suffix SUFFIX
6993 suffix to be applied to installed executables
6994
6995 --enable-library-vanilla
6996 --disable-library-vanilla
6997 Vanilla libraries
6998
6999 -p, --enable-library-profiling
7000 --disable-library-profiling
7001 Library profiling
7002
7003 --enable-shared
7004 --disable-shared
7005 Shared library
7006
7007 --enable-static
7008 --disable-static
7009 Static library
7010
7011 --enable-executable-dynamic
7012 --disable-executable-dynamic
7013 Executable dynamic linking
7014
7015 --enable-executable-static
7016 --disable-executable-static
7017 Executable fully static linking
7018
7019 --enable-profiling
7020 --disable-profiling
7021 Executable and library profiling
7022
7023 --enable-executable-profiling
7024 --disable-executable-profiling
7025 Executable profiling (DEPRECATED)
7026
7027 --profiling-detail level
7028 Profiling detail level for executable and library
7029 (default, none, exported-functions, toplevel-functions,
7030 all-functions).
7031
7032 --library-profiling-detail level
7033 Profiling detail level for libraries only.
7034
7035 -O, --enable-optimization, --enable-optimisation [n]
7036 Build with optimization (n is 0--2, default is 1)
7037
7038 --disable-optimization, --disable-optimisation
7039 Build without optimization
7040
7041 --enable-debug-info [n]
7042 Emit debug info (n is 0--3, default is 0)
7043
7044 --disable-debug-info
7045 Don't emit debug info
7046
7047 --enable-library-for-ghci
7048 --disable-library-for-ghci
7049 compile library for use with GHCi
7050
7051 --enable-split-sections
7052 --disable-split-sections
7053 compile library code such that unneeded definitions can
7054 be dropped from the final executable (GHC 7.8+)
7055
7056 --enable-split-objs
7057 --disable-split-objs
7058 split library into smaller objects to reduce binary sizes
7059 (GHC 6.6+)
7060
7061 --enable-executable-stripping
7062 --disable-executable-stripping
7063 strip executables upon installation to reduce binary
7064 sizes
7065
7066 --enable-library-stripping
7067 --disable-library-stripping
7068 strip libraries upon installation to reduce binary sizes
7069
7070 --configure-option OPT
7071 Extra option for configure
7072
7073 --user
7074 --global
7075 doing a per-user installation
7076
7077 --package-db DB
7078 Append the given package database to the list of package
7079 databases used (to satisfy dependencies and register
7080 into). May be a specific file, 'global' or 'user'. The
7081 initial list is ['global'], ['global', 'user'], or
7082 ['global', $sandbox], depending on context. Use 'clear'
7083 to reset the list to empty. See the user guide for
7084 details.
7085
7086 -f, --flags FLAGS
7087 Force values for the given flags in Cabal conditionals in
7088 the .cabal file. E.g., --flags="debug -usebytestrings"
7089 forces the flag "debug" to true and "usebytestrings" to
7090 false.
7091
7092 --extra-include-dirs PATH
7093 A list of directories to search for header files
7094
7095 --enable-deterministic
7096 --disable-deterministic
7097 Try to be as deterministic as possible (used by the test
7098 suite)
7099
7100 --ipid IPID
7101 Installed package ID to compile this package as
7102
7103 --cid CID
7104 Installed component ID to compile this component as
7105
7106 --extra-lib-dirs PATH
7107 A list of directories to search for external libraries
7108
7109 --extra-framework-dirs PATH
7110 A list of directories to search for external frameworks
7111 (OS X only)
7112
7113 --extra-prog-path PATH
7114 A list of directories to search for required programs (in
7115 addition to the normal search locations)
7116
7117 --instantiate-with NAME=MOD
7118 A mapping of signature names to concrete module instanti‐
7119 ations.
7120
7121 --enable-tests
7122 --disable-tests
7123 dependency checking and compilation for test suites
7124 listed in the package description file.
7125
7126 --enable-coverage
7127 --disable-coverage
7128 build package with Haskell Program Coverage. (GHC only)
7129
7130 --enable-library-coverage
7131 --disable-library-coverage
7132 build package with Haskell Program Coverage. (GHC only)
7133 (DEPRECATED)
7134
7135 --enable-benchmarks
7136 --disable-benchmarks
7137 dependency checking and compilation for benchmarks listed
7138 in the package description file.
7139
7140 --enable-relocatable
7141 --disable-relocatable
7142 building a package that is relocatable. (GHC only)
7143
7144 --disable-response-files
7145 enable workaround for old versions of programs like "ar"
7146 that do not support @file arguments
7147
7148 --allow-depending-on-private-libs
7149 Allow depending on private libraries. If set, the library
7150 visibility check MUST be done externally.
7151
7152 --with-alex PATH
7153 give the path to alex
7154
7155 --with-ar PATH
7156 give the path to ar
7157
7158 --with-c2hs PATH
7159 give the path to c2hs
7160
7161 --with-cpphs PATH
7162 give the path to cpphs
7163
7164 --with-doctest PATH
7165 give the path to doctest
7166
7167 --with-gcc PATH
7168 give the path to gcc
7169
7170 --with-ghc PATH
7171 give the path to ghc
7172
7173 --with-ghc-pkg PATH
7174 give the path to ghc-pkg
7175
7176 --with-ghcjs PATH
7177 give the path to ghcjs
7178
7179 --with-ghcjs-pkg PATH
7180 give the path to ghcjs-pkg
7181
7182 --with-greencard PATH
7183 give the path to greencard
7184
7185 --with-haddock PATH
7186 give the path to haddock
7187
7188 --with-happy PATH
7189 give the path to happy
7190
7191 --with-haskell-suite PATH
7192 give the path to haskell-suite
7193
7194 --with-haskell-suite-pkg PATH
7195 give the path to haskell-suite-pkg
7196
7197 --with-hmake PATH
7198 give the path to hmake
7199
7200 --with-hpc PATH
7201 give the path to hpc
7202
7203 --with-hsc2hs PATH
7204 give the path to hsc2hs
7205
7206 --with-hscolour PATH
7207 give the path to hscolour
7208
7209 --with-jhc PATH
7210 give the path to jhc
7211
7212 --with-ld PATH
7213 give the path to ld
7214
7215 --with-pkg-config PATH
7216 give the path to pkg-config
7217
7218 --with-runghc PATH
7219 give the path to runghc
7220
7221 --with-strip PATH
7222 give the path to strip
7223
7224 --with-tar PATH
7225 give the path to tar
7226
7227 --with-uhc PATH
7228 give the path to uhc
7229
7230 --alex-option OPT
7231 give an extra option to alex (no need to quote options
7232 containing spaces)
7233
7234 --ar-option OPT
7235 give an extra option to ar (no need to quote options con‐
7236 taining spaces)
7237
7238 --c2hs-option OPT
7239 give an extra option to c2hs (no need to quote options
7240 containing spaces)
7241
7242 --cpphs-option OPT
7243 give an extra option to cpphs (no need to quote options
7244 containing spaces)
7245
7246 --doctest-option OPT
7247 give an extra option to doctest (no need to quote options
7248 containing spaces)
7249
7250 --gcc-option OPT
7251 give an extra option to gcc (no need to quote options
7252 containing spaces)
7253
7254 --ghc-option OPT
7255 give an extra option to ghc (no need to quote options
7256 containing spaces)
7257
7258 --ghc-pkg-option OPT
7259 give an extra option to ghc-pkg (no need to quote options
7260 containing spaces)
7261
7262 --ghcjs-option OPT
7263 give an extra option to ghcjs (no need to quote options
7264 containing spaces)
7265
7266 --ghcjs-pkg-option OPT
7267 give an extra option to ghcjs-pkg (no need to quote
7268 options containing spaces)
7269
7270 --greencard-option OPT
7271 give an extra option to greencard (no need to quote
7272 options containing spaces)
7273
7274 --haddock-option OPT
7275 give an extra option to haddock (no need to quote options
7276 containing spaces)
7277
7278 --happy-option OPT
7279 give an extra option to happy (no need to quote options
7280 containing spaces)
7281
7282 --haskell-suite-option OPT
7283 give an extra option to haskell-suite (no need to quote
7284 options containing spaces)
7285
7286 --haskell-suite-pkg-option OPT
7287 give an extra option to haskell-suite-pkg (no need to
7288 quote options containing spaces)
7289
7290 --hmake-option OPT
7291 give an extra option to hmake (no need to quote options
7292 containing spaces)
7293
7294 --hpc-option OPT
7295 give an extra option to hpc (no need to quote options
7296 containing spaces)
7297
7298 --hsc2hs-option OPT
7299 give an extra option to hsc2hs (no need to quote options
7300 containing spaces)
7301
7302 --hscolour-option OPT
7303 give an extra option to hscolour (no need to quote
7304 options containing spaces)
7305
7306 --jhc-option OPT
7307 give an extra option to jhc (no need to quote options
7308 containing spaces)
7309
7310 --ld-option OPT
7311 give an extra option to ld (no need to quote options con‐
7312 taining spaces)
7313
7314 --pkg-config-option OPT
7315 give an extra option to pkg-config (no need to quote
7316 options containing spaces)
7317
7318 --runghc-option OPT
7319 give an extra option to runghc (no need to quote options
7320 containing spaces)
7321
7322 --strip-option OPT
7323 give an extra option to strip (no need to quote options
7324 containing spaces)
7325
7326 --tar-option OPT
7327 give an extra option to tar (no need to quote options
7328 containing spaces)
7329
7330 --uhc-option OPT
7331 give an extra option to uhc (no need to quote options
7332 containing spaces)
7333
7334 --alex-options OPTS
7335 give extra options to alex
7336
7337 --ar-options OPTS
7338 give extra options to ar
7339
7340 --c2hs-options OPTS
7341 give extra options to c2hs
7342
7343 --cpphs-options OPTS
7344 give extra options to cpphs
7345
7346 --doctest-options OPTS
7347 give extra options to doctest
7348
7349 --gcc-options OPTS
7350 give extra options to gcc
7351
7352 --ghc-options OPTS
7353 give extra options to ghc
7354
7355 --ghc-pkg-options OPTS
7356 give extra options to ghc-pkg
7357
7358 --ghcjs-options OPTS
7359 give extra options to ghcjs
7360
7361 --ghcjs-pkg-options OPTS
7362 give extra options to ghcjs-pkg
7363
7364 --greencard-options OPTS
7365 give extra options to greencard
7366
7367 --haddock-options OPTS
7368 give extra options to haddock
7369
7370 --happy-options OPTS
7371 give extra options to happy
7372
7373 --haskell-suite-options OPTS
7374 give extra options to haskell-suite
7375
7376 --haskell-suite-pkg-options OPTS
7377 give extra options to haskell-suite-pkg
7378
7379 --hmake-options OPTS
7380 give extra options to hmake
7381
7382 --hpc-options OPTS
7383 give extra options to hpc
7384
7385 --hsc2hs-options OPTS
7386 give extra options to hsc2hs
7387
7388 --hscolour-options OPTS
7389 give extra options to hscolour
7390
7391 --jhc-options OPTS
7392 give extra options to jhc
7393
7394 --ld-options OPTS
7395 give extra options to ld
7396
7397 --pkg-config-options OPTS
7398 give extra options to pkg-config
7399
7400 --runghc-options OPTS
7401 give extra options to runghc
7402
7403 --strip-options OPTS
7404 give extra options to strip
7405
7406 --tar-options OPTS
7407 give extra options to tar
7408
7409 --uhc-options OPTS
7410 give extra options to uhc
7411
7412 --cabal-lib-version VERSION
7413 Select which version of the Cabal lib to use to build
7414 packages (useful for testing).
7415
7416 --constraint CONSTRAINT
7417 Specify constraints on a package (version,
7418 installed/source, flags)
7419
7420 --preference CONSTRAINT
7421 Specify preferences (soft constraints) on the version of
7422 a package
7423
7424 --solver SOLVER
7425 Select dependency solver to use (default: modular).
7426 Choices: modular.
7427
7428 --allow-older [DEPS]
7429 Ignore lower bounds in all dependencies or DEPS
7430
7431 --allow-newer [DEPS]
7432 Ignore upper bounds in all dependencies or DEPS
7433
7434 --write-ghc-environment-files always|never|ghc8.4.4+
7435 Whether to create a .ghc.environment file after a suc‐
7436 cessful build (v2-build only)
7437
7438 --enable-documentation
7439 --disable-documentation
7440 building of documentation
7441
7442 --doc-index-file TEMPLATE
7443 A central index of haddock API documentation (template
7444 cannot use $pkgid)
7445
7446 --dry-run
7447 Do not install anything, only print what would be
7448 installed.
7449
7450 --max-backjumps NUM
7451 Maximum number of backjumps allowed while solving
7452 (default: 4000). Use a negative number to enable unlim‐
7453 ited backtracking. Use 0 to disable backtracking com‐
7454 pletely.
7455
7456 --reorder-goals
7457 --no-reorder-goals
7458 Try to reorder goals according to certain heuristics.
7459 Slows things down on average, but may make backtracking
7460 faster for some packages.
7461
7462 --count-conflicts
7463 --no-count-conflicts
7464 Try to speed up solving by preferring goals that are
7465 involved in a lot of conflicts (default).
7466
7467 --minimize-conflict-set
7468 --no-minimize-conflict-set
7469 When there is no solution, try to improve the error mes‐
7470 sage by finding a minimal conflict set (default: false).
7471 May increase run time significantly.
7472
7473 --independent-goals
7474 --no-independent-goals
7475 Treat several goals on the command line as independent.
7476 If several goals depend on the same package, different
7477 versions can be chosen.
7478
7479 --shadow-installed-packages
7480 --no-shadow-installed-packages
7481 If multiple package instances of the same version are
7482 installed, treat all but one as shadowed.
7483
7484 --strong-flags
7485 --no-strong-flags
7486 Do not defer flag choices (this used to be the default in
7487 cabal-install <= 1.20).
7488
7489 --allow-boot-library-installs
7490 --no-allow-boot-library-installs
7491 Allow cabal to install base, ghc-prim, integer-simple,
7492 integer-gmp, and template-haskell.
7493
7494 --reject-unconstrained-dependencies none|all
7495 Require these packages to have constraints on them if
7496 they are to be selected (default: none).
7497
7498 --reinstall
7499 --no-reinstall
7500 Install even if it means installing the same version
7501 again.
7502
7503 --avoid-reinstalls
7504 --no-avoid-reinstalls
7505 Do not select versions that would destructively overwrite
7506 installed packages.
7507
7508 --force-reinstalls
7509 --no-force-reinstalls
7510 Reinstall packages even if they will most likely break
7511 other installed packages.
7512
7513 --upgrade-dependencies
7514 --no-upgrade-dependencies
7515 Pick the latest version for all dependencies, rather than
7516 trying to pick an installed version.
7517
7518 --only-dependencies
7519 --no-only-dependencies
7520 Install only the dependencies necessary to build the
7521 given packages
7522
7523 --dependencies-only
7524 --no-dependencies-only
7525 A synonym for --only-dependencies
7526
7527 --index-state STATE
7528 Use source package index state as it existed at a previ‐
7529 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
7530 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
7531 'HEAD' (default: 'HEAD').
7532
7533 --root-cmd COMMAND
7534 (No longer supported, do not use.)
7535
7536 --symlink-bindir DIR
7537 Add symlinks to installed executables into this direc‐
7538 tory.
7539
7540 --build-summary TEMPLATE
7541 Save build summaries to file (name template can use
7542 $pkgid, $compiler, $os, $arch)
7543
7544 --build-log TEMPLATE
7545 Log all builds to file (name template can use $pkgid,
7546 $compiler, $os, $arch)
7547
7548 --remote-build-reporting LEVEL
7549 Generate build reports to send to a remote server (none,
7550 anonymous or detailed).
7551
7552 --report-planning-failure
7553 Generate build reports when the dependency solver fails.
7554 This is used by the Hackage build bot.
7555
7556 --enable-per-component
7557 --disable-per-component
7558 Per-component builds when possible
7559
7560 --one-shot
7561 --no-one-shot
7562 Do not record the packages in the world file.
7563
7564 --run-tests
7565 Run package test suites during installation.
7566
7567 -j, --jobs [NUM]
7568 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
7569 given).
7570
7571 --keep-going
7572 After a build failure, continue to build other unaffected
7573 packages.
7574
7575 --offline
7576 --no-offline
7577 Don't download packages from the Internet.
7578
7579 --project-file FILE
7580 Set the name of the cabal.project file to search for in
7581 parent directories
7582
7583 --only
7584 Only installs the package in the current directory.
7585
7586 --haddock-hoogle
7587 Generate a hoogle database
7588
7589 --haddock-html
7590 Generate HTML documentation (the default)
7591
7592 --haddock-html-location URL
7593 Location of HTML documentation for pre-requisite packages
7594
7595 --haddock-for-hackage
7596 Collection of flags to generate documentation suitable
7597 for upload to hackage
7598
7599 --haddock-executables
7600 Run haddock for Executables targets
7601
7602 --haddock-tests
7603 Run haddock for Test Suite targets
7604
7605 --haddock-benchmarks
7606 Run haddock for Benchmark targets
7607
7608 --haddock-all
7609 Run haddock for all targets
7610
7611 --haddock-internal
7612 Run haddock for internal modules and include all symbols
7613
7614 --haddock-css PATH
7615 Use PATH as the haddock stylesheet
7616
7617 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
7618 dock-hyperlinked-source
7619 Hyperlink the documentation to the source code
7620
7621 --haddock-quickjump
7622 Generate an index for interactive documentation naviga‐
7623 tion
7624
7625 --haddock-hscolour-css PATH
7626 Use PATH as the HsColour stylesheet
7627
7628 --haddock-contents-location URL
7629 Bake URL in as the location for the contents page
7630
7631 --test-log TEMPLATE
7632 Log all test suite results to file (name template can use
7633 $pkgid, $compiler, $os, $arch, $test-suite, $result)
7634
7635 --test-machine-log TEMPLATE
7636 Produce a machine-readable log file (name template can
7637 use $pkgid, $compiler, $os, $arch, $result)
7638
7639 --test-show-details FILTER
7640
7641 --test-keep-tix-files
7642 keep .tix files for HPC between test runs
7643
7644 --test-wrapper FILE
7645 Run test through a wrapper.
7646
7647 --test-fail-when-no-test-suites
7648 Exit with failure when no test suites are found.
7649
7650 --test-options TEMPLATES
7651 give extra options to test executables (name templates
7652 can use $pkgid, $compiler, $os, $arch, $test-suite)
7653
7654 --test-option TEMPLATE
7655 give extra option to test executables (no need to quote
7656 options containing spaces, name template can use $pkgid,
7657 $compiler, $os, $arch, $test-suite)
7658
7659 --only-configure
7660 --no-only-configure
7661 Instead of performing a full build just run the configure
7662 step
7663
7664
7665 cabal repl
7666
7667 Usage: cabal repl [TARGET] [FLAGS]
7668
7669
7670 Open an interactive session for a component within the project. The
7671 available targets are the same as for the 'build' command: individual
7672 components within packages in the project, including libraries, exe‐
7673 cutables, test-suites or benchmarks. Packages can also be specified in
7674 which case the library component in the package will be used, or the
7675 (first listed) executable in the package if there is no library.
7676
7677 Dependencies are built or rebuilt as necessary. Additional configura‐
7678 tion flags can be specified on the command line and these extend the
7679 project configuration from the 'cabal.project', 'cabal.project.local'
7680 and other files.
7681
7682
7683 Open an interactive session for a component within the project. The
7684 available targets are the same as for the 'build' command: individual
7685 components within packages in the project, including libraries, exe‐
7686 cutables, test-suites or benchmarks. Packages can also be specified in
7687 which case the library component in the package will be used, or the
7688 (first listed) executable in the package if there is no library.
7689
7690 Dependencies are built or rebuilt as necessary. Additional configura‐
7691 tion flags can be specified on the command line and these extend the
7692 project configuration from the 'cabal.project', 'cabal.project.local'
7693 and other files.
7694
7695
7696 Flags:
7697 -v, --verbose [n]
7698 Control verbosity (n is 0--3, default verbosity level is
7699 1)
7700
7701 --builddir, --distdir, --distpref DIR
7702 The directory where Cabal puts generated build files
7703 (default dist)
7704
7705 -g, --ghc
7706 compile with GHC
7707
7708 --ghcjs
7709 compile with GHCJS
7710
7711 --uhc
7712 compile with UHC
7713
7714 --haskell-suite
7715 compile with a haskell-suite compiler
7716
7717 --cabal-file PATH
7718 use this Cabal file
7719
7720 -w, --with-compiler PATH
7721 give the path to a particular compiler
7722
7723 --with-hc-pkg PATH
7724 give the path to the package tool
7725
7726 --prefix DIR
7727 bake this prefix in preparation of installation
7728
7729 --bindir DIR
7730 installation directory for executables
7731
7732 --libdir DIR
7733 installation directory for libraries
7734
7735 --libsubdir DIR
7736 subdirectory of libdir in which libs are installed
7737
7738 --dynlibdir DIR
7739 installation directory for dynamic libraries
7740
7741 --libexecdir DIR
7742 installation directory for program executables
7743
7744 --libexecsubdir DIR
7745 subdirectory of libexecdir in which private executables
7746 are installed
7747
7748 --datadir DIR
7749 installation directory for read-only data
7750
7751 --datasubdir DIR
7752 subdirectory of datadir in which data files are installed
7753
7754 --docdir DIR
7755 installation directory for documentation
7756
7757 --htmldir DIR
7758 installation directory for HTML documentation
7759
7760 --haddockdir DIR
7761 installation directory for haddock interfaces
7762
7763 --sysconfdir DIR
7764 installation directory for configuration files
7765
7766 --program-prefix PREFIX
7767 prefix to be applied to installed executables
7768
7769 --program-suffix SUFFIX
7770 suffix to be applied to installed executables
7771
7772 --enable-library-vanilla
7773 --disable-library-vanilla
7774 Vanilla libraries
7775
7776 -p, --enable-library-profiling
7777 --disable-library-profiling
7778 Library profiling
7779
7780 --enable-shared
7781 --disable-shared
7782 Shared library
7783
7784 --enable-static
7785 --disable-static
7786 Static library
7787
7788 --enable-executable-dynamic
7789 --disable-executable-dynamic
7790 Executable dynamic linking
7791
7792 --enable-executable-static
7793 --disable-executable-static
7794 Executable fully static linking
7795
7796 --enable-profiling
7797 --disable-profiling
7798 Executable and library profiling
7799
7800 --enable-executable-profiling
7801 --disable-executable-profiling
7802 Executable profiling (DEPRECATED)
7803
7804 --profiling-detail level
7805 Profiling detail level for executable and library
7806 (default, none, exported-functions, toplevel-functions,
7807 all-functions).
7808
7809 --library-profiling-detail level
7810 Profiling detail level for libraries only.
7811
7812 -O, --enable-optimization, --enable-optimisation [n]
7813 Build with optimization (n is 0--2, default is 1)
7814
7815 --disable-optimization, --disable-optimisation
7816 Build without optimization
7817
7818 --enable-debug-info [n]
7819 Emit debug info (n is 0--3, default is 0)
7820
7821 --disable-debug-info
7822 Don't emit debug info
7823
7824 --enable-library-for-ghci
7825 --disable-library-for-ghci
7826 compile library for use with GHCi
7827
7828 --enable-split-sections
7829 --disable-split-sections
7830 compile library code such that unneeded definitions can
7831 be dropped from the final executable (GHC 7.8+)
7832
7833 --enable-split-objs
7834 --disable-split-objs
7835 split library into smaller objects to reduce binary sizes
7836 (GHC 6.6+)
7837
7838 --enable-executable-stripping
7839 --disable-executable-stripping
7840 strip executables upon installation to reduce binary
7841 sizes
7842
7843 --enable-library-stripping
7844 --disable-library-stripping
7845 strip libraries upon installation to reduce binary sizes
7846
7847 --configure-option OPT
7848 Extra option for configure
7849
7850 --user
7851 --global
7852 doing a per-user installation
7853
7854 --package-db DB
7855 Append the given package database to the list of package
7856 databases used (to satisfy dependencies and register
7857 into). May be a specific file, 'global' or 'user'. The
7858 initial list is ['global'], ['global', 'user'], or
7859 ['global', $sandbox], depending on context. Use 'clear'
7860 to reset the list to empty. See the user guide for
7861 details.
7862
7863 -f, --flags FLAGS
7864 Force values for the given flags in Cabal conditionals in
7865 the .cabal file. E.g., --flags="debug -usebytestrings"
7866 forces the flag "debug" to true and "usebytestrings" to
7867 false.
7868
7869 --extra-include-dirs PATH
7870 A list of directories to search for header files
7871
7872 --enable-deterministic
7873 --disable-deterministic
7874 Try to be as deterministic as possible (used by the test
7875 suite)
7876
7877 --ipid IPID
7878 Installed package ID to compile this package as
7879
7880 --cid CID
7881 Installed component ID to compile this component as
7882
7883 --extra-lib-dirs PATH
7884 A list of directories to search for external libraries
7885
7886 --extra-framework-dirs PATH
7887 A list of directories to search for external frameworks
7888 (OS X only)
7889
7890 --extra-prog-path PATH
7891 A list of directories to search for required programs (in
7892 addition to the normal search locations)
7893
7894 --instantiate-with NAME=MOD
7895 A mapping of signature names to concrete module instanti‐
7896 ations.
7897
7898 --enable-tests
7899 --disable-tests
7900 dependency checking and compilation for test suites
7901 listed in the package description file.
7902
7903 --enable-coverage
7904 --disable-coverage
7905 build package with Haskell Program Coverage. (GHC only)
7906
7907 --enable-library-coverage
7908 --disable-library-coverage
7909 build package with Haskell Program Coverage. (GHC only)
7910 (DEPRECATED)
7911
7912 --enable-benchmarks
7913 --disable-benchmarks
7914 dependency checking and compilation for benchmarks listed
7915 in the package description file.
7916
7917 --enable-relocatable
7918 --disable-relocatable
7919 building a package that is relocatable. (GHC only)
7920
7921 --disable-response-files
7922 enable workaround for old versions of programs like "ar"
7923 that do not support @file arguments
7924
7925 --allow-depending-on-private-libs
7926 Allow depending on private libraries. If set, the library
7927 visibility check MUST be done externally.
7928
7929 --with-alex PATH
7930 give the path to alex
7931
7932 --with-ar PATH
7933 give the path to ar
7934
7935 --with-c2hs PATH
7936 give the path to c2hs
7937
7938 --with-cpphs PATH
7939 give the path to cpphs
7940
7941 --with-doctest PATH
7942 give the path to doctest
7943
7944 --with-gcc PATH
7945 give the path to gcc
7946
7947 --with-ghc PATH
7948 give the path to ghc
7949
7950 --with-ghc-pkg PATH
7951 give the path to ghc-pkg
7952
7953 --with-ghcjs PATH
7954 give the path to ghcjs
7955
7956 --with-ghcjs-pkg PATH
7957 give the path to ghcjs-pkg
7958
7959 --with-greencard PATH
7960 give the path to greencard
7961
7962 --with-haddock PATH
7963 give the path to haddock
7964
7965 --with-happy PATH
7966 give the path to happy
7967
7968 --with-haskell-suite PATH
7969 give the path to haskell-suite
7970
7971 --with-haskell-suite-pkg PATH
7972 give the path to haskell-suite-pkg
7973
7974 --with-hmake PATH
7975 give the path to hmake
7976
7977 --with-hpc PATH
7978 give the path to hpc
7979
7980 --with-hsc2hs PATH
7981 give the path to hsc2hs
7982
7983 --with-hscolour PATH
7984 give the path to hscolour
7985
7986 --with-jhc PATH
7987 give the path to jhc
7988
7989 --with-ld PATH
7990 give the path to ld
7991
7992 --with-pkg-config PATH
7993 give the path to pkg-config
7994
7995 --with-runghc PATH
7996 give the path to runghc
7997
7998 --with-strip PATH
7999 give the path to strip
8000
8001 --with-tar PATH
8002 give the path to tar
8003
8004 --with-uhc PATH
8005 give the path to uhc
8006
8007 --alex-option OPT
8008 give an extra option to alex (no need to quote options
8009 containing spaces)
8010
8011 --ar-option OPT
8012 give an extra option to ar (no need to quote options con‐
8013 taining spaces)
8014
8015 --c2hs-option OPT
8016 give an extra option to c2hs (no need to quote options
8017 containing spaces)
8018
8019 --cpphs-option OPT
8020 give an extra option to cpphs (no need to quote options
8021 containing spaces)
8022
8023 --doctest-option OPT
8024 give an extra option to doctest (no need to quote options
8025 containing spaces)
8026
8027 --gcc-option OPT
8028 give an extra option to gcc (no need to quote options
8029 containing spaces)
8030
8031 --ghc-option OPT
8032 give an extra option to ghc (no need to quote options
8033 containing spaces)
8034
8035 --ghc-pkg-option OPT
8036 give an extra option to ghc-pkg (no need to quote options
8037 containing spaces)
8038
8039 --ghcjs-option OPT
8040 give an extra option to ghcjs (no need to quote options
8041 containing spaces)
8042
8043 --ghcjs-pkg-option OPT
8044 give an extra option to ghcjs-pkg (no need to quote
8045 options containing spaces)
8046
8047 --greencard-option OPT
8048 give an extra option to greencard (no need to quote
8049 options containing spaces)
8050
8051 --haddock-option OPT
8052 give an extra option to haddock (no need to quote options
8053 containing spaces)
8054
8055 --happy-option OPT
8056 give an extra option to happy (no need to quote options
8057 containing spaces)
8058
8059 --haskell-suite-option OPT
8060 give an extra option to haskell-suite (no need to quote
8061 options containing spaces)
8062
8063 --haskell-suite-pkg-option OPT
8064 give an extra option to haskell-suite-pkg (no need to
8065 quote options containing spaces)
8066
8067 --hmake-option OPT
8068 give an extra option to hmake (no need to quote options
8069 containing spaces)
8070
8071 --hpc-option OPT
8072 give an extra option to hpc (no need to quote options
8073 containing spaces)
8074
8075 --hsc2hs-option OPT
8076 give an extra option to hsc2hs (no need to quote options
8077 containing spaces)
8078
8079 --hscolour-option OPT
8080 give an extra option to hscolour (no need to quote
8081 options containing spaces)
8082
8083 --jhc-option OPT
8084 give an extra option to jhc (no need to quote options
8085 containing spaces)
8086
8087 --ld-option OPT
8088 give an extra option to ld (no need to quote options con‐
8089 taining spaces)
8090
8091 --pkg-config-option OPT
8092 give an extra option to pkg-config (no need to quote
8093 options containing spaces)
8094
8095 --runghc-option OPT
8096 give an extra option to runghc (no need to quote options
8097 containing spaces)
8098
8099 --strip-option OPT
8100 give an extra option to strip (no need to quote options
8101 containing spaces)
8102
8103 --tar-option OPT
8104 give an extra option to tar (no need to quote options
8105 containing spaces)
8106
8107 --uhc-option OPT
8108 give an extra option to uhc (no need to quote options
8109 containing spaces)
8110
8111 --alex-options OPTS
8112 give extra options to alex
8113
8114 --ar-options OPTS
8115 give extra options to ar
8116
8117 --c2hs-options OPTS
8118 give extra options to c2hs
8119
8120 --cpphs-options OPTS
8121 give extra options to cpphs
8122
8123 --doctest-options OPTS
8124 give extra options to doctest
8125
8126 --gcc-options OPTS
8127 give extra options to gcc
8128
8129 --ghc-options OPTS
8130 give extra options to ghc
8131
8132 --ghc-pkg-options OPTS
8133 give extra options to ghc-pkg
8134
8135 --ghcjs-options OPTS
8136 give extra options to ghcjs
8137
8138 --ghcjs-pkg-options OPTS
8139 give extra options to ghcjs-pkg
8140
8141 --greencard-options OPTS
8142 give extra options to greencard
8143
8144 --haddock-options OPTS
8145 give extra options to haddock
8146
8147 --happy-options OPTS
8148 give extra options to happy
8149
8150 --haskell-suite-options OPTS
8151 give extra options to haskell-suite
8152
8153 --haskell-suite-pkg-options OPTS
8154 give extra options to haskell-suite-pkg
8155
8156 --hmake-options OPTS
8157 give extra options to hmake
8158
8159 --hpc-options OPTS
8160 give extra options to hpc
8161
8162 --hsc2hs-options OPTS
8163 give extra options to hsc2hs
8164
8165 --hscolour-options OPTS
8166 give extra options to hscolour
8167
8168 --jhc-options OPTS
8169 give extra options to jhc
8170
8171 --ld-options OPTS
8172 give extra options to ld
8173
8174 --pkg-config-options OPTS
8175 give extra options to pkg-config
8176
8177 --runghc-options OPTS
8178 give extra options to runghc
8179
8180 --strip-options OPTS
8181 give extra options to strip
8182
8183 --tar-options OPTS
8184 give extra options to tar
8185
8186 --uhc-options OPTS
8187 give extra options to uhc
8188
8189 --cabal-lib-version VERSION
8190 Select which version of the Cabal lib to use to build
8191 packages (useful for testing).
8192
8193 --constraint CONSTRAINT
8194 Specify constraints on a package (version,
8195 installed/source, flags)
8196
8197 --preference CONSTRAINT
8198 Specify preferences (soft constraints) on the version of
8199 a package
8200
8201 --solver SOLVER
8202 Select dependency solver to use (default: modular).
8203 Choices: modular.
8204
8205 --allow-older [DEPS]
8206 Ignore lower bounds in all dependencies or DEPS
8207
8208 --allow-newer [DEPS]
8209 Ignore upper bounds in all dependencies or DEPS
8210
8211 --write-ghc-environment-files always|never|ghc8.4.4+
8212 Whether to create a .ghc.environment file after a suc‐
8213 cessful build (v2-build only)
8214
8215 --enable-documentation
8216 --disable-documentation
8217 building of documentation
8218
8219 --doc-index-file TEMPLATE
8220 A central index of haddock API documentation (template
8221 cannot use $pkgid)
8222
8223 --dry-run
8224 Do not install anything, only print what would be
8225 installed.
8226
8227 --max-backjumps NUM
8228 Maximum number of backjumps allowed while solving
8229 (default: 4000). Use a negative number to enable unlim‐
8230 ited backtracking. Use 0 to disable backtracking com‐
8231 pletely.
8232
8233 --reorder-goals
8234 --no-reorder-goals
8235 Try to reorder goals according to certain heuristics.
8236 Slows things down on average, but may make backtracking
8237 faster for some packages.
8238
8239 --count-conflicts
8240 --no-count-conflicts
8241 Try to speed up solving by preferring goals that are
8242 involved in a lot of conflicts (default).
8243
8244 --minimize-conflict-set
8245 --no-minimize-conflict-set
8246 When there is no solution, try to improve the error mes‐
8247 sage by finding a minimal conflict set (default: false).
8248 May increase run time significantly.
8249
8250 --independent-goals
8251 --no-independent-goals
8252 Treat several goals on the command line as independent.
8253 If several goals depend on the same package, different
8254 versions can be chosen.
8255
8256 --shadow-installed-packages
8257 --no-shadow-installed-packages
8258 If multiple package instances of the same version are
8259 installed, treat all but one as shadowed.
8260
8261 --strong-flags
8262 --no-strong-flags
8263 Do not defer flag choices (this used to be the default in
8264 cabal-install <= 1.20).
8265
8266 --allow-boot-library-installs
8267 --no-allow-boot-library-installs
8268 Allow cabal to install base, ghc-prim, integer-simple,
8269 integer-gmp, and template-haskell.
8270
8271 --reject-unconstrained-dependencies none|all
8272 Require these packages to have constraints on them if
8273 they are to be selected (default: none).
8274
8275 --reinstall
8276 --no-reinstall
8277 Install even if it means installing the same version
8278 again.
8279
8280 --avoid-reinstalls
8281 --no-avoid-reinstalls
8282 Do not select versions that would destructively overwrite
8283 installed packages.
8284
8285 --force-reinstalls
8286 --no-force-reinstalls
8287 Reinstall packages even if they will most likely break
8288 other installed packages.
8289
8290 --upgrade-dependencies
8291 --no-upgrade-dependencies
8292 Pick the latest version for all dependencies, rather than
8293 trying to pick an installed version.
8294
8295 --only-dependencies
8296 --no-only-dependencies
8297 Install only the dependencies necessary to build the
8298 given packages
8299
8300 --dependencies-only
8301 --no-dependencies-only
8302 A synonym for --only-dependencies
8303
8304 --index-state STATE
8305 Use source package index state as it existed at a previ‐
8306 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
8307 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
8308 'HEAD' (default: 'HEAD').
8309
8310 --root-cmd COMMAND
8311 (No longer supported, do not use.)
8312
8313 --symlink-bindir DIR
8314 Add symlinks to installed executables into this direc‐
8315 tory.
8316
8317 --build-summary TEMPLATE
8318 Save build summaries to file (name template can use
8319 $pkgid, $compiler, $os, $arch)
8320
8321 --build-log TEMPLATE
8322 Log all builds to file (name template can use $pkgid,
8323 $compiler, $os, $arch)
8324
8325 --remote-build-reporting LEVEL
8326 Generate build reports to send to a remote server (none,
8327 anonymous or detailed).
8328
8329 --report-planning-failure
8330 Generate build reports when the dependency solver fails.
8331 This is used by the Hackage build bot.
8332
8333 --enable-per-component
8334 --disable-per-component
8335 Per-component builds when possible
8336
8337 --one-shot
8338 --no-one-shot
8339 Do not record the packages in the world file.
8340
8341 --run-tests
8342 Run package test suites during installation.
8343
8344 -j, --jobs [NUM]
8345 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
8346 given).
8347
8348 --keep-going
8349 After a build failure, continue to build other unaffected
8350 packages.
8351
8352 --offline
8353 --no-offline
8354 Don't download packages from the Internet.
8355
8356 --project-file FILE
8357 Set the name of the cabal.project file to search for in
8358 parent directories
8359
8360 --only
8361 Only installs the package in the current directory.
8362
8363 --haddock-hoogle
8364 Generate a hoogle database
8365
8366 --haddock-html
8367 Generate HTML documentation (the default)
8368
8369 --haddock-html-location URL
8370 Location of HTML documentation for pre-requisite packages
8371
8372 --haddock-for-hackage
8373 Collection of flags to generate documentation suitable
8374 for upload to hackage
8375
8376 --haddock-executables
8377 Run haddock for Executables targets
8378
8379 --haddock-tests
8380 Run haddock for Test Suite targets
8381
8382 --haddock-benchmarks
8383 Run haddock for Benchmark targets
8384
8385 --haddock-all
8386 Run haddock for all targets
8387
8388 --haddock-internal
8389 Run haddock for internal modules and include all symbols
8390
8391 --haddock-css PATH
8392 Use PATH as the haddock stylesheet
8393
8394 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
8395 dock-hyperlinked-source
8396 Hyperlink the documentation to the source code
8397
8398 --haddock-quickjump
8399 Generate an index for interactive documentation naviga‐
8400 tion
8401
8402 --haddock-hscolour-css PATH
8403 Use PATH as the HsColour stylesheet
8404
8405 --haddock-contents-location URL
8406 Bake URL in as the location for the contents page
8407
8408 --test-log TEMPLATE
8409 Log all test suite results to file (name template can use
8410 $pkgid, $compiler, $os, $arch, $test-suite, $result)
8411
8412 --test-machine-log TEMPLATE
8413 Produce a machine-readable log file (name template can
8414 use $pkgid, $compiler, $os, $arch, $result)
8415
8416 --test-show-details FILTER
8417
8418 --test-keep-tix-files
8419 keep .tix files for HPC between test runs
8420
8421 --test-wrapper FILE
8422 Run test through a wrapper.
8423
8424 --test-fail-when-no-test-suites
8425 Exit with failure when no test suites are found.
8426
8427 --test-options TEMPLATES
8428 give extra options to test executables (name templates
8429 can use $pkgid, $compiler, $os, $arch, $test-suite)
8430
8431 --test-option TEMPLATE
8432 give extra option to test executables (no need to quote
8433 options containing spaces, name template can use $pkgid,
8434 $compiler, $os, $arch, $test-suite)
8435
8436 --repl-options FLAG
8437 use this option for the repl
8438
8439 -b, --build-depends DEPENDENCY
8440 Include an additional package in the environment pre‐
8441 sented to GHCi.
8442
8443 --no-transitive-deps
8444 Don't automatically include transitive dependencies of
8445 requested packages.
8446
8447 -z, --ignore-project
8448 Only include explicitly specified packages (and 'base').
8449
8450
8451 cabal new-repl
8452
8453 Usage: cabal new-repl [TARGET] [FLAGS]
8454
8455
8456 Open an interactive session for a component within the project. The
8457 available targets are the same as for the 'new-build' command: individ‐
8458 ual components within packages in the project, including libraries,
8459 executables, test-suites or benchmarks. Packages can also be specified
8460 in which case the library component in the package will be used, or the
8461 (first listed) executable in the package if there is no library.
8462
8463 Dependencies are built or rebuilt as necessary. Additional configura‐
8464 tion flags can be specified on the command line and these extend the
8465 project configuration from the 'cabal.project', 'cabal.project.local'
8466 and other files.
8467
8468
8469 Open an interactive session for a component within the project. The
8470 available targets are the same as for the 'new-build' command: individ‐
8471 ual components within packages in the project, including libraries,
8472 executables, test-suites or benchmarks. Packages can also be specified
8473 in which case the library component in the package will be used, or the
8474 (first listed) executable in the package if there is no library.
8475
8476 Dependencies are built or rebuilt as necessary. Additional configura‐
8477 tion flags can be specified on the command line and these extend the
8478 project configuration from the 'cabal.project', 'cabal.project.local'
8479 and other files.
8480
8481
8482 Flags:
8483 -v, --verbose [n]
8484 Control verbosity (n is 0--3, default verbosity level is
8485 1)
8486
8487 --builddir, --distdir, --distpref DIR
8488 The directory where Cabal puts generated build files
8489 (default dist)
8490
8491 -g, --ghc
8492 compile with GHC
8493
8494 --ghcjs
8495 compile with GHCJS
8496
8497 --uhc
8498 compile with UHC
8499
8500 --haskell-suite
8501 compile with a haskell-suite compiler
8502
8503 --cabal-file PATH
8504 use this Cabal file
8505
8506 -w, --with-compiler PATH
8507 give the path to a particular compiler
8508
8509 --with-hc-pkg PATH
8510 give the path to the package tool
8511
8512 --prefix DIR
8513 bake this prefix in preparation of installation
8514
8515 --bindir DIR
8516 installation directory for executables
8517
8518 --libdir DIR
8519 installation directory for libraries
8520
8521 --libsubdir DIR
8522 subdirectory of libdir in which libs are installed
8523
8524 --dynlibdir DIR
8525 installation directory for dynamic libraries
8526
8527 --libexecdir DIR
8528 installation directory for program executables
8529
8530 --libexecsubdir DIR
8531 subdirectory of libexecdir in which private executables
8532 are installed
8533
8534 --datadir DIR
8535 installation directory for read-only data
8536
8537 --datasubdir DIR
8538 subdirectory of datadir in which data files are installed
8539
8540 --docdir DIR
8541 installation directory for documentation
8542
8543 --htmldir DIR
8544 installation directory for HTML documentation
8545
8546 --haddockdir DIR
8547 installation directory for haddock interfaces
8548
8549 --sysconfdir DIR
8550 installation directory for configuration files
8551
8552 --program-prefix PREFIX
8553 prefix to be applied to installed executables
8554
8555 --program-suffix SUFFIX
8556 suffix to be applied to installed executables
8557
8558 --enable-library-vanilla
8559 --disable-library-vanilla
8560 Vanilla libraries
8561
8562 -p, --enable-library-profiling
8563 --disable-library-profiling
8564 Library profiling
8565
8566 --enable-shared
8567 --disable-shared
8568 Shared library
8569
8570 --enable-static
8571 --disable-static
8572 Static library
8573
8574 --enable-executable-dynamic
8575 --disable-executable-dynamic
8576 Executable dynamic linking
8577
8578 --enable-executable-static
8579 --disable-executable-static
8580 Executable fully static linking
8581
8582 --enable-profiling
8583 --disable-profiling
8584 Executable and library profiling
8585
8586 --enable-executable-profiling
8587 --disable-executable-profiling
8588 Executable profiling (DEPRECATED)
8589
8590 --profiling-detail level
8591 Profiling detail level for executable and library
8592 (default, none, exported-functions, toplevel-functions,
8593 all-functions).
8594
8595 --library-profiling-detail level
8596 Profiling detail level for libraries only.
8597
8598 -O, --enable-optimization, --enable-optimisation [n]
8599 Build with optimization (n is 0--2, default is 1)
8600
8601 --disable-optimization, --disable-optimisation
8602 Build without optimization
8603
8604 --enable-debug-info [n]
8605 Emit debug info (n is 0--3, default is 0)
8606
8607 --disable-debug-info
8608 Don't emit debug info
8609
8610 --enable-library-for-ghci
8611 --disable-library-for-ghci
8612 compile library for use with GHCi
8613
8614 --enable-split-sections
8615 --disable-split-sections
8616 compile library code such that unneeded definitions can
8617 be dropped from the final executable (GHC 7.8+)
8618
8619 --enable-split-objs
8620 --disable-split-objs
8621 split library into smaller objects to reduce binary sizes
8622 (GHC 6.6+)
8623
8624 --enable-executable-stripping
8625 --disable-executable-stripping
8626 strip executables upon installation to reduce binary
8627 sizes
8628
8629 --enable-library-stripping
8630 --disable-library-stripping
8631 strip libraries upon installation to reduce binary sizes
8632
8633 --configure-option OPT
8634 Extra option for configure
8635
8636 --user
8637 --global
8638 doing a per-user installation
8639
8640 --package-db DB
8641 Append the given package database to the list of package
8642 databases used (to satisfy dependencies and register
8643 into). May be a specific file, 'global' or 'user'. The
8644 initial list is ['global'], ['global', 'user'], or
8645 ['global', $sandbox], depending on context. Use 'clear'
8646 to reset the list to empty. See the user guide for
8647 details.
8648
8649 -f, --flags FLAGS
8650 Force values for the given flags in Cabal conditionals in
8651 the .cabal file. E.g., --flags="debug -usebytestrings"
8652 forces the flag "debug" to true and "usebytestrings" to
8653 false.
8654
8655 --extra-include-dirs PATH
8656 A list of directories to search for header files
8657
8658 --enable-deterministic
8659 --disable-deterministic
8660 Try to be as deterministic as possible (used by the test
8661 suite)
8662
8663 --ipid IPID
8664 Installed package ID to compile this package as
8665
8666 --cid CID
8667 Installed component ID to compile this component as
8668
8669 --extra-lib-dirs PATH
8670 A list of directories to search for external libraries
8671
8672 --extra-framework-dirs PATH
8673 A list of directories to search for external frameworks
8674 (OS X only)
8675
8676 --extra-prog-path PATH
8677 A list of directories to search for required programs (in
8678 addition to the normal search locations)
8679
8680 --instantiate-with NAME=MOD
8681 A mapping of signature names to concrete module instanti‐
8682 ations.
8683
8684 --enable-tests
8685 --disable-tests
8686 dependency checking and compilation for test suites
8687 listed in the package description file.
8688
8689 --enable-coverage
8690 --disable-coverage
8691 build package with Haskell Program Coverage. (GHC only)
8692
8693 --enable-library-coverage
8694 --disable-library-coverage
8695 build package with Haskell Program Coverage. (GHC only)
8696 (DEPRECATED)
8697
8698 --enable-benchmarks
8699 --disable-benchmarks
8700 dependency checking and compilation for benchmarks listed
8701 in the package description file.
8702
8703 --enable-relocatable
8704 --disable-relocatable
8705 building a package that is relocatable. (GHC only)
8706
8707 --disable-response-files
8708 enable workaround for old versions of programs like "ar"
8709 that do not support @file arguments
8710
8711 --allow-depending-on-private-libs
8712 Allow depending on private libraries. If set, the library
8713 visibility check MUST be done externally.
8714
8715 --with-alex PATH
8716 give the path to alex
8717
8718 --with-ar PATH
8719 give the path to ar
8720
8721 --with-c2hs PATH
8722 give the path to c2hs
8723
8724 --with-cpphs PATH
8725 give the path to cpphs
8726
8727 --with-doctest PATH
8728 give the path to doctest
8729
8730 --with-gcc PATH
8731 give the path to gcc
8732
8733 --with-ghc PATH
8734 give the path to ghc
8735
8736 --with-ghc-pkg PATH
8737 give the path to ghc-pkg
8738
8739 --with-ghcjs PATH
8740 give the path to ghcjs
8741
8742 --with-ghcjs-pkg PATH
8743 give the path to ghcjs-pkg
8744
8745 --with-greencard PATH
8746 give the path to greencard
8747
8748 --with-haddock PATH
8749 give the path to haddock
8750
8751 --with-happy PATH
8752 give the path to happy
8753
8754 --with-haskell-suite PATH
8755 give the path to haskell-suite
8756
8757 --with-haskell-suite-pkg PATH
8758 give the path to haskell-suite-pkg
8759
8760 --with-hmake PATH
8761 give the path to hmake
8762
8763 --with-hpc PATH
8764 give the path to hpc
8765
8766 --with-hsc2hs PATH
8767 give the path to hsc2hs
8768
8769 --with-hscolour PATH
8770 give the path to hscolour
8771
8772 --with-jhc PATH
8773 give the path to jhc
8774
8775 --with-ld PATH
8776 give the path to ld
8777
8778 --with-pkg-config PATH
8779 give the path to pkg-config
8780
8781 --with-runghc PATH
8782 give the path to runghc
8783
8784 --with-strip PATH
8785 give the path to strip
8786
8787 --with-tar PATH
8788 give the path to tar
8789
8790 --with-uhc PATH
8791 give the path to uhc
8792
8793 --alex-option OPT
8794 give an extra option to alex (no need to quote options
8795 containing spaces)
8796
8797 --ar-option OPT
8798 give an extra option to ar (no need to quote options con‐
8799 taining spaces)
8800
8801 --c2hs-option OPT
8802 give an extra option to c2hs (no need to quote options
8803 containing spaces)
8804
8805 --cpphs-option OPT
8806 give an extra option to cpphs (no need to quote options
8807 containing spaces)
8808
8809 --doctest-option OPT
8810 give an extra option to doctest (no need to quote options
8811 containing spaces)
8812
8813 --gcc-option OPT
8814 give an extra option to gcc (no need to quote options
8815 containing spaces)
8816
8817 --ghc-option OPT
8818 give an extra option to ghc (no need to quote options
8819 containing spaces)
8820
8821 --ghc-pkg-option OPT
8822 give an extra option to ghc-pkg (no need to quote options
8823 containing spaces)
8824
8825 --ghcjs-option OPT
8826 give an extra option to ghcjs (no need to quote options
8827 containing spaces)
8828
8829 --ghcjs-pkg-option OPT
8830 give an extra option to ghcjs-pkg (no need to quote
8831 options containing spaces)
8832
8833 --greencard-option OPT
8834 give an extra option to greencard (no need to quote
8835 options containing spaces)
8836
8837 --haddock-option OPT
8838 give an extra option to haddock (no need to quote options
8839 containing spaces)
8840
8841 --happy-option OPT
8842 give an extra option to happy (no need to quote options
8843 containing spaces)
8844
8845 --haskell-suite-option OPT
8846 give an extra option to haskell-suite (no need to quote
8847 options containing spaces)
8848
8849 --haskell-suite-pkg-option OPT
8850 give an extra option to haskell-suite-pkg (no need to
8851 quote options containing spaces)
8852
8853 --hmake-option OPT
8854 give an extra option to hmake (no need to quote options
8855 containing spaces)
8856
8857 --hpc-option OPT
8858 give an extra option to hpc (no need to quote options
8859 containing spaces)
8860
8861 --hsc2hs-option OPT
8862 give an extra option to hsc2hs (no need to quote options
8863 containing spaces)
8864
8865 --hscolour-option OPT
8866 give an extra option to hscolour (no need to quote
8867 options containing spaces)
8868
8869 --jhc-option OPT
8870 give an extra option to jhc (no need to quote options
8871 containing spaces)
8872
8873 --ld-option OPT
8874 give an extra option to ld (no need to quote options con‐
8875 taining spaces)
8876
8877 --pkg-config-option OPT
8878 give an extra option to pkg-config (no need to quote
8879 options containing spaces)
8880
8881 --runghc-option OPT
8882 give an extra option to runghc (no need to quote options
8883 containing spaces)
8884
8885 --strip-option OPT
8886 give an extra option to strip (no need to quote options
8887 containing spaces)
8888
8889 --tar-option OPT
8890 give an extra option to tar (no need to quote options
8891 containing spaces)
8892
8893 --uhc-option OPT
8894 give an extra option to uhc (no need to quote options
8895 containing spaces)
8896
8897 --alex-options OPTS
8898 give extra options to alex
8899
8900 --ar-options OPTS
8901 give extra options to ar
8902
8903 --c2hs-options OPTS
8904 give extra options to c2hs
8905
8906 --cpphs-options OPTS
8907 give extra options to cpphs
8908
8909 --doctest-options OPTS
8910 give extra options to doctest
8911
8912 --gcc-options OPTS
8913 give extra options to gcc
8914
8915 --ghc-options OPTS
8916 give extra options to ghc
8917
8918 --ghc-pkg-options OPTS
8919 give extra options to ghc-pkg
8920
8921 --ghcjs-options OPTS
8922 give extra options to ghcjs
8923
8924 --ghcjs-pkg-options OPTS
8925 give extra options to ghcjs-pkg
8926
8927 --greencard-options OPTS
8928 give extra options to greencard
8929
8930 --haddock-options OPTS
8931 give extra options to haddock
8932
8933 --happy-options OPTS
8934 give extra options to happy
8935
8936 --haskell-suite-options OPTS
8937 give extra options to haskell-suite
8938
8939 --haskell-suite-pkg-options OPTS
8940 give extra options to haskell-suite-pkg
8941
8942 --hmake-options OPTS
8943 give extra options to hmake
8944
8945 --hpc-options OPTS
8946 give extra options to hpc
8947
8948 --hsc2hs-options OPTS
8949 give extra options to hsc2hs
8950
8951 --hscolour-options OPTS
8952 give extra options to hscolour
8953
8954 --jhc-options OPTS
8955 give extra options to jhc
8956
8957 --ld-options OPTS
8958 give extra options to ld
8959
8960 --pkg-config-options OPTS
8961 give extra options to pkg-config
8962
8963 --runghc-options OPTS
8964 give extra options to runghc
8965
8966 --strip-options OPTS
8967 give extra options to strip
8968
8969 --tar-options OPTS
8970 give extra options to tar
8971
8972 --uhc-options OPTS
8973 give extra options to uhc
8974
8975 --cabal-lib-version VERSION
8976 Select which version of the Cabal lib to use to build
8977 packages (useful for testing).
8978
8979 --constraint CONSTRAINT
8980 Specify constraints on a package (version,
8981 installed/source, flags)
8982
8983 --preference CONSTRAINT
8984 Specify preferences (soft constraints) on the version of
8985 a package
8986
8987 --solver SOLVER
8988 Select dependency solver to use (default: modular).
8989 Choices: modular.
8990
8991 --allow-older [DEPS]
8992 Ignore lower bounds in all dependencies or DEPS
8993
8994 --allow-newer [DEPS]
8995 Ignore upper bounds in all dependencies or DEPS
8996
8997 --write-ghc-environment-files always|never|ghc8.4.4+
8998 Whether to create a .ghc.environment file after a suc‐
8999 cessful build (v2-build only)
9000
9001 --enable-documentation
9002 --disable-documentation
9003 building of documentation
9004
9005 --doc-index-file TEMPLATE
9006 A central index of haddock API documentation (template
9007 cannot use $pkgid)
9008
9009 --dry-run
9010 Do not install anything, only print what would be
9011 installed.
9012
9013 --max-backjumps NUM
9014 Maximum number of backjumps allowed while solving
9015 (default: 4000). Use a negative number to enable unlim‐
9016 ited backtracking. Use 0 to disable backtracking com‐
9017 pletely.
9018
9019 --reorder-goals
9020 --no-reorder-goals
9021 Try to reorder goals according to certain heuristics.
9022 Slows things down on average, but may make backtracking
9023 faster for some packages.
9024
9025 --count-conflicts
9026 --no-count-conflicts
9027 Try to speed up solving by preferring goals that are
9028 involved in a lot of conflicts (default).
9029
9030 --minimize-conflict-set
9031 --no-minimize-conflict-set
9032 When there is no solution, try to improve the error mes‐
9033 sage by finding a minimal conflict set (default: false).
9034 May increase run time significantly.
9035
9036 --independent-goals
9037 --no-independent-goals
9038 Treat several goals on the command line as independent.
9039 If several goals depend on the same package, different
9040 versions can be chosen.
9041
9042 --shadow-installed-packages
9043 --no-shadow-installed-packages
9044 If multiple package instances of the same version are
9045 installed, treat all but one as shadowed.
9046
9047 --strong-flags
9048 --no-strong-flags
9049 Do not defer flag choices (this used to be the default in
9050 cabal-install <= 1.20).
9051
9052 --allow-boot-library-installs
9053 --no-allow-boot-library-installs
9054 Allow cabal to install base, ghc-prim, integer-simple,
9055 integer-gmp, and template-haskell.
9056
9057 --reject-unconstrained-dependencies none|all
9058 Require these packages to have constraints on them if
9059 they are to be selected (default: none).
9060
9061 --reinstall
9062 --no-reinstall
9063 Install even if it means installing the same version
9064 again.
9065
9066 --avoid-reinstalls
9067 --no-avoid-reinstalls
9068 Do not select versions that would destructively overwrite
9069 installed packages.
9070
9071 --force-reinstalls
9072 --no-force-reinstalls
9073 Reinstall packages even if they will most likely break
9074 other installed packages.
9075
9076 --upgrade-dependencies
9077 --no-upgrade-dependencies
9078 Pick the latest version for all dependencies, rather than
9079 trying to pick an installed version.
9080
9081 --only-dependencies
9082 --no-only-dependencies
9083 Install only the dependencies necessary to build the
9084 given packages
9085
9086 --dependencies-only
9087 --no-dependencies-only
9088 A synonym for --only-dependencies
9089
9090 --index-state STATE
9091 Use source package index state as it existed at a previ‐
9092 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
9093 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
9094 'HEAD' (default: 'HEAD').
9095
9096 --root-cmd COMMAND
9097 (No longer supported, do not use.)
9098
9099 --symlink-bindir DIR
9100 Add symlinks to installed executables into this direc‐
9101 tory.
9102
9103 --build-summary TEMPLATE
9104 Save build summaries to file (name template can use
9105 $pkgid, $compiler, $os, $arch)
9106
9107 --build-log TEMPLATE
9108 Log all builds to file (name template can use $pkgid,
9109 $compiler, $os, $arch)
9110
9111 --remote-build-reporting LEVEL
9112 Generate build reports to send to a remote server (none,
9113 anonymous or detailed).
9114
9115 --report-planning-failure
9116 Generate build reports when the dependency solver fails.
9117 This is used by the Hackage build bot.
9118
9119 --enable-per-component
9120 --disable-per-component
9121 Per-component builds when possible
9122
9123 --one-shot
9124 --no-one-shot
9125 Do not record the packages in the world file.
9126
9127 --run-tests
9128 Run package test suites during installation.
9129
9130 -j, --jobs [NUM]
9131 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
9132 given).
9133
9134 --keep-going
9135 After a build failure, continue to build other unaffected
9136 packages.
9137
9138 --offline
9139 --no-offline
9140 Don't download packages from the Internet.
9141
9142 --project-file FILE
9143 Set the name of the cabal.project file to search for in
9144 parent directories
9145
9146 --only
9147 Only installs the package in the current directory.
9148
9149 --haddock-hoogle
9150 Generate a hoogle database
9151
9152 --haddock-html
9153 Generate HTML documentation (the default)
9154
9155 --haddock-html-location URL
9156 Location of HTML documentation for pre-requisite packages
9157
9158 --haddock-for-hackage
9159 Collection of flags to generate documentation suitable
9160 for upload to hackage
9161
9162 --haddock-executables
9163 Run haddock for Executables targets
9164
9165 --haddock-tests
9166 Run haddock for Test Suite targets
9167
9168 --haddock-benchmarks
9169 Run haddock for Benchmark targets
9170
9171 --haddock-all
9172 Run haddock for all targets
9173
9174 --haddock-internal
9175 Run haddock for internal modules and include all symbols
9176
9177 --haddock-css PATH
9178 Use PATH as the haddock stylesheet
9179
9180 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
9181 dock-hyperlinked-source
9182 Hyperlink the documentation to the source code
9183
9184 --haddock-quickjump
9185 Generate an index for interactive documentation naviga‐
9186 tion
9187
9188 --haddock-hscolour-css PATH
9189 Use PATH as the HsColour stylesheet
9190
9191 --haddock-contents-location URL
9192 Bake URL in as the location for the contents page
9193
9194 --test-log TEMPLATE
9195 Log all test suite results to file (name template can use
9196 $pkgid, $compiler, $os, $arch, $test-suite, $result)
9197
9198 --test-machine-log TEMPLATE
9199 Produce a machine-readable log file (name template can
9200 use $pkgid, $compiler, $os, $arch, $result)
9201
9202 --test-show-details FILTER
9203
9204 --test-keep-tix-files
9205 keep .tix files for HPC between test runs
9206
9207 --test-wrapper FILE
9208 Run test through a wrapper.
9209
9210 --test-fail-when-no-test-suites
9211 Exit with failure when no test suites are found.
9212
9213 --test-options TEMPLATES
9214 give extra options to test executables (name templates
9215 can use $pkgid, $compiler, $os, $arch, $test-suite)
9216
9217 --test-option TEMPLATE
9218 give extra option to test executables (no need to quote
9219 options containing spaces, name template can use $pkgid,
9220 $compiler, $os, $arch, $test-suite)
9221
9222 --repl-options FLAG
9223 use this option for the repl
9224
9225 -b, --build-depends DEPENDENCY
9226 Include an additional package in the environment pre‐
9227 sented to GHCi.
9228
9229 --no-transitive-deps
9230 Don't automatically include transitive dependencies of
9231 requested packages.
9232
9233 -z, --ignore-project
9234 Only include explicitly specified packages (and 'base').
9235
9236
9237 cabal v2-repl
9238
9239 Usage: cabal v2-repl [TARGET] [FLAGS]
9240
9241
9242 Open an interactive session for a component within the project. The
9243 available targets are the same as for the 'v2-build' command: individ‐
9244 ual components within packages in the project, including libraries,
9245 executables, test-suites or benchmarks. Packages can also be specified
9246 in which case the library component in the package will be used, or the
9247 (first listed) executable in the package if there is no library.
9248
9249 Dependencies are built or rebuilt as necessary. Additional configura‐
9250 tion flags can be specified on the command line and these extend the
9251 project configuration from the 'cabal.project', 'cabal.project.local'
9252 and other files.
9253
9254
9255 Examples, open an interactive session:
9256 cabal v2-repl
9257 for the default component in the package in the current directory
9258 cabal v2-repl pkgname
9259 for the default component in the package named 'pkgname'
9260 cabal v2-repl ./pkgfoo
9261 for the default component in the package in the ./pkgfoo directory
9262 cabal v2-repl cname
9263 for the component named 'cname'
9264 cabal v2-repl pkgname:cname
9265 for the component 'cname' in the package 'pkgname'
9266
9267 cabal v2-repl --build-depends lens
9268 add the latest version of the library 'lens' to the default compo‐
9269 nent (or no componentif there is no project present)
9270 cabal v2-repl --build-depends "lens >= 4.15 && < 4.18"
9271 add a version (constrained between 4.15 and 4.18) of the library
9272 'lens' to the default component (or no component if there is no project
9273 present) Note: this command is part of the new project-based system
9274 (aka nix-style local builds). These features are currently in beta.
9275 Please see http://cabal.readthedocs.io/en/latest/nix-local-build-over‐
9276 view.html for details and advice on what you can expect to work. If you
9277 encounter problems please file issues at
9278 https://github.com/haskell/cabal/issues and if you have any time to get
9279 involved and help with testing, fixing bugs etc then that is very much
9280 appreciated.
9281
9282
9283 Flags:
9284 -v, --verbose [n]
9285 Control verbosity (n is 0--3, default verbosity level is
9286 1)
9287
9288 --builddir, --distdir, --distpref DIR
9289 The directory where Cabal puts generated build files
9290 (default dist)
9291
9292 -g, --ghc
9293 compile with GHC
9294
9295 --ghcjs
9296 compile with GHCJS
9297
9298 --uhc
9299 compile with UHC
9300
9301 --haskell-suite
9302 compile with a haskell-suite compiler
9303
9304 --cabal-file PATH
9305 use this Cabal file
9306
9307 -w, --with-compiler PATH
9308 give the path to a particular compiler
9309
9310 --with-hc-pkg PATH
9311 give the path to the package tool
9312
9313 --prefix DIR
9314 bake this prefix in preparation of installation
9315
9316 --bindir DIR
9317 installation directory for executables
9318
9319 --libdir DIR
9320 installation directory for libraries
9321
9322 --libsubdir DIR
9323 subdirectory of libdir in which libs are installed
9324
9325 --dynlibdir DIR
9326 installation directory for dynamic libraries
9327
9328 --libexecdir DIR
9329 installation directory for program executables
9330
9331 --libexecsubdir DIR
9332 subdirectory of libexecdir in which private executables
9333 are installed
9334
9335 --datadir DIR
9336 installation directory for read-only data
9337
9338 --datasubdir DIR
9339 subdirectory of datadir in which data files are installed
9340
9341 --docdir DIR
9342 installation directory for documentation
9343
9344 --htmldir DIR
9345 installation directory for HTML documentation
9346
9347 --haddockdir DIR
9348 installation directory for haddock interfaces
9349
9350 --sysconfdir DIR
9351 installation directory for configuration files
9352
9353 --program-prefix PREFIX
9354 prefix to be applied to installed executables
9355
9356 --program-suffix SUFFIX
9357 suffix to be applied to installed executables
9358
9359 --enable-library-vanilla
9360 --disable-library-vanilla
9361 Vanilla libraries
9362
9363 -p, --enable-library-profiling
9364 --disable-library-profiling
9365 Library profiling
9366
9367 --enable-shared
9368 --disable-shared
9369 Shared library
9370
9371 --enable-static
9372 --disable-static
9373 Static library
9374
9375 --enable-executable-dynamic
9376 --disable-executable-dynamic
9377 Executable dynamic linking
9378
9379 --enable-executable-static
9380 --disable-executable-static
9381 Executable fully static linking
9382
9383 --enable-profiling
9384 --disable-profiling
9385 Executable and library profiling
9386
9387 --enable-executable-profiling
9388 --disable-executable-profiling
9389 Executable profiling (DEPRECATED)
9390
9391 --profiling-detail level
9392 Profiling detail level for executable and library
9393 (default, none, exported-functions, toplevel-functions,
9394 all-functions).
9395
9396 --library-profiling-detail level
9397 Profiling detail level for libraries only.
9398
9399 -O, --enable-optimization, --enable-optimisation [n]
9400 Build with optimization (n is 0--2, default is 1)
9401
9402 --disable-optimization, --disable-optimisation
9403 Build without optimization
9404
9405 --enable-debug-info [n]
9406 Emit debug info (n is 0--3, default is 0)
9407
9408 --disable-debug-info
9409 Don't emit debug info
9410
9411 --enable-library-for-ghci
9412 --disable-library-for-ghci
9413 compile library for use with GHCi
9414
9415 --enable-split-sections
9416 --disable-split-sections
9417 compile library code such that unneeded definitions can
9418 be dropped from the final executable (GHC 7.8+)
9419
9420 --enable-split-objs
9421 --disable-split-objs
9422 split library into smaller objects to reduce binary sizes
9423 (GHC 6.6+)
9424
9425 --enable-executable-stripping
9426 --disable-executable-stripping
9427 strip executables upon installation to reduce binary
9428 sizes
9429
9430 --enable-library-stripping
9431 --disable-library-stripping
9432 strip libraries upon installation to reduce binary sizes
9433
9434 --configure-option OPT
9435 Extra option for configure
9436
9437 --user
9438 --global
9439 doing a per-user installation
9440
9441 --package-db DB
9442 Append the given package database to the list of package
9443 databases used (to satisfy dependencies and register
9444 into). May be a specific file, 'global' or 'user'. The
9445 initial list is ['global'], ['global', 'user'], or
9446 ['global', $sandbox], depending on context. Use 'clear'
9447 to reset the list to empty. See the user guide for
9448 details.
9449
9450 -f, --flags FLAGS
9451 Force values for the given flags in Cabal conditionals in
9452 the .cabal file. E.g., --flags="debug -usebytestrings"
9453 forces the flag "debug" to true and "usebytestrings" to
9454 false.
9455
9456 --extra-include-dirs PATH
9457 A list of directories to search for header files
9458
9459 --enable-deterministic
9460 --disable-deterministic
9461 Try to be as deterministic as possible (used by the test
9462 suite)
9463
9464 --ipid IPID
9465 Installed package ID to compile this package as
9466
9467 --cid CID
9468 Installed component ID to compile this component as
9469
9470 --extra-lib-dirs PATH
9471 A list of directories to search for external libraries
9472
9473 --extra-framework-dirs PATH
9474 A list of directories to search for external frameworks
9475 (OS X only)
9476
9477 --extra-prog-path PATH
9478 A list of directories to search for required programs (in
9479 addition to the normal search locations)
9480
9481 --instantiate-with NAME=MOD
9482 A mapping of signature names to concrete module instanti‐
9483 ations.
9484
9485 --enable-tests
9486 --disable-tests
9487 dependency checking and compilation for test suites
9488 listed in the package description file.
9489
9490 --enable-coverage
9491 --disable-coverage
9492 build package with Haskell Program Coverage. (GHC only)
9493
9494 --enable-library-coverage
9495 --disable-library-coverage
9496 build package with Haskell Program Coverage. (GHC only)
9497 (DEPRECATED)
9498
9499 --enable-benchmarks
9500 --disable-benchmarks
9501 dependency checking and compilation for benchmarks listed
9502 in the package description file.
9503
9504 --enable-relocatable
9505 --disable-relocatable
9506 building a package that is relocatable. (GHC only)
9507
9508 --disable-response-files
9509 enable workaround for old versions of programs like "ar"
9510 that do not support @file arguments
9511
9512 --allow-depending-on-private-libs
9513 Allow depending on private libraries. If set, the library
9514 visibility check MUST be done externally.
9515
9516 --with-alex PATH
9517 give the path to alex
9518
9519 --with-ar PATH
9520 give the path to ar
9521
9522 --with-c2hs PATH
9523 give the path to c2hs
9524
9525 --with-cpphs PATH
9526 give the path to cpphs
9527
9528 --with-doctest PATH
9529 give the path to doctest
9530
9531 --with-gcc PATH
9532 give the path to gcc
9533
9534 --with-ghc PATH
9535 give the path to ghc
9536
9537 --with-ghc-pkg PATH
9538 give the path to ghc-pkg
9539
9540 --with-ghcjs PATH
9541 give the path to ghcjs
9542
9543 --with-ghcjs-pkg PATH
9544 give the path to ghcjs-pkg
9545
9546 --with-greencard PATH
9547 give the path to greencard
9548
9549 --with-haddock PATH
9550 give the path to haddock
9551
9552 --with-happy PATH
9553 give the path to happy
9554
9555 --with-haskell-suite PATH
9556 give the path to haskell-suite
9557
9558 --with-haskell-suite-pkg PATH
9559 give the path to haskell-suite-pkg
9560
9561 --with-hmake PATH
9562 give the path to hmake
9563
9564 --with-hpc PATH
9565 give the path to hpc
9566
9567 --with-hsc2hs PATH
9568 give the path to hsc2hs
9569
9570 --with-hscolour PATH
9571 give the path to hscolour
9572
9573 --with-jhc PATH
9574 give the path to jhc
9575
9576 --with-ld PATH
9577 give the path to ld
9578
9579 --with-pkg-config PATH
9580 give the path to pkg-config
9581
9582 --with-runghc PATH
9583 give the path to runghc
9584
9585 --with-strip PATH
9586 give the path to strip
9587
9588 --with-tar PATH
9589 give the path to tar
9590
9591 --with-uhc PATH
9592 give the path to uhc
9593
9594 --alex-option OPT
9595 give an extra option to alex (no need to quote options
9596 containing spaces)
9597
9598 --ar-option OPT
9599 give an extra option to ar (no need to quote options con‐
9600 taining spaces)
9601
9602 --c2hs-option OPT
9603 give an extra option to c2hs (no need to quote options
9604 containing spaces)
9605
9606 --cpphs-option OPT
9607 give an extra option to cpphs (no need to quote options
9608 containing spaces)
9609
9610 --doctest-option OPT
9611 give an extra option to doctest (no need to quote options
9612 containing spaces)
9613
9614 --gcc-option OPT
9615 give an extra option to gcc (no need to quote options
9616 containing spaces)
9617
9618 --ghc-option OPT
9619 give an extra option to ghc (no need to quote options
9620 containing spaces)
9621
9622 --ghc-pkg-option OPT
9623 give an extra option to ghc-pkg (no need to quote options
9624 containing spaces)
9625
9626 --ghcjs-option OPT
9627 give an extra option to ghcjs (no need to quote options
9628 containing spaces)
9629
9630 --ghcjs-pkg-option OPT
9631 give an extra option to ghcjs-pkg (no need to quote
9632 options containing spaces)
9633
9634 --greencard-option OPT
9635 give an extra option to greencard (no need to quote
9636 options containing spaces)
9637
9638 --haddock-option OPT
9639 give an extra option to haddock (no need to quote options
9640 containing spaces)
9641
9642 --happy-option OPT
9643 give an extra option to happy (no need to quote options
9644 containing spaces)
9645
9646 --haskell-suite-option OPT
9647 give an extra option to haskell-suite (no need to quote
9648 options containing spaces)
9649
9650 --haskell-suite-pkg-option OPT
9651 give an extra option to haskell-suite-pkg (no need to
9652 quote options containing spaces)
9653
9654 --hmake-option OPT
9655 give an extra option to hmake (no need to quote options
9656 containing spaces)
9657
9658 --hpc-option OPT
9659 give an extra option to hpc (no need to quote options
9660 containing spaces)
9661
9662 --hsc2hs-option OPT
9663 give an extra option to hsc2hs (no need to quote options
9664 containing spaces)
9665
9666 --hscolour-option OPT
9667 give an extra option to hscolour (no need to quote
9668 options containing spaces)
9669
9670 --jhc-option OPT
9671 give an extra option to jhc (no need to quote options
9672 containing spaces)
9673
9674 --ld-option OPT
9675 give an extra option to ld (no need to quote options con‐
9676 taining spaces)
9677
9678 --pkg-config-option OPT
9679 give an extra option to pkg-config (no need to quote
9680 options containing spaces)
9681
9682 --runghc-option OPT
9683 give an extra option to runghc (no need to quote options
9684 containing spaces)
9685
9686 --strip-option OPT
9687 give an extra option to strip (no need to quote options
9688 containing spaces)
9689
9690 --tar-option OPT
9691 give an extra option to tar (no need to quote options
9692 containing spaces)
9693
9694 --uhc-option OPT
9695 give an extra option to uhc (no need to quote options
9696 containing spaces)
9697
9698 --alex-options OPTS
9699 give extra options to alex
9700
9701 --ar-options OPTS
9702 give extra options to ar
9703
9704 --c2hs-options OPTS
9705 give extra options to c2hs
9706
9707 --cpphs-options OPTS
9708 give extra options to cpphs
9709
9710 --doctest-options OPTS
9711 give extra options to doctest
9712
9713 --gcc-options OPTS
9714 give extra options to gcc
9715
9716 --ghc-options OPTS
9717 give extra options to ghc
9718
9719 --ghc-pkg-options OPTS
9720 give extra options to ghc-pkg
9721
9722 --ghcjs-options OPTS
9723 give extra options to ghcjs
9724
9725 --ghcjs-pkg-options OPTS
9726 give extra options to ghcjs-pkg
9727
9728 --greencard-options OPTS
9729 give extra options to greencard
9730
9731 --haddock-options OPTS
9732 give extra options to haddock
9733
9734 --happy-options OPTS
9735 give extra options to happy
9736
9737 --haskell-suite-options OPTS
9738 give extra options to haskell-suite
9739
9740 --haskell-suite-pkg-options OPTS
9741 give extra options to haskell-suite-pkg
9742
9743 --hmake-options OPTS
9744 give extra options to hmake
9745
9746 --hpc-options OPTS
9747 give extra options to hpc
9748
9749 --hsc2hs-options OPTS
9750 give extra options to hsc2hs
9751
9752 --hscolour-options OPTS
9753 give extra options to hscolour
9754
9755 --jhc-options OPTS
9756 give extra options to jhc
9757
9758 --ld-options OPTS
9759 give extra options to ld
9760
9761 --pkg-config-options OPTS
9762 give extra options to pkg-config
9763
9764 --runghc-options OPTS
9765 give extra options to runghc
9766
9767 --strip-options OPTS
9768 give extra options to strip
9769
9770 --tar-options OPTS
9771 give extra options to tar
9772
9773 --uhc-options OPTS
9774 give extra options to uhc
9775
9776 --cabal-lib-version VERSION
9777 Select which version of the Cabal lib to use to build
9778 packages (useful for testing).
9779
9780 --constraint CONSTRAINT
9781 Specify constraints on a package (version,
9782 installed/source, flags)
9783
9784 --preference CONSTRAINT
9785 Specify preferences (soft constraints) on the version of
9786 a package
9787
9788 --solver SOLVER
9789 Select dependency solver to use (default: modular).
9790 Choices: modular.
9791
9792 --allow-older [DEPS]
9793 Ignore lower bounds in all dependencies or DEPS
9794
9795 --allow-newer [DEPS]
9796 Ignore upper bounds in all dependencies or DEPS
9797
9798 --write-ghc-environment-files always|never|ghc8.4.4+
9799 Whether to create a .ghc.environment file after a suc‐
9800 cessful build (v2-build only)
9801
9802 --enable-documentation
9803 --disable-documentation
9804 building of documentation
9805
9806 --doc-index-file TEMPLATE
9807 A central index of haddock API documentation (template
9808 cannot use $pkgid)
9809
9810 --dry-run
9811 Do not install anything, only print what would be
9812 installed.
9813
9814 --max-backjumps NUM
9815 Maximum number of backjumps allowed while solving
9816 (default: 4000). Use a negative number to enable unlim‐
9817 ited backtracking. Use 0 to disable backtracking com‐
9818 pletely.
9819
9820 --reorder-goals
9821 --no-reorder-goals
9822 Try to reorder goals according to certain heuristics.
9823 Slows things down on average, but may make backtracking
9824 faster for some packages.
9825
9826 --count-conflicts
9827 --no-count-conflicts
9828 Try to speed up solving by preferring goals that are
9829 involved in a lot of conflicts (default).
9830
9831 --minimize-conflict-set
9832 --no-minimize-conflict-set
9833 When there is no solution, try to improve the error mes‐
9834 sage by finding a minimal conflict set (default: false).
9835 May increase run time significantly.
9836
9837 --independent-goals
9838 --no-independent-goals
9839 Treat several goals on the command line as independent.
9840 If several goals depend on the same package, different
9841 versions can be chosen.
9842
9843 --shadow-installed-packages
9844 --no-shadow-installed-packages
9845 If multiple package instances of the same version are
9846 installed, treat all but one as shadowed.
9847
9848 --strong-flags
9849 --no-strong-flags
9850 Do not defer flag choices (this used to be the default in
9851 cabal-install <= 1.20).
9852
9853 --allow-boot-library-installs
9854 --no-allow-boot-library-installs
9855 Allow cabal to install base, ghc-prim, integer-simple,
9856 integer-gmp, and template-haskell.
9857
9858 --reject-unconstrained-dependencies none|all
9859 Require these packages to have constraints on them if
9860 they are to be selected (default: none).
9861
9862 --reinstall
9863 --no-reinstall
9864 Install even if it means installing the same version
9865 again.
9866
9867 --avoid-reinstalls
9868 --no-avoid-reinstalls
9869 Do not select versions that would destructively overwrite
9870 installed packages.
9871
9872 --force-reinstalls
9873 --no-force-reinstalls
9874 Reinstall packages even if they will most likely break
9875 other installed packages.
9876
9877 --upgrade-dependencies
9878 --no-upgrade-dependencies
9879 Pick the latest version for all dependencies, rather than
9880 trying to pick an installed version.
9881
9882 --only-dependencies
9883 --no-only-dependencies
9884 Install only the dependencies necessary to build the
9885 given packages
9886
9887 --dependencies-only
9888 --no-dependencies-only
9889 A synonym for --only-dependencies
9890
9891 --index-state STATE
9892 Use source package index state as it existed at a previ‐
9893 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
9894 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
9895 'HEAD' (default: 'HEAD').
9896
9897 --root-cmd COMMAND
9898 (No longer supported, do not use.)
9899
9900 --symlink-bindir DIR
9901 Add symlinks to installed executables into this direc‐
9902 tory.
9903
9904 --build-summary TEMPLATE
9905 Save build summaries to file (name template can use
9906 $pkgid, $compiler, $os, $arch)
9907
9908 --build-log TEMPLATE
9909 Log all builds to file (name template can use $pkgid,
9910 $compiler, $os, $arch)
9911
9912 --remote-build-reporting LEVEL
9913 Generate build reports to send to a remote server (none,
9914 anonymous or detailed).
9915
9916 --report-planning-failure
9917 Generate build reports when the dependency solver fails.
9918 This is used by the Hackage build bot.
9919
9920 --enable-per-component
9921 --disable-per-component
9922 Per-component builds when possible
9923
9924 --one-shot
9925 --no-one-shot
9926 Do not record the packages in the world file.
9927
9928 --run-tests
9929 Run package test suites during installation.
9930
9931 -j, --jobs [NUM]
9932 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
9933 given).
9934
9935 --keep-going
9936 After a build failure, continue to build other unaffected
9937 packages.
9938
9939 --offline
9940 --no-offline
9941 Don't download packages from the Internet.
9942
9943 --project-file FILE
9944 Set the name of the cabal.project file to search for in
9945 parent directories
9946
9947 --only
9948 Only installs the package in the current directory.
9949
9950 --haddock-hoogle
9951 Generate a hoogle database
9952
9953 --haddock-html
9954 Generate HTML documentation (the default)
9955
9956 --haddock-html-location URL
9957 Location of HTML documentation for pre-requisite packages
9958
9959 --haddock-for-hackage
9960 Collection of flags to generate documentation suitable
9961 for upload to hackage
9962
9963 --haddock-executables
9964 Run haddock for Executables targets
9965
9966 --haddock-tests
9967 Run haddock for Test Suite targets
9968
9969 --haddock-benchmarks
9970 Run haddock for Benchmark targets
9971
9972 --haddock-all
9973 Run haddock for all targets
9974
9975 --haddock-internal
9976 Run haddock for internal modules and include all symbols
9977
9978 --haddock-css PATH
9979 Use PATH as the haddock stylesheet
9980
9981 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
9982 dock-hyperlinked-source
9983 Hyperlink the documentation to the source code
9984
9985 --haddock-quickjump
9986 Generate an index for interactive documentation naviga‐
9987 tion
9988
9989 --haddock-hscolour-css PATH
9990 Use PATH as the HsColour stylesheet
9991
9992 --haddock-contents-location URL
9993 Bake URL in as the location for the contents page
9994
9995 --test-log TEMPLATE
9996 Log all test suite results to file (name template can use
9997 $pkgid, $compiler, $os, $arch, $test-suite, $result)
9998
9999 --test-machine-log TEMPLATE
10000 Produce a machine-readable log file (name template can
10001 use $pkgid, $compiler, $os, $arch, $result)
10002
10003 --test-show-details FILTER
10004
10005 --test-keep-tix-files
10006 keep .tix files for HPC between test runs
10007
10008 --test-wrapper FILE
10009 Run test through a wrapper.
10010
10011 --test-fail-when-no-test-suites
10012 Exit with failure when no test suites are found.
10013
10014 --test-options TEMPLATES
10015 give extra options to test executables (name templates
10016 can use $pkgid, $compiler, $os, $arch, $test-suite)
10017
10018 --test-option TEMPLATE
10019 give extra option to test executables (no need to quote
10020 options containing spaces, name template can use $pkgid,
10021 $compiler, $os, $arch, $test-suite)
10022
10023 --repl-options FLAG
10024 use this option for the repl
10025
10026 -b, --build-depends DEPENDENCY
10027 Include an additional package in the environment pre‐
10028 sented to GHCi.
10029
10030 --no-transitive-deps
10031 Don't automatically include transitive dependencies of
10032 requested packages.
10033
10034 -z, --ignore-project
10035 Only include explicitly specified packages (and 'base').
10036
10037
10038 cabal freeze
10039
10040 Usage: cabal freeze [FLAGS]
10041
10042
10043 The project configuration is frozen so that it will be reproducible in
10044 future.
10045
10046 The precise dependency configuration for the project is written to the
10047 specified). This file extends the configuration from the
10048 'cabal.project' file and thus is used as the project configuration for
10049 all other commands (such as
10050
10051 The freeze file can be kept in source control. To make small adjust‐
10052 ments it may be edited manually, or to make bigger changes you may wish
10053 to delete the file and re-freeze. For more control, one approach is to
10054 try variations using once you have a satisfactory solution to freeze it
10055 using the 'freeze' command with the same set of flags.
10056
10057
10058 The project configuration is frozen so that it will be reproducible in
10059 future.
10060
10061 The precise dependency configuration for the project is written to the
10062 specified). This file extends the configuration from the
10063 'cabal.project' file and thus is used as the project configuration for
10064 all other commands (such as
10065
10066 The freeze file can be kept in source control. To make small adjust‐
10067 ments it may be edited manually, or to make bigger changes you may wish
10068 to delete the file and re-freeze. For more control, one approach is to
10069 try variations using once you have a satisfactory solution to freeze it
10070 using the 'freeze' command with the same set of flags.
10071
10072
10073 Flags:
10074 -v, --verbose [n]
10075 Control verbosity (n is 0--3, default verbosity level is
10076 1)
10077
10078 --builddir, --distdir, --distpref DIR
10079 The directory where Cabal puts generated build files
10080 (default dist)
10081
10082 -g, --ghc
10083 compile with GHC
10084
10085 --ghcjs
10086 compile with GHCJS
10087
10088 --uhc
10089 compile with UHC
10090
10091 --haskell-suite
10092 compile with a haskell-suite compiler
10093
10094 --cabal-file PATH
10095 use this Cabal file
10096
10097 -w, --with-compiler PATH
10098 give the path to a particular compiler
10099
10100 --with-hc-pkg PATH
10101 give the path to the package tool
10102
10103 --prefix DIR
10104 bake this prefix in preparation of installation
10105
10106 --bindir DIR
10107 installation directory for executables
10108
10109 --libdir DIR
10110 installation directory for libraries
10111
10112 --libsubdir DIR
10113 subdirectory of libdir in which libs are installed
10114
10115 --dynlibdir DIR
10116 installation directory for dynamic libraries
10117
10118 --libexecdir DIR
10119 installation directory for program executables
10120
10121 --libexecsubdir DIR
10122 subdirectory of libexecdir in which private executables
10123 are installed
10124
10125 --datadir DIR
10126 installation directory for read-only data
10127
10128 --datasubdir DIR
10129 subdirectory of datadir in which data files are installed
10130
10131 --docdir DIR
10132 installation directory for documentation
10133
10134 --htmldir DIR
10135 installation directory for HTML documentation
10136
10137 --haddockdir DIR
10138 installation directory for haddock interfaces
10139
10140 --sysconfdir DIR
10141 installation directory for configuration files
10142
10143 --program-prefix PREFIX
10144 prefix to be applied to installed executables
10145
10146 --program-suffix SUFFIX
10147 suffix to be applied to installed executables
10148
10149 --enable-library-vanilla
10150 --disable-library-vanilla
10151 Vanilla libraries
10152
10153 -p, --enable-library-profiling
10154 --disable-library-profiling
10155 Library profiling
10156
10157 --enable-shared
10158 --disable-shared
10159 Shared library
10160
10161 --enable-static
10162 --disable-static
10163 Static library
10164
10165 --enable-executable-dynamic
10166 --disable-executable-dynamic
10167 Executable dynamic linking
10168
10169 --enable-executable-static
10170 --disable-executable-static
10171 Executable fully static linking
10172
10173 --enable-profiling
10174 --disable-profiling
10175 Executable and library profiling
10176
10177 --enable-executable-profiling
10178 --disable-executable-profiling
10179 Executable profiling (DEPRECATED)
10180
10181 --profiling-detail level
10182 Profiling detail level for executable and library
10183 (default, none, exported-functions, toplevel-functions,
10184 all-functions).
10185
10186 --library-profiling-detail level
10187 Profiling detail level for libraries only.
10188
10189 -O, --enable-optimization, --enable-optimisation [n]
10190 Build with optimization (n is 0--2, default is 1)
10191
10192 --disable-optimization, --disable-optimisation
10193 Build without optimization
10194
10195 --enable-debug-info [n]
10196 Emit debug info (n is 0--3, default is 0)
10197
10198 --disable-debug-info
10199 Don't emit debug info
10200
10201 --enable-library-for-ghci
10202 --disable-library-for-ghci
10203 compile library for use with GHCi
10204
10205 --enable-split-sections
10206 --disable-split-sections
10207 compile library code such that unneeded definitions can
10208 be dropped from the final executable (GHC 7.8+)
10209
10210 --enable-split-objs
10211 --disable-split-objs
10212 split library into smaller objects to reduce binary sizes
10213 (GHC 6.6+)
10214
10215 --enable-executable-stripping
10216 --disable-executable-stripping
10217 strip executables upon installation to reduce binary
10218 sizes
10219
10220 --enable-library-stripping
10221 --disable-library-stripping
10222 strip libraries upon installation to reduce binary sizes
10223
10224 --configure-option OPT
10225 Extra option for configure
10226
10227 --user
10228 --global
10229 doing a per-user installation
10230
10231 --package-db DB
10232 Append the given package database to the list of package
10233 databases used (to satisfy dependencies and register
10234 into). May be a specific file, 'global' or 'user'. The
10235 initial list is ['global'], ['global', 'user'], or
10236 ['global', $sandbox], depending on context. Use 'clear'
10237 to reset the list to empty. See the user guide for
10238 details.
10239
10240 -f, --flags FLAGS
10241 Force values for the given flags in Cabal conditionals in
10242 the .cabal file. E.g., --flags="debug -usebytestrings"
10243 forces the flag "debug" to true and "usebytestrings" to
10244 false.
10245
10246 --extra-include-dirs PATH
10247 A list of directories to search for header files
10248
10249 --enable-deterministic
10250 --disable-deterministic
10251 Try to be as deterministic as possible (used by the test
10252 suite)
10253
10254 --ipid IPID
10255 Installed package ID to compile this package as
10256
10257 --cid CID
10258 Installed component ID to compile this component as
10259
10260 --extra-lib-dirs PATH
10261 A list of directories to search for external libraries
10262
10263 --extra-framework-dirs PATH
10264 A list of directories to search for external frameworks
10265 (OS X only)
10266
10267 --extra-prog-path PATH
10268 A list of directories to search for required programs (in
10269 addition to the normal search locations)
10270
10271 --instantiate-with NAME=MOD
10272 A mapping of signature names to concrete module instanti‐
10273 ations.
10274
10275 --enable-tests
10276 --disable-tests
10277 dependency checking and compilation for test suites
10278 listed in the package description file.
10279
10280 --enable-coverage
10281 --disable-coverage
10282 build package with Haskell Program Coverage. (GHC only)
10283
10284 --enable-library-coverage
10285 --disable-library-coverage
10286 build package with Haskell Program Coverage. (GHC only)
10287 (DEPRECATED)
10288
10289 --enable-benchmarks
10290 --disable-benchmarks
10291 dependency checking and compilation for benchmarks listed
10292 in the package description file.
10293
10294 --enable-relocatable
10295 --disable-relocatable
10296 building a package that is relocatable. (GHC only)
10297
10298 --disable-response-files
10299 enable workaround for old versions of programs like "ar"
10300 that do not support @file arguments
10301
10302 --allow-depending-on-private-libs
10303 Allow depending on private libraries. If set, the library
10304 visibility check MUST be done externally.
10305
10306 --with-alex PATH
10307 give the path to alex
10308
10309 --with-ar PATH
10310 give the path to ar
10311
10312 --with-c2hs PATH
10313 give the path to c2hs
10314
10315 --with-cpphs PATH
10316 give the path to cpphs
10317
10318 --with-doctest PATH
10319 give the path to doctest
10320
10321 --with-gcc PATH
10322 give the path to gcc
10323
10324 --with-ghc PATH
10325 give the path to ghc
10326
10327 --with-ghc-pkg PATH
10328 give the path to ghc-pkg
10329
10330 --with-ghcjs PATH
10331 give the path to ghcjs
10332
10333 --with-ghcjs-pkg PATH
10334 give the path to ghcjs-pkg
10335
10336 --with-greencard PATH
10337 give the path to greencard
10338
10339 --with-haddock PATH
10340 give the path to haddock
10341
10342 --with-happy PATH
10343 give the path to happy
10344
10345 --with-haskell-suite PATH
10346 give the path to haskell-suite
10347
10348 --with-haskell-suite-pkg PATH
10349 give the path to haskell-suite-pkg
10350
10351 --with-hmake PATH
10352 give the path to hmake
10353
10354 --with-hpc PATH
10355 give the path to hpc
10356
10357 --with-hsc2hs PATH
10358 give the path to hsc2hs
10359
10360 --with-hscolour PATH
10361 give the path to hscolour
10362
10363 --with-jhc PATH
10364 give the path to jhc
10365
10366 --with-ld PATH
10367 give the path to ld
10368
10369 --with-pkg-config PATH
10370 give the path to pkg-config
10371
10372 --with-runghc PATH
10373 give the path to runghc
10374
10375 --with-strip PATH
10376 give the path to strip
10377
10378 --with-tar PATH
10379 give the path to tar
10380
10381 --with-uhc PATH
10382 give the path to uhc
10383
10384 --alex-option OPT
10385 give an extra option to alex (no need to quote options
10386 containing spaces)
10387
10388 --ar-option OPT
10389 give an extra option to ar (no need to quote options con‐
10390 taining spaces)
10391
10392 --c2hs-option OPT
10393 give an extra option to c2hs (no need to quote options
10394 containing spaces)
10395
10396 --cpphs-option OPT
10397 give an extra option to cpphs (no need to quote options
10398 containing spaces)
10399
10400 --doctest-option OPT
10401 give an extra option to doctest (no need to quote options
10402 containing spaces)
10403
10404 --gcc-option OPT
10405 give an extra option to gcc (no need to quote options
10406 containing spaces)
10407
10408 --ghc-option OPT
10409 give an extra option to ghc (no need to quote options
10410 containing spaces)
10411
10412 --ghc-pkg-option OPT
10413 give an extra option to ghc-pkg (no need to quote options
10414 containing spaces)
10415
10416 --ghcjs-option OPT
10417 give an extra option to ghcjs (no need to quote options
10418 containing spaces)
10419
10420 --ghcjs-pkg-option OPT
10421 give an extra option to ghcjs-pkg (no need to quote
10422 options containing spaces)
10423
10424 --greencard-option OPT
10425 give an extra option to greencard (no need to quote
10426 options containing spaces)
10427
10428 --haddock-option OPT
10429 give an extra option to haddock (no need to quote options
10430 containing spaces)
10431
10432 --happy-option OPT
10433 give an extra option to happy (no need to quote options
10434 containing spaces)
10435
10436 --haskell-suite-option OPT
10437 give an extra option to haskell-suite (no need to quote
10438 options containing spaces)
10439
10440 --haskell-suite-pkg-option OPT
10441 give an extra option to haskell-suite-pkg (no need to
10442 quote options containing spaces)
10443
10444 --hmake-option OPT
10445 give an extra option to hmake (no need to quote options
10446 containing spaces)
10447
10448 --hpc-option OPT
10449 give an extra option to hpc (no need to quote options
10450 containing spaces)
10451
10452 --hsc2hs-option OPT
10453 give an extra option to hsc2hs (no need to quote options
10454 containing spaces)
10455
10456 --hscolour-option OPT
10457 give an extra option to hscolour (no need to quote
10458 options containing spaces)
10459
10460 --jhc-option OPT
10461 give an extra option to jhc (no need to quote options
10462 containing spaces)
10463
10464 --ld-option OPT
10465 give an extra option to ld (no need to quote options con‐
10466 taining spaces)
10467
10468 --pkg-config-option OPT
10469 give an extra option to pkg-config (no need to quote
10470 options containing spaces)
10471
10472 --runghc-option OPT
10473 give an extra option to runghc (no need to quote options
10474 containing spaces)
10475
10476 --strip-option OPT
10477 give an extra option to strip (no need to quote options
10478 containing spaces)
10479
10480 --tar-option OPT
10481 give an extra option to tar (no need to quote options
10482 containing spaces)
10483
10484 --uhc-option OPT
10485 give an extra option to uhc (no need to quote options
10486 containing spaces)
10487
10488 --alex-options OPTS
10489 give extra options to alex
10490
10491 --ar-options OPTS
10492 give extra options to ar
10493
10494 --c2hs-options OPTS
10495 give extra options to c2hs
10496
10497 --cpphs-options OPTS
10498 give extra options to cpphs
10499
10500 --doctest-options OPTS
10501 give extra options to doctest
10502
10503 --gcc-options OPTS
10504 give extra options to gcc
10505
10506 --ghc-options OPTS
10507 give extra options to ghc
10508
10509 --ghc-pkg-options OPTS
10510 give extra options to ghc-pkg
10511
10512 --ghcjs-options OPTS
10513 give extra options to ghcjs
10514
10515 --ghcjs-pkg-options OPTS
10516 give extra options to ghcjs-pkg
10517
10518 --greencard-options OPTS
10519 give extra options to greencard
10520
10521 --haddock-options OPTS
10522 give extra options to haddock
10523
10524 --happy-options OPTS
10525 give extra options to happy
10526
10527 --haskell-suite-options OPTS
10528 give extra options to haskell-suite
10529
10530 --haskell-suite-pkg-options OPTS
10531 give extra options to haskell-suite-pkg
10532
10533 --hmake-options OPTS
10534 give extra options to hmake
10535
10536 --hpc-options OPTS
10537 give extra options to hpc
10538
10539 --hsc2hs-options OPTS
10540 give extra options to hsc2hs
10541
10542 --hscolour-options OPTS
10543 give extra options to hscolour
10544
10545 --jhc-options OPTS
10546 give extra options to jhc
10547
10548 --ld-options OPTS
10549 give extra options to ld
10550
10551 --pkg-config-options OPTS
10552 give extra options to pkg-config
10553
10554 --runghc-options OPTS
10555 give extra options to runghc
10556
10557 --strip-options OPTS
10558 give extra options to strip
10559
10560 --tar-options OPTS
10561 give extra options to tar
10562
10563 --uhc-options OPTS
10564 give extra options to uhc
10565
10566 --cabal-lib-version VERSION
10567 Select which version of the Cabal lib to use to build
10568 packages (useful for testing).
10569
10570 --constraint CONSTRAINT
10571 Specify constraints on a package (version,
10572 installed/source, flags)
10573
10574 --preference CONSTRAINT
10575 Specify preferences (soft constraints) on the version of
10576 a package
10577
10578 --solver SOLVER
10579 Select dependency solver to use (default: modular).
10580 Choices: modular.
10581
10582 --allow-older [DEPS]
10583 Ignore lower bounds in all dependencies or DEPS
10584
10585 --allow-newer [DEPS]
10586 Ignore upper bounds in all dependencies or DEPS
10587
10588 --write-ghc-environment-files always|never|ghc8.4.4+
10589 Whether to create a .ghc.environment file after a suc‐
10590 cessful build (v2-build only)
10591
10592 --enable-documentation
10593 --disable-documentation
10594 building of documentation
10595
10596 --doc-index-file TEMPLATE
10597 A central index of haddock API documentation (template
10598 cannot use $pkgid)
10599
10600 --dry-run
10601 Do not install anything, only print what would be
10602 installed.
10603
10604 --max-backjumps NUM
10605 Maximum number of backjumps allowed while solving
10606 (default: 4000). Use a negative number to enable unlim‐
10607 ited backtracking. Use 0 to disable backtracking com‐
10608 pletely.
10609
10610 --reorder-goals
10611 --no-reorder-goals
10612 Try to reorder goals according to certain heuristics.
10613 Slows things down on average, but may make backtracking
10614 faster for some packages.
10615
10616 --count-conflicts
10617 --no-count-conflicts
10618 Try to speed up solving by preferring goals that are
10619 involved in a lot of conflicts (default).
10620
10621 --minimize-conflict-set
10622 --no-minimize-conflict-set
10623 When there is no solution, try to improve the error mes‐
10624 sage by finding a minimal conflict set (default: false).
10625 May increase run time significantly.
10626
10627 --independent-goals
10628 --no-independent-goals
10629 Treat several goals on the command line as independent.
10630 If several goals depend on the same package, different
10631 versions can be chosen.
10632
10633 --shadow-installed-packages
10634 --no-shadow-installed-packages
10635 If multiple package instances of the same version are
10636 installed, treat all but one as shadowed.
10637
10638 --strong-flags
10639 --no-strong-flags
10640 Do not defer flag choices (this used to be the default in
10641 cabal-install <= 1.20).
10642
10643 --allow-boot-library-installs
10644 --no-allow-boot-library-installs
10645 Allow cabal to install base, ghc-prim, integer-simple,
10646 integer-gmp, and template-haskell.
10647
10648 --reject-unconstrained-dependencies none|all
10649 Require these packages to have constraints on them if
10650 they are to be selected (default: none).
10651
10652 --reinstall
10653 --no-reinstall
10654 Install even if it means installing the same version
10655 again.
10656
10657 --avoid-reinstalls
10658 --no-avoid-reinstalls
10659 Do not select versions that would destructively overwrite
10660 installed packages.
10661
10662 --force-reinstalls
10663 --no-force-reinstalls
10664 Reinstall packages even if they will most likely break
10665 other installed packages.
10666
10667 --upgrade-dependencies
10668 --no-upgrade-dependencies
10669 Pick the latest version for all dependencies, rather than
10670 trying to pick an installed version.
10671
10672 --only-dependencies
10673 --no-only-dependencies
10674 Install only the dependencies necessary to build the
10675 given packages
10676
10677 --dependencies-only
10678 --no-dependencies-only
10679 A synonym for --only-dependencies
10680
10681 --index-state STATE
10682 Use source package index state as it existed at a previ‐
10683 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
10684 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
10685 'HEAD' (default: 'HEAD').
10686
10687 --root-cmd COMMAND
10688 (No longer supported, do not use.)
10689
10690 --symlink-bindir DIR
10691 Add symlinks to installed executables into this direc‐
10692 tory.
10693
10694 --build-summary TEMPLATE
10695 Save build summaries to file (name template can use
10696 $pkgid, $compiler, $os, $arch)
10697
10698 --build-log TEMPLATE
10699 Log all builds to file (name template can use $pkgid,
10700 $compiler, $os, $arch)
10701
10702 --remote-build-reporting LEVEL
10703 Generate build reports to send to a remote server (none,
10704 anonymous or detailed).
10705
10706 --report-planning-failure
10707 Generate build reports when the dependency solver fails.
10708 This is used by the Hackage build bot.
10709
10710 --enable-per-component
10711 --disable-per-component
10712 Per-component builds when possible
10713
10714 --one-shot
10715 --no-one-shot
10716 Do not record the packages in the world file.
10717
10718 --run-tests
10719 Run package test suites during installation.
10720
10721 -j, --jobs [NUM]
10722 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
10723 given).
10724
10725 --keep-going
10726 After a build failure, continue to build other unaffected
10727 packages.
10728
10729 --offline
10730 --no-offline
10731 Don't download packages from the Internet.
10732
10733 --project-file FILE
10734 Set the name of the cabal.project file to search for in
10735 parent directories
10736
10737 --only
10738 Only installs the package in the current directory.
10739
10740 --haddock-hoogle
10741 Generate a hoogle database
10742
10743 --haddock-html
10744 Generate HTML documentation (the default)
10745
10746 --haddock-html-location URL
10747 Location of HTML documentation for pre-requisite packages
10748
10749 --haddock-for-hackage
10750 Collection of flags to generate documentation suitable
10751 for upload to hackage
10752
10753 --haddock-executables
10754 Run haddock for Executables targets
10755
10756 --haddock-tests
10757 Run haddock for Test Suite targets
10758
10759 --haddock-benchmarks
10760 Run haddock for Benchmark targets
10761
10762 --haddock-all
10763 Run haddock for all targets
10764
10765 --haddock-internal
10766 Run haddock for internal modules and include all symbols
10767
10768 --haddock-css PATH
10769 Use PATH as the haddock stylesheet
10770
10771 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
10772 dock-hyperlinked-source
10773 Hyperlink the documentation to the source code
10774
10775 --haddock-quickjump
10776 Generate an index for interactive documentation naviga‐
10777 tion
10778
10779 --haddock-hscolour-css PATH
10780 Use PATH as the HsColour stylesheet
10781
10782 --haddock-contents-location URL
10783 Bake URL in as the location for the contents page
10784
10785 --test-log TEMPLATE
10786 Log all test suite results to file (name template can use
10787 $pkgid, $compiler, $os, $arch, $test-suite, $result)
10788
10789 --test-machine-log TEMPLATE
10790 Produce a machine-readable log file (name template can
10791 use $pkgid, $compiler, $os, $arch, $result)
10792
10793 --test-show-details FILTER
10794
10795 --test-keep-tix-files
10796 keep .tix files for HPC between test runs
10797
10798 --test-wrapper FILE
10799 Run test through a wrapper.
10800
10801 --test-fail-when-no-test-suites
10802 Exit with failure when no test suites are found.
10803
10804 --test-options TEMPLATES
10805 give extra options to test executables (name templates
10806 can use $pkgid, $compiler, $os, $arch, $test-suite)
10807
10808 --test-option TEMPLATE
10809 give extra option to test executables (no need to quote
10810 options containing spaces, name template can use $pkgid,
10811 $compiler, $os, $arch, $test-suite)
10812
10813
10814 cabal new-freeze
10815
10816 Usage: cabal new-freeze [FLAGS]
10817
10818
10819 The project configuration is frozen so that it will be reproducible in
10820 future.
10821
10822 The precise dependency configuration for the project is written to the
10823 specified). This file extends the configuration from the
10824 'cabal.project' file and thus is used as the project configuration for
10825 all other commands (such as
10826
10827 The freeze file can be kept in source control. To make small adjust‐
10828 ments it may be edited manually, or to make bigger changes you may wish
10829 to delete the file and re-freeze. For more control, one approach is to
10830 try variations using once you have a satisfactory solution to freeze it
10831 using the 'new-freeze' command with the same set of flags.
10832
10833
10834 The project configuration is frozen so that it will be reproducible in
10835 future.
10836
10837 The precise dependency configuration for the project is written to the
10838 specified). This file extends the configuration from the
10839 'cabal.project' file and thus is used as the project configuration for
10840 all other commands (such as
10841
10842 The freeze file can be kept in source control. To make small adjust‐
10843 ments it may be edited manually, or to make bigger changes you may wish
10844 to delete the file and re-freeze. For more control, one approach is to
10845 try variations using once you have a satisfactory solution to freeze it
10846 using the 'new-freeze' command with the same set of flags.
10847
10848
10849 Flags:
10850 -v, --verbose [n]
10851 Control verbosity (n is 0--3, default verbosity level is
10852 1)
10853
10854 --builddir, --distdir, --distpref DIR
10855 The directory where Cabal puts generated build files
10856 (default dist)
10857
10858 -g, --ghc
10859 compile with GHC
10860
10861 --ghcjs
10862 compile with GHCJS
10863
10864 --uhc
10865 compile with UHC
10866
10867 --haskell-suite
10868 compile with a haskell-suite compiler
10869
10870 --cabal-file PATH
10871 use this Cabal file
10872
10873 -w, --with-compiler PATH
10874 give the path to a particular compiler
10875
10876 --with-hc-pkg PATH
10877 give the path to the package tool
10878
10879 --prefix DIR
10880 bake this prefix in preparation of installation
10881
10882 --bindir DIR
10883 installation directory for executables
10884
10885 --libdir DIR
10886 installation directory for libraries
10887
10888 --libsubdir DIR
10889 subdirectory of libdir in which libs are installed
10890
10891 --dynlibdir DIR
10892 installation directory for dynamic libraries
10893
10894 --libexecdir DIR
10895 installation directory for program executables
10896
10897 --libexecsubdir DIR
10898 subdirectory of libexecdir in which private executables
10899 are installed
10900
10901 --datadir DIR
10902 installation directory for read-only data
10903
10904 --datasubdir DIR
10905 subdirectory of datadir in which data files are installed
10906
10907 --docdir DIR
10908 installation directory for documentation
10909
10910 --htmldir DIR
10911 installation directory for HTML documentation
10912
10913 --haddockdir DIR
10914 installation directory for haddock interfaces
10915
10916 --sysconfdir DIR
10917 installation directory for configuration files
10918
10919 --program-prefix PREFIX
10920 prefix to be applied to installed executables
10921
10922 --program-suffix SUFFIX
10923 suffix to be applied to installed executables
10924
10925 --enable-library-vanilla
10926 --disable-library-vanilla
10927 Vanilla libraries
10928
10929 -p, --enable-library-profiling
10930 --disable-library-profiling
10931 Library profiling
10932
10933 --enable-shared
10934 --disable-shared
10935 Shared library
10936
10937 --enable-static
10938 --disable-static
10939 Static library
10940
10941 --enable-executable-dynamic
10942 --disable-executable-dynamic
10943 Executable dynamic linking
10944
10945 --enable-executable-static
10946 --disable-executable-static
10947 Executable fully static linking
10948
10949 --enable-profiling
10950 --disable-profiling
10951 Executable and library profiling
10952
10953 --enable-executable-profiling
10954 --disable-executable-profiling
10955 Executable profiling (DEPRECATED)
10956
10957 --profiling-detail level
10958 Profiling detail level for executable and library
10959 (default, none, exported-functions, toplevel-functions,
10960 all-functions).
10961
10962 --library-profiling-detail level
10963 Profiling detail level for libraries only.
10964
10965 -O, --enable-optimization, --enable-optimisation [n]
10966 Build with optimization (n is 0--2, default is 1)
10967
10968 --disable-optimization, --disable-optimisation
10969 Build without optimization
10970
10971 --enable-debug-info [n]
10972 Emit debug info (n is 0--3, default is 0)
10973
10974 --disable-debug-info
10975 Don't emit debug info
10976
10977 --enable-library-for-ghci
10978 --disable-library-for-ghci
10979 compile library for use with GHCi
10980
10981 --enable-split-sections
10982 --disable-split-sections
10983 compile library code such that unneeded definitions can
10984 be dropped from the final executable (GHC 7.8+)
10985
10986 --enable-split-objs
10987 --disable-split-objs
10988 split library into smaller objects to reduce binary sizes
10989 (GHC 6.6+)
10990
10991 --enable-executable-stripping
10992 --disable-executable-stripping
10993 strip executables upon installation to reduce binary
10994 sizes
10995
10996 --enable-library-stripping
10997 --disable-library-stripping
10998 strip libraries upon installation to reduce binary sizes
10999
11000 --configure-option OPT
11001 Extra option for configure
11002
11003 --user
11004 --global
11005 doing a per-user installation
11006
11007 --package-db DB
11008 Append the given package database to the list of package
11009 databases used (to satisfy dependencies and register
11010 into). May be a specific file, 'global' or 'user'. The
11011 initial list is ['global'], ['global', 'user'], or
11012 ['global', $sandbox], depending on context. Use 'clear'
11013 to reset the list to empty. See the user guide for
11014 details.
11015
11016 -f, --flags FLAGS
11017 Force values for the given flags in Cabal conditionals in
11018 the .cabal file. E.g., --flags="debug -usebytestrings"
11019 forces the flag "debug" to true and "usebytestrings" to
11020 false.
11021
11022 --extra-include-dirs PATH
11023 A list of directories to search for header files
11024
11025 --enable-deterministic
11026 --disable-deterministic
11027 Try to be as deterministic as possible (used by the test
11028 suite)
11029
11030 --ipid IPID
11031 Installed package ID to compile this package as
11032
11033 --cid CID
11034 Installed component ID to compile this component as
11035
11036 --extra-lib-dirs PATH
11037 A list of directories to search for external libraries
11038
11039 --extra-framework-dirs PATH
11040 A list of directories to search for external frameworks
11041 (OS X only)
11042
11043 --extra-prog-path PATH
11044 A list of directories to search for required programs (in
11045 addition to the normal search locations)
11046
11047 --instantiate-with NAME=MOD
11048 A mapping of signature names to concrete module instanti‐
11049 ations.
11050
11051 --enable-tests
11052 --disable-tests
11053 dependency checking and compilation for test suites
11054 listed in the package description file.
11055
11056 --enable-coverage
11057 --disable-coverage
11058 build package with Haskell Program Coverage. (GHC only)
11059
11060 --enable-library-coverage
11061 --disable-library-coverage
11062 build package with Haskell Program Coverage. (GHC only)
11063 (DEPRECATED)
11064
11065 --enable-benchmarks
11066 --disable-benchmarks
11067 dependency checking and compilation for benchmarks listed
11068 in the package description file.
11069
11070 --enable-relocatable
11071 --disable-relocatable
11072 building a package that is relocatable. (GHC only)
11073
11074 --disable-response-files
11075 enable workaround for old versions of programs like "ar"
11076 that do not support @file arguments
11077
11078 --allow-depending-on-private-libs
11079 Allow depending on private libraries. If set, the library
11080 visibility check MUST be done externally.
11081
11082 --with-alex PATH
11083 give the path to alex
11084
11085 --with-ar PATH
11086 give the path to ar
11087
11088 --with-c2hs PATH
11089 give the path to c2hs
11090
11091 --with-cpphs PATH
11092 give the path to cpphs
11093
11094 --with-doctest PATH
11095 give the path to doctest
11096
11097 --with-gcc PATH
11098 give the path to gcc
11099
11100 --with-ghc PATH
11101 give the path to ghc
11102
11103 --with-ghc-pkg PATH
11104 give the path to ghc-pkg
11105
11106 --with-ghcjs PATH
11107 give the path to ghcjs
11108
11109 --with-ghcjs-pkg PATH
11110 give the path to ghcjs-pkg
11111
11112 --with-greencard PATH
11113 give the path to greencard
11114
11115 --with-haddock PATH
11116 give the path to haddock
11117
11118 --with-happy PATH
11119 give the path to happy
11120
11121 --with-haskell-suite PATH
11122 give the path to haskell-suite
11123
11124 --with-haskell-suite-pkg PATH
11125 give the path to haskell-suite-pkg
11126
11127 --with-hmake PATH
11128 give the path to hmake
11129
11130 --with-hpc PATH
11131 give the path to hpc
11132
11133 --with-hsc2hs PATH
11134 give the path to hsc2hs
11135
11136 --with-hscolour PATH
11137 give the path to hscolour
11138
11139 --with-jhc PATH
11140 give the path to jhc
11141
11142 --with-ld PATH
11143 give the path to ld
11144
11145 --with-pkg-config PATH
11146 give the path to pkg-config
11147
11148 --with-runghc PATH
11149 give the path to runghc
11150
11151 --with-strip PATH
11152 give the path to strip
11153
11154 --with-tar PATH
11155 give the path to tar
11156
11157 --with-uhc PATH
11158 give the path to uhc
11159
11160 --alex-option OPT
11161 give an extra option to alex (no need to quote options
11162 containing spaces)
11163
11164 --ar-option OPT
11165 give an extra option to ar (no need to quote options con‐
11166 taining spaces)
11167
11168 --c2hs-option OPT
11169 give an extra option to c2hs (no need to quote options
11170 containing spaces)
11171
11172 --cpphs-option OPT
11173 give an extra option to cpphs (no need to quote options
11174 containing spaces)
11175
11176 --doctest-option OPT
11177 give an extra option to doctest (no need to quote options
11178 containing spaces)
11179
11180 --gcc-option OPT
11181 give an extra option to gcc (no need to quote options
11182 containing spaces)
11183
11184 --ghc-option OPT
11185 give an extra option to ghc (no need to quote options
11186 containing spaces)
11187
11188 --ghc-pkg-option OPT
11189 give an extra option to ghc-pkg (no need to quote options
11190 containing spaces)
11191
11192 --ghcjs-option OPT
11193 give an extra option to ghcjs (no need to quote options
11194 containing spaces)
11195
11196 --ghcjs-pkg-option OPT
11197 give an extra option to ghcjs-pkg (no need to quote
11198 options containing spaces)
11199
11200 --greencard-option OPT
11201 give an extra option to greencard (no need to quote
11202 options containing spaces)
11203
11204 --haddock-option OPT
11205 give an extra option to haddock (no need to quote options
11206 containing spaces)
11207
11208 --happy-option OPT
11209 give an extra option to happy (no need to quote options
11210 containing spaces)
11211
11212 --haskell-suite-option OPT
11213 give an extra option to haskell-suite (no need to quote
11214 options containing spaces)
11215
11216 --haskell-suite-pkg-option OPT
11217 give an extra option to haskell-suite-pkg (no need to
11218 quote options containing spaces)
11219
11220 --hmake-option OPT
11221 give an extra option to hmake (no need to quote options
11222 containing spaces)
11223
11224 --hpc-option OPT
11225 give an extra option to hpc (no need to quote options
11226 containing spaces)
11227
11228 --hsc2hs-option OPT
11229 give an extra option to hsc2hs (no need to quote options
11230 containing spaces)
11231
11232 --hscolour-option OPT
11233 give an extra option to hscolour (no need to quote
11234 options containing spaces)
11235
11236 --jhc-option OPT
11237 give an extra option to jhc (no need to quote options
11238 containing spaces)
11239
11240 --ld-option OPT
11241 give an extra option to ld (no need to quote options con‐
11242 taining spaces)
11243
11244 --pkg-config-option OPT
11245 give an extra option to pkg-config (no need to quote
11246 options containing spaces)
11247
11248 --runghc-option OPT
11249 give an extra option to runghc (no need to quote options
11250 containing spaces)
11251
11252 --strip-option OPT
11253 give an extra option to strip (no need to quote options
11254 containing spaces)
11255
11256 --tar-option OPT
11257 give an extra option to tar (no need to quote options
11258 containing spaces)
11259
11260 --uhc-option OPT
11261 give an extra option to uhc (no need to quote options
11262 containing spaces)
11263
11264 --alex-options OPTS
11265 give extra options to alex
11266
11267 --ar-options OPTS
11268 give extra options to ar
11269
11270 --c2hs-options OPTS
11271 give extra options to c2hs
11272
11273 --cpphs-options OPTS
11274 give extra options to cpphs
11275
11276 --doctest-options OPTS
11277 give extra options to doctest
11278
11279 --gcc-options OPTS
11280 give extra options to gcc
11281
11282 --ghc-options OPTS
11283 give extra options to ghc
11284
11285 --ghc-pkg-options OPTS
11286 give extra options to ghc-pkg
11287
11288 --ghcjs-options OPTS
11289 give extra options to ghcjs
11290
11291 --ghcjs-pkg-options OPTS
11292 give extra options to ghcjs-pkg
11293
11294 --greencard-options OPTS
11295 give extra options to greencard
11296
11297 --haddock-options OPTS
11298 give extra options to haddock
11299
11300 --happy-options OPTS
11301 give extra options to happy
11302
11303 --haskell-suite-options OPTS
11304 give extra options to haskell-suite
11305
11306 --haskell-suite-pkg-options OPTS
11307 give extra options to haskell-suite-pkg
11308
11309 --hmake-options OPTS
11310 give extra options to hmake
11311
11312 --hpc-options OPTS
11313 give extra options to hpc
11314
11315 --hsc2hs-options OPTS
11316 give extra options to hsc2hs
11317
11318 --hscolour-options OPTS
11319 give extra options to hscolour
11320
11321 --jhc-options OPTS
11322 give extra options to jhc
11323
11324 --ld-options OPTS
11325 give extra options to ld
11326
11327 --pkg-config-options OPTS
11328 give extra options to pkg-config
11329
11330 --runghc-options OPTS
11331 give extra options to runghc
11332
11333 --strip-options OPTS
11334 give extra options to strip
11335
11336 --tar-options OPTS
11337 give extra options to tar
11338
11339 --uhc-options OPTS
11340 give extra options to uhc
11341
11342 --cabal-lib-version VERSION
11343 Select which version of the Cabal lib to use to build
11344 packages (useful for testing).
11345
11346 --constraint CONSTRAINT
11347 Specify constraints on a package (version,
11348 installed/source, flags)
11349
11350 --preference CONSTRAINT
11351 Specify preferences (soft constraints) on the version of
11352 a package
11353
11354 --solver SOLVER
11355 Select dependency solver to use (default: modular).
11356 Choices: modular.
11357
11358 --allow-older [DEPS]
11359 Ignore lower bounds in all dependencies or DEPS
11360
11361 --allow-newer [DEPS]
11362 Ignore upper bounds in all dependencies or DEPS
11363
11364 --write-ghc-environment-files always|never|ghc8.4.4+
11365 Whether to create a .ghc.environment file after a suc‐
11366 cessful build (v2-build only)
11367
11368 --enable-documentation
11369 --disable-documentation
11370 building of documentation
11371
11372 --doc-index-file TEMPLATE
11373 A central index of haddock API documentation (template
11374 cannot use $pkgid)
11375
11376 --dry-run
11377 Do not install anything, only print what would be
11378 installed.
11379
11380 --max-backjumps NUM
11381 Maximum number of backjumps allowed while solving
11382 (default: 4000). Use a negative number to enable unlim‐
11383 ited backtracking. Use 0 to disable backtracking com‐
11384 pletely.
11385
11386 --reorder-goals
11387 --no-reorder-goals
11388 Try to reorder goals according to certain heuristics.
11389 Slows things down on average, but may make backtracking
11390 faster for some packages.
11391
11392 --count-conflicts
11393 --no-count-conflicts
11394 Try to speed up solving by preferring goals that are
11395 involved in a lot of conflicts (default).
11396
11397 --minimize-conflict-set
11398 --no-minimize-conflict-set
11399 When there is no solution, try to improve the error mes‐
11400 sage by finding a minimal conflict set (default: false).
11401 May increase run time significantly.
11402
11403 --independent-goals
11404 --no-independent-goals
11405 Treat several goals on the command line as independent.
11406 If several goals depend on the same package, different
11407 versions can be chosen.
11408
11409 --shadow-installed-packages
11410 --no-shadow-installed-packages
11411 If multiple package instances of the same version are
11412 installed, treat all but one as shadowed.
11413
11414 --strong-flags
11415 --no-strong-flags
11416 Do not defer flag choices (this used to be the default in
11417 cabal-install <= 1.20).
11418
11419 --allow-boot-library-installs
11420 --no-allow-boot-library-installs
11421 Allow cabal to install base, ghc-prim, integer-simple,
11422 integer-gmp, and template-haskell.
11423
11424 --reject-unconstrained-dependencies none|all
11425 Require these packages to have constraints on them if
11426 they are to be selected (default: none).
11427
11428 --reinstall
11429 --no-reinstall
11430 Install even if it means installing the same version
11431 again.
11432
11433 --avoid-reinstalls
11434 --no-avoid-reinstalls
11435 Do not select versions that would destructively overwrite
11436 installed packages.
11437
11438 --force-reinstalls
11439 --no-force-reinstalls
11440 Reinstall packages even if they will most likely break
11441 other installed packages.
11442
11443 --upgrade-dependencies
11444 --no-upgrade-dependencies
11445 Pick the latest version for all dependencies, rather than
11446 trying to pick an installed version.
11447
11448 --only-dependencies
11449 --no-only-dependencies
11450 Install only the dependencies necessary to build the
11451 given packages
11452
11453 --dependencies-only
11454 --no-dependencies-only
11455 A synonym for --only-dependencies
11456
11457 --index-state STATE
11458 Use source package index state as it existed at a previ‐
11459 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
11460 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
11461 'HEAD' (default: 'HEAD').
11462
11463 --root-cmd COMMAND
11464 (No longer supported, do not use.)
11465
11466 --symlink-bindir DIR
11467 Add symlinks to installed executables into this direc‐
11468 tory.
11469
11470 --build-summary TEMPLATE
11471 Save build summaries to file (name template can use
11472 $pkgid, $compiler, $os, $arch)
11473
11474 --build-log TEMPLATE
11475 Log all builds to file (name template can use $pkgid,
11476 $compiler, $os, $arch)
11477
11478 --remote-build-reporting LEVEL
11479 Generate build reports to send to a remote server (none,
11480 anonymous or detailed).
11481
11482 --report-planning-failure
11483 Generate build reports when the dependency solver fails.
11484 This is used by the Hackage build bot.
11485
11486 --enable-per-component
11487 --disable-per-component
11488 Per-component builds when possible
11489
11490 --one-shot
11491 --no-one-shot
11492 Do not record the packages in the world file.
11493
11494 --run-tests
11495 Run package test suites during installation.
11496
11497 -j, --jobs [NUM]
11498 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
11499 given).
11500
11501 --keep-going
11502 After a build failure, continue to build other unaffected
11503 packages.
11504
11505 --offline
11506 --no-offline
11507 Don't download packages from the Internet.
11508
11509 --project-file FILE
11510 Set the name of the cabal.project file to search for in
11511 parent directories
11512
11513 --only
11514 Only installs the package in the current directory.
11515
11516 --haddock-hoogle
11517 Generate a hoogle database
11518
11519 --haddock-html
11520 Generate HTML documentation (the default)
11521
11522 --haddock-html-location URL
11523 Location of HTML documentation for pre-requisite packages
11524
11525 --haddock-for-hackage
11526 Collection of flags to generate documentation suitable
11527 for upload to hackage
11528
11529 --haddock-executables
11530 Run haddock for Executables targets
11531
11532 --haddock-tests
11533 Run haddock for Test Suite targets
11534
11535 --haddock-benchmarks
11536 Run haddock for Benchmark targets
11537
11538 --haddock-all
11539 Run haddock for all targets
11540
11541 --haddock-internal
11542 Run haddock for internal modules and include all symbols
11543
11544 --haddock-css PATH
11545 Use PATH as the haddock stylesheet
11546
11547 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
11548 dock-hyperlinked-source
11549 Hyperlink the documentation to the source code
11550
11551 --haddock-quickjump
11552 Generate an index for interactive documentation naviga‐
11553 tion
11554
11555 --haddock-hscolour-css PATH
11556 Use PATH as the HsColour stylesheet
11557
11558 --haddock-contents-location URL
11559 Bake URL in as the location for the contents page
11560
11561 --test-log TEMPLATE
11562 Log all test suite results to file (name template can use
11563 $pkgid, $compiler, $os, $arch, $test-suite, $result)
11564
11565 --test-machine-log TEMPLATE
11566 Produce a machine-readable log file (name template can
11567 use $pkgid, $compiler, $os, $arch, $result)
11568
11569 --test-show-details FILTER
11570
11571 --test-keep-tix-files
11572 keep .tix files for HPC between test runs
11573
11574 --test-wrapper FILE
11575 Run test through a wrapper.
11576
11577 --test-fail-when-no-test-suites
11578 Exit with failure when no test suites are found.
11579
11580 --test-options TEMPLATES
11581 give extra options to test executables (name templates
11582 can use $pkgid, $compiler, $os, $arch, $test-suite)
11583
11584 --test-option TEMPLATE
11585 give extra option to test executables (no need to quote
11586 options containing spaces, name template can use $pkgid,
11587 $compiler, $os, $arch, $test-suite)
11588
11589
11590 cabal v2-freeze
11591
11592 Usage: cabal v2-freeze [FLAGS]
11593
11594
11595 The project configuration is frozen so that it will be reproducible in
11596 future.
11597
11598 The precise dependency configuration for the project is written to the
11599 specified). This file extends the configuration from the
11600 'cabal.project' file and thus is used as the project configuration for
11601 all other commands (such as
11602
11603 The freeze file can be kept in source control. To make small adjust‐
11604 ments it may be edited manually, or to make bigger changes you may wish
11605 to delete the file and re-freeze. For more control, one approach is to
11606 try variations using once you have a satisfactory solution to freeze it
11607 using the 'v2-freeze' command with the same set of flags.
11608
11609
11610 Examples:
11611 cabal v2-freeze
11612 Freeze the configuration of the current project
11613
11614 cabal v2-build --dry-run --constraint="aeson < 1"
11615 Check what a solution with the given constraints would look like
11616 cabal v2-freeze --constraint="aeson < 1"
11617 Freeze a solution using the given constraints
11618
11619 Note: this command is part of the new project-based system (aka nix-
11620 style local builds). These features are currently in beta. Please see
11621 http://cabal.readthedocs.io/en/latest/nix-local-build-overview.html for
11622 details and advice on what you can expect to work. If you encounter
11623 problems please file issues at https://github.com/haskell/cabal/issues
11624 and if you have any time to get involved and help with testing, fixing
11625 bugs etc then that is very much appreciated.
11626
11627
11628 Flags:
11629 -v, --verbose [n]
11630 Control verbosity (n is 0--3, default verbosity level is
11631 1)
11632
11633 --builddir, --distdir, --distpref DIR
11634 The directory where Cabal puts generated build files
11635 (default dist)
11636
11637 -g, --ghc
11638 compile with GHC
11639
11640 --ghcjs
11641 compile with GHCJS
11642
11643 --uhc
11644 compile with UHC
11645
11646 --haskell-suite
11647 compile with a haskell-suite compiler
11648
11649 --cabal-file PATH
11650 use this Cabal file
11651
11652 -w, --with-compiler PATH
11653 give the path to a particular compiler
11654
11655 --with-hc-pkg PATH
11656 give the path to the package tool
11657
11658 --prefix DIR
11659 bake this prefix in preparation of installation
11660
11661 --bindir DIR
11662 installation directory for executables
11663
11664 --libdir DIR
11665 installation directory for libraries
11666
11667 --libsubdir DIR
11668 subdirectory of libdir in which libs are installed
11669
11670 --dynlibdir DIR
11671 installation directory for dynamic libraries
11672
11673 --libexecdir DIR
11674 installation directory for program executables
11675
11676 --libexecsubdir DIR
11677 subdirectory of libexecdir in which private executables
11678 are installed
11679
11680 --datadir DIR
11681 installation directory for read-only data
11682
11683 --datasubdir DIR
11684 subdirectory of datadir in which data files are installed
11685
11686 --docdir DIR
11687 installation directory for documentation
11688
11689 --htmldir DIR
11690 installation directory for HTML documentation
11691
11692 --haddockdir DIR
11693 installation directory for haddock interfaces
11694
11695 --sysconfdir DIR
11696 installation directory for configuration files
11697
11698 --program-prefix PREFIX
11699 prefix to be applied to installed executables
11700
11701 --program-suffix SUFFIX
11702 suffix to be applied to installed executables
11703
11704 --enable-library-vanilla
11705 --disable-library-vanilla
11706 Vanilla libraries
11707
11708 -p, --enable-library-profiling
11709 --disable-library-profiling
11710 Library profiling
11711
11712 --enable-shared
11713 --disable-shared
11714 Shared library
11715
11716 --enable-static
11717 --disable-static
11718 Static library
11719
11720 --enable-executable-dynamic
11721 --disable-executable-dynamic
11722 Executable dynamic linking
11723
11724 --enable-executable-static
11725 --disable-executable-static
11726 Executable fully static linking
11727
11728 --enable-profiling
11729 --disable-profiling
11730 Executable and library profiling
11731
11732 --enable-executable-profiling
11733 --disable-executable-profiling
11734 Executable profiling (DEPRECATED)
11735
11736 --profiling-detail level
11737 Profiling detail level for executable and library
11738 (default, none, exported-functions, toplevel-functions,
11739 all-functions).
11740
11741 --library-profiling-detail level
11742 Profiling detail level for libraries only.
11743
11744 -O, --enable-optimization, --enable-optimisation [n]
11745 Build with optimization (n is 0--2, default is 1)
11746
11747 --disable-optimization, --disable-optimisation
11748 Build without optimization
11749
11750 --enable-debug-info [n]
11751 Emit debug info (n is 0--3, default is 0)
11752
11753 --disable-debug-info
11754 Don't emit debug info
11755
11756 --enable-library-for-ghci
11757 --disable-library-for-ghci
11758 compile library for use with GHCi
11759
11760 --enable-split-sections
11761 --disable-split-sections
11762 compile library code such that unneeded definitions can
11763 be dropped from the final executable (GHC 7.8+)
11764
11765 --enable-split-objs
11766 --disable-split-objs
11767 split library into smaller objects to reduce binary sizes
11768 (GHC 6.6+)
11769
11770 --enable-executable-stripping
11771 --disable-executable-stripping
11772 strip executables upon installation to reduce binary
11773 sizes
11774
11775 --enable-library-stripping
11776 --disable-library-stripping
11777 strip libraries upon installation to reduce binary sizes
11778
11779 --configure-option OPT
11780 Extra option for configure
11781
11782 --user
11783 --global
11784 doing a per-user installation
11785
11786 --package-db DB
11787 Append the given package database to the list of package
11788 databases used (to satisfy dependencies and register
11789 into). May be a specific file, 'global' or 'user'. The
11790 initial list is ['global'], ['global', 'user'], or
11791 ['global', $sandbox], depending on context. Use 'clear'
11792 to reset the list to empty. See the user guide for
11793 details.
11794
11795 -f, --flags FLAGS
11796 Force values for the given flags in Cabal conditionals in
11797 the .cabal file. E.g., --flags="debug -usebytestrings"
11798 forces the flag "debug" to true and "usebytestrings" to
11799 false.
11800
11801 --extra-include-dirs PATH
11802 A list of directories to search for header files
11803
11804 --enable-deterministic
11805 --disable-deterministic
11806 Try to be as deterministic as possible (used by the test
11807 suite)
11808
11809 --ipid IPID
11810 Installed package ID to compile this package as
11811
11812 --cid CID
11813 Installed component ID to compile this component as
11814
11815 --extra-lib-dirs PATH
11816 A list of directories to search for external libraries
11817
11818 --extra-framework-dirs PATH
11819 A list of directories to search for external frameworks
11820 (OS X only)
11821
11822 --extra-prog-path PATH
11823 A list of directories to search for required programs (in
11824 addition to the normal search locations)
11825
11826 --instantiate-with NAME=MOD
11827 A mapping of signature names to concrete module instanti‐
11828 ations.
11829
11830 --enable-tests
11831 --disable-tests
11832 dependency checking and compilation for test suites
11833 listed in the package description file.
11834
11835 --enable-coverage
11836 --disable-coverage
11837 build package with Haskell Program Coverage. (GHC only)
11838
11839 --enable-library-coverage
11840 --disable-library-coverage
11841 build package with Haskell Program Coverage. (GHC only)
11842 (DEPRECATED)
11843
11844 --enable-benchmarks
11845 --disable-benchmarks
11846 dependency checking and compilation for benchmarks listed
11847 in the package description file.
11848
11849 --enable-relocatable
11850 --disable-relocatable
11851 building a package that is relocatable. (GHC only)
11852
11853 --disable-response-files
11854 enable workaround for old versions of programs like "ar"
11855 that do not support @file arguments
11856
11857 --allow-depending-on-private-libs
11858 Allow depending on private libraries. If set, the library
11859 visibility check MUST be done externally.
11860
11861 --with-alex PATH
11862 give the path to alex
11863
11864 --with-ar PATH
11865 give the path to ar
11866
11867 --with-c2hs PATH
11868 give the path to c2hs
11869
11870 --with-cpphs PATH
11871 give the path to cpphs
11872
11873 --with-doctest PATH
11874 give the path to doctest
11875
11876 --with-gcc PATH
11877 give the path to gcc
11878
11879 --with-ghc PATH
11880 give the path to ghc
11881
11882 --with-ghc-pkg PATH
11883 give the path to ghc-pkg
11884
11885 --with-ghcjs PATH
11886 give the path to ghcjs
11887
11888 --with-ghcjs-pkg PATH
11889 give the path to ghcjs-pkg
11890
11891 --with-greencard PATH
11892 give the path to greencard
11893
11894 --with-haddock PATH
11895 give the path to haddock
11896
11897 --with-happy PATH
11898 give the path to happy
11899
11900 --with-haskell-suite PATH
11901 give the path to haskell-suite
11902
11903 --with-haskell-suite-pkg PATH
11904 give the path to haskell-suite-pkg
11905
11906 --with-hmake PATH
11907 give the path to hmake
11908
11909 --with-hpc PATH
11910 give the path to hpc
11911
11912 --with-hsc2hs PATH
11913 give the path to hsc2hs
11914
11915 --with-hscolour PATH
11916 give the path to hscolour
11917
11918 --with-jhc PATH
11919 give the path to jhc
11920
11921 --with-ld PATH
11922 give the path to ld
11923
11924 --with-pkg-config PATH
11925 give the path to pkg-config
11926
11927 --with-runghc PATH
11928 give the path to runghc
11929
11930 --with-strip PATH
11931 give the path to strip
11932
11933 --with-tar PATH
11934 give the path to tar
11935
11936 --with-uhc PATH
11937 give the path to uhc
11938
11939 --alex-option OPT
11940 give an extra option to alex (no need to quote options
11941 containing spaces)
11942
11943 --ar-option OPT
11944 give an extra option to ar (no need to quote options con‐
11945 taining spaces)
11946
11947 --c2hs-option OPT
11948 give an extra option to c2hs (no need to quote options
11949 containing spaces)
11950
11951 --cpphs-option OPT
11952 give an extra option to cpphs (no need to quote options
11953 containing spaces)
11954
11955 --doctest-option OPT
11956 give an extra option to doctest (no need to quote options
11957 containing spaces)
11958
11959 --gcc-option OPT
11960 give an extra option to gcc (no need to quote options
11961 containing spaces)
11962
11963 --ghc-option OPT
11964 give an extra option to ghc (no need to quote options
11965 containing spaces)
11966
11967 --ghc-pkg-option OPT
11968 give an extra option to ghc-pkg (no need to quote options
11969 containing spaces)
11970
11971 --ghcjs-option OPT
11972 give an extra option to ghcjs (no need to quote options
11973 containing spaces)
11974
11975 --ghcjs-pkg-option OPT
11976 give an extra option to ghcjs-pkg (no need to quote
11977 options containing spaces)
11978
11979 --greencard-option OPT
11980 give an extra option to greencard (no need to quote
11981 options containing spaces)
11982
11983 --haddock-option OPT
11984 give an extra option to haddock (no need to quote options
11985 containing spaces)
11986
11987 --happy-option OPT
11988 give an extra option to happy (no need to quote options
11989 containing spaces)
11990
11991 --haskell-suite-option OPT
11992 give an extra option to haskell-suite (no need to quote
11993 options containing spaces)
11994
11995 --haskell-suite-pkg-option OPT
11996 give an extra option to haskell-suite-pkg (no need to
11997 quote options containing spaces)
11998
11999 --hmake-option OPT
12000 give an extra option to hmake (no need to quote options
12001 containing spaces)
12002
12003 --hpc-option OPT
12004 give an extra option to hpc (no need to quote options
12005 containing spaces)
12006
12007 --hsc2hs-option OPT
12008 give an extra option to hsc2hs (no need to quote options
12009 containing spaces)
12010
12011 --hscolour-option OPT
12012 give an extra option to hscolour (no need to quote
12013 options containing spaces)
12014
12015 --jhc-option OPT
12016 give an extra option to jhc (no need to quote options
12017 containing spaces)
12018
12019 --ld-option OPT
12020 give an extra option to ld (no need to quote options con‐
12021 taining spaces)
12022
12023 --pkg-config-option OPT
12024 give an extra option to pkg-config (no need to quote
12025 options containing spaces)
12026
12027 --runghc-option OPT
12028 give an extra option to runghc (no need to quote options
12029 containing spaces)
12030
12031 --strip-option OPT
12032 give an extra option to strip (no need to quote options
12033 containing spaces)
12034
12035 --tar-option OPT
12036 give an extra option to tar (no need to quote options
12037 containing spaces)
12038
12039 --uhc-option OPT
12040 give an extra option to uhc (no need to quote options
12041 containing spaces)
12042
12043 --alex-options OPTS
12044 give extra options to alex
12045
12046 --ar-options OPTS
12047 give extra options to ar
12048
12049 --c2hs-options OPTS
12050 give extra options to c2hs
12051
12052 --cpphs-options OPTS
12053 give extra options to cpphs
12054
12055 --doctest-options OPTS
12056 give extra options to doctest
12057
12058 --gcc-options OPTS
12059 give extra options to gcc
12060
12061 --ghc-options OPTS
12062 give extra options to ghc
12063
12064 --ghc-pkg-options OPTS
12065 give extra options to ghc-pkg
12066
12067 --ghcjs-options OPTS
12068 give extra options to ghcjs
12069
12070 --ghcjs-pkg-options OPTS
12071 give extra options to ghcjs-pkg
12072
12073 --greencard-options OPTS
12074 give extra options to greencard
12075
12076 --haddock-options OPTS
12077 give extra options to haddock
12078
12079 --happy-options OPTS
12080 give extra options to happy
12081
12082 --haskell-suite-options OPTS
12083 give extra options to haskell-suite
12084
12085 --haskell-suite-pkg-options OPTS
12086 give extra options to haskell-suite-pkg
12087
12088 --hmake-options OPTS
12089 give extra options to hmake
12090
12091 --hpc-options OPTS
12092 give extra options to hpc
12093
12094 --hsc2hs-options OPTS
12095 give extra options to hsc2hs
12096
12097 --hscolour-options OPTS
12098 give extra options to hscolour
12099
12100 --jhc-options OPTS
12101 give extra options to jhc
12102
12103 --ld-options OPTS
12104 give extra options to ld
12105
12106 --pkg-config-options OPTS
12107 give extra options to pkg-config
12108
12109 --runghc-options OPTS
12110 give extra options to runghc
12111
12112 --strip-options OPTS
12113 give extra options to strip
12114
12115 --tar-options OPTS
12116 give extra options to tar
12117
12118 --uhc-options OPTS
12119 give extra options to uhc
12120
12121 --cabal-lib-version VERSION
12122 Select which version of the Cabal lib to use to build
12123 packages (useful for testing).
12124
12125 --constraint CONSTRAINT
12126 Specify constraints on a package (version,
12127 installed/source, flags)
12128
12129 --preference CONSTRAINT
12130 Specify preferences (soft constraints) on the version of
12131 a package
12132
12133 --solver SOLVER
12134 Select dependency solver to use (default: modular).
12135 Choices: modular.
12136
12137 --allow-older [DEPS]
12138 Ignore lower bounds in all dependencies or DEPS
12139
12140 --allow-newer [DEPS]
12141 Ignore upper bounds in all dependencies or DEPS
12142
12143 --write-ghc-environment-files always|never|ghc8.4.4+
12144 Whether to create a .ghc.environment file after a suc‐
12145 cessful build (v2-build only)
12146
12147 --enable-documentation
12148 --disable-documentation
12149 building of documentation
12150
12151 --doc-index-file TEMPLATE
12152 A central index of haddock API documentation (template
12153 cannot use $pkgid)
12154
12155 --dry-run
12156 Do not install anything, only print what would be
12157 installed.
12158
12159 --max-backjumps NUM
12160 Maximum number of backjumps allowed while solving
12161 (default: 4000). Use a negative number to enable unlim‐
12162 ited backtracking. Use 0 to disable backtracking com‐
12163 pletely.
12164
12165 --reorder-goals
12166 --no-reorder-goals
12167 Try to reorder goals according to certain heuristics.
12168 Slows things down on average, but may make backtracking
12169 faster for some packages.
12170
12171 --count-conflicts
12172 --no-count-conflicts
12173 Try to speed up solving by preferring goals that are
12174 involved in a lot of conflicts (default).
12175
12176 --minimize-conflict-set
12177 --no-minimize-conflict-set
12178 When there is no solution, try to improve the error mes‐
12179 sage by finding a minimal conflict set (default: false).
12180 May increase run time significantly.
12181
12182 --independent-goals
12183 --no-independent-goals
12184 Treat several goals on the command line as independent.
12185 If several goals depend on the same package, different
12186 versions can be chosen.
12187
12188 --shadow-installed-packages
12189 --no-shadow-installed-packages
12190 If multiple package instances of the same version are
12191 installed, treat all but one as shadowed.
12192
12193 --strong-flags
12194 --no-strong-flags
12195 Do not defer flag choices (this used to be the default in
12196 cabal-install <= 1.20).
12197
12198 --allow-boot-library-installs
12199 --no-allow-boot-library-installs
12200 Allow cabal to install base, ghc-prim, integer-simple,
12201 integer-gmp, and template-haskell.
12202
12203 --reject-unconstrained-dependencies none|all
12204 Require these packages to have constraints on them if
12205 they are to be selected (default: none).
12206
12207 --reinstall
12208 --no-reinstall
12209 Install even if it means installing the same version
12210 again.
12211
12212 --avoid-reinstalls
12213 --no-avoid-reinstalls
12214 Do not select versions that would destructively overwrite
12215 installed packages.
12216
12217 --force-reinstalls
12218 --no-force-reinstalls
12219 Reinstall packages even if they will most likely break
12220 other installed packages.
12221
12222 --upgrade-dependencies
12223 --no-upgrade-dependencies
12224 Pick the latest version for all dependencies, rather than
12225 trying to pick an installed version.
12226
12227 --only-dependencies
12228 --no-only-dependencies
12229 Install only the dependencies necessary to build the
12230 given packages
12231
12232 --dependencies-only
12233 --no-dependencies-only
12234 A synonym for --only-dependencies
12235
12236 --index-state STATE
12237 Use source package index state as it existed at a previ‐
12238 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
12239 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
12240 'HEAD' (default: 'HEAD').
12241
12242 --root-cmd COMMAND
12243 (No longer supported, do not use.)
12244
12245 --symlink-bindir DIR
12246 Add symlinks to installed executables into this direc‐
12247 tory.
12248
12249 --build-summary TEMPLATE
12250 Save build summaries to file (name template can use
12251 $pkgid, $compiler, $os, $arch)
12252
12253 --build-log TEMPLATE
12254 Log all builds to file (name template can use $pkgid,
12255 $compiler, $os, $arch)
12256
12257 --remote-build-reporting LEVEL
12258 Generate build reports to send to a remote server (none,
12259 anonymous or detailed).
12260
12261 --report-planning-failure
12262 Generate build reports when the dependency solver fails.
12263 This is used by the Hackage build bot.
12264
12265 --enable-per-component
12266 --disable-per-component
12267 Per-component builds when possible
12268
12269 --one-shot
12270 --no-one-shot
12271 Do not record the packages in the world file.
12272
12273 --run-tests
12274 Run package test suites during installation.
12275
12276 -j, --jobs [NUM]
12277 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
12278 given).
12279
12280 --keep-going
12281 After a build failure, continue to build other unaffected
12282 packages.
12283
12284 --offline
12285 --no-offline
12286 Don't download packages from the Internet.
12287
12288 --project-file FILE
12289 Set the name of the cabal.project file to search for in
12290 parent directories
12291
12292 --only
12293 Only installs the package in the current directory.
12294
12295 --haddock-hoogle
12296 Generate a hoogle database
12297
12298 --haddock-html
12299 Generate HTML documentation (the default)
12300
12301 --haddock-html-location URL
12302 Location of HTML documentation for pre-requisite packages
12303
12304 --haddock-for-hackage
12305 Collection of flags to generate documentation suitable
12306 for upload to hackage
12307
12308 --haddock-executables
12309 Run haddock for Executables targets
12310
12311 --haddock-tests
12312 Run haddock for Test Suite targets
12313
12314 --haddock-benchmarks
12315 Run haddock for Benchmark targets
12316
12317 --haddock-all
12318 Run haddock for all targets
12319
12320 --haddock-internal
12321 Run haddock for internal modules and include all symbols
12322
12323 --haddock-css PATH
12324 Use PATH as the haddock stylesheet
12325
12326 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
12327 dock-hyperlinked-source
12328 Hyperlink the documentation to the source code
12329
12330 --haddock-quickjump
12331 Generate an index for interactive documentation naviga‐
12332 tion
12333
12334 --haddock-hscolour-css PATH
12335 Use PATH as the HsColour stylesheet
12336
12337 --haddock-contents-location URL
12338 Bake URL in as the location for the contents page
12339
12340 --test-log TEMPLATE
12341 Log all test suite results to file (name template can use
12342 $pkgid, $compiler, $os, $arch, $test-suite, $result)
12343
12344 --test-machine-log TEMPLATE
12345 Produce a machine-readable log file (name template can
12346 use $pkgid, $compiler, $os, $arch, $result)
12347
12348 --test-show-details FILTER
12349
12350 --test-keep-tix-files
12351 keep .tix files for HPC between test runs
12352
12353 --test-wrapper FILE
12354 Run test through a wrapper.
12355
12356 --test-fail-when-no-test-suites
12357 Exit with failure when no test suites are found.
12358
12359 --test-options TEMPLATES
12360 give extra options to test executables (name templates
12361 can use $pkgid, $compiler, $os, $arch, $test-suite)
12362
12363 --test-option TEMPLATE
12364 give extra option to test executables (no need to quote
12365 options containing spaces, name template can use $pkgid,
12366 $compiler, $os, $arch, $test-suite)
12367
12368
12369 cabal haddock
12370
12371 Usage: cabal haddock [FLAGS] TARGET
12372
12373
12374 Build Haddock documentation for the specified packages within the
12375 project.
12376
12377 Any package in the project can be specified. If no package is speci‐
12378 fied, the default is to build the documentation for the package in the
12379 current directory. The default behaviour is to build documentation for
12380 the exposed modules of the library component (if any). This can be
12381 changed with the
12382
12383 Currently, documentation for dependencies is NOT built. This behavior
12384 may change in future.
12385
12386 Additional configuration flags can be specified on the command line and
12387 these extend the project configuration from the 'cabal.project',
12388
12389
12390 Build Haddock documentation for the specified packages within the
12391 project.
12392
12393 Any package in the project can be specified. If no package is speci‐
12394 fied, the default is to build the documentation for the package in the
12395 current directory. The default behaviour is to build documentation for
12396 the exposed modules of the library component (if any). This can be
12397 changed with the
12398
12399 Currently, documentation for dependencies is NOT built. This behavior
12400 may change in future.
12401
12402 Additional configuration flags can be specified on the command line and
12403 these extend the project configuration from the 'cabal.project',
12404
12405
12406 Flags:
12407 -v, --verbose [n]
12408 Control verbosity (n is 0--3, default verbosity level is
12409 1)
12410
12411 --builddir, --distdir, --distpref DIR
12412 The directory where Cabal puts generated build files
12413 (default dist)
12414
12415 -g, --ghc
12416 compile with GHC
12417
12418 --ghcjs
12419 compile with GHCJS
12420
12421 --uhc
12422 compile with UHC
12423
12424 --haskell-suite
12425 compile with a haskell-suite compiler
12426
12427 --cabal-file PATH
12428 use this Cabal file
12429
12430 -w, --with-compiler PATH
12431 give the path to a particular compiler
12432
12433 --with-hc-pkg PATH
12434 give the path to the package tool
12435
12436 --prefix DIR
12437 bake this prefix in preparation of installation
12438
12439 --bindir DIR
12440 installation directory for executables
12441
12442 --libdir DIR
12443 installation directory for libraries
12444
12445 --libsubdir DIR
12446 subdirectory of libdir in which libs are installed
12447
12448 --dynlibdir DIR
12449 installation directory for dynamic libraries
12450
12451 --libexecdir DIR
12452 installation directory for program executables
12453
12454 --libexecsubdir DIR
12455 subdirectory of libexecdir in which private executables
12456 are installed
12457
12458 --datadir DIR
12459 installation directory for read-only data
12460
12461 --datasubdir DIR
12462 subdirectory of datadir in which data files are installed
12463
12464 --docdir DIR
12465 installation directory for documentation
12466
12467 --htmldir DIR
12468 installation directory for HTML documentation
12469
12470 --haddockdir DIR
12471 installation directory for haddock interfaces
12472
12473 --sysconfdir DIR
12474 installation directory for configuration files
12475
12476 --program-prefix PREFIX
12477 prefix to be applied to installed executables
12478
12479 --program-suffix SUFFIX
12480 suffix to be applied to installed executables
12481
12482 --enable-library-vanilla
12483 --disable-library-vanilla
12484 Vanilla libraries
12485
12486 -p, --enable-library-profiling
12487 --disable-library-profiling
12488 Library profiling
12489
12490 --enable-shared
12491 --disable-shared
12492 Shared library
12493
12494 --enable-static
12495 --disable-static
12496 Static library
12497
12498 --enable-executable-dynamic
12499 --disable-executable-dynamic
12500 Executable dynamic linking
12501
12502 --enable-executable-static
12503 --disable-executable-static
12504 Executable fully static linking
12505
12506 --enable-profiling
12507 --disable-profiling
12508 Executable and library profiling
12509
12510 --enable-executable-profiling
12511 --disable-executable-profiling
12512 Executable profiling (DEPRECATED)
12513
12514 --profiling-detail level
12515 Profiling detail level for executable and library
12516 (default, none, exported-functions, toplevel-functions,
12517 all-functions).
12518
12519 --library-profiling-detail level
12520 Profiling detail level for libraries only.
12521
12522 -O, --enable-optimization, --enable-optimisation [n]
12523 Build with optimization (n is 0--2, default is 1)
12524
12525 --disable-optimization, --disable-optimisation
12526 Build without optimization
12527
12528 --enable-debug-info [n]
12529 Emit debug info (n is 0--3, default is 0)
12530
12531 --disable-debug-info
12532 Don't emit debug info
12533
12534 --enable-library-for-ghci
12535 --disable-library-for-ghci
12536 compile library for use with GHCi
12537
12538 --enable-split-sections
12539 --disable-split-sections
12540 compile library code such that unneeded definitions can
12541 be dropped from the final executable (GHC 7.8+)
12542
12543 --enable-split-objs
12544 --disable-split-objs
12545 split library into smaller objects to reduce binary sizes
12546 (GHC 6.6+)
12547
12548 --enable-executable-stripping
12549 --disable-executable-stripping
12550 strip executables upon installation to reduce binary
12551 sizes
12552
12553 --enable-library-stripping
12554 --disable-library-stripping
12555 strip libraries upon installation to reduce binary sizes
12556
12557 --configure-option OPT
12558 Extra option for configure
12559
12560 --user
12561 --global
12562 doing a per-user installation
12563
12564 --package-db DB
12565 Append the given package database to the list of package
12566 databases used (to satisfy dependencies and register
12567 into). May be a specific file, 'global' or 'user'. The
12568 initial list is ['global'], ['global', 'user'], or
12569 ['global', $sandbox], depending on context. Use 'clear'
12570 to reset the list to empty. See the user guide for
12571 details.
12572
12573 -f, --flags FLAGS
12574 Force values for the given flags in Cabal conditionals in
12575 the .cabal file. E.g., --flags="debug -usebytestrings"
12576 forces the flag "debug" to true and "usebytestrings" to
12577 false.
12578
12579 --extra-include-dirs PATH
12580 A list of directories to search for header files
12581
12582 --enable-deterministic
12583 --disable-deterministic
12584 Try to be as deterministic as possible (used by the test
12585 suite)
12586
12587 --ipid IPID
12588 Installed package ID to compile this package as
12589
12590 --cid CID
12591 Installed component ID to compile this component as
12592
12593 --extra-lib-dirs PATH
12594 A list of directories to search for external libraries
12595
12596 --extra-framework-dirs PATH
12597 A list of directories to search for external frameworks
12598 (OS X only)
12599
12600 --extra-prog-path PATH
12601 A list of directories to search for required programs (in
12602 addition to the normal search locations)
12603
12604 --instantiate-with NAME=MOD
12605 A mapping of signature names to concrete module instanti‐
12606 ations.
12607
12608 --enable-tests
12609 --disable-tests
12610 dependency checking and compilation for test suites
12611 listed in the package description file.
12612
12613 --enable-coverage
12614 --disable-coverage
12615 build package with Haskell Program Coverage. (GHC only)
12616
12617 --enable-library-coverage
12618 --disable-library-coverage
12619 build package with Haskell Program Coverage. (GHC only)
12620 (DEPRECATED)
12621
12622 --enable-benchmarks
12623 --disable-benchmarks
12624 dependency checking and compilation for benchmarks listed
12625 in the package description file.
12626
12627 --enable-relocatable
12628 --disable-relocatable
12629 building a package that is relocatable. (GHC only)
12630
12631 --disable-response-files
12632 enable workaround for old versions of programs like "ar"
12633 that do not support @file arguments
12634
12635 --allow-depending-on-private-libs
12636 Allow depending on private libraries. If set, the library
12637 visibility check MUST be done externally.
12638
12639 --with-alex PATH
12640 give the path to alex
12641
12642 --with-ar PATH
12643 give the path to ar
12644
12645 --with-c2hs PATH
12646 give the path to c2hs
12647
12648 --with-cpphs PATH
12649 give the path to cpphs
12650
12651 --with-doctest PATH
12652 give the path to doctest
12653
12654 --with-gcc PATH
12655 give the path to gcc
12656
12657 --with-ghc PATH
12658 give the path to ghc
12659
12660 --with-ghc-pkg PATH
12661 give the path to ghc-pkg
12662
12663 --with-ghcjs PATH
12664 give the path to ghcjs
12665
12666 --with-ghcjs-pkg PATH
12667 give the path to ghcjs-pkg
12668
12669 --with-greencard PATH
12670 give the path to greencard
12671
12672 --with-haddock PATH
12673 give the path to haddock
12674
12675 --with-happy PATH
12676 give the path to happy
12677
12678 --with-haskell-suite PATH
12679 give the path to haskell-suite
12680
12681 --with-haskell-suite-pkg PATH
12682 give the path to haskell-suite-pkg
12683
12684 --with-hmake PATH
12685 give the path to hmake
12686
12687 --with-hpc PATH
12688 give the path to hpc
12689
12690 --with-hsc2hs PATH
12691 give the path to hsc2hs
12692
12693 --with-hscolour PATH
12694 give the path to hscolour
12695
12696 --with-jhc PATH
12697 give the path to jhc
12698
12699 --with-ld PATH
12700 give the path to ld
12701
12702 --with-pkg-config PATH
12703 give the path to pkg-config
12704
12705 --with-runghc PATH
12706 give the path to runghc
12707
12708 --with-strip PATH
12709 give the path to strip
12710
12711 --with-tar PATH
12712 give the path to tar
12713
12714 --with-uhc PATH
12715 give the path to uhc
12716
12717 --alex-option OPT
12718 give an extra option to alex (no need to quote options
12719 containing spaces)
12720
12721 --ar-option OPT
12722 give an extra option to ar (no need to quote options con‐
12723 taining spaces)
12724
12725 --c2hs-option OPT
12726 give an extra option to c2hs (no need to quote options
12727 containing spaces)
12728
12729 --cpphs-option OPT
12730 give an extra option to cpphs (no need to quote options
12731 containing spaces)
12732
12733 --doctest-option OPT
12734 give an extra option to doctest (no need to quote options
12735 containing spaces)
12736
12737 --gcc-option OPT
12738 give an extra option to gcc (no need to quote options
12739 containing spaces)
12740
12741 --ghc-option OPT
12742 give an extra option to ghc (no need to quote options
12743 containing spaces)
12744
12745 --ghc-pkg-option OPT
12746 give an extra option to ghc-pkg (no need to quote options
12747 containing spaces)
12748
12749 --ghcjs-option OPT
12750 give an extra option to ghcjs (no need to quote options
12751 containing spaces)
12752
12753 --ghcjs-pkg-option OPT
12754 give an extra option to ghcjs-pkg (no need to quote
12755 options containing spaces)
12756
12757 --greencard-option OPT
12758 give an extra option to greencard (no need to quote
12759 options containing spaces)
12760
12761 --haddock-option OPT
12762 give an extra option to haddock (no need to quote options
12763 containing spaces)
12764
12765 --happy-option OPT
12766 give an extra option to happy (no need to quote options
12767 containing spaces)
12768
12769 --haskell-suite-option OPT
12770 give an extra option to haskell-suite (no need to quote
12771 options containing spaces)
12772
12773 --haskell-suite-pkg-option OPT
12774 give an extra option to haskell-suite-pkg (no need to
12775 quote options containing spaces)
12776
12777 --hmake-option OPT
12778 give an extra option to hmake (no need to quote options
12779 containing spaces)
12780
12781 --hpc-option OPT
12782 give an extra option to hpc (no need to quote options
12783 containing spaces)
12784
12785 --hsc2hs-option OPT
12786 give an extra option to hsc2hs (no need to quote options
12787 containing spaces)
12788
12789 --hscolour-option OPT
12790 give an extra option to hscolour (no need to quote
12791 options containing spaces)
12792
12793 --jhc-option OPT
12794 give an extra option to jhc (no need to quote options
12795 containing spaces)
12796
12797 --ld-option OPT
12798 give an extra option to ld (no need to quote options con‐
12799 taining spaces)
12800
12801 --pkg-config-option OPT
12802 give an extra option to pkg-config (no need to quote
12803 options containing spaces)
12804
12805 --runghc-option OPT
12806 give an extra option to runghc (no need to quote options
12807 containing spaces)
12808
12809 --strip-option OPT
12810 give an extra option to strip (no need to quote options
12811 containing spaces)
12812
12813 --tar-option OPT
12814 give an extra option to tar (no need to quote options
12815 containing spaces)
12816
12817 --uhc-option OPT
12818 give an extra option to uhc (no need to quote options
12819 containing spaces)
12820
12821 --alex-options OPTS
12822 give extra options to alex
12823
12824 --ar-options OPTS
12825 give extra options to ar
12826
12827 --c2hs-options OPTS
12828 give extra options to c2hs
12829
12830 --cpphs-options OPTS
12831 give extra options to cpphs
12832
12833 --doctest-options OPTS
12834 give extra options to doctest
12835
12836 --gcc-options OPTS
12837 give extra options to gcc
12838
12839 --ghc-options OPTS
12840 give extra options to ghc
12841
12842 --ghc-pkg-options OPTS
12843 give extra options to ghc-pkg
12844
12845 --ghcjs-options OPTS
12846 give extra options to ghcjs
12847
12848 --ghcjs-pkg-options OPTS
12849 give extra options to ghcjs-pkg
12850
12851 --greencard-options OPTS
12852 give extra options to greencard
12853
12854 --haddock-options OPTS
12855 give extra options to haddock
12856
12857 --happy-options OPTS
12858 give extra options to happy
12859
12860 --haskell-suite-options OPTS
12861 give extra options to haskell-suite
12862
12863 --haskell-suite-pkg-options OPTS
12864 give extra options to haskell-suite-pkg
12865
12866 --hmake-options OPTS
12867 give extra options to hmake
12868
12869 --hpc-options OPTS
12870 give extra options to hpc
12871
12872 --hsc2hs-options OPTS
12873 give extra options to hsc2hs
12874
12875 --hscolour-options OPTS
12876 give extra options to hscolour
12877
12878 --jhc-options OPTS
12879 give extra options to jhc
12880
12881 --ld-options OPTS
12882 give extra options to ld
12883
12884 --pkg-config-options OPTS
12885 give extra options to pkg-config
12886
12887 --runghc-options OPTS
12888 give extra options to runghc
12889
12890 --strip-options OPTS
12891 give extra options to strip
12892
12893 --tar-options OPTS
12894 give extra options to tar
12895
12896 --uhc-options OPTS
12897 give extra options to uhc
12898
12899 --cabal-lib-version VERSION
12900 Select which version of the Cabal lib to use to build
12901 packages (useful for testing).
12902
12903 --constraint CONSTRAINT
12904 Specify constraints on a package (version,
12905 installed/source, flags)
12906
12907 --preference CONSTRAINT
12908 Specify preferences (soft constraints) on the version of
12909 a package
12910
12911 --solver SOLVER
12912 Select dependency solver to use (default: modular).
12913 Choices: modular.
12914
12915 --allow-older [DEPS]
12916 Ignore lower bounds in all dependencies or DEPS
12917
12918 --allow-newer [DEPS]
12919 Ignore upper bounds in all dependencies or DEPS
12920
12921 --write-ghc-environment-files always|never|ghc8.4.4+
12922 Whether to create a .ghc.environment file after a suc‐
12923 cessful build (v2-build only)
12924
12925 --enable-documentation
12926 --disable-documentation
12927 building of documentation
12928
12929 --doc-index-file TEMPLATE
12930 A central index of haddock API documentation (template
12931 cannot use $pkgid)
12932
12933 --dry-run
12934 Do not install anything, only print what would be
12935 installed.
12936
12937 --max-backjumps NUM
12938 Maximum number of backjumps allowed while solving
12939 (default: 4000). Use a negative number to enable unlim‐
12940 ited backtracking. Use 0 to disable backtracking com‐
12941 pletely.
12942
12943 --reorder-goals
12944 --no-reorder-goals
12945 Try to reorder goals according to certain heuristics.
12946 Slows things down on average, but may make backtracking
12947 faster for some packages.
12948
12949 --count-conflicts
12950 --no-count-conflicts
12951 Try to speed up solving by preferring goals that are
12952 involved in a lot of conflicts (default).
12953
12954 --minimize-conflict-set
12955 --no-minimize-conflict-set
12956 When there is no solution, try to improve the error mes‐
12957 sage by finding a minimal conflict set (default: false).
12958 May increase run time significantly.
12959
12960 --independent-goals
12961 --no-independent-goals
12962 Treat several goals on the command line as independent.
12963 If several goals depend on the same package, different
12964 versions can be chosen.
12965
12966 --shadow-installed-packages
12967 --no-shadow-installed-packages
12968 If multiple package instances of the same version are
12969 installed, treat all but one as shadowed.
12970
12971 --strong-flags
12972 --no-strong-flags
12973 Do not defer flag choices (this used to be the default in
12974 cabal-install <= 1.20).
12975
12976 --allow-boot-library-installs
12977 --no-allow-boot-library-installs
12978 Allow cabal to install base, ghc-prim, integer-simple,
12979 integer-gmp, and template-haskell.
12980
12981 --reject-unconstrained-dependencies none|all
12982 Require these packages to have constraints on them if
12983 they are to be selected (default: none).
12984
12985 --reinstall
12986 --no-reinstall
12987 Install even if it means installing the same version
12988 again.
12989
12990 --avoid-reinstalls
12991 --no-avoid-reinstalls
12992 Do not select versions that would destructively overwrite
12993 installed packages.
12994
12995 --force-reinstalls
12996 --no-force-reinstalls
12997 Reinstall packages even if they will most likely break
12998 other installed packages.
12999
13000 --upgrade-dependencies
13001 --no-upgrade-dependencies
13002 Pick the latest version for all dependencies, rather than
13003 trying to pick an installed version.
13004
13005 --only-dependencies
13006 --no-only-dependencies
13007 Install only the dependencies necessary to build the
13008 given packages
13009
13010 --dependencies-only
13011 --no-dependencies-only
13012 A synonym for --only-dependencies
13013
13014 --index-state STATE
13015 Use source package index state as it existed at a previ‐
13016 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
13017 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
13018 'HEAD' (default: 'HEAD').
13019
13020 --root-cmd COMMAND
13021 (No longer supported, do not use.)
13022
13023 --symlink-bindir DIR
13024 Add symlinks to installed executables into this direc‐
13025 tory.
13026
13027 --build-summary TEMPLATE
13028 Save build summaries to file (name template can use
13029 $pkgid, $compiler, $os, $arch)
13030
13031 --build-log TEMPLATE
13032 Log all builds to file (name template can use $pkgid,
13033 $compiler, $os, $arch)
13034
13035 --remote-build-reporting LEVEL
13036 Generate build reports to send to a remote server (none,
13037 anonymous or detailed).
13038
13039 --report-planning-failure
13040 Generate build reports when the dependency solver fails.
13041 This is used by the Hackage build bot.
13042
13043 --enable-per-component
13044 --disable-per-component
13045 Per-component builds when possible
13046
13047 --one-shot
13048 --no-one-shot
13049 Do not record the packages in the world file.
13050
13051 --run-tests
13052 Run package test suites during installation.
13053
13054 -j, --jobs [NUM]
13055 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
13056 given).
13057
13058 --keep-going
13059 After a build failure, continue to build other unaffected
13060 packages.
13061
13062 --offline
13063 --no-offline
13064 Don't download packages from the Internet.
13065
13066 --project-file FILE
13067 Set the name of the cabal.project file to search for in
13068 parent directories
13069
13070 --only
13071 Only installs the package in the current directory.
13072
13073 --haddock-hoogle
13074 Generate a hoogle database
13075
13076 --haddock-html
13077 Generate HTML documentation (the default)
13078
13079 --haddock-html-location URL
13080 Location of HTML documentation for pre-requisite packages
13081
13082 --haddock-for-hackage
13083 Collection of flags to generate documentation suitable
13084 for upload to hackage
13085
13086 --haddock-executables
13087 Run haddock for Executables targets
13088
13089 --haddock-tests
13090 Run haddock for Test Suite targets
13091
13092 --haddock-benchmarks
13093 Run haddock for Benchmark targets
13094
13095 --haddock-all
13096 Run haddock for all targets
13097
13098 --haddock-internal
13099 Run haddock for internal modules and include all symbols
13100
13101 --haddock-css PATH
13102 Use PATH as the haddock stylesheet
13103
13104 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
13105 dock-hyperlinked-source
13106 Hyperlink the documentation to the source code
13107
13108 --haddock-quickjump
13109 Generate an index for interactive documentation naviga‐
13110 tion
13111
13112 --haddock-hscolour-css PATH
13113 Use PATH as the HsColour stylesheet
13114
13115 --haddock-contents-location URL
13116 Bake URL in as the location for the contents page
13117
13118 --test-log TEMPLATE
13119 Log all test suite results to file (name template can use
13120 $pkgid, $compiler, $os, $arch, $test-suite, $result)
13121
13122 --test-machine-log TEMPLATE
13123 Produce a machine-readable log file (name template can
13124 use $pkgid, $compiler, $os, $arch, $result)
13125
13126 --test-show-details FILTER
13127
13128 --test-keep-tix-files
13129 keep .tix files for HPC between test runs
13130
13131 --test-wrapper FILE
13132 Run test through a wrapper.
13133
13134 --test-fail-when-no-test-suites
13135 Exit with failure when no test suites are found.
13136
13137 --test-options TEMPLATES
13138 give extra options to test executables (name templates
13139 can use $pkgid, $compiler, $os, $arch, $test-suite)
13140
13141 --test-option TEMPLATE
13142 give extra option to test executables (no need to quote
13143 options containing spaces, name template can use $pkgid,
13144 $compiler, $os, $arch, $test-suite)
13145
13146
13147 cabal new-haddock
13148
13149 Usage: cabal new-haddock [FLAGS] TARGET
13150
13151
13152 Build Haddock documentation for the specified packages within the
13153 project.
13154
13155 Any package in the project can be specified. If no package is speci‐
13156 fied, the default is to build the documentation for the package in the
13157 current directory. The default behaviour is to build documentation for
13158 the exposed modules of the library component (if any). This can be
13159 changed with the
13160
13161 Currently, documentation for dependencies is NOT built. This behavior
13162 may change in future.
13163
13164 Additional configuration flags can be specified on the command line and
13165 these extend the project configuration from the 'cabal.project',
13166
13167
13168 Build Haddock documentation for the specified packages within the
13169 project.
13170
13171 Any package in the project can be specified. If no package is speci‐
13172 fied, the default is to build the documentation for the package in the
13173 current directory. The default behaviour is to build documentation for
13174 the exposed modules of the library component (if any). This can be
13175 changed with the
13176
13177 Currently, documentation for dependencies is NOT built. This behavior
13178 may change in future.
13179
13180 Additional configuration flags can be specified on the command line and
13181 these extend the project configuration from the 'cabal.project',
13182
13183
13184 Flags:
13185 -v, --verbose [n]
13186 Control verbosity (n is 0--3, default verbosity level is
13187 1)
13188
13189 --builddir, --distdir, --distpref DIR
13190 The directory where Cabal puts generated build files
13191 (default dist)
13192
13193 -g, --ghc
13194 compile with GHC
13195
13196 --ghcjs
13197 compile with GHCJS
13198
13199 --uhc
13200 compile with UHC
13201
13202 --haskell-suite
13203 compile with a haskell-suite compiler
13204
13205 --cabal-file PATH
13206 use this Cabal file
13207
13208 -w, --with-compiler PATH
13209 give the path to a particular compiler
13210
13211 --with-hc-pkg PATH
13212 give the path to the package tool
13213
13214 --prefix DIR
13215 bake this prefix in preparation of installation
13216
13217 --bindir DIR
13218 installation directory for executables
13219
13220 --libdir DIR
13221 installation directory for libraries
13222
13223 --libsubdir DIR
13224 subdirectory of libdir in which libs are installed
13225
13226 --dynlibdir DIR
13227 installation directory for dynamic libraries
13228
13229 --libexecdir DIR
13230 installation directory for program executables
13231
13232 --libexecsubdir DIR
13233 subdirectory of libexecdir in which private executables
13234 are installed
13235
13236 --datadir DIR
13237 installation directory for read-only data
13238
13239 --datasubdir DIR
13240 subdirectory of datadir in which data files are installed
13241
13242 --docdir DIR
13243 installation directory for documentation
13244
13245 --htmldir DIR
13246 installation directory for HTML documentation
13247
13248 --haddockdir DIR
13249 installation directory for haddock interfaces
13250
13251 --sysconfdir DIR
13252 installation directory for configuration files
13253
13254 --program-prefix PREFIX
13255 prefix to be applied to installed executables
13256
13257 --program-suffix SUFFIX
13258 suffix to be applied to installed executables
13259
13260 --enable-library-vanilla
13261 --disable-library-vanilla
13262 Vanilla libraries
13263
13264 -p, --enable-library-profiling
13265 --disable-library-profiling
13266 Library profiling
13267
13268 --enable-shared
13269 --disable-shared
13270 Shared library
13271
13272 --enable-static
13273 --disable-static
13274 Static library
13275
13276 --enable-executable-dynamic
13277 --disable-executable-dynamic
13278 Executable dynamic linking
13279
13280 --enable-executable-static
13281 --disable-executable-static
13282 Executable fully static linking
13283
13284 --enable-profiling
13285 --disable-profiling
13286 Executable and library profiling
13287
13288 --enable-executable-profiling
13289 --disable-executable-profiling
13290 Executable profiling (DEPRECATED)
13291
13292 --profiling-detail level
13293 Profiling detail level for executable and library
13294 (default, none, exported-functions, toplevel-functions,
13295 all-functions).
13296
13297 --library-profiling-detail level
13298 Profiling detail level for libraries only.
13299
13300 -O, --enable-optimization, --enable-optimisation [n]
13301 Build with optimization (n is 0--2, default is 1)
13302
13303 --disable-optimization, --disable-optimisation
13304 Build without optimization
13305
13306 --enable-debug-info [n]
13307 Emit debug info (n is 0--3, default is 0)
13308
13309 --disable-debug-info
13310 Don't emit debug info
13311
13312 --enable-library-for-ghci
13313 --disable-library-for-ghci
13314 compile library for use with GHCi
13315
13316 --enable-split-sections
13317 --disable-split-sections
13318 compile library code such that unneeded definitions can
13319 be dropped from the final executable (GHC 7.8+)
13320
13321 --enable-split-objs
13322 --disable-split-objs
13323 split library into smaller objects to reduce binary sizes
13324 (GHC 6.6+)
13325
13326 --enable-executable-stripping
13327 --disable-executable-stripping
13328 strip executables upon installation to reduce binary
13329 sizes
13330
13331 --enable-library-stripping
13332 --disable-library-stripping
13333 strip libraries upon installation to reduce binary sizes
13334
13335 --configure-option OPT
13336 Extra option for configure
13337
13338 --user
13339 --global
13340 doing a per-user installation
13341
13342 --package-db DB
13343 Append the given package database to the list of package
13344 databases used (to satisfy dependencies and register
13345 into). May be a specific file, 'global' or 'user'. The
13346 initial list is ['global'], ['global', 'user'], or
13347 ['global', $sandbox], depending on context. Use 'clear'
13348 to reset the list to empty. See the user guide for
13349 details.
13350
13351 -f, --flags FLAGS
13352 Force values for the given flags in Cabal conditionals in
13353 the .cabal file. E.g., --flags="debug -usebytestrings"
13354 forces the flag "debug" to true and "usebytestrings" to
13355 false.
13356
13357 --extra-include-dirs PATH
13358 A list of directories to search for header files
13359
13360 --enable-deterministic
13361 --disable-deterministic
13362 Try to be as deterministic as possible (used by the test
13363 suite)
13364
13365 --ipid IPID
13366 Installed package ID to compile this package as
13367
13368 --cid CID
13369 Installed component ID to compile this component as
13370
13371 --extra-lib-dirs PATH
13372 A list of directories to search for external libraries
13373
13374 --extra-framework-dirs PATH
13375 A list of directories to search for external frameworks
13376 (OS X only)
13377
13378 --extra-prog-path PATH
13379 A list of directories to search for required programs (in
13380 addition to the normal search locations)
13381
13382 --instantiate-with NAME=MOD
13383 A mapping of signature names to concrete module instanti‐
13384 ations.
13385
13386 --enable-tests
13387 --disable-tests
13388 dependency checking and compilation for test suites
13389 listed in the package description file.
13390
13391 --enable-coverage
13392 --disable-coverage
13393 build package with Haskell Program Coverage. (GHC only)
13394
13395 --enable-library-coverage
13396 --disable-library-coverage
13397 build package with Haskell Program Coverage. (GHC only)
13398 (DEPRECATED)
13399
13400 --enable-benchmarks
13401 --disable-benchmarks
13402 dependency checking and compilation for benchmarks listed
13403 in the package description file.
13404
13405 --enable-relocatable
13406 --disable-relocatable
13407 building a package that is relocatable. (GHC only)
13408
13409 --disable-response-files
13410 enable workaround for old versions of programs like "ar"
13411 that do not support @file arguments
13412
13413 --allow-depending-on-private-libs
13414 Allow depending on private libraries. If set, the library
13415 visibility check MUST be done externally.
13416
13417 --with-alex PATH
13418 give the path to alex
13419
13420 --with-ar PATH
13421 give the path to ar
13422
13423 --with-c2hs PATH
13424 give the path to c2hs
13425
13426 --with-cpphs PATH
13427 give the path to cpphs
13428
13429 --with-doctest PATH
13430 give the path to doctest
13431
13432 --with-gcc PATH
13433 give the path to gcc
13434
13435 --with-ghc PATH
13436 give the path to ghc
13437
13438 --with-ghc-pkg PATH
13439 give the path to ghc-pkg
13440
13441 --with-ghcjs PATH
13442 give the path to ghcjs
13443
13444 --with-ghcjs-pkg PATH
13445 give the path to ghcjs-pkg
13446
13447 --with-greencard PATH
13448 give the path to greencard
13449
13450 --with-haddock PATH
13451 give the path to haddock
13452
13453 --with-happy PATH
13454 give the path to happy
13455
13456 --with-haskell-suite PATH
13457 give the path to haskell-suite
13458
13459 --with-haskell-suite-pkg PATH
13460 give the path to haskell-suite-pkg
13461
13462 --with-hmake PATH
13463 give the path to hmake
13464
13465 --with-hpc PATH
13466 give the path to hpc
13467
13468 --with-hsc2hs PATH
13469 give the path to hsc2hs
13470
13471 --with-hscolour PATH
13472 give the path to hscolour
13473
13474 --with-jhc PATH
13475 give the path to jhc
13476
13477 --with-ld PATH
13478 give the path to ld
13479
13480 --with-pkg-config PATH
13481 give the path to pkg-config
13482
13483 --with-runghc PATH
13484 give the path to runghc
13485
13486 --with-strip PATH
13487 give the path to strip
13488
13489 --with-tar PATH
13490 give the path to tar
13491
13492 --with-uhc PATH
13493 give the path to uhc
13494
13495 --alex-option OPT
13496 give an extra option to alex (no need to quote options
13497 containing spaces)
13498
13499 --ar-option OPT
13500 give an extra option to ar (no need to quote options con‐
13501 taining spaces)
13502
13503 --c2hs-option OPT
13504 give an extra option to c2hs (no need to quote options
13505 containing spaces)
13506
13507 --cpphs-option OPT
13508 give an extra option to cpphs (no need to quote options
13509 containing spaces)
13510
13511 --doctest-option OPT
13512 give an extra option to doctest (no need to quote options
13513 containing spaces)
13514
13515 --gcc-option OPT
13516 give an extra option to gcc (no need to quote options
13517 containing spaces)
13518
13519 --ghc-option OPT
13520 give an extra option to ghc (no need to quote options
13521 containing spaces)
13522
13523 --ghc-pkg-option OPT
13524 give an extra option to ghc-pkg (no need to quote options
13525 containing spaces)
13526
13527 --ghcjs-option OPT
13528 give an extra option to ghcjs (no need to quote options
13529 containing spaces)
13530
13531 --ghcjs-pkg-option OPT
13532 give an extra option to ghcjs-pkg (no need to quote
13533 options containing spaces)
13534
13535 --greencard-option OPT
13536 give an extra option to greencard (no need to quote
13537 options containing spaces)
13538
13539 --haddock-option OPT
13540 give an extra option to haddock (no need to quote options
13541 containing spaces)
13542
13543 --happy-option OPT
13544 give an extra option to happy (no need to quote options
13545 containing spaces)
13546
13547 --haskell-suite-option OPT
13548 give an extra option to haskell-suite (no need to quote
13549 options containing spaces)
13550
13551 --haskell-suite-pkg-option OPT
13552 give an extra option to haskell-suite-pkg (no need to
13553 quote options containing spaces)
13554
13555 --hmake-option OPT
13556 give an extra option to hmake (no need to quote options
13557 containing spaces)
13558
13559 --hpc-option OPT
13560 give an extra option to hpc (no need to quote options
13561 containing spaces)
13562
13563 --hsc2hs-option OPT
13564 give an extra option to hsc2hs (no need to quote options
13565 containing spaces)
13566
13567 --hscolour-option OPT
13568 give an extra option to hscolour (no need to quote
13569 options containing spaces)
13570
13571 --jhc-option OPT
13572 give an extra option to jhc (no need to quote options
13573 containing spaces)
13574
13575 --ld-option OPT
13576 give an extra option to ld (no need to quote options con‐
13577 taining spaces)
13578
13579 --pkg-config-option OPT
13580 give an extra option to pkg-config (no need to quote
13581 options containing spaces)
13582
13583 --runghc-option OPT
13584 give an extra option to runghc (no need to quote options
13585 containing spaces)
13586
13587 --strip-option OPT
13588 give an extra option to strip (no need to quote options
13589 containing spaces)
13590
13591 --tar-option OPT
13592 give an extra option to tar (no need to quote options
13593 containing spaces)
13594
13595 --uhc-option OPT
13596 give an extra option to uhc (no need to quote options
13597 containing spaces)
13598
13599 --alex-options OPTS
13600 give extra options to alex
13601
13602 --ar-options OPTS
13603 give extra options to ar
13604
13605 --c2hs-options OPTS
13606 give extra options to c2hs
13607
13608 --cpphs-options OPTS
13609 give extra options to cpphs
13610
13611 --doctest-options OPTS
13612 give extra options to doctest
13613
13614 --gcc-options OPTS
13615 give extra options to gcc
13616
13617 --ghc-options OPTS
13618 give extra options to ghc
13619
13620 --ghc-pkg-options OPTS
13621 give extra options to ghc-pkg
13622
13623 --ghcjs-options OPTS
13624 give extra options to ghcjs
13625
13626 --ghcjs-pkg-options OPTS
13627 give extra options to ghcjs-pkg
13628
13629 --greencard-options OPTS
13630 give extra options to greencard
13631
13632 --haddock-options OPTS
13633 give extra options to haddock
13634
13635 --happy-options OPTS
13636 give extra options to happy
13637
13638 --haskell-suite-options OPTS
13639 give extra options to haskell-suite
13640
13641 --haskell-suite-pkg-options OPTS
13642 give extra options to haskell-suite-pkg
13643
13644 --hmake-options OPTS
13645 give extra options to hmake
13646
13647 --hpc-options OPTS
13648 give extra options to hpc
13649
13650 --hsc2hs-options OPTS
13651 give extra options to hsc2hs
13652
13653 --hscolour-options OPTS
13654 give extra options to hscolour
13655
13656 --jhc-options OPTS
13657 give extra options to jhc
13658
13659 --ld-options OPTS
13660 give extra options to ld
13661
13662 --pkg-config-options OPTS
13663 give extra options to pkg-config
13664
13665 --runghc-options OPTS
13666 give extra options to runghc
13667
13668 --strip-options OPTS
13669 give extra options to strip
13670
13671 --tar-options OPTS
13672 give extra options to tar
13673
13674 --uhc-options OPTS
13675 give extra options to uhc
13676
13677 --cabal-lib-version VERSION
13678 Select which version of the Cabal lib to use to build
13679 packages (useful for testing).
13680
13681 --constraint CONSTRAINT
13682 Specify constraints on a package (version,
13683 installed/source, flags)
13684
13685 --preference CONSTRAINT
13686 Specify preferences (soft constraints) on the version of
13687 a package
13688
13689 --solver SOLVER
13690 Select dependency solver to use (default: modular).
13691 Choices: modular.
13692
13693 --allow-older [DEPS]
13694 Ignore lower bounds in all dependencies or DEPS
13695
13696 --allow-newer [DEPS]
13697 Ignore upper bounds in all dependencies or DEPS
13698
13699 --write-ghc-environment-files always|never|ghc8.4.4+
13700 Whether to create a .ghc.environment file after a suc‐
13701 cessful build (v2-build only)
13702
13703 --enable-documentation
13704 --disable-documentation
13705 building of documentation
13706
13707 --doc-index-file TEMPLATE
13708 A central index of haddock API documentation (template
13709 cannot use $pkgid)
13710
13711 --dry-run
13712 Do not install anything, only print what would be
13713 installed.
13714
13715 --max-backjumps NUM
13716 Maximum number of backjumps allowed while solving
13717 (default: 4000). Use a negative number to enable unlim‐
13718 ited backtracking. Use 0 to disable backtracking com‐
13719 pletely.
13720
13721 --reorder-goals
13722 --no-reorder-goals
13723 Try to reorder goals according to certain heuristics.
13724 Slows things down on average, but may make backtracking
13725 faster for some packages.
13726
13727 --count-conflicts
13728 --no-count-conflicts
13729 Try to speed up solving by preferring goals that are
13730 involved in a lot of conflicts (default).
13731
13732 --minimize-conflict-set
13733 --no-minimize-conflict-set
13734 When there is no solution, try to improve the error mes‐
13735 sage by finding a minimal conflict set (default: false).
13736 May increase run time significantly.
13737
13738 --independent-goals
13739 --no-independent-goals
13740 Treat several goals on the command line as independent.
13741 If several goals depend on the same package, different
13742 versions can be chosen.
13743
13744 --shadow-installed-packages
13745 --no-shadow-installed-packages
13746 If multiple package instances of the same version are
13747 installed, treat all but one as shadowed.
13748
13749 --strong-flags
13750 --no-strong-flags
13751 Do not defer flag choices (this used to be the default in
13752 cabal-install <= 1.20).
13753
13754 --allow-boot-library-installs
13755 --no-allow-boot-library-installs
13756 Allow cabal to install base, ghc-prim, integer-simple,
13757 integer-gmp, and template-haskell.
13758
13759 --reject-unconstrained-dependencies none|all
13760 Require these packages to have constraints on them if
13761 they are to be selected (default: none).
13762
13763 --reinstall
13764 --no-reinstall
13765 Install even if it means installing the same version
13766 again.
13767
13768 --avoid-reinstalls
13769 --no-avoid-reinstalls
13770 Do not select versions that would destructively overwrite
13771 installed packages.
13772
13773 --force-reinstalls
13774 --no-force-reinstalls
13775 Reinstall packages even if they will most likely break
13776 other installed packages.
13777
13778 --upgrade-dependencies
13779 --no-upgrade-dependencies
13780 Pick the latest version for all dependencies, rather than
13781 trying to pick an installed version.
13782
13783 --only-dependencies
13784 --no-only-dependencies
13785 Install only the dependencies necessary to build the
13786 given packages
13787
13788 --dependencies-only
13789 --no-dependencies-only
13790 A synonym for --only-dependencies
13791
13792 --index-state STATE
13793 Use source package index state as it existed at a previ‐
13794 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
13795 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
13796 'HEAD' (default: 'HEAD').
13797
13798 --root-cmd COMMAND
13799 (No longer supported, do not use.)
13800
13801 --symlink-bindir DIR
13802 Add symlinks to installed executables into this direc‐
13803 tory.
13804
13805 --build-summary TEMPLATE
13806 Save build summaries to file (name template can use
13807 $pkgid, $compiler, $os, $arch)
13808
13809 --build-log TEMPLATE
13810 Log all builds to file (name template can use $pkgid,
13811 $compiler, $os, $arch)
13812
13813 --remote-build-reporting LEVEL
13814 Generate build reports to send to a remote server (none,
13815 anonymous or detailed).
13816
13817 --report-planning-failure
13818 Generate build reports when the dependency solver fails.
13819 This is used by the Hackage build bot.
13820
13821 --enable-per-component
13822 --disable-per-component
13823 Per-component builds when possible
13824
13825 --one-shot
13826 --no-one-shot
13827 Do not record the packages in the world file.
13828
13829 --run-tests
13830 Run package test suites during installation.
13831
13832 -j, --jobs [NUM]
13833 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
13834 given).
13835
13836 --keep-going
13837 After a build failure, continue to build other unaffected
13838 packages.
13839
13840 --offline
13841 --no-offline
13842 Don't download packages from the Internet.
13843
13844 --project-file FILE
13845 Set the name of the cabal.project file to search for in
13846 parent directories
13847
13848 --only
13849 Only installs the package in the current directory.
13850
13851 --haddock-hoogle
13852 Generate a hoogle database
13853
13854 --haddock-html
13855 Generate HTML documentation (the default)
13856
13857 --haddock-html-location URL
13858 Location of HTML documentation for pre-requisite packages
13859
13860 --haddock-for-hackage
13861 Collection of flags to generate documentation suitable
13862 for upload to hackage
13863
13864 --haddock-executables
13865 Run haddock for Executables targets
13866
13867 --haddock-tests
13868 Run haddock for Test Suite targets
13869
13870 --haddock-benchmarks
13871 Run haddock for Benchmark targets
13872
13873 --haddock-all
13874 Run haddock for all targets
13875
13876 --haddock-internal
13877 Run haddock for internal modules and include all symbols
13878
13879 --haddock-css PATH
13880 Use PATH as the haddock stylesheet
13881
13882 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
13883 dock-hyperlinked-source
13884 Hyperlink the documentation to the source code
13885
13886 --haddock-quickjump
13887 Generate an index for interactive documentation naviga‐
13888 tion
13889
13890 --haddock-hscolour-css PATH
13891 Use PATH as the HsColour stylesheet
13892
13893 --haddock-contents-location URL
13894 Bake URL in as the location for the contents page
13895
13896 --test-log TEMPLATE
13897 Log all test suite results to file (name template can use
13898 $pkgid, $compiler, $os, $arch, $test-suite, $result)
13899
13900 --test-machine-log TEMPLATE
13901 Produce a machine-readable log file (name template can
13902 use $pkgid, $compiler, $os, $arch, $result)
13903
13904 --test-show-details FILTER
13905
13906 --test-keep-tix-files
13907 keep .tix files for HPC between test runs
13908
13909 --test-wrapper FILE
13910 Run test through a wrapper.
13911
13912 --test-fail-when-no-test-suites
13913 Exit with failure when no test suites are found.
13914
13915 --test-options TEMPLATES
13916 give extra options to test executables (name templates
13917 can use $pkgid, $compiler, $os, $arch, $test-suite)
13918
13919 --test-option TEMPLATE
13920 give extra option to test executables (no need to quote
13921 options containing spaces, name template can use $pkgid,
13922 $compiler, $os, $arch, $test-suite)
13923
13924
13925 cabal v2-haddock
13926
13927 Usage: cabal v2-haddock [FLAGS] TARGET
13928
13929
13930 Build Haddock documentation for the specified packages within the
13931 project.
13932
13933 Any package in the project can be specified. If no package is speci‐
13934 fied, the default is to build the documentation for the package in the
13935 current directory. The default behaviour is to build documentation for
13936 the exposed modules of the library component (if any). This can be
13937 changed with the
13938
13939 Currently, documentation for dependencies is NOT built. This behavior
13940 may change in future.
13941
13942 Additional configuration flags can be specified on the command line and
13943 these extend the project configuration from the 'cabal.project',
13944
13945
13946 Examples:
13947 cabal v2-haddock pkgname Build documentation for the package named
13948 pkgname
13949
13950 Note: this command is part of the new project-based system (aka nix-
13951 style local builds). These features are currently in beta. Please see
13952 http://cabal.readthedocs.io/en/latest/nix-local-build-overview.html for
13953 details and advice on what you can expect to work. If you encounter
13954 problems please file issues at https://github.com/haskell/cabal/issues
13955 and if you have any time to get involved and help with testing, fixing
13956 bugs etc then that is very much appreciated.
13957
13958
13959 Flags:
13960 -v, --verbose [n]
13961 Control verbosity (n is 0--3, default verbosity level is
13962 1)
13963
13964 --builddir, --distdir, --distpref DIR
13965 The directory where Cabal puts generated build files
13966 (default dist)
13967
13968 -g, --ghc
13969 compile with GHC
13970
13971 --ghcjs
13972 compile with GHCJS
13973
13974 --uhc
13975 compile with UHC
13976
13977 --haskell-suite
13978 compile with a haskell-suite compiler
13979
13980 --cabal-file PATH
13981 use this Cabal file
13982
13983 -w, --with-compiler PATH
13984 give the path to a particular compiler
13985
13986 --with-hc-pkg PATH
13987 give the path to the package tool
13988
13989 --prefix DIR
13990 bake this prefix in preparation of installation
13991
13992 --bindir DIR
13993 installation directory for executables
13994
13995 --libdir DIR
13996 installation directory for libraries
13997
13998 --libsubdir DIR
13999 subdirectory of libdir in which libs are installed
14000
14001 --dynlibdir DIR
14002 installation directory for dynamic libraries
14003
14004 --libexecdir DIR
14005 installation directory for program executables
14006
14007 --libexecsubdir DIR
14008 subdirectory of libexecdir in which private executables
14009 are installed
14010
14011 --datadir DIR
14012 installation directory for read-only data
14013
14014 --datasubdir DIR
14015 subdirectory of datadir in which data files are installed
14016
14017 --docdir DIR
14018 installation directory for documentation
14019
14020 --htmldir DIR
14021 installation directory for HTML documentation
14022
14023 --haddockdir DIR
14024 installation directory for haddock interfaces
14025
14026 --sysconfdir DIR
14027 installation directory for configuration files
14028
14029 --program-prefix PREFIX
14030 prefix to be applied to installed executables
14031
14032 --program-suffix SUFFIX
14033 suffix to be applied to installed executables
14034
14035 --enable-library-vanilla
14036 --disable-library-vanilla
14037 Vanilla libraries
14038
14039 -p, --enable-library-profiling
14040 --disable-library-profiling
14041 Library profiling
14042
14043 --enable-shared
14044 --disable-shared
14045 Shared library
14046
14047 --enable-static
14048 --disable-static
14049 Static library
14050
14051 --enable-executable-dynamic
14052 --disable-executable-dynamic
14053 Executable dynamic linking
14054
14055 --enable-executable-static
14056 --disable-executable-static
14057 Executable fully static linking
14058
14059 --enable-profiling
14060 --disable-profiling
14061 Executable and library profiling
14062
14063 --enable-executable-profiling
14064 --disable-executable-profiling
14065 Executable profiling (DEPRECATED)
14066
14067 --profiling-detail level
14068 Profiling detail level for executable and library
14069 (default, none, exported-functions, toplevel-functions,
14070 all-functions).
14071
14072 --library-profiling-detail level
14073 Profiling detail level for libraries only.
14074
14075 -O, --enable-optimization, --enable-optimisation [n]
14076 Build with optimization (n is 0--2, default is 1)
14077
14078 --disable-optimization, --disable-optimisation
14079 Build without optimization
14080
14081 --enable-debug-info [n]
14082 Emit debug info (n is 0--3, default is 0)
14083
14084 --disable-debug-info
14085 Don't emit debug info
14086
14087 --enable-library-for-ghci
14088 --disable-library-for-ghci
14089 compile library for use with GHCi
14090
14091 --enable-split-sections
14092 --disable-split-sections
14093 compile library code such that unneeded definitions can
14094 be dropped from the final executable (GHC 7.8+)
14095
14096 --enable-split-objs
14097 --disable-split-objs
14098 split library into smaller objects to reduce binary sizes
14099 (GHC 6.6+)
14100
14101 --enable-executable-stripping
14102 --disable-executable-stripping
14103 strip executables upon installation to reduce binary
14104 sizes
14105
14106 --enable-library-stripping
14107 --disable-library-stripping
14108 strip libraries upon installation to reduce binary sizes
14109
14110 --configure-option OPT
14111 Extra option for configure
14112
14113 --user
14114 --global
14115 doing a per-user installation
14116
14117 --package-db DB
14118 Append the given package database to the list of package
14119 databases used (to satisfy dependencies and register
14120 into). May be a specific file, 'global' or 'user'. The
14121 initial list is ['global'], ['global', 'user'], or
14122 ['global', $sandbox], depending on context. Use 'clear'
14123 to reset the list to empty. See the user guide for
14124 details.
14125
14126 -f, --flags FLAGS
14127 Force values for the given flags in Cabal conditionals in
14128 the .cabal file. E.g., --flags="debug -usebytestrings"
14129 forces the flag "debug" to true and "usebytestrings" to
14130 false.
14131
14132 --extra-include-dirs PATH
14133 A list of directories to search for header files
14134
14135 --enable-deterministic
14136 --disable-deterministic
14137 Try to be as deterministic as possible (used by the test
14138 suite)
14139
14140 --ipid IPID
14141 Installed package ID to compile this package as
14142
14143 --cid CID
14144 Installed component ID to compile this component as
14145
14146 --extra-lib-dirs PATH
14147 A list of directories to search for external libraries
14148
14149 --extra-framework-dirs PATH
14150 A list of directories to search for external frameworks
14151 (OS X only)
14152
14153 --extra-prog-path PATH
14154 A list of directories to search for required programs (in
14155 addition to the normal search locations)
14156
14157 --instantiate-with NAME=MOD
14158 A mapping of signature names to concrete module instanti‐
14159 ations.
14160
14161 --enable-tests
14162 --disable-tests
14163 dependency checking and compilation for test suites
14164 listed in the package description file.
14165
14166 --enable-coverage
14167 --disable-coverage
14168 build package with Haskell Program Coverage. (GHC only)
14169
14170 --enable-library-coverage
14171 --disable-library-coverage
14172 build package with Haskell Program Coverage. (GHC only)
14173 (DEPRECATED)
14174
14175 --enable-benchmarks
14176 --disable-benchmarks
14177 dependency checking and compilation for benchmarks listed
14178 in the package description file.
14179
14180 --enable-relocatable
14181 --disable-relocatable
14182 building a package that is relocatable. (GHC only)
14183
14184 --disable-response-files
14185 enable workaround for old versions of programs like "ar"
14186 that do not support @file arguments
14187
14188 --allow-depending-on-private-libs
14189 Allow depending on private libraries. If set, the library
14190 visibility check MUST be done externally.
14191
14192 --with-alex PATH
14193 give the path to alex
14194
14195 --with-ar PATH
14196 give the path to ar
14197
14198 --with-c2hs PATH
14199 give the path to c2hs
14200
14201 --with-cpphs PATH
14202 give the path to cpphs
14203
14204 --with-doctest PATH
14205 give the path to doctest
14206
14207 --with-gcc PATH
14208 give the path to gcc
14209
14210 --with-ghc PATH
14211 give the path to ghc
14212
14213 --with-ghc-pkg PATH
14214 give the path to ghc-pkg
14215
14216 --with-ghcjs PATH
14217 give the path to ghcjs
14218
14219 --with-ghcjs-pkg PATH
14220 give the path to ghcjs-pkg
14221
14222 --with-greencard PATH
14223 give the path to greencard
14224
14225 --with-haddock PATH
14226 give the path to haddock
14227
14228 --with-happy PATH
14229 give the path to happy
14230
14231 --with-haskell-suite PATH
14232 give the path to haskell-suite
14233
14234 --with-haskell-suite-pkg PATH
14235 give the path to haskell-suite-pkg
14236
14237 --with-hmake PATH
14238 give the path to hmake
14239
14240 --with-hpc PATH
14241 give the path to hpc
14242
14243 --with-hsc2hs PATH
14244 give the path to hsc2hs
14245
14246 --with-hscolour PATH
14247 give the path to hscolour
14248
14249 --with-jhc PATH
14250 give the path to jhc
14251
14252 --with-ld PATH
14253 give the path to ld
14254
14255 --with-pkg-config PATH
14256 give the path to pkg-config
14257
14258 --with-runghc PATH
14259 give the path to runghc
14260
14261 --with-strip PATH
14262 give the path to strip
14263
14264 --with-tar PATH
14265 give the path to tar
14266
14267 --with-uhc PATH
14268 give the path to uhc
14269
14270 --alex-option OPT
14271 give an extra option to alex (no need to quote options
14272 containing spaces)
14273
14274 --ar-option OPT
14275 give an extra option to ar (no need to quote options con‐
14276 taining spaces)
14277
14278 --c2hs-option OPT
14279 give an extra option to c2hs (no need to quote options
14280 containing spaces)
14281
14282 --cpphs-option OPT
14283 give an extra option to cpphs (no need to quote options
14284 containing spaces)
14285
14286 --doctest-option OPT
14287 give an extra option to doctest (no need to quote options
14288 containing spaces)
14289
14290 --gcc-option OPT
14291 give an extra option to gcc (no need to quote options
14292 containing spaces)
14293
14294 --ghc-option OPT
14295 give an extra option to ghc (no need to quote options
14296 containing spaces)
14297
14298 --ghc-pkg-option OPT
14299 give an extra option to ghc-pkg (no need to quote options
14300 containing spaces)
14301
14302 --ghcjs-option OPT
14303 give an extra option to ghcjs (no need to quote options
14304 containing spaces)
14305
14306 --ghcjs-pkg-option OPT
14307 give an extra option to ghcjs-pkg (no need to quote
14308 options containing spaces)
14309
14310 --greencard-option OPT
14311 give an extra option to greencard (no need to quote
14312 options containing spaces)
14313
14314 --haddock-option OPT
14315 give an extra option to haddock (no need to quote options
14316 containing spaces)
14317
14318 --happy-option OPT
14319 give an extra option to happy (no need to quote options
14320 containing spaces)
14321
14322 --haskell-suite-option OPT
14323 give an extra option to haskell-suite (no need to quote
14324 options containing spaces)
14325
14326 --haskell-suite-pkg-option OPT
14327 give an extra option to haskell-suite-pkg (no need to
14328 quote options containing spaces)
14329
14330 --hmake-option OPT
14331 give an extra option to hmake (no need to quote options
14332 containing spaces)
14333
14334 --hpc-option OPT
14335 give an extra option to hpc (no need to quote options
14336 containing spaces)
14337
14338 --hsc2hs-option OPT
14339 give an extra option to hsc2hs (no need to quote options
14340 containing spaces)
14341
14342 --hscolour-option OPT
14343 give an extra option to hscolour (no need to quote
14344 options containing spaces)
14345
14346 --jhc-option OPT
14347 give an extra option to jhc (no need to quote options
14348 containing spaces)
14349
14350 --ld-option OPT
14351 give an extra option to ld (no need to quote options con‐
14352 taining spaces)
14353
14354 --pkg-config-option OPT
14355 give an extra option to pkg-config (no need to quote
14356 options containing spaces)
14357
14358 --runghc-option OPT
14359 give an extra option to runghc (no need to quote options
14360 containing spaces)
14361
14362 --strip-option OPT
14363 give an extra option to strip (no need to quote options
14364 containing spaces)
14365
14366 --tar-option OPT
14367 give an extra option to tar (no need to quote options
14368 containing spaces)
14369
14370 --uhc-option OPT
14371 give an extra option to uhc (no need to quote options
14372 containing spaces)
14373
14374 --alex-options OPTS
14375 give extra options to alex
14376
14377 --ar-options OPTS
14378 give extra options to ar
14379
14380 --c2hs-options OPTS
14381 give extra options to c2hs
14382
14383 --cpphs-options OPTS
14384 give extra options to cpphs
14385
14386 --doctest-options OPTS
14387 give extra options to doctest
14388
14389 --gcc-options OPTS
14390 give extra options to gcc
14391
14392 --ghc-options OPTS
14393 give extra options to ghc
14394
14395 --ghc-pkg-options OPTS
14396 give extra options to ghc-pkg
14397
14398 --ghcjs-options OPTS
14399 give extra options to ghcjs
14400
14401 --ghcjs-pkg-options OPTS
14402 give extra options to ghcjs-pkg
14403
14404 --greencard-options OPTS
14405 give extra options to greencard
14406
14407 --haddock-options OPTS
14408 give extra options to haddock
14409
14410 --happy-options OPTS
14411 give extra options to happy
14412
14413 --haskell-suite-options OPTS
14414 give extra options to haskell-suite
14415
14416 --haskell-suite-pkg-options OPTS
14417 give extra options to haskell-suite-pkg
14418
14419 --hmake-options OPTS
14420 give extra options to hmake
14421
14422 --hpc-options OPTS
14423 give extra options to hpc
14424
14425 --hsc2hs-options OPTS
14426 give extra options to hsc2hs
14427
14428 --hscolour-options OPTS
14429 give extra options to hscolour
14430
14431 --jhc-options OPTS
14432 give extra options to jhc
14433
14434 --ld-options OPTS
14435 give extra options to ld
14436
14437 --pkg-config-options OPTS
14438 give extra options to pkg-config
14439
14440 --runghc-options OPTS
14441 give extra options to runghc
14442
14443 --strip-options OPTS
14444 give extra options to strip
14445
14446 --tar-options OPTS
14447 give extra options to tar
14448
14449 --uhc-options OPTS
14450 give extra options to uhc
14451
14452 --cabal-lib-version VERSION
14453 Select which version of the Cabal lib to use to build
14454 packages (useful for testing).
14455
14456 --constraint CONSTRAINT
14457 Specify constraints on a package (version,
14458 installed/source, flags)
14459
14460 --preference CONSTRAINT
14461 Specify preferences (soft constraints) on the version of
14462 a package
14463
14464 --solver SOLVER
14465 Select dependency solver to use (default: modular).
14466 Choices: modular.
14467
14468 --allow-older [DEPS]
14469 Ignore lower bounds in all dependencies or DEPS
14470
14471 --allow-newer [DEPS]
14472 Ignore upper bounds in all dependencies or DEPS
14473
14474 --write-ghc-environment-files always|never|ghc8.4.4+
14475 Whether to create a .ghc.environment file after a suc‐
14476 cessful build (v2-build only)
14477
14478 --enable-documentation
14479 --disable-documentation
14480 building of documentation
14481
14482 --doc-index-file TEMPLATE
14483 A central index of haddock API documentation (template
14484 cannot use $pkgid)
14485
14486 --dry-run
14487 Do not install anything, only print what would be
14488 installed.
14489
14490 --max-backjumps NUM
14491 Maximum number of backjumps allowed while solving
14492 (default: 4000). Use a negative number to enable unlim‐
14493 ited backtracking. Use 0 to disable backtracking com‐
14494 pletely.
14495
14496 --reorder-goals
14497 --no-reorder-goals
14498 Try to reorder goals according to certain heuristics.
14499 Slows things down on average, but may make backtracking
14500 faster for some packages.
14501
14502 --count-conflicts
14503 --no-count-conflicts
14504 Try to speed up solving by preferring goals that are
14505 involved in a lot of conflicts (default).
14506
14507 --minimize-conflict-set
14508 --no-minimize-conflict-set
14509 When there is no solution, try to improve the error mes‐
14510 sage by finding a minimal conflict set (default: false).
14511 May increase run time significantly.
14512
14513 --independent-goals
14514 --no-independent-goals
14515 Treat several goals on the command line as independent.
14516 If several goals depend on the same package, different
14517 versions can be chosen.
14518
14519 --shadow-installed-packages
14520 --no-shadow-installed-packages
14521 If multiple package instances of the same version are
14522 installed, treat all but one as shadowed.
14523
14524 --strong-flags
14525 --no-strong-flags
14526 Do not defer flag choices (this used to be the default in
14527 cabal-install <= 1.20).
14528
14529 --allow-boot-library-installs
14530 --no-allow-boot-library-installs
14531 Allow cabal to install base, ghc-prim, integer-simple,
14532 integer-gmp, and template-haskell.
14533
14534 --reject-unconstrained-dependencies none|all
14535 Require these packages to have constraints on them if
14536 they are to be selected (default: none).
14537
14538 --reinstall
14539 --no-reinstall
14540 Install even if it means installing the same version
14541 again.
14542
14543 --avoid-reinstalls
14544 --no-avoid-reinstalls
14545 Do not select versions that would destructively overwrite
14546 installed packages.
14547
14548 --force-reinstalls
14549 --no-force-reinstalls
14550 Reinstall packages even if they will most likely break
14551 other installed packages.
14552
14553 --upgrade-dependencies
14554 --no-upgrade-dependencies
14555 Pick the latest version for all dependencies, rather than
14556 trying to pick an installed version.
14557
14558 --only-dependencies
14559 --no-only-dependencies
14560 Install only the dependencies necessary to build the
14561 given packages
14562
14563 --dependencies-only
14564 --no-dependencies-only
14565 A synonym for --only-dependencies
14566
14567 --index-state STATE
14568 Use source package index state as it existed at a previ‐
14569 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
14570 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
14571 'HEAD' (default: 'HEAD').
14572
14573 --root-cmd COMMAND
14574 (No longer supported, do not use.)
14575
14576 --symlink-bindir DIR
14577 Add symlinks to installed executables into this direc‐
14578 tory.
14579
14580 --build-summary TEMPLATE
14581 Save build summaries to file (name template can use
14582 $pkgid, $compiler, $os, $arch)
14583
14584 --build-log TEMPLATE
14585 Log all builds to file (name template can use $pkgid,
14586 $compiler, $os, $arch)
14587
14588 --remote-build-reporting LEVEL
14589 Generate build reports to send to a remote server (none,
14590 anonymous or detailed).
14591
14592 --report-planning-failure
14593 Generate build reports when the dependency solver fails.
14594 This is used by the Hackage build bot.
14595
14596 --enable-per-component
14597 --disable-per-component
14598 Per-component builds when possible
14599
14600 --one-shot
14601 --no-one-shot
14602 Do not record the packages in the world file.
14603
14604 --run-tests
14605 Run package test suites during installation.
14606
14607 -j, --jobs [NUM]
14608 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
14609 given).
14610
14611 --keep-going
14612 After a build failure, continue to build other unaffected
14613 packages.
14614
14615 --offline
14616 --no-offline
14617 Don't download packages from the Internet.
14618
14619 --project-file FILE
14620 Set the name of the cabal.project file to search for in
14621 parent directories
14622
14623 --only
14624 Only installs the package in the current directory.
14625
14626 --haddock-hoogle
14627 Generate a hoogle database
14628
14629 --haddock-html
14630 Generate HTML documentation (the default)
14631
14632 --haddock-html-location URL
14633 Location of HTML documentation for pre-requisite packages
14634
14635 --haddock-for-hackage
14636 Collection of flags to generate documentation suitable
14637 for upload to hackage
14638
14639 --haddock-executables
14640 Run haddock for Executables targets
14641
14642 --haddock-tests
14643 Run haddock for Test Suite targets
14644
14645 --haddock-benchmarks
14646 Run haddock for Benchmark targets
14647
14648 --haddock-all
14649 Run haddock for all targets
14650
14651 --haddock-internal
14652 Run haddock for internal modules and include all symbols
14653
14654 --haddock-css PATH
14655 Use PATH as the haddock stylesheet
14656
14657 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
14658 dock-hyperlinked-source
14659 Hyperlink the documentation to the source code
14660
14661 --haddock-quickjump
14662 Generate an index for interactive documentation naviga‐
14663 tion
14664
14665 --haddock-hscolour-css PATH
14666 Use PATH as the HsColour stylesheet
14667
14668 --haddock-contents-location URL
14669 Bake URL in as the location for the contents page
14670
14671 --test-log TEMPLATE
14672 Log all test suite results to file (name template can use
14673 $pkgid, $compiler, $os, $arch, $test-suite, $result)
14674
14675 --test-machine-log TEMPLATE
14676 Produce a machine-readable log file (name template can
14677 use $pkgid, $compiler, $os, $arch, $result)
14678
14679 --test-show-details FILTER
14680
14681 --test-keep-tix-files
14682 keep .tix files for HPC between test runs
14683
14684 --test-wrapper FILE
14685 Run test through a wrapper.
14686
14687 --test-fail-when-no-test-suites
14688 Exit with failure when no test suites are found.
14689
14690 --test-options TEMPLATES
14691 give extra options to test executables (name templates
14692 can use $pkgid, $compiler, $os, $arch, $test-suite)
14693
14694 --test-option TEMPLATE
14695 give extra option to test executables (no need to quote
14696 options containing spaces, name template can use $pkgid,
14697 $compiler, $os, $arch, $test-suite)
14698
14699
14700 cabal install
14701
14702 Usage: cabal install [TARGETS] [FLAGS]
14703
14704
14705 Installs one or more packages. This is done by installing them in the
14706 store and symlinking/copying the executables in the directory specified
14707 by the --installdir flag (`~/.cabal/bin/` by default). If you want the
14708 installed executables to be available globally, make sure that the PATH
14709 environment variable contains that directory.
14710
14711 If TARGET is a library, it will be added to the global environment.
14712 When doing this, cabal will try to build a plan that includes all the
14713 previously installed libraries. This is currently not implemented.
14714
14715
14716 Installs one or more packages. This is done by installing them in the
14717 store and symlinking/copying the executables in the directory specified
14718 by the --installdir flag (`~/.cabal/bin/` by default). If you want the
14719 installed executables to be available globally, make sure that the PATH
14720 environment variable contains that directory.
14721
14722 If TARGET is a library, it will be added to the global environment.
14723 When doing this, cabal will try to build a plan that includes all the
14724 previously installed libraries. This is currently not implemented.
14725
14726
14727 Flags:
14728 -v, --verbose [n]
14729 Control verbosity (n is 0--3, default verbosity level is
14730 1)
14731
14732 --builddir, --distdir, --distpref DIR
14733 The directory where Cabal puts generated build files
14734 (default dist)
14735
14736 -g, --ghc
14737 compile with GHC
14738
14739 --ghcjs
14740 compile with GHCJS
14741
14742 --uhc
14743 compile with UHC
14744
14745 --haskell-suite
14746 compile with a haskell-suite compiler
14747
14748 --cabal-file PATH
14749 use this Cabal file
14750
14751 -w, --with-compiler PATH
14752 give the path to a particular compiler
14753
14754 --with-hc-pkg PATH
14755 give the path to the package tool
14756
14757 --prefix DIR
14758 bake this prefix in preparation of installation
14759
14760 --bindir DIR
14761 installation directory for executables
14762
14763 --libdir DIR
14764 installation directory for libraries
14765
14766 --libsubdir DIR
14767 subdirectory of libdir in which libs are installed
14768
14769 --dynlibdir DIR
14770 installation directory for dynamic libraries
14771
14772 --libexecdir DIR
14773 installation directory for program executables
14774
14775 --libexecsubdir DIR
14776 subdirectory of libexecdir in which private executables
14777 are installed
14778
14779 --datadir DIR
14780 installation directory for read-only data
14781
14782 --datasubdir DIR
14783 subdirectory of datadir in which data files are installed
14784
14785 --docdir DIR
14786 installation directory for documentation
14787
14788 --htmldir DIR
14789 installation directory for HTML documentation
14790
14791 --haddockdir DIR
14792 installation directory for haddock interfaces
14793
14794 --sysconfdir DIR
14795 installation directory for configuration files
14796
14797 --program-prefix PREFIX
14798 prefix to be applied to installed executables
14799
14800 --program-suffix SUFFIX
14801 suffix to be applied to installed executables
14802
14803 --enable-library-vanilla
14804 --disable-library-vanilla
14805 Vanilla libraries
14806
14807 -p, --enable-library-profiling
14808 --disable-library-profiling
14809 Library profiling
14810
14811 --enable-shared
14812 --disable-shared
14813 Shared library
14814
14815 --enable-static
14816 --disable-static
14817 Static library
14818
14819 --enable-executable-dynamic
14820 --disable-executable-dynamic
14821 Executable dynamic linking
14822
14823 --enable-executable-static
14824 --disable-executable-static
14825 Executable fully static linking
14826
14827 --enable-profiling
14828 --disable-profiling
14829 Executable and library profiling
14830
14831 --enable-executable-profiling
14832 --disable-executable-profiling
14833 Executable profiling (DEPRECATED)
14834
14835 --profiling-detail level
14836 Profiling detail level for executable and library
14837 (default, none, exported-functions, toplevel-functions,
14838 all-functions).
14839
14840 --library-profiling-detail level
14841 Profiling detail level for libraries only.
14842
14843 -O, --enable-optimization, --enable-optimisation [n]
14844 Build with optimization (n is 0--2, default is 1)
14845
14846 --disable-optimization, --disable-optimisation
14847 Build without optimization
14848
14849 --enable-debug-info [n]
14850 Emit debug info (n is 0--3, default is 0)
14851
14852 --disable-debug-info
14853 Don't emit debug info
14854
14855 --enable-library-for-ghci
14856 --disable-library-for-ghci
14857 compile library for use with GHCi
14858
14859 --enable-split-sections
14860 --disable-split-sections
14861 compile library code such that unneeded definitions can
14862 be dropped from the final executable (GHC 7.8+)
14863
14864 --enable-split-objs
14865 --disable-split-objs
14866 split library into smaller objects to reduce binary sizes
14867 (GHC 6.6+)
14868
14869 --enable-executable-stripping
14870 --disable-executable-stripping
14871 strip executables upon installation to reduce binary
14872 sizes
14873
14874 --enable-library-stripping
14875 --disable-library-stripping
14876 strip libraries upon installation to reduce binary sizes
14877
14878 --configure-option OPT
14879 Extra option for configure
14880
14881 --user
14882 --global
14883 doing a per-user installation
14884
14885 --package-db DB
14886 Append the given package database to the list of package
14887 databases used (to satisfy dependencies and register
14888 into). May be a specific file, 'global' or 'user'. The
14889 initial list is ['global'], ['global', 'user'], or
14890 ['global', $sandbox], depending on context. Use 'clear'
14891 to reset the list to empty. See the user guide for
14892 details.
14893
14894 -f, --flags FLAGS
14895 Force values for the given flags in Cabal conditionals in
14896 the .cabal file. E.g., --flags="debug -usebytestrings"
14897 forces the flag "debug" to true and "usebytestrings" to
14898 false.
14899
14900 --extra-include-dirs PATH
14901 A list of directories to search for header files
14902
14903 --enable-deterministic
14904 --disable-deterministic
14905 Try to be as deterministic as possible (used by the test
14906 suite)
14907
14908 --ipid IPID
14909 Installed package ID to compile this package as
14910
14911 --cid CID
14912 Installed component ID to compile this component as
14913
14914 --extra-lib-dirs PATH
14915 A list of directories to search for external libraries
14916
14917 --extra-framework-dirs PATH
14918 A list of directories to search for external frameworks
14919 (OS X only)
14920
14921 --extra-prog-path PATH
14922 A list of directories to search for required programs (in
14923 addition to the normal search locations)
14924
14925 --instantiate-with NAME=MOD
14926 A mapping of signature names to concrete module instanti‐
14927 ations.
14928
14929 --enable-tests
14930 --disable-tests
14931 dependency checking and compilation for test suites
14932 listed in the package description file.
14933
14934 --enable-coverage
14935 --disable-coverage
14936 build package with Haskell Program Coverage. (GHC only)
14937
14938 --enable-library-coverage
14939 --disable-library-coverage
14940 build package with Haskell Program Coverage. (GHC only)
14941 (DEPRECATED)
14942
14943 --enable-benchmarks
14944 --disable-benchmarks
14945 dependency checking and compilation for benchmarks listed
14946 in the package description file.
14947
14948 --enable-relocatable
14949 --disable-relocatable
14950 building a package that is relocatable. (GHC only)
14951
14952 --disable-response-files
14953 enable workaround for old versions of programs like "ar"
14954 that do not support @file arguments
14955
14956 --allow-depending-on-private-libs
14957 Allow depending on private libraries. If set, the library
14958 visibility check MUST be done externally.
14959
14960 --with-alex PATH
14961 give the path to alex
14962
14963 --with-ar PATH
14964 give the path to ar
14965
14966 --with-c2hs PATH
14967 give the path to c2hs
14968
14969 --with-cpphs PATH
14970 give the path to cpphs
14971
14972 --with-doctest PATH
14973 give the path to doctest
14974
14975 --with-gcc PATH
14976 give the path to gcc
14977
14978 --with-ghc PATH
14979 give the path to ghc
14980
14981 --with-ghc-pkg PATH
14982 give the path to ghc-pkg
14983
14984 --with-ghcjs PATH
14985 give the path to ghcjs
14986
14987 --with-ghcjs-pkg PATH
14988 give the path to ghcjs-pkg
14989
14990 --with-greencard PATH
14991 give the path to greencard
14992
14993 --with-haddock PATH
14994 give the path to haddock
14995
14996 --with-happy PATH
14997 give the path to happy
14998
14999 --with-haskell-suite PATH
15000 give the path to haskell-suite
15001
15002 --with-haskell-suite-pkg PATH
15003 give the path to haskell-suite-pkg
15004
15005 --with-hmake PATH
15006 give the path to hmake
15007
15008 --with-hpc PATH
15009 give the path to hpc
15010
15011 --with-hsc2hs PATH
15012 give the path to hsc2hs
15013
15014 --with-hscolour PATH
15015 give the path to hscolour
15016
15017 --with-jhc PATH
15018 give the path to jhc
15019
15020 --with-ld PATH
15021 give the path to ld
15022
15023 --with-pkg-config PATH
15024 give the path to pkg-config
15025
15026 --with-runghc PATH
15027 give the path to runghc
15028
15029 --with-strip PATH
15030 give the path to strip
15031
15032 --with-tar PATH
15033 give the path to tar
15034
15035 --with-uhc PATH
15036 give the path to uhc
15037
15038 --alex-option OPT
15039 give an extra option to alex (no need to quote options
15040 containing spaces)
15041
15042 --ar-option OPT
15043 give an extra option to ar (no need to quote options con‐
15044 taining spaces)
15045
15046 --c2hs-option OPT
15047 give an extra option to c2hs (no need to quote options
15048 containing spaces)
15049
15050 --cpphs-option OPT
15051 give an extra option to cpphs (no need to quote options
15052 containing spaces)
15053
15054 --doctest-option OPT
15055 give an extra option to doctest (no need to quote options
15056 containing spaces)
15057
15058 --gcc-option OPT
15059 give an extra option to gcc (no need to quote options
15060 containing spaces)
15061
15062 --ghc-option OPT
15063 give an extra option to ghc (no need to quote options
15064 containing spaces)
15065
15066 --ghc-pkg-option OPT
15067 give an extra option to ghc-pkg (no need to quote options
15068 containing spaces)
15069
15070 --ghcjs-option OPT
15071 give an extra option to ghcjs (no need to quote options
15072 containing spaces)
15073
15074 --ghcjs-pkg-option OPT
15075 give an extra option to ghcjs-pkg (no need to quote
15076 options containing spaces)
15077
15078 --greencard-option OPT
15079 give an extra option to greencard (no need to quote
15080 options containing spaces)
15081
15082 --haddock-option OPT
15083 give an extra option to haddock (no need to quote options
15084 containing spaces)
15085
15086 --happy-option OPT
15087 give an extra option to happy (no need to quote options
15088 containing spaces)
15089
15090 --haskell-suite-option OPT
15091 give an extra option to haskell-suite (no need to quote
15092 options containing spaces)
15093
15094 --haskell-suite-pkg-option OPT
15095 give an extra option to haskell-suite-pkg (no need to
15096 quote options containing spaces)
15097
15098 --hmake-option OPT
15099 give an extra option to hmake (no need to quote options
15100 containing spaces)
15101
15102 --hpc-option OPT
15103 give an extra option to hpc (no need to quote options
15104 containing spaces)
15105
15106 --hsc2hs-option OPT
15107 give an extra option to hsc2hs (no need to quote options
15108 containing spaces)
15109
15110 --hscolour-option OPT
15111 give an extra option to hscolour (no need to quote
15112 options containing spaces)
15113
15114 --jhc-option OPT
15115 give an extra option to jhc (no need to quote options
15116 containing spaces)
15117
15118 --ld-option OPT
15119 give an extra option to ld (no need to quote options con‐
15120 taining spaces)
15121
15122 --pkg-config-option OPT
15123 give an extra option to pkg-config (no need to quote
15124 options containing spaces)
15125
15126 --runghc-option OPT
15127 give an extra option to runghc (no need to quote options
15128 containing spaces)
15129
15130 --strip-option OPT
15131 give an extra option to strip (no need to quote options
15132 containing spaces)
15133
15134 --tar-option OPT
15135 give an extra option to tar (no need to quote options
15136 containing spaces)
15137
15138 --uhc-option OPT
15139 give an extra option to uhc (no need to quote options
15140 containing spaces)
15141
15142 --alex-options OPTS
15143 give extra options to alex
15144
15145 --ar-options OPTS
15146 give extra options to ar
15147
15148 --c2hs-options OPTS
15149 give extra options to c2hs
15150
15151 --cpphs-options OPTS
15152 give extra options to cpphs
15153
15154 --doctest-options OPTS
15155 give extra options to doctest
15156
15157 --gcc-options OPTS
15158 give extra options to gcc
15159
15160 --ghc-options OPTS
15161 give extra options to ghc
15162
15163 --ghc-pkg-options OPTS
15164 give extra options to ghc-pkg
15165
15166 --ghcjs-options OPTS
15167 give extra options to ghcjs
15168
15169 --ghcjs-pkg-options OPTS
15170 give extra options to ghcjs-pkg
15171
15172 --greencard-options OPTS
15173 give extra options to greencard
15174
15175 --haddock-options OPTS
15176 give extra options to haddock
15177
15178 --happy-options OPTS
15179 give extra options to happy
15180
15181 --haskell-suite-options OPTS
15182 give extra options to haskell-suite
15183
15184 --haskell-suite-pkg-options OPTS
15185 give extra options to haskell-suite-pkg
15186
15187 --hmake-options OPTS
15188 give extra options to hmake
15189
15190 --hpc-options OPTS
15191 give extra options to hpc
15192
15193 --hsc2hs-options OPTS
15194 give extra options to hsc2hs
15195
15196 --hscolour-options OPTS
15197 give extra options to hscolour
15198
15199 --jhc-options OPTS
15200 give extra options to jhc
15201
15202 --ld-options OPTS
15203 give extra options to ld
15204
15205 --pkg-config-options OPTS
15206 give extra options to pkg-config
15207
15208 --runghc-options OPTS
15209 give extra options to runghc
15210
15211 --strip-options OPTS
15212 give extra options to strip
15213
15214 --tar-options OPTS
15215 give extra options to tar
15216
15217 --uhc-options OPTS
15218 give extra options to uhc
15219
15220 --cabal-lib-version VERSION
15221 Select which version of the Cabal lib to use to build
15222 packages (useful for testing).
15223
15224 --constraint CONSTRAINT
15225 Specify constraints on a package (version,
15226 installed/source, flags)
15227
15228 --preference CONSTRAINT
15229 Specify preferences (soft constraints) on the version of
15230 a package
15231
15232 --solver SOLVER
15233 Select dependency solver to use (default: modular).
15234 Choices: modular.
15235
15236 --allow-older [DEPS]
15237 Ignore lower bounds in all dependencies or DEPS
15238
15239 --allow-newer [DEPS]
15240 Ignore upper bounds in all dependencies or DEPS
15241
15242 --write-ghc-environment-files always|never|ghc8.4.4+
15243 Whether to create a .ghc.environment file after a suc‐
15244 cessful build (v2-build only)
15245
15246 --enable-documentation
15247 --disable-documentation
15248 building of documentation
15249
15250 --doc-index-file TEMPLATE
15251 A central index of haddock API documentation (template
15252 cannot use $pkgid)
15253
15254 --dry-run
15255 Do not install anything, only print what would be
15256 installed.
15257
15258 --max-backjumps NUM
15259 Maximum number of backjumps allowed while solving
15260 (default: 4000). Use a negative number to enable unlim‐
15261 ited backtracking. Use 0 to disable backtracking com‐
15262 pletely.
15263
15264 --reorder-goals
15265 --no-reorder-goals
15266 Try to reorder goals according to certain heuristics.
15267 Slows things down on average, but may make backtracking
15268 faster for some packages.
15269
15270 --count-conflicts
15271 --no-count-conflicts
15272 Try to speed up solving by preferring goals that are
15273 involved in a lot of conflicts (default).
15274
15275 --minimize-conflict-set
15276 --no-minimize-conflict-set
15277 When there is no solution, try to improve the error mes‐
15278 sage by finding a minimal conflict set (default: false).
15279 May increase run time significantly.
15280
15281 --independent-goals
15282 --no-independent-goals
15283 Treat several goals on the command line as independent.
15284 If several goals depend on the same package, different
15285 versions can be chosen.
15286
15287 --shadow-installed-packages
15288 --no-shadow-installed-packages
15289 If multiple package instances of the same version are
15290 installed, treat all but one as shadowed.
15291
15292 --strong-flags
15293 --no-strong-flags
15294 Do not defer flag choices (this used to be the default in
15295 cabal-install <= 1.20).
15296
15297 --allow-boot-library-installs
15298 --no-allow-boot-library-installs
15299 Allow cabal to install base, ghc-prim, integer-simple,
15300 integer-gmp, and template-haskell.
15301
15302 --reject-unconstrained-dependencies none|all
15303 Require these packages to have constraints on them if
15304 they are to be selected (default: none).
15305
15306 --reinstall
15307 --no-reinstall
15308 Install even if it means installing the same version
15309 again.
15310
15311 --avoid-reinstalls
15312 --no-avoid-reinstalls
15313 Do not select versions that would destructively overwrite
15314 installed packages.
15315
15316 --force-reinstalls
15317 --no-force-reinstalls
15318 Reinstall packages even if they will most likely break
15319 other installed packages.
15320
15321 --upgrade-dependencies
15322 --no-upgrade-dependencies
15323 Pick the latest version for all dependencies, rather than
15324 trying to pick an installed version.
15325
15326 --only-dependencies
15327 --no-only-dependencies
15328 Install only the dependencies necessary to build the
15329 given packages
15330
15331 --dependencies-only
15332 --no-dependencies-only
15333 A synonym for --only-dependencies
15334
15335 --index-state STATE
15336 Use source package index state as it existed at a previ‐
15337 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
15338 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
15339 'HEAD' (default: 'HEAD').
15340
15341 --root-cmd COMMAND
15342 (No longer supported, do not use.)
15343
15344 --build-summary TEMPLATE
15345 Save build summaries to file (name template can use
15346 $pkgid, $compiler, $os, $arch)
15347
15348 --build-log TEMPLATE
15349 Log all builds to file (name template can use $pkgid,
15350 $compiler, $os, $arch)
15351
15352 --remote-build-reporting LEVEL
15353 Generate build reports to send to a remote server (none,
15354 anonymous or detailed).
15355
15356 --report-planning-failure
15357 Generate build reports when the dependency solver fails.
15358 This is used by the Hackage build bot.
15359
15360 --enable-per-component
15361 --disable-per-component
15362 Per-component builds when possible
15363
15364 --one-shot
15365 --no-one-shot
15366 Do not record the packages in the world file.
15367
15368 --run-tests
15369 Run package test suites during installation.
15370
15371 -j, --jobs [NUM]
15372 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
15373 given).
15374
15375 --keep-going
15376 After a build failure, continue to build other unaffected
15377 packages.
15378
15379 --offline
15380 --no-offline
15381 Don't download packages from the Internet.
15382
15383 --project-file FILE
15384 Set the name of the cabal.project file to search for in
15385 parent directories
15386
15387 --only
15388 Only installs the package in the current directory.
15389
15390 --haddock-hoogle
15391 Generate a hoogle database
15392
15393 --haddock-html
15394 Generate HTML documentation (the default)
15395
15396 --haddock-html-location URL
15397 Location of HTML documentation for pre-requisite packages
15398
15399 --haddock-for-hackage
15400 Collection of flags to generate documentation suitable
15401 for upload to hackage
15402
15403 --haddock-executables
15404 Run haddock for Executables targets
15405
15406 --haddock-tests
15407 Run haddock for Test Suite targets
15408
15409 --haddock-benchmarks
15410 Run haddock for Benchmark targets
15411
15412 --haddock-all
15413 Run haddock for all targets
15414
15415 --haddock-internal
15416 Run haddock for internal modules and include all symbols
15417
15418 --haddock-css PATH
15419 Use PATH as the haddock stylesheet
15420
15421 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
15422 dock-hyperlinked-source
15423 Hyperlink the documentation to the source code
15424
15425 --haddock-quickjump
15426 Generate an index for interactive documentation naviga‐
15427 tion
15428
15429 --haddock-hscolour-css PATH
15430 Use PATH as the HsColour stylesheet
15431
15432 --haddock-contents-location URL
15433 Bake URL in as the location for the contents page
15434
15435 --test-log TEMPLATE
15436 Log all test suite results to file (name template can use
15437 $pkgid, $compiler, $os, $arch, $test-suite, $result)
15438
15439 --test-machine-log TEMPLATE
15440 Produce a machine-readable log file (name template can
15441 use $pkgid, $compiler, $os, $arch, $result)
15442
15443 --test-show-details FILTER
15444
15445 --test-keep-tix-files
15446 keep .tix files for HPC between test runs
15447
15448 --test-wrapper FILE
15449 Run test through a wrapper.
15450
15451 --test-fail-when-no-test-suites
15452 Exit with failure when no test suites are found.
15453
15454 --test-options TEMPLATES
15455 give extra options to test executables (name templates
15456 can use $pkgid, $compiler, $os, $arch, $test-suite)
15457
15458 --test-option TEMPLATE
15459 give extra option to test executables (no need to quote
15460 options containing spaces, name template can use $pkgid,
15461 $compiler, $os, $arch, $test-suite)
15462
15463 --lib
15464 Install libraries rather than executables from the target
15465 package.
15466
15467 --package-env, --env ENV
15468 Set the environment file that may be modified.
15469
15470 --overwrite-policy always|never
15471 How to handle already existing symlinks.
15472
15473 --install-method copy|symlink
15474 How to install the executables.
15475
15476 --installdir DIR
15477 Where to install (by symlinking or copying) the executa‐
15478 bles in.
15479
15480
15481 cabal new-install
15482
15483 Usage: cabal new-install [TARGETS] [FLAGS]
15484
15485
15486 Installs one or more packages. This is done by installing them in the
15487 store and symlinking/copying the executables in the directory specified
15488 by the --installdir flag (`~/.cabal/bin/` by default). If you want the
15489 installed executables to be available globally, make sure that the PATH
15490 environment variable contains that directory.
15491
15492 If TARGET is a library, it will be added to the global environment.
15493 When doing this, cabal will try to build a plan that includes all the
15494 previously installed libraries. This is currently not implemented.
15495
15496
15497 Installs one or more packages. This is done by installing them in the
15498 store and symlinking/copying the executables in the directory specified
15499 by the --installdir flag (`~/.cabal/bin/` by default). If you want the
15500 installed executables to be available globally, make sure that the PATH
15501 environment variable contains that directory.
15502
15503 If TARGET is a library, it will be added to the global environment.
15504 When doing this, cabal will try to build a plan that includes all the
15505 previously installed libraries. This is currently not implemented.
15506
15507
15508 Flags:
15509 -v, --verbose [n]
15510 Control verbosity (n is 0--3, default verbosity level is
15511 1)
15512
15513 --builddir, --distdir, --distpref DIR
15514 The directory where Cabal puts generated build files
15515 (default dist)
15516
15517 -g, --ghc
15518 compile with GHC
15519
15520 --ghcjs
15521 compile with GHCJS
15522
15523 --uhc
15524 compile with UHC
15525
15526 --haskell-suite
15527 compile with a haskell-suite compiler
15528
15529 --cabal-file PATH
15530 use this Cabal file
15531
15532 -w, --with-compiler PATH
15533 give the path to a particular compiler
15534
15535 --with-hc-pkg PATH
15536 give the path to the package tool
15537
15538 --prefix DIR
15539 bake this prefix in preparation of installation
15540
15541 --bindir DIR
15542 installation directory for executables
15543
15544 --libdir DIR
15545 installation directory for libraries
15546
15547 --libsubdir DIR
15548 subdirectory of libdir in which libs are installed
15549
15550 --dynlibdir DIR
15551 installation directory for dynamic libraries
15552
15553 --libexecdir DIR
15554 installation directory for program executables
15555
15556 --libexecsubdir DIR
15557 subdirectory of libexecdir in which private executables
15558 are installed
15559
15560 --datadir DIR
15561 installation directory for read-only data
15562
15563 --datasubdir DIR
15564 subdirectory of datadir in which data files are installed
15565
15566 --docdir DIR
15567 installation directory for documentation
15568
15569 --htmldir DIR
15570 installation directory for HTML documentation
15571
15572 --haddockdir DIR
15573 installation directory for haddock interfaces
15574
15575 --sysconfdir DIR
15576 installation directory for configuration files
15577
15578 --program-prefix PREFIX
15579 prefix to be applied to installed executables
15580
15581 --program-suffix SUFFIX
15582 suffix to be applied to installed executables
15583
15584 --enable-library-vanilla
15585 --disable-library-vanilla
15586 Vanilla libraries
15587
15588 -p, --enable-library-profiling
15589 --disable-library-profiling
15590 Library profiling
15591
15592 --enable-shared
15593 --disable-shared
15594 Shared library
15595
15596 --enable-static
15597 --disable-static
15598 Static library
15599
15600 --enable-executable-dynamic
15601 --disable-executable-dynamic
15602 Executable dynamic linking
15603
15604 --enable-executable-static
15605 --disable-executable-static
15606 Executable fully static linking
15607
15608 --enable-profiling
15609 --disable-profiling
15610 Executable and library profiling
15611
15612 --enable-executable-profiling
15613 --disable-executable-profiling
15614 Executable profiling (DEPRECATED)
15615
15616 --profiling-detail level
15617 Profiling detail level for executable and library
15618 (default, none, exported-functions, toplevel-functions,
15619 all-functions).
15620
15621 --library-profiling-detail level
15622 Profiling detail level for libraries only.
15623
15624 -O, --enable-optimization, --enable-optimisation [n]
15625 Build with optimization (n is 0--2, default is 1)
15626
15627 --disable-optimization, --disable-optimisation
15628 Build without optimization
15629
15630 --enable-debug-info [n]
15631 Emit debug info (n is 0--3, default is 0)
15632
15633 --disable-debug-info
15634 Don't emit debug info
15635
15636 --enable-library-for-ghci
15637 --disable-library-for-ghci
15638 compile library for use with GHCi
15639
15640 --enable-split-sections
15641 --disable-split-sections
15642 compile library code such that unneeded definitions can
15643 be dropped from the final executable (GHC 7.8+)
15644
15645 --enable-split-objs
15646 --disable-split-objs
15647 split library into smaller objects to reduce binary sizes
15648 (GHC 6.6+)
15649
15650 --enable-executable-stripping
15651 --disable-executable-stripping
15652 strip executables upon installation to reduce binary
15653 sizes
15654
15655 --enable-library-stripping
15656 --disable-library-stripping
15657 strip libraries upon installation to reduce binary sizes
15658
15659 --configure-option OPT
15660 Extra option for configure
15661
15662 --user
15663 --global
15664 doing a per-user installation
15665
15666 --package-db DB
15667 Append the given package database to the list of package
15668 databases used (to satisfy dependencies and register
15669 into). May be a specific file, 'global' or 'user'. The
15670 initial list is ['global'], ['global', 'user'], or
15671 ['global', $sandbox], depending on context. Use 'clear'
15672 to reset the list to empty. See the user guide for
15673 details.
15674
15675 -f, --flags FLAGS
15676 Force values for the given flags in Cabal conditionals in
15677 the .cabal file. E.g., --flags="debug -usebytestrings"
15678 forces the flag "debug" to true and "usebytestrings" to
15679 false.
15680
15681 --extra-include-dirs PATH
15682 A list of directories to search for header files
15683
15684 --enable-deterministic
15685 --disable-deterministic
15686 Try to be as deterministic as possible (used by the test
15687 suite)
15688
15689 --ipid IPID
15690 Installed package ID to compile this package as
15691
15692 --cid CID
15693 Installed component ID to compile this component as
15694
15695 --extra-lib-dirs PATH
15696 A list of directories to search for external libraries
15697
15698 --extra-framework-dirs PATH
15699 A list of directories to search for external frameworks
15700 (OS X only)
15701
15702 --extra-prog-path PATH
15703 A list of directories to search for required programs (in
15704 addition to the normal search locations)
15705
15706 --instantiate-with NAME=MOD
15707 A mapping of signature names to concrete module instanti‐
15708 ations.
15709
15710 --enable-tests
15711 --disable-tests
15712 dependency checking and compilation for test suites
15713 listed in the package description file.
15714
15715 --enable-coverage
15716 --disable-coverage
15717 build package with Haskell Program Coverage. (GHC only)
15718
15719 --enable-library-coverage
15720 --disable-library-coverage
15721 build package with Haskell Program Coverage. (GHC only)
15722 (DEPRECATED)
15723
15724 --enable-benchmarks
15725 --disable-benchmarks
15726 dependency checking and compilation for benchmarks listed
15727 in the package description file.
15728
15729 --enable-relocatable
15730 --disable-relocatable
15731 building a package that is relocatable. (GHC only)
15732
15733 --disable-response-files
15734 enable workaround for old versions of programs like "ar"
15735 that do not support @file arguments
15736
15737 --allow-depending-on-private-libs
15738 Allow depending on private libraries. If set, the library
15739 visibility check MUST be done externally.
15740
15741 --with-alex PATH
15742 give the path to alex
15743
15744 --with-ar PATH
15745 give the path to ar
15746
15747 --with-c2hs PATH
15748 give the path to c2hs
15749
15750 --with-cpphs PATH
15751 give the path to cpphs
15752
15753 --with-doctest PATH
15754 give the path to doctest
15755
15756 --with-gcc PATH
15757 give the path to gcc
15758
15759 --with-ghc PATH
15760 give the path to ghc
15761
15762 --with-ghc-pkg PATH
15763 give the path to ghc-pkg
15764
15765 --with-ghcjs PATH
15766 give the path to ghcjs
15767
15768 --with-ghcjs-pkg PATH
15769 give the path to ghcjs-pkg
15770
15771 --with-greencard PATH
15772 give the path to greencard
15773
15774 --with-haddock PATH
15775 give the path to haddock
15776
15777 --with-happy PATH
15778 give the path to happy
15779
15780 --with-haskell-suite PATH
15781 give the path to haskell-suite
15782
15783 --with-haskell-suite-pkg PATH
15784 give the path to haskell-suite-pkg
15785
15786 --with-hmake PATH
15787 give the path to hmake
15788
15789 --with-hpc PATH
15790 give the path to hpc
15791
15792 --with-hsc2hs PATH
15793 give the path to hsc2hs
15794
15795 --with-hscolour PATH
15796 give the path to hscolour
15797
15798 --with-jhc PATH
15799 give the path to jhc
15800
15801 --with-ld PATH
15802 give the path to ld
15803
15804 --with-pkg-config PATH
15805 give the path to pkg-config
15806
15807 --with-runghc PATH
15808 give the path to runghc
15809
15810 --with-strip PATH
15811 give the path to strip
15812
15813 --with-tar PATH
15814 give the path to tar
15815
15816 --with-uhc PATH
15817 give the path to uhc
15818
15819 --alex-option OPT
15820 give an extra option to alex (no need to quote options
15821 containing spaces)
15822
15823 --ar-option OPT
15824 give an extra option to ar (no need to quote options con‐
15825 taining spaces)
15826
15827 --c2hs-option OPT
15828 give an extra option to c2hs (no need to quote options
15829 containing spaces)
15830
15831 --cpphs-option OPT
15832 give an extra option to cpphs (no need to quote options
15833 containing spaces)
15834
15835 --doctest-option OPT
15836 give an extra option to doctest (no need to quote options
15837 containing spaces)
15838
15839 --gcc-option OPT
15840 give an extra option to gcc (no need to quote options
15841 containing spaces)
15842
15843 --ghc-option OPT
15844 give an extra option to ghc (no need to quote options
15845 containing spaces)
15846
15847 --ghc-pkg-option OPT
15848 give an extra option to ghc-pkg (no need to quote options
15849 containing spaces)
15850
15851 --ghcjs-option OPT
15852 give an extra option to ghcjs (no need to quote options
15853 containing spaces)
15854
15855 --ghcjs-pkg-option OPT
15856 give an extra option to ghcjs-pkg (no need to quote
15857 options containing spaces)
15858
15859 --greencard-option OPT
15860 give an extra option to greencard (no need to quote
15861 options containing spaces)
15862
15863 --haddock-option OPT
15864 give an extra option to haddock (no need to quote options
15865 containing spaces)
15866
15867 --happy-option OPT
15868 give an extra option to happy (no need to quote options
15869 containing spaces)
15870
15871 --haskell-suite-option OPT
15872 give an extra option to haskell-suite (no need to quote
15873 options containing spaces)
15874
15875 --haskell-suite-pkg-option OPT
15876 give an extra option to haskell-suite-pkg (no need to
15877 quote options containing spaces)
15878
15879 --hmake-option OPT
15880 give an extra option to hmake (no need to quote options
15881 containing spaces)
15882
15883 --hpc-option OPT
15884 give an extra option to hpc (no need to quote options
15885 containing spaces)
15886
15887 --hsc2hs-option OPT
15888 give an extra option to hsc2hs (no need to quote options
15889 containing spaces)
15890
15891 --hscolour-option OPT
15892 give an extra option to hscolour (no need to quote
15893 options containing spaces)
15894
15895 --jhc-option OPT
15896 give an extra option to jhc (no need to quote options
15897 containing spaces)
15898
15899 --ld-option OPT
15900 give an extra option to ld (no need to quote options con‐
15901 taining spaces)
15902
15903 --pkg-config-option OPT
15904 give an extra option to pkg-config (no need to quote
15905 options containing spaces)
15906
15907 --runghc-option OPT
15908 give an extra option to runghc (no need to quote options
15909 containing spaces)
15910
15911 --strip-option OPT
15912 give an extra option to strip (no need to quote options
15913 containing spaces)
15914
15915 --tar-option OPT
15916 give an extra option to tar (no need to quote options
15917 containing spaces)
15918
15919 --uhc-option OPT
15920 give an extra option to uhc (no need to quote options
15921 containing spaces)
15922
15923 --alex-options OPTS
15924 give extra options to alex
15925
15926 --ar-options OPTS
15927 give extra options to ar
15928
15929 --c2hs-options OPTS
15930 give extra options to c2hs
15931
15932 --cpphs-options OPTS
15933 give extra options to cpphs
15934
15935 --doctest-options OPTS
15936 give extra options to doctest
15937
15938 --gcc-options OPTS
15939 give extra options to gcc
15940
15941 --ghc-options OPTS
15942 give extra options to ghc
15943
15944 --ghc-pkg-options OPTS
15945 give extra options to ghc-pkg
15946
15947 --ghcjs-options OPTS
15948 give extra options to ghcjs
15949
15950 --ghcjs-pkg-options OPTS
15951 give extra options to ghcjs-pkg
15952
15953 --greencard-options OPTS
15954 give extra options to greencard
15955
15956 --haddock-options OPTS
15957 give extra options to haddock
15958
15959 --happy-options OPTS
15960 give extra options to happy
15961
15962 --haskell-suite-options OPTS
15963 give extra options to haskell-suite
15964
15965 --haskell-suite-pkg-options OPTS
15966 give extra options to haskell-suite-pkg
15967
15968 --hmake-options OPTS
15969 give extra options to hmake
15970
15971 --hpc-options OPTS
15972 give extra options to hpc
15973
15974 --hsc2hs-options OPTS
15975 give extra options to hsc2hs
15976
15977 --hscolour-options OPTS
15978 give extra options to hscolour
15979
15980 --jhc-options OPTS
15981 give extra options to jhc
15982
15983 --ld-options OPTS
15984 give extra options to ld
15985
15986 --pkg-config-options OPTS
15987 give extra options to pkg-config
15988
15989 --runghc-options OPTS
15990 give extra options to runghc
15991
15992 --strip-options OPTS
15993 give extra options to strip
15994
15995 --tar-options OPTS
15996 give extra options to tar
15997
15998 --uhc-options OPTS
15999 give extra options to uhc
16000
16001 --cabal-lib-version VERSION
16002 Select which version of the Cabal lib to use to build
16003 packages (useful for testing).
16004
16005 --constraint CONSTRAINT
16006 Specify constraints on a package (version,
16007 installed/source, flags)
16008
16009 --preference CONSTRAINT
16010 Specify preferences (soft constraints) on the version of
16011 a package
16012
16013 --solver SOLVER
16014 Select dependency solver to use (default: modular).
16015 Choices: modular.
16016
16017 --allow-older [DEPS]
16018 Ignore lower bounds in all dependencies or DEPS
16019
16020 --allow-newer [DEPS]
16021 Ignore upper bounds in all dependencies or DEPS
16022
16023 --write-ghc-environment-files always|never|ghc8.4.4+
16024 Whether to create a .ghc.environment file after a suc‐
16025 cessful build (v2-build only)
16026
16027 --enable-documentation
16028 --disable-documentation
16029 building of documentation
16030
16031 --doc-index-file TEMPLATE
16032 A central index of haddock API documentation (template
16033 cannot use $pkgid)
16034
16035 --dry-run
16036 Do not install anything, only print what would be
16037 installed.
16038
16039 --max-backjumps NUM
16040 Maximum number of backjumps allowed while solving
16041 (default: 4000). Use a negative number to enable unlim‐
16042 ited backtracking. Use 0 to disable backtracking com‐
16043 pletely.
16044
16045 --reorder-goals
16046 --no-reorder-goals
16047 Try to reorder goals according to certain heuristics.
16048 Slows things down on average, but may make backtracking
16049 faster for some packages.
16050
16051 --count-conflicts
16052 --no-count-conflicts
16053 Try to speed up solving by preferring goals that are
16054 involved in a lot of conflicts (default).
16055
16056 --minimize-conflict-set
16057 --no-minimize-conflict-set
16058 When there is no solution, try to improve the error mes‐
16059 sage by finding a minimal conflict set (default: false).
16060 May increase run time significantly.
16061
16062 --independent-goals
16063 --no-independent-goals
16064 Treat several goals on the command line as independent.
16065 If several goals depend on the same package, different
16066 versions can be chosen.
16067
16068 --shadow-installed-packages
16069 --no-shadow-installed-packages
16070 If multiple package instances of the same version are
16071 installed, treat all but one as shadowed.
16072
16073 --strong-flags
16074 --no-strong-flags
16075 Do not defer flag choices (this used to be the default in
16076 cabal-install <= 1.20).
16077
16078 --allow-boot-library-installs
16079 --no-allow-boot-library-installs
16080 Allow cabal to install base, ghc-prim, integer-simple,
16081 integer-gmp, and template-haskell.
16082
16083 --reject-unconstrained-dependencies none|all
16084 Require these packages to have constraints on them if
16085 they are to be selected (default: none).
16086
16087 --reinstall
16088 --no-reinstall
16089 Install even if it means installing the same version
16090 again.
16091
16092 --avoid-reinstalls
16093 --no-avoid-reinstalls
16094 Do not select versions that would destructively overwrite
16095 installed packages.
16096
16097 --force-reinstalls
16098 --no-force-reinstalls
16099 Reinstall packages even if they will most likely break
16100 other installed packages.
16101
16102 --upgrade-dependencies
16103 --no-upgrade-dependencies
16104 Pick the latest version for all dependencies, rather than
16105 trying to pick an installed version.
16106
16107 --only-dependencies
16108 --no-only-dependencies
16109 Install only the dependencies necessary to build the
16110 given packages
16111
16112 --dependencies-only
16113 --no-dependencies-only
16114 A synonym for --only-dependencies
16115
16116 --index-state STATE
16117 Use source package index state as it existed at a previ‐
16118 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
16119 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
16120 'HEAD' (default: 'HEAD').
16121
16122 --root-cmd COMMAND
16123 (No longer supported, do not use.)
16124
16125 --build-summary TEMPLATE
16126 Save build summaries to file (name template can use
16127 $pkgid, $compiler, $os, $arch)
16128
16129 --build-log TEMPLATE
16130 Log all builds to file (name template can use $pkgid,
16131 $compiler, $os, $arch)
16132
16133 --remote-build-reporting LEVEL
16134 Generate build reports to send to a remote server (none,
16135 anonymous or detailed).
16136
16137 --report-planning-failure
16138 Generate build reports when the dependency solver fails.
16139 This is used by the Hackage build bot.
16140
16141 --enable-per-component
16142 --disable-per-component
16143 Per-component builds when possible
16144
16145 --one-shot
16146 --no-one-shot
16147 Do not record the packages in the world file.
16148
16149 --run-tests
16150 Run package test suites during installation.
16151
16152 -j, --jobs [NUM]
16153 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
16154 given).
16155
16156 --keep-going
16157 After a build failure, continue to build other unaffected
16158 packages.
16159
16160 --offline
16161 --no-offline
16162 Don't download packages from the Internet.
16163
16164 --project-file FILE
16165 Set the name of the cabal.project file to search for in
16166 parent directories
16167
16168 --only
16169 Only installs the package in the current directory.
16170
16171 --haddock-hoogle
16172 Generate a hoogle database
16173
16174 --haddock-html
16175 Generate HTML documentation (the default)
16176
16177 --haddock-html-location URL
16178 Location of HTML documentation for pre-requisite packages
16179
16180 --haddock-for-hackage
16181 Collection of flags to generate documentation suitable
16182 for upload to hackage
16183
16184 --haddock-executables
16185 Run haddock for Executables targets
16186
16187 --haddock-tests
16188 Run haddock for Test Suite targets
16189
16190 --haddock-benchmarks
16191 Run haddock for Benchmark targets
16192
16193 --haddock-all
16194 Run haddock for all targets
16195
16196 --haddock-internal
16197 Run haddock for internal modules and include all symbols
16198
16199 --haddock-css PATH
16200 Use PATH as the haddock stylesheet
16201
16202 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
16203 dock-hyperlinked-source
16204 Hyperlink the documentation to the source code
16205
16206 --haddock-quickjump
16207 Generate an index for interactive documentation naviga‐
16208 tion
16209
16210 --haddock-hscolour-css PATH
16211 Use PATH as the HsColour stylesheet
16212
16213 --haddock-contents-location URL
16214 Bake URL in as the location for the contents page
16215
16216 --test-log TEMPLATE
16217 Log all test suite results to file (name template can use
16218 $pkgid, $compiler, $os, $arch, $test-suite, $result)
16219
16220 --test-machine-log TEMPLATE
16221 Produce a machine-readable log file (name template can
16222 use $pkgid, $compiler, $os, $arch, $result)
16223
16224 --test-show-details FILTER
16225
16226 --test-keep-tix-files
16227 keep .tix files for HPC between test runs
16228
16229 --test-wrapper FILE
16230 Run test through a wrapper.
16231
16232 --test-fail-when-no-test-suites
16233 Exit with failure when no test suites are found.
16234
16235 --test-options TEMPLATES
16236 give extra options to test executables (name templates
16237 can use $pkgid, $compiler, $os, $arch, $test-suite)
16238
16239 --test-option TEMPLATE
16240 give extra option to test executables (no need to quote
16241 options containing spaces, name template can use $pkgid,
16242 $compiler, $os, $arch, $test-suite)
16243
16244 --lib
16245 Install libraries rather than executables from the target
16246 package.
16247
16248 --package-env, --env ENV
16249 Set the environment file that may be modified.
16250
16251 --overwrite-policy always|never
16252 How to handle already existing symlinks.
16253
16254 --install-method copy|symlink
16255 How to install the executables.
16256
16257 --installdir DIR
16258 Where to install (by symlinking or copying) the executa‐
16259 bles in.
16260
16261
16262 cabal v2-install
16263
16264 Usage: cabal v2-install [TARGETS] [FLAGS]
16265
16266
16267 Installs one or more packages. This is done by installing them in the
16268 store and symlinking/copying the executables in the directory specified
16269 by the --installdir flag (`~/.cabal/bin/` by default). If you want the
16270 installed executables to be available globally, make sure that the PATH
16271 environment variable contains that directory.
16272
16273 If TARGET is a library, it will be added to the global environment.
16274 When doing this, cabal will try to build a plan that includes all the
16275 previously installed libraries. This is currently not implemented.
16276
16277
16278 Examples:
16279 cabal v2-install
16280 Install the package in the current directory
16281 cabal v2-install pkgname
16282 Install the package named pkgname (fetching it from hackage if nec‐
16283 essary)
16284 cabal v2-install ./pkgfoo
16285 Install the package in the ./pkgfoo directory Note: this command is
16286 part of the new project-based system (aka nix-style local builds).
16287 These features are currently in beta. Please see http://cabal.readthe‐
16288 docs.io/en/latest/nix-local-build-overview.html for details and advice
16289 on what you can expect to work. If you encounter problems please file
16290 issues at https://github.com/haskell/cabal/issues and if you have any
16291 time to get involved and help with testing, fixing bugs etc then that
16292 is very much appreciated.
16293
16294
16295 Flags:
16296 -v, --verbose [n]
16297 Control verbosity (n is 0--3, default verbosity level is
16298 1)
16299
16300 --builddir, --distdir, --distpref DIR
16301 The directory where Cabal puts generated build files
16302 (default dist)
16303
16304 -g, --ghc
16305 compile with GHC
16306
16307 --ghcjs
16308 compile with GHCJS
16309
16310 --uhc
16311 compile with UHC
16312
16313 --haskell-suite
16314 compile with a haskell-suite compiler
16315
16316 --cabal-file PATH
16317 use this Cabal file
16318
16319 -w, --with-compiler PATH
16320 give the path to a particular compiler
16321
16322 --with-hc-pkg PATH
16323 give the path to the package tool
16324
16325 --prefix DIR
16326 bake this prefix in preparation of installation
16327
16328 --bindir DIR
16329 installation directory for executables
16330
16331 --libdir DIR
16332 installation directory for libraries
16333
16334 --libsubdir DIR
16335 subdirectory of libdir in which libs are installed
16336
16337 --dynlibdir DIR
16338 installation directory for dynamic libraries
16339
16340 --libexecdir DIR
16341 installation directory for program executables
16342
16343 --libexecsubdir DIR
16344 subdirectory of libexecdir in which private executables
16345 are installed
16346
16347 --datadir DIR
16348 installation directory for read-only data
16349
16350 --datasubdir DIR
16351 subdirectory of datadir in which data files are installed
16352
16353 --docdir DIR
16354 installation directory for documentation
16355
16356 --htmldir DIR
16357 installation directory for HTML documentation
16358
16359 --haddockdir DIR
16360 installation directory for haddock interfaces
16361
16362 --sysconfdir DIR
16363 installation directory for configuration files
16364
16365 --program-prefix PREFIX
16366 prefix to be applied to installed executables
16367
16368 --program-suffix SUFFIX
16369 suffix to be applied to installed executables
16370
16371 --enable-library-vanilla
16372 --disable-library-vanilla
16373 Vanilla libraries
16374
16375 -p, --enable-library-profiling
16376 --disable-library-profiling
16377 Library profiling
16378
16379 --enable-shared
16380 --disable-shared
16381 Shared library
16382
16383 --enable-static
16384 --disable-static
16385 Static library
16386
16387 --enable-executable-dynamic
16388 --disable-executable-dynamic
16389 Executable dynamic linking
16390
16391 --enable-executable-static
16392 --disable-executable-static
16393 Executable fully static linking
16394
16395 --enable-profiling
16396 --disable-profiling
16397 Executable and library profiling
16398
16399 --enable-executable-profiling
16400 --disable-executable-profiling
16401 Executable profiling (DEPRECATED)
16402
16403 --profiling-detail level
16404 Profiling detail level for executable and library
16405 (default, none, exported-functions, toplevel-functions,
16406 all-functions).
16407
16408 --library-profiling-detail level
16409 Profiling detail level for libraries only.
16410
16411 -O, --enable-optimization, --enable-optimisation [n]
16412 Build with optimization (n is 0--2, default is 1)
16413
16414 --disable-optimization, --disable-optimisation
16415 Build without optimization
16416
16417 --enable-debug-info [n]
16418 Emit debug info (n is 0--3, default is 0)
16419
16420 --disable-debug-info
16421 Don't emit debug info
16422
16423 --enable-library-for-ghci
16424 --disable-library-for-ghci
16425 compile library for use with GHCi
16426
16427 --enable-split-sections
16428 --disable-split-sections
16429 compile library code such that unneeded definitions can
16430 be dropped from the final executable (GHC 7.8+)
16431
16432 --enable-split-objs
16433 --disable-split-objs
16434 split library into smaller objects to reduce binary sizes
16435 (GHC 6.6+)
16436
16437 --enable-executable-stripping
16438 --disable-executable-stripping
16439 strip executables upon installation to reduce binary
16440 sizes
16441
16442 --enable-library-stripping
16443 --disable-library-stripping
16444 strip libraries upon installation to reduce binary sizes
16445
16446 --configure-option OPT
16447 Extra option for configure
16448
16449 --user
16450 --global
16451 doing a per-user installation
16452
16453 --package-db DB
16454 Append the given package database to the list of package
16455 databases used (to satisfy dependencies and register
16456 into). May be a specific file, 'global' or 'user'. The
16457 initial list is ['global'], ['global', 'user'], or
16458 ['global', $sandbox], depending on context. Use 'clear'
16459 to reset the list to empty. See the user guide for
16460 details.
16461
16462 -f, --flags FLAGS
16463 Force values for the given flags in Cabal conditionals in
16464 the .cabal file. E.g., --flags="debug -usebytestrings"
16465 forces the flag "debug" to true and "usebytestrings" to
16466 false.
16467
16468 --extra-include-dirs PATH
16469 A list of directories to search for header files
16470
16471 --enable-deterministic
16472 --disable-deterministic
16473 Try to be as deterministic as possible (used by the test
16474 suite)
16475
16476 --ipid IPID
16477 Installed package ID to compile this package as
16478
16479 --cid CID
16480 Installed component ID to compile this component as
16481
16482 --extra-lib-dirs PATH
16483 A list of directories to search for external libraries
16484
16485 --extra-framework-dirs PATH
16486 A list of directories to search for external frameworks
16487 (OS X only)
16488
16489 --extra-prog-path PATH
16490 A list of directories to search for required programs (in
16491 addition to the normal search locations)
16492
16493 --instantiate-with NAME=MOD
16494 A mapping of signature names to concrete module instanti‐
16495 ations.
16496
16497 --enable-tests
16498 --disable-tests
16499 dependency checking and compilation for test suites
16500 listed in the package description file.
16501
16502 --enable-coverage
16503 --disable-coverage
16504 build package with Haskell Program Coverage. (GHC only)
16505
16506 --enable-library-coverage
16507 --disable-library-coverage
16508 build package with Haskell Program Coverage. (GHC only)
16509 (DEPRECATED)
16510
16511 --enable-benchmarks
16512 --disable-benchmarks
16513 dependency checking and compilation for benchmarks listed
16514 in the package description file.
16515
16516 --enable-relocatable
16517 --disable-relocatable
16518 building a package that is relocatable. (GHC only)
16519
16520 --disable-response-files
16521 enable workaround for old versions of programs like "ar"
16522 that do not support @file arguments
16523
16524 --allow-depending-on-private-libs
16525 Allow depending on private libraries. If set, the library
16526 visibility check MUST be done externally.
16527
16528 --with-alex PATH
16529 give the path to alex
16530
16531 --with-ar PATH
16532 give the path to ar
16533
16534 --with-c2hs PATH
16535 give the path to c2hs
16536
16537 --with-cpphs PATH
16538 give the path to cpphs
16539
16540 --with-doctest PATH
16541 give the path to doctest
16542
16543 --with-gcc PATH
16544 give the path to gcc
16545
16546 --with-ghc PATH
16547 give the path to ghc
16548
16549 --with-ghc-pkg PATH
16550 give the path to ghc-pkg
16551
16552 --with-ghcjs PATH
16553 give the path to ghcjs
16554
16555 --with-ghcjs-pkg PATH
16556 give the path to ghcjs-pkg
16557
16558 --with-greencard PATH
16559 give the path to greencard
16560
16561 --with-haddock PATH
16562 give the path to haddock
16563
16564 --with-happy PATH
16565 give the path to happy
16566
16567 --with-haskell-suite PATH
16568 give the path to haskell-suite
16569
16570 --with-haskell-suite-pkg PATH
16571 give the path to haskell-suite-pkg
16572
16573 --with-hmake PATH
16574 give the path to hmake
16575
16576 --with-hpc PATH
16577 give the path to hpc
16578
16579 --with-hsc2hs PATH
16580 give the path to hsc2hs
16581
16582 --with-hscolour PATH
16583 give the path to hscolour
16584
16585 --with-jhc PATH
16586 give the path to jhc
16587
16588 --with-ld PATH
16589 give the path to ld
16590
16591 --with-pkg-config PATH
16592 give the path to pkg-config
16593
16594 --with-runghc PATH
16595 give the path to runghc
16596
16597 --with-strip PATH
16598 give the path to strip
16599
16600 --with-tar PATH
16601 give the path to tar
16602
16603 --with-uhc PATH
16604 give the path to uhc
16605
16606 --alex-option OPT
16607 give an extra option to alex (no need to quote options
16608 containing spaces)
16609
16610 --ar-option OPT
16611 give an extra option to ar (no need to quote options con‐
16612 taining spaces)
16613
16614 --c2hs-option OPT
16615 give an extra option to c2hs (no need to quote options
16616 containing spaces)
16617
16618 --cpphs-option OPT
16619 give an extra option to cpphs (no need to quote options
16620 containing spaces)
16621
16622 --doctest-option OPT
16623 give an extra option to doctest (no need to quote options
16624 containing spaces)
16625
16626 --gcc-option OPT
16627 give an extra option to gcc (no need to quote options
16628 containing spaces)
16629
16630 --ghc-option OPT
16631 give an extra option to ghc (no need to quote options
16632 containing spaces)
16633
16634 --ghc-pkg-option OPT
16635 give an extra option to ghc-pkg (no need to quote options
16636 containing spaces)
16637
16638 --ghcjs-option OPT
16639 give an extra option to ghcjs (no need to quote options
16640 containing spaces)
16641
16642 --ghcjs-pkg-option OPT
16643 give an extra option to ghcjs-pkg (no need to quote
16644 options containing spaces)
16645
16646 --greencard-option OPT
16647 give an extra option to greencard (no need to quote
16648 options containing spaces)
16649
16650 --haddock-option OPT
16651 give an extra option to haddock (no need to quote options
16652 containing spaces)
16653
16654 --happy-option OPT
16655 give an extra option to happy (no need to quote options
16656 containing spaces)
16657
16658 --haskell-suite-option OPT
16659 give an extra option to haskell-suite (no need to quote
16660 options containing spaces)
16661
16662 --haskell-suite-pkg-option OPT
16663 give an extra option to haskell-suite-pkg (no need to
16664 quote options containing spaces)
16665
16666 --hmake-option OPT
16667 give an extra option to hmake (no need to quote options
16668 containing spaces)
16669
16670 --hpc-option OPT
16671 give an extra option to hpc (no need to quote options
16672 containing spaces)
16673
16674 --hsc2hs-option OPT
16675 give an extra option to hsc2hs (no need to quote options
16676 containing spaces)
16677
16678 --hscolour-option OPT
16679 give an extra option to hscolour (no need to quote
16680 options containing spaces)
16681
16682 --jhc-option OPT
16683 give an extra option to jhc (no need to quote options
16684 containing spaces)
16685
16686 --ld-option OPT
16687 give an extra option to ld (no need to quote options con‐
16688 taining spaces)
16689
16690 --pkg-config-option OPT
16691 give an extra option to pkg-config (no need to quote
16692 options containing spaces)
16693
16694 --runghc-option OPT
16695 give an extra option to runghc (no need to quote options
16696 containing spaces)
16697
16698 --strip-option OPT
16699 give an extra option to strip (no need to quote options
16700 containing spaces)
16701
16702 --tar-option OPT
16703 give an extra option to tar (no need to quote options
16704 containing spaces)
16705
16706 --uhc-option OPT
16707 give an extra option to uhc (no need to quote options
16708 containing spaces)
16709
16710 --alex-options OPTS
16711 give extra options to alex
16712
16713 --ar-options OPTS
16714 give extra options to ar
16715
16716 --c2hs-options OPTS
16717 give extra options to c2hs
16718
16719 --cpphs-options OPTS
16720 give extra options to cpphs
16721
16722 --doctest-options OPTS
16723 give extra options to doctest
16724
16725 --gcc-options OPTS
16726 give extra options to gcc
16727
16728 --ghc-options OPTS
16729 give extra options to ghc
16730
16731 --ghc-pkg-options OPTS
16732 give extra options to ghc-pkg
16733
16734 --ghcjs-options OPTS
16735 give extra options to ghcjs
16736
16737 --ghcjs-pkg-options OPTS
16738 give extra options to ghcjs-pkg
16739
16740 --greencard-options OPTS
16741 give extra options to greencard
16742
16743 --haddock-options OPTS
16744 give extra options to haddock
16745
16746 --happy-options OPTS
16747 give extra options to happy
16748
16749 --haskell-suite-options OPTS
16750 give extra options to haskell-suite
16751
16752 --haskell-suite-pkg-options OPTS
16753 give extra options to haskell-suite-pkg
16754
16755 --hmake-options OPTS
16756 give extra options to hmake
16757
16758 --hpc-options OPTS
16759 give extra options to hpc
16760
16761 --hsc2hs-options OPTS
16762 give extra options to hsc2hs
16763
16764 --hscolour-options OPTS
16765 give extra options to hscolour
16766
16767 --jhc-options OPTS
16768 give extra options to jhc
16769
16770 --ld-options OPTS
16771 give extra options to ld
16772
16773 --pkg-config-options OPTS
16774 give extra options to pkg-config
16775
16776 --runghc-options OPTS
16777 give extra options to runghc
16778
16779 --strip-options OPTS
16780 give extra options to strip
16781
16782 --tar-options OPTS
16783 give extra options to tar
16784
16785 --uhc-options OPTS
16786 give extra options to uhc
16787
16788 --cabal-lib-version VERSION
16789 Select which version of the Cabal lib to use to build
16790 packages (useful for testing).
16791
16792 --constraint CONSTRAINT
16793 Specify constraints on a package (version,
16794 installed/source, flags)
16795
16796 --preference CONSTRAINT
16797 Specify preferences (soft constraints) on the version of
16798 a package
16799
16800 --solver SOLVER
16801 Select dependency solver to use (default: modular).
16802 Choices: modular.
16803
16804 --allow-older [DEPS]
16805 Ignore lower bounds in all dependencies or DEPS
16806
16807 --allow-newer [DEPS]
16808 Ignore upper bounds in all dependencies or DEPS
16809
16810 --write-ghc-environment-files always|never|ghc8.4.4+
16811 Whether to create a .ghc.environment file after a suc‐
16812 cessful build (v2-build only)
16813
16814 --enable-documentation
16815 --disable-documentation
16816 building of documentation
16817
16818 --doc-index-file TEMPLATE
16819 A central index of haddock API documentation (template
16820 cannot use $pkgid)
16821
16822 --dry-run
16823 Do not install anything, only print what would be
16824 installed.
16825
16826 --max-backjumps NUM
16827 Maximum number of backjumps allowed while solving
16828 (default: 4000). Use a negative number to enable unlim‐
16829 ited backtracking. Use 0 to disable backtracking com‐
16830 pletely.
16831
16832 --reorder-goals
16833 --no-reorder-goals
16834 Try to reorder goals according to certain heuristics.
16835 Slows things down on average, but may make backtracking
16836 faster for some packages.
16837
16838 --count-conflicts
16839 --no-count-conflicts
16840 Try to speed up solving by preferring goals that are
16841 involved in a lot of conflicts (default).
16842
16843 --minimize-conflict-set
16844 --no-minimize-conflict-set
16845 When there is no solution, try to improve the error mes‐
16846 sage by finding a minimal conflict set (default: false).
16847 May increase run time significantly.
16848
16849 --independent-goals
16850 --no-independent-goals
16851 Treat several goals on the command line as independent.
16852 If several goals depend on the same package, different
16853 versions can be chosen.
16854
16855 --shadow-installed-packages
16856 --no-shadow-installed-packages
16857 If multiple package instances of the same version are
16858 installed, treat all but one as shadowed.
16859
16860 --strong-flags
16861 --no-strong-flags
16862 Do not defer flag choices (this used to be the default in
16863 cabal-install <= 1.20).
16864
16865 --allow-boot-library-installs
16866 --no-allow-boot-library-installs
16867 Allow cabal to install base, ghc-prim, integer-simple,
16868 integer-gmp, and template-haskell.
16869
16870 --reject-unconstrained-dependencies none|all
16871 Require these packages to have constraints on them if
16872 they are to be selected (default: none).
16873
16874 --reinstall
16875 --no-reinstall
16876 Install even if it means installing the same version
16877 again.
16878
16879 --avoid-reinstalls
16880 --no-avoid-reinstalls
16881 Do not select versions that would destructively overwrite
16882 installed packages.
16883
16884 --force-reinstalls
16885 --no-force-reinstalls
16886 Reinstall packages even if they will most likely break
16887 other installed packages.
16888
16889 --upgrade-dependencies
16890 --no-upgrade-dependencies
16891 Pick the latest version for all dependencies, rather than
16892 trying to pick an installed version.
16893
16894 --only-dependencies
16895 --no-only-dependencies
16896 Install only the dependencies necessary to build the
16897 given packages
16898
16899 --dependencies-only
16900 --no-dependencies-only
16901 A synonym for --only-dependencies
16902
16903 --index-state STATE
16904 Use source package index state as it existed at a previ‐
16905 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
16906 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
16907 'HEAD' (default: 'HEAD').
16908
16909 --root-cmd COMMAND
16910 (No longer supported, do not use.)
16911
16912 --build-summary TEMPLATE
16913 Save build summaries to file (name template can use
16914 $pkgid, $compiler, $os, $arch)
16915
16916 --build-log TEMPLATE
16917 Log all builds to file (name template can use $pkgid,
16918 $compiler, $os, $arch)
16919
16920 --remote-build-reporting LEVEL
16921 Generate build reports to send to a remote server (none,
16922 anonymous or detailed).
16923
16924 --report-planning-failure
16925 Generate build reports when the dependency solver fails.
16926 This is used by the Hackage build bot.
16927
16928 --enable-per-component
16929 --disable-per-component
16930 Per-component builds when possible
16931
16932 --one-shot
16933 --no-one-shot
16934 Do not record the packages in the world file.
16935
16936 --run-tests
16937 Run package test suites during installation.
16938
16939 -j, --jobs [NUM]
16940 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
16941 given).
16942
16943 --keep-going
16944 After a build failure, continue to build other unaffected
16945 packages.
16946
16947 --offline
16948 --no-offline
16949 Don't download packages from the Internet.
16950
16951 --project-file FILE
16952 Set the name of the cabal.project file to search for in
16953 parent directories
16954
16955 --only
16956 Only installs the package in the current directory.
16957
16958 --haddock-hoogle
16959 Generate a hoogle database
16960
16961 --haddock-html
16962 Generate HTML documentation (the default)
16963
16964 --haddock-html-location URL
16965 Location of HTML documentation for pre-requisite packages
16966
16967 --haddock-for-hackage
16968 Collection of flags to generate documentation suitable
16969 for upload to hackage
16970
16971 --haddock-executables
16972 Run haddock for Executables targets
16973
16974 --haddock-tests
16975 Run haddock for Test Suite targets
16976
16977 --haddock-benchmarks
16978 Run haddock for Benchmark targets
16979
16980 --haddock-all
16981 Run haddock for all targets
16982
16983 --haddock-internal
16984 Run haddock for internal modules and include all symbols
16985
16986 --haddock-css PATH
16987 Use PATH as the haddock stylesheet
16988
16989 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
16990 dock-hyperlinked-source
16991 Hyperlink the documentation to the source code
16992
16993 --haddock-quickjump
16994 Generate an index for interactive documentation naviga‐
16995 tion
16996
16997 --haddock-hscolour-css PATH
16998 Use PATH as the HsColour stylesheet
16999
17000 --haddock-contents-location URL
17001 Bake URL in as the location for the contents page
17002
17003 --test-log TEMPLATE
17004 Log all test suite results to file (name template can use
17005 $pkgid, $compiler, $os, $arch, $test-suite, $result)
17006
17007 --test-machine-log TEMPLATE
17008 Produce a machine-readable log file (name template can
17009 use $pkgid, $compiler, $os, $arch, $result)
17010
17011 --test-show-details FILTER
17012
17013 --test-keep-tix-files
17014 keep .tix files for HPC between test runs
17015
17016 --test-wrapper FILE
17017 Run test through a wrapper.
17018
17019 --test-fail-when-no-test-suites
17020 Exit with failure when no test suites are found.
17021
17022 --test-options TEMPLATES
17023 give extra options to test executables (name templates
17024 can use $pkgid, $compiler, $os, $arch, $test-suite)
17025
17026 --test-option TEMPLATE
17027 give extra option to test executables (no need to quote
17028 options containing spaces, name template can use $pkgid,
17029 $compiler, $os, $arch, $test-suite)
17030
17031 --lib
17032 Install libraries rather than executables from the target
17033 package.
17034
17035 --package-env, --env ENV
17036 Set the environment file that may be modified.
17037
17038 --overwrite-policy always|never
17039 How to handle already existing symlinks.
17040
17041 --install-method copy|symlink
17042 How to install the executables.
17043
17044 --installdir DIR
17045 Where to install (by symlinking or copying) the executa‐
17046 bles in.
17047
17048
17049 cabal run
17050
17051 Usage: cabal run [TARGET] [FLAGS] [-- EXECUTABLE_FLAGS]
17052
17053
17054 Runs the specified executable-like component (an executable, a test, or
17055 a benchmark), first ensuring it is up to date.
17056
17057 Any executable-like component in any package in the project can be
17058 specified. A package can be specified if contains just one executable-
17059 like. The default is to use the package in the current directory if it
17060 contains just one executable-like.
17061
17062 Extra arguments can be passed to the program, but use '--' to separate
17063 arguments for the program from arguments for cabal. The executable is
17064 run in an environment where it can find its data files inplace in the
17065 build tree.
17066
17067 Dependencies are built or rebuilt as necessary. Additional configura‐
17068 tion flags can be specified on the command line and these extend the
17069 project configuration from the 'cabal.project', 'cabal.project.local'
17070 and other files.
17071
17072
17073 Runs the specified executable-like component (an executable, a test, or
17074 a benchmark), first ensuring it is up to date.
17075
17076 Any executable-like component in any package in the project can be
17077 specified. A package can be specified if contains just one executable-
17078 like. The default is to use the package in the current directory if it
17079 contains just one executable-like.
17080
17081 Extra arguments can be passed to the program, but use '--' to separate
17082 arguments for the program from arguments for cabal. The executable is
17083 run in an environment where it can find its data files inplace in the
17084 build tree.
17085
17086 Dependencies are built or rebuilt as necessary. Additional configura‐
17087 tion flags can be specified on the command line and these extend the
17088 project configuration from the 'cabal.project', 'cabal.project.local'
17089 and other files.
17090
17091
17092 Flags:
17093 -v, --verbose [n]
17094 Control verbosity (n is 0--3, default verbosity level is
17095 1)
17096
17097 --builddir, --distdir, --distpref DIR
17098 The directory where Cabal puts generated build files
17099 (default dist)
17100
17101 -g, --ghc
17102 compile with GHC
17103
17104 --ghcjs
17105 compile with GHCJS
17106
17107 --uhc
17108 compile with UHC
17109
17110 --haskell-suite
17111 compile with a haskell-suite compiler
17112
17113 --cabal-file PATH
17114 use this Cabal file
17115
17116 -w, --with-compiler PATH
17117 give the path to a particular compiler
17118
17119 --with-hc-pkg PATH
17120 give the path to the package tool
17121
17122 --prefix DIR
17123 bake this prefix in preparation of installation
17124
17125 --bindir DIR
17126 installation directory for executables
17127
17128 --libdir DIR
17129 installation directory for libraries
17130
17131 --libsubdir DIR
17132 subdirectory of libdir in which libs are installed
17133
17134 --dynlibdir DIR
17135 installation directory for dynamic libraries
17136
17137 --libexecdir DIR
17138 installation directory for program executables
17139
17140 --libexecsubdir DIR
17141 subdirectory of libexecdir in which private executables
17142 are installed
17143
17144 --datadir DIR
17145 installation directory for read-only data
17146
17147 --datasubdir DIR
17148 subdirectory of datadir in which data files are installed
17149
17150 --docdir DIR
17151 installation directory for documentation
17152
17153 --htmldir DIR
17154 installation directory for HTML documentation
17155
17156 --haddockdir DIR
17157 installation directory for haddock interfaces
17158
17159 --sysconfdir DIR
17160 installation directory for configuration files
17161
17162 --program-prefix PREFIX
17163 prefix to be applied to installed executables
17164
17165 --program-suffix SUFFIX
17166 suffix to be applied to installed executables
17167
17168 --enable-library-vanilla
17169 --disable-library-vanilla
17170 Vanilla libraries
17171
17172 -p, --enable-library-profiling
17173 --disable-library-profiling
17174 Library profiling
17175
17176 --enable-shared
17177 --disable-shared
17178 Shared library
17179
17180 --enable-static
17181 --disable-static
17182 Static library
17183
17184 --enable-executable-dynamic
17185 --disable-executable-dynamic
17186 Executable dynamic linking
17187
17188 --enable-executable-static
17189 --disable-executable-static
17190 Executable fully static linking
17191
17192 --enable-profiling
17193 --disable-profiling
17194 Executable and library profiling
17195
17196 --enable-executable-profiling
17197 --disable-executable-profiling
17198 Executable profiling (DEPRECATED)
17199
17200 --profiling-detail level
17201 Profiling detail level for executable and library
17202 (default, none, exported-functions, toplevel-functions,
17203 all-functions).
17204
17205 --library-profiling-detail level
17206 Profiling detail level for libraries only.
17207
17208 -O, --enable-optimization, --enable-optimisation [n]
17209 Build with optimization (n is 0--2, default is 1)
17210
17211 --disable-optimization, --disable-optimisation
17212 Build without optimization
17213
17214 --enable-debug-info [n]
17215 Emit debug info (n is 0--3, default is 0)
17216
17217 --disable-debug-info
17218 Don't emit debug info
17219
17220 --enable-library-for-ghci
17221 --disable-library-for-ghci
17222 compile library for use with GHCi
17223
17224 --enable-split-sections
17225 --disable-split-sections
17226 compile library code such that unneeded definitions can
17227 be dropped from the final executable (GHC 7.8+)
17228
17229 --enable-split-objs
17230 --disable-split-objs
17231 split library into smaller objects to reduce binary sizes
17232 (GHC 6.6+)
17233
17234 --enable-executable-stripping
17235 --disable-executable-stripping
17236 strip executables upon installation to reduce binary
17237 sizes
17238
17239 --enable-library-stripping
17240 --disable-library-stripping
17241 strip libraries upon installation to reduce binary sizes
17242
17243 --configure-option OPT
17244 Extra option for configure
17245
17246 --user
17247 --global
17248 doing a per-user installation
17249
17250 --package-db DB
17251 Append the given package database to the list of package
17252 databases used (to satisfy dependencies and register
17253 into). May be a specific file, 'global' or 'user'. The
17254 initial list is ['global'], ['global', 'user'], or
17255 ['global', $sandbox], depending on context. Use 'clear'
17256 to reset the list to empty. See the user guide for
17257 details.
17258
17259 -f, --flags FLAGS
17260 Force values for the given flags in Cabal conditionals in
17261 the .cabal file. E.g., --flags="debug -usebytestrings"
17262 forces the flag "debug" to true and "usebytestrings" to
17263 false.
17264
17265 --extra-include-dirs PATH
17266 A list of directories to search for header files
17267
17268 --enable-deterministic
17269 --disable-deterministic
17270 Try to be as deterministic as possible (used by the test
17271 suite)
17272
17273 --ipid IPID
17274 Installed package ID to compile this package as
17275
17276 --cid CID
17277 Installed component ID to compile this component as
17278
17279 --extra-lib-dirs PATH
17280 A list of directories to search for external libraries
17281
17282 --extra-framework-dirs PATH
17283 A list of directories to search for external frameworks
17284 (OS X only)
17285
17286 --extra-prog-path PATH
17287 A list of directories to search for required programs (in
17288 addition to the normal search locations)
17289
17290 --instantiate-with NAME=MOD
17291 A mapping of signature names to concrete module instanti‐
17292 ations.
17293
17294 --enable-tests
17295 --disable-tests
17296 dependency checking and compilation for test suites
17297 listed in the package description file.
17298
17299 --enable-coverage
17300 --disable-coverage
17301 build package with Haskell Program Coverage. (GHC only)
17302
17303 --enable-library-coverage
17304 --disable-library-coverage
17305 build package with Haskell Program Coverage. (GHC only)
17306 (DEPRECATED)
17307
17308 --enable-benchmarks
17309 --disable-benchmarks
17310 dependency checking and compilation for benchmarks listed
17311 in the package description file.
17312
17313 --enable-relocatable
17314 --disable-relocatable
17315 building a package that is relocatable. (GHC only)
17316
17317 --disable-response-files
17318 enable workaround for old versions of programs like "ar"
17319 that do not support @file arguments
17320
17321 --allow-depending-on-private-libs
17322 Allow depending on private libraries. If set, the library
17323 visibility check MUST be done externally.
17324
17325 --with-alex PATH
17326 give the path to alex
17327
17328 --with-ar PATH
17329 give the path to ar
17330
17331 --with-c2hs PATH
17332 give the path to c2hs
17333
17334 --with-cpphs PATH
17335 give the path to cpphs
17336
17337 --with-doctest PATH
17338 give the path to doctest
17339
17340 --with-gcc PATH
17341 give the path to gcc
17342
17343 --with-ghc PATH
17344 give the path to ghc
17345
17346 --with-ghc-pkg PATH
17347 give the path to ghc-pkg
17348
17349 --with-ghcjs PATH
17350 give the path to ghcjs
17351
17352 --with-ghcjs-pkg PATH
17353 give the path to ghcjs-pkg
17354
17355 --with-greencard PATH
17356 give the path to greencard
17357
17358 --with-haddock PATH
17359 give the path to haddock
17360
17361 --with-happy PATH
17362 give the path to happy
17363
17364 --with-haskell-suite PATH
17365 give the path to haskell-suite
17366
17367 --with-haskell-suite-pkg PATH
17368 give the path to haskell-suite-pkg
17369
17370 --with-hmake PATH
17371 give the path to hmake
17372
17373 --with-hpc PATH
17374 give the path to hpc
17375
17376 --with-hsc2hs PATH
17377 give the path to hsc2hs
17378
17379 --with-hscolour PATH
17380 give the path to hscolour
17381
17382 --with-jhc PATH
17383 give the path to jhc
17384
17385 --with-ld PATH
17386 give the path to ld
17387
17388 --with-pkg-config PATH
17389 give the path to pkg-config
17390
17391 --with-runghc PATH
17392 give the path to runghc
17393
17394 --with-strip PATH
17395 give the path to strip
17396
17397 --with-tar PATH
17398 give the path to tar
17399
17400 --with-uhc PATH
17401 give the path to uhc
17402
17403 --alex-option OPT
17404 give an extra option to alex (no need to quote options
17405 containing spaces)
17406
17407 --ar-option OPT
17408 give an extra option to ar (no need to quote options con‐
17409 taining spaces)
17410
17411 --c2hs-option OPT
17412 give an extra option to c2hs (no need to quote options
17413 containing spaces)
17414
17415 --cpphs-option OPT
17416 give an extra option to cpphs (no need to quote options
17417 containing spaces)
17418
17419 --doctest-option OPT
17420 give an extra option to doctest (no need to quote options
17421 containing spaces)
17422
17423 --gcc-option OPT
17424 give an extra option to gcc (no need to quote options
17425 containing spaces)
17426
17427 --ghc-option OPT
17428 give an extra option to ghc (no need to quote options
17429 containing spaces)
17430
17431 --ghc-pkg-option OPT
17432 give an extra option to ghc-pkg (no need to quote options
17433 containing spaces)
17434
17435 --ghcjs-option OPT
17436 give an extra option to ghcjs (no need to quote options
17437 containing spaces)
17438
17439 --ghcjs-pkg-option OPT
17440 give an extra option to ghcjs-pkg (no need to quote
17441 options containing spaces)
17442
17443 --greencard-option OPT
17444 give an extra option to greencard (no need to quote
17445 options containing spaces)
17446
17447 --haddock-option OPT
17448 give an extra option to haddock (no need to quote options
17449 containing spaces)
17450
17451 --happy-option OPT
17452 give an extra option to happy (no need to quote options
17453 containing spaces)
17454
17455 --haskell-suite-option OPT
17456 give an extra option to haskell-suite (no need to quote
17457 options containing spaces)
17458
17459 --haskell-suite-pkg-option OPT
17460 give an extra option to haskell-suite-pkg (no need to
17461 quote options containing spaces)
17462
17463 --hmake-option OPT
17464 give an extra option to hmake (no need to quote options
17465 containing spaces)
17466
17467 --hpc-option OPT
17468 give an extra option to hpc (no need to quote options
17469 containing spaces)
17470
17471 --hsc2hs-option OPT
17472 give an extra option to hsc2hs (no need to quote options
17473 containing spaces)
17474
17475 --hscolour-option OPT
17476 give an extra option to hscolour (no need to quote
17477 options containing spaces)
17478
17479 --jhc-option OPT
17480 give an extra option to jhc (no need to quote options
17481 containing spaces)
17482
17483 --ld-option OPT
17484 give an extra option to ld (no need to quote options con‐
17485 taining spaces)
17486
17487 --pkg-config-option OPT
17488 give an extra option to pkg-config (no need to quote
17489 options containing spaces)
17490
17491 --runghc-option OPT
17492 give an extra option to runghc (no need to quote options
17493 containing spaces)
17494
17495 --strip-option OPT
17496 give an extra option to strip (no need to quote options
17497 containing spaces)
17498
17499 --tar-option OPT
17500 give an extra option to tar (no need to quote options
17501 containing spaces)
17502
17503 --uhc-option OPT
17504 give an extra option to uhc (no need to quote options
17505 containing spaces)
17506
17507 --alex-options OPTS
17508 give extra options to alex
17509
17510 --ar-options OPTS
17511 give extra options to ar
17512
17513 --c2hs-options OPTS
17514 give extra options to c2hs
17515
17516 --cpphs-options OPTS
17517 give extra options to cpphs
17518
17519 --doctest-options OPTS
17520 give extra options to doctest
17521
17522 --gcc-options OPTS
17523 give extra options to gcc
17524
17525 --ghc-options OPTS
17526 give extra options to ghc
17527
17528 --ghc-pkg-options OPTS
17529 give extra options to ghc-pkg
17530
17531 --ghcjs-options OPTS
17532 give extra options to ghcjs
17533
17534 --ghcjs-pkg-options OPTS
17535 give extra options to ghcjs-pkg
17536
17537 --greencard-options OPTS
17538 give extra options to greencard
17539
17540 --haddock-options OPTS
17541 give extra options to haddock
17542
17543 --happy-options OPTS
17544 give extra options to happy
17545
17546 --haskell-suite-options OPTS
17547 give extra options to haskell-suite
17548
17549 --haskell-suite-pkg-options OPTS
17550 give extra options to haskell-suite-pkg
17551
17552 --hmake-options OPTS
17553 give extra options to hmake
17554
17555 --hpc-options OPTS
17556 give extra options to hpc
17557
17558 --hsc2hs-options OPTS
17559 give extra options to hsc2hs
17560
17561 --hscolour-options OPTS
17562 give extra options to hscolour
17563
17564 --jhc-options OPTS
17565 give extra options to jhc
17566
17567 --ld-options OPTS
17568 give extra options to ld
17569
17570 --pkg-config-options OPTS
17571 give extra options to pkg-config
17572
17573 --runghc-options OPTS
17574 give extra options to runghc
17575
17576 --strip-options OPTS
17577 give extra options to strip
17578
17579 --tar-options OPTS
17580 give extra options to tar
17581
17582 --uhc-options OPTS
17583 give extra options to uhc
17584
17585 --cabal-lib-version VERSION
17586 Select which version of the Cabal lib to use to build
17587 packages (useful for testing).
17588
17589 --constraint CONSTRAINT
17590 Specify constraints on a package (version,
17591 installed/source, flags)
17592
17593 --preference CONSTRAINT
17594 Specify preferences (soft constraints) on the version of
17595 a package
17596
17597 --solver SOLVER
17598 Select dependency solver to use (default: modular).
17599 Choices: modular.
17600
17601 --allow-older [DEPS]
17602 Ignore lower bounds in all dependencies or DEPS
17603
17604 --allow-newer [DEPS]
17605 Ignore upper bounds in all dependencies or DEPS
17606
17607 --write-ghc-environment-files always|never|ghc8.4.4+
17608 Whether to create a .ghc.environment file after a suc‐
17609 cessful build (v2-build only)
17610
17611 --enable-documentation
17612 --disable-documentation
17613 building of documentation
17614
17615 --doc-index-file TEMPLATE
17616 A central index of haddock API documentation (template
17617 cannot use $pkgid)
17618
17619 --dry-run
17620 Do not install anything, only print what would be
17621 installed.
17622
17623 --max-backjumps NUM
17624 Maximum number of backjumps allowed while solving
17625 (default: 4000). Use a negative number to enable unlim‐
17626 ited backtracking. Use 0 to disable backtracking com‐
17627 pletely.
17628
17629 --reorder-goals
17630 --no-reorder-goals
17631 Try to reorder goals according to certain heuristics.
17632 Slows things down on average, but may make backtracking
17633 faster for some packages.
17634
17635 --count-conflicts
17636 --no-count-conflicts
17637 Try to speed up solving by preferring goals that are
17638 involved in a lot of conflicts (default).
17639
17640 --minimize-conflict-set
17641 --no-minimize-conflict-set
17642 When there is no solution, try to improve the error mes‐
17643 sage by finding a minimal conflict set (default: false).
17644 May increase run time significantly.
17645
17646 --independent-goals
17647 --no-independent-goals
17648 Treat several goals on the command line as independent.
17649 If several goals depend on the same package, different
17650 versions can be chosen.
17651
17652 --shadow-installed-packages
17653 --no-shadow-installed-packages
17654 If multiple package instances of the same version are
17655 installed, treat all but one as shadowed.
17656
17657 --strong-flags
17658 --no-strong-flags
17659 Do not defer flag choices (this used to be the default in
17660 cabal-install <= 1.20).
17661
17662 --allow-boot-library-installs
17663 --no-allow-boot-library-installs
17664 Allow cabal to install base, ghc-prim, integer-simple,
17665 integer-gmp, and template-haskell.
17666
17667 --reject-unconstrained-dependencies none|all
17668 Require these packages to have constraints on them if
17669 they are to be selected (default: none).
17670
17671 --reinstall
17672 --no-reinstall
17673 Install even if it means installing the same version
17674 again.
17675
17676 --avoid-reinstalls
17677 --no-avoid-reinstalls
17678 Do not select versions that would destructively overwrite
17679 installed packages.
17680
17681 --force-reinstalls
17682 --no-force-reinstalls
17683 Reinstall packages even if they will most likely break
17684 other installed packages.
17685
17686 --upgrade-dependencies
17687 --no-upgrade-dependencies
17688 Pick the latest version for all dependencies, rather than
17689 trying to pick an installed version.
17690
17691 --only-dependencies
17692 --no-only-dependencies
17693 Install only the dependencies necessary to build the
17694 given packages
17695
17696 --dependencies-only
17697 --no-dependencies-only
17698 A synonym for --only-dependencies
17699
17700 --index-state STATE
17701 Use source package index state as it existed at a previ‐
17702 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
17703 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
17704 'HEAD' (default: 'HEAD').
17705
17706 --root-cmd COMMAND
17707 (No longer supported, do not use.)
17708
17709 --symlink-bindir DIR
17710 Add symlinks to installed executables into this direc‐
17711 tory.
17712
17713 --build-summary TEMPLATE
17714 Save build summaries to file (name template can use
17715 $pkgid, $compiler, $os, $arch)
17716
17717 --build-log TEMPLATE
17718 Log all builds to file (name template can use $pkgid,
17719 $compiler, $os, $arch)
17720
17721 --remote-build-reporting LEVEL
17722 Generate build reports to send to a remote server (none,
17723 anonymous or detailed).
17724
17725 --report-planning-failure
17726 Generate build reports when the dependency solver fails.
17727 This is used by the Hackage build bot.
17728
17729 --enable-per-component
17730 --disable-per-component
17731 Per-component builds when possible
17732
17733 --one-shot
17734 --no-one-shot
17735 Do not record the packages in the world file.
17736
17737 --run-tests
17738 Run package test suites during installation.
17739
17740 -j, --jobs [NUM]
17741 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
17742 given).
17743
17744 --keep-going
17745 After a build failure, continue to build other unaffected
17746 packages.
17747
17748 --offline
17749 --no-offline
17750 Don't download packages from the Internet.
17751
17752 --project-file FILE
17753 Set the name of the cabal.project file to search for in
17754 parent directories
17755
17756 --only
17757 Only installs the package in the current directory.
17758
17759 --haddock-hoogle
17760 Generate a hoogle database
17761
17762 --haddock-html
17763 Generate HTML documentation (the default)
17764
17765 --haddock-html-location URL
17766 Location of HTML documentation for pre-requisite packages
17767
17768 --haddock-for-hackage
17769 Collection of flags to generate documentation suitable
17770 for upload to hackage
17771
17772 --haddock-executables
17773 Run haddock for Executables targets
17774
17775 --haddock-tests
17776 Run haddock for Test Suite targets
17777
17778 --haddock-benchmarks
17779 Run haddock for Benchmark targets
17780
17781 --haddock-all
17782 Run haddock for all targets
17783
17784 --haddock-internal
17785 Run haddock for internal modules and include all symbols
17786
17787 --haddock-css PATH
17788 Use PATH as the haddock stylesheet
17789
17790 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
17791 dock-hyperlinked-source
17792 Hyperlink the documentation to the source code
17793
17794 --haddock-quickjump
17795 Generate an index for interactive documentation naviga‐
17796 tion
17797
17798 --haddock-hscolour-css PATH
17799 Use PATH as the HsColour stylesheet
17800
17801 --haddock-contents-location URL
17802 Bake URL in as the location for the contents page
17803
17804 --test-log TEMPLATE
17805 Log all test suite results to file (name template can use
17806 $pkgid, $compiler, $os, $arch, $test-suite, $result)
17807
17808 --test-machine-log TEMPLATE
17809 Produce a machine-readable log file (name template can
17810 use $pkgid, $compiler, $os, $arch, $result)
17811
17812 --test-show-details FILTER
17813
17814 --test-keep-tix-files
17815 keep .tix files for HPC between test runs
17816
17817 --test-wrapper FILE
17818 Run test through a wrapper.
17819
17820 --test-fail-when-no-test-suites
17821 Exit with failure when no test suites are found.
17822
17823 --test-options TEMPLATES
17824 give extra options to test executables (name templates
17825 can use $pkgid, $compiler, $os, $arch, $test-suite)
17826
17827 --test-option TEMPLATE
17828 give extra option to test executables (no need to quote
17829 options containing spaces, name template can use $pkgid,
17830 $compiler, $os, $arch, $test-suite)
17831
17832
17833 cabal new-run
17834
17835 Usage: cabal new-run [TARGET] [FLAGS] [-- EXECUTABLE_FLAGS]
17836
17837
17838 Runs the specified executable-like component (an executable, a test, or
17839 a benchmark), first ensuring it is up to date.
17840
17841 Any executable-like component in any package in the project can be
17842 specified. A package can be specified if contains just one executable-
17843 like. The default is to use the package in the current directory if it
17844 contains just one executable-like.
17845
17846 Extra arguments can be passed to the program, but use '--' to separate
17847 arguments for the program from arguments for cabal. The executable is
17848 run in an environment where it can find its data files inplace in the
17849 build tree.
17850
17851 Dependencies are built or rebuilt as necessary. Additional configura‐
17852 tion flags can be specified on the command line and these extend the
17853 project configuration from the 'cabal.project', 'cabal.project.local'
17854 and other files.
17855
17856
17857 Runs the specified executable-like component (an executable, a test, or
17858 a benchmark), first ensuring it is up to date.
17859
17860 Any executable-like component in any package in the project can be
17861 specified. A package can be specified if contains just one executable-
17862 like. The default is to use the package in the current directory if it
17863 contains just one executable-like.
17864
17865 Extra arguments can be passed to the program, but use '--' to separate
17866 arguments for the program from arguments for cabal. The executable is
17867 run in an environment where it can find its data files inplace in the
17868 build tree.
17869
17870 Dependencies are built or rebuilt as necessary. Additional configura‐
17871 tion flags can be specified on the command line and these extend the
17872 project configuration from the 'cabal.project', 'cabal.project.local'
17873 and other files.
17874
17875
17876 Flags:
17877 -v, --verbose [n]
17878 Control verbosity (n is 0--3, default verbosity level is
17879 1)
17880
17881 --builddir, --distdir, --distpref DIR
17882 The directory where Cabal puts generated build files
17883 (default dist)
17884
17885 -g, --ghc
17886 compile with GHC
17887
17888 --ghcjs
17889 compile with GHCJS
17890
17891 --uhc
17892 compile with UHC
17893
17894 --haskell-suite
17895 compile with a haskell-suite compiler
17896
17897 --cabal-file PATH
17898 use this Cabal file
17899
17900 -w, --with-compiler PATH
17901 give the path to a particular compiler
17902
17903 --with-hc-pkg PATH
17904 give the path to the package tool
17905
17906 --prefix DIR
17907 bake this prefix in preparation of installation
17908
17909 --bindir DIR
17910 installation directory for executables
17911
17912 --libdir DIR
17913 installation directory for libraries
17914
17915 --libsubdir DIR
17916 subdirectory of libdir in which libs are installed
17917
17918 --dynlibdir DIR
17919 installation directory for dynamic libraries
17920
17921 --libexecdir DIR
17922 installation directory for program executables
17923
17924 --libexecsubdir DIR
17925 subdirectory of libexecdir in which private executables
17926 are installed
17927
17928 --datadir DIR
17929 installation directory for read-only data
17930
17931 --datasubdir DIR
17932 subdirectory of datadir in which data files are installed
17933
17934 --docdir DIR
17935 installation directory for documentation
17936
17937 --htmldir DIR
17938 installation directory for HTML documentation
17939
17940 --haddockdir DIR
17941 installation directory for haddock interfaces
17942
17943 --sysconfdir DIR
17944 installation directory for configuration files
17945
17946 --program-prefix PREFIX
17947 prefix to be applied to installed executables
17948
17949 --program-suffix SUFFIX
17950 suffix to be applied to installed executables
17951
17952 --enable-library-vanilla
17953 --disable-library-vanilla
17954 Vanilla libraries
17955
17956 -p, --enable-library-profiling
17957 --disable-library-profiling
17958 Library profiling
17959
17960 --enable-shared
17961 --disable-shared
17962 Shared library
17963
17964 --enable-static
17965 --disable-static
17966 Static library
17967
17968 --enable-executable-dynamic
17969 --disable-executable-dynamic
17970 Executable dynamic linking
17971
17972 --enable-executable-static
17973 --disable-executable-static
17974 Executable fully static linking
17975
17976 --enable-profiling
17977 --disable-profiling
17978 Executable and library profiling
17979
17980 --enable-executable-profiling
17981 --disable-executable-profiling
17982 Executable profiling (DEPRECATED)
17983
17984 --profiling-detail level
17985 Profiling detail level for executable and library
17986 (default, none, exported-functions, toplevel-functions,
17987 all-functions).
17988
17989 --library-profiling-detail level
17990 Profiling detail level for libraries only.
17991
17992 -O, --enable-optimization, --enable-optimisation [n]
17993 Build with optimization (n is 0--2, default is 1)
17994
17995 --disable-optimization, --disable-optimisation
17996 Build without optimization
17997
17998 --enable-debug-info [n]
17999 Emit debug info (n is 0--3, default is 0)
18000
18001 --disable-debug-info
18002 Don't emit debug info
18003
18004 --enable-library-for-ghci
18005 --disable-library-for-ghci
18006 compile library for use with GHCi
18007
18008 --enable-split-sections
18009 --disable-split-sections
18010 compile library code such that unneeded definitions can
18011 be dropped from the final executable (GHC 7.8+)
18012
18013 --enable-split-objs
18014 --disable-split-objs
18015 split library into smaller objects to reduce binary sizes
18016 (GHC 6.6+)
18017
18018 --enable-executable-stripping
18019 --disable-executable-stripping
18020 strip executables upon installation to reduce binary
18021 sizes
18022
18023 --enable-library-stripping
18024 --disable-library-stripping
18025 strip libraries upon installation to reduce binary sizes
18026
18027 --configure-option OPT
18028 Extra option for configure
18029
18030 --user
18031 --global
18032 doing a per-user installation
18033
18034 --package-db DB
18035 Append the given package database to the list of package
18036 databases used (to satisfy dependencies and register
18037 into). May be a specific file, 'global' or 'user'. The
18038 initial list is ['global'], ['global', 'user'], or
18039 ['global', $sandbox], depending on context. Use 'clear'
18040 to reset the list to empty. See the user guide for
18041 details.
18042
18043 -f, --flags FLAGS
18044 Force values for the given flags in Cabal conditionals in
18045 the .cabal file. E.g., --flags="debug -usebytestrings"
18046 forces the flag "debug" to true and "usebytestrings" to
18047 false.
18048
18049 --extra-include-dirs PATH
18050 A list of directories to search for header files
18051
18052 --enable-deterministic
18053 --disable-deterministic
18054 Try to be as deterministic as possible (used by the test
18055 suite)
18056
18057 --ipid IPID
18058 Installed package ID to compile this package as
18059
18060 --cid CID
18061 Installed component ID to compile this component as
18062
18063 --extra-lib-dirs PATH
18064 A list of directories to search for external libraries
18065
18066 --extra-framework-dirs PATH
18067 A list of directories to search for external frameworks
18068 (OS X only)
18069
18070 --extra-prog-path PATH
18071 A list of directories to search for required programs (in
18072 addition to the normal search locations)
18073
18074 --instantiate-with NAME=MOD
18075 A mapping of signature names to concrete module instanti‐
18076 ations.
18077
18078 --enable-tests
18079 --disable-tests
18080 dependency checking and compilation for test suites
18081 listed in the package description file.
18082
18083 --enable-coverage
18084 --disable-coverage
18085 build package with Haskell Program Coverage. (GHC only)
18086
18087 --enable-library-coverage
18088 --disable-library-coverage
18089 build package with Haskell Program Coverage. (GHC only)
18090 (DEPRECATED)
18091
18092 --enable-benchmarks
18093 --disable-benchmarks
18094 dependency checking and compilation for benchmarks listed
18095 in the package description file.
18096
18097 --enable-relocatable
18098 --disable-relocatable
18099 building a package that is relocatable. (GHC only)
18100
18101 --disable-response-files
18102 enable workaround for old versions of programs like "ar"
18103 that do not support @file arguments
18104
18105 --allow-depending-on-private-libs
18106 Allow depending on private libraries. If set, the library
18107 visibility check MUST be done externally.
18108
18109 --with-alex PATH
18110 give the path to alex
18111
18112 --with-ar PATH
18113 give the path to ar
18114
18115 --with-c2hs PATH
18116 give the path to c2hs
18117
18118 --with-cpphs PATH
18119 give the path to cpphs
18120
18121 --with-doctest PATH
18122 give the path to doctest
18123
18124 --with-gcc PATH
18125 give the path to gcc
18126
18127 --with-ghc PATH
18128 give the path to ghc
18129
18130 --with-ghc-pkg PATH
18131 give the path to ghc-pkg
18132
18133 --with-ghcjs PATH
18134 give the path to ghcjs
18135
18136 --with-ghcjs-pkg PATH
18137 give the path to ghcjs-pkg
18138
18139 --with-greencard PATH
18140 give the path to greencard
18141
18142 --with-haddock PATH
18143 give the path to haddock
18144
18145 --with-happy PATH
18146 give the path to happy
18147
18148 --with-haskell-suite PATH
18149 give the path to haskell-suite
18150
18151 --with-haskell-suite-pkg PATH
18152 give the path to haskell-suite-pkg
18153
18154 --with-hmake PATH
18155 give the path to hmake
18156
18157 --with-hpc PATH
18158 give the path to hpc
18159
18160 --with-hsc2hs PATH
18161 give the path to hsc2hs
18162
18163 --with-hscolour PATH
18164 give the path to hscolour
18165
18166 --with-jhc PATH
18167 give the path to jhc
18168
18169 --with-ld PATH
18170 give the path to ld
18171
18172 --with-pkg-config PATH
18173 give the path to pkg-config
18174
18175 --with-runghc PATH
18176 give the path to runghc
18177
18178 --with-strip PATH
18179 give the path to strip
18180
18181 --with-tar PATH
18182 give the path to tar
18183
18184 --with-uhc PATH
18185 give the path to uhc
18186
18187 --alex-option OPT
18188 give an extra option to alex (no need to quote options
18189 containing spaces)
18190
18191 --ar-option OPT
18192 give an extra option to ar (no need to quote options con‐
18193 taining spaces)
18194
18195 --c2hs-option OPT
18196 give an extra option to c2hs (no need to quote options
18197 containing spaces)
18198
18199 --cpphs-option OPT
18200 give an extra option to cpphs (no need to quote options
18201 containing spaces)
18202
18203 --doctest-option OPT
18204 give an extra option to doctest (no need to quote options
18205 containing spaces)
18206
18207 --gcc-option OPT
18208 give an extra option to gcc (no need to quote options
18209 containing spaces)
18210
18211 --ghc-option OPT
18212 give an extra option to ghc (no need to quote options
18213 containing spaces)
18214
18215 --ghc-pkg-option OPT
18216 give an extra option to ghc-pkg (no need to quote options
18217 containing spaces)
18218
18219 --ghcjs-option OPT
18220 give an extra option to ghcjs (no need to quote options
18221 containing spaces)
18222
18223 --ghcjs-pkg-option OPT
18224 give an extra option to ghcjs-pkg (no need to quote
18225 options containing spaces)
18226
18227 --greencard-option OPT
18228 give an extra option to greencard (no need to quote
18229 options containing spaces)
18230
18231 --haddock-option OPT
18232 give an extra option to haddock (no need to quote options
18233 containing spaces)
18234
18235 --happy-option OPT
18236 give an extra option to happy (no need to quote options
18237 containing spaces)
18238
18239 --haskell-suite-option OPT
18240 give an extra option to haskell-suite (no need to quote
18241 options containing spaces)
18242
18243 --haskell-suite-pkg-option OPT
18244 give an extra option to haskell-suite-pkg (no need to
18245 quote options containing spaces)
18246
18247 --hmake-option OPT
18248 give an extra option to hmake (no need to quote options
18249 containing spaces)
18250
18251 --hpc-option OPT
18252 give an extra option to hpc (no need to quote options
18253 containing spaces)
18254
18255 --hsc2hs-option OPT
18256 give an extra option to hsc2hs (no need to quote options
18257 containing spaces)
18258
18259 --hscolour-option OPT
18260 give an extra option to hscolour (no need to quote
18261 options containing spaces)
18262
18263 --jhc-option OPT
18264 give an extra option to jhc (no need to quote options
18265 containing spaces)
18266
18267 --ld-option OPT
18268 give an extra option to ld (no need to quote options con‐
18269 taining spaces)
18270
18271 --pkg-config-option OPT
18272 give an extra option to pkg-config (no need to quote
18273 options containing spaces)
18274
18275 --runghc-option OPT
18276 give an extra option to runghc (no need to quote options
18277 containing spaces)
18278
18279 --strip-option OPT
18280 give an extra option to strip (no need to quote options
18281 containing spaces)
18282
18283 --tar-option OPT
18284 give an extra option to tar (no need to quote options
18285 containing spaces)
18286
18287 --uhc-option OPT
18288 give an extra option to uhc (no need to quote options
18289 containing spaces)
18290
18291 --alex-options OPTS
18292 give extra options to alex
18293
18294 --ar-options OPTS
18295 give extra options to ar
18296
18297 --c2hs-options OPTS
18298 give extra options to c2hs
18299
18300 --cpphs-options OPTS
18301 give extra options to cpphs
18302
18303 --doctest-options OPTS
18304 give extra options to doctest
18305
18306 --gcc-options OPTS
18307 give extra options to gcc
18308
18309 --ghc-options OPTS
18310 give extra options to ghc
18311
18312 --ghc-pkg-options OPTS
18313 give extra options to ghc-pkg
18314
18315 --ghcjs-options OPTS
18316 give extra options to ghcjs
18317
18318 --ghcjs-pkg-options OPTS
18319 give extra options to ghcjs-pkg
18320
18321 --greencard-options OPTS
18322 give extra options to greencard
18323
18324 --haddock-options OPTS
18325 give extra options to haddock
18326
18327 --happy-options OPTS
18328 give extra options to happy
18329
18330 --haskell-suite-options OPTS
18331 give extra options to haskell-suite
18332
18333 --haskell-suite-pkg-options OPTS
18334 give extra options to haskell-suite-pkg
18335
18336 --hmake-options OPTS
18337 give extra options to hmake
18338
18339 --hpc-options OPTS
18340 give extra options to hpc
18341
18342 --hsc2hs-options OPTS
18343 give extra options to hsc2hs
18344
18345 --hscolour-options OPTS
18346 give extra options to hscolour
18347
18348 --jhc-options OPTS
18349 give extra options to jhc
18350
18351 --ld-options OPTS
18352 give extra options to ld
18353
18354 --pkg-config-options OPTS
18355 give extra options to pkg-config
18356
18357 --runghc-options OPTS
18358 give extra options to runghc
18359
18360 --strip-options OPTS
18361 give extra options to strip
18362
18363 --tar-options OPTS
18364 give extra options to tar
18365
18366 --uhc-options OPTS
18367 give extra options to uhc
18368
18369 --cabal-lib-version VERSION
18370 Select which version of the Cabal lib to use to build
18371 packages (useful for testing).
18372
18373 --constraint CONSTRAINT
18374 Specify constraints on a package (version,
18375 installed/source, flags)
18376
18377 --preference CONSTRAINT
18378 Specify preferences (soft constraints) on the version of
18379 a package
18380
18381 --solver SOLVER
18382 Select dependency solver to use (default: modular).
18383 Choices: modular.
18384
18385 --allow-older [DEPS]
18386 Ignore lower bounds in all dependencies or DEPS
18387
18388 --allow-newer [DEPS]
18389 Ignore upper bounds in all dependencies or DEPS
18390
18391 --write-ghc-environment-files always|never|ghc8.4.4+
18392 Whether to create a .ghc.environment file after a suc‐
18393 cessful build (v2-build only)
18394
18395 --enable-documentation
18396 --disable-documentation
18397 building of documentation
18398
18399 --doc-index-file TEMPLATE
18400 A central index of haddock API documentation (template
18401 cannot use $pkgid)
18402
18403 --dry-run
18404 Do not install anything, only print what would be
18405 installed.
18406
18407 --max-backjumps NUM
18408 Maximum number of backjumps allowed while solving
18409 (default: 4000). Use a negative number to enable unlim‐
18410 ited backtracking. Use 0 to disable backtracking com‐
18411 pletely.
18412
18413 --reorder-goals
18414 --no-reorder-goals
18415 Try to reorder goals according to certain heuristics.
18416 Slows things down on average, but may make backtracking
18417 faster for some packages.
18418
18419 --count-conflicts
18420 --no-count-conflicts
18421 Try to speed up solving by preferring goals that are
18422 involved in a lot of conflicts (default).
18423
18424 --minimize-conflict-set
18425 --no-minimize-conflict-set
18426 When there is no solution, try to improve the error mes‐
18427 sage by finding a minimal conflict set (default: false).
18428 May increase run time significantly.
18429
18430 --independent-goals
18431 --no-independent-goals
18432 Treat several goals on the command line as independent.
18433 If several goals depend on the same package, different
18434 versions can be chosen.
18435
18436 --shadow-installed-packages
18437 --no-shadow-installed-packages
18438 If multiple package instances of the same version are
18439 installed, treat all but one as shadowed.
18440
18441 --strong-flags
18442 --no-strong-flags
18443 Do not defer flag choices (this used to be the default in
18444 cabal-install <= 1.20).
18445
18446 --allow-boot-library-installs
18447 --no-allow-boot-library-installs
18448 Allow cabal to install base, ghc-prim, integer-simple,
18449 integer-gmp, and template-haskell.
18450
18451 --reject-unconstrained-dependencies none|all
18452 Require these packages to have constraints on them if
18453 they are to be selected (default: none).
18454
18455 --reinstall
18456 --no-reinstall
18457 Install even if it means installing the same version
18458 again.
18459
18460 --avoid-reinstalls
18461 --no-avoid-reinstalls
18462 Do not select versions that would destructively overwrite
18463 installed packages.
18464
18465 --force-reinstalls
18466 --no-force-reinstalls
18467 Reinstall packages even if they will most likely break
18468 other installed packages.
18469
18470 --upgrade-dependencies
18471 --no-upgrade-dependencies
18472 Pick the latest version for all dependencies, rather than
18473 trying to pick an installed version.
18474
18475 --only-dependencies
18476 --no-only-dependencies
18477 Install only the dependencies necessary to build the
18478 given packages
18479
18480 --dependencies-only
18481 --no-dependencies-only
18482 A synonym for --only-dependencies
18483
18484 --index-state STATE
18485 Use source package index state as it existed at a previ‐
18486 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
18487 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
18488 'HEAD' (default: 'HEAD').
18489
18490 --root-cmd COMMAND
18491 (No longer supported, do not use.)
18492
18493 --symlink-bindir DIR
18494 Add symlinks to installed executables into this direc‐
18495 tory.
18496
18497 --build-summary TEMPLATE
18498 Save build summaries to file (name template can use
18499 $pkgid, $compiler, $os, $arch)
18500
18501 --build-log TEMPLATE
18502 Log all builds to file (name template can use $pkgid,
18503 $compiler, $os, $arch)
18504
18505 --remote-build-reporting LEVEL
18506 Generate build reports to send to a remote server (none,
18507 anonymous or detailed).
18508
18509 --report-planning-failure
18510 Generate build reports when the dependency solver fails.
18511 This is used by the Hackage build bot.
18512
18513 --enable-per-component
18514 --disable-per-component
18515 Per-component builds when possible
18516
18517 --one-shot
18518 --no-one-shot
18519 Do not record the packages in the world file.
18520
18521 --run-tests
18522 Run package test suites during installation.
18523
18524 -j, --jobs [NUM]
18525 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
18526 given).
18527
18528 --keep-going
18529 After a build failure, continue to build other unaffected
18530 packages.
18531
18532 --offline
18533 --no-offline
18534 Don't download packages from the Internet.
18535
18536 --project-file FILE
18537 Set the name of the cabal.project file to search for in
18538 parent directories
18539
18540 --only
18541 Only installs the package in the current directory.
18542
18543 --haddock-hoogle
18544 Generate a hoogle database
18545
18546 --haddock-html
18547 Generate HTML documentation (the default)
18548
18549 --haddock-html-location URL
18550 Location of HTML documentation for pre-requisite packages
18551
18552 --haddock-for-hackage
18553 Collection of flags to generate documentation suitable
18554 for upload to hackage
18555
18556 --haddock-executables
18557 Run haddock for Executables targets
18558
18559 --haddock-tests
18560 Run haddock for Test Suite targets
18561
18562 --haddock-benchmarks
18563 Run haddock for Benchmark targets
18564
18565 --haddock-all
18566 Run haddock for all targets
18567
18568 --haddock-internal
18569 Run haddock for internal modules and include all symbols
18570
18571 --haddock-css PATH
18572 Use PATH as the haddock stylesheet
18573
18574 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
18575 dock-hyperlinked-source
18576 Hyperlink the documentation to the source code
18577
18578 --haddock-quickjump
18579 Generate an index for interactive documentation naviga‐
18580 tion
18581
18582 --haddock-hscolour-css PATH
18583 Use PATH as the HsColour stylesheet
18584
18585 --haddock-contents-location URL
18586 Bake URL in as the location for the contents page
18587
18588 --test-log TEMPLATE
18589 Log all test suite results to file (name template can use
18590 $pkgid, $compiler, $os, $arch, $test-suite, $result)
18591
18592 --test-machine-log TEMPLATE
18593 Produce a machine-readable log file (name template can
18594 use $pkgid, $compiler, $os, $arch, $result)
18595
18596 --test-show-details FILTER
18597
18598 --test-keep-tix-files
18599 keep .tix files for HPC between test runs
18600
18601 --test-wrapper FILE
18602 Run test through a wrapper.
18603
18604 --test-fail-when-no-test-suites
18605 Exit with failure when no test suites are found.
18606
18607 --test-options TEMPLATES
18608 give extra options to test executables (name templates
18609 can use $pkgid, $compiler, $os, $arch, $test-suite)
18610
18611 --test-option TEMPLATE
18612 give extra option to test executables (no need to quote
18613 options containing spaces, name template can use $pkgid,
18614 $compiler, $os, $arch, $test-suite)
18615
18616
18617 cabal v2-run
18618
18619 Usage: cabal v2-run [TARGET] [FLAGS] [-- EXECUTABLE_FLAGS]
18620
18621
18622 Runs the specified executable-like component (an executable, a test, or
18623 a benchmark), first ensuring it is up to date.
18624
18625 Any executable-like component in any package in the project can be
18626 specified. A package can be specified if contains just one executable-
18627 like. The default is to use the package in the current directory if it
18628 contains just one executable-like.
18629
18630 Extra arguments can be passed to the program, but use '--' to separate
18631 arguments for the program from arguments for cabal. The executable is
18632 run in an environment where it can find its data files inplace in the
18633 build tree.
18634
18635 Dependencies are built or rebuilt as necessary. Additional configura‐
18636 tion flags can be specified on the command line and these extend the
18637 project configuration from the 'cabal.project', 'cabal.project.local'
18638 and other files.
18639
18640
18641 Examples:
18642 cabal v2-run
18643 Run the executable-like in the package in the current directory
18644 cabal v2-run foo-tool
18645 Run the named executable-like (in any package in the project)
18646 cabal v2-run pkgfoo:foo-tool
18647 Run the executable-like 'foo-tool' in the package 'pkgfoo'
18648 cabal v2-run foo -O2 -- dothing --fooflag
18649 Build with '-O2' and run the program, passing it extra arguments.
18650
18651 Note: this command is part of the new project-based system (aka nix-
18652 style local builds). These features are currently in beta. Please see
18653 http://cabal.readthedocs.io/en/latest/nix-local-build-overview.html for
18654 details and advice on what you can expect to work. If you encounter
18655 problems please file issues at https://github.com/haskell/cabal/issues
18656 and if you have any time to get involved and help with testing, fixing
18657 bugs etc then that is very much appreciated.
18658
18659
18660 Flags:
18661 -v, --verbose [n]
18662 Control verbosity (n is 0--3, default verbosity level is
18663 1)
18664
18665 --builddir, --distdir, --distpref DIR
18666 The directory where Cabal puts generated build files
18667 (default dist)
18668
18669 -g, --ghc
18670 compile with GHC
18671
18672 --ghcjs
18673 compile with GHCJS
18674
18675 --uhc
18676 compile with UHC
18677
18678 --haskell-suite
18679 compile with a haskell-suite compiler
18680
18681 --cabal-file PATH
18682 use this Cabal file
18683
18684 -w, --with-compiler PATH
18685 give the path to a particular compiler
18686
18687 --with-hc-pkg PATH
18688 give the path to the package tool
18689
18690 --prefix DIR
18691 bake this prefix in preparation of installation
18692
18693 --bindir DIR
18694 installation directory for executables
18695
18696 --libdir DIR
18697 installation directory for libraries
18698
18699 --libsubdir DIR
18700 subdirectory of libdir in which libs are installed
18701
18702 --dynlibdir DIR
18703 installation directory for dynamic libraries
18704
18705 --libexecdir DIR
18706 installation directory for program executables
18707
18708 --libexecsubdir DIR
18709 subdirectory of libexecdir in which private executables
18710 are installed
18711
18712 --datadir DIR
18713 installation directory for read-only data
18714
18715 --datasubdir DIR
18716 subdirectory of datadir in which data files are installed
18717
18718 --docdir DIR
18719 installation directory for documentation
18720
18721 --htmldir DIR
18722 installation directory for HTML documentation
18723
18724 --haddockdir DIR
18725 installation directory for haddock interfaces
18726
18727 --sysconfdir DIR
18728 installation directory for configuration files
18729
18730 --program-prefix PREFIX
18731 prefix to be applied to installed executables
18732
18733 --program-suffix SUFFIX
18734 suffix to be applied to installed executables
18735
18736 --enable-library-vanilla
18737 --disable-library-vanilla
18738 Vanilla libraries
18739
18740 -p, --enable-library-profiling
18741 --disable-library-profiling
18742 Library profiling
18743
18744 --enable-shared
18745 --disable-shared
18746 Shared library
18747
18748 --enable-static
18749 --disable-static
18750 Static library
18751
18752 --enable-executable-dynamic
18753 --disable-executable-dynamic
18754 Executable dynamic linking
18755
18756 --enable-executable-static
18757 --disable-executable-static
18758 Executable fully static linking
18759
18760 --enable-profiling
18761 --disable-profiling
18762 Executable and library profiling
18763
18764 --enable-executable-profiling
18765 --disable-executable-profiling
18766 Executable profiling (DEPRECATED)
18767
18768 --profiling-detail level
18769 Profiling detail level for executable and library
18770 (default, none, exported-functions, toplevel-functions,
18771 all-functions).
18772
18773 --library-profiling-detail level
18774 Profiling detail level for libraries only.
18775
18776 -O, --enable-optimization, --enable-optimisation [n]
18777 Build with optimization (n is 0--2, default is 1)
18778
18779 --disable-optimization, --disable-optimisation
18780 Build without optimization
18781
18782 --enable-debug-info [n]
18783 Emit debug info (n is 0--3, default is 0)
18784
18785 --disable-debug-info
18786 Don't emit debug info
18787
18788 --enable-library-for-ghci
18789 --disable-library-for-ghci
18790 compile library for use with GHCi
18791
18792 --enable-split-sections
18793 --disable-split-sections
18794 compile library code such that unneeded definitions can
18795 be dropped from the final executable (GHC 7.8+)
18796
18797 --enable-split-objs
18798 --disable-split-objs
18799 split library into smaller objects to reduce binary sizes
18800 (GHC 6.6+)
18801
18802 --enable-executable-stripping
18803 --disable-executable-stripping
18804 strip executables upon installation to reduce binary
18805 sizes
18806
18807 --enable-library-stripping
18808 --disable-library-stripping
18809 strip libraries upon installation to reduce binary sizes
18810
18811 --configure-option OPT
18812 Extra option for configure
18813
18814 --user
18815 --global
18816 doing a per-user installation
18817
18818 --package-db DB
18819 Append the given package database to the list of package
18820 databases used (to satisfy dependencies and register
18821 into). May be a specific file, 'global' or 'user'. The
18822 initial list is ['global'], ['global', 'user'], or
18823 ['global', $sandbox], depending on context. Use 'clear'
18824 to reset the list to empty. See the user guide for
18825 details.
18826
18827 -f, --flags FLAGS
18828 Force values for the given flags in Cabal conditionals in
18829 the .cabal file. E.g., --flags="debug -usebytestrings"
18830 forces the flag "debug" to true and "usebytestrings" to
18831 false.
18832
18833 --extra-include-dirs PATH
18834 A list of directories to search for header files
18835
18836 --enable-deterministic
18837 --disable-deterministic
18838 Try to be as deterministic as possible (used by the test
18839 suite)
18840
18841 --ipid IPID
18842 Installed package ID to compile this package as
18843
18844 --cid CID
18845 Installed component ID to compile this component as
18846
18847 --extra-lib-dirs PATH
18848 A list of directories to search for external libraries
18849
18850 --extra-framework-dirs PATH
18851 A list of directories to search for external frameworks
18852 (OS X only)
18853
18854 --extra-prog-path PATH
18855 A list of directories to search for required programs (in
18856 addition to the normal search locations)
18857
18858 --instantiate-with NAME=MOD
18859 A mapping of signature names to concrete module instanti‐
18860 ations.
18861
18862 --enable-tests
18863 --disable-tests
18864 dependency checking and compilation for test suites
18865 listed in the package description file.
18866
18867 --enable-coverage
18868 --disable-coverage
18869 build package with Haskell Program Coverage. (GHC only)
18870
18871 --enable-library-coverage
18872 --disable-library-coverage
18873 build package with Haskell Program Coverage. (GHC only)
18874 (DEPRECATED)
18875
18876 --enable-benchmarks
18877 --disable-benchmarks
18878 dependency checking and compilation for benchmarks listed
18879 in the package description file.
18880
18881 --enable-relocatable
18882 --disable-relocatable
18883 building a package that is relocatable. (GHC only)
18884
18885 --disable-response-files
18886 enable workaround for old versions of programs like "ar"
18887 that do not support @file arguments
18888
18889 --allow-depending-on-private-libs
18890 Allow depending on private libraries. If set, the library
18891 visibility check MUST be done externally.
18892
18893 --with-alex PATH
18894 give the path to alex
18895
18896 --with-ar PATH
18897 give the path to ar
18898
18899 --with-c2hs PATH
18900 give the path to c2hs
18901
18902 --with-cpphs PATH
18903 give the path to cpphs
18904
18905 --with-doctest PATH
18906 give the path to doctest
18907
18908 --with-gcc PATH
18909 give the path to gcc
18910
18911 --with-ghc PATH
18912 give the path to ghc
18913
18914 --with-ghc-pkg PATH
18915 give the path to ghc-pkg
18916
18917 --with-ghcjs PATH
18918 give the path to ghcjs
18919
18920 --with-ghcjs-pkg PATH
18921 give the path to ghcjs-pkg
18922
18923 --with-greencard PATH
18924 give the path to greencard
18925
18926 --with-haddock PATH
18927 give the path to haddock
18928
18929 --with-happy PATH
18930 give the path to happy
18931
18932 --with-haskell-suite PATH
18933 give the path to haskell-suite
18934
18935 --with-haskell-suite-pkg PATH
18936 give the path to haskell-suite-pkg
18937
18938 --with-hmake PATH
18939 give the path to hmake
18940
18941 --with-hpc PATH
18942 give the path to hpc
18943
18944 --with-hsc2hs PATH
18945 give the path to hsc2hs
18946
18947 --with-hscolour PATH
18948 give the path to hscolour
18949
18950 --with-jhc PATH
18951 give the path to jhc
18952
18953 --with-ld PATH
18954 give the path to ld
18955
18956 --with-pkg-config PATH
18957 give the path to pkg-config
18958
18959 --with-runghc PATH
18960 give the path to runghc
18961
18962 --with-strip PATH
18963 give the path to strip
18964
18965 --with-tar PATH
18966 give the path to tar
18967
18968 --with-uhc PATH
18969 give the path to uhc
18970
18971 --alex-option OPT
18972 give an extra option to alex (no need to quote options
18973 containing spaces)
18974
18975 --ar-option OPT
18976 give an extra option to ar (no need to quote options con‐
18977 taining spaces)
18978
18979 --c2hs-option OPT
18980 give an extra option to c2hs (no need to quote options
18981 containing spaces)
18982
18983 --cpphs-option OPT
18984 give an extra option to cpphs (no need to quote options
18985 containing spaces)
18986
18987 --doctest-option OPT
18988 give an extra option to doctest (no need to quote options
18989 containing spaces)
18990
18991 --gcc-option OPT
18992 give an extra option to gcc (no need to quote options
18993 containing spaces)
18994
18995 --ghc-option OPT
18996 give an extra option to ghc (no need to quote options
18997 containing spaces)
18998
18999 --ghc-pkg-option OPT
19000 give an extra option to ghc-pkg (no need to quote options
19001 containing spaces)
19002
19003 --ghcjs-option OPT
19004 give an extra option to ghcjs (no need to quote options
19005 containing spaces)
19006
19007 --ghcjs-pkg-option OPT
19008 give an extra option to ghcjs-pkg (no need to quote
19009 options containing spaces)
19010
19011 --greencard-option OPT
19012 give an extra option to greencard (no need to quote
19013 options containing spaces)
19014
19015 --haddock-option OPT
19016 give an extra option to haddock (no need to quote options
19017 containing spaces)
19018
19019 --happy-option OPT
19020 give an extra option to happy (no need to quote options
19021 containing spaces)
19022
19023 --haskell-suite-option OPT
19024 give an extra option to haskell-suite (no need to quote
19025 options containing spaces)
19026
19027 --haskell-suite-pkg-option OPT
19028 give an extra option to haskell-suite-pkg (no need to
19029 quote options containing spaces)
19030
19031 --hmake-option OPT
19032 give an extra option to hmake (no need to quote options
19033 containing spaces)
19034
19035 --hpc-option OPT
19036 give an extra option to hpc (no need to quote options
19037 containing spaces)
19038
19039 --hsc2hs-option OPT
19040 give an extra option to hsc2hs (no need to quote options
19041 containing spaces)
19042
19043 --hscolour-option OPT
19044 give an extra option to hscolour (no need to quote
19045 options containing spaces)
19046
19047 --jhc-option OPT
19048 give an extra option to jhc (no need to quote options
19049 containing spaces)
19050
19051 --ld-option OPT
19052 give an extra option to ld (no need to quote options con‐
19053 taining spaces)
19054
19055 --pkg-config-option OPT
19056 give an extra option to pkg-config (no need to quote
19057 options containing spaces)
19058
19059 --runghc-option OPT
19060 give an extra option to runghc (no need to quote options
19061 containing spaces)
19062
19063 --strip-option OPT
19064 give an extra option to strip (no need to quote options
19065 containing spaces)
19066
19067 --tar-option OPT
19068 give an extra option to tar (no need to quote options
19069 containing spaces)
19070
19071 --uhc-option OPT
19072 give an extra option to uhc (no need to quote options
19073 containing spaces)
19074
19075 --alex-options OPTS
19076 give extra options to alex
19077
19078 --ar-options OPTS
19079 give extra options to ar
19080
19081 --c2hs-options OPTS
19082 give extra options to c2hs
19083
19084 --cpphs-options OPTS
19085 give extra options to cpphs
19086
19087 --doctest-options OPTS
19088 give extra options to doctest
19089
19090 --gcc-options OPTS
19091 give extra options to gcc
19092
19093 --ghc-options OPTS
19094 give extra options to ghc
19095
19096 --ghc-pkg-options OPTS
19097 give extra options to ghc-pkg
19098
19099 --ghcjs-options OPTS
19100 give extra options to ghcjs
19101
19102 --ghcjs-pkg-options OPTS
19103 give extra options to ghcjs-pkg
19104
19105 --greencard-options OPTS
19106 give extra options to greencard
19107
19108 --haddock-options OPTS
19109 give extra options to haddock
19110
19111 --happy-options OPTS
19112 give extra options to happy
19113
19114 --haskell-suite-options OPTS
19115 give extra options to haskell-suite
19116
19117 --haskell-suite-pkg-options OPTS
19118 give extra options to haskell-suite-pkg
19119
19120 --hmake-options OPTS
19121 give extra options to hmake
19122
19123 --hpc-options OPTS
19124 give extra options to hpc
19125
19126 --hsc2hs-options OPTS
19127 give extra options to hsc2hs
19128
19129 --hscolour-options OPTS
19130 give extra options to hscolour
19131
19132 --jhc-options OPTS
19133 give extra options to jhc
19134
19135 --ld-options OPTS
19136 give extra options to ld
19137
19138 --pkg-config-options OPTS
19139 give extra options to pkg-config
19140
19141 --runghc-options OPTS
19142 give extra options to runghc
19143
19144 --strip-options OPTS
19145 give extra options to strip
19146
19147 --tar-options OPTS
19148 give extra options to tar
19149
19150 --uhc-options OPTS
19151 give extra options to uhc
19152
19153 --cabal-lib-version VERSION
19154 Select which version of the Cabal lib to use to build
19155 packages (useful for testing).
19156
19157 --constraint CONSTRAINT
19158 Specify constraints on a package (version,
19159 installed/source, flags)
19160
19161 --preference CONSTRAINT
19162 Specify preferences (soft constraints) on the version of
19163 a package
19164
19165 --solver SOLVER
19166 Select dependency solver to use (default: modular).
19167 Choices: modular.
19168
19169 --allow-older [DEPS]
19170 Ignore lower bounds in all dependencies or DEPS
19171
19172 --allow-newer [DEPS]
19173 Ignore upper bounds in all dependencies or DEPS
19174
19175 --write-ghc-environment-files always|never|ghc8.4.4+
19176 Whether to create a .ghc.environment file after a suc‐
19177 cessful build (v2-build only)
19178
19179 --enable-documentation
19180 --disable-documentation
19181 building of documentation
19182
19183 --doc-index-file TEMPLATE
19184 A central index of haddock API documentation (template
19185 cannot use $pkgid)
19186
19187 --dry-run
19188 Do not install anything, only print what would be
19189 installed.
19190
19191 --max-backjumps NUM
19192 Maximum number of backjumps allowed while solving
19193 (default: 4000). Use a negative number to enable unlim‐
19194 ited backtracking. Use 0 to disable backtracking com‐
19195 pletely.
19196
19197 --reorder-goals
19198 --no-reorder-goals
19199 Try to reorder goals according to certain heuristics.
19200 Slows things down on average, but may make backtracking
19201 faster for some packages.
19202
19203 --count-conflicts
19204 --no-count-conflicts
19205 Try to speed up solving by preferring goals that are
19206 involved in a lot of conflicts (default).
19207
19208 --minimize-conflict-set
19209 --no-minimize-conflict-set
19210 When there is no solution, try to improve the error mes‐
19211 sage by finding a minimal conflict set (default: false).
19212 May increase run time significantly.
19213
19214 --independent-goals
19215 --no-independent-goals
19216 Treat several goals on the command line as independent.
19217 If several goals depend on the same package, different
19218 versions can be chosen.
19219
19220 --shadow-installed-packages
19221 --no-shadow-installed-packages
19222 If multiple package instances of the same version are
19223 installed, treat all but one as shadowed.
19224
19225 --strong-flags
19226 --no-strong-flags
19227 Do not defer flag choices (this used to be the default in
19228 cabal-install <= 1.20).
19229
19230 --allow-boot-library-installs
19231 --no-allow-boot-library-installs
19232 Allow cabal to install base, ghc-prim, integer-simple,
19233 integer-gmp, and template-haskell.
19234
19235 --reject-unconstrained-dependencies none|all
19236 Require these packages to have constraints on them if
19237 they are to be selected (default: none).
19238
19239 --reinstall
19240 --no-reinstall
19241 Install even if it means installing the same version
19242 again.
19243
19244 --avoid-reinstalls
19245 --no-avoid-reinstalls
19246 Do not select versions that would destructively overwrite
19247 installed packages.
19248
19249 --force-reinstalls
19250 --no-force-reinstalls
19251 Reinstall packages even if they will most likely break
19252 other installed packages.
19253
19254 --upgrade-dependencies
19255 --no-upgrade-dependencies
19256 Pick the latest version for all dependencies, rather than
19257 trying to pick an installed version.
19258
19259 --only-dependencies
19260 --no-only-dependencies
19261 Install only the dependencies necessary to build the
19262 given packages
19263
19264 --dependencies-only
19265 --no-dependencies-only
19266 A synonym for --only-dependencies
19267
19268 --index-state STATE
19269 Use source package index state as it existed at a previ‐
19270 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
19271 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
19272 'HEAD' (default: 'HEAD').
19273
19274 --root-cmd COMMAND
19275 (No longer supported, do not use.)
19276
19277 --symlink-bindir DIR
19278 Add symlinks to installed executables into this direc‐
19279 tory.
19280
19281 --build-summary TEMPLATE
19282 Save build summaries to file (name template can use
19283 $pkgid, $compiler, $os, $arch)
19284
19285 --build-log TEMPLATE
19286 Log all builds to file (name template can use $pkgid,
19287 $compiler, $os, $arch)
19288
19289 --remote-build-reporting LEVEL
19290 Generate build reports to send to a remote server (none,
19291 anonymous or detailed).
19292
19293 --report-planning-failure
19294 Generate build reports when the dependency solver fails.
19295 This is used by the Hackage build bot.
19296
19297 --enable-per-component
19298 --disable-per-component
19299 Per-component builds when possible
19300
19301 --one-shot
19302 --no-one-shot
19303 Do not record the packages in the world file.
19304
19305 --run-tests
19306 Run package test suites during installation.
19307
19308 -j, --jobs [NUM]
19309 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
19310 given).
19311
19312 --keep-going
19313 After a build failure, continue to build other unaffected
19314 packages.
19315
19316 --offline
19317 --no-offline
19318 Don't download packages from the Internet.
19319
19320 --project-file FILE
19321 Set the name of the cabal.project file to search for in
19322 parent directories
19323
19324 --only
19325 Only installs the package in the current directory.
19326
19327 --haddock-hoogle
19328 Generate a hoogle database
19329
19330 --haddock-html
19331 Generate HTML documentation (the default)
19332
19333 --haddock-html-location URL
19334 Location of HTML documentation for pre-requisite packages
19335
19336 --haddock-for-hackage
19337 Collection of flags to generate documentation suitable
19338 for upload to hackage
19339
19340 --haddock-executables
19341 Run haddock for Executables targets
19342
19343 --haddock-tests
19344 Run haddock for Test Suite targets
19345
19346 --haddock-benchmarks
19347 Run haddock for Benchmark targets
19348
19349 --haddock-all
19350 Run haddock for all targets
19351
19352 --haddock-internal
19353 Run haddock for internal modules and include all symbols
19354
19355 --haddock-css PATH
19356 Use PATH as the haddock stylesheet
19357
19358 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
19359 dock-hyperlinked-source
19360 Hyperlink the documentation to the source code
19361
19362 --haddock-quickjump
19363 Generate an index for interactive documentation naviga‐
19364 tion
19365
19366 --haddock-hscolour-css PATH
19367 Use PATH as the HsColour stylesheet
19368
19369 --haddock-contents-location URL
19370 Bake URL in as the location for the contents page
19371
19372 --test-log TEMPLATE
19373 Log all test suite results to file (name template can use
19374 $pkgid, $compiler, $os, $arch, $test-suite, $result)
19375
19376 --test-machine-log TEMPLATE
19377 Produce a machine-readable log file (name template can
19378 use $pkgid, $compiler, $os, $arch, $result)
19379
19380 --test-show-details FILTER
19381
19382 --test-keep-tix-files
19383 keep .tix files for HPC between test runs
19384
19385 --test-wrapper FILE
19386 Run test through a wrapper.
19387
19388 --test-fail-when-no-test-suites
19389 Exit with failure when no test suites are found.
19390
19391 --test-options TEMPLATES
19392 give extra options to test executables (name templates
19393 can use $pkgid, $compiler, $os, $arch, $test-suite)
19394
19395 --test-option TEMPLATE
19396 give extra option to test executables (no need to quote
19397 options containing spaces, name template can use $pkgid,
19398 $compiler, $os, $arch, $test-suite)
19399
19400
19401 cabal test
19402
19403 Usage: cabal test [TARGETS] [FLAGS]
19404
19405
19406 Runs the specified test-suites, first ensuring they are up to date.
19407
19408 Any test-suite in any package in the project can be specified. A pack‐
19409 age can be specified in which case all the test-suites in the package
19410 are run. The default is to run all the test-suites in the package in
19411 the current directory.
19412
19413 Dependencies are built or rebuilt as necessary. Additional configura‐
19414 tion flags can be specified on the command line and these extend the
19415 project configuration from the 'cabal.project', 'cabal.project.local'
19416 and other files.
19417
19418 To pass command-line arguments to a test suite, see the run command.
19419
19420
19421 Runs the specified test-suites, first ensuring they are up to date.
19422
19423 Any test-suite in any package in the project can be specified. A pack‐
19424 age can be specified in which case all the test-suites in the package
19425 are run. The default is to run all the test-suites in the package in
19426 the current directory.
19427
19428 Dependencies are built or rebuilt as necessary. Additional configura‐
19429 tion flags can be specified on the command line and these extend the
19430 project configuration from the 'cabal.project', 'cabal.project.local'
19431 and other files.
19432
19433 To pass command-line arguments to a test suite, see the run command.
19434
19435
19436 Flags:
19437 -v, --verbose [n]
19438 Control verbosity (n is 0--3, default verbosity level is
19439 1)
19440
19441 --builddir, --distdir, --distpref DIR
19442 The directory where Cabal puts generated build files
19443 (default dist)
19444
19445 -g, --ghc
19446 compile with GHC
19447
19448 --ghcjs
19449 compile with GHCJS
19450
19451 --uhc
19452 compile with UHC
19453
19454 --haskell-suite
19455 compile with a haskell-suite compiler
19456
19457 --cabal-file PATH
19458 use this Cabal file
19459
19460 -w, --with-compiler PATH
19461 give the path to a particular compiler
19462
19463 --with-hc-pkg PATH
19464 give the path to the package tool
19465
19466 --prefix DIR
19467 bake this prefix in preparation of installation
19468
19469 --bindir DIR
19470 installation directory for executables
19471
19472 --libdir DIR
19473 installation directory for libraries
19474
19475 --libsubdir DIR
19476 subdirectory of libdir in which libs are installed
19477
19478 --dynlibdir DIR
19479 installation directory for dynamic libraries
19480
19481 --libexecdir DIR
19482 installation directory for program executables
19483
19484 --libexecsubdir DIR
19485 subdirectory of libexecdir in which private executables
19486 are installed
19487
19488 --datadir DIR
19489 installation directory for read-only data
19490
19491 --datasubdir DIR
19492 subdirectory of datadir in which data files are installed
19493
19494 --docdir DIR
19495 installation directory for documentation
19496
19497 --htmldir DIR
19498 installation directory for HTML documentation
19499
19500 --haddockdir DIR
19501 installation directory for haddock interfaces
19502
19503 --sysconfdir DIR
19504 installation directory for configuration files
19505
19506 --program-prefix PREFIX
19507 prefix to be applied to installed executables
19508
19509 --program-suffix SUFFIX
19510 suffix to be applied to installed executables
19511
19512 --enable-library-vanilla
19513 --disable-library-vanilla
19514 Vanilla libraries
19515
19516 -p, --enable-library-profiling
19517 --disable-library-profiling
19518 Library profiling
19519
19520 --enable-shared
19521 --disable-shared
19522 Shared library
19523
19524 --enable-static
19525 --disable-static
19526 Static library
19527
19528 --enable-executable-dynamic
19529 --disable-executable-dynamic
19530 Executable dynamic linking
19531
19532 --enable-executable-static
19533 --disable-executable-static
19534 Executable fully static linking
19535
19536 --enable-profiling
19537 --disable-profiling
19538 Executable and library profiling
19539
19540 --enable-executable-profiling
19541 --disable-executable-profiling
19542 Executable profiling (DEPRECATED)
19543
19544 --profiling-detail level
19545 Profiling detail level for executable and library
19546 (default, none, exported-functions, toplevel-functions,
19547 all-functions).
19548
19549 --library-profiling-detail level
19550 Profiling detail level for libraries only.
19551
19552 -O, --enable-optimization, --enable-optimisation [n]
19553 Build with optimization (n is 0--2, default is 1)
19554
19555 --disable-optimization, --disable-optimisation
19556 Build without optimization
19557
19558 --enable-debug-info [n]
19559 Emit debug info (n is 0--3, default is 0)
19560
19561 --disable-debug-info
19562 Don't emit debug info
19563
19564 --enable-library-for-ghci
19565 --disable-library-for-ghci
19566 compile library for use with GHCi
19567
19568 --enable-split-sections
19569 --disable-split-sections
19570 compile library code such that unneeded definitions can
19571 be dropped from the final executable (GHC 7.8+)
19572
19573 --enable-split-objs
19574 --disable-split-objs
19575 split library into smaller objects to reduce binary sizes
19576 (GHC 6.6+)
19577
19578 --enable-executable-stripping
19579 --disable-executable-stripping
19580 strip executables upon installation to reduce binary
19581 sizes
19582
19583 --enable-library-stripping
19584 --disable-library-stripping
19585 strip libraries upon installation to reduce binary sizes
19586
19587 --configure-option OPT
19588 Extra option for configure
19589
19590 --user
19591 --global
19592 doing a per-user installation
19593
19594 --package-db DB
19595 Append the given package database to the list of package
19596 databases used (to satisfy dependencies and register
19597 into). May be a specific file, 'global' or 'user'. The
19598 initial list is ['global'], ['global', 'user'], or
19599 ['global', $sandbox], depending on context. Use 'clear'
19600 to reset the list to empty. See the user guide for
19601 details.
19602
19603 -f, --flags FLAGS
19604 Force values for the given flags in Cabal conditionals in
19605 the .cabal file. E.g., --flags="debug -usebytestrings"
19606 forces the flag "debug" to true and "usebytestrings" to
19607 false.
19608
19609 --extra-include-dirs PATH
19610 A list of directories to search for header files
19611
19612 --enable-deterministic
19613 --disable-deterministic
19614 Try to be as deterministic as possible (used by the test
19615 suite)
19616
19617 --ipid IPID
19618 Installed package ID to compile this package as
19619
19620 --cid CID
19621 Installed component ID to compile this component as
19622
19623 --extra-lib-dirs PATH
19624 A list of directories to search for external libraries
19625
19626 --extra-framework-dirs PATH
19627 A list of directories to search for external frameworks
19628 (OS X only)
19629
19630 --extra-prog-path PATH
19631 A list of directories to search for required programs (in
19632 addition to the normal search locations)
19633
19634 --instantiate-with NAME=MOD
19635 A mapping of signature names to concrete module instanti‐
19636 ations.
19637
19638 --enable-tests
19639 --disable-tests
19640 dependency checking and compilation for test suites
19641 listed in the package description file.
19642
19643 --enable-coverage
19644 --disable-coverage
19645 build package with Haskell Program Coverage. (GHC only)
19646
19647 --enable-library-coverage
19648 --disable-library-coverage
19649 build package with Haskell Program Coverage. (GHC only)
19650 (DEPRECATED)
19651
19652 --enable-benchmarks
19653 --disable-benchmarks
19654 dependency checking and compilation for benchmarks listed
19655 in the package description file.
19656
19657 --enable-relocatable
19658 --disable-relocatable
19659 building a package that is relocatable. (GHC only)
19660
19661 --disable-response-files
19662 enable workaround for old versions of programs like "ar"
19663 that do not support @file arguments
19664
19665 --allow-depending-on-private-libs
19666 Allow depending on private libraries. If set, the library
19667 visibility check MUST be done externally.
19668
19669 --with-alex PATH
19670 give the path to alex
19671
19672 --with-ar PATH
19673 give the path to ar
19674
19675 --with-c2hs PATH
19676 give the path to c2hs
19677
19678 --with-cpphs PATH
19679 give the path to cpphs
19680
19681 --with-doctest PATH
19682 give the path to doctest
19683
19684 --with-gcc PATH
19685 give the path to gcc
19686
19687 --with-ghc PATH
19688 give the path to ghc
19689
19690 --with-ghc-pkg PATH
19691 give the path to ghc-pkg
19692
19693 --with-ghcjs PATH
19694 give the path to ghcjs
19695
19696 --with-ghcjs-pkg PATH
19697 give the path to ghcjs-pkg
19698
19699 --with-greencard PATH
19700 give the path to greencard
19701
19702 --with-haddock PATH
19703 give the path to haddock
19704
19705 --with-happy PATH
19706 give the path to happy
19707
19708 --with-haskell-suite PATH
19709 give the path to haskell-suite
19710
19711 --with-haskell-suite-pkg PATH
19712 give the path to haskell-suite-pkg
19713
19714 --with-hmake PATH
19715 give the path to hmake
19716
19717 --with-hpc PATH
19718 give the path to hpc
19719
19720 --with-hsc2hs PATH
19721 give the path to hsc2hs
19722
19723 --with-hscolour PATH
19724 give the path to hscolour
19725
19726 --with-jhc PATH
19727 give the path to jhc
19728
19729 --with-ld PATH
19730 give the path to ld
19731
19732 --with-pkg-config PATH
19733 give the path to pkg-config
19734
19735 --with-runghc PATH
19736 give the path to runghc
19737
19738 --with-strip PATH
19739 give the path to strip
19740
19741 --with-tar PATH
19742 give the path to tar
19743
19744 --with-uhc PATH
19745 give the path to uhc
19746
19747 --alex-option OPT
19748 give an extra option to alex (no need to quote options
19749 containing spaces)
19750
19751 --ar-option OPT
19752 give an extra option to ar (no need to quote options con‐
19753 taining spaces)
19754
19755 --c2hs-option OPT
19756 give an extra option to c2hs (no need to quote options
19757 containing spaces)
19758
19759 --cpphs-option OPT
19760 give an extra option to cpphs (no need to quote options
19761 containing spaces)
19762
19763 --doctest-option OPT
19764 give an extra option to doctest (no need to quote options
19765 containing spaces)
19766
19767 --gcc-option OPT
19768 give an extra option to gcc (no need to quote options
19769 containing spaces)
19770
19771 --ghc-option OPT
19772 give an extra option to ghc (no need to quote options
19773 containing spaces)
19774
19775 --ghc-pkg-option OPT
19776 give an extra option to ghc-pkg (no need to quote options
19777 containing spaces)
19778
19779 --ghcjs-option OPT
19780 give an extra option to ghcjs (no need to quote options
19781 containing spaces)
19782
19783 --ghcjs-pkg-option OPT
19784 give an extra option to ghcjs-pkg (no need to quote
19785 options containing spaces)
19786
19787 --greencard-option OPT
19788 give an extra option to greencard (no need to quote
19789 options containing spaces)
19790
19791 --haddock-option OPT
19792 give an extra option to haddock (no need to quote options
19793 containing spaces)
19794
19795 --happy-option OPT
19796 give an extra option to happy (no need to quote options
19797 containing spaces)
19798
19799 --haskell-suite-option OPT
19800 give an extra option to haskell-suite (no need to quote
19801 options containing spaces)
19802
19803 --haskell-suite-pkg-option OPT
19804 give an extra option to haskell-suite-pkg (no need to
19805 quote options containing spaces)
19806
19807 --hmake-option OPT
19808 give an extra option to hmake (no need to quote options
19809 containing spaces)
19810
19811 --hpc-option OPT
19812 give an extra option to hpc (no need to quote options
19813 containing spaces)
19814
19815 --hsc2hs-option OPT
19816 give an extra option to hsc2hs (no need to quote options
19817 containing spaces)
19818
19819 --hscolour-option OPT
19820 give an extra option to hscolour (no need to quote
19821 options containing spaces)
19822
19823 --jhc-option OPT
19824 give an extra option to jhc (no need to quote options
19825 containing spaces)
19826
19827 --ld-option OPT
19828 give an extra option to ld (no need to quote options con‐
19829 taining spaces)
19830
19831 --pkg-config-option OPT
19832 give an extra option to pkg-config (no need to quote
19833 options containing spaces)
19834
19835 --runghc-option OPT
19836 give an extra option to runghc (no need to quote options
19837 containing spaces)
19838
19839 --strip-option OPT
19840 give an extra option to strip (no need to quote options
19841 containing spaces)
19842
19843 --tar-option OPT
19844 give an extra option to tar (no need to quote options
19845 containing spaces)
19846
19847 --uhc-option OPT
19848 give an extra option to uhc (no need to quote options
19849 containing spaces)
19850
19851 --alex-options OPTS
19852 give extra options to alex
19853
19854 --ar-options OPTS
19855 give extra options to ar
19856
19857 --c2hs-options OPTS
19858 give extra options to c2hs
19859
19860 --cpphs-options OPTS
19861 give extra options to cpphs
19862
19863 --doctest-options OPTS
19864 give extra options to doctest
19865
19866 --gcc-options OPTS
19867 give extra options to gcc
19868
19869 --ghc-options OPTS
19870 give extra options to ghc
19871
19872 --ghc-pkg-options OPTS
19873 give extra options to ghc-pkg
19874
19875 --ghcjs-options OPTS
19876 give extra options to ghcjs
19877
19878 --ghcjs-pkg-options OPTS
19879 give extra options to ghcjs-pkg
19880
19881 --greencard-options OPTS
19882 give extra options to greencard
19883
19884 --haddock-options OPTS
19885 give extra options to haddock
19886
19887 --happy-options OPTS
19888 give extra options to happy
19889
19890 --haskell-suite-options OPTS
19891 give extra options to haskell-suite
19892
19893 --haskell-suite-pkg-options OPTS
19894 give extra options to haskell-suite-pkg
19895
19896 --hmake-options OPTS
19897 give extra options to hmake
19898
19899 --hpc-options OPTS
19900 give extra options to hpc
19901
19902 --hsc2hs-options OPTS
19903 give extra options to hsc2hs
19904
19905 --hscolour-options OPTS
19906 give extra options to hscolour
19907
19908 --jhc-options OPTS
19909 give extra options to jhc
19910
19911 --ld-options OPTS
19912 give extra options to ld
19913
19914 --pkg-config-options OPTS
19915 give extra options to pkg-config
19916
19917 --runghc-options OPTS
19918 give extra options to runghc
19919
19920 --strip-options OPTS
19921 give extra options to strip
19922
19923 --tar-options OPTS
19924 give extra options to tar
19925
19926 --uhc-options OPTS
19927 give extra options to uhc
19928
19929 --cabal-lib-version VERSION
19930 Select which version of the Cabal lib to use to build
19931 packages (useful for testing).
19932
19933 --constraint CONSTRAINT
19934 Specify constraints on a package (version,
19935 installed/source, flags)
19936
19937 --preference CONSTRAINT
19938 Specify preferences (soft constraints) on the version of
19939 a package
19940
19941 --solver SOLVER
19942 Select dependency solver to use (default: modular).
19943 Choices: modular.
19944
19945 --allow-older [DEPS]
19946 Ignore lower bounds in all dependencies or DEPS
19947
19948 --allow-newer [DEPS]
19949 Ignore upper bounds in all dependencies or DEPS
19950
19951 --write-ghc-environment-files always|never|ghc8.4.4+
19952 Whether to create a .ghc.environment file after a suc‐
19953 cessful build (v2-build only)
19954
19955 --enable-documentation
19956 --disable-documentation
19957 building of documentation
19958
19959 --doc-index-file TEMPLATE
19960 A central index of haddock API documentation (template
19961 cannot use $pkgid)
19962
19963 --dry-run
19964 Do not install anything, only print what would be
19965 installed.
19966
19967 --max-backjumps NUM
19968 Maximum number of backjumps allowed while solving
19969 (default: 4000). Use a negative number to enable unlim‐
19970 ited backtracking. Use 0 to disable backtracking com‐
19971 pletely.
19972
19973 --reorder-goals
19974 --no-reorder-goals
19975 Try to reorder goals according to certain heuristics.
19976 Slows things down on average, but may make backtracking
19977 faster for some packages.
19978
19979 --count-conflicts
19980 --no-count-conflicts
19981 Try to speed up solving by preferring goals that are
19982 involved in a lot of conflicts (default).
19983
19984 --minimize-conflict-set
19985 --no-minimize-conflict-set
19986 When there is no solution, try to improve the error mes‐
19987 sage by finding a minimal conflict set (default: false).
19988 May increase run time significantly.
19989
19990 --independent-goals
19991 --no-independent-goals
19992 Treat several goals on the command line as independent.
19993 If several goals depend on the same package, different
19994 versions can be chosen.
19995
19996 --shadow-installed-packages
19997 --no-shadow-installed-packages
19998 If multiple package instances of the same version are
19999 installed, treat all but one as shadowed.
20000
20001 --strong-flags
20002 --no-strong-flags
20003 Do not defer flag choices (this used to be the default in
20004 cabal-install <= 1.20).
20005
20006 --allow-boot-library-installs
20007 --no-allow-boot-library-installs
20008 Allow cabal to install base, ghc-prim, integer-simple,
20009 integer-gmp, and template-haskell.
20010
20011 --reject-unconstrained-dependencies none|all
20012 Require these packages to have constraints on them if
20013 they are to be selected (default: none).
20014
20015 --reinstall
20016 --no-reinstall
20017 Install even if it means installing the same version
20018 again.
20019
20020 --avoid-reinstalls
20021 --no-avoid-reinstalls
20022 Do not select versions that would destructively overwrite
20023 installed packages.
20024
20025 --force-reinstalls
20026 --no-force-reinstalls
20027 Reinstall packages even if they will most likely break
20028 other installed packages.
20029
20030 --upgrade-dependencies
20031 --no-upgrade-dependencies
20032 Pick the latest version for all dependencies, rather than
20033 trying to pick an installed version.
20034
20035 --only-dependencies
20036 --no-only-dependencies
20037 Install only the dependencies necessary to build the
20038 given packages
20039
20040 --dependencies-only
20041 --no-dependencies-only
20042 A synonym for --only-dependencies
20043
20044 --index-state STATE
20045 Use source package index state as it existed at a previ‐
20046 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
20047 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
20048 'HEAD' (default: 'HEAD').
20049
20050 --root-cmd COMMAND
20051 (No longer supported, do not use.)
20052
20053 --symlink-bindir DIR
20054 Add symlinks to installed executables into this direc‐
20055 tory.
20056
20057 --build-summary TEMPLATE
20058 Save build summaries to file (name template can use
20059 $pkgid, $compiler, $os, $arch)
20060
20061 --build-log TEMPLATE
20062 Log all builds to file (name template can use $pkgid,
20063 $compiler, $os, $arch)
20064
20065 --remote-build-reporting LEVEL
20066 Generate build reports to send to a remote server (none,
20067 anonymous or detailed).
20068
20069 --report-planning-failure
20070 Generate build reports when the dependency solver fails.
20071 This is used by the Hackage build bot.
20072
20073 --enable-per-component
20074 --disable-per-component
20075 Per-component builds when possible
20076
20077 --one-shot
20078 --no-one-shot
20079 Do not record the packages in the world file.
20080
20081 --run-tests
20082 Run package test suites during installation.
20083
20084 -j, --jobs [NUM]
20085 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
20086 given).
20087
20088 --keep-going
20089 After a build failure, continue to build other unaffected
20090 packages.
20091
20092 --offline
20093 --no-offline
20094 Don't download packages from the Internet.
20095
20096 --project-file FILE
20097 Set the name of the cabal.project file to search for in
20098 parent directories
20099
20100 --only
20101 Only installs the package in the current directory.
20102
20103 --haddock-hoogle
20104 Generate a hoogle database
20105
20106 --haddock-html
20107 Generate HTML documentation (the default)
20108
20109 --haddock-html-location URL
20110 Location of HTML documentation for pre-requisite packages
20111
20112 --haddock-for-hackage
20113 Collection of flags to generate documentation suitable
20114 for upload to hackage
20115
20116 --haddock-executables
20117 Run haddock for Executables targets
20118
20119 --haddock-tests
20120 Run haddock for Test Suite targets
20121
20122 --haddock-benchmarks
20123 Run haddock for Benchmark targets
20124
20125 --haddock-all
20126 Run haddock for all targets
20127
20128 --haddock-internal
20129 Run haddock for internal modules and include all symbols
20130
20131 --haddock-css PATH
20132 Use PATH as the haddock stylesheet
20133
20134 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
20135 dock-hyperlinked-source
20136 Hyperlink the documentation to the source code
20137
20138 --haddock-quickjump
20139 Generate an index for interactive documentation naviga‐
20140 tion
20141
20142 --haddock-hscolour-css PATH
20143 Use PATH as the HsColour stylesheet
20144
20145 --haddock-contents-location URL
20146 Bake URL in as the location for the contents page
20147
20148 --test-log TEMPLATE
20149 Log all test suite results to file (name template can use
20150 $pkgid, $compiler, $os, $arch, $test-suite, $result)
20151
20152 --test-machine-log TEMPLATE
20153 Produce a machine-readable log file (name template can
20154 use $pkgid, $compiler, $os, $arch, $result)
20155
20156 --test-show-details FILTER
20157
20158 --test-keep-tix-files
20159 keep .tix files for HPC between test runs
20160
20161 --test-wrapper FILE
20162 Run test through a wrapper.
20163
20164 --test-fail-when-no-test-suites
20165 Exit with failure when no test suites are found.
20166
20167 --test-options TEMPLATES
20168 give extra options to test executables (name templates
20169 can use $pkgid, $compiler, $os, $arch, $test-suite)
20170
20171 --test-option TEMPLATE
20172 give extra option to test executables (no need to quote
20173 options containing spaces, name template can use $pkgid,
20174 $compiler, $os, $arch, $test-suite)
20175
20176
20177 cabal new-test
20178
20179 Usage: cabal new-test [TARGETS] [FLAGS]
20180
20181
20182 Runs the specified test-suites, first ensuring they are up to date.
20183
20184 Any test-suite in any package in the project can be specified. A pack‐
20185 age can be specified in which case all the test-suites in the package
20186 are run. The default is to run all the test-suites in the package in
20187 the current directory.
20188
20189 Dependencies are built or rebuilt as necessary. Additional configura‐
20190 tion flags can be specified on the command line and these extend the
20191 project configuration from the 'cabal.project', 'cabal.project.local'
20192 and other files.
20193
20194 To pass command-line arguments to a test suite, see the new-run com‐
20195 mand.
20196
20197
20198 Runs the specified test-suites, first ensuring they are up to date.
20199
20200 Any test-suite in any package in the project can be specified. A pack‐
20201 age can be specified in which case all the test-suites in the package
20202 are run. The default is to run all the test-suites in the package in
20203 the current directory.
20204
20205 Dependencies are built or rebuilt as necessary. Additional configura‐
20206 tion flags can be specified on the command line and these extend the
20207 project configuration from the 'cabal.project', 'cabal.project.local'
20208 and other files.
20209
20210 To pass command-line arguments to a test suite, see the new-run com‐
20211 mand.
20212
20213
20214 Flags:
20215 -v, --verbose [n]
20216 Control verbosity (n is 0--3, default verbosity level is
20217 1)
20218
20219 --builddir, --distdir, --distpref DIR
20220 The directory where Cabal puts generated build files
20221 (default dist)
20222
20223 -g, --ghc
20224 compile with GHC
20225
20226 --ghcjs
20227 compile with GHCJS
20228
20229 --uhc
20230 compile with UHC
20231
20232 --haskell-suite
20233 compile with a haskell-suite compiler
20234
20235 --cabal-file PATH
20236 use this Cabal file
20237
20238 -w, --with-compiler PATH
20239 give the path to a particular compiler
20240
20241 --with-hc-pkg PATH
20242 give the path to the package tool
20243
20244 --prefix DIR
20245 bake this prefix in preparation of installation
20246
20247 --bindir DIR
20248 installation directory for executables
20249
20250 --libdir DIR
20251 installation directory for libraries
20252
20253 --libsubdir DIR
20254 subdirectory of libdir in which libs are installed
20255
20256 --dynlibdir DIR
20257 installation directory for dynamic libraries
20258
20259 --libexecdir DIR
20260 installation directory for program executables
20261
20262 --libexecsubdir DIR
20263 subdirectory of libexecdir in which private executables
20264 are installed
20265
20266 --datadir DIR
20267 installation directory for read-only data
20268
20269 --datasubdir DIR
20270 subdirectory of datadir in which data files are installed
20271
20272 --docdir DIR
20273 installation directory for documentation
20274
20275 --htmldir DIR
20276 installation directory for HTML documentation
20277
20278 --haddockdir DIR
20279 installation directory for haddock interfaces
20280
20281 --sysconfdir DIR
20282 installation directory for configuration files
20283
20284 --program-prefix PREFIX
20285 prefix to be applied to installed executables
20286
20287 --program-suffix SUFFIX
20288 suffix to be applied to installed executables
20289
20290 --enable-library-vanilla
20291 --disable-library-vanilla
20292 Vanilla libraries
20293
20294 -p, --enable-library-profiling
20295 --disable-library-profiling
20296 Library profiling
20297
20298 --enable-shared
20299 --disable-shared
20300 Shared library
20301
20302 --enable-static
20303 --disable-static
20304 Static library
20305
20306 --enable-executable-dynamic
20307 --disable-executable-dynamic
20308 Executable dynamic linking
20309
20310 --enable-executable-static
20311 --disable-executable-static
20312 Executable fully static linking
20313
20314 --enable-profiling
20315 --disable-profiling
20316 Executable and library profiling
20317
20318 --enable-executable-profiling
20319 --disable-executable-profiling
20320 Executable profiling (DEPRECATED)
20321
20322 --profiling-detail level
20323 Profiling detail level for executable and library
20324 (default, none, exported-functions, toplevel-functions,
20325 all-functions).
20326
20327 --library-profiling-detail level
20328 Profiling detail level for libraries only.
20329
20330 -O, --enable-optimization, --enable-optimisation [n]
20331 Build with optimization (n is 0--2, default is 1)
20332
20333 --disable-optimization, --disable-optimisation
20334 Build without optimization
20335
20336 --enable-debug-info [n]
20337 Emit debug info (n is 0--3, default is 0)
20338
20339 --disable-debug-info
20340 Don't emit debug info
20341
20342 --enable-library-for-ghci
20343 --disable-library-for-ghci
20344 compile library for use with GHCi
20345
20346 --enable-split-sections
20347 --disable-split-sections
20348 compile library code such that unneeded definitions can
20349 be dropped from the final executable (GHC 7.8+)
20350
20351 --enable-split-objs
20352 --disable-split-objs
20353 split library into smaller objects to reduce binary sizes
20354 (GHC 6.6+)
20355
20356 --enable-executable-stripping
20357 --disable-executable-stripping
20358 strip executables upon installation to reduce binary
20359 sizes
20360
20361 --enable-library-stripping
20362 --disable-library-stripping
20363 strip libraries upon installation to reduce binary sizes
20364
20365 --configure-option OPT
20366 Extra option for configure
20367
20368 --user
20369 --global
20370 doing a per-user installation
20371
20372 --package-db DB
20373 Append the given package database to the list of package
20374 databases used (to satisfy dependencies and register
20375 into). May be a specific file, 'global' or 'user'. The
20376 initial list is ['global'], ['global', 'user'], or
20377 ['global', $sandbox], depending on context. Use 'clear'
20378 to reset the list to empty. See the user guide for
20379 details.
20380
20381 -f, --flags FLAGS
20382 Force values for the given flags in Cabal conditionals in
20383 the .cabal file. E.g., --flags="debug -usebytestrings"
20384 forces the flag "debug" to true and "usebytestrings" to
20385 false.
20386
20387 --extra-include-dirs PATH
20388 A list of directories to search for header files
20389
20390 --enable-deterministic
20391 --disable-deterministic
20392 Try to be as deterministic as possible (used by the test
20393 suite)
20394
20395 --ipid IPID
20396 Installed package ID to compile this package as
20397
20398 --cid CID
20399 Installed component ID to compile this component as
20400
20401 --extra-lib-dirs PATH
20402 A list of directories to search for external libraries
20403
20404 --extra-framework-dirs PATH
20405 A list of directories to search for external frameworks
20406 (OS X only)
20407
20408 --extra-prog-path PATH
20409 A list of directories to search for required programs (in
20410 addition to the normal search locations)
20411
20412 --instantiate-with NAME=MOD
20413 A mapping of signature names to concrete module instanti‐
20414 ations.
20415
20416 --enable-tests
20417 --disable-tests
20418 dependency checking and compilation for test suites
20419 listed in the package description file.
20420
20421 --enable-coverage
20422 --disable-coverage
20423 build package with Haskell Program Coverage. (GHC only)
20424
20425 --enable-library-coverage
20426 --disable-library-coverage
20427 build package with Haskell Program Coverage. (GHC only)
20428 (DEPRECATED)
20429
20430 --enable-benchmarks
20431 --disable-benchmarks
20432 dependency checking and compilation for benchmarks listed
20433 in the package description file.
20434
20435 --enable-relocatable
20436 --disable-relocatable
20437 building a package that is relocatable. (GHC only)
20438
20439 --disable-response-files
20440 enable workaround for old versions of programs like "ar"
20441 that do not support @file arguments
20442
20443 --allow-depending-on-private-libs
20444 Allow depending on private libraries. If set, the library
20445 visibility check MUST be done externally.
20446
20447 --with-alex PATH
20448 give the path to alex
20449
20450 --with-ar PATH
20451 give the path to ar
20452
20453 --with-c2hs PATH
20454 give the path to c2hs
20455
20456 --with-cpphs PATH
20457 give the path to cpphs
20458
20459 --with-doctest PATH
20460 give the path to doctest
20461
20462 --with-gcc PATH
20463 give the path to gcc
20464
20465 --with-ghc PATH
20466 give the path to ghc
20467
20468 --with-ghc-pkg PATH
20469 give the path to ghc-pkg
20470
20471 --with-ghcjs PATH
20472 give the path to ghcjs
20473
20474 --with-ghcjs-pkg PATH
20475 give the path to ghcjs-pkg
20476
20477 --with-greencard PATH
20478 give the path to greencard
20479
20480 --with-haddock PATH
20481 give the path to haddock
20482
20483 --with-happy PATH
20484 give the path to happy
20485
20486 --with-haskell-suite PATH
20487 give the path to haskell-suite
20488
20489 --with-haskell-suite-pkg PATH
20490 give the path to haskell-suite-pkg
20491
20492 --with-hmake PATH
20493 give the path to hmake
20494
20495 --with-hpc PATH
20496 give the path to hpc
20497
20498 --with-hsc2hs PATH
20499 give the path to hsc2hs
20500
20501 --with-hscolour PATH
20502 give the path to hscolour
20503
20504 --with-jhc PATH
20505 give the path to jhc
20506
20507 --with-ld PATH
20508 give the path to ld
20509
20510 --with-pkg-config PATH
20511 give the path to pkg-config
20512
20513 --with-runghc PATH
20514 give the path to runghc
20515
20516 --with-strip PATH
20517 give the path to strip
20518
20519 --with-tar PATH
20520 give the path to tar
20521
20522 --with-uhc PATH
20523 give the path to uhc
20524
20525 --alex-option OPT
20526 give an extra option to alex (no need to quote options
20527 containing spaces)
20528
20529 --ar-option OPT
20530 give an extra option to ar (no need to quote options con‐
20531 taining spaces)
20532
20533 --c2hs-option OPT
20534 give an extra option to c2hs (no need to quote options
20535 containing spaces)
20536
20537 --cpphs-option OPT
20538 give an extra option to cpphs (no need to quote options
20539 containing spaces)
20540
20541 --doctest-option OPT
20542 give an extra option to doctest (no need to quote options
20543 containing spaces)
20544
20545 --gcc-option OPT
20546 give an extra option to gcc (no need to quote options
20547 containing spaces)
20548
20549 --ghc-option OPT
20550 give an extra option to ghc (no need to quote options
20551 containing spaces)
20552
20553 --ghc-pkg-option OPT
20554 give an extra option to ghc-pkg (no need to quote options
20555 containing spaces)
20556
20557 --ghcjs-option OPT
20558 give an extra option to ghcjs (no need to quote options
20559 containing spaces)
20560
20561 --ghcjs-pkg-option OPT
20562 give an extra option to ghcjs-pkg (no need to quote
20563 options containing spaces)
20564
20565 --greencard-option OPT
20566 give an extra option to greencard (no need to quote
20567 options containing spaces)
20568
20569 --haddock-option OPT
20570 give an extra option to haddock (no need to quote options
20571 containing spaces)
20572
20573 --happy-option OPT
20574 give an extra option to happy (no need to quote options
20575 containing spaces)
20576
20577 --haskell-suite-option OPT
20578 give an extra option to haskell-suite (no need to quote
20579 options containing spaces)
20580
20581 --haskell-suite-pkg-option OPT
20582 give an extra option to haskell-suite-pkg (no need to
20583 quote options containing spaces)
20584
20585 --hmake-option OPT
20586 give an extra option to hmake (no need to quote options
20587 containing spaces)
20588
20589 --hpc-option OPT
20590 give an extra option to hpc (no need to quote options
20591 containing spaces)
20592
20593 --hsc2hs-option OPT
20594 give an extra option to hsc2hs (no need to quote options
20595 containing spaces)
20596
20597 --hscolour-option OPT
20598 give an extra option to hscolour (no need to quote
20599 options containing spaces)
20600
20601 --jhc-option OPT
20602 give an extra option to jhc (no need to quote options
20603 containing spaces)
20604
20605 --ld-option OPT
20606 give an extra option to ld (no need to quote options con‐
20607 taining spaces)
20608
20609 --pkg-config-option OPT
20610 give an extra option to pkg-config (no need to quote
20611 options containing spaces)
20612
20613 --runghc-option OPT
20614 give an extra option to runghc (no need to quote options
20615 containing spaces)
20616
20617 --strip-option OPT
20618 give an extra option to strip (no need to quote options
20619 containing spaces)
20620
20621 --tar-option OPT
20622 give an extra option to tar (no need to quote options
20623 containing spaces)
20624
20625 --uhc-option OPT
20626 give an extra option to uhc (no need to quote options
20627 containing spaces)
20628
20629 --alex-options OPTS
20630 give extra options to alex
20631
20632 --ar-options OPTS
20633 give extra options to ar
20634
20635 --c2hs-options OPTS
20636 give extra options to c2hs
20637
20638 --cpphs-options OPTS
20639 give extra options to cpphs
20640
20641 --doctest-options OPTS
20642 give extra options to doctest
20643
20644 --gcc-options OPTS
20645 give extra options to gcc
20646
20647 --ghc-options OPTS
20648 give extra options to ghc
20649
20650 --ghc-pkg-options OPTS
20651 give extra options to ghc-pkg
20652
20653 --ghcjs-options OPTS
20654 give extra options to ghcjs
20655
20656 --ghcjs-pkg-options OPTS
20657 give extra options to ghcjs-pkg
20658
20659 --greencard-options OPTS
20660 give extra options to greencard
20661
20662 --haddock-options OPTS
20663 give extra options to haddock
20664
20665 --happy-options OPTS
20666 give extra options to happy
20667
20668 --haskell-suite-options OPTS
20669 give extra options to haskell-suite
20670
20671 --haskell-suite-pkg-options OPTS
20672 give extra options to haskell-suite-pkg
20673
20674 --hmake-options OPTS
20675 give extra options to hmake
20676
20677 --hpc-options OPTS
20678 give extra options to hpc
20679
20680 --hsc2hs-options OPTS
20681 give extra options to hsc2hs
20682
20683 --hscolour-options OPTS
20684 give extra options to hscolour
20685
20686 --jhc-options OPTS
20687 give extra options to jhc
20688
20689 --ld-options OPTS
20690 give extra options to ld
20691
20692 --pkg-config-options OPTS
20693 give extra options to pkg-config
20694
20695 --runghc-options OPTS
20696 give extra options to runghc
20697
20698 --strip-options OPTS
20699 give extra options to strip
20700
20701 --tar-options OPTS
20702 give extra options to tar
20703
20704 --uhc-options OPTS
20705 give extra options to uhc
20706
20707 --cabal-lib-version VERSION
20708 Select which version of the Cabal lib to use to build
20709 packages (useful for testing).
20710
20711 --constraint CONSTRAINT
20712 Specify constraints on a package (version,
20713 installed/source, flags)
20714
20715 --preference CONSTRAINT
20716 Specify preferences (soft constraints) on the version of
20717 a package
20718
20719 --solver SOLVER
20720 Select dependency solver to use (default: modular).
20721 Choices: modular.
20722
20723 --allow-older [DEPS]
20724 Ignore lower bounds in all dependencies or DEPS
20725
20726 --allow-newer [DEPS]
20727 Ignore upper bounds in all dependencies or DEPS
20728
20729 --write-ghc-environment-files always|never|ghc8.4.4+
20730 Whether to create a .ghc.environment file after a suc‐
20731 cessful build (v2-build only)
20732
20733 --enable-documentation
20734 --disable-documentation
20735 building of documentation
20736
20737 --doc-index-file TEMPLATE
20738 A central index of haddock API documentation (template
20739 cannot use $pkgid)
20740
20741 --dry-run
20742 Do not install anything, only print what would be
20743 installed.
20744
20745 --max-backjumps NUM
20746 Maximum number of backjumps allowed while solving
20747 (default: 4000). Use a negative number to enable unlim‐
20748 ited backtracking. Use 0 to disable backtracking com‐
20749 pletely.
20750
20751 --reorder-goals
20752 --no-reorder-goals
20753 Try to reorder goals according to certain heuristics.
20754 Slows things down on average, but may make backtracking
20755 faster for some packages.
20756
20757 --count-conflicts
20758 --no-count-conflicts
20759 Try to speed up solving by preferring goals that are
20760 involved in a lot of conflicts (default).
20761
20762 --minimize-conflict-set
20763 --no-minimize-conflict-set
20764 When there is no solution, try to improve the error mes‐
20765 sage by finding a minimal conflict set (default: false).
20766 May increase run time significantly.
20767
20768 --independent-goals
20769 --no-independent-goals
20770 Treat several goals on the command line as independent.
20771 If several goals depend on the same package, different
20772 versions can be chosen.
20773
20774 --shadow-installed-packages
20775 --no-shadow-installed-packages
20776 If multiple package instances of the same version are
20777 installed, treat all but one as shadowed.
20778
20779 --strong-flags
20780 --no-strong-flags
20781 Do not defer flag choices (this used to be the default in
20782 cabal-install <= 1.20).
20783
20784 --allow-boot-library-installs
20785 --no-allow-boot-library-installs
20786 Allow cabal to install base, ghc-prim, integer-simple,
20787 integer-gmp, and template-haskell.
20788
20789 --reject-unconstrained-dependencies none|all
20790 Require these packages to have constraints on them if
20791 they are to be selected (default: none).
20792
20793 --reinstall
20794 --no-reinstall
20795 Install even if it means installing the same version
20796 again.
20797
20798 --avoid-reinstalls
20799 --no-avoid-reinstalls
20800 Do not select versions that would destructively overwrite
20801 installed packages.
20802
20803 --force-reinstalls
20804 --no-force-reinstalls
20805 Reinstall packages even if they will most likely break
20806 other installed packages.
20807
20808 --upgrade-dependencies
20809 --no-upgrade-dependencies
20810 Pick the latest version for all dependencies, rather than
20811 trying to pick an installed version.
20812
20813 --only-dependencies
20814 --no-only-dependencies
20815 Install only the dependencies necessary to build the
20816 given packages
20817
20818 --dependencies-only
20819 --no-dependencies-only
20820 A synonym for --only-dependencies
20821
20822 --index-state STATE
20823 Use source package index state as it existed at a previ‐
20824 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
20825 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
20826 'HEAD' (default: 'HEAD').
20827
20828 --root-cmd COMMAND
20829 (No longer supported, do not use.)
20830
20831 --symlink-bindir DIR
20832 Add symlinks to installed executables into this direc‐
20833 tory.
20834
20835 --build-summary TEMPLATE
20836 Save build summaries to file (name template can use
20837 $pkgid, $compiler, $os, $arch)
20838
20839 --build-log TEMPLATE
20840 Log all builds to file (name template can use $pkgid,
20841 $compiler, $os, $arch)
20842
20843 --remote-build-reporting LEVEL
20844 Generate build reports to send to a remote server (none,
20845 anonymous or detailed).
20846
20847 --report-planning-failure
20848 Generate build reports when the dependency solver fails.
20849 This is used by the Hackage build bot.
20850
20851 --enable-per-component
20852 --disable-per-component
20853 Per-component builds when possible
20854
20855 --one-shot
20856 --no-one-shot
20857 Do not record the packages in the world file.
20858
20859 --run-tests
20860 Run package test suites during installation.
20861
20862 -j, --jobs [NUM]
20863 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
20864 given).
20865
20866 --keep-going
20867 After a build failure, continue to build other unaffected
20868 packages.
20869
20870 --offline
20871 --no-offline
20872 Don't download packages from the Internet.
20873
20874 --project-file FILE
20875 Set the name of the cabal.project file to search for in
20876 parent directories
20877
20878 --only
20879 Only installs the package in the current directory.
20880
20881 --haddock-hoogle
20882 Generate a hoogle database
20883
20884 --haddock-html
20885 Generate HTML documentation (the default)
20886
20887 --haddock-html-location URL
20888 Location of HTML documentation for pre-requisite packages
20889
20890 --haddock-for-hackage
20891 Collection of flags to generate documentation suitable
20892 for upload to hackage
20893
20894 --haddock-executables
20895 Run haddock for Executables targets
20896
20897 --haddock-tests
20898 Run haddock for Test Suite targets
20899
20900 --haddock-benchmarks
20901 Run haddock for Benchmark targets
20902
20903 --haddock-all
20904 Run haddock for all targets
20905
20906 --haddock-internal
20907 Run haddock for internal modules and include all symbols
20908
20909 --haddock-css PATH
20910 Use PATH as the haddock stylesheet
20911
20912 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
20913 dock-hyperlinked-source
20914 Hyperlink the documentation to the source code
20915
20916 --haddock-quickjump
20917 Generate an index for interactive documentation naviga‐
20918 tion
20919
20920 --haddock-hscolour-css PATH
20921 Use PATH as the HsColour stylesheet
20922
20923 --haddock-contents-location URL
20924 Bake URL in as the location for the contents page
20925
20926 --test-log TEMPLATE
20927 Log all test suite results to file (name template can use
20928 $pkgid, $compiler, $os, $arch, $test-suite, $result)
20929
20930 --test-machine-log TEMPLATE
20931 Produce a machine-readable log file (name template can
20932 use $pkgid, $compiler, $os, $arch, $result)
20933
20934 --test-show-details FILTER
20935
20936 --test-keep-tix-files
20937 keep .tix files for HPC between test runs
20938
20939 --test-wrapper FILE
20940 Run test through a wrapper.
20941
20942 --test-fail-when-no-test-suites
20943 Exit with failure when no test suites are found.
20944
20945 --test-options TEMPLATES
20946 give extra options to test executables (name templates
20947 can use $pkgid, $compiler, $os, $arch, $test-suite)
20948
20949 --test-option TEMPLATE
20950 give extra option to test executables (no need to quote
20951 options containing spaces, name template can use $pkgid,
20952 $compiler, $os, $arch, $test-suite)
20953
20954
20955 cabal v2-test
20956
20957 Usage: cabal v2-test [TARGETS] [FLAGS]
20958
20959
20960 Runs the specified test-suites, first ensuring they are up to date.
20961
20962 Any test-suite in any package in the project can be specified. A pack‐
20963 age can be specified in which case all the test-suites in the package
20964 are run. The default is to run all the test-suites in the package in
20965 the current directory.
20966
20967 Dependencies are built or rebuilt as necessary. Additional configura‐
20968 tion flags can be specified on the command line and these extend the
20969 project configuration from the 'cabal.project', 'cabal.project.local'
20970 and other files.
20971
20972 To pass command-line arguments to a test suite, see the v2-run command.
20973
20974
20975 Examples:
20976 cabal v2-test
20977 Run all the test-suites in the package in the current directory
20978 cabal v2-test pkgname
20979 Run all the test-suites in the package named pkgname
20980 cabal v2-test cname
20981 Run the test-suite named cname
20982 cabal v2-test cname --enable-coverage
20983 Run the test-suite built with code coverage (including local libs
20984 used)
20985
20986 Note: this command is part of the new project-based system (aka nix-
20987 style local builds). These features are currently in beta. Please see
20988 http://cabal.readthedocs.io/en/latest/nix-local-build-overview.html for
20989 details and advice on what you can expect to work. If you encounter
20990 problems please file issues at https://github.com/haskell/cabal/issues
20991 and if you have any time to get involved and help with testing, fixing
20992 bugs etc then that is very much appreciated.
20993
20994
20995 Flags:
20996 -v, --verbose [n]
20997 Control verbosity (n is 0--3, default verbosity level is
20998 1)
20999
21000 --builddir, --distdir, --distpref DIR
21001 The directory where Cabal puts generated build files
21002 (default dist)
21003
21004 -g, --ghc
21005 compile with GHC
21006
21007 --ghcjs
21008 compile with GHCJS
21009
21010 --uhc
21011 compile with UHC
21012
21013 --haskell-suite
21014 compile with a haskell-suite compiler
21015
21016 --cabal-file PATH
21017 use this Cabal file
21018
21019 -w, --with-compiler PATH
21020 give the path to a particular compiler
21021
21022 --with-hc-pkg PATH
21023 give the path to the package tool
21024
21025 --prefix DIR
21026 bake this prefix in preparation of installation
21027
21028 --bindir DIR
21029 installation directory for executables
21030
21031 --libdir DIR
21032 installation directory for libraries
21033
21034 --libsubdir DIR
21035 subdirectory of libdir in which libs are installed
21036
21037 --dynlibdir DIR
21038 installation directory for dynamic libraries
21039
21040 --libexecdir DIR
21041 installation directory for program executables
21042
21043 --libexecsubdir DIR
21044 subdirectory of libexecdir in which private executables
21045 are installed
21046
21047 --datadir DIR
21048 installation directory for read-only data
21049
21050 --datasubdir DIR
21051 subdirectory of datadir in which data files are installed
21052
21053 --docdir DIR
21054 installation directory for documentation
21055
21056 --htmldir DIR
21057 installation directory for HTML documentation
21058
21059 --haddockdir DIR
21060 installation directory for haddock interfaces
21061
21062 --sysconfdir DIR
21063 installation directory for configuration files
21064
21065 --program-prefix PREFIX
21066 prefix to be applied to installed executables
21067
21068 --program-suffix SUFFIX
21069 suffix to be applied to installed executables
21070
21071 --enable-library-vanilla
21072 --disable-library-vanilla
21073 Vanilla libraries
21074
21075 -p, --enable-library-profiling
21076 --disable-library-profiling
21077 Library profiling
21078
21079 --enable-shared
21080 --disable-shared
21081 Shared library
21082
21083 --enable-static
21084 --disable-static
21085 Static library
21086
21087 --enable-executable-dynamic
21088 --disable-executable-dynamic
21089 Executable dynamic linking
21090
21091 --enable-executable-static
21092 --disable-executable-static
21093 Executable fully static linking
21094
21095 --enable-profiling
21096 --disable-profiling
21097 Executable and library profiling
21098
21099 --enable-executable-profiling
21100 --disable-executable-profiling
21101 Executable profiling (DEPRECATED)
21102
21103 --profiling-detail level
21104 Profiling detail level for executable and library
21105 (default, none, exported-functions, toplevel-functions,
21106 all-functions).
21107
21108 --library-profiling-detail level
21109 Profiling detail level for libraries only.
21110
21111 -O, --enable-optimization, --enable-optimisation [n]
21112 Build with optimization (n is 0--2, default is 1)
21113
21114 --disable-optimization, --disable-optimisation
21115 Build without optimization
21116
21117 --enable-debug-info [n]
21118 Emit debug info (n is 0--3, default is 0)
21119
21120 --disable-debug-info
21121 Don't emit debug info
21122
21123 --enable-library-for-ghci
21124 --disable-library-for-ghci
21125 compile library for use with GHCi
21126
21127 --enable-split-sections
21128 --disable-split-sections
21129 compile library code such that unneeded definitions can
21130 be dropped from the final executable (GHC 7.8+)
21131
21132 --enable-split-objs
21133 --disable-split-objs
21134 split library into smaller objects to reduce binary sizes
21135 (GHC 6.6+)
21136
21137 --enable-executable-stripping
21138 --disable-executable-stripping
21139 strip executables upon installation to reduce binary
21140 sizes
21141
21142 --enable-library-stripping
21143 --disable-library-stripping
21144 strip libraries upon installation to reduce binary sizes
21145
21146 --configure-option OPT
21147 Extra option for configure
21148
21149 --user
21150 --global
21151 doing a per-user installation
21152
21153 --package-db DB
21154 Append the given package database to the list of package
21155 databases used (to satisfy dependencies and register
21156 into). May be a specific file, 'global' or 'user'. The
21157 initial list is ['global'], ['global', 'user'], or
21158 ['global', $sandbox], depending on context. Use 'clear'
21159 to reset the list to empty. See the user guide for
21160 details.
21161
21162 -f, --flags FLAGS
21163 Force values for the given flags in Cabal conditionals in
21164 the .cabal file. E.g., --flags="debug -usebytestrings"
21165 forces the flag "debug" to true and "usebytestrings" to
21166 false.
21167
21168 --extra-include-dirs PATH
21169 A list of directories to search for header files
21170
21171 --enable-deterministic
21172 --disable-deterministic
21173 Try to be as deterministic as possible (used by the test
21174 suite)
21175
21176 --ipid IPID
21177 Installed package ID to compile this package as
21178
21179 --cid CID
21180 Installed component ID to compile this component as
21181
21182 --extra-lib-dirs PATH
21183 A list of directories to search for external libraries
21184
21185 --extra-framework-dirs PATH
21186 A list of directories to search for external frameworks
21187 (OS X only)
21188
21189 --extra-prog-path PATH
21190 A list of directories to search for required programs (in
21191 addition to the normal search locations)
21192
21193 --instantiate-with NAME=MOD
21194 A mapping of signature names to concrete module instanti‐
21195 ations.
21196
21197 --enable-tests
21198 --disable-tests
21199 dependency checking and compilation for test suites
21200 listed in the package description file.
21201
21202 --enable-coverage
21203 --disable-coverage
21204 build package with Haskell Program Coverage. (GHC only)
21205
21206 --enable-library-coverage
21207 --disable-library-coverage
21208 build package with Haskell Program Coverage. (GHC only)
21209 (DEPRECATED)
21210
21211 --enable-benchmarks
21212 --disable-benchmarks
21213 dependency checking and compilation for benchmarks listed
21214 in the package description file.
21215
21216 --enable-relocatable
21217 --disable-relocatable
21218 building a package that is relocatable. (GHC only)
21219
21220 --disable-response-files
21221 enable workaround for old versions of programs like "ar"
21222 that do not support @file arguments
21223
21224 --allow-depending-on-private-libs
21225 Allow depending on private libraries. If set, the library
21226 visibility check MUST be done externally.
21227
21228 --with-alex PATH
21229 give the path to alex
21230
21231 --with-ar PATH
21232 give the path to ar
21233
21234 --with-c2hs PATH
21235 give the path to c2hs
21236
21237 --with-cpphs PATH
21238 give the path to cpphs
21239
21240 --with-doctest PATH
21241 give the path to doctest
21242
21243 --with-gcc PATH
21244 give the path to gcc
21245
21246 --with-ghc PATH
21247 give the path to ghc
21248
21249 --with-ghc-pkg PATH
21250 give the path to ghc-pkg
21251
21252 --with-ghcjs PATH
21253 give the path to ghcjs
21254
21255 --with-ghcjs-pkg PATH
21256 give the path to ghcjs-pkg
21257
21258 --with-greencard PATH
21259 give the path to greencard
21260
21261 --with-haddock PATH
21262 give the path to haddock
21263
21264 --with-happy PATH
21265 give the path to happy
21266
21267 --with-haskell-suite PATH
21268 give the path to haskell-suite
21269
21270 --with-haskell-suite-pkg PATH
21271 give the path to haskell-suite-pkg
21272
21273 --with-hmake PATH
21274 give the path to hmake
21275
21276 --with-hpc PATH
21277 give the path to hpc
21278
21279 --with-hsc2hs PATH
21280 give the path to hsc2hs
21281
21282 --with-hscolour PATH
21283 give the path to hscolour
21284
21285 --with-jhc PATH
21286 give the path to jhc
21287
21288 --with-ld PATH
21289 give the path to ld
21290
21291 --with-pkg-config PATH
21292 give the path to pkg-config
21293
21294 --with-runghc PATH
21295 give the path to runghc
21296
21297 --with-strip PATH
21298 give the path to strip
21299
21300 --with-tar PATH
21301 give the path to tar
21302
21303 --with-uhc PATH
21304 give the path to uhc
21305
21306 --alex-option OPT
21307 give an extra option to alex (no need to quote options
21308 containing spaces)
21309
21310 --ar-option OPT
21311 give an extra option to ar (no need to quote options con‐
21312 taining spaces)
21313
21314 --c2hs-option OPT
21315 give an extra option to c2hs (no need to quote options
21316 containing spaces)
21317
21318 --cpphs-option OPT
21319 give an extra option to cpphs (no need to quote options
21320 containing spaces)
21321
21322 --doctest-option OPT
21323 give an extra option to doctest (no need to quote options
21324 containing spaces)
21325
21326 --gcc-option OPT
21327 give an extra option to gcc (no need to quote options
21328 containing spaces)
21329
21330 --ghc-option OPT
21331 give an extra option to ghc (no need to quote options
21332 containing spaces)
21333
21334 --ghc-pkg-option OPT
21335 give an extra option to ghc-pkg (no need to quote options
21336 containing spaces)
21337
21338 --ghcjs-option OPT
21339 give an extra option to ghcjs (no need to quote options
21340 containing spaces)
21341
21342 --ghcjs-pkg-option OPT
21343 give an extra option to ghcjs-pkg (no need to quote
21344 options containing spaces)
21345
21346 --greencard-option OPT
21347 give an extra option to greencard (no need to quote
21348 options containing spaces)
21349
21350 --haddock-option OPT
21351 give an extra option to haddock (no need to quote options
21352 containing spaces)
21353
21354 --happy-option OPT
21355 give an extra option to happy (no need to quote options
21356 containing spaces)
21357
21358 --haskell-suite-option OPT
21359 give an extra option to haskell-suite (no need to quote
21360 options containing spaces)
21361
21362 --haskell-suite-pkg-option OPT
21363 give an extra option to haskell-suite-pkg (no need to
21364 quote options containing spaces)
21365
21366 --hmake-option OPT
21367 give an extra option to hmake (no need to quote options
21368 containing spaces)
21369
21370 --hpc-option OPT
21371 give an extra option to hpc (no need to quote options
21372 containing spaces)
21373
21374 --hsc2hs-option OPT
21375 give an extra option to hsc2hs (no need to quote options
21376 containing spaces)
21377
21378 --hscolour-option OPT
21379 give an extra option to hscolour (no need to quote
21380 options containing spaces)
21381
21382 --jhc-option OPT
21383 give an extra option to jhc (no need to quote options
21384 containing spaces)
21385
21386 --ld-option OPT
21387 give an extra option to ld (no need to quote options con‐
21388 taining spaces)
21389
21390 --pkg-config-option OPT
21391 give an extra option to pkg-config (no need to quote
21392 options containing spaces)
21393
21394 --runghc-option OPT
21395 give an extra option to runghc (no need to quote options
21396 containing spaces)
21397
21398 --strip-option OPT
21399 give an extra option to strip (no need to quote options
21400 containing spaces)
21401
21402 --tar-option OPT
21403 give an extra option to tar (no need to quote options
21404 containing spaces)
21405
21406 --uhc-option OPT
21407 give an extra option to uhc (no need to quote options
21408 containing spaces)
21409
21410 --alex-options OPTS
21411 give extra options to alex
21412
21413 --ar-options OPTS
21414 give extra options to ar
21415
21416 --c2hs-options OPTS
21417 give extra options to c2hs
21418
21419 --cpphs-options OPTS
21420 give extra options to cpphs
21421
21422 --doctest-options OPTS
21423 give extra options to doctest
21424
21425 --gcc-options OPTS
21426 give extra options to gcc
21427
21428 --ghc-options OPTS
21429 give extra options to ghc
21430
21431 --ghc-pkg-options OPTS
21432 give extra options to ghc-pkg
21433
21434 --ghcjs-options OPTS
21435 give extra options to ghcjs
21436
21437 --ghcjs-pkg-options OPTS
21438 give extra options to ghcjs-pkg
21439
21440 --greencard-options OPTS
21441 give extra options to greencard
21442
21443 --haddock-options OPTS
21444 give extra options to haddock
21445
21446 --happy-options OPTS
21447 give extra options to happy
21448
21449 --haskell-suite-options OPTS
21450 give extra options to haskell-suite
21451
21452 --haskell-suite-pkg-options OPTS
21453 give extra options to haskell-suite-pkg
21454
21455 --hmake-options OPTS
21456 give extra options to hmake
21457
21458 --hpc-options OPTS
21459 give extra options to hpc
21460
21461 --hsc2hs-options OPTS
21462 give extra options to hsc2hs
21463
21464 --hscolour-options OPTS
21465 give extra options to hscolour
21466
21467 --jhc-options OPTS
21468 give extra options to jhc
21469
21470 --ld-options OPTS
21471 give extra options to ld
21472
21473 --pkg-config-options OPTS
21474 give extra options to pkg-config
21475
21476 --runghc-options OPTS
21477 give extra options to runghc
21478
21479 --strip-options OPTS
21480 give extra options to strip
21481
21482 --tar-options OPTS
21483 give extra options to tar
21484
21485 --uhc-options OPTS
21486 give extra options to uhc
21487
21488 --cabal-lib-version VERSION
21489 Select which version of the Cabal lib to use to build
21490 packages (useful for testing).
21491
21492 --constraint CONSTRAINT
21493 Specify constraints on a package (version,
21494 installed/source, flags)
21495
21496 --preference CONSTRAINT
21497 Specify preferences (soft constraints) on the version of
21498 a package
21499
21500 --solver SOLVER
21501 Select dependency solver to use (default: modular).
21502 Choices: modular.
21503
21504 --allow-older [DEPS]
21505 Ignore lower bounds in all dependencies or DEPS
21506
21507 --allow-newer [DEPS]
21508 Ignore upper bounds in all dependencies or DEPS
21509
21510 --write-ghc-environment-files always|never|ghc8.4.4+
21511 Whether to create a .ghc.environment file after a suc‐
21512 cessful build (v2-build only)
21513
21514 --enable-documentation
21515 --disable-documentation
21516 building of documentation
21517
21518 --doc-index-file TEMPLATE
21519 A central index of haddock API documentation (template
21520 cannot use $pkgid)
21521
21522 --dry-run
21523 Do not install anything, only print what would be
21524 installed.
21525
21526 --max-backjumps NUM
21527 Maximum number of backjumps allowed while solving
21528 (default: 4000). Use a negative number to enable unlim‐
21529 ited backtracking. Use 0 to disable backtracking com‐
21530 pletely.
21531
21532 --reorder-goals
21533 --no-reorder-goals
21534 Try to reorder goals according to certain heuristics.
21535 Slows things down on average, but may make backtracking
21536 faster for some packages.
21537
21538 --count-conflicts
21539 --no-count-conflicts
21540 Try to speed up solving by preferring goals that are
21541 involved in a lot of conflicts (default).
21542
21543 --minimize-conflict-set
21544 --no-minimize-conflict-set
21545 When there is no solution, try to improve the error mes‐
21546 sage by finding a minimal conflict set (default: false).
21547 May increase run time significantly.
21548
21549 --independent-goals
21550 --no-independent-goals
21551 Treat several goals on the command line as independent.
21552 If several goals depend on the same package, different
21553 versions can be chosen.
21554
21555 --shadow-installed-packages
21556 --no-shadow-installed-packages
21557 If multiple package instances of the same version are
21558 installed, treat all but one as shadowed.
21559
21560 --strong-flags
21561 --no-strong-flags
21562 Do not defer flag choices (this used to be the default in
21563 cabal-install <= 1.20).
21564
21565 --allow-boot-library-installs
21566 --no-allow-boot-library-installs
21567 Allow cabal to install base, ghc-prim, integer-simple,
21568 integer-gmp, and template-haskell.
21569
21570 --reject-unconstrained-dependencies none|all
21571 Require these packages to have constraints on them if
21572 they are to be selected (default: none).
21573
21574 --reinstall
21575 --no-reinstall
21576 Install even if it means installing the same version
21577 again.
21578
21579 --avoid-reinstalls
21580 --no-avoid-reinstalls
21581 Do not select versions that would destructively overwrite
21582 installed packages.
21583
21584 --force-reinstalls
21585 --no-force-reinstalls
21586 Reinstall packages even if they will most likely break
21587 other installed packages.
21588
21589 --upgrade-dependencies
21590 --no-upgrade-dependencies
21591 Pick the latest version for all dependencies, rather than
21592 trying to pick an installed version.
21593
21594 --only-dependencies
21595 --no-only-dependencies
21596 Install only the dependencies necessary to build the
21597 given packages
21598
21599 --dependencies-only
21600 --no-dependencies-only
21601 A synonym for --only-dependencies
21602
21603 --index-state STATE
21604 Use source package index state as it existed at a previ‐
21605 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
21606 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
21607 'HEAD' (default: 'HEAD').
21608
21609 --root-cmd COMMAND
21610 (No longer supported, do not use.)
21611
21612 --symlink-bindir DIR
21613 Add symlinks to installed executables into this direc‐
21614 tory.
21615
21616 --build-summary TEMPLATE
21617 Save build summaries to file (name template can use
21618 $pkgid, $compiler, $os, $arch)
21619
21620 --build-log TEMPLATE
21621 Log all builds to file (name template can use $pkgid,
21622 $compiler, $os, $arch)
21623
21624 --remote-build-reporting LEVEL
21625 Generate build reports to send to a remote server (none,
21626 anonymous or detailed).
21627
21628 --report-planning-failure
21629 Generate build reports when the dependency solver fails.
21630 This is used by the Hackage build bot.
21631
21632 --enable-per-component
21633 --disable-per-component
21634 Per-component builds when possible
21635
21636 --one-shot
21637 --no-one-shot
21638 Do not record the packages in the world file.
21639
21640 --run-tests
21641 Run package test suites during installation.
21642
21643 -j, --jobs [NUM]
21644 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
21645 given).
21646
21647 --keep-going
21648 After a build failure, continue to build other unaffected
21649 packages.
21650
21651 --offline
21652 --no-offline
21653 Don't download packages from the Internet.
21654
21655 --project-file FILE
21656 Set the name of the cabal.project file to search for in
21657 parent directories
21658
21659 --only
21660 Only installs the package in the current directory.
21661
21662 --haddock-hoogle
21663 Generate a hoogle database
21664
21665 --haddock-html
21666 Generate HTML documentation (the default)
21667
21668 --haddock-html-location URL
21669 Location of HTML documentation for pre-requisite packages
21670
21671 --haddock-for-hackage
21672 Collection of flags to generate documentation suitable
21673 for upload to hackage
21674
21675 --haddock-executables
21676 Run haddock for Executables targets
21677
21678 --haddock-tests
21679 Run haddock for Test Suite targets
21680
21681 --haddock-benchmarks
21682 Run haddock for Benchmark targets
21683
21684 --haddock-all
21685 Run haddock for all targets
21686
21687 --haddock-internal
21688 Run haddock for internal modules and include all symbols
21689
21690 --haddock-css PATH
21691 Use PATH as the haddock stylesheet
21692
21693 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
21694 dock-hyperlinked-source
21695 Hyperlink the documentation to the source code
21696
21697 --haddock-quickjump
21698 Generate an index for interactive documentation naviga‐
21699 tion
21700
21701 --haddock-hscolour-css PATH
21702 Use PATH as the HsColour stylesheet
21703
21704 --haddock-contents-location URL
21705 Bake URL in as the location for the contents page
21706
21707 --test-log TEMPLATE
21708 Log all test suite results to file (name template can use
21709 $pkgid, $compiler, $os, $arch, $test-suite, $result)
21710
21711 --test-machine-log TEMPLATE
21712 Produce a machine-readable log file (name template can
21713 use $pkgid, $compiler, $os, $arch, $result)
21714
21715 --test-show-details FILTER
21716
21717 --test-keep-tix-files
21718 keep .tix files for HPC between test runs
21719
21720 --test-wrapper FILE
21721 Run test through a wrapper.
21722
21723 --test-fail-when-no-test-suites
21724 Exit with failure when no test suites are found.
21725
21726 --test-options TEMPLATES
21727 give extra options to test executables (name templates
21728 can use $pkgid, $compiler, $os, $arch, $test-suite)
21729
21730 --test-option TEMPLATE
21731 give extra option to test executables (no need to quote
21732 options containing spaces, name template can use $pkgid,
21733 $compiler, $os, $arch, $test-suite)
21734
21735
21736 cabal bench
21737
21738 Usage: cabal bench [TARGETS] [FLAGS]
21739
21740
21741 Runs the specified benchmarks, first ensuring they are up to date.
21742
21743 Any benchmark in any package in the project can be specified. A package
21744 can be specified in which case all the benchmarks in the package are
21745 run. The default is to run all the benchmarks in the package in the
21746 current directory.
21747
21748 Dependencies are built or rebuilt as necessary. Additional configura‐
21749 tion flags can be specified on the command line and these extend the
21750 project configuration from the 'cabal.project', 'cabal.project.local'
21751 and other files.
21752
21753
21754 Runs the specified benchmarks, first ensuring they are up to date.
21755
21756 Any benchmark in any package in the project can be specified. A package
21757 can be specified in which case all the benchmarks in the package are
21758 run. The default is to run all the benchmarks in the package in the
21759 current directory.
21760
21761 Dependencies are built or rebuilt as necessary. Additional configura‐
21762 tion flags can be specified on the command line and these extend the
21763 project configuration from the 'cabal.project', 'cabal.project.local'
21764 and other files.
21765
21766
21767 Flags:
21768 -v, --verbose [n]
21769 Control verbosity (n is 0--3, default verbosity level is
21770 1)
21771
21772 --builddir, --distdir, --distpref DIR
21773 The directory where Cabal puts generated build files
21774 (default dist)
21775
21776 -g, --ghc
21777 compile with GHC
21778
21779 --ghcjs
21780 compile with GHCJS
21781
21782 --uhc
21783 compile with UHC
21784
21785 --haskell-suite
21786 compile with a haskell-suite compiler
21787
21788 --cabal-file PATH
21789 use this Cabal file
21790
21791 -w, --with-compiler PATH
21792 give the path to a particular compiler
21793
21794 --with-hc-pkg PATH
21795 give the path to the package tool
21796
21797 --prefix DIR
21798 bake this prefix in preparation of installation
21799
21800 --bindir DIR
21801 installation directory for executables
21802
21803 --libdir DIR
21804 installation directory for libraries
21805
21806 --libsubdir DIR
21807 subdirectory of libdir in which libs are installed
21808
21809 --dynlibdir DIR
21810 installation directory for dynamic libraries
21811
21812 --libexecdir DIR
21813 installation directory for program executables
21814
21815 --libexecsubdir DIR
21816 subdirectory of libexecdir in which private executables
21817 are installed
21818
21819 --datadir DIR
21820 installation directory for read-only data
21821
21822 --datasubdir DIR
21823 subdirectory of datadir in which data files are installed
21824
21825 --docdir DIR
21826 installation directory for documentation
21827
21828 --htmldir DIR
21829 installation directory for HTML documentation
21830
21831 --haddockdir DIR
21832 installation directory for haddock interfaces
21833
21834 --sysconfdir DIR
21835 installation directory for configuration files
21836
21837 --program-prefix PREFIX
21838 prefix to be applied to installed executables
21839
21840 --program-suffix SUFFIX
21841 suffix to be applied to installed executables
21842
21843 --enable-library-vanilla
21844 --disable-library-vanilla
21845 Vanilla libraries
21846
21847 -p, --enable-library-profiling
21848 --disable-library-profiling
21849 Library profiling
21850
21851 --enable-shared
21852 --disable-shared
21853 Shared library
21854
21855 --enable-static
21856 --disable-static
21857 Static library
21858
21859 --enable-executable-dynamic
21860 --disable-executable-dynamic
21861 Executable dynamic linking
21862
21863 --enable-executable-static
21864 --disable-executable-static
21865 Executable fully static linking
21866
21867 --enable-profiling
21868 --disable-profiling
21869 Executable and library profiling
21870
21871 --enable-executable-profiling
21872 --disable-executable-profiling
21873 Executable profiling (DEPRECATED)
21874
21875 --profiling-detail level
21876 Profiling detail level for executable and library
21877 (default, none, exported-functions, toplevel-functions,
21878 all-functions).
21879
21880 --library-profiling-detail level
21881 Profiling detail level for libraries only.
21882
21883 -O, --enable-optimization, --enable-optimisation [n]
21884 Build with optimization (n is 0--2, default is 1)
21885
21886 --disable-optimization, --disable-optimisation
21887 Build without optimization
21888
21889 --enable-debug-info [n]
21890 Emit debug info (n is 0--3, default is 0)
21891
21892 --disable-debug-info
21893 Don't emit debug info
21894
21895 --enable-library-for-ghci
21896 --disable-library-for-ghci
21897 compile library for use with GHCi
21898
21899 --enable-split-sections
21900 --disable-split-sections
21901 compile library code such that unneeded definitions can
21902 be dropped from the final executable (GHC 7.8+)
21903
21904 --enable-split-objs
21905 --disable-split-objs
21906 split library into smaller objects to reduce binary sizes
21907 (GHC 6.6+)
21908
21909 --enable-executable-stripping
21910 --disable-executable-stripping
21911 strip executables upon installation to reduce binary
21912 sizes
21913
21914 --enable-library-stripping
21915 --disable-library-stripping
21916 strip libraries upon installation to reduce binary sizes
21917
21918 --configure-option OPT
21919 Extra option for configure
21920
21921 --user
21922 --global
21923 doing a per-user installation
21924
21925 --package-db DB
21926 Append the given package database to the list of package
21927 databases used (to satisfy dependencies and register
21928 into). May be a specific file, 'global' or 'user'. The
21929 initial list is ['global'], ['global', 'user'], or
21930 ['global', $sandbox], depending on context. Use 'clear'
21931 to reset the list to empty. See the user guide for
21932 details.
21933
21934 -f, --flags FLAGS
21935 Force values for the given flags in Cabal conditionals in
21936 the .cabal file. E.g., --flags="debug -usebytestrings"
21937 forces the flag "debug" to true and "usebytestrings" to
21938 false.
21939
21940 --extra-include-dirs PATH
21941 A list of directories to search for header files
21942
21943 --enable-deterministic
21944 --disable-deterministic
21945 Try to be as deterministic as possible (used by the test
21946 suite)
21947
21948 --ipid IPID
21949 Installed package ID to compile this package as
21950
21951 --cid CID
21952 Installed component ID to compile this component as
21953
21954 --extra-lib-dirs PATH
21955 A list of directories to search for external libraries
21956
21957 --extra-framework-dirs PATH
21958 A list of directories to search for external frameworks
21959 (OS X only)
21960
21961 --extra-prog-path PATH
21962 A list of directories to search for required programs (in
21963 addition to the normal search locations)
21964
21965 --instantiate-with NAME=MOD
21966 A mapping of signature names to concrete module instanti‐
21967 ations.
21968
21969 --enable-tests
21970 --disable-tests
21971 dependency checking and compilation for test suites
21972 listed in the package description file.
21973
21974 --enable-coverage
21975 --disable-coverage
21976 build package with Haskell Program Coverage. (GHC only)
21977
21978 --enable-library-coverage
21979 --disable-library-coverage
21980 build package with Haskell Program Coverage. (GHC only)
21981 (DEPRECATED)
21982
21983 --enable-benchmarks
21984 --disable-benchmarks
21985 dependency checking and compilation for benchmarks listed
21986 in the package description file.
21987
21988 --enable-relocatable
21989 --disable-relocatable
21990 building a package that is relocatable. (GHC only)
21991
21992 --disable-response-files
21993 enable workaround for old versions of programs like "ar"
21994 that do not support @file arguments
21995
21996 --allow-depending-on-private-libs
21997 Allow depending on private libraries. If set, the library
21998 visibility check MUST be done externally.
21999
22000 --with-alex PATH
22001 give the path to alex
22002
22003 --with-ar PATH
22004 give the path to ar
22005
22006 --with-c2hs PATH
22007 give the path to c2hs
22008
22009 --with-cpphs PATH
22010 give the path to cpphs
22011
22012 --with-doctest PATH
22013 give the path to doctest
22014
22015 --with-gcc PATH
22016 give the path to gcc
22017
22018 --with-ghc PATH
22019 give the path to ghc
22020
22021 --with-ghc-pkg PATH
22022 give the path to ghc-pkg
22023
22024 --with-ghcjs PATH
22025 give the path to ghcjs
22026
22027 --with-ghcjs-pkg PATH
22028 give the path to ghcjs-pkg
22029
22030 --with-greencard PATH
22031 give the path to greencard
22032
22033 --with-haddock PATH
22034 give the path to haddock
22035
22036 --with-happy PATH
22037 give the path to happy
22038
22039 --with-haskell-suite PATH
22040 give the path to haskell-suite
22041
22042 --with-haskell-suite-pkg PATH
22043 give the path to haskell-suite-pkg
22044
22045 --with-hmake PATH
22046 give the path to hmake
22047
22048 --with-hpc PATH
22049 give the path to hpc
22050
22051 --with-hsc2hs PATH
22052 give the path to hsc2hs
22053
22054 --with-hscolour PATH
22055 give the path to hscolour
22056
22057 --with-jhc PATH
22058 give the path to jhc
22059
22060 --with-ld PATH
22061 give the path to ld
22062
22063 --with-pkg-config PATH
22064 give the path to pkg-config
22065
22066 --with-runghc PATH
22067 give the path to runghc
22068
22069 --with-strip PATH
22070 give the path to strip
22071
22072 --with-tar PATH
22073 give the path to tar
22074
22075 --with-uhc PATH
22076 give the path to uhc
22077
22078 --alex-option OPT
22079 give an extra option to alex (no need to quote options
22080 containing spaces)
22081
22082 --ar-option OPT
22083 give an extra option to ar (no need to quote options con‐
22084 taining spaces)
22085
22086 --c2hs-option OPT
22087 give an extra option to c2hs (no need to quote options
22088 containing spaces)
22089
22090 --cpphs-option OPT
22091 give an extra option to cpphs (no need to quote options
22092 containing spaces)
22093
22094 --doctest-option OPT
22095 give an extra option to doctest (no need to quote options
22096 containing spaces)
22097
22098 --gcc-option OPT
22099 give an extra option to gcc (no need to quote options
22100 containing spaces)
22101
22102 --ghc-option OPT
22103 give an extra option to ghc (no need to quote options
22104 containing spaces)
22105
22106 --ghc-pkg-option OPT
22107 give an extra option to ghc-pkg (no need to quote options
22108 containing spaces)
22109
22110 --ghcjs-option OPT
22111 give an extra option to ghcjs (no need to quote options
22112 containing spaces)
22113
22114 --ghcjs-pkg-option OPT
22115 give an extra option to ghcjs-pkg (no need to quote
22116 options containing spaces)
22117
22118 --greencard-option OPT
22119 give an extra option to greencard (no need to quote
22120 options containing spaces)
22121
22122 --haddock-option OPT
22123 give an extra option to haddock (no need to quote options
22124 containing spaces)
22125
22126 --happy-option OPT
22127 give an extra option to happy (no need to quote options
22128 containing spaces)
22129
22130 --haskell-suite-option OPT
22131 give an extra option to haskell-suite (no need to quote
22132 options containing spaces)
22133
22134 --haskell-suite-pkg-option OPT
22135 give an extra option to haskell-suite-pkg (no need to
22136 quote options containing spaces)
22137
22138 --hmake-option OPT
22139 give an extra option to hmake (no need to quote options
22140 containing spaces)
22141
22142 --hpc-option OPT
22143 give an extra option to hpc (no need to quote options
22144 containing spaces)
22145
22146 --hsc2hs-option OPT
22147 give an extra option to hsc2hs (no need to quote options
22148 containing spaces)
22149
22150 --hscolour-option OPT
22151 give an extra option to hscolour (no need to quote
22152 options containing spaces)
22153
22154 --jhc-option OPT
22155 give an extra option to jhc (no need to quote options
22156 containing spaces)
22157
22158 --ld-option OPT
22159 give an extra option to ld (no need to quote options con‐
22160 taining spaces)
22161
22162 --pkg-config-option OPT
22163 give an extra option to pkg-config (no need to quote
22164 options containing spaces)
22165
22166 --runghc-option OPT
22167 give an extra option to runghc (no need to quote options
22168 containing spaces)
22169
22170 --strip-option OPT
22171 give an extra option to strip (no need to quote options
22172 containing spaces)
22173
22174 --tar-option OPT
22175 give an extra option to tar (no need to quote options
22176 containing spaces)
22177
22178 --uhc-option OPT
22179 give an extra option to uhc (no need to quote options
22180 containing spaces)
22181
22182 --alex-options OPTS
22183 give extra options to alex
22184
22185 --ar-options OPTS
22186 give extra options to ar
22187
22188 --c2hs-options OPTS
22189 give extra options to c2hs
22190
22191 --cpphs-options OPTS
22192 give extra options to cpphs
22193
22194 --doctest-options OPTS
22195 give extra options to doctest
22196
22197 --gcc-options OPTS
22198 give extra options to gcc
22199
22200 --ghc-options OPTS
22201 give extra options to ghc
22202
22203 --ghc-pkg-options OPTS
22204 give extra options to ghc-pkg
22205
22206 --ghcjs-options OPTS
22207 give extra options to ghcjs
22208
22209 --ghcjs-pkg-options OPTS
22210 give extra options to ghcjs-pkg
22211
22212 --greencard-options OPTS
22213 give extra options to greencard
22214
22215 --haddock-options OPTS
22216 give extra options to haddock
22217
22218 --happy-options OPTS
22219 give extra options to happy
22220
22221 --haskell-suite-options OPTS
22222 give extra options to haskell-suite
22223
22224 --haskell-suite-pkg-options OPTS
22225 give extra options to haskell-suite-pkg
22226
22227 --hmake-options OPTS
22228 give extra options to hmake
22229
22230 --hpc-options OPTS
22231 give extra options to hpc
22232
22233 --hsc2hs-options OPTS
22234 give extra options to hsc2hs
22235
22236 --hscolour-options OPTS
22237 give extra options to hscolour
22238
22239 --jhc-options OPTS
22240 give extra options to jhc
22241
22242 --ld-options OPTS
22243 give extra options to ld
22244
22245 --pkg-config-options OPTS
22246 give extra options to pkg-config
22247
22248 --runghc-options OPTS
22249 give extra options to runghc
22250
22251 --strip-options OPTS
22252 give extra options to strip
22253
22254 --tar-options OPTS
22255 give extra options to tar
22256
22257 --uhc-options OPTS
22258 give extra options to uhc
22259
22260 --cabal-lib-version VERSION
22261 Select which version of the Cabal lib to use to build
22262 packages (useful for testing).
22263
22264 --constraint CONSTRAINT
22265 Specify constraints on a package (version,
22266 installed/source, flags)
22267
22268 --preference CONSTRAINT
22269 Specify preferences (soft constraints) on the version of
22270 a package
22271
22272 --solver SOLVER
22273 Select dependency solver to use (default: modular).
22274 Choices: modular.
22275
22276 --allow-older [DEPS]
22277 Ignore lower bounds in all dependencies or DEPS
22278
22279 --allow-newer [DEPS]
22280 Ignore upper bounds in all dependencies or DEPS
22281
22282 --write-ghc-environment-files always|never|ghc8.4.4+
22283 Whether to create a .ghc.environment file after a suc‐
22284 cessful build (v2-build only)
22285
22286 --enable-documentation
22287 --disable-documentation
22288 building of documentation
22289
22290 --doc-index-file TEMPLATE
22291 A central index of haddock API documentation (template
22292 cannot use $pkgid)
22293
22294 --dry-run
22295 Do not install anything, only print what would be
22296 installed.
22297
22298 --max-backjumps NUM
22299 Maximum number of backjumps allowed while solving
22300 (default: 4000). Use a negative number to enable unlim‐
22301 ited backtracking. Use 0 to disable backtracking com‐
22302 pletely.
22303
22304 --reorder-goals
22305 --no-reorder-goals
22306 Try to reorder goals according to certain heuristics.
22307 Slows things down on average, but may make backtracking
22308 faster for some packages.
22309
22310 --count-conflicts
22311 --no-count-conflicts
22312 Try to speed up solving by preferring goals that are
22313 involved in a lot of conflicts (default).
22314
22315 --minimize-conflict-set
22316 --no-minimize-conflict-set
22317 When there is no solution, try to improve the error mes‐
22318 sage by finding a minimal conflict set (default: false).
22319 May increase run time significantly.
22320
22321 --independent-goals
22322 --no-independent-goals
22323 Treat several goals on the command line as independent.
22324 If several goals depend on the same package, different
22325 versions can be chosen.
22326
22327 --shadow-installed-packages
22328 --no-shadow-installed-packages
22329 If multiple package instances of the same version are
22330 installed, treat all but one as shadowed.
22331
22332 --strong-flags
22333 --no-strong-flags
22334 Do not defer flag choices (this used to be the default in
22335 cabal-install <= 1.20).
22336
22337 --allow-boot-library-installs
22338 --no-allow-boot-library-installs
22339 Allow cabal to install base, ghc-prim, integer-simple,
22340 integer-gmp, and template-haskell.
22341
22342 --reject-unconstrained-dependencies none|all
22343 Require these packages to have constraints on them if
22344 they are to be selected (default: none).
22345
22346 --reinstall
22347 --no-reinstall
22348 Install even if it means installing the same version
22349 again.
22350
22351 --avoid-reinstalls
22352 --no-avoid-reinstalls
22353 Do not select versions that would destructively overwrite
22354 installed packages.
22355
22356 --force-reinstalls
22357 --no-force-reinstalls
22358 Reinstall packages even if they will most likely break
22359 other installed packages.
22360
22361 --upgrade-dependencies
22362 --no-upgrade-dependencies
22363 Pick the latest version for all dependencies, rather than
22364 trying to pick an installed version.
22365
22366 --only-dependencies
22367 --no-only-dependencies
22368 Install only the dependencies necessary to build the
22369 given packages
22370
22371 --dependencies-only
22372 --no-dependencies-only
22373 A synonym for --only-dependencies
22374
22375 --index-state STATE
22376 Use source package index state as it existed at a previ‐
22377 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
22378 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
22379 'HEAD' (default: 'HEAD').
22380
22381 --root-cmd COMMAND
22382 (No longer supported, do not use.)
22383
22384 --symlink-bindir DIR
22385 Add symlinks to installed executables into this direc‐
22386 tory.
22387
22388 --build-summary TEMPLATE
22389 Save build summaries to file (name template can use
22390 $pkgid, $compiler, $os, $arch)
22391
22392 --build-log TEMPLATE
22393 Log all builds to file (name template can use $pkgid,
22394 $compiler, $os, $arch)
22395
22396 --remote-build-reporting LEVEL
22397 Generate build reports to send to a remote server (none,
22398 anonymous or detailed).
22399
22400 --report-planning-failure
22401 Generate build reports when the dependency solver fails.
22402 This is used by the Hackage build bot.
22403
22404 --enable-per-component
22405 --disable-per-component
22406 Per-component builds when possible
22407
22408 --one-shot
22409 --no-one-shot
22410 Do not record the packages in the world file.
22411
22412 --run-tests
22413 Run package test suites during installation.
22414
22415 -j, --jobs [NUM]
22416 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
22417 given).
22418
22419 --keep-going
22420 After a build failure, continue to build other unaffected
22421 packages.
22422
22423 --offline
22424 --no-offline
22425 Don't download packages from the Internet.
22426
22427 --project-file FILE
22428 Set the name of the cabal.project file to search for in
22429 parent directories
22430
22431 --only
22432 Only installs the package in the current directory.
22433
22434 --haddock-hoogle
22435 Generate a hoogle database
22436
22437 --haddock-html
22438 Generate HTML documentation (the default)
22439
22440 --haddock-html-location URL
22441 Location of HTML documentation for pre-requisite packages
22442
22443 --haddock-for-hackage
22444 Collection of flags to generate documentation suitable
22445 for upload to hackage
22446
22447 --haddock-executables
22448 Run haddock for Executables targets
22449
22450 --haddock-tests
22451 Run haddock for Test Suite targets
22452
22453 --haddock-benchmarks
22454 Run haddock for Benchmark targets
22455
22456 --haddock-all
22457 Run haddock for all targets
22458
22459 --haddock-internal
22460 Run haddock for internal modules and include all symbols
22461
22462 --haddock-css PATH
22463 Use PATH as the haddock stylesheet
22464
22465 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
22466 dock-hyperlinked-source
22467 Hyperlink the documentation to the source code
22468
22469 --haddock-quickjump
22470 Generate an index for interactive documentation naviga‐
22471 tion
22472
22473 --haddock-hscolour-css PATH
22474 Use PATH as the HsColour stylesheet
22475
22476 --haddock-contents-location URL
22477 Bake URL in as the location for the contents page
22478
22479 --test-log TEMPLATE
22480 Log all test suite results to file (name template can use
22481 $pkgid, $compiler, $os, $arch, $test-suite, $result)
22482
22483 --test-machine-log TEMPLATE
22484 Produce a machine-readable log file (name template can
22485 use $pkgid, $compiler, $os, $arch, $result)
22486
22487 --test-show-details FILTER
22488
22489 --test-keep-tix-files
22490 keep .tix files for HPC between test runs
22491
22492 --test-wrapper FILE
22493 Run test through a wrapper.
22494
22495 --test-fail-when-no-test-suites
22496 Exit with failure when no test suites are found.
22497
22498 --test-options TEMPLATES
22499 give extra options to test executables (name templates
22500 can use $pkgid, $compiler, $os, $arch, $test-suite)
22501
22502 --test-option TEMPLATE
22503 give extra option to test executables (no need to quote
22504 options containing spaces, name template can use $pkgid,
22505 $compiler, $os, $arch, $test-suite)
22506
22507
22508 cabal new-bench
22509
22510 Usage: cabal new-bench [TARGETS] [FLAGS]
22511
22512
22513 Runs the specified benchmarks, first ensuring they are up to date.
22514
22515 Any benchmark in any package in the project can be specified. A package
22516 can be specified in which case all the benchmarks in the package are
22517 run. The default is to run all the benchmarks in the package in the
22518 current directory.
22519
22520 Dependencies are built or rebuilt as necessary. Additional configura‐
22521 tion flags can be specified on the command line and these extend the
22522 project configuration from the 'cabal.project', 'cabal.project.local'
22523 and other files.
22524
22525
22526 Runs the specified benchmarks, first ensuring they are up to date.
22527
22528 Any benchmark in any package in the project can be specified. A package
22529 can be specified in which case all the benchmarks in the package are
22530 run. The default is to run all the benchmarks in the package in the
22531 current directory.
22532
22533 Dependencies are built or rebuilt as necessary. Additional configura‐
22534 tion flags can be specified on the command line and these extend the
22535 project configuration from the 'cabal.project', 'cabal.project.local'
22536 and other files.
22537
22538
22539 Flags:
22540 -v, --verbose [n]
22541 Control verbosity (n is 0--3, default verbosity level is
22542 1)
22543
22544 --builddir, --distdir, --distpref DIR
22545 The directory where Cabal puts generated build files
22546 (default dist)
22547
22548 -g, --ghc
22549 compile with GHC
22550
22551 --ghcjs
22552 compile with GHCJS
22553
22554 --uhc
22555 compile with UHC
22556
22557 --haskell-suite
22558 compile with a haskell-suite compiler
22559
22560 --cabal-file PATH
22561 use this Cabal file
22562
22563 -w, --with-compiler PATH
22564 give the path to a particular compiler
22565
22566 --with-hc-pkg PATH
22567 give the path to the package tool
22568
22569 --prefix DIR
22570 bake this prefix in preparation of installation
22571
22572 --bindir DIR
22573 installation directory for executables
22574
22575 --libdir DIR
22576 installation directory for libraries
22577
22578 --libsubdir DIR
22579 subdirectory of libdir in which libs are installed
22580
22581 --dynlibdir DIR
22582 installation directory for dynamic libraries
22583
22584 --libexecdir DIR
22585 installation directory for program executables
22586
22587 --libexecsubdir DIR
22588 subdirectory of libexecdir in which private executables
22589 are installed
22590
22591 --datadir DIR
22592 installation directory for read-only data
22593
22594 --datasubdir DIR
22595 subdirectory of datadir in which data files are installed
22596
22597 --docdir DIR
22598 installation directory for documentation
22599
22600 --htmldir DIR
22601 installation directory for HTML documentation
22602
22603 --haddockdir DIR
22604 installation directory for haddock interfaces
22605
22606 --sysconfdir DIR
22607 installation directory for configuration files
22608
22609 --program-prefix PREFIX
22610 prefix to be applied to installed executables
22611
22612 --program-suffix SUFFIX
22613 suffix to be applied to installed executables
22614
22615 --enable-library-vanilla
22616 --disable-library-vanilla
22617 Vanilla libraries
22618
22619 -p, --enable-library-profiling
22620 --disable-library-profiling
22621 Library profiling
22622
22623 --enable-shared
22624 --disable-shared
22625 Shared library
22626
22627 --enable-static
22628 --disable-static
22629 Static library
22630
22631 --enable-executable-dynamic
22632 --disable-executable-dynamic
22633 Executable dynamic linking
22634
22635 --enable-executable-static
22636 --disable-executable-static
22637 Executable fully static linking
22638
22639 --enable-profiling
22640 --disable-profiling
22641 Executable and library profiling
22642
22643 --enable-executable-profiling
22644 --disable-executable-profiling
22645 Executable profiling (DEPRECATED)
22646
22647 --profiling-detail level
22648 Profiling detail level for executable and library
22649 (default, none, exported-functions, toplevel-functions,
22650 all-functions).
22651
22652 --library-profiling-detail level
22653 Profiling detail level for libraries only.
22654
22655 -O, --enable-optimization, --enable-optimisation [n]
22656 Build with optimization (n is 0--2, default is 1)
22657
22658 --disable-optimization, --disable-optimisation
22659 Build without optimization
22660
22661 --enable-debug-info [n]
22662 Emit debug info (n is 0--3, default is 0)
22663
22664 --disable-debug-info
22665 Don't emit debug info
22666
22667 --enable-library-for-ghci
22668 --disable-library-for-ghci
22669 compile library for use with GHCi
22670
22671 --enable-split-sections
22672 --disable-split-sections
22673 compile library code such that unneeded definitions can
22674 be dropped from the final executable (GHC 7.8+)
22675
22676 --enable-split-objs
22677 --disable-split-objs
22678 split library into smaller objects to reduce binary sizes
22679 (GHC 6.6+)
22680
22681 --enable-executable-stripping
22682 --disable-executable-stripping
22683 strip executables upon installation to reduce binary
22684 sizes
22685
22686 --enable-library-stripping
22687 --disable-library-stripping
22688 strip libraries upon installation to reduce binary sizes
22689
22690 --configure-option OPT
22691 Extra option for configure
22692
22693 --user
22694 --global
22695 doing a per-user installation
22696
22697 --package-db DB
22698 Append the given package database to the list of package
22699 databases used (to satisfy dependencies and register
22700 into). May be a specific file, 'global' or 'user'. The
22701 initial list is ['global'], ['global', 'user'], or
22702 ['global', $sandbox], depending on context. Use 'clear'
22703 to reset the list to empty. See the user guide for
22704 details.
22705
22706 -f, --flags FLAGS
22707 Force values for the given flags in Cabal conditionals in
22708 the .cabal file. E.g., --flags="debug -usebytestrings"
22709 forces the flag "debug" to true and "usebytestrings" to
22710 false.
22711
22712 --extra-include-dirs PATH
22713 A list of directories to search for header files
22714
22715 --enable-deterministic
22716 --disable-deterministic
22717 Try to be as deterministic as possible (used by the test
22718 suite)
22719
22720 --ipid IPID
22721 Installed package ID to compile this package as
22722
22723 --cid CID
22724 Installed component ID to compile this component as
22725
22726 --extra-lib-dirs PATH
22727 A list of directories to search for external libraries
22728
22729 --extra-framework-dirs PATH
22730 A list of directories to search for external frameworks
22731 (OS X only)
22732
22733 --extra-prog-path PATH
22734 A list of directories to search for required programs (in
22735 addition to the normal search locations)
22736
22737 --instantiate-with NAME=MOD
22738 A mapping of signature names to concrete module instanti‐
22739 ations.
22740
22741 --enable-tests
22742 --disable-tests
22743 dependency checking and compilation for test suites
22744 listed in the package description file.
22745
22746 --enable-coverage
22747 --disable-coverage
22748 build package with Haskell Program Coverage. (GHC only)
22749
22750 --enable-library-coverage
22751 --disable-library-coverage
22752 build package with Haskell Program Coverage. (GHC only)
22753 (DEPRECATED)
22754
22755 --enable-benchmarks
22756 --disable-benchmarks
22757 dependency checking and compilation for benchmarks listed
22758 in the package description file.
22759
22760 --enable-relocatable
22761 --disable-relocatable
22762 building a package that is relocatable. (GHC only)
22763
22764 --disable-response-files
22765 enable workaround for old versions of programs like "ar"
22766 that do not support @file arguments
22767
22768 --allow-depending-on-private-libs
22769 Allow depending on private libraries. If set, the library
22770 visibility check MUST be done externally.
22771
22772 --with-alex PATH
22773 give the path to alex
22774
22775 --with-ar PATH
22776 give the path to ar
22777
22778 --with-c2hs PATH
22779 give the path to c2hs
22780
22781 --with-cpphs PATH
22782 give the path to cpphs
22783
22784 --with-doctest PATH
22785 give the path to doctest
22786
22787 --with-gcc PATH
22788 give the path to gcc
22789
22790 --with-ghc PATH
22791 give the path to ghc
22792
22793 --with-ghc-pkg PATH
22794 give the path to ghc-pkg
22795
22796 --with-ghcjs PATH
22797 give the path to ghcjs
22798
22799 --with-ghcjs-pkg PATH
22800 give the path to ghcjs-pkg
22801
22802 --with-greencard PATH
22803 give the path to greencard
22804
22805 --with-haddock PATH
22806 give the path to haddock
22807
22808 --with-happy PATH
22809 give the path to happy
22810
22811 --with-haskell-suite PATH
22812 give the path to haskell-suite
22813
22814 --with-haskell-suite-pkg PATH
22815 give the path to haskell-suite-pkg
22816
22817 --with-hmake PATH
22818 give the path to hmake
22819
22820 --with-hpc PATH
22821 give the path to hpc
22822
22823 --with-hsc2hs PATH
22824 give the path to hsc2hs
22825
22826 --with-hscolour PATH
22827 give the path to hscolour
22828
22829 --with-jhc PATH
22830 give the path to jhc
22831
22832 --with-ld PATH
22833 give the path to ld
22834
22835 --with-pkg-config PATH
22836 give the path to pkg-config
22837
22838 --with-runghc PATH
22839 give the path to runghc
22840
22841 --with-strip PATH
22842 give the path to strip
22843
22844 --with-tar PATH
22845 give the path to tar
22846
22847 --with-uhc PATH
22848 give the path to uhc
22849
22850 --alex-option OPT
22851 give an extra option to alex (no need to quote options
22852 containing spaces)
22853
22854 --ar-option OPT
22855 give an extra option to ar (no need to quote options con‐
22856 taining spaces)
22857
22858 --c2hs-option OPT
22859 give an extra option to c2hs (no need to quote options
22860 containing spaces)
22861
22862 --cpphs-option OPT
22863 give an extra option to cpphs (no need to quote options
22864 containing spaces)
22865
22866 --doctest-option OPT
22867 give an extra option to doctest (no need to quote options
22868 containing spaces)
22869
22870 --gcc-option OPT
22871 give an extra option to gcc (no need to quote options
22872 containing spaces)
22873
22874 --ghc-option OPT
22875 give an extra option to ghc (no need to quote options
22876 containing spaces)
22877
22878 --ghc-pkg-option OPT
22879 give an extra option to ghc-pkg (no need to quote options
22880 containing spaces)
22881
22882 --ghcjs-option OPT
22883 give an extra option to ghcjs (no need to quote options
22884 containing spaces)
22885
22886 --ghcjs-pkg-option OPT
22887 give an extra option to ghcjs-pkg (no need to quote
22888 options containing spaces)
22889
22890 --greencard-option OPT
22891 give an extra option to greencard (no need to quote
22892 options containing spaces)
22893
22894 --haddock-option OPT
22895 give an extra option to haddock (no need to quote options
22896 containing spaces)
22897
22898 --happy-option OPT
22899 give an extra option to happy (no need to quote options
22900 containing spaces)
22901
22902 --haskell-suite-option OPT
22903 give an extra option to haskell-suite (no need to quote
22904 options containing spaces)
22905
22906 --haskell-suite-pkg-option OPT
22907 give an extra option to haskell-suite-pkg (no need to
22908 quote options containing spaces)
22909
22910 --hmake-option OPT
22911 give an extra option to hmake (no need to quote options
22912 containing spaces)
22913
22914 --hpc-option OPT
22915 give an extra option to hpc (no need to quote options
22916 containing spaces)
22917
22918 --hsc2hs-option OPT
22919 give an extra option to hsc2hs (no need to quote options
22920 containing spaces)
22921
22922 --hscolour-option OPT
22923 give an extra option to hscolour (no need to quote
22924 options containing spaces)
22925
22926 --jhc-option OPT
22927 give an extra option to jhc (no need to quote options
22928 containing spaces)
22929
22930 --ld-option OPT
22931 give an extra option to ld (no need to quote options con‐
22932 taining spaces)
22933
22934 --pkg-config-option OPT
22935 give an extra option to pkg-config (no need to quote
22936 options containing spaces)
22937
22938 --runghc-option OPT
22939 give an extra option to runghc (no need to quote options
22940 containing spaces)
22941
22942 --strip-option OPT
22943 give an extra option to strip (no need to quote options
22944 containing spaces)
22945
22946 --tar-option OPT
22947 give an extra option to tar (no need to quote options
22948 containing spaces)
22949
22950 --uhc-option OPT
22951 give an extra option to uhc (no need to quote options
22952 containing spaces)
22953
22954 --alex-options OPTS
22955 give extra options to alex
22956
22957 --ar-options OPTS
22958 give extra options to ar
22959
22960 --c2hs-options OPTS
22961 give extra options to c2hs
22962
22963 --cpphs-options OPTS
22964 give extra options to cpphs
22965
22966 --doctest-options OPTS
22967 give extra options to doctest
22968
22969 --gcc-options OPTS
22970 give extra options to gcc
22971
22972 --ghc-options OPTS
22973 give extra options to ghc
22974
22975 --ghc-pkg-options OPTS
22976 give extra options to ghc-pkg
22977
22978 --ghcjs-options OPTS
22979 give extra options to ghcjs
22980
22981 --ghcjs-pkg-options OPTS
22982 give extra options to ghcjs-pkg
22983
22984 --greencard-options OPTS
22985 give extra options to greencard
22986
22987 --haddock-options OPTS
22988 give extra options to haddock
22989
22990 --happy-options OPTS
22991 give extra options to happy
22992
22993 --haskell-suite-options OPTS
22994 give extra options to haskell-suite
22995
22996 --haskell-suite-pkg-options OPTS
22997 give extra options to haskell-suite-pkg
22998
22999 --hmake-options OPTS
23000 give extra options to hmake
23001
23002 --hpc-options OPTS
23003 give extra options to hpc
23004
23005 --hsc2hs-options OPTS
23006 give extra options to hsc2hs
23007
23008 --hscolour-options OPTS
23009 give extra options to hscolour
23010
23011 --jhc-options OPTS
23012 give extra options to jhc
23013
23014 --ld-options OPTS
23015 give extra options to ld
23016
23017 --pkg-config-options OPTS
23018 give extra options to pkg-config
23019
23020 --runghc-options OPTS
23021 give extra options to runghc
23022
23023 --strip-options OPTS
23024 give extra options to strip
23025
23026 --tar-options OPTS
23027 give extra options to tar
23028
23029 --uhc-options OPTS
23030 give extra options to uhc
23031
23032 --cabal-lib-version VERSION
23033 Select which version of the Cabal lib to use to build
23034 packages (useful for testing).
23035
23036 --constraint CONSTRAINT
23037 Specify constraints on a package (version,
23038 installed/source, flags)
23039
23040 --preference CONSTRAINT
23041 Specify preferences (soft constraints) on the version of
23042 a package
23043
23044 --solver SOLVER
23045 Select dependency solver to use (default: modular).
23046 Choices: modular.
23047
23048 --allow-older [DEPS]
23049 Ignore lower bounds in all dependencies or DEPS
23050
23051 --allow-newer [DEPS]
23052 Ignore upper bounds in all dependencies or DEPS
23053
23054 --write-ghc-environment-files always|never|ghc8.4.4+
23055 Whether to create a .ghc.environment file after a suc‐
23056 cessful build (v2-build only)
23057
23058 --enable-documentation
23059 --disable-documentation
23060 building of documentation
23061
23062 --doc-index-file TEMPLATE
23063 A central index of haddock API documentation (template
23064 cannot use $pkgid)
23065
23066 --dry-run
23067 Do not install anything, only print what would be
23068 installed.
23069
23070 --max-backjumps NUM
23071 Maximum number of backjumps allowed while solving
23072 (default: 4000). Use a negative number to enable unlim‐
23073 ited backtracking. Use 0 to disable backtracking com‐
23074 pletely.
23075
23076 --reorder-goals
23077 --no-reorder-goals
23078 Try to reorder goals according to certain heuristics.
23079 Slows things down on average, but may make backtracking
23080 faster for some packages.
23081
23082 --count-conflicts
23083 --no-count-conflicts
23084 Try to speed up solving by preferring goals that are
23085 involved in a lot of conflicts (default).
23086
23087 --minimize-conflict-set
23088 --no-minimize-conflict-set
23089 When there is no solution, try to improve the error mes‐
23090 sage by finding a minimal conflict set (default: false).
23091 May increase run time significantly.
23092
23093 --independent-goals
23094 --no-independent-goals
23095 Treat several goals on the command line as independent.
23096 If several goals depend on the same package, different
23097 versions can be chosen.
23098
23099 --shadow-installed-packages
23100 --no-shadow-installed-packages
23101 If multiple package instances of the same version are
23102 installed, treat all but one as shadowed.
23103
23104 --strong-flags
23105 --no-strong-flags
23106 Do not defer flag choices (this used to be the default in
23107 cabal-install <= 1.20).
23108
23109 --allow-boot-library-installs
23110 --no-allow-boot-library-installs
23111 Allow cabal to install base, ghc-prim, integer-simple,
23112 integer-gmp, and template-haskell.
23113
23114 --reject-unconstrained-dependencies none|all
23115 Require these packages to have constraints on them if
23116 they are to be selected (default: none).
23117
23118 --reinstall
23119 --no-reinstall
23120 Install even if it means installing the same version
23121 again.
23122
23123 --avoid-reinstalls
23124 --no-avoid-reinstalls
23125 Do not select versions that would destructively overwrite
23126 installed packages.
23127
23128 --force-reinstalls
23129 --no-force-reinstalls
23130 Reinstall packages even if they will most likely break
23131 other installed packages.
23132
23133 --upgrade-dependencies
23134 --no-upgrade-dependencies
23135 Pick the latest version for all dependencies, rather than
23136 trying to pick an installed version.
23137
23138 --only-dependencies
23139 --no-only-dependencies
23140 Install only the dependencies necessary to build the
23141 given packages
23142
23143 --dependencies-only
23144 --no-dependencies-only
23145 A synonym for --only-dependencies
23146
23147 --index-state STATE
23148 Use source package index state as it existed at a previ‐
23149 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
23150 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
23151 'HEAD' (default: 'HEAD').
23152
23153 --root-cmd COMMAND
23154 (No longer supported, do not use.)
23155
23156 --symlink-bindir DIR
23157 Add symlinks to installed executables into this direc‐
23158 tory.
23159
23160 --build-summary TEMPLATE
23161 Save build summaries to file (name template can use
23162 $pkgid, $compiler, $os, $arch)
23163
23164 --build-log TEMPLATE
23165 Log all builds to file (name template can use $pkgid,
23166 $compiler, $os, $arch)
23167
23168 --remote-build-reporting LEVEL
23169 Generate build reports to send to a remote server (none,
23170 anonymous or detailed).
23171
23172 --report-planning-failure
23173 Generate build reports when the dependency solver fails.
23174 This is used by the Hackage build bot.
23175
23176 --enable-per-component
23177 --disable-per-component
23178 Per-component builds when possible
23179
23180 --one-shot
23181 --no-one-shot
23182 Do not record the packages in the world file.
23183
23184 --run-tests
23185 Run package test suites during installation.
23186
23187 -j, --jobs [NUM]
23188 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
23189 given).
23190
23191 --keep-going
23192 After a build failure, continue to build other unaffected
23193 packages.
23194
23195 --offline
23196 --no-offline
23197 Don't download packages from the Internet.
23198
23199 --project-file FILE
23200 Set the name of the cabal.project file to search for in
23201 parent directories
23202
23203 --only
23204 Only installs the package in the current directory.
23205
23206 --haddock-hoogle
23207 Generate a hoogle database
23208
23209 --haddock-html
23210 Generate HTML documentation (the default)
23211
23212 --haddock-html-location URL
23213 Location of HTML documentation for pre-requisite packages
23214
23215 --haddock-for-hackage
23216 Collection of flags to generate documentation suitable
23217 for upload to hackage
23218
23219 --haddock-executables
23220 Run haddock for Executables targets
23221
23222 --haddock-tests
23223 Run haddock for Test Suite targets
23224
23225 --haddock-benchmarks
23226 Run haddock for Benchmark targets
23227
23228 --haddock-all
23229 Run haddock for all targets
23230
23231 --haddock-internal
23232 Run haddock for internal modules and include all symbols
23233
23234 --haddock-css PATH
23235 Use PATH as the haddock stylesheet
23236
23237 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
23238 dock-hyperlinked-source
23239 Hyperlink the documentation to the source code
23240
23241 --haddock-quickjump
23242 Generate an index for interactive documentation naviga‐
23243 tion
23244
23245 --haddock-hscolour-css PATH
23246 Use PATH as the HsColour stylesheet
23247
23248 --haddock-contents-location URL
23249 Bake URL in as the location for the contents page
23250
23251 --test-log TEMPLATE
23252 Log all test suite results to file (name template can use
23253 $pkgid, $compiler, $os, $arch, $test-suite, $result)
23254
23255 --test-machine-log TEMPLATE
23256 Produce a machine-readable log file (name template can
23257 use $pkgid, $compiler, $os, $arch, $result)
23258
23259 --test-show-details FILTER
23260
23261 --test-keep-tix-files
23262 keep .tix files for HPC between test runs
23263
23264 --test-wrapper FILE
23265 Run test through a wrapper.
23266
23267 --test-fail-when-no-test-suites
23268 Exit with failure when no test suites are found.
23269
23270 --test-options TEMPLATES
23271 give extra options to test executables (name templates
23272 can use $pkgid, $compiler, $os, $arch, $test-suite)
23273
23274 --test-option TEMPLATE
23275 give extra option to test executables (no need to quote
23276 options containing spaces, name template can use $pkgid,
23277 $compiler, $os, $arch, $test-suite)
23278
23279
23280 cabal v2-bench
23281
23282 Usage: cabal v2-bench [TARGETS] [FLAGS]
23283
23284
23285 Runs the specified benchmarks, first ensuring they are up to date.
23286
23287 Any benchmark in any package in the project can be specified. A package
23288 can be specified in which case all the benchmarks in the package are
23289 run. The default is to run all the benchmarks in the package in the
23290 current directory.
23291
23292 Dependencies are built or rebuilt as necessary. Additional configura‐
23293 tion flags can be specified on the command line and these extend the
23294 project configuration from the 'cabal.project', 'cabal.project.local'
23295 and other files.
23296
23297
23298 Examples:
23299 cabal v2-bench
23300 Run all the benchmarks in the package in the current directory
23301 cabal v2-bench pkgname
23302 Run all the benchmarks in the package named pkgname
23303 cabal v2-bench cname
23304 Run the benchmark named cname
23305 cabal v2-bench cname -O2
23306 Run the benchmark built with '-O2' (including local libs used)
23307
23308 Note: this command is part of the new project-based system (aka nix-
23309 style local builds). These features are currently in beta. Please see
23310 http://cabal.readthedocs.io/en/latest/nix-local-build-overview.html for
23311 details and advice on what you can expect to work. If you encounter
23312 problems please file issues at https://github.com/haskell/cabal/issues
23313 and if you have any time to get involved and help with testing, fixing
23314 bugs etc then that is very much appreciated.
23315
23316
23317 Flags:
23318 -v, --verbose [n]
23319 Control verbosity (n is 0--3, default verbosity level is
23320 1)
23321
23322 --builddir, --distdir, --distpref DIR
23323 The directory where Cabal puts generated build files
23324 (default dist)
23325
23326 -g, --ghc
23327 compile with GHC
23328
23329 --ghcjs
23330 compile with GHCJS
23331
23332 --uhc
23333 compile with UHC
23334
23335 --haskell-suite
23336 compile with a haskell-suite compiler
23337
23338 --cabal-file PATH
23339 use this Cabal file
23340
23341 -w, --with-compiler PATH
23342 give the path to a particular compiler
23343
23344 --with-hc-pkg PATH
23345 give the path to the package tool
23346
23347 --prefix DIR
23348 bake this prefix in preparation of installation
23349
23350 --bindir DIR
23351 installation directory for executables
23352
23353 --libdir DIR
23354 installation directory for libraries
23355
23356 --libsubdir DIR
23357 subdirectory of libdir in which libs are installed
23358
23359 --dynlibdir DIR
23360 installation directory for dynamic libraries
23361
23362 --libexecdir DIR
23363 installation directory for program executables
23364
23365 --libexecsubdir DIR
23366 subdirectory of libexecdir in which private executables
23367 are installed
23368
23369 --datadir DIR
23370 installation directory for read-only data
23371
23372 --datasubdir DIR
23373 subdirectory of datadir in which data files are installed
23374
23375 --docdir DIR
23376 installation directory for documentation
23377
23378 --htmldir DIR
23379 installation directory for HTML documentation
23380
23381 --haddockdir DIR
23382 installation directory for haddock interfaces
23383
23384 --sysconfdir DIR
23385 installation directory for configuration files
23386
23387 --program-prefix PREFIX
23388 prefix to be applied to installed executables
23389
23390 --program-suffix SUFFIX
23391 suffix to be applied to installed executables
23392
23393 --enable-library-vanilla
23394 --disable-library-vanilla
23395 Vanilla libraries
23396
23397 -p, --enable-library-profiling
23398 --disable-library-profiling
23399 Library profiling
23400
23401 --enable-shared
23402 --disable-shared
23403 Shared library
23404
23405 --enable-static
23406 --disable-static
23407 Static library
23408
23409 --enable-executable-dynamic
23410 --disable-executable-dynamic
23411 Executable dynamic linking
23412
23413 --enable-executable-static
23414 --disable-executable-static
23415 Executable fully static linking
23416
23417 --enable-profiling
23418 --disable-profiling
23419 Executable and library profiling
23420
23421 --enable-executable-profiling
23422 --disable-executable-profiling
23423 Executable profiling (DEPRECATED)
23424
23425 --profiling-detail level
23426 Profiling detail level for executable and library
23427 (default, none, exported-functions, toplevel-functions,
23428 all-functions).
23429
23430 --library-profiling-detail level
23431 Profiling detail level for libraries only.
23432
23433 -O, --enable-optimization, --enable-optimisation [n]
23434 Build with optimization (n is 0--2, default is 1)
23435
23436 --disable-optimization, --disable-optimisation
23437 Build without optimization
23438
23439 --enable-debug-info [n]
23440 Emit debug info (n is 0--3, default is 0)
23441
23442 --disable-debug-info
23443 Don't emit debug info
23444
23445 --enable-library-for-ghci
23446 --disable-library-for-ghci
23447 compile library for use with GHCi
23448
23449 --enable-split-sections
23450 --disable-split-sections
23451 compile library code such that unneeded definitions can
23452 be dropped from the final executable (GHC 7.8+)
23453
23454 --enable-split-objs
23455 --disable-split-objs
23456 split library into smaller objects to reduce binary sizes
23457 (GHC 6.6+)
23458
23459 --enable-executable-stripping
23460 --disable-executable-stripping
23461 strip executables upon installation to reduce binary
23462 sizes
23463
23464 --enable-library-stripping
23465 --disable-library-stripping
23466 strip libraries upon installation to reduce binary sizes
23467
23468 --configure-option OPT
23469 Extra option for configure
23470
23471 --user
23472 --global
23473 doing a per-user installation
23474
23475 --package-db DB
23476 Append the given package database to the list of package
23477 databases used (to satisfy dependencies and register
23478 into). May be a specific file, 'global' or 'user'. The
23479 initial list is ['global'], ['global', 'user'], or
23480 ['global', $sandbox], depending on context. Use 'clear'
23481 to reset the list to empty. See the user guide for
23482 details.
23483
23484 -f, --flags FLAGS
23485 Force values for the given flags in Cabal conditionals in
23486 the .cabal file. E.g., --flags="debug -usebytestrings"
23487 forces the flag "debug" to true and "usebytestrings" to
23488 false.
23489
23490 --extra-include-dirs PATH
23491 A list of directories to search for header files
23492
23493 --enable-deterministic
23494 --disable-deterministic
23495 Try to be as deterministic as possible (used by the test
23496 suite)
23497
23498 --ipid IPID
23499 Installed package ID to compile this package as
23500
23501 --cid CID
23502 Installed component ID to compile this component as
23503
23504 --extra-lib-dirs PATH
23505 A list of directories to search for external libraries
23506
23507 --extra-framework-dirs PATH
23508 A list of directories to search for external frameworks
23509 (OS X only)
23510
23511 --extra-prog-path PATH
23512 A list of directories to search for required programs (in
23513 addition to the normal search locations)
23514
23515 --instantiate-with NAME=MOD
23516 A mapping of signature names to concrete module instanti‐
23517 ations.
23518
23519 --enable-tests
23520 --disable-tests
23521 dependency checking and compilation for test suites
23522 listed in the package description file.
23523
23524 --enable-coverage
23525 --disable-coverage
23526 build package with Haskell Program Coverage. (GHC only)
23527
23528 --enable-library-coverage
23529 --disable-library-coverage
23530 build package with Haskell Program Coverage. (GHC only)
23531 (DEPRECATED)
23532
23533 --enable-benchmarks
23534 --disable-benchmarks
23535 dependency checking and compilation for benchmarks listed
23536 in the package description file.
23537
23538 --enable-relocatable
23539 --disable-relocatable
23540 building a package that is relocatable. (GHC only)
23541
23542 --disable-response-files
23543 enable workaround for old versions of programs like "ar"
23544 that do not support @file arguments
23545
23546 --allow-depending-on-private-libs
23547 Allow depending on private libraries. If set, the library
23548 visibility check MUST be done externally.
23549
23550 --with-alex PATH
23551 give the path to alex
23552
23553 --with-ar PATH
23554 give the path to ar
23555
23556 --with-c2hs PATH
23557 give the path to c2hs
23558
23559 --with-cpphs PATH
23560 give the path to cpphs
23561
23562 --with-doctest PATH
23563 give the path to doctest
23564
23565 --with-gcc PATH
23566 give the path to gcc
23567
23568 --with-ghc PATH
23569 give the path to ghc
23570
23571 --with-ghc-pkg PATH
23572 give the path to ghc-pkg
23573
23574 --with-ghcjs PATH
23575 give the path to ghcjs
23576
23577 --with-ghcjs-pkg PATH
23578 give the path to ghcjs-pkg
23579
23580 --with-greencard PATH
23581 give the path to greencard
23582
23583 --with-haddock PATH
23584 give the path to haddock
23585
23586 --with-happy PATH
23587 give the path to happy
23588
23589 --with-haskell-suite PATH
23590 give the path to haskell-suite
23591
23592 --with-haskell-suite-pkg PATH
23593 give the path to haskell-suite-pkg
23594
23595 --with-hmake PATH
23596 give the path to hmake
23597
23598 --with-hpc PATH
23599 give the path to hpc
23600
23601 --with-hsc2hs PATH
23602 give the path to hsc2hs
23603
23604 --with-hscolour PATH
23605 give the path to hscolour
23606
23607 --with-jhc PATH
23608 give the path to jhc
23609
23610 --with-ld PATH
23611 give the path to ld
23612
23613 --with-pkg-config PATH
23614 give the path to pkg-config
23615
23616 --with-runghc PATH
23617 give the path to runghc
23618
23619 --with-strip PATH
23620 give the path to strip
23621
23622 --with-tar PATH
23623 give the path to tar
23624
23625 --with-uhc PATH
23626 give the path to uhc
23627
23628 --alex-option OPT
23629 give an extra option to alex (no need to quote options
23630 containing spaces)
23631
23632 --ar-option OPT
23633 give an extra option to ar (no need to quote options con‐
23634 taining spaces)
23635
23636 --c2hs-option OPT
23637 give an extra option to c2hs (no need to quote options
23638 containing spaces)
23639
23640 --cpphs-option OPT
23641 give an extra option to cpphs (no need to quote options
23642 containing spaces)
23643
23644 --doctest-option OPT
23645 give an extra option to doctest (no need to quote options
23646 containing spaces)
23647
23648 --gcc-option OPT
23649 give an extra option to gcc (no need to quote options
23650 containing spaces)
23651
23652 --ghc-option OPT
23653 give an extra option to ghc (no need to quote options
23654 containing spaces)
23655
23656 --ghc-pkg-option OPT
23657 give an extra option to ghc-pkg (no need to quote options
23658 containing spaces)
23659
23660 --ghcjs-option OPT
23661 give an extra option to ghcjs (no need to quote options
23662 containing spaces)
23663
23664 --ghcjs-pkg-option OPT
23665 give an extra option to ghcjs-pkg (no need to quote
23666 options containing spaces)
23667
23668 --greencard-option OPT
23669 give an extra option to greencard (no need to quote
23670 options containing spaces)
23671
23672 --haddock-option OPT
23673 give an extra option to haddock (no need to quote options
23674 containing spaces)
23675
23676 --happy-option OPT
23677 give an extra option to happy (no need to quote options
23678 containing spaces)
23679
23680 --haskell-suite-option OPT
23681 give an extra option to haskell-suite (no need to quote
23682 options containing spaces)
23683
23684 --haskell-suite-pkg-option OPT
23685 give an extra option to haskell-suite-pkg (no need to
23686 quote options containing spaces)
23687
23688 --hmake-option OPT
23689 give an extra option to hmake (no need to quote options
23690 containing spaces)
23691
23692 --hpc-option OPT
23693 give an extra option to hpc (no need to quote options
23694 containing spaces)
23695
23696 --hsc2hs-option OPT
23697 give an extra option to hsc2hs (no need to quote options
23698 containing spaces)
23699
23700 --hscolour-option OPT
23701 give an extra option to hscolour (no need to quote
23702 options containing spaces)
23703
23704 --jhc-option OPT
23705 give an extra option to jhc (no need to quote options
23706 containing spaces)
23707
23708 --ld-option OPT
23709 give an extra option to ld (no need to quote options con‐
23710 taining spaces)
23711
23712 --pkg-config-option OPT
23713 give an extra option to pkg-config (no need to quote
23714 options containing spaces)
23715
23716 --runghc-option OPT
23717 give an extra option to runghc (no need to quote options
23718 containing spaces)
23719
23720 --strip-option OPT
23721 give an extra option to strip (no need to quote options
23722 containing spaces)
23723
23724 --tar-option OPT
23725 give an extra option to tar (no need to quote options
23726 containing spaces)
23727
23728 --uhc-option OPT
23729 give an extra option to uhc (no need to quote options
23730 containing spaces)
23731
23732 --alex-options OPTS
23733 give extra options to alex
23734
23735 --ar-options OPTS
23736 give extra options to ar
23737
23738 --c2hs-options OPTS
23739 give extra options to c2hs
23740
23741 --cpphs-options OPTS
23742 give extra options to cpphs
23743
23744 --doctest-options OPTS
23745 give extra options to doctest
23746
23747 --gcc-options OPTS
23748 give extra options to gcc
23749
23750 --ghc-options OPTS
23751 give extra options to ghc
23752
23753 --ghc-pkg-options OPTS
23754 give extra options to ghc-pkg
23755
23756 --ghcjs-options OPTS
23757 give extra options to ghcjs
23758
23759 --ghcjs-pkg-options OPTS
23760 give extra options to ghcjs-pkg
23761
23762 --greencard-options OPTS
23763 give extra options to greencard
23764
23765 --haddock-options OPTS
23766 give extra options to haddock
23767
23768 --happy-options OPTS
23769 give extra options to happy
23770
23771 --haskell-suite-options OPTS
23772 give extra options to haskell-suite
23773
23774 --haskell-suite-pkg-options OPTS
23775 give extra options to haskell-suite-pkg
23776
23777 --hmake-options OPTS
23778 give extra options to hmake
23779
23780 --hpc-options OPTS
23781 give extra options to hpc
23782
23783 --hsc2hs-options OPTS
23784 give extra options to hsc2hs
23785
23786 --hscolour-options OPTS
23787 give extra options to hscolour
23788
23789 --jhc-options OPTS
23790 give extra options to jhc
23791
23792 --ld-options OPTS
23793 give extra options to ld
23794
23795 --pkg-config-options OPTS
23796 give extra options to pkg-config
23797
23798 --runghc-options OPTS
23799 give extra options to runghc
23800
23801 --strip-options OPTS
23802 give extra options to strip
23803
23804 --tar-options OPTS
23805 give extra options to tar
23806
23807 --uhc-options OPTS
23808 give extra options to uhc
23809
23810 --cabal-lib-version VERSION
23811 Select which version of the Cabal lib to use to build
23812 packages (useful for testing).
23813
23814 --constraint CONSTRAINT
23815 Specify constraints on a package (version,
23816 installed/source, flags)
23817
23818 --preference CONSTRAINT
23819 Specify preferences (soft constraints) on the version of
23820 a package
23821
23822 --solver SOLVER
23823 Select dependency solver to use (default: modular).
23824 Choices: modular.
23825
23826 --allow-older [DEPS]
23827 Ignore lower bounds in all dependencies or DEPS
23828
23829 --allow-newer [DEPS]
23830 Ignore upper bounds in all dependencies or DEPS
23831
23832 --write-ghc-environment-files always|never|ghc8.4.4+
23833 Whether to create a .ghc.environment file after a suc‐
23834 cessful build (v2-build only)
23835
23836 --enable-documentation
23837 --disable-documentation
23838 building of documentation
23839
23840 --doc-index-file TEMPLATE
23841 A central index of haddock API documentation (template
23842 cannot use $pkgid)
23843
23844 --dry-run
23845 Do not install anything, only print what would be
23846 installed.
23847
23848 --max-backjumps NUM
23849 Maximum number of backjumps allowed while solving
23850 (default: 4000). Use a negative number to enable unlim‐
23851 ited backtracking. Use 0 to disable backtracking com‐
23852 pletely.
23853
23854 --reorder-goals
23855 --no-reorder-goals
23856 Try to reorder goals according to certain heuristics.
23857 Slows things down on average, but may make backtracking
23858 faster for some packages.
23859
23860 --count-conflicts
23861 --no-count-conflicts
23862 Try to speed up solving by preferring goals that are
23863 involved in a lot of conflicts (default).
23864
23865 --minimize-conflict-set
23866 --no-minimize-conflict-set
23867 When there is no solution, try to improve the error mes‐
23868 sage by finding a minimal conflict set (default: false).
23869 May increase run time significantly.
23870
23871 --independent-goals
23872 --no-independent-goals
23873 Treat several goals on the command line as independent.
23874 If several goals depend on the same package, different
23875 versions can be chosen.
23876
23877 --shadow-installed-packages
23878 --no-shadow-installed-packages
23879 If multiple package instances of the same version are
23880 installed, treat all but one as shadowed.
23881
23882 --strong-flags
23883 --no-strong-flags
23884 Do not defer flag choices (this used to be the default in
23885 cabal-install <= 1.20).
23886
23887 --allow-boot-library-installs
23888 --no-allow-boot-library-installs
23889 Allow cabal to install base, ghc-prim, integer-simple,
23890 integer-gmp, and template-haskell.
23891
23892 --reject-unconstrained-dependencies none|all
23893 Require these packages to have constraints on them if
23894 they are to be selected (default: none).
23895
23896 --reinstall
23897 --no-reinstall
23898 Install even if it means installing the same version
23899 again.
23900
23901 --avoid-reinstalls
23902 --no-avoid-reinstalls
23903 Do not select versions that would destructively overwrite
23904 installed packages.
23905
23906 --force-reinstalls
23907 --no-force-reinstalls
23908 Reinstall packages even if they will most likely break
23909 other installed packages.
23910
23911 --upgrade-dependencies
23912 --no-upgrade-dependencies
23913 Pick the latest version for all dependencies, rather than
23914 trying to pick an installed version.
23915
23916 --only-dependencies
23917 --no-only-dependencies
23918 Install only the dependencies necessary to build the
23919 given packages
23920
23921 --dependencies-only
23922 --no-dependencies-only
23923 A synonym for --only-dependencies
23924
23925 --index-state STATE
23926 Use source package index state as it existed at a previ‐
23927 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
23928 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
23929 'HEAD' (default: 'HEAD').
23930
23931 --root-cmd COMMAND
23932 (No longer supported, do not use.)
23933
23934 --symlink-bindir DIR
23935 Add symlinks to installed executables into this direc‐
23936 tory.
23937
23938 --build-summary TEMPLATE
23939 Save build summaries to file (name template can use
23940 $pkgid, $compiler, $os, $arch)
23941
23942 --build-log TEMPLATE
23943 Log all builds to file (name template can use $pkgid,
23944 $compiler, $os, $arch)
23945
23946 --remote-build-reporting LEVEL
23947 Generate build reports to send to a remote server (none,
23948 anonymous or detailed).
23949
23950 --report-planning-failure
23951 Generate build reports when the dependency solver fails.
23952 This is used by the Hackage build bot.
23953
23954 --enable-per-component
23955 --disable-per-component
23956 Per-component builds when possible
23957
23958 --one-shot
23959 --no-one-shot
23960 Do not record the packages in the world file.
23961
23962 --run-tests
23963 Run package test suites during installation.
23964
23965 -j, --jobs [NUM]
23966 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
23967 given).
23968
23969 --keep-going
23970 After a build failure, continue to build other unaffected
23971 packages.
23972
23973 --offline
23974 --no-offline
23975 Don't download packages from the Internet.
23976
23977 --project-file FILE
23978 Set the name of the cabal.project file to search for in
23979 parent directories
23980
23981 --only
23982 Only installs the package in the current directory.
23983
23984 --haddock-hoogle
23985 Generate a hoogle database
23986
23987 --haddock-html
23988 Generate HTML documentation (the default)
23989
23990 --haddock-html-location URL
23991 Location of HTML documentation for pre-requisite packages
23992
23993 --haddock-for-hackage
23994 Collection of flags to generate documentation suitable
23995 for upload to hackage
23996
23997 --haddock-executables
23998 Run haddock for Executables targets
23999
24000 --haddock-tests
24001 Run haddock for Test Suite targets
24002
24003 --haddock-benchmarks
24004 Run haddock for Benchmark targets
24005
24006 --haddock-all
24007 Run haddock for all targets
24008
24009 --haddock-internal
24010 Run haddock for internal modules and include all symbols
24011
24012 --haddock-css PATH
24013 Use PATH as the haddock stylesheet
24014
24015 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
24016 dock-hyperlinked-source
24017 Hyperlink the documentation to the source code
24018
24019 --haddock-quickjump
24020 Generate an index for interactive documentation naviga‐
24021 tion
24022
24023 --haddock-hscolour-css PATH
24024 Use PATH as the HsColour stylesheet
24025
24026 --haddock-contents-location URL
24027 Bake URL in as the location for the contents page
24028
24029 --test-log TEMPLATE
24030 Log all test suite results to file (name template can use
24031 $pkgid, $compiler, $os, $arch, $test-suite, $result)
24032
24033 --test-machine-log TEMPLATE
24034 Produce a machine-readable log file (name template can
24035 use $pkgid, $compiler, $os, $arch, $result)
24036
24037 --test-show-details FILTER
24038
24039 --test-keep-tix-files
24040 keep .tix files for HPC between test runs
24041
24042 --test-wrapper FILE
24043 Run test through a wrapper.
24044
24045 --test-fail-when-no-test-suites
24046 Exit with failure when no test suites are found.
24047
24048 --test-options TEMPLATES
24049 give extra options to test executables (name templates
24050 can use $pkgid, $compiler, $os, $arch, $test-suite)
24051
24052 --test-option TEMPLATE
24053 give extra option to test executables (no need to quote
24054 options containing spaces, name template can use $pkgid,
24055 $compiler, $os, $arch, $test-suite)
24056
24057
24058 cabal exec
24059
24060 Usage: cabal exec [FLAGS] [--] COMMAND [--] [ARGS]
24061
24062
24063 During development it is often useful to run build tasks and perform
24064 one-off program executions to experiment with the behavior of build
24065 tools. It is convenient to run these tools in the same way cabal itself
24066 would. The `cabal exec` command provides a way to do so.
24067
24068 Compiler tools will be configured to see the same subset of the store
24069 that builds would see. The PATH is modified to make all executables in
24070 the dependency tree available (provided they have been built already).
24071 Commands are also rewritten in the way cabal itself would. For example,
24072 `cabal exec ghc` will consult the configuration to choose an appropri‐
24073 ate version of ghc and to include any ghc-specific flags requested.
24074
24075
24076 During development it is often useful to run build tasks and perform
24077 one-off program executions to experiment with the behavior of build
24078 tools. It is convenient to run these tools in the same way cabal itself
24079 would. The `cabal exec` command provides a way to do so.
24080
24081 Compiler tools will be configured to see the same subset of the store
24082 that builds would see. The PATH is modified to make all executables in
24083 the dependency tree available (provided they have been built already).
24084 Commands are also rewritten in the way cabal itself would. For example,
24085 `cabal exec ghc` will consult the configuration to choose an appropri‐
24086 ate version of ghc and to include any ghc-specific flags requested.
24087
24088
24089 Flags:
24090 -v, --verbose [n]
24091 Control verbosity (n is 0--3, default verbosity level is
24092 1)
24093
24094 --builddir, --distdir, --distpref DIR
24095 The directory where Cabal puts generated build files
24096 (default dist)
24097
24098 -g, --ghc
24099 compile with GHC
24100
24101 --ghcjs
24102 compile with GHCJS
24103
24104 --uhc
24105 compile with UHC
24106
24107 --haskell-suite
24108 compile with a haskell-suite compiler
24109
24110 --cabal-file PATH
24111 use this Cabal file
24112
24113 -w, --with-compiler PATH
24114 give the path to a particular compiler
24115
24116 --with-hc-pkg PATH
24117 give the path to the package tool
24118
24119 --prefix DIR
24120 bake this prefix in preparation of installation
24121
24122 --bindir DIR
24123 installation directory for executables
24124
24125 --libdir DIR
24126 installation directory for libraries
24127
24128 --libsubdir DIR
24129 subdirectory of libdir in which libs are installed
24130
24131 --dynlibdir DIR
24132 installation directory for dynamic libraries
24133
24134 --libexecdir DIR
24135 installation directory for program executables
24136
24137 --libexecsubdir DIR
24138 subdirectory of libexecdir in which private executables
24139 are installed
24140
24141 --datadir DIR
24142 installation directory for read-only data
24143
24144 --datasubdir DIR
24145 subdirectory of datadir in which data files are installed
24146
24147 --docdir DIR
24148 installation directory for documentation
24149
24150 --htmldir DIR
24151 installation directory for HTML documentation
24152
24153 --haddockdir DIR
24154 installation directory for haddock interfaces
24155
24156 --sysconfdir DIR
24157 installation directory for configuration files
24158
24159 --program-prefix PREFIX
24160 prefix to be applied to installed executables
24161
24162 --program-suffix SUFFIX
24163 suffix to be applied to installed executables
24164
24165 --enable-library-vanilla
24166 --disable-library-vanilla
24167 Vanilla libraries
24168
24169 -p, --enable-library-profiling
24170 --disable-library-profiling
24171 Library profiling
24172
24173 --enable-shared
24174 --disable-shared
24175 Shared library
24176
24177 --enable-static
24178 --disable-static
24179 Static library
24180
24181 --enable-executable-dynamic
24182 --disable-executable-dynamic
24183 Executable dynamic linking
24184
24185 --enable-executable-static
24186 --disable-executable-static
24187 Executable fully static linking
24188
24189 --enable-profiling
24190 --disable-profiling
24191 Executable and library profiling
24192
24193 --enable-executable-profiling
24194 --disable-executable-profiling
24195 Executable profiling (DEPRECATED)
24196
24197 --profiling-detail level
24198 Profiling detail level for executable and library
24199 (default, none, exported-functions, toplevel-functions,
24200 all-functions).
24201
24202 --library-profiling-detail level
24203 Profiling detail level for libraries only.
24204
24205 -O, --enable-optimization, --enable-optimisation [n]
24206 Build with optimization (n is 0--2, default is 1)
24207
24208 --disable-optimization, --disable-optimisation
24209 Build without optimization
24210
24211 --enable-debug-info [n]
24212 Emit debug info (n is 0--3, default is 0)
24213
24214 --disable-debug-info
24215 Don't emit debug info
24216
24217 --enable-library-for-ghci
24218 --disable-library-for-ghci
24219 compile library for use with GHCi
24220
24221 --enable-split-sections
24222 --disable-split-sections
24223 compile library code such that unneeded definitions can
24224 be dropped from the final executable (GHC 7.8+)
24225
24226 --enable-split-objs
24227 --disable-split-objs
24228 split library into smaller objects to reduce binary sizes
24229 (GHC 6.6+)
24230
24231 --enable-executable-stripping
24232 --disable-executable-stripping
24233 strip executables upon installation to reduce binary
24234 sizes
24235
24236 --enable-library-stripping
24237 --disable-library-stripping
24238 strip libraries upon installation to reduce binary sizes
24239
24240 --configure-option OPT
24241 Extra option for configure
24242
24243 --user
24244 --global
24245 doing a per-user installation
24246
24247 --package-db DB
24248 Append the given package database to the list of package
24249 databases used (to satisfy dependencies and register
24250 into). May be a specific file, 'global' or 'user'. The
24251 initial list is ['global'], ['global', 'user'], or
24252 ['global', $sandbox], depending on context. Use 'clear'
24253 to reset the list to empty. See the user guide for
24254 details.
24255
24256 -f, --flags FLAGS
24257 Force values for the given flags in Cabal conditionals in
24258 the .cabal file. E.g., --flags="debug -usebytestrings"
24259 forces the flag "debug" to true and "usebytestrings" to
24260 false.
24261
24262 --extra-include-dirs PATH
24263 A list of directories to search for header files
24264
24265 --enable-deterministic
24266 --disable-deterministic
24267 Try to be as deterministic as possible (used by the test
24268 suite)
24269
24270 --ipid IPID
24271 Installed package ID to compile this package as
24272
24273 --cid CID
24274 Installed component ID to compile this component as
24275
24276 --extra-lib-dirs PATH
24277 A list of directories to search for external libraries
24278
24279 --extra-framework-dirs PATH
24280 A list of directories to search for external frameworks
24281 (OS X only)
24282
24283 --extra-prog-path PATH
24284 A list of directories to search for required programs (in
24285 addition to the normal search locations)
24286
24287 --instantiate-with NAME=MOD
24288 A mapping of signature names to concrete module instanti‐
24289 ations.
24290
24291 --enable-tests
24292 --disable-tests
24293 dependency checking and compilation for test suites
24294 listed in the package description file.
24295
24296 --enable-coverage
24297 --disable-coverage
24298 build package with Haskell Program Coverage. (GHC only)
24299
24300 --enable-library-coverage
24301 --disable-library-coverage
24302 build package with Haskell Program Coverage. (GHC only)
24303 (DEPRECATED)
24304
24305 --enable-benchmarks
24306 --disable-benchmarks
24307 dependency checking and compilation for benchmarks listed
24308 in the package description file.
24309
24310 --enable-relocatable
24311 --disable-relocatable
24312 building a package that is relocatable. (GHC only)
24313
24314 --disable-response-files
24315 enable workaround for old versions of programs like "ar"
24316 that do not support @file arguments
24317
24318 --allow-depending-on-private-libs
24319 Allow depending on private libraries. If set, the library
24320 visibility check MUST be done externally.
24321
24322 --with-alex PATH
24323 give the path to alex
24324
24325 --with-ar PATH
24326 give the path to ar
24327
24328 --with-c2hs PATH
24329 give the path to c2hs
24330
24331 --with-cpphs PATH
24332 give the path to cpphs
24333
24334 --with-doctest PATH
24335 give the path to doctest
24336
24337 --with-gcc PATH
24338 give the path to gcc
24339
24340 --with-ghc PATH
24341 give the path to ghc
24342
24343 --with-ghc-pkg PATH
24344 give the path to ghc-pkg
24345
24346 --with-ghcjs PATH
24347 give the path to ghcjs
24348
24349 --with-ghcjs-pkg PATH
24350 give the path to ghcjs-pkg
24351
24352 --with-greencard PATH
24353 give the path to greencard
24354
24355 --with-haddock PATH
24356 give the path to haddock
24357
24358 --with-happy PATH
24359 give the path to happy
24360
24361 --with-haskell-suite PATH
24362 give the path to haskell-suite
24363
24364 --with-haskell-suite-pkg PATH
24365 give the path to haskell-suite-pkg
24366
24367 --with-hmake PATH
24368 give the path to hmake
24369
24370 --with-hpc PATH
24371 give the path to hpc
24372
24373 --with-hsc2hs PATH
24374 give the path to hsc2hs
24375
24376 --with-hscolour PATH
24377 give the path to hscolour
24378
24379 --with-jhc PATH
24380 give the path to jhc
24381
24382 --with-ld PATH
24383 give the path to ld
24384
24385 --with-pkg-config PATH
24386 give the path to pkg-config
24387
24388 --with-runghc PATH
24389 give the path to runghc
24390
24391 --with-strip PATH
24392 give the path to strip
24393
24394 --with-tar PATH
24395 give the path to tar
24396
24397 --with-uhc PATH
24398 give the path to uhc
24399
24400 --alex-option OPT
24401 give an extra option to alex (no need to quote options
24402 containing spaces)
24403
24404 --ar-option OPT
24405 give an extra option to ar (no need to quote options con‐
24406 taining spaces)
24407
24408 --c2hs-option OPT
24409 give an extra option to c2hs (no need to quote options
24410 containing spaces)
24411
24412 --cpphs-option OPT
24413 give an extra option to cpphs (no need to quote options
24414 containing spaces)
24415
24416 --doctest-option OPT
24417 give an extra option to doctest (no need to quote options
24418 containing spaces)
24419
24420 --gcc-option OPT
24421 give an extra option to gcc (no need to quote options
24422 containing spaces)
24423
24424 --ghc-option OPT
24425 give an extra option to ghc (no need to quote options
24426 containing spaces)
24427
24428 --ghc-pkg-option OPT
24429 give an extra option to ghc-pkg (no need to quote options
24430 containing spaces)
24431
24432 --ghcjs-option OPT
24433 give an extra option to ghcjs (no need to quote options
24434 containing spaces)
24435
24436 --ghcjs-pkg-option OPT
24437 give an extra option to ghcjs-pkg (no need to quote
24438 options containing spaces)
24439
24440 --greencard-option OPT
24441 give an extra option to greencard (no need to quote
24442 options containing spaces)
24443
24444 --haddock-option OPT
24445 give an extra option to haddock (no need to quote options
24446 containing spaces)
24447
24448 --happy-option OPT
24449 give an extra option to happy (no need to quote options
24450 containing spaces)
24451
24452 --haskell-suite-option OPT
24453 give an extra option to haskell-suite (no need to quote
24454 options containing spaces)
24455
24456 --haskell-suite-pkg-option OPT
24457 give an extra option to haskell-suite-pkg (no need to
24458 quote options containing spaces)
24459
24460 --hmake-option OPT
24461 give an extra option to hmake (no need to quote options
24462 containing spaces)
24463
24464 --hpc-option OPT
24465 give an extra option to hpc (no need to quote options
24466 containing spaces)
24467
24468 --hsc2hs-option OPT
24469 give an extra option to hsc2hs (no need to quote options
24470 containing spaces)
24471
24472 --hscolour-option OPT
24473 give an extra option to hscolour (no need to quote
24474 options containing spaces)
24475
24476 --jhc-option OPT
24477 give an extra option to jhc (no need to quote options
24478 containing spaces)
24479
24480 --ld-option OPT
24481 give an extra option to ld (no need to quote options con‐
24482 taining spaces)
24483
24484 --pkg-config-option OPT
24485 give an extra option to pkg-config (no need to quote
24486 options containing spaces)
24487
24488 --runghc-option OPT
24489 give an extra option to runghc (no need to quote options
24490 containing spaces)
24491
24492 --strip-option OPT
24493 give an extra option to strip (no need to quote options
24494 containing spaces)
24495
24496 --tar-option OPT
24497 give an extra option to tar (no need to quote options
24498 containing spaces)
24499
24500 --uhc-option OPT
24501 give an extra option to uhc (no need to quote options
24502 containing spaces)
24503
24504 --alex-options OPTS
24505 give extra options to alex
24506
24507 --ar-options OPTS
24508 give extra options to ar
24509
24510 --c2hs-options OPTS
24511 give extra options to c2hs
24512
24513 --cpphs-options OPTS
24514 give extra options to cpphs
24515
24516 --doctest-options OPTS
24517 give extra options to doctest
24518
24519 --gcc-options OPTS
24520 give extra options to gcc
24521
24522 --ghc-options OPTS
24523 give extra options to ghc
24524
24525 --ghc-pkg-options OPTS
24526 give extra options to ghc-pkg
24527
24528 --ghcjs-options OPTS
24529 give extra options to ghcjs
24530
24531 --ghcjs-pkg-options OPTS
24532 give extra options to ghcjs-pkg
24533
24534 --greencard-options OPTS
24535 give extra options to greencard
24536
24537 --haddock-options OPTS
24538 give extra options to haddock
24539
24540 --happy-options OPTS
24541 give extra options to happy
24542
24543 --haskell-suite-options OPTS
24544 give extra options to haskell-suite
24545
24546 --haskell-suite-pkg-options OPTS
24547 give extra options to haskell-suite-pkg
24548
24549 --hmake-options OPTS
24550 give extra options to hmake
24551
24552 --hpc-options OPTS
24553 give extra options to hpc
24554
24555 --hsc2hs-options OPTS
24556 give extra options to hsc2hs
24557
24558 --hscolour-options OPTS
24559 give extra options to hscolour
24560
24561 --jhc-options OPTS
24562 give extra options to jhc
24563
24564 --ld-options OPTS
24565 give extra options to ld
24566
24567 --pkg-config-options OPTS
24568 give extra options to pkg-config
24569
24570 --runghc-options OPTS
24571 give extra options to runghc
24572
24573 --strip-options OPTS
24574 give extra options to strip
24575
24576 --tar-options OPTS
24577 give extra options to tar
24578
24579 --uhc-options OPTS
24580 give extra options to uhc
24581
24582 --cabal-lib-version VERSION
24583 Select which version of the Cabal lib to use to build
24584 packages (useful for testing).
24585
24586 --constraint CONSTRAINT
24587 Specify constraints on a package (version,
24588 installed/source, flags)
24589
24590 --preference CONSTRAINT
24591 Specify preferences (soft constraints) on the version of
24592 a package
24593
24594 --solver SOLVER
24595 Select dependency solver to use (default: modular).
24596 Choices: modular.
24597
24598 --allow-older [DEPS]
24599 Ignore lower bounds in all dependencies or DEPS
24600
24601 --allow-newer [DEPS]
24602 Ignore upper bounds in all dependencies or DEPS
24603
24604 --write-ghc-environment-files always|never|ghc8.4.4+
24605 Whether to create a .ghc.environment file after a suc‐
24606 cessful build (v2-build only)
24607
24608 --enable-documentation
24609 --disable-documentation
24610 building of documentation
24611
24612 --doc-index-file TEMPLATE
24613 A central index of haddock API documentation (template
24614 cannot use $pkgid)
24615
24616 --dry-run
24617 Do not install anything, only print what would be
24618 installed.
24619
24620 --max-backjumps NUM
24621 Maximum number of backjumps allowed while solving
24622 (default: 4000). Use a negative number to enable unlim‐
24623 ited backtracking. Use 0 to disable backtracking com‐
24624 pletely.
24625
24626 --reorder-goals
24627 --no-reorder-goals
24628 Try to reorder goals according to certain heuristics.
24629 Slows things down on average, but may make backtracking
24630 faster for some packages.
24631
24632 --count-conflicts
24633 --no-count-conflicts
24634 Try to speed up solving by preferring goals that are
24635 involved in a lot of conflicts (default).
24636
24637 --minimize-conflict-set
24638 --no-minimize-conflict-set
24639 When there is no solution, try to improve the error mes‐
24640 sage by finding a minimal conflict set (default: false).
24641 May increase run time significantly.
24642
24643 --independent-goals
24644 --no-independent-goals
24645 Treat several goals on the command line as independent.
24646 If several goals depend on the same package, different
24647 versions can be chosen.
24648
24649 --shadow-installed-packages
24650 --no-shadow-installed-packages
24651 If multiple package instances of the same version are
24652 installed, treat all but one as shadowed.
24653
24654 --strong-flags
24655 --no-strong-flags
24656 Do not defer flag choices (this used to be the default in
24657 cabal-install <= 1.20).
24658
24659 --allow-boot-library-installs
24660 --no-allow-boot-library-installs
24661 Allow cabal to install base, ghc-prim, integer-simple,
24662 integer-gmp, and template-haskell.
24663
24664 --reject-unconstrained-dependencies none|all
24665 Require these packages to have constraints on them if
24666 they are to be selected (default: none).
24667
24668 --reinstall
24669 --no-reinstall
24670 Install even if it means installing the same version
24671 again.
24672
24673 --avoid-reinstalls
24674 --no-avoid-reinstalls
24675 Do not select versions that would destructively overwrite
24676 installed packages.
24677
24678 --force-reinstalls
24679 --no-force-reinstalls
24680 Reinstall packages even if they will most likely break
24681 other installed packages.
24682
24683 --upgrade-dependencies
24684 --no-upgrade-dependencies
24685 Pick the latest version for all dependencies, rather than
24686 trying to pick an installed version.
24687
24688 --only-dependencies
24689 --no-only-dependencies
24690 Install only the dependencies necessary to build the
24691 given packages
24692
24693 --dependencies-only
24694 --no-dependencies-only
24695 A synonym for --only-dependencies
24696
24697 --index-state STATE
24698 Use source package index state as it existed at a previ‐
24699 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
24700 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
24701 'HEAD' (default: 'HEAD').
24702
24703 --root-cmd COMMAND
24704 (No longer supported, do not use.)
24705
24706 --symlink-bindir DIR
24707 Add symlinks to installed executables into this direc‐
24708 tory.
24709
24710 --build-summary TEMPLATE
24711 Save build summaries to file (name template can use
24712 $pkgid, $compiler, $os, $arch)
24713
24714 --build-log TEMPLATE
24715 Log all builds to file (name template can use $pkgid,
24716 $compiler, $os, $arch)
24717
24718 --remote-build-reporting LEVEL
24719 Generate build reports to send to a remote server (none,
24720 anonymous or detailed).
24721
24722 --report-planning-failure
24723 Generate build reports when the dependency solver fails.
24724 This is used by the Hackage build bot.
24725
24726 --enable-per-component
24727 --disable-per-component
24728 Per-component builds when possible
24729
24730 --one-shot
24731 --no-one-shot
24732 Do not record the packages in the world file.
24733
24734 --run-tests
24735 Run package test suites during installation.
24736
24737 -j, --jobs [NUM]
24738 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
24739 given).
24740
24741 --keep-going
24742 After a build failure, continue to build other unaffected
24743 packages.
24744
24745 --offline
24746 --no-offline
24747 Don't download packages from the Internet.
24748
24749 --project-file FILE
24750 Set the name of the cabal.project file to search for in
24751 parent directories
24752
24753 --only
24754 Only installs the package in the current directory.
24755
24756 --haddock-hoogle
24757 Generate a hoogle database
24758
24759 --haddock-html
24760 Generate HTML documentation (the default)
24761
24762 --haddock-html-location URL
24763 Location of HTML documentation for pre-requisite packages
24764
24765 --haddock-for-hackage
24766 Collection of flags to generate documentation suitable
24767 for upload to hackage
24768
24769 --haddock-executables
24770 Run haddock for Executables targets
24771
24772 --haddock-tests
24773 Run haddock for Test Suite targets
24774
24775 --haddock-benchmarks
24776 Run haddock for Benchmark targets
24777
24778 --haddock-all
24779 Run haddock for all targets
24780
24781 --haddock-internal
24782 Run haddock for internal modules and include all symbols
24783
24784 --haddock-css PATH
24785 Use PATH as the haddock stylesheet
24786
24787 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
24788 dock-hyperlinked-source
24789 Hyperlink the documentation to the source code
24790
24791 --haddock-quickjump
24792 Generate an index for interactive documentation naviga‐
24793 tion
24794
24795 --haddock-hscolour-css PATH
24796 Use PATH as the HsColour stylesheet
24797
24798 --haddock-contents-location URL
24799 Bake URL in as the location for the contents page
24800
24801 --test-log TEMPLATE
24802 Log all test suite results to file (name template can use
24803 $pkgid, $compiler, $os, $arch, $test-suite, $result)
24804
24805 --test-machine-log TEMPLATE
24806 Produce a machine-readable log file (name template can
24807 use $pkgid, $compiler, $os, $arch, $result)
24808
24809 --test-show-details FILTER
24810
24811 --test-keep-tix-files
24812 keep .tix files for HPC between test runs
24813
24814 --test-wrapper FILE
24815 Run test through a wrapper.
24816
24817 --test-fail-when-no-test-suites
24818 Exit with failure when no test suites are found.
24819
24820 --test-options TEMPLATES
24821 give extra options to test executables (name templates
24822 can use $pkgid, $compiler, $os, $arch, $test-suite)
24823
24824 --test-option TEMPLATE
24825 give extra option to test executables (no need to quote
24826 options containing spaces, name template can use $pkgid,
24827 $compiler, $os, $arch, $test-suite)
24828
24829
24830 cabal new-exec
24831
24832 Usage: cabal new-exec [FLAGS] [--] COMMAND [--] [ARGS]
24833
24834
24835 During development it is often useful to run build tasks and perform
24836 one-off program executions to experiment with the behavior of build
24837 tools. It is convenient to run these tools in the same way cabal itself
24838 would. The `cabal new-exec` command provides a way to do so.
24839
24840 Compiler tools will be configured to see the same subset of the store
24841 that builds would see. The PATH is modified to make all executables in
24842 the dependency tree available (provided they have been built already).
24843 Commands are also rewritten in the way cabal itself would. For example,
24844 `cabal new-exec ghc` will consult the configuration to choose an appro‐
24845 priate version of ghc and to include any ghc-specific flags requested.
24846
24847
24848 During development it is often useful to run build tasks and perform
24849 one-off program executions to experiment with the behavior of build
24850 tools. It is convenient to run these tools in the same way cabal itself
24851 would. The `cabal new-exec` command provides a way to do so.
24852
24853 Compiler tools will be configured to see the same subset of the store
24854 that builds would see. The PATH is modified to make all executables in
24855 the dependency tree available (provided they have been built already).
24856 Commands are also rewritten in the way cabal itself would. For example,
24857 `cabal new-exec ghc` will consult the configuration to choose an appro‐
24858 priate version of ghc and to include any ghc-specific flags requested.
24859
24860
24861 Flags:
24862 -v, --verbose [n]
24863 Control verbosity (n is 0--3, default verbosity level is
24864 1)
24865
24866 --builddir, --distdir, --distpref DIR
24867 The directory where Cabal puts generated build files
24868 (default dist)
24869
24870 -g, --ghc
24871 compile with GHC
24872
24873 --ghcjs
24874 compile with GHCJS
24875
24876 --uhc
24877 compile with UHC
24878
24879 --haskell-suite
24880 compile with a haskell-suite compiler
24881
24882 --cabal-file PATH
24883 use this Cabal file
24884
24885 -w, --with-compiler PATH
24886 give the path to a particular compiler
24887
24888 --with-hc-pkg PATH
24889 give the path to the package tool
24890
24891 --prefix DIR
24892 bake this prefix in preparation of installation
24893
24894 --bindir DIR
24895 installation directory for executables
24896
24897 --libdir DIR
24898 installation directory for libraries
24899
24900 --libsubdir DIR
24901 subdirectory of libdir in which libs are installed
24902
24903 --dynlibdir DIR
24904 installation directory for dynamic libraries
24905
24906 --libexecdir DIR
24907 installation directory for program executables
24908
24909 --libexecsubdir DIR
24910 subdirectory of libexecdir in which private executables
24911 are installed
24912
24913 --datadir DIR
24914 installation directory for read-only data
24915
24916 --datasubdir DIR
24917 subdirectory of datadir in which data files are installed
24918
24919 --docdir DIR
24920 installation directory for documentation
24921
24922 --htmldir DIR
24923 installation directory for HTML documentation
24924
24925 --haddockdir DIR
24926 installation directory for haddock interfaces
24927
24928 --sysconfdir DIR
24929 installation directory for configuration files
24930
24931 --program-prefix PREFIX
24932 prefix to be applied to installed executables
24933
24934 --program-suffix SUFFIX
24935 suffix to be applied to installed executables
24936
24937 --enable-library-vanilla
24938 --disable-library-vanilla
24939 Vanilla libraries
24940
24941 -p, --enable-library-profiling
24942 --disable-library-profiling
24943 Library profiling
24944
24945 --enable-shared
24946 --disable-shared
24947 Shared library
24948
24949 --enable-static
24950 --disable-static
24951 Static library
24952
24953 --enable-executable-dynamic
24954 --disable-executable-dynamic
24955 Executable dynamic linking
24956
24957 --enable-executable-static
24958 --disable-executable-static
24959 Executable fully static linking
24960
24961 --enable-profiling
24962 --disable-profiling
24963 Executable and library profiling
24964
24965 --enable-executable-profiling
24966 --disable-executable-profiling
24967 Executable profiling (DEPRECATED)
24968
24969 --profiling-detail level
24970 Profiling detail level for executable and library
24971 (default, none, exported-functions, toplevel-functions,
24972 all-functions).
24973
24974 --library-profiling-detail level
24975 Profiling detail level for libraries only.
24976
24977 -O, --enable-optimization, --enable-optimisation [n]
24978 Build with optimization (n is 0--2, default is 1)
24979
24980 --disable-optimization, --disable-optimisation
24981 Build without optimization
24982
24983 --enable-debug-info [n]
24984 Emit debug info (n is 0--3, default is 0)
24985
24986 --disable-debug-info
24987 Don't emit debug info
24988
24989 --enable-library-for-ghci
24990 --disable-library-for-ghci
24991 compile library for use with GHCi
24992
24993 --enable-split-sections
24994 --disable-split-sections
24995 compile library code such that unneeded definitions can
24996 be dropped from the final executable (GHC 7.8+)
24997
24998 --enable-split-objs
24999 --disable-split-objs
25000 split library into smaller objects to reduce binary sizes
25001 (GHC 6.6+)
25002
25003 --enable-executable-stripping
25004 --disable-executable-stripping
25005 strip executables upon installation to reduce binary
25006 sizes
25007
25008 --enable-library-stripping
25009 --disable-library-stripping
25010 strip libraries upon installation to reduce binary sizes
25011
25012 --configure-option OPT
25013 Extra option for configure
25014
25015 --user
25016 --global
25017 doing a per-user installation
25018
25019 --package-db DB
25020 Append the given package database to the list of package
25021 databases used (to satisfy dependencies and register
25022 into). May be a specific file, 'global' or 'user'. The
25023 initial list is ['global'], ['global', 'user'], or
25024 ['global', $sandbox], depending on context. Use 'clear'
25025 to reset the list to empty. See the user guide for
25026 details.
25027
25028 -f, --flags FLAGS
25029 Force values for the given flags in Cabal conditionals in
25030 the .cabal file. E.g., --flags="debug -usebytestrings"
25031 forces the flag "debug" to true and "usebytestrings" to
25032 false.
25033
25034 --extra-include-dirs PATH
25035 A list of directories to search for header files
25036
25037 --enable-deterministic
25038 --disable-deterministic
25039 Try to be as deterministic as possible (used by the test
25040 suite)
25041
25042 --ipid IPID
25043 Installed package ID to compile this package as
25044
25045 --cid CID
25046 Installed component ID to compile this component as
25047
25048 --extra-lib-dirs PATH
25049 A list of directories to search for external libraries
25050
25051 --extra-framework-dirs PATH
25052 A list of directories to search for external frameworks
25053 (OS X only)
25054
25055 --extra-prog-path PATH
25056 A list of directories to search for required programs (in
25057 addition to the normal search locations)
25058
25059 --instantiate-with NAME=MOD
25060 A mapping of signature names to concrete module instanti‐
25061 ations.
25062
25063 --enable-tests
25064 --disable-tests
25065 dependency checking and compilation for test suites
25066 listed in the package description file.
25067
25068 --enable-coverage
25069 --disable-coverage
25070 build package with Haskell Program Coverage. (GHC only)
25071
25072 --enable-library-coverage
25073 --disable-library-coverage
25074 build package with Haskell Program Coverage. (GHC only)
25075 (DEPRECATED)
25076
25077 --enable-benchmarks
25078 --disable-benchmarks
25079 dependency checking and compilation for benchmarks listed
25080 in the package description file.
25081
25082 --enable-relocatable
25083 --disable-relocatable
25084 building a package that is relocatable. (GHC only)
25085
25086 --disable-response-files
25087 enable workaround for old versions of programs like "ar"
25088 that do not support @file arguments
25089
25090 --allow-depending-on-private-libs
25091 Allow depending on private libraries. If set, the library
25092 visibility check MUST be done externally.
25093
25094 --with-alex PATH
25095 give the path to alex
25096
25097 --with-ar PATH
25098 give the path to ar
25099
25100 --with-c2hs PATH
25101 give the path to c2hs
25102
25103 --with-cpphs PATH
25104 give the path to cpphs
25105
25106 --with-doctest PATH
25107 give the path to doctest
25108
25109 --with-gcc PATH
25110 give the path to gcc
25111
25112 --with-ghc PATH
25113 give the path to ghc
25114
25115 --with-ghc-pkg PATH
25116 give the path to ghc-pkg
25117
25118 --with-ghcjs PATH
25119 give the path to ghcjs
25120
25121 --with-ghcjs-pkg PATH
25122 give the path to ghcjs-pkg
25123
25124 --with-greencard PATH
25125 give the path to greencard
25126
25127 --with-haddock PATH
25128 give the path to haddock
25129
25130 --with-happy PATH
25131 give the path to happy
25132
25133 --with-haskell-suite PATH
25134 give the path to haskell-suite
25135
25136 --with-haskell-suite-pkg PATH
25137 give the path to haskell-suite-pkg
25138
25139 --with-hmake PATH
25140 give the path to hmake
25141
25142 --with-hpc PATH
25143 give the path to hpc
25144
25145 --with-hsc2hs PATH
25146 give the path to hsc2hs
25147
25148 --with-hscolour PATH
25149 give the path to hscolour
25150
25151 --with-jhc PATH
25152 give the path to jhc
25153
25154 --with-ld PATH
25155 give the path to ld
25156
25157 --with-pkg-config PATH
25158 give the path to pkg-config
25159
25160 --with-runghc PATH
25161 give the path to runghc
25162
25163 --with-strip PATH
25164 give the path to strip
25165
25166 --with-tar PATH
25167 give the path to tar
25168
25169 --with-uhc PATH
25170 give the path to uhc
25171
25172 --alex-option OPT
25173 give an extra option to alex (no need to quote options
25174 containing spaces)
25175
25176 --ar-option OPT
25177 give an extra option to ar (no need to quote options con‐
25178 taining spaces)
25179
25180 --c2hs-option OPT
25181 give an extra option to c2hs (no need to quote options
25182 containing spaces)
25183
25184 --cpphs-option OPT
25185 give an extra option to cpphs (no need to quote options
25186 containing spaces)
25187
25188 --doctest-option OPT
25189 give an extra option to doctest (no need to quote options
25190 containing spaces)
25191
25192 --gcc-option OPT
25193 give an extra option to gcc (no need to quote options
25194 containing spaces)
25195
25196 --ghc-option OPT
25197 give an extra option to ghc (no need to quote options
25198 containing spaces)
25199
25200 --ghc-pkg-option OPT
25201 give an extra option to ghc-pkg (no need to quote options
25202 containing spaces)
25203
25204 --ghcjs-option OPT
25205 give an extra option to ghcjs (no need to quote options
25206 containing spaces)
25207
25208 --ghcjs-pkg-option OPT
25209 give an extra option to ghcjs-pkg (no need to quote
25210 options containing spaces)
25211
25212 --greencard-option OPT
25213 give an extra option to greencard (no need to quote
25214 options containing spaces)
25215
25216 --haddock-option OPT
25217 give an extra option to haddock (no need to quote options
25218 containing spaces)
25219
25220 --happy-option OPT
25221 give an extra option to happy (no need to quote options
25222 containing spaces)
25223
25224 --haskell-suite-option OPT
25225 give an extra option to haskell-suite (no need to quote
25226 options containing spaces)
25227
25228 --haskell-suite-pkg-option OPT
25229 give an extra option to haskell-suite-pkg (no need to
25230 quote options containing spaces)
25231
25232 --hmake-option OPT
25233 give an extra option to hmake (no need to quote options
25234 containing spaces)
25235
25236 --hpc-option OPT
25237 give an extra option to hpc (no need to quote options
25238 containing spaces)
25239
25240 --hsc2hs-option OPT
25241 give an extra option to hsc2hs (no need to quote options
25242 containing spaces)
25243
25244 --hscolour-option OPT
25245 give an extra option to hscolour (no need to quote
25246 options containing spaces)
25247
25248 --jhc-option OPT
25249 give an extra option to jhc (no need to quote options
25250 containing spaces)
25251
25252 --ld-option OPT
25253 give an extra option to ld (no need to quote options con‐
25254 taining spaces)
25255
25256 --pkg-config-option OPT
25257 give an extra option to pkg-config (no need to quote
25258 options containing spaces)
25259
25260 --runghc-option OPT
25261 give an extra option to runghc (no need to quote options
25262 containing spaces)
25263
25264 --strip-option OPT
25265 give an extra option to strip (no need to quote options
25266 containing spaces)
25267
25268 --tar-option OPT
25269 give an extra option to tar (no need to quote options
25270 containing spaces)
25271
25272 --uhc-option OPT
25273 give an extra option to uhc (no need to quote options
25274 containing spaces)
25275
25276 --alex-options OPTS
25277 give extra options to alex
25278
25279 --ar-options OPTS
25280 give extra options to ar
25281
25282 --c2hs-options OPTS
25283 give extra options to c2hs
25284
25285 --cpphs-options OPTS
25286 give extra options to cpphs
25287
25288 --doctest-options OPTS
25289 give extra options to doctest
25290
25291 --gcc-options OPTS
25292 give extra options to gcc
25293
25294 --ghc-options OPTS
25295 give extra options to ghc
25296
25297 --ghc-pkg-options OPTS
25298 give extra options to ghc-pkg
25299
25300 --ghcjs-options OPTS
25301 give extra options to ghcjs
25302
25303 --ghcjs-pkg-options OPTS
25304 give extra options to ghcjs-pkg
25305
25306 --greencard-options OPTS
25307 give extra options to greencard
25308
25309 --haddock-options OPTS
25310 give extra options to haddock
25311
25312 --happy-options OPTS
25313 give extra options to happy
25314
25315 --haskell-suite-options OPTS
25316 give extra options to haskell-suite
25317
25318 --haskell-suite-pkg-options OPTS
25319 give extra options to haskell-suite-pkg
25320
25321 --hmake-options OPTS
25322 give extra options to hmake
25323
25324 --hpc-options OPTS
25325 give extra options to hpc
25326
25327 --hsc2hs-options OPTS
25328 give extra options to hsc2hs
25329
25330 --hscolour-options OPTS
25331 give extra options to hscolour
25332
25333 --jhc-options OPTS
25334 give extra options to jhc
25335
25336 --ld-options OPTS
25337 give extra options to ld
25338
25339 --pkg-config-options OPTS
25340 give extra options to pkg-config
25341
25342 --runghc-options OPTS
25343 give extra options to runghc
25344
25345 --strip-options OPTS
25346 give extra options to strip
25347
25348 --tar-options OPTS
25349 give extra options to tar
25350
25351 --uhc-options OPTS
25352 give extra options to uhc
25353
25354 --cabal-lib-version VERSION
25355 Select which version of the Cabal lib to use to build
25356 packages (useful for testing).
25357
25358 --constraint CONSTRAINT
25359 Specify constraints on a package (version,
25360 installed/source, flags)
25361
25362 --preference CONSTRAINT
25363 Specify preferences (soft constraints) on the version of
25364 a package
25365
25366 --solver SOLVER
25367 Select dependency solver to use (default: modular).
25368 Choices: modular.
25369
25370 --allow-older [DEPS]
25371 Ignore lower bounds in all dependencies or DEPS
25372
25373 --allow-newer [DEPS]
25374 Ignore upper bounds in all dependencies or DEPS
25375
25376 --write-ghc-environment-files always|never|ghc8.4.4+
25377 Whether to create a .ghc.environment file after a suc‐
25378 cessful build (v2-build only)
25379
25380 --enable-documentation
25381 --disable-documentation
25382 building of documentation
25383
25384 --doc-index-file TEMPLATE
25385 A central index of haddock API documentation (template
25386 cannot use $pkgid)
25387
25388 --dry-run
25389 Do not install anything, only print what would be
25390 installed.
25391
25392 --max-backjumps NUM
25393 Maximum number of backjumps allowed while solving
25394 (default: 4000). Use a negative number to enable unlim‐
25395 ited backtracking. Use 0 to disable backtracking com‐
25396 pletely.
25397
25398 --reorder-goals
25399 --no-reorder-goals
25400 Try to reorder goals according to certain heuristics.
25401 Slows things down on average, but may make backtracking
25402 faster for some packages.
25403
25404 --count-conflicts
25405 --no-count-conflicts
25406 Try to speed up solving by preferring goals that are
25407 involved in a lot of conflicts (default).
25408
25409 --minimize-conflict-set
25410 --no-minimize-conflict-set
25411 When there is no solution, try to improve the error mes‐
25412 sage by finding a minimal conflict set (default: false).
25413 May increase run time significantly.
25414
25415 --independent-goals
25416 --no-independent-goals
25417 Treat several goals on the command line as independent.
25418 If several goals depend on the same package, different
25419 versions can be chosen.
25420
25421 --shadow-installed-packages
25422 --no-shadow-installed-packages
25423 If multiple package instances of the same version are
25424 installed, treat all but one as shadowed.
25425
25426 --strong-flags
25427 --no-strong-flags
25428 Do not defer flag choices (this used to be the default in
25429 cabal-install <= 1.20).
25430
25431 --allow-boot-library-installs
25432 --no-allow-boot-library-installs
25433 Allow cabal to install base, ghc-prim, integer-simple,
25434 integer-gmp, and template-haskell.
25435
25436 --reject-unconstrained-dependencies none|all
25437 Require these packages to have constraints on them if
25438 they are to be selected (default: none).
25439
25440 --reinstall
25441 --no-reinstall
25442 Install even if it means installing the same version
25443 again.
25444
25445 --avoid-reinstalls
25446 --no-avoid-reinstalls
25447 Do not select versions that would destructively overwrite
25448 installed packages.
25449
25450 --force-reinstalls
25451 --no-force-reinstalls
25452 Reinstall packages even if they will most likely break
25453 other installed packages.
25454
25455 --upgrade-dependencies
25456 --no-upgrade-dependencies
25457 Pick the latest version for all dependencies, rather than
25458 trying to pick an installed version.
25459
25460 --only-dependencies
25461 --no-only-dependencies
25462 Install only the dependencies necessary to build the
25463 given packages
25464
25465 --dependencies-only
25466 --no-dependencies-only
25467 A synonym for --only-dependencies
25468
25469 --index-state STATE
25470 Use source package index state as it existed at a previ‐
25471 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
25472 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
25473 'HEAD' (default: 'HEAD').
25474
25475 --root-cmd COMMAND
25476 (No longer supported, do not use.)
25477
25478 --symlink-bindir DIR
25479 Add symlinks to installed executables into this direc‐
25480 tory.
25481
25482 --build-summary TEMPLATE
25483 Save build summaries to file (name template can use
25484 $pkgid, $compiler, $os, $arch)
25485
25486 --build-log TEMPLATE
25487 Log all builds to file (name template can use $pkgid,
25488 $compiler, $os, $arch)
25489
25490 --remote-build-reporting LEVEL
25491 Generate build reports to send to a remote server (none,
25492 anonymous or detailed).
25493
25494 --report-planning-failure
25495 Generate build reports when the dependency solver fails.
25496 This is used by the Hackage build bot.
25497
25498 --enable-per-component
25499 --disable-per-component
25500 Per-component builds when possible
25501
25502 --one-shot
25503 --no-one-shot
25504 Do not record the packages in the world file.
25505
25506 --run-tests
25507 Run package test suites during installation.
25508
25509 -j, --jobs [NUM]
25510 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
25511 given).
25512
25513 --keep-going
25514 After a build failure, continue to build other unaffected
25515 packages.
25516
25517 --offline
25518 --no-offline
25519 Don't download packages from the Internet.
25520
25521 --project-file FILE
25522 Set the name of the cabal.project file to search for in
25523 parent directories
25524
25525 --only
25526 Only installs the package in the current directory.
25527
25528 --haddock-hoogle
25529 Generate a hoogle database
25530
25531 --haddock-html
25532 Generate HTML documentation (the default)
25533
25534 --haddock-html-location URL
25535 Location of HTML documentation for pre-requisite packages
25536
25537 --haddock-for-hackage
25538 Collection of flags to generate documentation suitable
25539 for upload to hackage
25540
25541 --haddock-executables
25542 Run haddock for Executables targets
25543
25544 --haddock-tests
25545 Run haddock for Test Suite targets
25546
25547 --haddock-benchmarks
25548 Run haddock for Benchmark targets
25549
25550 --haddock-all
25551 Run haddock for all targets
25552
25553 --haddock-internal
25554 Run haddock for internal modules and include all symbols
25555
25556 --haddock-css PATH
25557 Use PATH as the haddock stylesheet
25558
25559 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
25560 dock-hyperlinked-source
25561 Hyperlink the documentation to the source code
25562
25563 --haddock-quickjump
25564 Generate an index for interactive documentation naviga‐
25565 tion
25566
25567 --haddock-hscolour-css PATH
25568 Use PATH as the HsColour stylesheet
25569
25570 --haddock-contents-location URL
25571 Bake URL in as the location for the contents page
25572
25573 --test-log TEMPLATE
25574 Log all test suite results to file (name template can use
25575 $pkgid, $compiler, $os, $arch, $test-suite, $result)
25576
25577 --test-machine-log TEMPLATE
25578 Produce a machine-readable log file (name template can
25579 use $pkgid, $compiler, $os, $arch, $result)
25580
25581 --test-show-details FILTER
25582
25583 --test-keep-tix-files
25584 keep .tix files for HPC between test runs
25585
25586 --test-wrapper FILE
25587 Run test through a wrapper.
25588
25589 --test-fail-when-no-test-suites
25590 Exit with failure when no test suites are found.
25591
25592 --test-options TEMPLATES
25593 give extra options to test executables (name templates
25594 can use $pkgid, $compiler, $os, $arch, $test-suite)
25595
25596 --test-option TEMPLATE
25597 give extra option to test executables (no need to quote
25598 options containing spaces, name template can use $pkgid,
25599 $compiler, $os, $arch, $test-suite)
25600
25601
25602 cabal v2-exec
25603
25604 Usage: cabal v2-exec [FLAGS] [--] COMMAND [--] [ARGS]
25605
25606
25607 During development it is often useful to run build tasks and perform
25608 one-off program executions to experiment with the behavior of build
25609 tools. It is convenient to run these tools in the same way cabal itself
25610 would. The `cabal v2-exec` command provides a way to do so.
25611
25612 Compiler tools will be configured to see the same subset of the store
25613 that builds would see. The PATH is modified to make all executables in
25614 the dependency tree available (provided they have been built already).
25615 Commands are also rewritten in the way cabal itself would. For example,
25616 `cabal v2-exec ghc` will consult the configuration to choose an appro‐
25617 priate version of ghc and to include any ghc-specific flags requested.
25618
25619
25620 Flags:
25621 -v, --verbose [n]
25622 Control verbosity (n is 0--3, default verbosity level is
25623 1)
25624
25625 --builddir, --distdir, --distpref DIR
25626 The directory where Cabal puts generated build files
25627 (default dist)
25628
25629 -g, --ghc
25630 compile with GHC
25631
25632 --ghcjs
25633 compile with GHCJS
25634
25635 --uhc
25636 compile with UHC
25637
25638 --haskell-suite
25639 compile with a haskell-suite compiler
25640
25641 --cabal-file PATH
25642 use this Cabal file
25643
25644 -w, --with-compiler PATH
25645 give the path to a particular compiler
25646
25647 --with-hc-pkg PATH
25648 give the path to the package tool
25649
25650 --prefix DIR
25651 bake this prefix in preparation of installation
25652
25653 --bindir DIR
25654 installation directory for executables
25655
25656 --libdir DIR
25657 installation directory for libraries
25658
25659 --libsubdir DIR
25660 subdirectory of libdir in which libs are installed
25661
25662 --dynlibdir DIR
25663 installation directory for dynamic libraries
25664
25665 --libexecdir DIR
25666 installation directory for program executables
25667
25668 --libexecsubdir DIR
25669 subdirectory of libexecdir in which private executables
25670 are installed
25671
25672 --datadir DIR
25673 installation directory for read-only data
25674
25675 --datasubdir DIR
25676 subdirectory of datadir in which data files are installed
25677
25678 --docdir DIR
25679 installation directory for documentation
25680
25681 --htmldir DIR
25682 installation directory for HTML documentation
25683
25684 --haddockdir DIR
25685 installation directory for haddock interfaces
25686
25687 --sysconfdir DIR
25688 installation directory for configuration files
25689
25690 --program-prefix PREFIX
25691 prefix to be applied to installed executables
25692
25693 --program-suffix SUFFIX
25694 suffix to be applied to installed executables
25695
25696 --enable-library-vanilla
25697 --disable-library-vanilla
25698 Vanilla libraries
25699
25700 -p, --enable-library-profiling
25701 --disable-library-profiling
25702 Library profiling
25703
25704 --enable-shared
25705 --disable-shared
25706 Shared library
25707
25708 --enable-static
25709 --disable-static
25710 Static library
25711
25712 --enable-executable-dynamic
25713 --disable-executable-dynamic
25714 Executable dynamic linking
25715
25716 --enable-executable-static
25717 --disable-executable-static
25718 Executable fully static linking
25719
25720 --enable-profiling
25721 --disable-profiling
25722 Executable and library profiling
25723
25724 --enable-executable-profiling
25725 --disable-executable-profiling
25726 Executable profiling (DEPRECATED)
25727
25728 --profiling-detail level
25729 Profiling detail level for executable and library
25730 (default, none, exported-functions, toplevel-functions,
25731 all-functions).
25732
25733 --library-profiling-detail level
25734 Profiling detail level for libraries only.
25735
25736 -O, --enable-optimization, --enable-optimisation [n]
25737 Build with optimization (n is 0--2, default is 1)
25738
25739 --disable-optimization, --disable-optimisation
25740 Build without optimization
25741
25742 --enable-debug-info [n]
25743 Emit debug info (n is 0--3, default is 0)
25744
25745 --disable-debug-info
25746 Don't emit debug info
25747
25748 --enable-library-for-ghci
25749 --disable-library-for-ghci
25750 compile library for use with GHCi
25751
25752 --enable-split-sections
25753 --disable-split-sections
25754 compile library code such that unneeded definitions can
25755 be dropped from the final executable (GHC 7.8+)
25756
25757 --enable-split-objs
25758 --disable-split-objs
25759 split library into smaller objects to reduce binary sizes
25760 (GHC 6.6+)
25761
25762 --enable-executable-stripping
25763 --disable-executable-stripping
25764 strip executables upon installation to reduce binary
25765 sizes
25766
25767 --enable-library-stripping
25768 --disable-library-stripping
25769 strip libraries upon installation to reduce binary sizes
25770
25771 --configure-option OPT
25772 Extra option for configure
25773
25774 --user
25775 --global
25776 doing a per-user installation
25777
25778 --package-db DB
25779 Append the given package database to the list of package
25780 databases used (to satisfy dependencies and register
25781 into). May be a specific file, 'global' or 'user'. The
25782 initial list is ['global'], ['global', 'user'], or
25783 ['global', $sandbox], depending on context. Use 'clear'
25784 to reset the list to empty. See the user guide for
25785 details.
25786
25787 -f, --flags FLAGS
25788 Force values for the given flags in Cabal conditionals in
25789 the .cabal file. E.g., --flags="debug -usebytestrings"
25790 forces the flag "debug" to true and "usebytestrings" to
25791 false.
25792
25793 --extra-include-dirs PATH
25794 A list of directories to search for header files
25795
25796 --enable-deterministic
25797 --disable-deterministic
25798 Try to be as deterministic as possible (used by the test
25799 suite)
25800
25801 --ipid IPID
25802 Installed package ID to compile this package as
25803
25804 --cid CID
25805 Installed component ID to compile this component as
25806
25807 --extra-lib-dirs PATH
25808 A list of directories to search for external libraries
25809
25810 --extra-framework-dirs PATH
25811 A list of directories to search for external frameworks
25812 (OS X only)
25813
25814 --extra-prog-path PATH
25815 A list of directories to search for required programs (in
25816 addition to the normal search locations)
25817
25818 --instantiate-with NAME=MOD
25819 A mapping of signature names to concrete module instanti‐
25820 ations.
25821
25822 --enable-tests
25823 --disable-tests
25824 dependency checking and compilation for test suites
25825 listed in the package description file.
25826
25827 --enable-coverage
25828 --disable-coverage
25829 build package with Haskell Program Coverage. (GHC only)
25830
25831 --enable-library-coverage
25832 --disable-library-coverage
25833 build package with Haskell Program Coverage. (GHC only)
25834 (DEPRECATED)
25835
25836 --enable-benchmarks
25837 --disable-benchmarks
25838 dependency checking and compilation for benchmarks listed
25839 in the package description file.
25840
25841 --enable-relocatable
25842 --disable-relocatable
25843 building a package that is relocatable. (GHC only)
25844
25845 --disable-response-files
25846 enable workaround for old versions of programs like "ar"
25847 that do not support @file arguments
25848
25849 --allow-depending-on-private-libs
25850 Allow depending on private libraries. If set, the library
25851 visibility check MUST be done externally.
25852
25853 --with-alex PATH
25854 give the path to alex
25855
25856 --with-ar PATH
25857 give the path to ar
25858
25859 --with-c2hs PATH
25860 give the path to c2hs
25861
25862 --with-cpphs PATH
25863 give the path to cpphs
25864
25865 --with-doctest PATH
25866 give the path to doctest
25867
25868 --with-gcc PATH
25869 give the path to gcc
25870
25871 --with-ghc PATH
25872 give the path to ghc
25873
25874 --with-ghc-pkg PATH
25875 give the path to ghc-pkg
25876
25877 --with-ghcjs PATH
25878 give the path to ghcjs
25879
25880 --with-ghcjs-pkg PATH
25881 give the path to ghcjs-pkg
25882
25883 --with-greencard PATH
25884 give the path to greencard
25885
25886 --with-haddock PATH
25887 give the path to haddock
25888
25889 --with-happy PATH
25890 give the path to happy
25891
25892 --with-haskell-suite PATH
25893 give the path to haskell-suite
25894
25895 --with-haskell-suite-pkg PATH
25896 give the path to haskell-suite-pkg
25897
25898 --with-hmake PATH
25899 give the path to hmake
25900
25901 --with-hpc PATH
25902 give the path to hpc
25903
25904 --with-hsc2hs PATH
25905 give the path to hsc2hs
25906
25907 --with-hscolour PATH
25908 give the path to hscolour
25909
25910 --with-jhc PATH
25911 give the path to jhc
25912
25913 --with-ld PATH
25914 give the path to ld
25915
25916 --with-pkg-config PATH
25917 give the path to pkg-config
25918
25919 --with-runghc PATH
25920 give the path to runghc
25921
25922 --with-strip PATH
25923 give the path to strip
25924
25925 --with-tar PATH
25926 give the path to tar
25927
25928 --with-uhc PATH
25929 give the path to uhc
25930
25931 --alex-option OPT
25932 give an extra option to alex (no need to quote options
25933 containing spaces)
25934
25935 --ar-option OPT
25936 give an extra option to ar (no need to quote options con‐
25937 taining spaces)
25938
25939 --c2hs-option OPT
25940 give an extra option to c2hs (no need to quote options
25941 containing spaces)
25942
25943 --cpphs-option OPT
25944 give an extra option to cpphs (no need to quote options
25945 containing spaces)
25946
25947 --doctest-option OPT
25948 give an extra option to doctest (no need to quote options
25949 containing spaces)
25950
25951 --gcc-option OPT
25952 give an extra option to gcc (no need to quote options
25953 containing spaces)
25954
25955 --ghc-option OPT
25956 give an extra option to ghc (no need to quote options
25957 containing spaces)
25958
25959 --ghc-pkg-option OPT
25960 give an extra option to ghc-pkg (no need to quote options
25961 containing spaces)
25962
25963 --ghcjs-option OPT
25964 give an extra option to ghcjs (no need to quote options
25965 containing spaces)
25966
25967 --ghcjs-pkg-option OPT
25968 give an extra option to ghcjs-pkg (no need to quote
25969 options containing spaces)
25970
25971 --greencard-option OPT
25972 give an extra option to greencard (no need to quote
25973 options containing spaces)
25974
25975 --haddock-option OPT
25976 give an extra option to haddock (no need to quote options
25977 containing spaces)
25978
25979 --happy-option OPT
25980 give an extra option to happy (no need to quote options
25981 containing spaces)
25982
25983 --haskell-suite-option OPT
25984 give an extra option to haskell-suite (no need to quote
25985 options containing spaces)
25986
25987 --haskell-suite-pkg-option OPT
25988 give an extra option to haskell-suite-pkg (no need to
25989 quote options containing spaces)
25990
25991 --hmake-option OPT
25992 give an extra option to hmake (no need to quote options
25993 containing spaces)
25994
25995 --hpc-option OPT
25996 give an extra option to hpc (no need to quote options
25997 containing spaces)
25998
25999 --hsc2hs-option OPT
26000 give an extra option to hsc2hs (no need to quote options
26001 containing spaces)
26002
26003 --hscolour-option OPT
26004 give an extra option to hscolour (no need to quote
26005 options containing spaces)
26006
26007 --jhc-option OPT
26008 give an extra option to jhc (no need to quote options
26009 containing spaces)
26010
26011 --ld-option OPT
26012 give an extra option to ld (no need to quote options con‐
26013 taining spaces)
26014
26015 --pkg-config-option OPT
26016 give an extra option to pkg-config (no need to quote
26017 options containing spaces)
26018
26019 --runghc-option OPT
26020 give an extra option to runghc (no need to quote options
26021 containing spaces)
26022
26023 --strip-option OPT
26024 give an extra option to strip (no need to quote options
26025 containing spaces)
26026
26027 --tar-option OPT
26028 give an extra option to tar (no need to quote options
26029 containing spaces)
26030
26031 --uhc-option OPT
26032 give an extra option to uhc (no need to quote options
26033 containing spaces)
26034
26035 --alex-options OPTS
26036 give extra options to alex
26037
26038 --ar-options OPTS
26039 give extra options to ar
26040
26041 --c2hs-options OPTS
26042 give extra options to c2hs
26043
26044 --cpphs-options OPTS
26045 give extra options to cpphs
26046
26047 --doctest-options OPTS
26048 give extra options to doctest
26049
26050 --gcc-options OPTS
26051 give extra options to gcc
26052
26053 --ghc-options OPTS
26054 give extra options to ghc
26055
26056 --ghc-pkg-options OPTS
26057 give extra options to ghc-pkg
26058
26059 --ghcjs-options OPTS
26060 give extra options to ghcjs
26061
26062 --ghcjs-pkg-options OPTS
26063 give extra options to ghcjs-pkg
26064
26065 --greencard-options OPTS
26066 give extra options to greencard
26067
26068 --haddock-options OPTS
26069 give extra options to haddock
26070
26071 --happy-options OPTS
26072 give extra options to happy
26073
26074 --haskell-suite-options OPTS
26075 give extra options to haskell-suite
26076
26077 --haskell-suite-pkg-options OPTS
26078 give extra options to haskell-suite-pkg
26079
26080 --hmake-options OPTS
26081 give extra options to hmake
26082
26083 --hpc-options OPTS
26084 give extra options to hpc
26085
26086 --hsc2hs-options OPTS
26087 give extra options to hsc2hs
26088
26089 --hscolour-options OPTS
26090 give extra options to hscolour
26091
26092 --jhc-options OPTS
26093 give extra options to jhc
26094
26095 --ld-options OPTS
26096 give extra options to ld
26097
26098 --pkg-config-options OPTS
26099 give extra options to pkg-config
26100
26101 --runghc-options OPTS
26102 give extra options to runghc
26103
26104 --strip-options OPTS
26105 give extra options to strip
26106
26107 --tar-options OPTS
26108 give extra options to tar
26109
26110 --uhc-options OPTS
26111 give extra options to uhc
26112
26113 --cabal-lib-version VERSION
26114 Select which version of the Cabal lib to use to build
26115 packages (useful for testing).
26116
26117 --constraint CONSTRAINT
26118 Specify constraints on a package (version,
26119 installed/source, flags)
26120
26121 --preference CONSTRAINT
26122 Specify preferences (soft constraints) on the version of
26123 a package
26124
26125 --solver SOLVER
26126 Select dependency solver to use (default: modular).
26127 Choices: modular.
26128
26129 --allow-older [DEPS]
26130 Ignore lower bounds in all dependencies or DEPS
26131
26132 --allow-newer [DEPS]
26133 Ignore upper bounds in all dependencies or DEPS
26134
26135 --write-ghc-environment-files always|never|ghc8.4.4+
26136 Whether to create a .ghc.environment file after a suc‐
26137 cessful build (v2-build only)
26138
26139 --enable-documentation
26140 --disable-documentation
26141 building of documentation
26142
26143 --doc-index-file TEMPLATE
26144 A central index of haddock API documentation (template
26145 cannot use $pkgid)
26146
26147 --dry-run
26148 Do not install anything, only print what would be
26149 installed.
26150
26151 --max-backjumps NUM
26152 Maximum number of backjumps allowed while solving
26153 (default: 4000). Use a negative number to enable unlim‐
26154 ited backtracking. Use 0 to disable backtracking com‐
26155 pletely.
26156
26157 --reorder-goals
26158 --no-reorder-goals
26159 Try to reorder goals according to certain heuristics.
26160 Slows things down on average, but may make backtracking
26161 faster for some packages.
26162
26163 --count-conflicts
26164 --no-count-conflicts
26165 Try to speed up solving by preferring goals that are
26166 involved in a lot of conflicts (default).
26167
26168 --minimize-conflict-set
26169 --no-minimize-conflict-set
26170 When there is no solution, try to improve the error mes‐
26171 sage by finding a minimal conflict set (default: false).
26172 May increase run time significantly.
26173
26174 --independent-goals
26175 --no-independent-goals
26176 Treat several goals on the command line as independent.
26177 If several goals depend on the same package, different
26178 versions can be chosen.
26179
26180 --shadow-installed-packages
26181 --no-shadow-installed-packages
26182 If multiple package instances of the same version are
26183 installed, treat all but one as shadowed.
26184
26185 --strong-flags
26186 --no-strong-flags
26187 Do not defer flag choices (this used to be the default in
26188 cabal-install <= 1.20).
26189
26190 --allow-boot-library-installs
26191 --no-allow-boot-library-installs
26192 Allow cabal to install base, ghc-prim, integer-simple,
26193 integer-gmp, and template-haskell.
26194
26195 --reject-unconstrained-dependencies none|all
26196 Require these packages to have constraints on them if
26197 they are to be selected (default: none).
26198
26199 --reinstall
26200 --no-reinstall
26201 Install even if it means installing the same version
26202 again.
26203
26204 --avoid-reinstalls
26205 --no-avoid-reinstalls
26206 Do not select versions that would destructively overwrite
26207 installed packages.
26208
26209 --force-reinstalls
26210 --no-force-reinstalls
26211 Reinstall packages even if they will most likely break
26212 other installed packages.
26213
26214 --upgrade-dependencies
26215 --no-upgrade-dependencies
26216 Pick the latest version for all dependencies, rather than
26217 trying to pick an installed version.
26218
26219 --only-dependencies
26220 --no-only-dependencies
26221 Install only the dependencies necessary to build the
26222 given packages
26223
26224 --dependencies-only
26225 --no-dependencies-only
26226 A synonym for --only-dependencies
26227
26228 --index-state STATE
26229 Use source package index state as it existed at a previ‐
26230 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
26231 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
26232 'HEAD' (default: 'HEAD').
26233
26234 --root-cmd COMMAND
26235 (No longer supported, do not use.)
26236
26237 --symlink-bindir DIR
26238 Add symlinks to installed executables into this direc‐
26239 tory.
26240
26241 --build-summary TEMPLATE
26242 Save build summaries to file (name template can use
26243 $pkgid, $compiler, $os, $arch)
26244
26245 --build-log TEMPLATE
26246 Log all builds to file (name template can use $pkgid,
26247 $compiler, $os, $arch)
26248
26249 --remote-build-reporting LEVEL
26250 Generate build reports to send to a remote server (none,
26251 anonymous or detailed).
26252
26253 --report-planning-failure
26254 Generate build reports when the dependency solver fails.
26255 This is used by the Hackage build bot.
26256
26257 --enable-per-component
26258 --disable-per-component
26259 Per-component builds when possible
26260
26261 --one-shot
26262 --no-one-shot
26263 Do not record the packages in the world file.
26264
26265 --run-tests
26266 Run package test suites during installation.
26267
26268 -j, --jobs [NUM]
26269 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
26270 given).
26271
26272 --keep-going
26273 After a build failure, continue to build other unaffected
26274 packages.
26275
26276 --offline
26277 --no-offline
26278 Don't download packages from the Internet.
26279
26280 --project-file FILE
26281 Set the name of the cabal.project file to search for in
26282 parent directories
26283
26284 --only
26285 Only installs the package in the current directory.
26286
26287 --haddock-hoogle
26288 Generate a hoogle database
26289
26290 --haddock-html
26291 Generate HTML documentation (the default)
26292
26293 --haddock-html-location URL
26294 Location of HTML documentation for pre-requisite packages
26295
26296 --haddock-for-hackage
26297 Collection of flags to generate documentation suitable
26298 for upload to hackage
26299
26300 --haddock-executables
26301 Run haddock for Executables targets
26302
26303 --haddock-tests
26304 Run haddock for Test Suite targets
26305
26306 --haddock-benchmarks
26307 Run haddock for Benchmark targets
26308
26309 --haddock-all
26310 Run haddock for all targets
26311
26312 --haddock-internal
26313 Run haddock for internal modules and include all symbols
26314
26315 --haddock-css PATH
26316 Use PATH as the haddock stylesheet
26317
26318 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
26319 dock-hyperlinked-source
26320 Hyperlink the documentation to the source code
26321
26322 --haddock-quickjump
26323 Generate an index for interactive documentation naviga‐
26324 tion
26325
26326 --haddock-hscolour-css PATH
26327 Use PATH as the HsColour stylesheet
26328
26329 --haddock-contents-location URL
26330 Bake URL in as the location for the contents page
26331
26332 --test-log TEMPLATE
26333 Log all test suite results to file (name template can use
26334 $pkgid, $compiler, $os, $arch, $test-suite, $result)
26335
26336 --test-machine-log TEMPLATE
26337 Produce a machine-readable log file (name template can
26338 use $pkgid, $compiler, $os, $arch, $result)
26339
26340 --test-show-details FILTER
26341
26342 --test-keep-tix-files
26343 keep .tix files for HPC between test runs
26344
26345 --test-wrapper FILE
26346 Run test through a wrapper.
26347
26348 --test-fail-when-no-test-suites
26349 Exit with failure when no test suites are found.
26350
26351 --test-options TEMPLATES
26352 give extra options to test executables (name templates
26353 can use $pkgid, $compiler, $os, $arch, $test-suite)
26354
26355 --test-option TEMPLATE
26356 give extra option to test executables (no need to quote
26357 options containing spaces, name template can use $pkgid,
26358 $compiler, $os, $arch, $test-suite)
26359
26360
26361 cabal clean
26362
26363 Usage: cabal new-clean [FLAGS]
26364
26365
26366 Removes all temporary files created during the building process (.hi,
26367 .o, preprocessed sources, etc.) and also empties out the local caches
26368 (by default).
26369
26370
26371
26372 Removes all temporary files created during the building process (.hi,
26373 .o, preprocessed sources, etc.) and also empties out the local caches
26374 (by default).
26375
26376
26377
26378 Flags:
26379 -v, --verbose [n]
26380 Control verbosity (n is 0--3, default verbosity level is
26381 1)
26382
26383 --builddir, --distdir, --distpref DIR
26384 The directory where Cabal puts generated build files
26385 (default dist)
26386
26387 --project-file FILE
26388 Set the name of the cabal.project file to search for in
26389 parent directories
26390
26391 -s, --save-config
26392 Save configuration, only remove build artifacts
26393
26394
26395 cabal new-clean
26396
26397 Usage: cabal new-clean [FLAGS]
26398
26399
26400 Removes all temporary files created during the building process (.hi,
26401 .o, preprocessed sources, etc.) and also empties out the local caches
26402 (by default).
26403
26404
26405
26406 Removes all temporary files created during the building process (.hi,
26407 .o, preprocessed sources, etc.) and also empties out the local caches
26408 (by default).
26409
26410
26411
26412 Flags:
26413 -v, --verbose [n]
26414 Control verbosity (n is 0--3, default verbosity level is
26415 1)
26416
26417 --builddir, --distdir, --distpref DIR
26418 The directory where Cabal puts generated build files
26419 (default dist)
26420
26421 --project-file FILE
26422 Set the name of the cabal.project file to search for in
26423 parent directories
26424
26425 -s, --save-config
26426 Save configuration, only remove build artifacts
26427
26428
26429 cabal v2-clean
26430
26431 Usage: cabal new-clean [FLAGS]
26432
26433
26434 Removes all temporary files created during the building process (.hi,
26435 .o, preprocessed sources, etc.) and also empties out the local caches
26436 (by default).
26437
26438
26439
26440 Flags:
26441 -v, --verbose [n]
26442 Control verbosity (n is 0--3, default verbosity level is
26443 1)
26444
26445 --builddir, --distdir, --distpref DIR
26446 The directory where Cabal puts generated build files
26447 (default dist)
26448
26449 --project-file FILE
26450 Set the name of the cabal.project file to search for in
26451 parent directories
26452
26453 -s, --save-config
26454 Save configuration, only remove build artifacts
26455
26456
26457 cabal sdist
26458
26459 Usage: cabal sdist [FLAGS] [PACKAGES]
26460
26461
26462 Generates tarballs of project packages suitable for upload to Hackage.
26463
26464
26465 Generates tarballs of project packages suitable for upload to Hackage.
26466
26467
26468 Flags:
26469 -v, --verbose [n]
26470 Control verbosity (n is 0--3, default verbosity level is
26471 1)
26472
26473 --builddir, --distdir, --distpref DIR
26474 The directory where Cabal puts generated build files
26475 (default dist)
26476
26477 --project-file FILE
26478 Set the name of the cabal.project file to search for in
26479 parent directories
26480
26481 -l, --list-only
26482 Just list the sources, do not make a tarball
26483
26484 -z, --null-sep
26485 Separate the source files with NUL bytes rather than new‐
26486 lines.
26487
26488 -o, --output-dir, --outputdir PATH
26489 Choose the output directory of this command. '-' sends
26490 all output to stdout
26491
26492
26493 cabal new-sdist
26494
26495 Usage: cabal new-sdist [FLAGS] [PACKAGES]
26496
26497
26498 Generates tarballs of project packages suitable for upload to Hackage.
26499
26500
26501 Generates tarballs of project packages suitable for upload to Hackage.
26502
26503
26504 Flags:
26505 -v, --verbose [n]
26506 Control verbosity (n is 0--3, default verbosity level is
26507 1)
26508
26509 --builddir, --distdir, --distpref DIR
26510 The directory where Cabal puts generated build files
26511 (default dist)
26512
26513 --project-file FILE
26514 Set the name of the cabal.project file to search for in
26515 parent directories
26516
26517 -l, --list-only
26518 Just list the sources, do not make a tarball
26519
26520 -z, --null-sep
26521 Separate the source files with NUL bytes rather than new‐
26522 lines.
26523
26524 -o, --output-dir, --outputdir PATH
26525 Choose the output directory of this command. '-' sends
26526 all output to stdout
26527
26528
26529 cabal v2-sdist
26530
26531 Usage: cabal v2-sdist [FLAGS] [PACKAGES]
26532
26533
26534 Generates tarballs of project packages suitable for upload to Hackage.
26535
26536
26537 Flags:
26538 -v, --verbose [n]
26539 Control verbosity (n is 0--3, default verbosity level is
26540 1)
26541
26542 --builddir, --distdir, --distpref DIR
26543 The directory where Cabal puts generated build files
26544 (default dist)
26545
26546 --project-file FILE
26547 Set the name of the cabal.project file to search for in
26548 parent directories
26549
26550 -l, --list-only
26551 Just list the sources, do not make a tarball
26552
26553 -z, --null-sep
26554 Separate the source files with NUL bytes rather than new‐
26555 lines.
26556
26557 -o, --output-dir, --outputdir PATH
26558 Choose the output directory of this command. '-' sends
26559 all output to stdout
26560
26561
26562 cabal v1-configure
26563
26564 Usage: cabal v1-configure [FLAGS]
26565
26566
26567 Configure how the package is built by setting package (and other)
26568 flags.
26569
26570 The configuration affects several other commands, including v1-build,
26571 v1-test, v1-bench, v1-run, v1-repl.
26572
26573
26574 The flags --with-PROG and --PROG-option(s) can be used with the follow‐
26575 ing programs:
26576 alex ar c2hs cpphs doctest gcc ghc ghc-pkg ghcjs ghcjs-pkg greencard
26577 haddock
26578 happy haskell-suite haskell-suite-pkg hmake hpc hsc2hs hscolour jhc
26579 ld
26580 pkg-config runghc strip tar uhc
26581
26582 Examples:
26583 cabal v1-configure
26584 Configure with defaults;
26585 cabal v1-configure --enable-tests -fcustomflag
26586 Configure building package including tests,
26587 with some package-specific flag.
26588
26589 The v1-configure command is a part of the legacy v1 style of cabal
26590 usage.
26591
26592 It is a legacy feature and will be removed in a future release of
26593 cabal-install. Please file a bug if you cannot replicate a working v1-
26594 use case with the new-style commands.
26595
26596 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
26597
26598
26599 Flags:
26600 -v, --verbose [n]
26601 Control verbosity (n is 0--3, default verbosity level is
26602 1)
26603
26604 --builddir, --distdir, --distpref DIR
26605 The directory where Cabal puts generated build files
26606 (default dist)
26607
26608 -g, --ghc
26609 compile with GHC
26610
26611 --ghcjs
26612 compile with GHCJS
26613
26614 --uhc
26615 compile with UHC
26616
26617 --haskell-suite
26618 compile with a haskell-suite compiler
26619
26620 --cabal-file PATH
26621 use this Cabal file
26622
26623 -w, --with-compiler PATH
26624 give the path to a particular compiler
26625
26626 --with-hc-pkg PATH
26627 give the path to the package tool
26628
26629 --prefix DIR
26630 bake this prefix in preparation of installation
26631
26632 --bindir DIR
26633 installation directory for executables
26634
26635 --libdir DIR
26636 installation directory for libraries
26637
26638 --libsubdir DIR
26639 subdirectory of libdir in which libs are installed
26640
26641 --dynlibdir DIR
26642 installation directory for dynamic libraries
26643
26644 --libexecdir DIR
26645 installation directory for program executables
26646
26647 --libexecsubdir DIR
26648 subdirectory of libexecdir in which private executables
26649 are installed
26650
26651 --datadir DIR
26652 installation directory for read-only data
26653
26654 --datasubdir DIR
26655 subdirectory of datadir in which data files are installed
26656
26657 --docdir DIR
26658 installation directory for documentation
26659
26660 --htmldir DIR
26661 installation directory for HTML documentation
26662
26663 --haddockdir DIR
26664 installation directory for haddock interfaces
26665
26666 --sysconfdir DIR
26667 installation directory for configuration files
26668
26669 --program-prefix PREFIX
26670 prefix to be applied to installed executables
26671
26672 --program-suffix SUFFIX
26673 suffix to be applied to installed executables
26674
26675 --enable-library-vanilla
26676 --disable-library-vanilla
26677 Vanilla libraries
26678
26679 -p, --enable-library-profiling
26680 --disable-library-profiling
26681 Library profiling
26682
26683 --enable-shared
26684 --disable-shared
26685 Shared library
26686
26687 --enable-static
26688 --disable-static
26689 Static library
26690
26691 --enable-executable-dynamic
26692 --disable-executable-dynamic
26693 Executable dynamic linking
26694
26695 --enable-executable-static
26696 --disable-executable-static
26697 Executable fully static linking
26698
26699 --enable-profiling
26700 --disable-profiling
26701 Executable and library profiling
26702
26703 --enable-executable-profiling
26704 --disable-executable-profiling
26705 Executable profiling (DEPRECATED)
26706
26707 --profiling-detail level
26708 Profiling detail level for executable and library
26709 (default, none, exported-functions, toplevel-functions,
26710 all-functions).
26711
26712 --library-profiling-detail level
26713 Profiling detail level for libraries only.
26714
26715 -O, --enable-optimization, --enable-optimisation [n]
26716 Build with optimization (n is 0--2, default is 1)
26717
26718 --disable-optimization, --disable-optimisation
26719 Build without optimization
26720
26721 --enable-debug-info [n]
26722 Emit debug info (n is 0--3, default is 0)
26723
26724 --disable-debug-info
26725 Don't emit debug info
26726
26727 --enable-library-for-ghci
26728 --disable-library-for-ghci
26729 compile library for use with GHCi
26730
26731 --enable-split-sections
26732 --disable-split-sections
26733 compile library code such that unneeded definitions can
26734 be dropped from the final executable (GHC 7.8+)
26735
26736 --enable-split-objs
26737 --disable-split-objs
26738 split library into smaller objects to reduce binary sizes
26739 (GHC 6.6+)
26740
26741 --enable-executable-stripping
26742 --disable-executable-stripping
26743 strip executables upon installation to reduce binary
26744 sizes
26745
26746 --enable-library-stripping
26747 --disable-library-stripping
26748 strip libraries upon installation to reduce binary sizes
26749
26750 --configure-option OPT
26751 Extra option for configure
26752
26753 --user
26754 --global
26755 doing a per-user installation
26756
26757 --package-db DB
26758 Append the given package database to the list of package
26759 databases used (to satisfy dependencies and register
26760 into). May be a specific file, 'global' or 'user'. The
26761 initial list is ['global'], ['global', 'user'], or
26762 ['global', $sandbox], depending on context. Use 'clear'
26763 to reset the list to empty. See the user guide for
26764 details.
26765
26766 -f, --flags FLAGS
26767 Force values for the given flags in Cabal conditionals in
26768 the .cabal file. E.g., --flags="debug -usebytestrings"
26769 forces the flag "debug" to true and "usebytestrings" to
26770 false.
26771
26772 --extra-include-dirs PATH
26773 A list of directories to search for header files
26774
26775 --enable-deterministic
26776 --disable-deterministic
26777 Try to be as deterministic as possible (used by the test
26778 suite)
26779
26780 --ipid IPID
26781 Installed package ID to compile this package as
26782
26783 --cid CID
26784 Installed component ID to compile this component as
26785
26786 --extra-lib-dirs PATH
26787 A list of directories to search for external libraries
26788
26789 --extra-framework-dirs PATH
26790 A list of directories to search for external frameworks
26791 (OS X only)
26792
26793 --extra-prog-path PATH
26794 A list of directories to search for required programs (in
26795 addition to the normal search locations)
26796
26797 --instantiate-with NAME=MOD
26798 A mapping of signature names to concrete module instanti‐
26799 ations.
26800
26801 --enable-tests
26802 --disable-tests
26803 dependency checking and compilation for test suites
26804 listed in the package description file.
26805
26806 --enable-coverage
26807 --disable-coverage
26808 build package with Haskell Program Coverage. (GHC only)
26809
26810 --enable-library-coverage
26811 --disable-library-coverage
26812 build package with Haskell Program Coverage. (GHC only)
26813 (DEPRECATED)
26814
26815 --enable-benchmarks
26816 --disable-benchmarks
26817 dependency checking and compilation for benchmarks listed
26818 in the package description file.
26819
26820 --enable-relocatable
26821 --disable-relocatable
26822 building a package that is relocatable. (GHC only)
26823
26824 --disable-response-files
26825 enable workaround for old versions of programs like "ar"
26826 that do not support @file arguments
26827
26828 --allow-depending-on-private-libs
26829 Allow depending on private libraries. If set, the library
26830 visibility check MUST be done externally.
26831
26832 --with-alex PATH
26833 give the path to alex
26834
26835 --with-ar PATH
26836 give the path to ar
26837
26838 --with-c2hs PATH
26839 give the path to c2hs
26840
26841 --with-cpphs PATH
26842 give the path to cpphs
26843
26844 --with-doctest PATH
26845 give the path to doctest
26846
26847 --with-gcc PATH
26848 give the path to gcc
26849
26850 --with-ghc PATH
26851 give the path to ghc
26852
26853 --with-ghc-pkg PATH
26854 give the path to ghc-pkg
26855
26856 --with-ghcjs PATH
26857 give the path to ghcjs
26858
26859 --with-ghcjs-pkg PATH
26860 give the path to ghcjs-pkg
26861
26862 --with-greencard PATH
26863 give the path to greencard
26864
26865 --with-haddock PATH
26866 give the path to haddock
26867
26868 --with-happy PATH
26869 give the path to happy
26870
26871 --with-haskell-suite PATH
26872 give the path to haskell-suite
26873
26874 --with-haskell-suite-pkg PATH
26875 give the path to haskell-suite-pkg
26876
26877 --with-hmake PATH
26878 give the path to hmake
26879
26880 --with-hpc PATH
26881 give the path to hpc
26882
26883 --with-hsc2hs PATH
26884 give the path to hsc2hs
26885
26886 --with-hscolour PATH
26887 give the path to hscolour
26888
26889 --with-jhc PATH
26890 give the path to jhc
26891
26892 --with-ld PATH
26893 give the path to ld
26894
26895 --with-pkg-config PATH
26896 give the path to pkg-config
26897
26898 --with-runghc PATH
26899 give the path to runghc
26900
26901 --with-strip PATH
26902 give the path to strip
26903
26904 --with-tar PATH
26905 give the path to tar
26906
26907 --with-uhc PATH
26908 give the path to uhc
26909
26910 --alex-option OPT
26911 give an extra option to alex (no need to quote options
26912 containing spaces)
26913
26914 --ar-option OPT
26915 give an extra option to ar (no need to quote options con‐
26916 taining spaces)
26917
26918 --c2hs-option OPT
26919 give an extra option to c2hs (no need to quote options
26920 containing spaces)
26921
26922 --cpphs-option OPT
26923 give an extra option to cpphs (no need to quote options
26924 containing spaces)
26925
26926 --doctest-option OPT
26927 give an extra option to doctest (no need to quote options
26928 containing spaces)
26929
26930 --gcc-option OPT
26931 give an extra option to gcc (no need to quote options
26932 containing spaces)
26933
26934 --ghc-option OPT
26935 give an extra option to ghc (no need to quote options
26936 containing spaces)
26937
26938 --ghc-pkg-option OPT
26939 give an extra option to ghc-pkg (no need to quote options
26940 containing spaces)
26941
26942 --ghcjs-option OPT
26943 give an extra option to ghcjs (no need to quote options
26944 containing spaces)
26945
26946 --ghcjs-pkg-option OPT
26947 give an extra option to ghcjs-pkg (no need to quote
26948 options containing spaces)
26949
26950 --greencard-option OPT
26951 give an extra option to greencard (no need to quote
26952 options containing spaces)
26953
26954 --haddock-option OPT
26955 give an extra option to haddock (no need to quote options
26956 containing spaces)
26957
26958 --happy-option OPT
26959 give an extra option to happy (no need to quote options
26960 containing spaces)
26961
26962 --haskell-suite-option OPT
26963 give an extra option to haskell-suite (no need to quote
26964 options containing spaces)
26965
26966 --haskell-suite-pkg-option OPT
26967 give an extra option to haskell-suite-pkg (no need to
26968 quote options containing spaces)
26969
26970 --hmake-option OPT
26971 give an extra option to hmake (no need to quote options
26972 containing spaces)
26973
26974 --hpc-option OPT
26975 give an extra option to hpc (no need to quote options
26976 containing spaces)
26977
26978 --hsc2hs-option OPT
26979 give an extra option to hsc2hs (no need to quote options
26980 containing spaces)
26981
26982 --hscolour-option OPT
26983 give an extra option to hscolour (no need to quote
26984 options containing spaces)
26985
26986 --jhc-option OPT
26987 give an extra option to jhc (no need to quote options
26988 containing spaces)
26989
26990 --ld-option OPT
26991 give an extra option to ld (no need to quote options con‐
26992 taining spaces)
26993
26994 --pkg-config-option OPT
26995 give an extra option to pkg-config (no need to quote
26996 options containing spaces)
26997
26998 --runghc-option OPT
26999 give an extra option to runghc (no need to quote options
27000 containing spaces)
27001
27002 --strip-option OPT
27003 give an extra option to strip (no need to quote options
27004 containing spaces)
27005
27006 --tar-option OPT
27007 give an extra option to tar (no need to quote options
27008 containing spaces)
27009
27010 --uhc-option OPT
27011 give an extra option to uhc (no need to quote options
27012 containing spaces)
27013
27014 --alex-options OPTS
27015 give extra options to alex
27016
27017 --ar-options OPTS
27018 give extra options to ar
27019
27020 --c2hs-options OPTS
27021 give extra options to c2hs
27022
27023 --cpphs-options OPTS
27024 give extra options to cpphs
27025
27026 --doctest-options OPTS
27027 give extra options to doctest
27028
27029 --gcc-options OPTS
27030 give extra options to gcc
27031
27032 --ghc-options OPTS
27033 give extra options to ghc
27034
27035 --ghc-pkg-options OPTS
27036 give extra options to ghc-pkg
27037
27038 --ghcjs-options OPTS
27039 give extra options to ghcjs
27040
27041 --ghcjs-pkg-options OPTS
27042 give extra options to ghcjs-pkg
27043
27044 --greencard-options OPTS
27045 give extra options to greencard
27046
27047 --haddock-options OPTS
27048 give extra options to haddock
27049
27050 --happy-options OPTS
27051 give extra options to happy
27052
27053 --haskell-suite-options OPTS
27054 give extra options to haskell-suite
27055
27056 --haskell-suite-pkg-options OPTS
27057 give extra options to haskell-suite-pkg
27058
27059 --hmake-options OPTS
27060 give extra options to hmake
27061
27062 --hpc-options OPTS
27063 give extra options to hpc
27064
27065 --hsc2hs-options OPTS
27066 give extra options to hsc2hs
27067
27068 --hscolour-options OPTS
27069 give extra options to hscolour
27070
27071 --jhc-options OPTS
27072 give extra options to jhc
27073
27074 --ld-options OPTS
27075 give extra options to ld
27076
27077 --pkg-config-options OPTS
27078 give extra options to pkg-config
27079
27080 --runghc-options OPTS
27081 give extra options to runghc
27082
27083 --strip-options OPTS
27084 give extra options to strip
27085
27086 --tar-options OPTS
27087 give extra options to tar
27088
27089 --uhc-options OPTS
27090 give extra options to uhc
27091
27092 --cabal-lib-version VERSION
27093 Select which version of the Cabal lib to use to build
27094 packages (useful for testing).
27095
27096 --constraint CONSTRAINT
27097 Specify constraints on a package (version,
27098 installed/source, flags)
27099
27100 --preference CONSTRAINT
27101 Specify preferences (soft constraints) on the version of
27102 a package
27103
27104 --solver SOLVER
27105 Select dependency solver to use (default: modular).
27106 Choices: modular.
27107
27108 --allow-older [DEPS]
27109 Ignore lower bounds in all dependencies or DEPS
27110
27111 --allow-newer [DEPS]
27112 Ignore upper bounds in all dependencies or DEPS
27113
27114 --write-ghc-environment-files always|never|ghc8.4.4+
27115 Whether to create a .ghc.environment file after a suc‐
27116 cessful build (v2-build only)
27117
27118
27119 cabal v1-update
27120
27121 Usage: cabal v1-update [FLAGS]
27122
27123
27124 For all known remote repositories, download the package list.
27125
27126
27127 Relevant global configuration keys:
27128 remote-repo
27129 remote-repo-cache
27130 local-repo
27131
27132 The v1-update command is a part of the legacy v1 style of cabal usage.
27133
27134 It is a legacy feature and will be removed in a future release of
27135 cabal-install. Please file a bug if you cannot replicate a working v1-
27136 use case with the new-style commands.
27137
27138 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
27139
27140
27141 Flags:
27142 -v, --verbose [n]
27143 Control verbosity (n is 0--3, default verbosity level is
27144 1)
27145
27146 --index-state STATE
27147 Update the source package index to its state as it
27148 existed at a previous time. Accepts unix-timestamps (e.g.
27149 '@1474732068'), ISO8601 UTC timestamps (e.g.
27150 '2016-09-24T17:47:48Z'), or 'HEAD' (default: 'HEAD').
27151
27152
27153 cabal v1-build
27154
27155 Usage: cabal v1-build [FLAGS]
27156 or: cabal v1-build COMPONENTS [FLAGS]
27157
27158
27159 Components encompass executables, tests, and benchmarks.
27160
27161 Affected by configuration options, see `v1-configure`.
27162
27163
27164 Examples:
27165 cabal v1-build All the components in the package
27166 cabal v1-build foo A component (i.e. lib, exe, test suite)
27167
27168 The flags --with-PROG and --PROG-option(s) can be used with the follow‐
27169 ing programs:
27170 alex ar c2hs cpphs doctest gcc ghc ghc-pkg ghcjs ghcjs-pkg greencard
27171 haddock
27172 happy haskell-suite haskell-suite-pkg hmake hpc hsc2hs hscolour jhc
27173 ld
27174 pkg-config runghc strip tar uhc
27175
27176 The v1-build command is a part of the legacy v1 style of cabal usage.
27177
27178 It is a legacy feature and will be removed in a future release of
27179 cabal-install. Please file a bug if you cannot replicate a working v1-
27180 use case with the new-style commands.
27181
27182 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
27183
27184
27185 Flags:
27186 -v, --verbose [n]
27187 Control verbosity (n is 0--3, default verbosity level is
27188 1)
27189
27190 --builddir, --distdir, --distpref DIR
27191 The directory where Cabal puts generated build files
27192 (default dist)
27193
27194 -j, --jobs [NUM]
27195 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
27196 given).
27197
27198 --with-alex PATH
27199 give the path to alex
27200
27201 --with-ar PATH
27202 give the path to ar
27203
27204 --with-c2hs PATH
27205 give the path to c2hs
27206
27207 --with-cpphs PATH
27208 give the path to cpphs
27209
27210 --with-doctest PATH
27211 give the path to doctest
27212
27213 --with-gcc PATH
27214 give the path to gcc
27215
27216 --with-ghc PATH
27217 give the path to ghc
27218
27219 --with-ghc-pkg PATH
27220 give the path to ghc-pkg
27221
27222 --with-ghcjs PATH
27223 give the path to ghcjs
27224
27225 --with-ghcjs-pkg PATH
27226 give the path to ghcjs-pkg
27227
27228 --with-greencard PATH
27229 give the path to greencard
27230
27231 --with-haddock PATH
27232 give the path to haddock
27233
27234 --with-happy PATH
27235 give the path to happy
27236
27237 --with-haskell-suite PATH
27238 give the path to haskell-suite
27239
27240 --with-haskell-suite-pkg PATH
27241 give the path to haskell-suite-pkg
27242
27243 --with-hmake PATH
27244 give the path to hmake
27245
27246 --with-hpc PATH
27247 give the path to hpc
27248
27249 --with-hsc2hs PATH
27250 give the path to hsc2hs
27251
27252 --with-hscolour PATH
27253 give the path to hscolour
27254
27255 --with-jhc PATH
27256 give the path to jhc
27257
27258 --with-ld PATH
27259 give the path to ld
27260
27261 --with-pkg-config PATH
27262 give the path to pkg-config
27263
27264 --with-runghc PATH
27265 give the path to runghc
27266
27267 --with-strip PATH
27268 give the path to strip
27269
27270 --with-tar PATH
27271 give the path to tar
27272
27273 --with-uhc PATH
27274 give the path to uhc
27275
27276 --alex-option OPT
27277 give an extra option to alex (no need to quote options
27278 containing spaces)
27279
27280 --ar-option OPT
27281 give an extra option to ar (no need to quote options con‐
27282 taining spaces)
27283
27284 --c2hs-option OPT
27285 give an extra option to c2hs (no need to quote options
27286 containing spaces)
27287
27288 --cpphs-option OPT
27289 give an extra option to cpphs (no need to quote options
27290 containing spaces)
27291
27292 --doctest-option OPT
27293 give an extra option to doctest (no need to quote options
27294 containing spaces)
27295
27296 --gcc-option OPT
27297 give an extra option to gcc (no need to quote options
27298 containing spaces)
27299
27300 --ghc-option OPT
27301 give an extra option to ghc (no need to quote options
27302 containing spaces)
27303
27304 --ghc-pkg-option OPT
27305 give an extra option to ghc-pkg (no need to quote options
27306 containing spaces)
27307
27308 --ghcjs-option OPT
27309 give an extra option to ghcjs (no need to quote options
27310 containing spaces)
27311
27312 --ghcjs-pkg-option OPT
27313 give an extra option to ghcjs-pkg (no need to quote
27314 options containing spaces)
27315
27316 --greencard-option OPT
27317 give an extra option to greencard (no need to quote
27318 options containing spaces)
27319
27320 --haddock-option OPT
27321 give an extra option to haddock (no need to quote options
27322 containing spaces)
27323
27324 --happy-option OPT
27325 give an extra option to happy (no need to quote options
27326 containing spaces)
27327
27328 --haskell-suite-option OPT
27329 give an extra option to haskell-suite (no need to quote
27330 options containing spaces)
27331
27332 --haskell-suite-pkg-option OPT
27333 give an extra option to haskell-suite-pkg (no need to
27334 quote options containing spaces)
27335
27336 --hmake-option OPT
27337 give an extra option to hmake (no need to quote options
27338 containing spaces)
27339
27340 --hpc-option OPT
27341 give an extra option to hpc (no need to quote options
27342 containing spaces)
27343
27344 --hsc2hs-option OPT
27345 give an extra option to hsc2hs (no need to quote options
27346 containing spaces)
27347
27348 --hscolour-option OPT
27349 give an extra option to hscolour (no need to quote
27350 options containing spaces)
27351
27352 --jhc-option OPT
27353 give an extra option to jhc (no need to quote options
27354 containing spaces)
27355
27356 --ld-option OPT
27357 give an extra option to ld (no need to quote options con‐
27358 taining spaces)
27359
27360 --pkg-config-option OPT
27361 give an extra option to pkg-config (no need to quote
27362 options containing spaces)
27363
27364 --runghc-option OPT
27365 give an extra option to runghc (no need to quote options
27366 containing spaces)
27367
27368 --strip-option OPT
27369 give an extra option to strip (no need to quote options
27370 containing spaces)
27371
27372 --tar-option OPT
27373 give an extra option to tar (no need to quote options
27374 containing spaces)
27375
27376 --uhc-option OPT
27377 give an extra option to uhc (no need to quote options
27378 containing spaces)
27379
27380 --alex-options OPTS
27381 give extra options to alex
27382
27383 --ar-options OPTS
27384 give extra options to ar
27385
27386 --c2hs-options OPTS
27387 give extra options to c2hs
27388
27389 --cpphs-options OPTS
27390 give extra options to cpphs
27391
27392 --doctest-options OPTS
27393 give extra options to doctest
27394
27395 --gcc-options OPTS
27396 give extra options to gcc
27397
27398 --ghc-options OPTS
27399 give extra options to ghc
27400
27401 --ghc-pkg-options OPTS
27402 give extra options to ghc-pkg
27403
27404 --ghcjs-options OPTS
27405 give extra options to ghcjs
27406
27407 --ghcjs-pkg-options OPTS
27408 give extra options to ghcjs-pkg
27409
27410 --greencard-options OPTS
27411 give extra options to greencard
27412
27413 --haddock-options OPTS
27414 give extra options to haddock
27415
27416 --happy-options OPTS
27417 give extra options to happy
27418
27419 --haskell-suite-options OPTS
27420 give extra options to haskell-suite
27421
27422 --haskell-suite-pkg-options OPTS
27423 give extra options to haskell-suite-pkg
27424
27425 --hmake-options OPTS
27426 give extra options to hmake
27427
27428 --hpc-options OPTS
27429 give extra options to hpc
27430
27431 --hsc2hs-options OPTS
27432 give extra options to hsc2hs
27433
27434 --hscolour-options OPTS
27435 give extra options to hscolour
27436
27437 --jhc-options OPTS
27438 give extra options to jhc
27439
27440 --ld-options OPTS
27441 give extra options to ld
27442
27443 --pkg-config-options OPTS
27444 give extra options to pkg-config
27445
27446 --runghc-options OPTS
27447 give extra options to runghc
27448
27449 --strip-options OPTS
27450 give extra options to strip
27451
27452 --tar-options OPTS
27453 give extra options to tar
27454
27455 --uhc-options OPTS
27456 give extra options to uhc
27457
27458 --only
27459 Don't reinstall add-source dependencies (sandbox-only)
27460
27461
27462 cabal v1-repl
27463
27464 Usage: cabal v1-repl [COMPONENT] [FLAGS]
27465
27466
27467 If the current directory contains no package, ignores COMPONENT parame‐
27468 ters and opens an interactive interpreter session; if a sandbox is
27469 present, its package database will be used.
27470
27471 Otherwise, (re)configures with the given or default flags, and loads
27472 the interpreter with the relevant modules. For executables, tests and
27473 benchmarks, loads the main module (and its dependencies); for libraries
27474 all exposed/other modules.
27475
27476 The default component is the library itself, or the executable if that
27477 is the only component.
27478
27479 Support for loading specific modules is planned but not implemented
27480 yet. For certain scenarios, `cabal v1-exec -- ghci :l Foo` may be used
27481 instead. Note that `v1-exec` will not (re)configure and you will have
27482 to specify the location of other modules, if required.
27483
27484
27485 Examples:
27486 cabal v1-repl The first component in the package
27487 cabal v1-repl foo A named component (i.e. lib, exe, test
27488 suite)
27489 cabal v1-repl --ghc-options="-lstdc++" Specifying flags for inter‐
27490 preter
27491
27492 The v1-repl command is a part of the legacy v1 style of cabal usage.
27493
27494 It is a legacy feature and will be removed in a future release of
27495 cabal-install. Please file a bug if you cannot replicate a working v1-
27496 use case with the new-style commands.
27497
27498 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
27499
27500
27501 Flags:
27502 -v, --verbose [n]
27503 Control verbosity (n is 0--3, default verbosity level is
27504 1)
27505
27506 --builddir, --distdir, --distpref DIR
27507 The directory where Cabal puts generated build files
27508 (default dist)
27509
27510 --with-alex PATH
27511 give the path to alex
27512
27513 --with-ar PATH
27514 give the path to ar
27515
27516 --with-c2hs PATH
27517 give the path to c2hs
27518
27519 --with-cpphs PATH
27520 give the path to cpphs
27521
27522 --with-doctest PATH
27523 give the path to doctest
27524
27525 --with-gcc PATH
27526 give the path to gcc
27527
27528 --with-ghc PATH
27529 give the path to ghc
27530
27531 --with-ghc-pkg PATH
27532 give the path to ghc-pkg
27533
27534 --with-ghcjs PATH
27535 give the path to ghcjs
27536
27537 --with-ghcjs-pkg PATH
27538 give the path to ghcjs-pkg
27539
27540 --with-greencard PATH
27541 give the path to greencard
27542
27543 --with-haddock PATH
27544 give the path to haddock
27545
27546 --with-happy PATH
27547 give the path to happy
27548
27549 --with-haskell-suite PATH
27550 give the path to haskell-suite
27551
27552 --with-haskell-suite-pkg PATH
27553 give the path to haskell-suite-pkg
27554
27555 --with-hmake PATH
27556 give the path to hmake
27557
27558 --with-hpc PATH
27559 give the path to hpc
27560
27561 --with-hsc2hs PATH
27562 give the path to hsc2hs
27563
27564 --with-hscolour PATH
27565 give the path to hscolour
27566
27567 --with-jhc PATH
27568 give the path to jhc
27569
27570 --with-ld PATH
27571 give the path to ld
27572
27573 --with-pkg-config PATH
27574 give the path to pkg-config
27575
27576 --with-runghc PATH
27577 give the path to runghc
27578
27579 --with-strip PATH
27580 give the path to strip
27581
27582 --with-tar PATH
27583 give the path to tar
27584
27585 --with-uhc PATH
27586 give the path to uhc
27587
27588 --alex-option OPT
27589 give an extra option to alex (no need to quote options
27590 containing spaces)
27591
27592 --ar-option OPT
27593 give an extra option to ar (no need to quote options con‐
27594 taining spaces)
27595
27596 --c2hs-option OPT
27597 give an extra option to c2hs (no need to quote options
27598 containing spaces)
27599
27600 --cpphs-option OPT
27601 give an extra option to cpphs (no need to quote options
27602 containing spaces)
27603
27604 --doctest-option OPT
27605 give an extra option to doctest (no need to quote options
27606 containing spaces)
27607
27608 --gcc-option OPT
27609 give an extra option to gcc (no need to quote options
27610 containing spaces)
27611
27612 --ghc-option OPT
27613 give an extra option to ghc (no need to quote options
27614 containing spaces)
27615
27616 --ghc-pkg-option OPT
27617 give an extra option to ghc-pkg (no need to quote options
27618 containing spaces)
27619
27620 --ghcjs-option OPT
27621 give an extra option to ghcjs (no need to quote options
27622 containing spaces)
27623
27624 --ghcjs-pkg-option OPT
27625 give an extra option to ghcjs-pkg (no need to quote
27626 options containing spaces)
27627
27628 --greencard-option OPT
27629 give an extra option to greencard (no need to quote
27630 options containing spaces)
27631
27632 --haddock-option OPT
27633 give an extra option to haddock (no need to quote options
27634 containing spaces)
27635
27636 --happy-option OPT
27637 give an extra option to happy (no need to quote options
27638 containing spaces)
27639
27640 --haskell-suite-option OPT
27641 give an extra option to haskell-suite (no need to quote
27642 options containing spaces)
27643
27644 --haskell-suite-pkg-option OPT
27645 give an extra option to haskell-suite-pkg (no need to
27646 quote options containing spaces)
27647
27648 --hmake-option OPT
27649 give an extra option to hmake (no need to quote options
27650 containing spaces)
27651
27652 --hpc-option OPT
27653 give an extra option to hpc (no need to quote options
27654 containing spaces)
27655
27656 --hsc2hs-option OPT
27657 give an extra option to hsc2hs (no need to quote options
27658 containing spaces)
27659
27660 --hscolour-option OPT
27661 give an extra option to hscolour (no need to quote
27662 options containing spaces)
27663
27664 --jhc-option OPT
27665 give an extra option to jhc (no need to quote options
27666 containing spaces)
27667
27668 --ld-option OPT
27669 give an extra option to ld (no need to quote options con‐
27670 taining spaces)
27671
27672 --pkg-config-option OPT
27673 give an extra option to pkg-config (no need to quote
27674 options containing spaces)
27675
27676 --runghc-option OPT
27677 give an extra option to runghc (no need to quote options
27678 containing spaces)
27679
27680 --strip-option OPT
27681 give an extra option to strip (no need to quote options
27682 containing spaces)
27683
27684 --tar-option OPT
27685 give an extra option to tar (no need to quote options
27686 containing spaces)
27687
27688 --uhc-option OPT
27689 give an extra option to uhc (no need to quote options
27690 containing spaces)
27691
27692 --alex-options OPTS
27693 give extra options to alex
27694
27695 --ar-options OPTS
27696 give extra options to ar
27697
27698 --c2hs-options OPTS
27699 give extra options to c2hs
27700
27701 --cpphs-options OPTS
27702 give extra options to cpphs
27703
27704 --doctest-options OPTS
27705 give extra options to doctest
27706
27707 --gcc-options OPTS
27708 give extra options to gcc
27709
27710 --ghc-options OPTS
27711 give extra options to ghc
27712
27713 --ghc-pkg-options OPTS
27714 give extra options to ghc-pkg
27715
27716 --ghcjs-options OPTS
27717 give extra options to ghcjs
27718
27719 --ghcjs-pkg-options OPTS
27720 give extra options to ghcjs-pkg
27721
27722 --greencard-options OPTS
27723 give extra options to greencard
27724
27725 --haddock-options OPTS
27726 give extra options to haddock
27727
27728 --happy-options OPTS
27729 give extra options to happy
27730
27731 --haskell-suite-options OPTS
27732 give extra options to haskell-suite
27733
27734 --haskell-suite-pkg-options OPTS
27735 give extra options to haskell-suite-pkg
27736
27737 --hmake-options OPTS
27738 give extra options to hmake
27739
27740 --hpc-options OPTS
27741 give extra options to hpc
27742
27743 --hsc2hs-options OPTS
27744 give extra options to hsc2hs
27745
27746 --hscolour-options OPTS
27747 give extra options to hscolour
27748
27749 --jhc-options OPTS
27750 give extra options to jhc
27751
27752 --ld-options OPTS
27753 give extra options to ld
27754
27755 --pkg-config-options OPTS
27756 give extra options to pkg-config
27757
27758 --runghc-options OPTS
27759 give extra options to runghc
27760
27761 --strip-options OPTS
27762 give extra options to strip
27763
27764 --tar-options OPTS
27765 give extra options to tar
27766
27767 --uhc-options OPTS
27768 give extra options to uhc
27769
27770 --reload
27771 Used from within an interpreter to update files.
27772
27773 --repl-options FLAG
27774 use this option for the repl
27775
27776 --only
27777 Don't reinstall add-source dependencies (sandbox-only)
27778
27779
27780 cabal v1-freeze
27781
27782 Usage: cabal freeze [FLAGS]
27783
27784
27785 Calculates a valid set of dependencies and their exact versions. If
27786 successful, saves the result to the file `cabal.config`.
27787
27788 The package versions specified in `cabal.config` will be used for any
27789 future installs.
27790
27791 An existing `cabal.config` is ignored and overwritten.
27792
27793
27794 The v1-freeze command is a part of the legacy v1 style of cabal usage.
27795
27796 It is a legacy feature and will be removed in a future release of
27797 cabal-install. Please file a bug if you cannot replicate a working v1-
27798 use case with the new-style commands.
27799
27800 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
27801
27802
27803 Flags:
27804 -v, --verbose [n]
27805 Control verbosity (n is 0--3, default verbosity level is
27806 1)
27807
27808 --dry-run
27809 Do not freeze anything, only print what would be frozen
27810
27811 --enable-tests
27812 --disable-tests
27813 freezing of the dependencies of any tests suites in the
27814 package description file.
27815
27816 --enable-benchmarks
27817 --disable-benchmarks
27818 freezing of the dependencies of any benchmarks suites in
27819 the package description file.
27820
27821 --solver SOLVER
27822 Select dependency solver to use (default: modular).
27823 Choices: modular.
27824
27825 --max-backjumps NUM
27826 Maximum number of backjumps allowed while solving
27827 (default: 4000). Use a negative number to enable unlim‐
27828 ited backtracking. Use 0 to disable backtracking com‐
27829 pletely.
27830
27831 --reorder-goals
27832 --no-reorder-goals
27833 Try to reorder goals according to certain heuristics.
27834 Slows things down on average, but may make backtracking
27835 faster for some packages.
27836
27837 --count-conflicts
27838 --no-count-conflicts
27839 Try to speed up solving by preferring goals that are
27840 involved in a lot of conflicts (default).
27841
27842 --minimize-conflict-set
27843 --no-minimize-conflict-set
27844 When there is no solution, try to improve the error mes‐
27845 sage by finding a minimal conflict set (default: false).
27846 May increase run time significantly.
27847
27848 --independent-goals
27849 --no-independent-goals
27850 Treat several goals on the command line as independent.
27851 If several goals depend on the same package, different
27852 versions can be chosen.
27853
27854 --shadow-installed-packages
27855 --no-shadow-installed-packages
27856 If multiple package instances of the same version are
27857 installed, treat all but one as shadowed.
27858
27859 --strong-flags
27860 --no-strong-flags
27861 Do not defer flag choices (this used to be the default in
27862 cabal-install <= 1.20).
27863
27864 --allow-boot-library-installs
27865 --no-allow-boot-library-installs
27866 Allow cabal to install base, ghc-prim, integer-simple,
27867 integer-gmp, and template-haskell.
27868
27869 --reject-unconstrained-dependencies none|all
27870 Require these packages to have constraints on them if
27871 they are to be selected (default: none).
27872
27873
27874 cabal v1-haddock
27875
27876 Usage: cabal v1-haddock [FLAGS]
27877 or: cabal v1-haddock COMPONENTS [FLAGS]
27878
27879
27880 Requires the program haddock, version 2.x.
27881
27882
27883 The v1-haddock command is a part of the legacy v1 style of cabal usage.
27884
27885 It is a legacy feature and will be removed in a future release of
27886 cabal-install. Please file a bug if you cannot replicate a working v1-
27887 use case with the new-style commands.
27888
27889 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
27890
27891
27892 Flags:
27893 -v, --verbose [n]
27894 Control verbosity (n is 0--3, default verbosity level is
27895 1)
27896
27897 --builddir, --distdir, --distpref DIR
27898 The directory where Cabal puts generated build files
27899 (default dist)
27900
27901 --keep-temp-files
27902 Keep temporary files
27903
27904 --hoogle
27905 Generate a hoogle database
27906
27907 --html
27908 Generate HTML documentation (the default)
27909
27910 --html-location URL
27911 Location of HTML documentation for pre-requisite packages
27912
27913 --for-hackage
27914 Collection of flags to generate documentation suitable
27915 for upload to hackage
27916
27917 --executables
27918 Run haddock for Executables targets
27919
27920 --tests
27921 Run haddock for Test Suite targets
27922
27923 --benchmarks
27924 Run haddock for Benchmark targets
27925
27926 --foreign-libraries
27927 Run haddock for Foreign Library targets
27928
27929 --all
27930 Run haddock for all targets
27931
27932 --internal
27933 Run haddock for internal modules and include all symbols
27934
27935 --css PATH
27936 Use PATH as the haddock stylesheet
27937
27938 --hyperlink-source, --hyperlink-sources, --hyperlinked-source
27939 Hyperlink the documentation to the source code
27940
27941 --quickjump
27942 Generate an index for interactive documentation naviga‐
27943 tion
27944
27945 --hscolour-css PATH
27946 Use PATH as the HsColour stylesheet
27947
27948 --contents-location URL
27949 Bake URL in as the location for the contents page
27950
27951 --with-ghc PATH
27952 give the path to ghc
27953
27954 --with-haddock PATH
27955 give the path to haddock
27956
27957 --ghc-option OPT
27958 give an extra option to ghc (no need to quote options
27959 containing spaces)
27960
27961 --haddock-option OPT
27962 give an extra option to haddock (no need to quote options
27963 containing spaces)
27964
27965 --ghc-options OPTS
27966 give extra options to ghc
27967
27968 --haddock-options OPTS
27969 give extra options to haddock
27970
27971
27972 cabal v1-install
27973
27974 Usage: cabal v1-install [FLAGS]
27975 or: cabal v1-install [FLAGS] PACKAGES
27976
27977
27978 Installs one or more packages. By default, the installed package will
27979 be registered in the user's package database or, if a sandbox is
27980 present in the current directory, inside the sandbox.
27981
27982 If PACKAGES are specified, downloads and installs those packages. Oth‐
27983 erwise, install the package in the current directory (and/or its depen‐
27984 dencies) (there must be exactly one .cabal file in the current direc‐
27985 tory).
27986
27987 When using a sandbox, the flags for `v1-install` only affect the cur‐
27988 rent command and have no effect on future commands. (To achieve that,
27989 `v1-configure` must be used.) In contrast, without a sandbox, the
27990 flags to `v1-install` are saved and affect future commands such as
27991 `v1-build` and `v1-repl`. See the help for `v1-configure` for a list of
27992 commands being affected.
27993
27994 Installed executables will by default (and without a sandbox) be put
27995 into `~/.cabal/bin/`. If you want installed executable to be available
27996 globally, make sure that the PATH environment variable contains that
27997 directory. When using a sandbox, executables will be put into `$SAND‐
27998 BOX/bin/` (by default: `./.cabal-sandbox/bin/`).
27999
28000 When specifying --bindir, consider also specifying --datadir; this way
28001 the sandbox can be deleted and the executable should continue working
28002 as long as bindir and datadir are left untouched.
28003
28004
28005 The flags --with-PROG and --PROG-option(s) can be used with the follow‐
28006 ing programs:
28007 alex ar c2hs cpphs doctest gcc ghc ghc-pkg ghcjs ghcjs-pkg greencard
28008 haddock
28009 happy haskell-suite haskell-suite-pkg hmake hpc hsc2hs hscolour jhc
28010 ld
28011 pkg-config runghc strip tar uhc
28012
28013 Examples:
28014 cabal v1-install Package in the current directory
28015 cabal v1-install foo Package from the hackage server
28016 cabal v1-install foo-1.0 Specific version of a package
28017 cabal v1-install 'foo < 2' Constrained package version
28018 cabal v1-install haddock --bindir=$HOME/hask-bin/
28019 --datadir=$HOME/hask-data/
28020 Change installation destination
28021
28022 The v1-install command is a part of the legacy v1 style of cabal usage.
28023
28024 It is a legacy feature and will be removed in a future release of
28025 cabal-install. Please file a bug if you cannot replicate a working v1-
28026 use case with the new-style commands.
28027
28028 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
28029
28030
28031 Flags:
28032 -v, --verbose [n]
28033 Control verbosity (n is 0--3, default verbosity level is
28034 1)
28035
28036 --builddir, --distdir, --distpref DIR
28037 The directory where Cabal puts generated build files
28038 (default dist)
28039
28040 -g, --ghc
28041 compile with GHC
28042
28043 --ghcjs
28044 compile with GHCJS
28045
28046 --uhc
28047 compile with UHC
28048
28049 --haskell-suite
28050 compile with a haskell-suite compiler
28051
28052 --cabal-file PATH
28053 use this Cabal file
28054
28055 -w, --with-compiler PATH
28056 give the path to a particular compiler
28057
28058 --with-hc-pkg PATH
28059 give the path to the package tool
28060
28061 --prefix DIR
28062 bake this prefix in preparation of installation
28063
28064 --bindir DIR
28065 installation directory for executables
28066
28067 --libdir DIR
28068 installation directory for libraries
28069
28070 --libsubdir DIR
28071 subdirectory of libdir in which libs are installed
28072
28073 --dynlibdir DIR
28074 installation directory for dynamic libraries
28075
28076 --libexecdir DIR
28077 installation directory for program executables
28078
28079 --libexecsubdir DIR
28080 subdirectory of libexecdir in which private executables
28081 are installed
28082
28083 --datadir DIR
28084 installation directory for read-only data
28085
28086 --datasubdir DIR
28087 subdirectory of datadir in which data files are installed
28088
28089 --docdir DIR
28090 installation directory for documentation
28091
28092 --htmldir DIR
28093 installation directory for HTML documentation
28094
28095 --haddockdir DIR
28096 installation directory for haddock interfaces
28097
28098 --sysconfdir DIR
28099 installation directory for configuration files
28100
28101 --program-prefix PREFIX
28102 prefix to be applied to installed executables
28103
28104 --program-suffix SUFFIX
28105 suffix to be applied to installed executables
28106
28107 --enable-library-vanilla
28108 --disable-library-vanilla
28109 Vanilla libraries
28110
28111 -p, --enable-library-profiling
28112 --disable-library-profiling
28113 Library profiling
28114
28115 --enable-shared
28116 --disable-shared
28117 Shared library
28118
28119 --enable-static
28120 --disable-static
28121 Static library
28122
28123 --enable-executable-dynamic
28124 --disable-executable-dynamic
28125 Executable dynamic linking
28126
28127 --enable-executable-static
28128 --disable-executable-static
28129 Executable fully static linking
28130
28131 --enable-profiling
28132 --disable-profiling
28133 Executable and library profiling
28134
28135 --enable-executable-profiling
28136 --disable-executable-profiling
28137 Executable profiling (DEPRECATED)
28138
28139 --profiling-detail level
28140 Profiling detail level for executable and library
28141 (default, none, exported-functions, toplevel-functions,
28142 all-functions).
28143
28144 --library-profiling-detail level
28145 Profiling detail level for libraries only.
28146
28147 -O, --enable-optimization, --enable-optimisation [n]
28148 Build with optimization (n is 0--2, default is 1)
28149
28150 --disable-optimization, --disable-optimisation
28151 Build without optimization
28152
28153 --enable-debug-info [n]
28154 Emit debug info (n is 0--3, default is 0)
28155
28156 --disable-debug-info
28157 Don't emit debug info
28158
28159 --enable-library-for-ghci
28160 --disable-library-for-ghci
28161 compile library for use with GHCi
28162
28163 --enable-split-sections
28164 --disable-split-sections
28165 compile library code such that unneeded definitions can
28166 be dropped from the final executable (GHC 7.8+)
28167
28168 --enable-split-objs
28169 --disable-split-objs
28170 split library into smaller objects to reduce binary sizes
28171 (GHC 6.6+)
28172
28173 --enable-executable-stripping
28174 --disable-executable-stripping
28175 strip executables upon installation to reduce binary
28176 sizes
28177
28178 --enable-library-stripping
28179 --disable-library-stripping
28180 strip libraries upon installation to reduce binary sizes
28181
28182 --configure-option OPT
28183 Extra option for configure
28184
28185 --user
28186 --global
28187 doing a per-user installation
28188
28189 --package-db DB
28190 Append the given package database to the list of package
28191 databases used (to satisfy dependencies and register
28192 into). May be a specific file, 'global' or 'user'. The
28193 initial list is ['global'], ['global', 'user'], or
28194 ['global', $sandbox], depending on context. Use 'clear'
28195 to reset the list to empty. See the user guide for
28196 details.
28197
28198 -f, --flags FLAGS
28199 Force values for the given flags in Cabal conditionals in
28200 the .cabal file. E.g., --flags="debug -usebytestrings"
28201 forces the flag "debug" to true and "usebytestrings" to
28202 false.
28203
28204 --extra-include-dirs PATH
28205 A list of directories to search for header files
28206
28207 --enable-deterministic
28208 --disable-deterministic
28209 Try to be as deterministic as possible (used by the test
28210 suite)
28211
28212 --ipid IPID
28213 Installed package ID to compile this package as
28214
28215 --cid CID
28216 Installed component ID to compile this component as
28217
28218 --extra-lib-dirs PATH
28219 A list of directories to search for external libraries
28220
28221 --extra-framework-dirs PATH
28222 A list of directories to search for external frameworks
28223 (OS X only)
28224
28225 --extra-prog-path PATH
28226 A list of directories to search for required programs (in
28227 addition to the normal search locations)
28228
28229 --instantiate-with NAME=MOD
28230 A mapping of signature names to concrete module instanti‐
28231 ations.
28232
28233 --enable-tests
28234 --disable-tests
28235 dependency checking and compilation for test suites
28236 listed in the package description file.
28237
28238 --enable-coverage
28239 --disable-coverage
28240 build package with Haskell Program Coverage. (GHC only)
28241
28242 --enable-library-coverage
28243 --disable-library-coverage
28244 build package with Haskell Program Coverage. (GHC only)
28245 (DEPRECATED)
28246
28247 --enable-benchmarks
28248 --disable-benchmarks
28249 dependency checking and compilation for benchmarks listed
28250 in the package description file.
28251
28252 --enable-relocatable
28253 --disable-relocatable
28254 building a package that is relocatable. (GHC only)
28255
28256 --disable-response-files
28257 enable workaround for old versions of programs like "ar"
28258 that do not support @file arguments
28259
28260 --allow-depending-on-private-libs
28261 Allow depending on private libraries. If set, the library
28262 visibility check MUST be done externally.
28263
28264 --with-alex PATH
28265 give the path to alex
28266
28267 --with-ar PATH
28268 give the path to ar
28269
28270 --with-c2hs PATH
28271 give the path to c2hs
28272
28273 --with-cpphs PATH
28274 give the path to cpphs
28275
28276 --with-doctest PATH
28277 give the path to doctest
28278
28279 --with-gcc PATH
28280 give the path to gcc
28281
28282 --with-ghc PATH
28283 give the path to ghc
28284
28285 --with-ghc-pkg PATH
28286 give the path to ghc-pkg
28287
28288 --with-ghcjs PATH
28289 give the path to ghcjs
28290
28291 --with-ghcjs-pkg PATH
28292 give the path to ghcjs-pkg
28293
28294 --with-greencard PATH
28295 give the path to greencard
28296
28297 --with-haddock PATH
28298 give the path to haddock
28299
28300 --with-happy PATH
28301 give the path to happy
28302
28303 --with-haskell-suite PATH
28304 give the path to haskell-suite
28305
28306 --with-haskell-suite-pkg PATH
28307 give the path to haskell-suite-pkg
28308
28309 --with-hmake PATH
28310 give the path to hmake
28311
28312 --with-hpc PATH
28313 give the path to hpc
28314
28315 --with-hsc2hs PATH
28316 give the path to hsc2hs
28317
28318 --with-hscolour PATH
28319 give the path to hscolour
28320
28321 --with-jhc PATH
28322 give the path to jhc
28323
28324 --with-ld PATH
28325 give the path to ld
28326
28327 --with-pkg-config PATH
28328 give the path to pkg-config
28329
28330 --with-runghc PATH
28331 give the path to runghc
28332
28333 --with-strip PATH
28334 give the path to strip
28335
28336 --with-tar PATH
28337 give the path to tar
28338
28339 --with-uhc PATH
28340 give the path to uhc
28341
28342 --alex-option OPT
28343 give an extra option to alex (no need to quote options
28344 containing spaces)
28345
28346 --ar-option OPT
28347 give an extra option to ar (no need to quote options con‐
28348 taining spaces)
28349
28350 --c2hs-option OPT
28351 give an extra option to c2hs (no need to quote options
28352 containing spaces)
28353
28354 --cpphs-option OPT
28355 give an extra option to cpphs (no need to quote options
28356 containing spaces)
28357
28358 --doctest-option OPT
28359 give an extra option to doctest (no need to quote options
28360 containing spaces)
28361
28362 --gcc-option OPT
28363 give an extra option to gcc (no need to quote options
28364 containing spaces)
28365
28366 --ghc-option OPT
28367 give an extra option to ghc (no need to quote options
28368 containing spaces)
28369
28370 --ghc-pkg-option OPT
28371 give an extra option to ghc-pkg (no need to quote options
28372 containing spaces)
28373
28374 --ghcjs-option OPT
28375 give an extra option to ghcjs (no need to quote options
28376 containing spaces)
28377
28378 --ghcjs-pkg-option OPT
28379 give an extra option to ghcjs-pkg (no need to quote
28380 options containing spaces)
28381
28382 --greencard-option OPT
28383 give an extra option to greencard (no need to quote
28384 options containing spaces)
28385
28386 --haddock-option OPT
28387 give an extra option to haddock (no need to quote options
28388 containing spaces)
28389
28390 --happy-option OPT
28391 give an extra option to happy (no need to quote options
28392 containing spaces)
28393
28394 --haskell-suite-option OPT
28395 give an extra option to haskell-suite (no need to quote
28396 options containing spaces)
28397
28398 --haskell-suite-pkg-option OPT
28399 give an extra option to haskell-suite-pkg (no need to
28400 quote options containing spaces)
28401
28402 --hmake-option OPT
28403 give an extra option to hmake (no need to quote options
28404 containing spaces)
28405
28406 --hpc-option OPT
28407 give an extra option to hpc (no need to quote options
28408 containing spaces)
28409
28410 --hsc2hs-option OPT
28411 give an extra option to hsc2hs (no need to quote options
28412 containing spaces)
28413
28414 --hscolour-option OPT
28415 give an extra option to hscolour (no need to quote
28416 options containing spaces)
28417
28418 --jhc-option OPT
28419 give an extra option to jhc (no need to quote options
28420 containing spaces)
28421
28422 --ld-option OPT
28423 give an extra option to ld (no need to quote options con‐
28424 taining spaces)
28425
28426 --pkg-config-option OPT
28427 give an extra option to pkg-config (no need to quote
28428 options containing spaces)
28429
28430 --runghc-option OPT
28431 give an extra option to runghc (no need to quote options
28432 containing spaces)
28433
28434 --strip-option OPT
28435 give an extra option to strip (no need to quote options
28436 containing spaces)
28437
28438 --tar-option OPT
28439 give an extra option to tar (no need to quote options
28440 containing spaces)
28441
28442 --uhc-option OPT
28443 give an extra option to uhc (no need to quote options
28444 containing spaces)
28445
28446 --alex-options OPTS
28447 give extra options to alex
28448
28449 --ar-options OPTS
28450 give extra options to ar
28451
28452 --c2hs-options OPTS
28453 give extra options to c2hs
28454
28455 --cpphs-options OPTS
28456 give extra options to cpphs
28457
28458 --doctest-options OPTS
28459 give extra options to doctest
28460
28461 --gcc-options OPTS
28462 give extra options to gcc
28463
28464 --ghc-options OPTS
28465 give extra options to ghc
28466
28467 --ghc-pkg-options OPTS
28468 give extra options to ghc-pkg
28469
28470 --ghcjs-options OPTS
28471 give extra options to ghcjs
28472
28473 --ghcjs-pkg-options OPTS
28474 give extra options to ghcjs-pkg
28475
28476 --greencard-options OPTS
28477 give extra options to greencard
28478
28479 --haddock-options OPTS
28480 give extra options to haddock
28481
28482 --happy-options OPTS
28483 give extra options to happy
28484
28485 --haskell-suite-options OPTS
28486 give extra options to haskell-suite
28487
28488 --haskell-suite-pkg-options OPTS
28489 give extra options to haskell-suite-pkg
28490
28491 --hmake-options OPTS
28492 give extra options to hmake
28493
28494 --hpc-options OPTS
28495 give extra options to hpc
28496
28497 --hsc2hs-options OPTS
28498 give extra options to hsc2hs
28499
28500 --hscolour-options OPTS
28501 give extra options to hscolour
28502
28503 --jhc-options OPTS
28504 give extra options to jhc
28505
28506 --ld-options OPTS
28507 give extra options to ld
28508
28509 --pkg-config-options OPTS
28510 give extra options to pkg-config
28511
28512 --runghc-options OPTS
28513 give extra options to runghc
28514
28515 --strip-options OPTS
28516 give extra options to strip
28517
28518 --tar-options OPTS
28519 give extra options to tar
28520
28521 --uhc-options OPTS
28522 give extra options to uhc
28523
28524 --cabal-lib-version VERSION
28525 Select which version of the Cabal lib to use to build
28526 packages (useful for testing).
28527
28528 --constraint CONSTRAINT
28529 Specify constraints on a package (version,
28530 installed/source, flags)
28531
28532 --preference CONSTRAINT
28533 Specify preferences (soft constraints) on the version of
28534 a package
28535
28536 --solver SOLVER
28537 Select dependency solver to use (default: modular).
28538 Choices: modular.
28539
28540 --allow-older [DEPS]
28541 Ignore lower bounds in all dependencies or DEPS
28542
28543 --allow-newer [DEPS]
28544 Ignore upper bounds in all dependencies or DEPS
28545
28546 --write-ghc-environment-files always|never|ghc8.4.4+
28547 Whether to create a .ghc.environment file after a suc‐
28548 cessful build (v2-build only)
28549
28550 --enable-documentation
28551 --disable-documentation
28552 building of documentation
28553
28554 --doc-index-file TEMPLATE
28555 A central index of haddock API documentation (template
28556 cannot use $pkgid)
28557
28558 --dry-run
28559 Do not install anything, only print what would be
28560 installed.
28561
28562 --max-backjumps NUM
28563 Maximum number of backjumps allowed while solving
28564 (default: 4000). Use a negative number to enable unlim‐
28565 ited backtracking. Use 0 to disable backtracking com‐
28566 pletely.
28567
28568 --reorder-goals
28569 --no-reorder-goals
28570 Try to reorder goals according to certain heuristics.
28571 Slows things down on average, but may make backtracking
28572 faster for some packages.
28573
28574 --count-conflicts
28575 --no-count-conflicts
28576 Try to speed up solving by preferring goals that are
28577 involved in a lot of conflicts (default).
28578
28579 --minimize-conflict-set
28580 --no-minimize-conflict-set
28581 When there is no solution, try to improve the error mes‐
28582 sage by finding a minimal conflict set (default: false).
28583 May increase run time significantly.
28584
28585 --independent-goals
28586 --no-independent-goals
28587 Treat several goals on the command line as independent.
28588 If several goals depend on the same package, different
28589 versions can be chosen.
28590
28591 --shadow-installed-packages
28592 --no-shadow-installed-packages
28593 If multiple package instances of the same version are
28594 installed, treat all but one as shadowed.
28595
28596 --strong-flags
28597 --no-strong-flags
28598 Do not defer flag choices (this used to be the default in
28599 cabal-install <= 1.20).
28600
28601 --allow-boot-library-installs
28602 --no-allow-boot-library-installs
28603 Allow cabal to install base, ghc-prim, integer-simple,
28604 integer-gmp, and template-haskell.
28605
28606 --reject-unconstrained-dependencies none|all
28607 Require these packages to have constraints on them if
28608 they are to be selected (default: none).
28609
28610 --reinstall
28611 --no-reinstall
28612 Install even if it means installing the same version
28613 again.
28614
28615 --avoid-reinstalls
28616 --no-avoid-reinstalls
28617 Do not select versions that would destructively overwrite
28618 installed packages.
28619
28620 --force-reinstalls
28621 --no-force-reinstalls
28622 Reinstall packages even if they will most likely break
28623 other installed packages.
28624
28625 --upgrade-dependencies
28626 --no-upgrade-dependencies
28627 Pick the latest version for all dependencies, rather than
28628 trying to pick an installed version.
28629
28630 --only-dependencies
28631 --no-only-dependencies
28632 Install only the dependencies necessary to build the
28633 given packages
28634
28635 --dependencies-only
28636 --no-dependencies-only
28637 A synonym for --only-dependencies
28638
28639 --index-state STATE
28640 Use source package index state as it existed at a previ‐
28641 ous time. Accepts unix-timestamps (e.g. '@1474732068'),
28642 ISO8601 UTC timestamps (e.g. '2016-09-24T17:47:48Z'), or
28643 'HEAD' (default: 'HEAD').
28644
28645 --root-cmd COMMAND
28646 (No longer supported, do not use.)
28647
28648 --symlink-bindir DIR
28649 Add symlinks to installed executables into this direc‐
28650 tory.
28651
28652 --build-summary TEMPLATE
28653 Save build summaries to file (name template can use
28654 $pkgid, $compiler, $os, $arch)
28655
28656 --build-log TEMPLATE
28657 Log all builds to file (name template can use $pkgid,
28658 $compiler, $os, $arch)
28659
28660 --remote-build-reporting LEVEL
28661 Generate build reports to send to a remote server (none,
28662 anonymous or detailed).
28663
28664 --report-planning-failure
28665 Generate build reports when the dependency solver fails.
28666 This is used by the Hackage build bot.
28667
28668 --enable-per-component
28669 --disable-per-component
28670 Per-component builds when possible
28671
28672 --one-shot
28673 --no-one-shot
28674 Do not record the packages in the world file.
28675
28676 --run-tests
28677 Run package test suites during installation.
28678
28679 -j, --jobs [NUM]
28680 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
28681 given).
28682
28683 --keep-going
28684 After a build failure, continue to build other unaffected
28685 packages.
28686
28687 --offline
28688 --no-offline
28689 Don't download packages from the Internet.
28690
28691 --project-file FILE
28692 Set the name of the cabal.project file to search for in
28693 parent directories
28694
28695 --only
28696 Only installs the package in the current directory.
28697
28698 --haddock-hoogle
28699 Generate a hoogle database
28700
28701 --haddock-html
28702 Generate HTML documentation (the default)
28703
28704 --haddock-html-location URL
28705 Location of HTML documentation for pre-requisite packages
28706
28707 --haddock-for-hackage
28708 Collection of flags to generate documentation suitable
28709 for upload to hackage
28710
28711 --haddock-executables
28712 Run haddock for Executables targets
28713
28714 --haddock-tests
28715 Run haddock for Test Suite targets
28716
28717 --haddock-benchmarks
28718 Run haddock for Benchmark targets
28719
28720 --haddock-all
28721 Run haddock for all targets
28722
28723 --haddock-internal
28724 Run haddock for internal modules and include all symbols
28725
28726 --haddock-css PATH
28727 Use PATH as the haddock stylesheet
28728
28729 --haddock-hyperlink-source, --haddock-hyperlink-sources, --had‐
28730 dock-hyperlinked-source
28731 Hyperlink the documentation to the source code
28732
28733 --haddock-quickjump
28734 Generate an index for interactive documentation naviga‐
28735 tion
28736
28737 --haddock-hscolour-css PATH
28738 Use PATH as the HsColour stylesheet
28739
28740 --haddock-contents-location URL
28741 Bake URL in as the location for the contents page
28742
28743 --test-log TEMPLATE
28744 Log all test suite results to file (name template can use
28745 $pkgid, $compiler, $os, $arch, $test-suite, $result)
28746
28747 --test-machine-log TEMPLATE
28748 Produce a machine-readable log file (name template can
28749 use $pkgid, $compiler, $os, $arch, $result)
28750
28751 --test-show-details FILTER
28752
28753 --test-keep-tix-files
28754 keep .tix files for HPC between test runs
28755
28756 --test-wrapper FILE
28757 Run test through a wrapper.
28758
28759 --test-fail-when-no-test-suites
28760 Exit with failure when no test suites are found.
28761
28762 --test-options TEMPLATES
28763 give extra options to test executables (name templates
28764 can use $pkgid, $compiler, $os, $arch, $test-suite)
28765
28766 --test-option TEMPLATE
28767 give extra option to test executables (no need to quote
28768 options containing spaces, name template can use $pkgid,
28769 $compiler, $os, $arch, $test-suite)
28770
28771
28772 cabal v1-run
28773
28774 Usage: cabal v1-run [FLAGS] [EXECUTABLE] [-- EXECUTABLE_FLAGS]
28775
28776
28777 Builds and then runs the specified executable. If no executable is
28778 specified, but the package contains just one executable, that one is
28779 built and executed.
28780
28781 Use `cabal v1-test --show-details=streaming` to run a test-suite and
28782 get its full output.
28783
28784
28785 Examples:
28786 cabal v1-run
28787 Run the only executable in the current package;
28788 cabal v1-run foo -- --fooflag
28789 Works similar to `./foo --fooflag`.
28790
28791 The v1-run command is a part of the legacy v1 style of cabal usage.
28792
28793 It is a legacy feature and will be removed in a future release of
28794 cabal-install. Please file a bug if you cannot replicate a working v1-
28795 use case with the new-style commands.
28796
28797 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
28798
28799
28800 Flags:
28801 -v, --verbose [n]
28802 Control verbosity (n is 0--3, default verbosity level is
28803 1)
28804
28805 --builddir, --distdir, --distpref DIR
28806 The directory where Cabal puts generated build files
28807 (default dist)
28808
28809 -j, --jobs [NUM]
28810 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
28811 given).
28812
28813 --with-alex PATH
28814 give the path to alex
28815
28816 --with-ar PATH
28817 give the path to ar
28818
28819 --with-c2hs PATH
28820 give the path to c2hs
28821
28822 --with-cpphs PATH
28823 give the path to cpphs
28824
28825 --with-doctest PATH
28826 give the path to doctest
28827
28828 --with-gcc PATH
28829 give the path to gcc
28830
28831 --with-ghc PATH
28832 give the path to ghc
28833
28834 --with-ghc-pkg PATH
28835 give the path to ghc-pkg
28836
28837 --with-ghcjs PATH
28838 give the path to ghcjs
28839
28840 --with-ghcjs-pkg PATH
28841 give the path to ghcjs-pkg
28842
28843 --with-greencard PATH
28844 give the path to greencard
28845
28846 --with-haddock PATH
28847 give the path to haddock
28848
28849 --with-happy PATH
28850 give the path to happy
28851
28852 --with-haskell-suite PATH
28853 give the path to haskell-suite
28854
28855 --with-haskell-suite-pkg PATH
28856 give the path to haskell-suite-pkg
28857
28858 --with-hmake PATH
28859 give the path to hmake
28860
28861 --with-hpc PATH
28862 give the path to hpc
28863
28864 --with-hsc2hs PATH
28865 give the path to hsc2hs
28866
28867 --with-hscolour PATH
28868 give the path to hscolour
28869
28870 --with-jhc PATH
28871 give the path to jhc
28872
28873 --with-ld PATH
28874 give the path to ld
28875
28876 --with-pkg-config PATH
28877 give the path to pkg-config
28878
28879 --with-runghc PATH
28880 give the path to runghc
28881
28882 --with-strip PATH
28883 give the path to strip
28884
28885 --with-tar PATH
28886 give the path to tar
28887
28888 --with-uhc PATH
28889 give the path to uhc
28890
28891 --alex-option OPT
28892 give an extra option to alex (no need to quote options
28893 containing spaces)
28894
28895 --ar-option OPT
28896 give an extra option to ar (no need to quote options con‐
28897 taining spaces)
28898
28899 --c2hs-option OPT
28900 give an extra option to c2hs (no need to quote options
28901 containing spaces)
28902
28903 --cpphs-option OPT
28904 give an extra option to cpphs (no need to quote options
28905 containing spaces)
28906
28907 --doctest-option OPT
28908 give an extra option to doctest (no need to quote options
28909 containing spaces)
28910
28911 --gcc-option OPT
28912 give an extra option to gcc (no need to quote options
28913 containing spaces)
28914
28915 --ghc-option OPT
28916 give an extra option to ghc (no need to quote options
28917 containing spaces)
28918
28919 --ghc-pkg-option OPT
28920 give an extra option to ghc-pkg (no need to quote options
28921 containing spaces)
28922
28923 --ghcjs-option OPT
28924 give an extra option to ghcjs (no need to quote options
28925 containing spaces)
28926
28927 --ghcjs-pkg-option OPT
28928 give an extra option to ghcjs-pkg (no need to quote
28929 options containing spaces)
28930
28931 --greencard-option OPT
28932 give an extra option to greencard (no need to quote
28933 options containing spaces)
28934
28935 --haddock-option OPT
28936 give an extra option to haddock (no need to quote options
28937 containing spaces)
28938
28939 --happy-option OPT
28940 give an extra option to happy (no need to quote options
28941 containing spaces)
28942
28943 --haskell-suite-option OPT
28944 give an extra option to haskell-suite (no need to quote
28945 options containing spaces)
28946
28947 --haskell-suite-pkg-option OPT
28948 give an extra option to haskell-suite-pkg (no need to
28949 quote options containing spaces)
28950
28951 --hmake-option OPT
28952 give an extra option to hmake (no need to quote options
28953 containing spaces)
28954
28955 --hpc-option OPT
28956 give an extra option to hpc (no need to quote options
28957 containing spaces)
28958
28959 --hsc2hs-option OPT
28960 give an extra option to hsc2hs (no need to quote options
28961 containing spaces)
28962
28963 --hscolour-option OPT
28964 give an extra option to hscolour (no need to quote
28965 options containing spaces)
28966
28967 --jhc-option OPT
28968 give an extra option to jhc (no need to quote options
28969 containing spaces)
28970
28971 --ld-option OPT
28972 give an extra option to ld (no need to quote options con‐
28973 taining spaces)
28974
28975 --pkg-config-option OPT
28976 give an extra option to pkg-config (no need to quote
28977 options containing spaces)
28978
28979 --runghc-option OPT
28980 give an extra option to runghc (no need to quote options
28981 containing spaces)
28982
28983 --strip-option OPT
28984 give an extra option to strip (no need to quote options
28985 containing spaces)
28986
28987 --tar-option OPT
28988 give an extra option to tar (no need to quote options
28989 containing spaces)
28990
28991 --uhc-option OPT
28992 give an extra option to uhc (no need to quote options
28993 containing spaces)
28994
28995 --alex-options OPTS
28996 give extra options to alex
28997
28998 --ar-options OPTS
28999 give extra options to ar
29000
29001 --c2hs-options OPTS
29002 give extra options to c2hs
29003
29004 --cpphs-options OPTS
29005 give extra options to cpphs
29006
29007 --doctest-options OPTS
29008 give extra options to doctest
29009
29010 --gcc-options OPTS
29011 give extra options to gcc
29012
29013 --ghc-options OPTS
29014 give extra options to ghc
29015
29016 --ghc-pkg-options OPTS
29017 give extra options to ghc-pkg
29018
29019 --ghcjs-options OPTS
29020 give extra options to ghcjs
29021
29022 --ghcjs-pkg-options OPTS
29023 give extra options to ghcjs-pkg
29024
29025 --greencard-options OPTS
29026 give extra options to greencard
29027
29028 --haddock-options OPTS
29029 give extra options to haddock
29030
29031 --happy-options OPTS
29032 give extra options to happy
29033
29034 --haskell-suite-options OPTS
29035 give extra options to haskell-suite
29036
29037 --haskell-suite-pkg-options OPTS
29038 give extra options to haskell-suite-pkg
29039
29040 --hmake-options OPTS
29041 give extra options to hmake
29042
29043 --hpc-options OPTS
29044 give extra options to hpc
29045
29046 --hsc2hs-options OPTS
29047 give extra options to hsc2hs
29048
29049 --hscolour-options OPTS
29050 give extra options to hscolour
29051
29052 --jhc-options OPTS
29053 give extra options to jhc
29054
29055 --ld-options OPTS
29056 give extra options to ld
29057
29058 --pkg-config-options OPTS
29059 give extra options to pkg-config
29060
29061 --runghc-options OPTS
29062 give extra options to runghc
29063
29064 --strip-options OPTS
29065 give extra options to strip
29066
29067 --tar-options OPTS
29068 give extra options to tar
29069
29070 --uhc-options OPTS
29071 give extra options to uhc
29072
29073 --only
29074 Don't reinstall add-source dependencies (sandbox-only)
29075
29076
29077 cabal v1-test
29078
29079 Usage: cabal v1-test [FLAGS]
29080 or: cabal v1-test TESTCOMPONENTS [FLAGS]
29081
29082
29083 If necessary (re)configures with `--enable-tests` flag and builds the
29084 test suite.
29085
29086 Remember that the tests' dependencies must be installed if there are
29087 additional ones; e.g. with `cabal v1-install --only-dependencies
29088 --enable-tests`.
29089
29090 By defining UserHooks in a custom Setup.hs, the package can define
29091 actions to be executed before and after running tests.
29092
29093
29094 The v1-test command is a part of the legacy v1 style of cabal usage.
29095
29096 It is a legacy feature and will be removed in a future release of
29097 cabal-install. Please file a bug if you cannot replicate a working v1-
29098 use case with the new-style commands.
29099
29100 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
29101
29102
29103 Flags:
29104 -v, --verbose [n]
29105 Control verbosity (n is 0--3, default verbosity level is
29106 1)
29107
29108 --builddir, --distdir, --distpref DIR
29109 The directory where Cabal puts generated build files
29110 (default dist)
29111
29112 --log TEMPLATE
29113 Log all test suite results to file (name template can use
29114 $pkgid, $compiler, $os, $arch, $test-suite, $result)
29115
29116 --machine-log TEMPLATE
29117 Produce a machine-readable log file (name template can
29118 use $pkgid, $compiler, $os, $arch, $result)
29119
29120 --show-details FILTER
29121
29122 --keep-tix-files
29123 keep .tix files for HPC between test runs
29124
29125 --test-wrapper FILE
29126 Run test through a wrapper.
29127
29128 --fail-when-no-test-suites
29129 Exit with failure when no test suites are found.
29130
29131 --test-options TEMPLATES
29132 give extra options to test executables (name templates
29133 can use $pkgid, $compiler, $os, $arch, $test-suite)
29134
29135 --test-option TEMPLATE
29136 give extra option to test executables (no need to quote
29137 options containing spaces, name template can use $pkgid,
29138 $compiler, $os, $arch, $test-suite)
29139
29140 -j, --jobs [NUM]
29141 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
29142 given).
29143
29144 --with-alex PATH
29145 give the path to alex
29146
29147 --with-ar PATH
29148 give the path to ar
29149
29150 --with-c2hs PATH
29151 give the path to c2hs
29152
29153 --with-cpphs PATH
29154 give the path to cpphs
29155
29156 --with-doctest PATH
29157 give the path to doctest
29158
29159 --with-gcc PATH
29160 give the path to gcc
29161
29162 --with-ghc PATH
29163 give the path to ghc
29164
29165 --with-ghc-pkg PATH
29166 give the path to ghc-pkg
29167
29168 --with-ghcjs PATH
29169 give the path to ghcjs
29170
29171 --with-ghcjs-pkg PATH
29172 give the path to ghcjs-pkg
29173
29174 --with-greencard PATH
29175 give the path to greencard
29176
29177 --with-haddock PATH
29178 give the path to haddock
29179
29180 --with-happy PATH
29181 give the path to happy
29182
29183 --with-haskell-suite PATH
29184 give the path to haskell-suite
29185
29186 --with-haskell-suite-pkg PATH
29187 give the path to haskell-suite-pkg
29188
29189 --with-hmake PATH
29190 give the path to hmake
29191
29192 --with-hpc PATH
29193 give the path to hpc
29194
29195 --with-hsc2hs PATH
29196 give the path to hsc2hs
29197
29198 --with-hscolour PATH
29199 give the path to hscolour
29200
29201 --with-jhc PATH
29202 give the path to jhc
29203
29204 --with-ld PATH
29205 give the path to ld
29206
29207 --with-pkg-config PATH
29208 give the path to pkg-config
29209
29210 --with-runghc PATH
29211 give the path to runghc
29212
29213 --with-strip PATH
29214 give the path to strip
29215
29216 --with-tar PATH
29217 give the path to tar
29218
29219 --with-uhc PATH
29220 give the path to uhc
29221
29222 --alex-option OPT
29223 give an extra option to alex (no need to quote options
29224 containing spaces)
29225
29226 --ar-option OPT
29227 give an extra option to ar (no need to quote options con‐
29228 taining spaces)
29229
29230 --c2hs-option OPT
29231 give an extra option to c2hs (no need to quote options
29232 containing spaces)
29233
29234 --cpphs-option OPT
29235 give an extra option to cpphs (no need to quote options
29236 containing spaces)
29237
29238 --doctest-option OPT
29239 give an extra option to doctest (no need to quote options
29240 containing spaces)
29241
29242 --gcc-option OPT
29243 give an extra option to gcc (no need to quote options
29244 containing spaces)
29245
29246 --ghc-option OPT
29247 give an extra option to ghc (no need to quote options
29248 containing spaces)
29249
29250 --ghc-pkg-option OPT
29251 give an extra option to ghc-pkg (no need to quote options
29252 containing spaces)
29253
29254 --ghcjs-option OPT
29255 give an extra option to ghcjs (no need to quote options
29256 containing spaces)
29257
29258 --ghcjs-pkg-option OPT
29259 give an extra option to ghcjs-pkg (no need to quote
29260 options containing spaces)
29261
29262 --greencard-option OPT
29263 give an extra option to greencard (no need to quote
29264 options containing spaces)
29265
29266 --haddock-option OPT
29267 give an extra option to haddock (no need to quote options
29268 containing spaces)
29269
29270 --happy-option OPT
29271 give an extra option to happy (no need to quote options
29272 containing spaces)
29273
29274 --haskell-suite-option OPT
29275 give an extra option to haskell-suite (no need to quote
29276 options containing spaces)
29277
29278 --haskell-suite-pkg-option OPT
29279 give an extra option to haskell-suite-pkg (no need to
29280 quote options containing spaces)
29281
29282 --hmake-option OPT
29283 give an extra option to hmake (no need to quote options
29284 containing spaces)
29285
29286 --hpc-option OPT
29287 give an extra option to hpc (no need to quote options
29288 containing spaces)
29289
29290 --hsc2hs-option OPT
29291 give an extra option to hsc2hs (no need to quote options
29292 containing spaces)
29293
29294 --hscolour-option OPT
29295 give an extra option to hscolour (no need to quote
29296 options containing spaces)
29297
29298 --jhc-option OPT
29299 give an extra option to jhc (no need to quote options
29300 containing spaces)
29301
29302 --ld-option OPT
29303 give an extra option to ld (no need to quote options con‐
29304 taining spaces)
29305
29306 --pkg-config-option OPT
29307 give an extra option to pkg-config (no need to quote
29308 options containing spaces)
29309
29310 --runghc-option OPT
29311 give an extra option to runghc (no need to quote options
29312 containing spaces)
29313
29314 --strip-option OPT
29315 give an extra option to strip (no need to quote options
29316 containing spaces)
29317
29318 --tar-option OPT
29319 give an extra option to tar (no need to quote options
29320 containing spaces)
29321
29322 --uhc-option OPT
29323 give an extra option to uhc (no need to quote options
29324 containing spaces)
29325
29326 --alex-options OPTS
29327 give extra options to alex
29328
29329 --ar-options OPTS
29330 give extra options to ar
29331
29332 --c2hs-options OPTS
29333 give extra options to c2hs
29334
29335 --cpphs-options OPTS
29336 give extra options to cpphs
29337
29338 --doctest-options OPTS
29339 give extra options to doctest
29340
29341 --gcc-options OPTS
29342 give extra options to gcc
29343
29344 --ghc-options OPTS
29345 give extra options to ghc
29346
29347 --ghc-pkg-options OPTS
29348 give extra options to ghc-pkg
29349
29350 --ghcjs-options OPTS
29351 give extra options to ghcjs
29352
29353 --ghcjs-pkg-options OPTS
29354 give extra options to ghcjs-pkg
29355
29356 --greencard-options OPTS
29357 give extra options to greencard
29358
29359 --haddock-options OPTS
29360 give extra options to haddock
29361
29362 --happy-options OPTS
29363 give extra options to happy
29364
29365 --haskell-suite-options OPTS
29366 give extra options to haskell-suite
29367
29368 --haskell-suite-pkg-options OPTS
29369 give extra options to haskell-suite-pkg
29370
29371 --hmake-options OPTS
29372 give extra options to hmake
29373
29374 --hpc-options OPTS
29375 give extra options to hpc
29376
29377 --hsc2hs-options OPTS
29378 give extra options to hsc2hs
29379
29380 --hscolour-options OPTS
29381 give extra options to hscolour
29382
29383 --jhc-options OPTS
29384 give extra options to jhc
29385
29386 --ld-options OPTS
29387 give extra options to ld
29388
29389 --pkg-config-options OPTS
29390 give extra options to pkg-config
29391
29392 --runghc-options OPTS
29393 give extra options to runghc
29394
29395 --strip-options OPTS
29396 give extra options to strip
29397
29398 --tar-options OPTS
29399 give extra options to tar
29400
29401 --uhc-options OPTS
29402 give extra options to uhc
29403
29404 --only
29405 Don't reinstall add-source dependencies (sandbox-only)
29406
29407
29408 cabal v1-bench
29409
29410 Usage: cabal v1-bench [FLAGS]
29411 or: cabal v1-bench BENCHCOMPONENTS [FLAGS]
29412
29413
29414 If necessary (re)configures with `--enable-benchmarks` flag and builds
29415 the benchmarks.
29416
29417 Remember that the benchmarks' dependencies must be installed if there
29418 are additional ones; e.g. with `cabal v1-install --only-dependencies
29419 --enable-benchmarks`.
29420
29421 By defining UserHooks in a custom Setup.hs, the package can define
29422 actions to be executed before and after running benchmarks.
29423
29424
29425 The v1-bench command is a part of the legacy v1 style of cabal usage.
29426
29427 It is a legacy feature and will be removed in a future release of
29428 cabal-install. Please file a bug if you cannot replicate a working v1-
29429 use case with the new-style commands.
29430
29431 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
29432
29433
29434 Flags:
29435 -v, --verbose [n]
29436 Control verbosity (n is 0--3, default verbosity level is
29437 1)
29438
29439 --builddir, --distdir, --distpref DIR
29440 The directory where Cabal puts generated build files
29441 (default dist)
29442
29443 --benchmark-options TEMPLATES
29444 give extra options to benchmark executables (name tem‐
29445 plates can use $pkgid, $compiler, $os, $arch, $benchmark)
29446
29447 --benchmark-option TEMPLATE
29448 give extra option to benchmark executables (no need to
29449 quote options containing spaces, name template can use
29450 $pkgid, $compiler, $os, $arch, $benchmark)
29451
29452 -j, --jobs [NUM]
29453 Run NUM jobs simultaneously (or '$ncpus' if no NUM is
29454 given).
29455
29456 --with-alex PATH
29457 give the path to alex
29458
29459 --with-ar PATH
29460 give the path to ar
29461
29462 --with-c2hs PATH
29463 give the path to c2hs
29464
29465 --with-cpphs PATH
29466 give the path to cpphs
29467
29468 --with-doctest PATH
29469 give the path to doctest
29470
29471 --with-gcc PATH
29472 give the path to gcc
29473
29474 --with-ghc PATH
29475 give the path to ghc
29476
29477 --with-ghc-pkg PATH
29478 give the path to ghc-pkg
29479
29480 --with-ghcjs PATH
29481 give the path to ghcjs
29482
29483 --with-ghcjs-pkg PATH
29484 give the path to ghcjs-pkg
29485
29486 --with-greencard PATH
29487 give the path to greencard
29488
29489 --with-haddock PATH
29490 give the path to haddock
29491
29492 --with-happy PATH
29493 give the path to happy
29494
29495 --with-haskell-suite PATH
29496 give the path to haskell-suite
29497
29498 --with-haskell-suite-pkg PATH
29499 give the path to haskell-suite-pkg
29500
29501 --with-hmake PATH
29502 give the path to hmake
29503
29504 --with-hpc PATH
29505 give the path to hpc
29506
29507 --with-hsc2hs PATH
29508 give the path to hsc2hs
29509
29510 --with-hscolour PATH
29511 give the path to hscolour
29512
29513 --with-jhc PATH
29514 give the path to jhc
29515
29516 --with-ld PATH
29517 give the path to ld
29518
29519 --with-pkg-config PATH
29520 give the path to pkg-config
29521
29522 --with-runghc PATH
29523 give the path to runghc
29524
29525 --with-strip PATH
29526 give the path to strip
29527
29528 --with-tar PATH
29529 give the path to tar
29530
29531 --with-uhc PATH
29532 give the path to uhc
29533
29534 --alex-option OPT
29535 give an extra option to alex (no need to quote options
29536 containing spaces)
29537
29538 --ar-option OPT
29539 give an extra option to ar (no need to quote options con‐
29540 taining spaces)
29541
29542 --c2hs-option OPT
29543 give an extra option to c2hs (no need to quote options
29544 containing spaces)
29545
29546 --cpphs-option OPT
29547 give an extra option to cpphs (no need to quote options
29548 containing spaces)
29549
29550 --doctest-option OPT
29551 give an extra option to doctest (no need to quote options
29552 containing spaces)
29553
29554 --gcc-option OPT
29555 give an extra option to gcc (no need to quote options
29556 containing spaces)
29557
29558 --ghc-option OPT
29559 give an extra option to ghc (no need to quote options
29560 containing spaces)
29561
29562 --ghc-pkg-option OPT
29563 give an extra option to ghc-pkg (no need to quote options
29564 containing spaces)
29565
29566 --ghcjs-option OPT
29567 give an extra option to ghcjs (no need to quote options
29568 containing spaces)
29569
29570 --ghcjs-pkg-option OPT
29571 give an extra option to ghcjs-pkg (no need to quote
29572 options containing spaces)
29573
29574 --greencard-option OPT
29575 give an extra option to greencard (no need to quote
29576 options containing spaces)
29577
29578 --haddock-option OPT
29579 give an extra option to haddock (no need to quote options
29580 containing spaces)
29581
29582 --happy-option OPT
29583 give an extra option to happy (no need to quote options
29584 containing spaces)
29585
29586 --haskell-suite-option OPT
29587 give an extra option to haskell-suite (no need to quote
29588 options containing spaces)
29589
29590 --haskell-suite-pkg-option OPT
29591 give an extra option to haskell-suite-pkg (no need to
29592 quote options containing spaces)
29593
29594 --hmake-option OPT
29595 give an extra option to hmake (no need to quote options
29596 containing spaces)
29597
29598 --hpc-option OPT
29599 give an extra option to hpc (no need to quote options
29600 containing spaces)
29601
29602 --hsc2hs-option OPT
29603 give an extra option to hsc2hs (no need to quote options
29604 containing spaces)
29605
29606 --hscolour-option OPT
29607 give an extra option to hscolour (no need to quote
29608 options containing spaces)
29609
29610 --jhc-option OPT
29611 give an extra option to jhc (no need to quote options
29612 containing spaces)
29613
29614 --ld-option OPT
29615 give an extra option to ld (no need to quote options con‐
29616 taining spaces)
29617
29618 --pkg-config-option OPT
29619 give an extra option to pkg-config (no need to quote
29620 options containing spaces)
29621
29622 --runghc-option OPT
29623 give an extra option to runghc (no need to quote options
29624 containing spaces)
29625
29626 --strip-option OPT
29627 give an extra option to strip (no need to quote options
29628 containing spaces)
29629
29630 --tar-option OPT
29631 give an extra option to tar (no need to quote options
29632 containing spaces)
29633
29634 --uhc-option OPT
29635 give an extra option to uhc (no need to quote options
29636 containing spaces)
29637
29638 --alex-options OPTS
29639 give extra options to alex
29640
29641 --ar-options OPTS
29642 give extra options to ar
29643
29644 --c2hs-options OPTS
29645 give extra options to c2hs
29646
29647 --cpphs-options OPTS
29648 give extra options to cpphs
29649
29650 --doctest-options OPTS
29651 give extra options to doctest
29652
29653 --gcc-options OPTS
29654 give extra options to gcc
29655
29656 --ghc-options OPTS
29657 give extra options to ghc
29658
29659 --ghc-pkg-options OPTS
29660 give extra options to ghc-pkg
29661
29662 --ghcjs-options OPTS
29663 give extra options to ghcjs
29664
29665 --ghcjs-pkg-options OPTS
29666 give extra options to ghcjs-pkg
29667
29668 --greencard-options OPTS
29669 give extra options to greencard
29670
29671 --haddock-options OPTS
29672 give extra options to haddock
29673
29674 --happy-options OPTS
29675 give extra options to happy
29676
29677 --haskell-suite-options OPTS
29678 give extra options to haskell-suite
29679
29680 --haskell-suite-pkg-options OPTS
29681 give extra options to haskell-suite-pkg
29682
29683 --hmake-options OPTS
29684 give extra options to hmake
29685
29686 --hpc-options OPTS
29687 give extra options to hpc
29688
29689 --hsc2hs-options OPTS
29690 give extra options to hsc2hs
29691
29692 --hscolour-options OPTS
29693 give extra options to hscolour
29694
29695 --jhc-options OPTS
29696 give extra options to jhc
29697
29698 --ld-options OPTS
29699 give extra options to ld
29700
29701 --pkg-config-options OPTS
29702 give extra options to pkg-config
29703
29704 --runghc-options OPTS
29705 give extra options to runghc
29706
29707 --strip-options OPTS
29708 give extra options to strip
29709
29710 --tar-options OPTS
29711 give extra options to tar
29712
29713 --uhc-options OPTS
29714 give extra options to uhc
29715
29716 --only
29717 Don't reinstall add-source dependencies (sandbox-only)
29718
29719
29720 cabal v1-exec
29721
29722 Usage: cabal v1-exec [FLAGS] [--] COMMAND [--] [ARGS]
29723
29724
29725 A directly invoked GHC will not automatically be aware of any sand‐
29726 boxes: the GHC_PACKAGE_PATH environment variable controls what GHC
29727 uses. `cabal v1-exec` can be used to modify this variable: COMMAND will
29728 be executed in a modified environment and thereby uses the sandbox
29729 package database.
29730
29731 If there is no sandbox, behaves as identity (executing COMMAND).
29732
29733 Note that other cabal commands change the environment variable appro‐
29734 priately already, so there is no need to wrap those in `cabal v1-exec`.
29735 But with `cabal v1-exec`, the user has more control and can, for exam‐
29736 ple, execute custom scripts which indirectly execute GHC.
29737
29738 Note that `cabal v1-repl` is different from `cabal v1-exec -- ghci` as
29739 the latter will not forward any additional flags being defined in the
29740 local package to ghci.
29741
29742 See `cabal sandbox`.
29743
29744
29745 Examples:
29746 cabal v1-exec -- ghci -Wall
29747 Start a repl session with sandbox packages and all warnings;
29748 cabal v1-exec gitit -- -f gitit.cnf
29749 Give gitit access to the sandbox packages, and pass it a flag;
29750 cabal v1-exec runghc Foo.hs
29751 Execute runghc on Foo.hs with runghc configured to use the
29752 sandbox package database (if a sandbox is being used).
29753
29754 The v1-exec command is a part of the legacy v1 style of cabal usage.
29755
29756 It is a legacy feature and will be removed in a future release of
29757 cabal-install. Please file a bug if you cannot replicate a working v1-
29758 use case with the new-style commands.
29759
29760 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
29761
29762
29763 Flags:
29764 -v, --verbose [n]
29765 Control verbosity (n is 0--3, default verbosity level is
29766 1)
29767
29768 --builddir, --distdir, --distpref DIR
29769 The directory where Cabal puts generated build files
29770 (default dist)
29771
29772
29773 cabal v1-clean
29774
29775 Usage: cabal v1-clean [FLAGS]
29776
29777
29778 Removes .hi, .o, preprocessed sources, etc.
29779
29780
29781 The v1-clean command is a part of the legacy v1 style of cabal usage.
29782
29783 It is a legacy feature and will be removed in a future release of
29784 cabal-install. Please file a bug if you cannot replicate a working v1-
29785 use case with the new-style commands.
29786
29787 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
29788
29789
29790 Flags:
29791 -v, --verbose [n]
29792 Control verbosity (n is 0--3, default verbosity level is
29793 1)
29794
29795 --builddir, --distdir, --distpref DIR
29796 The directory where Cabal puts generated build files
29797 (default dist)
29798
29799 -s, --save-configure
29800 Do not remove the configuration file (dist/setup-config)
29801 during cleaning. Saves need to reconfigure.
29802
29803
29804 cabal v1-sdist
29805
29806 Usage: cabal v1-sdist [FLAGS]
29807
29808
29809 The v1-sdist command is a part of the legacy v1 style of cabal usage.
29810
29811 It is a legacy feature and will be removed in a future release of
29812 cabal-install. Please file a bug if you cannot replicate a working v1-
29813 use case with the new-style commands.
29814
29815 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
29816
29817
29818 Flags:
29819 -v, --verbose [n]
29820 Control verbosity (n is 0--3, default verbosity level is
29821 1)
29822
29823 --builddir, --distdir, --distpref DIR
29824 The directory where Cabal puts generated build files
29825 (default dist)
29826
29827 --list-sources FILE
29828 Just write a list of the package's sources to a file
29829
29830 --snapshot
29831 Produce a snapshot source distribution
29832
29833 --output-directory DIR
29834 Generate a source distribution in the given directory,
29835 without creating a tarball
29836
29837
29838 cabal v1-doctest
29839
29840 Usage: cabal v1-doctest [FLAGS]
29841
29842
29843 Requires the program doctest, version 0.12.
29844
29845
29846 The v1-doctest command is a part of the legacy v1 style of cabal usage.
29847
29848 It is a legacy feature and will be removed in a future release of
29849 cabal-install. Please file a bug if you cannot replicate a working v1-
29850 use case with the new-style commands.
29851
29852 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
29853
29854
29855 Flags:
29856 -v, --verbose [n]
29857 Control verbosity (n is 0--3, default verbosity level is
29858 1)
29859
29860 --builddir, --distdir, --distpref DIR
29861 The directory where Cabal puts generated build files
29862 (default dist)
29863
29864 --with-doctest PATH
29865 give the path to doctest
29866
29867 --doctest-option OPT
29868 give an extra option to doctest (no need to quote options
29869 containing spaces)
29870
29871 --doctest-options OPTS
29872 give extra options to doctest
29873
29874
29875 cabal v1-copy
29876
29877 Usage: cabal v1-copy [FLAGS]
29878 or: cabal v1-copy COMPONENTS [FLAGS]
29879
29880
29881 Components encompass executables and libraries. Does not call register,
29882 and allows a prefix at install time. Without the --destdir flag, con‐
29883 figure determines location.
29884
29885
29886 Examples:
29887 cabal v1-copy All the components in the package
29888 cabal v1-copy foo A component (i.e. lib, exe, test suite)
29889 The v1-copy command is a part of the legacy v1 style of cabal usage.
29890
29891 It is a legacy feature and will be removed in a future release of
29892 cabal-install. Please file a bug if you cannot replicate a working v1-
29893 use case with the new-style commands.
29894
29895 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
29896
29897
29898 Flags:
29899 -v, --verbose [n]
29900 Control verbosity (n is 0--3, default verbosity level is
29901 1)
29902
29903 --builddir, --distdir, --distpref DIR
29904 The directory where Cabal puts generated build files
29905 (default dist)
29906
29907 --destdir DIR
29908 directory to copy files to, prepended to installation
29909 directories
29910
29911 --target-package-db DATABASE
29912 package database to copy files into. Required when using
29913 ${pkgroot} prefix.
29914
29915
29916 cabal v1-register
29917
29918 Usage: cabal v1-register [FLAGS]
29919
29920
29921 The v1-register command is a part of the legacy v1 style of cabal
29922 usage.
29923
29924 It is a legacy feature and will be removed in a future release of
29925 cabal-install. Please file a bug if you cannot replicate a working v1-
29926 use case with the new-style commands.
29927
29928 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
29929
29930
29931 Flags:
29932 -v, --verbose [n]
29933 Control verbosity (n is 0--3, default verbosity level is
29934 1)
29935
29936 --builddir, --distdir, --distpref DIR
29937 The directory where Cabal puts generated build files
29938 (default dist)
29939
29940 --user
29941 upon registration, register this package in the user's
29942 local package database
29943
29944 --global
29945 (default)upon registration, register this package in the
29946 system-wide package database
29947
29948 --inplace
29949 register the package in the build location, so it can be
29950 used without being installed
29951
29952 --gen-script
29953 instead of registering, generate a script to register
29954 later
29955
29956 --gen-pkg-config [PKG]
29957 instead of registering, generate a package registration
29958 file/directory
29959
29960 --print-ipid
29961 print the installed package ID calculated for this pack‐
29962 age
29963
29964
29965 cabal v1-reconfigure
29966
29967 Usage: cabal v1-reconfigure [FLAGS]
29968
29969
29970 Run `configure` with the most recently used flags, or append FLAGS to
29971 the most recently used configuration. Accepts the same flags as `cabal
29972 v1-configure'. If the package has never been configured, the default
29973 flags are used.
29974
29975
29976 Examples:
29977 cabal v1-reconfigure
29978 Configure with the most recently used flags.
29979 cabal v1-reconfigure -w PATH
29980 Reconfigure with the most recently used flags,
29981 but use the compiler at PATH.
29982
29983
29984 The v1-reconfigure command is a part of the legacy v1 style of cabal
29985 usage.
29986
29987 It is a legacy feature and will be removed in a future release of
29988 cabal-install. Please file a bug if you cannot replicate a working v1-
29989 use case with the new-style commands.
29990
29991 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
29992
29993
29994 Flags:
29995 -v, --verbose [n]
29996 Control verbosity (n is 0--3, default verbosity level is
29997 1)
29998
29999 --builddir, --distdir, --distpref DIR
30000 The directory where Cabal puts generated build files
30001 (default dist)
30002
30003 -g, --ghc
30004 compile with GHC
30005
30006 --ghcjs
30007 compile with GHCJS
30008
30009 --uhc
30010 compile with UHC
30011
30012 --haskell-suite
30013 compile with a haskell-suite compiler
30014
30015 --cabal-file PATH
30016 use this Cabal file
30017
30018 -w, --with-compiler PATH
30019 give the path to a particular compiler
30020
30021 --with-hc-pkg PATH
30022 give the path to the package tool
30023
30024 --prefix DIR
30025 bake this prefix in preparation of installation
30026
30027 --bindir DIR
30028 installation directory for executables
30029
30030 --libdir DIR
30031 installation directory for libraries
30032
30033 --libsubdir DIR
30034 subdirectory of libdir in which libs are installed
30035
30036 --dynlibdir DIR
30037 installation directory for dynamic libraries
30038
30039 --libexecdir DIR
30040 installation directory for program executables
30041
30042 --libexecsubdir DIR
30043 subdirectory of libexecdir in which private executables
30044 are installed
30045
30046 --datadir DIR
30047 installation directory for read-only data
30048
30049 --datasubdir DIR
30050 subdirectory of datadir in which data files are installed
30051
30052 --docdir DIR
30053 installation directory for documentation
30054
30055 --htmldir DIR
30056 installation directory for HTML documentation
30057
30058 --haddockdir DIR
30059 installation directory for haddock interfaces
30060
30061 --sysconfdir DIR
30062 installation directory for configuration files
30063
30064 --program-prefix PREFIX
30065 prefix to be applied to installed executables
30066
30067 --program-suffix SUFFIX
30068 suffix to be applied to installed executables
30069
30070 --enable-library-vanilla
30071 --disable-library-vanilla
30072 Vanilla libraries
30073
30074 -p, --enable-library-profiling
30075 --disable-library-profiling
30076 Library profiling
30077
30078 --enable-shared
30079 --disable-shared
30080 Shared library
30081
30082 --enable-static
30083 --disable-static
30084 Static library
30085
30086 --enable-executable-dynamic
30087 --disable-executable-dynamic
30088 Executable dynamic linking
30089
30090 --enable-executable-static
30091 --disable-executable-static
30092 Executable fully static linking
30093
30094 --enable-profiling
30095 --disable-profiling
30096 Executable and library profiling
30097
30098 --enable-executable-profiling
30099 --disable-executable-profiling
30100 Executable profiling (DEPRECATED)
30101
30102 --profiling-detail level
30103 Profiling detail level for executable and library
30104 (default, none, exported-functions, toplevel-functions,
30105 all-functions).
30106
30107 --library-profiling-detail level
30108 Profiling detail level for libraries only.
30109
30110 -O, --enable-optimization, --enable-optimisation [n]
30111 Build with optimization (n is 0--2, default is 1)
30112
30113 --disable-optimization, --disable-optimisation
30114 Build without optimization
30115
30116 --enable-debug-info [n]
30117 Emit debug info (n is 0--3, default is 0)
30118
30119 --disable-debug-info
30120 Don't emit debug info
30121
30122 --enable-library-for-ghci
30123 --disable-library-for-ghci
30124 compile library for use with GHCi
30125
30126 --enable-split-sections
30127 --disable-split-sections
30128 compile library code such that unneeded definitions can
30129 be dropped from the final executable (GHC 7.8+)
30130
30131 --enable-split-objs
30132 --disable-split-objs
30133 split library into smaller objects to reduce binary sizes
30134 (GHC 6.6+)
30135
30136 --enable-executable-stripping
30137 --disable-executable-stripping
30138 strip executables upon installation to reduce binary
30139 sizes
30140
30141 --enable-library-stripping
30142 --disable-library-stripping
30143 strip libraries upon installation to reduce binary sizes
30144
30145 --configure-option OPT
30146 Extra option for configure
30147
30148 --user
30149 --global
30150 doing a per-user installation
30151
30152 --package-db DB
30153 Append the given package database to the list of package
30154 databases used (to satisfy dependencies and register
30155 into). May be a specific file, 'global' or 'user'. The
30156 initial list is ['global'], ['global', 'user'], or
30157 ['global', $sandbox], depending on context. Use 'clear'
30158 to reset the list to empty. See the user guide for
30159 details.
30160
30161 -f, --flags FLAGS
30162 Force values for the given flags in Cabal conditionals in
30163 the .cabal file. E.g., --flags="debug -usebytestrings"
30164 forces the flag "debug" to true and "usebytestrings" to
30165 false.
30166
30167 --extra-include-dirs PATH
30168 A list of directories to search for header files
30169
30170 --enable-deterministic
30171 --disable-deterministic
30172 Try to be as deterministic as possible (used by the test
30173 suite)
30174
30175 --ipid IPID
30176 Installed package ID to compile this package as
30177
30178 --cid CID
30179 Installed component ID to compile this component as
30180
30181 --extra-lib-dirs PATH
30182 A list of directories to search for external libraries
30183
30184 --extra-framework-dirs PATH
30185 A list of directories to search for external frameworks
30186 (OS X only)
30187
30188 --extra-prog-path PATH
30189 A list of directories to search for required programs (in
30190 addition to the normal search locations)
30191
30192 --instantiate-with NAME=MOD
30193 A mapping of signature names to concrete module instanti‐
30194 ations.
30195
30196 --enable-tests
30197 --disable-tests
30198 dependency checking and compilation for test suites
30199 listed in the package description file.
30200
30201 --enable-coverage
30202 --disable-coverage
30203 build package with Haskell Program Coverage. (GHC only)
30204
30205 --enable-library-coverage
30206 --disable-library-coverage
30207 build package with Haskell Program Coverage. (GHC only)
30208 (DEPRECATED)
30209
30210 --enable-benchmarks
30211 --disable-benchmarks
30212 dependency checking and compilation for benchmarks listed
30213 in the package description file.
30214
30215 --enable-relocatable
30216 --disable-relocatable
30217 building a package that is relocatable. (GHC only)
30218
30219 --disable-response-files
30220 enable workaround for old versions of programs like "ar"
30221 that do not support @file arguments
30222
30223 --allow-depending-on-private-libs
30224 Allow depending on private libraries. If set, the library
30225 visibility check MUST be done externally.
30226
30227 --with-alex PATH
30228 give the path to alex
30229
30230 --with-ar PATH
30231 give the path to ar
30232
30233 --with-c2hs PATH
30234 give the path to c2hs
30235
30236 --with-cpphs PATH
30237 give the path to cpphs
30238
30239 --with-doctest PATH
30240 give the path to doctest
30241
30242 --with-gcc PATH
30243 give the path to gcc
30244
30245 --with-ghc PATH
30246 give the path to ghc
30247
30248 --with-ghc-pkg PATH
30249 give the path to ghc-pkg
30250
30251 --with-ghcjs PATH
30252 give the path to ghcjs
30253
30254 --with-ghcjs-pkg PATH
30255 give the path to ghcjs-pkg
30256
30257 --with-greencard PATH
30258 give the path to greencard
30259
30260 --with-haddock PATH
30261 give the path to haddock
30262
30263 --with-happy PATH
30264 give the path to happy
30265
30266 --with-haskell-suite PATH
30267 give the path to haskell-suite
30268
30269 --with-haskell-suite-pkg PATH
30270 give the path to haskell-suite-pkg
30271
30272 --with-hmake PATH
30273 give the path to hmake
30274
30275 --with-hpc PATH
30276 give the path to hpc
30277
30278 --with-hsc2hs PATH
30279 give the path to hsc2hs
30280
30281 --with-hscolour PATH
30282 give the path to hscolour
30283
30284 --with-jhc PATH
30285 give the path to jhc
30286
30287 --with-ld PATH
30288 give the path to ld
30289
30290 --with-pkg-config PATH
30291 give the path to pkg-config
30292
30293 --with-runghc PATH
30294 give the path to runghc
30295
30296 --with-strip PATH
30297 give the path to strip
30298
30299 --with-tar PATH
30300 give the path to tar
30301
30302 --with-uhc PATH
30303 give the path to uhc
30304
30305 --alex-option OPT
30306 give an extra option to alex (no need to quote options
30307 containing spaces)
30308
30309 --ar-option OPT
30310 give an extra option to ar (no need to quote options con‐
30311 taining spaces)
30312
30313 --c2hs-option OPT
30314 give an extra option to c2hs (no need to quote options
30315 containing spaces)
30316
30317 --cpphs-option OPT
30318 give an extra option to cpphs (no need to quote options
30319 containing spaces)
30320
30321 --doctest-option OPT
30322 give an extra option to doctest (no need to quote options
30323 containing spaces)
30324
30325 --gcc-option OPT
30326 give an extra option to gcc (no need to quote options
30327 containing spaces)
30328
30329 --ghc-option OPT
30330 give an extra option to ghc (no need to quote options
30331 containing spaces)
30332
30333 --ghc-pkg-option OPT
30334 give an extra option to ghc-pkg (no need to quote options
30335 containing spaces)
30336
30337 --ghcjs-option OPT
30338 give an extra option to ghcjs (no need to quote options
30339 containing spaces)
30340
30341 --ghcjs-pkg-option OPT
30342 give an extra option to ghcjs-pkg (no need to quote
30343 options containing spaces)
30344
30345 --greencard-option OPT
30346 give an extra option to greencard (no need to quote
30347 options containing spaces)
30348
30349 --haddock-option OPT
30350 give an extra option to haddock (no need to quote options
30351 containing spaces)
30352
30353 --happy-option OPT
30354 give an extra option to happy (no need to quote options
30355 containing spaces)
30356
30357 --haskell-suite-option OPT
30358 give an extra option to haskell-suite (no need to quote
30359 options containing spaces)
30360
30361 --haskell-suite-pkg-option OPT
30362 give an extra option to haskell-suite-pkg (no need to
30363 quote options containing spaces)
30364
30365 --hmake-option OPT
30366 give an extra option to hmake (no need to quote options
30367 containing spaces)
30368
30369 --hpc-option OPT
30370 give an extra option to hpc (no need to quote options
30371 containing spaces)
30372
30373 --hsc2hs-option OPT
30374 give an extra option to hsc2hs (no need to quote options
30375 containing spaces)
30376
30377 --hscolour-option OPT
30378 give an extra option to hscolour (no need to quote
30379 options containing spaces)
30380
30381 --jhc-option OPT
30382 give an extra option to jhc (no need to quote options
30383 containing spaces)
30384
30385 --ld-option OPT
30386 give an extra option to ld (no need to quote options con‐
30387 taining spaces)
30388
30389 --pkg-config-option OPT
30390 give an extra option to pkg-config (no need to quote
30391 options containing spaces)
30392
30393 --runghc-option OPT
30394 give an extra option to runghc (no need to quote options
30395 containing spaces)
30396
30397 --strip-option OPT
30398 give an extra option to strip (no need to quote options
30399 containing spaces)
30400
30401 --tar-option OPT
30402 give an extra option to tar (no need to quote options
30403 containing spaces)
30404
30405 --uhc-option OPT
30406 give an extra option to uhc (no need to quote options
30407 containing spaces)
30408
30409 --alex-options OPTS
30410 give extra options to alex
30411
30412 --ar-options OPTS
30413 give extra options to ar
30414
30415 --c2hs-options OPTS
30416 give extra options to c2hs
30417
30418 --cpphs-options OPTS
30419 give extra options to cpphs
30420
30421 --doctest-options OPTS
30422 give extra options to doctest
30423
30424 --gcc-options OPTS
30425 give extra options to gcc
30426
30427 --ghc-options OPTS
30428 give extra options to ghc
30429
30430 --ghc-pkg-options OPTS
30431 give extra options to ghc-pkg
30432
30433 --ghcjs-options OPTS
30434 give extra options to ghcjs
30435
30436 --ghcjs-pkg-options OPTS
30437 give extra options to ghcjs-pkg
30438
30439 --greencard-options OPTS
30440 give extra options to greencard
30441
30442 --haddock-options OPTS
30443 give extra options to haddock
30444
30445 --happy-options OPTS
30446 give extra options to happy
30447
30448 --haskell-suite-options OPTS
30449 give extra options to haskell-suite
30450
30451 --haskell-suite-pkg-options OPTS
30452 give extra options to haskell-suite-pkg
30453
30454 --hmake-options OPTS
30455 give extra options to hmake
30456
30457 --hpc-options OPTS
30458 give extra options to hpc
30459
30460 --hsc2hs-options OPTS
30461 give extra options to hsc2hs
30462
30463 --hscolour-options OPTS
30464 give extra options to hscolour
30465
30466 --jhc-options OPTS
30467 give extra options to jhc
30468
30469 --ld-options OPTS
30470 give extra options to ld
30471
30472 --pkg-config-options OPTS
30473 give extra options to pkg-config
30474
30475 --runghc-options OPTS
30476 give extra options to runghc
30477
30478 --strip-options OPTS
30479 give extra options to strip
30480
30481 --tar-options OPTS
30482 give extra options to tar
30483
30484 --uhc-options OPTS
30485 give extra options to uhc
30486
30487 --cabal-lib-version VERSION
30488 Select which version of the Cabal lib to use to build
30489 packages (useful for testing).
30490
30491 --constraint CONSTRAINT
30492 Specify constraints on a package (version,
30493 installed/source, flags)
30494
30495 --preference CONSTRAINT
30496 Specify preferences (soft constraints) on the version of
30497 a package
30498
30499 --solver SOLVER
30500 Select dependency solver to use (default: modular).
30501 Choices: modular.
30502
30503 --allow-older [DEPS]
30504 Ignore lower bounds in all dependencies or DEPS
30505
30506 --allow-newer [DEPS]
30507 Ignore upper bounds in all dependencies or DEPS
30508
30509 --write-ghc-environment-files always|never|ghc8.4.4+
30510 Whether to create a .ghc.environment file after a suc‐
30511 cessful build (v2-build only)
30512
30513
30514 cabal v1-sandbox
30515
30516 Usage: cabal v1-sandbox init [FLAGS]
30517 or: cabal v1-sandbox delete [FLAGS]
30518 or: cabal v1-sandbox add-source [FLAGS] PATHS
30519 or: cabal v1-sandbox delete-source [FLAGS] PATHS
30520 or: cabal v1-sandbox list-sources [FLAGS]
30521 or: cabal v1-sandbox hc-pkg [FLAGS] [--] COMMAND [--] [ARGS]
30522
30523
30524 Sandboxes are isolated package databases that can be used to prevent
30525 dependency conflicts that arise when many different packages are
30526 installed in the same database (i.e. the user's database in the home
30527 directory).
30528
30529 A sandbox in the current directory (created by `v1-sandbox init`) will
30530 be used instead of the user's database for commands such as
30531 `v1-install` and `v1-build`. Note that (a directly invoked) GHC will
30532 not automatically be aware of sandboxes; only if called via appropriate
30533 cabal commands, e.g. `v1-repl`, `v1-build`, `v1-exec`.
30534
30535 Currently, cabal will not search for a sandbox in folders above the
30536 current one, so cabal will not see the sandbox if you are in a sub‐
30537 folder of a sandbox.
30538
30539 Subcommands:
30540
30541 init:
30542 Initialize a sandbox in the current directory. An existing package
30543 database
30544 will not be modified, but settings (such as the location of the data‐
30545 base)
30546 can be modified this way.
30547
30548 delete:
30549 Remove the sandbox; deleting all the packages installed inside.
30550
30551 add-source:
30552 Make one or more local packages available in the sandbox. PATHS may
30553 be
30554 relative or absolute. Typical usecase is when you need to make a
30555 (temporary)
30556 modification to a dependency: You download the package into a differ‐
30557 ent
30558 directory, make the modification, and add that directory to the sand‐
30559 box with
30560 `add-source`.
30561
30562 Unless given `--snapshot`, any add-source'd dependency that was modi‐
30563 fied
30564 since the last build will be re-installed automatically.
30565
30566 delete-source:
30567 Remove an add-source dependency; however, this will not delete the
30568 package(s) that have been installed in the sandbox from this depen‐
30569 dency. You
30570 can either unregister the package(s) via `cabal v1-sandbox hc-pkg
30571 unregister` or re-create the sandbox (`v1-sandbox delete; v1-sandbox
30572 init`).
30573
30574 list-sources:
30575 List the directories of local packages made available via `cabal
30576 v1-sandbox
30577 add-source`.
30578
30579 hc-pkg:
30580 Similar to `ghc-pkg`, but for the sandbox package database. Can be
30581 used to
30582 list specific/all packages that are installed in the sandbox. For
30583 subcommands, see the help for ghc-pkg. Affected by the compiler ver‐
30584 sion
30585 specified by `v1-configure`.
30586
30587
30588
30589 Relevant global configuration keys:
30590 require-sandbox
30591 ignore-sandbox
30592
30593 Examples:
30594 Set up a sandbox with one local dependency, located at ../foo:
30595 cabal v1-sandbox init
30596 cabal v1-sandbox add-source ../foo
30597 cabal v1-install --only-dependencies
30598 Reset the sandbox:
30599 cabal v1-sandbox delete
30600 cabal v1-sandbox init
30601 cabal v1-install --only-dependencies
30602 List the packages in the sandbox:
30603 cabal v1-sandbox hc-pkg list
30604 Unregister the `broken` package from the sandbox:
30605 cabal v1-sandbox hc-pkg -- --force unregister broken
30606
30607 The v1-sandbox command is a part of the legacy v1 style of cabal usage.
30608
30609 It is a legacy feature and will be removed in a future release of
30610 cabal-install. Please file a bug if you cannot replicate a working v1-
30611 use case with the new-style commands.
30612
30613 For more information, see: https://wiki.haskell.org/Cabal/NewBuild
30614
30615
30616 Flags:
30617 -v, --verbose [n]
30618 Control verbosity (n is 0--3, default verbosity level is
30619 1)
30620
30621 --snapshot
30622 Take a snapshot instead of creating a link (only applies
30623 to 'add-source')
30624
30625 --sandbox DIR
30626 Sandbox location (default: './.cabal-sandbox').
30627
30628
30629
30631 ~/.cabal/config
30632 The defaults that can be overridden with command-line options.
30633
30634 ~/.cabal/world
30635 A list of all packages whose installation has been explicitly
30636 requested.
30637
30638
30640 To browse the list of known issues or report a new one please see
30641 https://github.com/haskell/cabal/labels/cabal-install.
30642
30643
30644
30645
30646 CABAL(1)