0ad/build/premake/premake5/modules/d
Itms 2c167153e9 Upgrade premake5 from alpha12 to alpha13, refs #3729.
Fixes an issue on macOS Mojave that was patched in fa1c281e79.

The list of changes can be found under
build/premake/premake5/CHANGES.txt.

This was SVN commit r22021.
2019-01-04 21:20:45 +00:00
..
actions Upgrade premake5 from alpha12 to alpha13, refs #3729. 2019-01-04 21:20:45 +00:00
tests Upgrade premake5 from alpha12 to alpha13, refs #3729. 2019-01-04 21:20:45 +00:00
tools Upgrade premake5 from alpha12 to alpha13, refs #3729. 2019-01-04 21:20:45 +00:00
_manifest.lua Upgrade premake5 from alpha12 to alpha13, refs #3729. 2019-01-04 21:20:45 +00:00
_preload.lua Upgrade premake5 from alpha12 to alpha13, refs #3729. 2019-01-04 21:20:45 +00:00
d.lua Upgrade premake5 from alpha12 to alpha13, refs #3729. 2019-01-04 21:20:45 +00:00
LICENSE.txt Alpha 12 version of Premake 5, including prebuilt binary for Windows. 2017-10-28 16:10:49 +00:00
README.md Upgrade premake5 from alpha12 to alpha13, refs #3729. 2019-01-04 21:20:45 +00:00

Premake Extension to support the D language

Features

  • Support actions: gmake, vs20xx (VisualD)
  • Support all compilers; DMD, LDC, GDC
  • Support combined and separate compilation

Usage

Simply add:

language "D"

to your project definition and populate with .d files.
C and C++ projects that include .d files will also support some of the API below. Any API tagged with (D/C/C++) works in D and C/C++ projects. Any API tagged with (C/C++) only works for .d files in C/C++ projects.

APIs

D

C/C++

  • flags
    • CodeCoverage
    • UnitTest
    • Verbose
    • Profile
    • ProfileGC
    • StackFrame
    • StackStomp
    • AllTemplateInst
    • BetterC
    • Main
    • ShowCommandLine
    • ShowTLS
    • ShowGC
    • IgnorePragma
    • ShowDependencies
  • versionconstants
  • debugconstants
  • docdir
  • docname
  • headerdir
  • headername
  • dependenciesfile ("filename")
  • jsonfile ("filename")
  • importpaths { "paths" }
  • stringimportpaths { "paths" }
  • compilationmodel ("model") [ Project, Package, File ]
  • runtime ("type") [ Debug, Release ]
  • staticruntime ("state") [ on, off ]
  • optimize
  • inlining
  • boundscheck ("type") [Off, SafeOnly, On]
  • deprecatedfeatures ("feature") [ Error, Info, Allow ]

Example

The contents of your premake5.lua file would be:

solution "MySolution"
    configurations { "release", "debug" }

    project "MyDProject"
        kind "ConsoleApp"
        language "D"
        files { "src/main.d", "src/extra.d" }