2020-07-10 13:43:08 +03:00
|
|
|
package idris2app
|
2020-05-18 02:28:24 +03:00
|
|
|
|
2021-02-27 20:58:52 +03:00
|
|
|
depends = network
|
2020-05-18 02:28:24 +03:00
|
|
|
|
|
|
|
sourcedir = "src"
|
|
|
|
|
2022-04-13 12:17:47 +03:00
|
|
|
-- Set if you want the build to output timing data
|
|
|
|
-- opts = "--timing 1"
|
|
|
|
|
2021-04-29 17:18:59 +03:00
|
|
|
-- Set if you want the executable to generate profiling data
|
|
|
|
-- (Currently supported by Racket and Chez back ends, others ignore it)
|
|
|
|
-- opts = "--profile"
|
|
|
|
|
Support for incremental compilation with Chez
This adds a new flag '--inc <backend>' which, if set, compiles all
modules incrementally, and for executables, links the incrementally
compiled modules rather than building the whole program.
Also, adds an environment variable IDRIS2_INC_CGS for providing a comma
separated list of backends to use for incremental builds.
Also, adds '--whole-program', which overrides incremental builds for an
executable.
Incremental builds are much faster if there's nothing to recompile, but
for the Chez backend, generate code which runs at about half the speed.
Currently only works for Chez - other backends ignore the flag.
Also, incremental building of an executable will only work if *all*
required modules have been built incrementally for the backend in use.
2021-06-27 17:40:23 +03:00
|
|
|
-- Set if you want incremental builds. This is good for development, since
|
|
|
|
-- small changes compile faster, but bad for deployment since the resulting
|
|
|
|
-- executable runs at around half the speed.
|
|
|
|
-- (Alternatively: set the environment variable IDRIS2_INC_CGS=chez)
|
|
|
|
-- For this to work, you need to do the initial incremental build from clean.
|
|
|
|
-- opts = "--inc chez"
|
|
|
|
|
2020-05-18 11:49:51 +03:00
|
|
|
main = Idris.Main
|
2020-05-20 15:31:04 +03:00
|
|
|
executable = idris2
|