peterholzer / ultimake

Include file for GNU Make that hides header dependencies and provides a module system.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ultimake

Ultimake is good

  • if you just want to build something quickly
  • if you have a small to medium project for one target architecture (this limitation will fall in future) that uses an external library with a crappy makefile.
  • if your project is too big or your too lazy for maintaining makefiles but you still want to use GNU Make (or you just don't want to use anything else)

Usage

Create a normal makefile.

Ultimake works with normal makefiles. You can mix it with make commands. In the first part of the makefile you will describe your targets. A target may be an executable or a library and targets may depend on each other. Every target gets its own CPPFLAGS, CFLAGS, CPPFLAGS, CXXFLAGS and LDFLAGS.

To create a new target named 'FooBar' add its name to the TARGETS variable.

TARGETS += FooBar

Ultimake will look for macro definitions named 'FooBar' and 'FooBar.'

FooBar =

Ultimake will automatically decide what type a target is by it's filename extension. '.a' are static libraries, '.so' dynamic libraries and else exectutables. By default, ultimake will link every application as C++, not as C, even when there are only C sources.

Features: * Create several targets at once * the targets define a path where ultimake recursively looks for source files * Ultimake outputs the automatically generated file lists and rules into a seperate Makefile for debugging or deploying software without dependency on ultimake

About

Include file for GNU Make that hides header dependencies and provides a module system.


Languages

Language:Makefile 64.8%Language:Perl 21.2%Language:Assembly 5.6%Language:C++ 5.2%Language:C 3.1%