source: CMT/HEAD/mgr/fragments/constituent_lock @ 561

Last change on this file since 561 was 561, checked in by rybkin, 13 years ago

See C.L. 444

File size: 6.5 KB
Line 
1#-- start of constituent_lock ------
2
3cmt_${CONSTITUENT}_${HASTARGETTAG} = 1
4
5#--------------------------------------------------------
6
7ifdef cmt_${CONSTITUENT}_has_target_tag
8
9#cmt_local_tagfile_${CONSTITUENT} = $(${PACKAGE}_tag)_${CONSTITUENT}.make
10cmt_local_tagfile_${CONSTITUENT} = $(bin)$(${PACKAGE}_tag)_${CONSTITUENT}.make
11cmt_local_setup_${CONSTITUENT} = $(bin)setup_${CONSTITUENT}$$$$.make
12cmt_final_setup_${CONSTITUENT} = $(bin)setup_${CONSTITUENT}.make
13#cmt_final_setup_${CONSTITUENT} = $(bin)${PACKAGE}_${CONSTITUENT}setup.make
14cmt_local_${CONSTITUENT}_makefile = $(bin)${CONSTITUENT}.make
15
16${CONSTITUENT}_extratags = -tag_add=target_${CONSTITUENT}
17
18#$(cmt_local_tagfile_${CONSTITUENT}) : $(cmt_lock_setup)
19ifndef QUICK
20$(cmt_local_tagfile_${CONSTITUENT}) ::
21else
22$(cmt_local_tagfile_${CONSTITUENT}) :
23endif
24        $(echo) "(constituents.make) Rebuilding $@"; \
25          if test -f $(cmt_local_tagfile_${CONSTITUENT}); then /bin/rm -f $(cmt_local_tagfile_${CONSTITUENT}); fi ; \
26          $(cmtexe) -tag=$(tags) $(${CONSTITUENT}_extratags) build tag_makefile >>$(cmt_local_tagfile_${CONSTITUENT})
27        $(echo) "(constituents.make) Rebuilding $(cmt_final_setup_${CONSTITUENT})"; \
28          test ! -f $(cmt_local_setup_${CONSTITUENT}) || \rm -f $(cmt_local_setup_${CONSTITUENT}); \
29          trap '\rm -f $(cmt_local_setup_${CONSTITUENT})' 0 1 2 15; \
30          $(cmtexe) -tag=$(tags) $(${CONSTITUENT}_extratags) show setup >$(cmt_local_setup_${CONSTITUENT}) && \
31          if [ -f $(cmt_final_setup_${CONSTITUENT}) ] && \
32            \cmp -s $(cmt_final_setup_${CONSTITUENT}) $(cmt_local_setup_${CONSTITUENT}); then \
33            \rm $(cmt_local_setup_${CONSTITUENT}); else \
34            \mv -f $(cmt_local_setup_${CONSTITUENT}) $(cmt_final_setup_${CONSTITUENT}); fi
35
36else
37
38#cmt_local_tagfile_${CONSTITUENT} = $(${PACKAGE}_tag).make
39cmt_local_tagfile_${CONSTITUENT} = $(bin)$(${PACKAGE}_tag).make
40cmt_final_setup_${CONSTITUENT} = $(bin)setup.make
41#cmt_final_setup_${CONSTITUENT} = $(bin)${PACKAGE}setup.make
42cmt_local_${CONSTITUENT}_makefile = $(bin)${CONSTITUENT}.make
43
44endif
45
46ifdef STRUCTURED_OUTPUT
47${CONSTITUENT}dirs :
48        @if test ! -d $(bin)${CONSTITUENT}; then $(mkdir) -p $(bin)${CONSTITUENT}; fi
49        $(echo) "STRUCTURED_OUTPUT="$(bin)${CONSTITUENT}
50else
51${CONSTITUENT}dirs : ;
52endif
53
54#ifndef QUICK
55#ifdef STRUCTURED_OUTPUT
56# ${CONSTITUENT}dirs ::
57#       @if test ! -d $(bin)${CONSTITUENT}; then $(mkdir) -p $(bin)${CONSTITUENT}; fi
58#       $(echo) "STRUCTURED_OUTPUT="$(bin)${CONSTITUENT}
59#
60#$(cmt_local_${CONSTITUENT}_makefile) :: $(${CONSTITUENT}_dependencies) $(cmt_local_tagfile_${CONSTITUENT}) build_library_links dirs ${CONSTITUENT}dirs
61#else
62#$(cmt_local_${CONSTITUENT}_makefile) :: $(${CONSTITUENT}_dependencies) $(cmt_local_tagfile_${CONSTITUENT}) build_library_links dirs
63#endif
64#else
65#$(cmt_local_${CONSTITUENT}_makefile) :: $(cmt_local_tagfile_${CONSTITUENT})
66#endif
67
68ifdef cmt_${CONSTITUENT}_has_target_tag
69
70ifndef QUICK
71$(cmt_local_${CONSTITUENT}_makefile) : $(${CONSTITUENT}_dependencies) build_library_links
72        $(echo) "(constituents.make) Building ${CONSTITUENT}.make"; \
73          $(cmtexe) -tag=$(tags) $(${CONSTITUENT}_extratags) build constituent_config -out=$(cmt_local_${CONSTITUENT}_makefile) ${CONSTITUENT}
74else
75$(cmt_local_${CONSTITUENT}_makefile) : $(${CONSTITUENT}_dependencies)
76        if [ ! -f $@ ] || [ ! -f $(cmt_local_tagfile_${CONSTITUENT}) ] || \
77          [ ! -f $(cmt_final_setup_${CONSTITUENT}) ]; then \
78          test -z "$(cmtmsg)" || \
79          echo "$(CMTMSGPREFIX)" "(constituents.make) Building ${CONSTITUENT}.make"; \
80          $(cmtexe) -tag=$(tags) $(${CONSTITUENT}_extratags) build constituent_config -out=$(cmt_local_${CONSTITUENT}_makefile) ${CONSTITUENT}; \
81          fi
82endif
83
84else
85
86ifndef QUICK
87$(cmt_local_${CONSTITUENT}_makefile) : $(${CONSTITUENT}_dependencies) build_library_links
88        $(echo) "(constituents.make) Building ${CONSTITUENT}.make"; \
89          $(cmtexe) -f=$(bin)${CONSTITUENT}.in -tag=$(tags) $(${CONSTITUENT}_extratags) build constituent_makefile -without_cmt -out=$(cmt_local_${CONSTITUENT}_makefile) ${CONSTITUENT}
90else
91$(cmt_local_${CONSTITUENT}_makefile) : $(${CONSTITUENT}_dependencies)
92        if [ ! -f $@ ] || [ ! -f $(cmt_local_tagfile_${CONSTITUENT}) ] || \
93          [ ! -f $(cmt_final_setup_${CONSTITUENT}) ]; then \
94          test -z "$(cmtmsg)" || \
95          echo "$(CMTMSGPREFIX)" "(constituents.make) Building ${CONSTITUENT}.make"; \
96          $(cmtexe) -f=$(bin)${CONSTITUENT}.in -tag=$(tags) $(${CONSTITUENT}_extratags) build constituent_makefile -without_cmt -out=$(cmt_local_${CONSTITUENT}_makefile) ${CONSTITUENT}; \
97          fi
98endif
99
100endif
101
102#         $(cmtexe) -tag=$(tags) $(${CONSTITUENT}_extratags) build constituent_makefile -out=$(cmt_local_${CONSTITUENT}_makefile) ${CONSTITUENT}
103
104${CONSTITUENT} :: $(${CONSTITUENT}_dependencies) $(cmt_local_${CONSTITUENT}_makefile) dirs ${CONSTITUENT}dirs
105        $(echo) "(constituents.make) Creating ${CONSTITUENT}${lock_suffix} and Starting ${CONSTITUENT}"
106        @${lock_command} ${CONSTITUENT}${lock_suffix} || exit $$?; \
107          retval=$$?; \
108          trap '${unlock_command} ${CONSTITUENT}${lock_suffix}; exit $${retval}' 1 2 15; \
109          $(MAKE) -f $(cmt_local_${CONSTITUENT}_makefile) ${CONSTITUENT}; \
110          retval=$$?; ${unlock_command} ${CONSTITUENT}${lock_suffix}; exit $${retval}
111        $(echo) "(constituents.make) ${CONSTITUENT} done"
112
113clean :: ${CONSTITUENT}clean
114
115${CONSTITUENT}clean :: $(${CONSTITUENT}clean_dependencies) ##$(cmt_local_${CONSTITUENT}_makefile)
116        $(echo) "(constituents.make) Starting ${CONSTITUENT}clean"
117        @-if test -f $(cmt_local_${CONSTITUENT}_makefile); then \
118          $(MAKE) -f $(cmt_local_${CONSTITUENT}_makefile) ${CONSTITUENT}clean; \
119        fi
120        $(echo) "(constituents.make) ${CONSTITUENT}clean done"
121#       @-$(MAKE) -f $(cmt_local_${CONSTITUENT}_makefile) ${CONSTITUENT}clean
122
123##        /bin/rm -f $(cmt_local_${CONSTITUENT}_makefile) $(bin)${CONSTITUENT}_dependencies.make
124
125install :: ${CONSTITUENT}install
126
127${CONSTITUENT}install :: $(${CONSTITUENT}_dependencies) $(cmt_local_${CONSTITUENT}_makefile)
128        $(echo) "(constituents.make) Starting install ${CONSTITUENT}"
129        @-$(MAKE) -f $(cmt_local_${CONSTITUENT}_makefile) install
130        $(echo) "(constituents.make) install ${CONSTITUENT} done"
131
132uninstall :: ${CONSTITUENT}uninstall
133
134$(foreach d,$(${CONSTITUENT}_dependencies),$(eval $(d)uninstall_dependencies += ${CONSTITUENT}uninstall))
135
136${CONSTITUENT}uninstall :: $(${CONSTITUENT}uninstall_dependencies) $(cmt_local_${CONSTITUENT}_makefile)
137        $(echo) "(constituents.make) Starting uninstall ${CONSTITUENT}"
138        @$(MAKE) -f $(cmt_local_${CONSTITUENT}_makefile) uninstall
139        $(echo) "(constituents.make) uninstall ${CONSTITUENT} done"
140
141ifndef PEDANTIC
142.DEFAULT::
143        $(echo) "(constituents.make) Starting $@ ${CONSTITUENT}"
144        $(echo) Using default action for $@
145        $(echo) "(constituents.make) $@ ${CONSTITUENT} done"
146endif
147
148#-- end of constituent_lock ------
Note: See TracBrowser for help on using the repository browser.