* lib/am/depend2.am (?GENERIC?%EXT%.o, ?GENERIC?%EXT%.obj): Do not
[platform/upstream/automake.git] / lib / am / depend2.am
1 ## automake - create Makefile.in from Makefile.am
2 ## Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
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 ?GENERIC?%EXT%.o:
40 ?!GENERIC?%OBJ%: %SOURCE%
41 if %FASTDEP%
42 ## In fast-dep mode, we can always use -o.
43         if %COMPILE% -MT %OBJ% -MD -MP -MF "%DEPBASE%.Tpo" \
44 ## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
45 ?!GENERIC?        %-c% -o %OBJ% `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE%; \
46 ?GENERIC?         %-c% -o %OBJ% %SOURCE%; \
47         then mv "%DEPBASE%.Tpo" "%DEPBASE%.Po"; \
48         else rm -f "%DEPBASE%.Tpo"; exit 1; \
49         fi
50 else !%FASTDEP%
51 if %AMDEP%
52         source='%SOURCE%' object='%OBJ%' libtool=no @AMDEPBACKSLASH@
53         depfile='%DEPBASE%.Po' tmpdepfile='%DEPBASE%.TPo' @AMDEPBACKSLASH@
54         $(%FPFX%DEPMODE) $(depcomp) @AMDEPBACKSLASH@
55 endif %AMDEP%
56 if %?GENERIC%
57 ?-o?    %COMPILE% %-c% %-o% %OBJ% %SOURCE%
58 ?!-o?   %COMPILE% %-c% %SOURCE%
59 else !%?GENERIC%
60 ## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
61 ?-o?    %COMPILE% %-c% %-o% %OBJ% `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE%
62 ?!-o?   %COMPILE% %-c% `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE%
63 endif !%?GENERIC%
64 endif !%FASTDEP%
65
66 ?GENERIC?%EXT%.obj:
67 ?!GENERIC?%OBJOBJ%: %SOURCE%
68 if %FASTDEP%
69 ## In fast-dep mode, we can always use -o.
70         if %COMPILE% -MT %OBJOBJ% -MD -MP -MF "%DEPBASE%.Tpo" \
71 ## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
72 ?!GENERIC?        %-c% -o %OBJOBJ% `if test -f '%SOURCE%'; then $(CYGPATH_W) '%SOURCE%'; else $(CYGPATH_W) '$(srcdir)/%SOURCE%'; fi`; \
73 ?GENERIC?         %-c% -o %OBJOBJ% `$(CYGPATH_W) '%SOURCE%'`; \
74         then mv "%DEPBASE%.Tpo" "%DEPBASE%.Po"; \
75         else rm -f "%DEPBASE%.Tpo"; exit 1; \
76         fi
77 else !%FASTDEP%
78 if %AMDEP%
79         source='%SOURCE%' object='%OBJOBJ%' libtool=no @AMDEPBACKSLASH@
80         depfile='%DEPBASE%.Po' tmpdepfile='%DEPBASE%.TPo' @AMDEPBACKSLASH@
81         $(%FPFX%DEPMODE) $(depcomp) @AMDEPBACKSLASH@
82 endif %AMDEP%
83 if %?GENERIC%
84 ?-o?    %COMPILE% %-c% %-o% %OBJOBJ% `$(CYGPATH_W) '%SOURCE%'`
85 ?!-o?   %COMPILE% %-c% `$(CYGPATH_W) '%SOURCE%'`
86 else !%?GENERIC%
87 ## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
88 ?-o?    %COMPILE% %-c% %-o% %OBJOBJ% `if test -f '%SOURCE%'; then $(CYGPATH_W) '%SOURCE%'; else $(CYGPATH_W) '$(srcdir)/%SOURCE%'; fi`
89 ?!-o?   %COMPILE% %-c% `if test -f '%SOURCE%'; then $(CYGPATH_W) '%SOURCE%'; else $(CYGPATH_W) '$(srcdir)/%SOURCE%'; fi`
90 endif !%?GENERIC%
91 endif !%FASTDEP%
92
93 if %?LIBTOOL%
94 ?GENERIC?%EXT%.lo:
95 ?!GENERIC?%LTOBJ%: %SOURCE%
96 if %FASTDEP%
97 ## In fast-dep mode, we can always use -o.
98         if %LTCOMPILE% -MT %LTOBJ% -MD -MP -MF "%DEPBASE%.Tpo" \
99           %-c% -o %LTOBJ% `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE%; \
100         then mv "%DEPBASE%.Tpo" "%DEPBASE%.Plo"; \
101         else rm -f "%DEPBASE%.Tpo"; exit 1; \
102         fi
103 else !%FASTDEP%
104 if %AMDEP%
105         source='%SOURCE%' object='%LTOBJ%' libtool=yes @AMDEPBACKSLASH@
106         depfile='%DEPBASE%.Plo' tmpdepfile='%DEPBASE%.TPlo' @AMDEPBACKSLASH@
107         $(%FPFX%DEPMODE) $(depcomp) @AMDEPBACKSLASH@
108 endif %AMDEP%
109 ## We can always use `-o' with Libtool.
110         %LTCOMPILE% %-c% -o %LTOBJ% `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE%
111 endif !%FASTDEP%
112 endif %?LIBTOOL%