List of configuration flags
Note that the _ after lib. in all the names below should be replaced by the identifier of the library.
ammer.buildPathammer.debugammer.outputPathammer.lib._.definesammer.lib._.frameworksammer.lib._.headers.includesammer.lib._.includePathsammer.lib._.languageammer.lib._.libraryPathsammer.lib._.linkNames
ammer.buildPath:String
Path used for intermediate build artefacts. These include the C glue code generated by ammer, as well as compiled binary objects, before they are packaged into dynamic libraries. See paths.
Compile-time defines
-D ammer.buildPath=(string)— sets the build path.
ammer.debug:String
Sets the debug mode for ammer. The value is a comma-separated list of categories of debug messages to show. The available categories are:
stagestage-ffi
The flag can be set to the string all to enable all of the above.
Compile-time defines
-D ammer.debug=(comma-separated list)— sets the debug mode.
ammer.outputPath:String
Path used for final build products. These are dynamic libraries compiled by ammer that would typically be deployed with the program using them. See paths.
Compile-time defines
-D ammer.outputPath=(string)— sets the output path.
ammer.lib._.defines:Array<String>
List of C preprocessor directives to set when compiling the library.
Compile-time defines
-D ammer.lib._.define=(string)— adds one entry to the list.-D ammer.lib._.defines=(comma-separated list)— adds multiple entries to the list.
Metadata (on a library definition)
@:ammer.lib.define(define:String)— adds one entry to the list.@:ammer.lib.defines(defines:Array<String>)— adds multiple entries to the list.
ammer.lib._.frameworks:Array<String>
List of frameworks to use when compiling the library. Only has an effect on macOS.
Compile-time defines
-D ammer.lib._.framework=(string)— adds one entry to the list.-D ammer.lib._.frameworks=(comma-separated list)— adds multiple entries to the list.
Metadata (on a library definition)
@:ammer.lib.framework(framework:String)— adds one entry to the list.@:ammer.lib.frameworks(frameworks:Array<String>)— adds multiple entries to the list.
ammer.lib._.headers.includes:Array<SourceInclude>
List of headers to include when compiling the library. There are four different include styles:
IncludeLocal—#include "header.h"IncludeGlobal—#include <header.h>ImportLocal—#import "header.h"ImportGlobal—#import <header.h>
Compile-time defines
-D ammer.lib._.headers=(comma-separated list)— adds multiple entries to the list, asIncludeLocals.-D ammer.lib._.headers.includeLocal=(string)— adds one entry to the list, asIncludeLocal.-D ammer.lib._.headers.includeGlobal=(string)— adds one entry to the list, asIncludeGlobal.-D ammer.lib._.headers.importLocal=(string)— adds one entry to the list, asImportLocal.-D ammer.lib._.headers.importGlobal=(string)— adds one entry to the list, asImportGlobal.
Metadata (on a library definition)
@:ammer.lib.headers.include(header:String)— adds one entry to the list, asIncludeLocal.@:ammer.lib.headers.import(header:String)— adds one entry to the list, asImportLocal.@:ammer.lib.headers.includeLocal(header:String)— adds one entry to the list, asIncludeLocal.@:ammer.lib.headers.includeGlobal(header:String)— adds one entry to the list, asIncludeGlobal.@:ammer.lib.headers.importLocal(header:String)— adds one entry to the list, asImportLocal.@:ammer.lib.headers.importGlobal(header:String)— adds one entry to the list, asImportGlobal.
ammer.lib._.includePaths:Array<String>
Paths to provide to the C compiler as "include paths", which are used when searching for header files.
Compile-time defines
-D ammer.lib._.includePaths=(comma-separated list)— adds multiple entries to the list.
Metadata (on a library definition)
@:ammer.lib.includePath(path:String)— adds one entry to the list.@:ammer.lib.includePaths(paths:Array<String>)— adds multiple entries to the list.
ammer.lib._.language:LibraryLanguage
Specifies the language of the native library. This language is also used for generating the glue code. Possible values:
C- CCpp- C++ObjC- Objective-CObjCpp- Objective-C++
Compile-time defines
-D ammer.lib._.language=(string)— sets the language.
Metadata (on a library definition)
@:ammer.lib.language(language:LibraryLanguage)— sets the language.
ammer.lib._.libraryPaths:Array<String>
Paths to provide to the C compiler (more accurately, the linker) as "library paths", which are used when searching for library files (.dll, .dylib, .so files).
Compile-time defines
-D ammer.lib._.libraryPaths=(comma-separated list)— adds multiple entries to the list.
Metadata (on a library definition)
@:ammer.lib.libraryPath(path:String)— adds one entry to the list.@:ammer.lib.libraryPaths(paths:Array<String>)— adds multiple entries to the list.
ammer.lib._.linkNames:Array<String>
Names of libraries to link against when compiling this native library. Should not include prefixes such as -l or lib.
Compile-time defines
-D ammer.lib._.linkNames=(comma-separated list)— adds multiple entries to the list.
Metadata (on a library definition)
@:ammer.lib.linkName(path:String)— adds one entry to the list.@:ammer.lib.linkNames(paths:Array<String>)— adds multiple entries to the list.