gnu-make.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Mon, 22 Feb 2016 13:52:03 +0200
changeset 1912 8b81a8f0f692
parent 1905 fba288d59662
child 2075 ccaa2f364422
permissions -rw-r--r--
Remove HEADER.rst because that info now added to HTML template.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1299
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
     1
.. -*- coding: utf-8; -*-
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
     2
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
     3
===========
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
     4
 GNU Make.
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
     5
===========
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
     6
.. contents::
1905
fba288d59662 Include only local subsections into TOC. This prevent duplication of
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
     7
   :local:
444
b9c1a39a9284 Fix CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 421
diff changeset
     8
1301
55aeffa6c8a5 Make docs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1299
diff changeset
     9
Make docs.
55aeffa6c8a5 Make docs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1299
diff changeset
    10
==========
1299
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    11
1301
55aeffa6c8a5 Make docs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1299
diff changeset
    12
  http://make.paulandlesley.org/ http://mad-scientist.net/make/
55aeffa6c8a5 Make docs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1299
diff changeset
    13
                Paul D. Smith page about make.
55aeffa6c8a5 Make docs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1299
diff changeset
    14
  http://make.paulandlesley.org/autodep.html
55aeffa6c8a5 Make docs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1299
diff changeset
    15
                Advanced Auto-Dependency Generation
1299
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    16
  http://miller.emu.id.au/pmiller/books/rmch/
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    17
                "Recursive Make Considered Harmful" home page.
1301
55aeffa6c8a5 Make docs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1299
diff changeset
    18
  http://evbergen.home.xs4all.nl/nonrecursive-make.html
55aeffa6c8a5 Make docs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1299
diff changeset
    19
                Implementing non-recursive make.
55aeffa6c8a5 Make docs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1299
diff changeset
    20
  http://www.electric-cloud.com/resources/mrmake.php
55aeffa6c8a5 Make docs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1299
diff changeset
    21
                Ask Mr. Make
1299
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    22
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    23
How view list of default make definitions.
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    24
==========================================
444
b9c1a39a9284 Fix CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 421
diff changeset
    25
b9c1a39a9284 Fix CR/LF ==> LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 421
diff changeset
    26
  $ make -p -f /dev/null
465
c05098683721 Available build tools.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 444
diff changeset
    27
1299
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    28
GNU Make Standard Library.
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    29
==========================
495
d2ff426ea714 GNU Make Standard Library.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 465
diff changeset
    30
d2ff426ea714 GNU Make Standard Library.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 465
diff changeset
    31
  http://gmsl.sourceforge.net
d2ff426ea714 GNU Make Standard Library.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 465
diff changeset
    32
                home page
d2ff426ea714 GNU Make Standard Library.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 465
diff changeset
    33
1299
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    34
GNU Make configuration.
ec63524d2b90 Split info about GNU Make and build tools. Convert to RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
    35
=======================
514
8d0977618c01 GNU Make configuration.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 495
diff changeset
    36
8d0977618c01 GNU Make configuration.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 495
diff changeset
    37
Put on top of your Makefile:
8d0977618c01 GNU Make configuration.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 495
diff changeset
    38
8d0977618c01 GNU Make configuration.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 495
diff changeset
    39
  # Disable built in pattern rules.
8d0977618c01 GNU Make configuration.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 495
diff changeset
    40
  MAKEFLAGS += -r
8d0977618c01 GNU Make configuration.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 495
diff changeset
    41
  # Disable built in variables.
8d0977618c01 GNU Make configuration.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 495
diff changeset
    42
  MAKEFLAGS += -R
8d0977618c01 GNU Make configuration.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 495
diff changeset
    43
  # Disable built in suffix rules.
8d0977618c01 GNU Make configuration.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 495
diff changeset
    44
  .SUFFIXES:
8d0977618c01 GNU Make configuration.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 495
diff changeset
    45
  # Default target.
8d0977618c01 GNU Make configuration.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 495
diff changeset
    46
  .DEFAULT_GOAL = all
8d0977618c01 GNU Make configuration.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 495
diff changeset
    47