---
name: "ftjam"
section: "1"
platform: "linux"
package: "ftjam"
version: "2.5.2-1.1+b2"
release: "Debian 11 (Bullseye)"
platforms: ["linux"]
url: "https://new.carta.tech/ftjam"
---

# ftjam(1)

Make(1) Redux

## NAME

Jam/MR — Make(1) Redux

## SYNOPSIS

**ftjam** \[**-a**\]  \[**-g**\]  \[**-n**\]  \[**-q**\]  \[**-v**\]  \[**-d** *debug\]  \[***-f** *jambase\]  \[***-j** *jobs\]  \[***-o** *actionsfile\]  \[***-s** *var*=*value\]  \[***-t** *target\]  \[target ...\]*

## DESCRIPTION

*Jam is a program construction tool, like [make(1)](/make/1.md).*

*Jam recursively builds target files from source files, using*  *dependency information and updating actions expressed in the*  *Jambase file, which is written in jam's own interpreted language.*  *The default Jambase is compiled into jam and provides a*  *boilerplate for common use, relying on a user-provide file*  *"Jamfile" to enumerate actual targets and sources.*

## OPTIONS

- **-a**

  *Build all targets anyway, even if they are up-to-date.*

- **-d** *n*

  *Enable cummulative debugging levels from 1 to*  *n*. Interesting values are:

  - 1

    Show  actions (the default)

  - 2

    Show  "quiet" actions and display all action  text

  - 3

    Show  dependency analysis, and target/source  timestamps/paths

  - 4

    Show shell  arguments

  - 5

    Show rule  invocations and variable  expansions

  - 6

    Show  directory/header file/archive  scans

  - 7

    Show  variable settings

  - 8

    Show  variable fetches

  - 9

    Show  variable manipulation, scanner  tokens

- **-d +***n*

  Enable debugging level *n*.

- **-d 0**

  Turn off all debugging levels. Only errors are not  suppressed.

- **-f** *jambase*

  Read *jambase* instead of using the  built-in Jambase. Only one **-f** flag is permitted,  but the *jambase* may explicitly include other  files.

- **-g**

  Build targets with the newest sources first, rather than  in the order of appearance in the Jambase/Jamfiles.

- **-j** *n*

  Run up to *n* shell commands concurrently  (UNIX and NT only). The default is 1.

- **-n**

  Don't actually execute the updating actions, but do  everything else. This changes the debug level default to  **-d2**.

- **-o** *file*

  Write the updating actions to the specified file  instead of running them (or outputting them, as on the  Mac).

- **-q**

  Quit quickly (as if an interrupt was received)  as soon as any target build fails.

- **-s** *var*=*value*

  Set the variable *var* to  *value*, overriding both internal variables and  variables imported from the environment.

- **-t** *target*

  Rebuild *target* and everything that  depends on it, even if it is up-to-date.

- **-v**

  Print the version of ftjam and exit.

## SEE ALSO

ftjam is documented fully in HTML pages available on Debian  systems from  **/usr/share/doc/ftjam/Jam.html**.

## AUTHOR

This manual page was created by Yann Dirson dirson@debian.org from  the **Jam.html** documentation, for the **Debian GNU/Linux** system  (but may be used by others).
