Skip to content

Latest commit

 

History

History
136 lines (110 loc) · 3.46 KB

core.md

File metadata and controls

136 lines (110 loc) · 3.46 KB

DMBS - Dean's Makefile Build System

Module: CORE

The CORE module provides the core DMBS infrastructure used by other DMBS modules, and must always be imported. Additionally, this module provides the help system for DMBS.

Importing This Module into a Makefile:

To use this module in your application makefile, add the following code to your makefile:

include $(DMBS_PATH)/core.mk

Prerequisites:

None.

Build Targets:

The following targets are supported by this module:

help Show help for the current project, including a list of all available targets, variables and macros from the imported modules.
list_targets Show a list of all build targets from the imported modules.
list_modules Show a list of all imported modules.
list_mandatory Show a list of all mandatory variables from the imported modules.
list_optional Show a list of all optional variables from the imported modules.
list_provided Show a list of all variables provided by the imported modules.
list_macros Show a list of all macros provided by the imported modules.

Mandatory Variables:

The following variables must be defined (with a NAME = VALUE syntax, one variable per line) in the user makefile to be able to use this module:

N/A This module has no mandatory variables.

Optional Variables:

The following variables may be defined (with a NAME = VALUE syntax, one variable per line) in the user makefile. If not specified, a default value will be assumed.

N/A This module has no optional variables.

Provided Variables:

The following variables may be referenced in a user makefile (via $(NAME) syntax) if desired, as they are provided by this module.

DMBS_VERSION Current version of this DMBS release, as a ISO 8601 integer (such as `20160403` for `2016-04-03`).

Provided Macros:

The following macros may be referenced in a user makefile (via $(call NAME, ARG1, ARG2, ...) syntax) if desired, as they are provided by this module.

DMBS_CHECK_VERSION Macro to check the current DMBS version against the first argument and abort if the required version is newer than the current version.
ERROR_IF_UNSET Macro to check the given makefile variable name passed as the first argument, and abort if it has not been set by any makefile module.
ERROR_IF_EMPTY Macro to check the given makefile variable name passed as the first argument, and abort if it has an empty value.
ERROR_IF_NONBOOL Macro to check the given makefile variable name passed as the first argument, and abort if it has a value other than `Y` or `N`.

Module Changelog:

The changes to this module since its initial release are listed below, as of the DMBS version where the change was made.

20160403

Initial release.