summaryrefslogtreecommitdiffstats
path: root/development/fpc/instantfpc.1
diff options
context:
space:
mode:
Diffstat (limited to 'development/fpc/instantfpc.1')
-rw-r--r--development/fpc/instantfpc.182
1 files changed, 82 insertions, 0 deletions
diff --git a/development/fpc/instantfpc.1 b/development/fpc/instantfpc.1
new file mode 100644
index 0000000000..d82eddf644
--- /dev/null
+++ b/development/fpc/instantfpc.1
@@ -0,0 +1,82 @@
+.TH instantfpc 1 "5 Sep 2021" "Free Pascal" "Instant pascal code interpreter"
+.SH NAME
+instantfpc \- The Free Pascal Interpreter.
+
+.SH SYNOPSIS
+
+.B instantfpc
+[\fI\-h\fR] [\fI\-v\fR] [\fIcompiler options\fR] <\fIsource file\fR>
+[\fIprogram arguments\fR]
+
+.SH DESCRIPTION
+
+.B instantfpc
+is a Pascal code interpreter program. It compiles source and runs the
+generated program. It allows Pascal source code to be treated like a script,
+by placing
+.B #!/usr/bin/env instantfpc
+as the 'shebang' line at the top of the Pascal source file.
+
+To avoid recompiling source when it hasn't changed,
+.B instantfpc
+keeps a cache (see
+.B \-\-set\-cache
+option). When
+.B instantfpc
+is run,
+the source is compared with the cache. If the cached source is not valid, then source is
+copied to the cache with the shebang line commented out, and the cached source is compiled.
+If compilation fails, the \fBfpc\fR output is written to stdout and an exit code of 1
+is returned.
+
+If compilation is successful, the program is executed.
+If \fIprogram arguments\fR were given, they are passed to the compiled program
+when it is run.
+
+If the compiler options contains \fB\-B\fR, the program is always recompiled.
+
+If the environment variable
+.B INSTANTFPCOPTIONS
+is set, it is passed to the compiler as
+the first argument(s).
+
+.SH NOTE
+
+.B instantfpc
+is also installed as
+.B ifpc
+for compatibility with older versions of Free Pascal.
+
+.SH USAGE
+
+.B instantfpc
+takes the following arguments:
+.TP
+.B \-h
+Prints this help message and exit.
+.TP
+.B \-v
+Prints version and exit.
+.TP
+.B \-\-get\-cache
+Prints current cache directory and exit.
+.TP
+.B \-\-set\-cache=<path to cache>
+Set the cache to be used. Otherwise uses environment variable
+.B INSTANTFPCCACHE
+if set, or
+.B $HOME/.cache/instantfpc/
+otherwise.
+.TP
+.B \-\-compiler=<path to compiler>
+Normally \fBfpc\fR is searched in PATH and used as compiler.
+.TP
+.B \-\-skip\-run
+Do not execute the program. Useful to test if script compiles.
+.TP
+.B \-B
+Always recompile.
+
+.SH SEE ALSO
+.IP
+.BR fpc (1)