1 | ## automake - create Makefile.in from Makefile.am
|
---|
2 | ## Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
|
---|
3 | ## Free Software Foundation, Inc.
|
---|
4 |
|
---|
5 | ## This program is free software; you can redistribute it and/or modify
|
---|
6 | ## it under the terms of the GNU General Public License as published by
|
---|
7 | ## the Free Software Foundation; either version 2, or (at your option)
|
---|
8 | ## any later version.
|
---|
9 |
|
---|
10 | ## This program is distributed in the hope that it will be useful,
|
---|
11 | ## but WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
12 | ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
---|
13 | ## GNU General Public License for more details.
|
---|
14 |
|
---|
15 | ## You should have received a copy of the GNU General Public License
|
---|
16 | ## along with this program; if not, write to the Free Software
|
---|
17 | ## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
---|
18 | ## 02111-1307, USA.
|
---|
19 |
|
---|
20 | ## This file is read several times:
|
---|
21 | ## - once per *extension* (not per language) for generic compilation rules
|
---|
22 | ## - once for each file which requires specific flags.
|
---|
23 |
|
---|
24 | ## Note it is on purpose we wrote `if %AMDEP%', since:
|
---|
25 | ##
|
---|
26 | ## - if deps are turned off, %AMDEP% is mapped onto FALSE, and therefore
|
---|
27 | ## the `if FALSE' chunk is removed (automake-time conditionals).
|
---|
28 | ##
|
---|
29 | ## - if deps are on, %AMDEP% is mapped onto AMDEP, and therefore
|
---|
30 | ## the `if AMDEP' chunk is prefix with @AMDEP_TRUE@ just like for any
|
---|
31 | ## other configure-time conditional.
|
---|
32 | ##
|
---|
33 | ## We do likewise for %FASTDEP%; this expands to an ordinary
|
---|
34 | ## configure-time conditional. %FASTDEP% is used to speed up the
|
---|
35 | ## common case of building a package with gcc 3.x. In this case we
|
---|
36 | ## can skip the use of depcomp and easily inline the dependency
|
---|
37 | ## tracking.
|
---|
38 |
|
---|
39 | ## Verbosity of FASTDEP rules
|
---|
40 | ## --------------------------
|
---|
41 | ## (1) Some people want to see what happen during make. They think
|
---|
42 | ## @-commands are evil because hiding things hinders debugging.
|
---|
43 | ## (2) Other people want to see only the important commands--those that
|
---|
44 | ## may produce diagnostics, such as compiler invocations. They
|
---|
45 | ## do not care about build details such as dependency generation
|
---|
46 | ## (the if/then/else machinery in FASTDEP rules). Their point is
|
---|
47 | ## that it is hard to spot diagnostics in a verbose output.
|
---|
48 | ## (3) Other people want `make -s' to work as expected: silently.
|
---|
49 | ## This way they can spot any diagnostic really easily.
|
---|
50 | ##
|
---|
51 | ## The second point suggests we hide rules with @ and that we `echo'
|
---|
52 | ## only the relevant parts. However this goes against the two others.
|
---|
53 | ## There are regular complaints about this on the mailing list, but
|
---|
54 | ## it's hard to please everybody. On April 2003, William Fulton (from
|
---|
55 | ## clan (3)) and Karl Berry (from clan (2)) agreed that folding the
|
---|
56 | ## compile rules so that they are output on a single line (instead of 5)
|
---|
57 | ## would be a good compromise. Actually we use two line rather than one,
|
---|
58 | ## because this way %SOURCE% is always located at the end of the first
|
---|
59 | ## line and is therefore easier to spot.
|
---|
60 |
|
---|
61 | ?GENERIC?%EXT%.o:
|
---|
62 | ?!GENERIC?%OBJ%: %SOURCE%
|
---|
63 | if %FASTDEP%
|
---|
64 | ## In fast-dep mode, we can always use -o.
|
---|
65 | ## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
|
---|
66 | ?!GENERIC? if %COMPILE% -MT %OBJ% -MD -MP -MF "%DEPBASE%.Tpo" %-c% -o %OBJ% `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE%; \
|
---|
67 | ?GENERIC? if %COMPILE% -MT %OBJ% -MD -MP -MF "%DEPBASE%.Tpo" %-c% -o %OBJ% %SOURCE%; \
|
---|
68 | then mv -f "%DEPBASE%.Tpo" "%DEPBASE%.Po"; else rm -f "%DEPBASE%.Tpo"; exit 1; fi
|
---|
69 | else !%FASTDEP%
|
---|
70 | if %AMDEP%
|
---|
71 | source='%SOURCE%' object='%OBJ%' libtool=no @AMDEPBACKSLASH@
|
---|
72 | depfile='%DEPBASE%.Po' tmpdepfile='%DEPBASE%.TPo' @AMDEPBACKSLASH@
|
---|
73 | $(%FPFX%DEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
---|
74 | endif %AMDEP%
|
---|
75 | if %?GENERIC%
|
---|
76 | ?-o? %COMPILE% %-c% %-o% %OBJ% %SOURCE%
|
---|
77 | ?!-o? %COMPILE% %-c% %SOURCE%
|
---|
78 | else !%?GENERIC%
|
---|
79 | ## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
|
---|
80 | ?-o? %COMPILE% %-c% %-o% %OBJ% `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE%
|
---|
81 | ?!-o? %COMPILE% %-c% `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE%
|
---|
82 | endif !%?GENERIC%
|
---|
83 | endif !%FASTDEP%
|
---|
84 |
|
---|
85 | ?GENERIC?%EXT%.obj:
|
---|
86 | ?!GENERIC?%OBJOBJ%: %SOURCE%
|
---|
87 | if %FASTDEP%
|
---|
88 | ## In fast-dep mode, we can always use -o.
|
---|
89 | ## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
|
---|
90 | ?!GENERIC? if %COMPILE% -MT %OBJOBJ% -MD -MP -MF "%DEPBASE%.Tpo" %-c% -o %OBJOBJ% `if test -f '%SOURCE%'; then $(CYGPATH_W) '%SOURCE%'; else $(CYGPATH_W) '$(srcdir)/%SOURCE%'; fi`; \
|
---|
91 | ?GENERIC? if %COMPILE% -MT %OBJOBJ% -MD -MP -MF "%DEPBASE%.Tpo" %-c% -o %OBJOBJ% `$(CYGPATH_W) '%SOURCE%'`; \
|
---|
92 | then mv -f "%DEPBASE%.Tpo" "%DEPBASE%.Po"; else rm -f "%DEPBASE%.Tpo"; exit 1; fi
|
---|
93 | else !%FASTDEP%
|
---|
94 | if %AMDEP%
|
---|
95 | source='%SOURCE%' object='%OBJOBJ%' libtool=no @AMDEPBACKSLASH@
|
---|
96 | depfile='%DEPBASE%.Po' tmpdepfile='%DEPBASE%.TPo' @AMDEPBACKSLASH@
|
---|
97 | $(%FPFX%DEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
---|
98 | endif %AMDEP%
|
---|
99 | if %?GENERIC%
|
---|
100 | ?-o? %COMPILE% %-c% %-o% %OBJOBJ% `$(CYGPATH_W) '%SOURCE%'`
|
---|
101 | ?!-o? %COMPILE% %-c% `$(CYGPATH_W) '%SOURCE%'`
|
---|
102 | else !%?GENERIC%
|
---|
103 | ## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
|
---|
104 | ?-o? %COMPILE% %-c% %-o% %OBJOBJ% `if test -f '%SOURCE%'; then $(CYGPATH_W) '%SOURCE%'; else $(CYGPATH_W) '$(srcdir)/%SOURCE%'; fi`
|
---|
105 | ?!-o? %COMPILE% %-c% `if test -f '%SOURCE%'; then $(CYGPATH_W) '%SOURCE%'; else $(CYGPATH_W) '$(srcdir)/%SOURCE%'; fi`
|
---|
106 | endif !%?GENERIC%
|
---|
107 | endif !%FASTDEP%
|
---|
108 |
|
---|
109 | if %?LIBTOOL%
|
---|
110 | ?GENERIC?%EXT%.lo:
|
---|
111 | ?!GENERIC?%LTOBJ%: %SOURCE%
|
---|
112 | if %FASTDEP%
|
---|
113 | ## In fast-dep mode, we can always use -o.
|
---|
114 | ## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
|
---|
115 | ?GENERIC? if %LTCOMPILE% -MT %LTOBJ% -MD -MP -MF "%DEPBASE%.Tpo" %-c% -o %LTOBJ% %SOURCE%; \
|
---|
116 | ## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
|
---|
117 | ?!GENERIC? if %LTCOMPILE% -MT %LTOBJ% -MD -MP -MF "%DEPBASE%.Tpo" %-c% -o %LTOBJ% `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE%; \
|
---|
118 | then mv -f "%DEPBASE%.Tpo" "%DEPBASE%.Plo"; else rm -f "%DEPBASE%.Tpo"; exit 1; fi
|
---|
119 | else !%FASTDEP%
|
---|
120 | if %AMDEP%
|
---|
121 | source='%SOURCE%' object='%LTOBJ%' libtool=yes @AMDEPBACKSLASH@
|
---|
122 | depfile='%DEPBASE%.Plo' tmpdepfile='%DEPBASE%.TPlo' @AMDEPBACKSLASH@
|
---|
123 | $(%FPFX%DEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
---|
124 | endif %AMDEP%
|
---|
125 | ## We can always use `-o' with Libtool.
|
---|
126 | ?GENERIC? %LTCOMPILE% %-c% -o %LTOBJ% %SOURCE%
|
---|
127 | ## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
|
---|
128 | ?!GENERIC? %LTCOMPILE% %-c% -o %LTOBJ% `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE%
|
---|
129 | endif !%FASTDEP%
|
---|
130 | endif %?LIBTOOL%
|
---|