-
Notifications
You must be signed in to change notification settings - Fork 1
Modified Godag
License
ssrl/mgd
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
About:
------------------------------------------------------------
This program will hopefully make it easier to compile
source code in the go programming language.
A dependency graph is constructed from imports, this
is sorted with a topological sort to figure out legal
compile order. [865]g and [865]l is used to compile and
link program. Testing and formatting is also automated.
Install: [Linux/Unix]
------------------------------------------------------------
Run the script ./build.sh
1) compile (+link) the source code
2) move binary (gd) to $HOME/bin
NOTE: If $HOME/bin is not present, it falls
back to $GOBIN, which is required now.
./build.sh help to see all available targets
Install: [Windows] (experimental)
------------------------------------------------------------
Run the script ./build.bat install
1) compile (+link) the source code
2) move binary (gd) to $GOBIN
Try it Out:
------------------------------------------------------------
You can try to compile the same source using the generated
executable: gd
$ gd src # will compile source inside src
$ gd -p src # will print dependency info gathered
$ gd -s src # will print legal compile order
$ gd src -test # will run unit-tests
$ gd src -fmt # will format (gofmt) the source-code
$ gd src -o gd # will compile and link executable
$ gd -e src # will goinstall external dependencies
Philosophy (Babble?)
------------------------------------------------------------
Without a tool to figure out which order the source should
be compiled, Makefiles are usually the result. Makefiles
are static in nature, which make them a poor choice to handle
a dynamic problem like a changing source tree. They also make
flat structures quite common, since this usually simplifies
the Makefiles, but makes organisation far less intuitive than
a directory-tree package-structure.
Completion
------------------------------------------------------------
A small completion script for bash is placed in util/
Logo
------------------------------------------------------------
The logo was made with LaTeX and tikz, it's basically just
an upside down g filled with yellow..
=start LaTeX
\documentclass[12pt]{article}
\usepackage{tikz}
\usepackage{nopageno}
\begin{document}
\begin{tikzpicture}[remember picture,overlay]
\node [scale=75,fill=black!100,opacity=.8, rounded corners]
at (current page.center) {};
\node [rotate=180,scale=63,text opacity=0.9,yellow]
at (current page.center) {g};
\end{tikzpicture}
\end{document}
=end LaTeX
-bjarneh
About
Modified Godag
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published