---
name: "bdepend"
section: "1"
platform: "linux"
package: "bigloo"
version: "2.6e-1"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/bdepend"
---

# bdepend(1)

create Bigloo dependencies in makefiles

## NAME

bdepend - create Bigloo dependencies in makefiles

## SYNOPSIS

**bdepend** \[ options \] *sourcefile ...*

## DESCRIPTION

**bdepend** program reads each *sourcefile* in sequence and  parses it to find the module **include** and **import** module directives. **bdepend** computes the transitive closure of the import relationship. That is, it is sufficient to provide **bdepend** with a single Bigloo file that  imports all the project file (e.g. the "main" file.)

Every  file  that a *sourcefile* includes, directly or indirectly,  is what **bdepend** calls a *dependency*. These dependencies are then written to a *makefile* in such a way that **[make(1)](/make/1.md)** will know  which object files must be recompiled when a dependency has changed.

By default, **bdepend** writes its output on the standard output device. If **bdepend** is provided with a **-o** *makefile* option,  it will update the *makefile* file. That is, it will search the makefile  for the line:

 \# bdepend start (don't edit)

and

 \# bdepend stop

Dependencies will be written in between these two lines.

## OPTIONS

-

  - file

  Is an file implementing a module.  **Afile** reads that file to discover the name of the implemented module.

- \-search-path \<path\>

  Add *path* to the directory list read for searching Bigloo source files.

- \-exclude-path \<path\>

  Exclude *path* from the directory list read for searching Bigloo  source files.

- \-suffix \<suf\>

  Adds *suf* to the **bmake** source file suffixes list. Default  suffixes are "scm", "sch" and "bgl".

- \-v

  Verbose mode

- \-o \<makefile\>

  The name of the *makefile* file to be updated

## EXAMPLE

Normally,  **bdepend** will be used in a makefile target so that typing \`\`make bdepend'' will bring the dependencies up to date for the makefile.  For example,

   MAIN=foo.scm

   SRCS = $(MAIN) bar.scm gee.scm

   bdepend:

       bdepend -o Makefile $(MAIN)

## SEE ALSO

[bigloo(1)](/bigloo/1.md), [afile(1)](/afile/1.md), [bmake(1)](/bmake/1.md), [bpp(1)](/bpp/1.md), [bprof(1)](/bprof/1.md), [btags(1)](/btags/1.md), [makedepend(1)](/makedepend/1.md), [make(1)](/make/1.md)

## AUTHOR

Manuel SERRANO, Manuel.Serrano@inria.fr
