Previous: project-am-makefile, Up: Project

#### 7.5.8 ede-step-project

Inheritance Tree:
  `eieio-speedbar`
    `eieio-speedbar-directory-button`
      `See ede-project-placeholder.`
        `See ede-project.`
          `ede-step-project`
            No children

Slots:
  `:init-variables`
    Type: `list`
    Default Value: `nil`

    Variables to set in this Makefile, at top of file.

  `:additional-variables`
    Type: `(or null list)`
    Default Value: `nil`

    Arbitrary variables needed from this project. It is safe to leave this blank.

  `:additional-rules`
    Type: `(or null list)`
    Default Value: `nil`

    Arbitrary rules and dependencies needed to make this target. It is safe to leave this blank.

  `:installation-domain`
    Type: `symbol`
    Default Value: `user`

    Installation domain specification. The variable GNUSTEP_INSTALLATION_DOMAIN is set at this value.

  `:preamble`
    Type: `(or null list)`
    Default Value: `(quote ("GNUmakefile.preamble"))`

    The auxiliary makefile for additional variables. Included just before the specific target files.

  `:postamble`
    Type: `(or null list)`
    Default Value: `(quote ("GNUmakefile.postamble"))`

    The auxiliary makefile for additional rules. Included just after the specific target files.

  `:metasubproject`
    Type: `boolean`
    Default Value: `nil`

    Non-`nil` if this is a metasubproject. Usually, a subproject is determined by a parent project. If multiple top level projects are grouped into a large project not maintained by EDE, then you need to set this to non-nil. The only effect is that the `dist` rule will then avoid making a tar file.

##### 7.5.8.1 Specialized Methods

— Method: ede-proj-makefile-create :AFTER this mfilename

> Create a GNUmakefile for all Makefile targets in THIS. MFILENAME is the makefile to generate.

— Method: project-make-dist :AFTER this

> Build a distribution for the project based on THIS target.

— Method: ede-proj-makefile-create-maybe :AFTER this mfilename

> Create a Makefile for all Makefile targets in THIS if needed. MFILENAME is the makefile to generate.

— Method: ede-proj-setup-buildenvironment :AFTER this &optional force

> Setup the build environment for project THIS. Handles the Makefile, or a Makefile.am configure.in combination. Optional argument FORCE will force items to be regenerated.

— Method: eieio-done-customizing :AFTER proj

> Call this when a user finishes customizing this object. Argument PROJ is the project to save.

— Method: ede-proj-dist-makefile :AFTER this

> Return the name of the Makefile with the DIST target in it for THIS.

— Method: ede-commit-project :AFTER proj

> Commit any change to PROJ to its file.

— Method: project-dist-files :AFTER this

> Return a list of files that constitutes a distribution of THIS project.

— Method: ede-commit-local-variables :AFTER proj

> Commit change to local variables in PROJ.