Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/opatut/d-build-system
Very simple build system for d language.
https://github.com/opatut/d-build-system
Last synced: 15 days ago
JSON representation
Very simple build system for d language.
- Host: GitHub
- URL: https://github.com/opatut/d-build-system
- Owner: opatut
- License: gpl-3.0
- Created: 2012-04-02T19:19:01.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2012-05-02T13:13:41.000Z (over 12 years ago)
- Last Synced: 2024-05-01T19:38:41.653Z (6 months ago)
- Language: D
- Homepage:
- Size: 153 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# DBS - D Build System
## What is this?
This is a build system for the [D Programming Language](http://dlang.org). It is very simple and probably will never compete with the bigger ones, like [DSSS](www.dsource.org/projects/dsss). I just wrote it for fun and as a learning effort.
## License
DBS is free software: you can redistribute it and/or modify
it under the terms of the **GNU General Public License** as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.DBS is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.You should have received a copy of the GNU General Public License
along with DBS. If not, see .## Installation
Compile DBS with `make` or manually with
dmd -odbuild/ -ofbin/dbs -Isrc/ src/*.d
Then copy the executable `bin/dbs` to your path or call it from your project root. For temporary testing, you can add the `bin/` directory to your path environment variable like this:
PATH=$PATH":"$PWD"/bin"
## Usage
Configure the targets in `DBuildFile` (see [DBuildFile Format](#readme-dbuildfile)). Then call `dbs` from your project root. For more usage information, run `dbs --help`.
# Comments look like this
compiler: DMD
libraryPath: "lib/"
binaryPath: "bin/"
default: derpDependency {
name: sfml# optional, if not provided, uses only `name`
libraries: sfml-audio sfml-graphics sfml-network sfml-system sfml-window
}External {
name: delerict
command: cd externals/Derelict3/build; rdmd derelict.d# optional, see `Dependency`
libraries: DerelictAL DerelictFT DerelictGL3 DerelictGLFW3 DerelictIL DerelictUtil# can be space-seperated list
libraryPath: externals/Derelict3/lib/# can be space-seperated list
includePath: externals/Derelict3/import/
}Target {
name: derp# can be a directory or a list of files
files: derp/# automatically generated from `files` if not provided and `files`
# is a directory
documentRoot: derp/# StaticLibrary|SharedLibrary|Executable
type: StaticLibrary# If not found, a system library is assumed (a dependency object
# will automatically be created)
depends: luajit-5.1 dl curl luad orange delerict
}