godag


compiler front-end for google's go language

Description

Godag builds a directed acyclic graph from go source code imports. A topological sort is performed on the dependency graph to figure out compile order. The default back-end is gc [8g,6g,5g], but gccgo and express, can also be used. So for a pure go project no Makefile is necessary, testing, formatting and building external dependencies are also automated.

Update

  • Go v1.0 release

  • Documentation updated with release.Sep.16.2011 link to: old documentation

  • As of release.Feb.21.2011 a more typical golang way of organizing source-code is also supported.


  • Install
  • Compiling
  • Back-end
  • Testing
  • External Libraries
  • Formatting
  • Configuration
  • Makefiles
  • Standard Library
  • Parallel
  • Graphviz
  • Help
  • TL;DR

It's meant to be something along the lines of ant or maven for golang. It's less fancy but with virtually no configuration. Compile order of the pure go part of the standard library (73/124 packages) can be calculated in 0.028 seconds on an Intel Core i5 2.80GHz CPU (compiles in < 1.5 seconds, with a Parallel approach).



3 min tutorial

A hello world example of how to compile and test a minimal multi-package project.

http://www.youtube.com/watch?feature=player_embedded&v=sxPHOoTf8J4' target='_blank'>http://img.youtube.com/vi/sxPHOoTf8J4/0.jpg' width='597' height=390 />

Project Information

Labels:
go golang make ant maven