OSDN Git Service

Eos:Extensible object-oriented system for image analysis of electron micrographs
[eos/base.git] / src / Tools / mrcImage / mrcImageInfo / src / Makefile
1 include ../Config/Define.inc
2 include ../../Config/Define.inc
3 include ../../../Config/Define.inc
4 include ../../../../Config/Define.inc
5
6 EOSHOME=../../../../../
7 DSTDIR=$(EOSHOME)/bin
8 DSTDOC=$(EOSHOME)/doc
9 DSTTAR=$(EOSHOME)/tar
10
11 INCFILES   = 
12
13 LIBFILES   = \
14                         $(LIBPREFIX)EosObjects$(LIBSUFFIX) 
15
16 LIBFILESDEBUG   = \
17                         $(LIBPREFIX)EosObjects.debug$(LIBSUFFIX) 
18
19 SRCC  = \
20                         $(OBJECTNAME).c \
21                         init.c \
22                         argCheck.c \
23                         usage.c  \
24                         util.c \
25
26 SRCCXX  = \
27                         $(OBJECTNAME).cc \
28                         init.cc \
29                         argCheck.cc \
30                         usage.cc  \
31                         util.cc \
32
33 MODULES    = \
34                         $(OBJECTNAME).o \
35                         init.o \
36                         argCheck.o \
37                         usage.o  \
38                         util.o \
39
40 REALMODULES    = \
41                         $(OSTYPE)/$(OBJECTNAME).o \
42                         $(OSTYPE)/init.o \
43                         $(OSTYPE)/argCheck.o \
44                         $(OSTYPE)/usage.o \
45                         $(OSTYPE)/util.o 
46
47 MODULESDEBUG    = \
48                         $(OBJECTNAME).debugo \
49                         init.debugo \
50                         argCheck.debugo \
51                         usage.debugo  \
52                         util.debugo \
53
54 REALMODULESDEBUG    = \
55                         $(OSTYPE)/$(OBJECTNAME).debugo \
56                         $(OSTYPE)/init.debugo \
57                         $(OSTYPE)/argCheck.debugo \
58                         $(OSTYPE)/usage.debugo \
59                         $(OSTYPE)/util.debugo 
60
61 all: $(OSTYPE)/$(OBJECTNAME)
62
63 debug: $(OSTYPE)/$(OBJECTNAME).debug
64
65 $(OSTYPE)/$(OBJECTNAME)::
66         @cd $(OSTYPE); \
67         $(RM) -f Makefile ; \
68         $(CP) ../../../../../Config/Template/$(WORLDNAME)Template.Dir/src/ARCH/Makefile Makefile ; \
69         $(MAKE) $(OBJECTNAME)
70
71 $(OSTYPE)/$(OBJECTNAME).debug::
72         cd $(OSTYPE); \
73         $(RM) -f Makefile ; \
74         $(CP) ../../../../../Config/Template/$(WORLDNAME)Template.Dir/src/ARCH/Makefile Makefile ; \
75         $(MAKE) $(OBJECTNAME).debug
76
77 cvsupdate::
78         cvs -d $(EOS_CVSROOT) update -d 
79
80 cvscommit::
81         cvs -d $(EOS_CVSROOT) commit 
82
83 edit:
84         @if [ -r $(OBJECTNAME).c ]; \
85         then \
86                 sccsEdit $(OBJECTNAME).c; \
87         else \
88                 echo "Source files are already editable"; \
89         fi
90         @if [ -r wish/$(OBJECTNAME).wish ]; \
91         then \
92                 cd wish; sccsEdit $(OBJECTNAME).wish; \
93         else \
94                 echo "Source files (wish) are already editable."; \
95         fi
96         @if [ -r ruby/$(OBJECTNAME).rb ]; \
97         then \
98                 cd ruby; sccsEdit $(OBJECTNAME).rb; \
99         else \
100                 echo "Source files (ruby) are already editable."; \
101         fi
102         @if [ -r perl/$(OBJECTNAME).pl ]; \
103         then \
104                 cd perl; sccsEdit $(OBJECTNAME).pl ; \
105         else \
106                 echo "Source files (perl) are already editable."; \
107         fi
108         @if [ -r ../Config/OptionControlFile ]; \
109         then \
110                 cd ../Config; sccsEdit OptionControlFile; \
111         else \
112                 echo "OptionControlFile are already editable."; \
113         fi
114         
115 unedit:
116         @if [ -w $(OBJECTNAME).c ]; \
117         then \
118                 sccsUnedit $(OBJECTNAME).c; \
119         else \
120                 echo "Source files are not editable"; \
121         fi
122         @if [ -w wish/$(OBJECTNAME).wish ]; \
123         then \
124                 cd wish; sccsUnedit $(OBJECTNAME).wish; \
125         else \
126                 echo "Source files (wish) are not editable."; \
127         fi
128         @if [ -w ruby/$(OBJECTNAME).rb]; \
129         then \
130                 cd ruby; sccsUnedit $(OBJECTNAME).rb; \
131         else \
132                 echo "Source files (ruby) are not editable."; \
133         fi
134         @if [ -w perl/$(OBJECTNAME).pl ]; \
135         then \
136                 cd perl; sccsUnedit $(OBJECTNAME).pl ; \
137         else \
138                 echo "Source files (ruby) are not editable."; \
139         fi
140         @if [ -w ../Config/OptionControlFile ]; \
141         then \
142                 cd ../Config; sccsUnedit OptionControlFile; \
143         else \
144                 echo "OptionControlFile are not editable."; \
145         fi
146         
147 report:
148         @if [ -r $(OBJECTNAME).c ]; \
149         then \
150                 sccsReport $(OBJECTNAME).c; \
151         else \
152                 echo "Source files are already editable"; \
153         fi
154         @if [ -r wish/$(OBJECTNAME).wish ]; \
155         then \
156                 cd wish; sccsReport $(OBJECTNAME).wish; \
157         else \
158                 echo "Source files (wish) are already editable."; \
159         fi
160         @if [ -r ruby/$(OBJECTNAME).rb ]; \
161         then \
162                 cd ruby; sccsReport $(OBJECTNAME).rb; \
163         else \
164                 echo "Source files (ruby) are already editable."; \
165         fi
166         @if [ -r perl/$(OBJECTNAME).pl ] ; \
167         then \
168                 cd perl; sccsReport $(OBJECTNAME).pl ; \
169         else \
170                 echo "Source files (perl) are already editable."; \
171         fi
172         @if [ -r ../Config/OptionControlFile ]; \
173         then \
174                 cd ../Config; sccsReport OptionControlFile; \
175         else \
176                 echo "OptionControlFile are already editable."; \
177         fi
178
179 clean : 
180         rm -f *.debugo $(OSTYPE)/*.debugo *.o $(OSTYPE)/*.o \
181                 $(OSTYPE)/$(OBJECTNAME) $(OSTYPE)/*.$(OSTYPE) \
182                 $(OSTYPE)/$(OBJECTNAME).debug $(OSTYPE)/*.$(OSTYPE).debug \
183                 *.bak *.$(OSTYPE) core
184
185 install: install-bin install-doc install-wish install-ruby install-shell install-perl
186         @if [ dummy$(KHOROS_KENGOBJ) != dummy ]  ; \
187         then \
188                 if [ -x $(KHOROS_KGENOBJ) ] ;  \
189                 then \
190                         make install-khoros ; \
191                 fi; \
192         fi 
193
194 install-bin:$(DSTDIR)/$(OSTYPE)/$(OBJECTNAME) 
195
196 $(DSTDIR)/$(OSTYPE)/$(OBJECTNAME):$(OSTYPE)/$(OBJECTNAME) $(DSTDIR)/$(OBJECTNAME) 
197         @echo ---- Installing to bin
198         @if [ ! -d $(DSTDIR)/$(OSTYPE) ]; \
199         then \
200                 mkdir $(DSTDIR)/$(OSTYPE); \
201         fi
202         @if [ -x $(DSTDIR)/$(OSTYPE)/$(OBJECTNAME) ]; \
203         then \
204                 $(RM) -f $(DSTDIR)/$(OSTYPE)/$(OBJECTNAME); \
205         fi
206         @$(CD) $(OSTYPE); $(INSTALL) -m 555 $(OBJECTNAME) ../$(DSTDIR)/$(OSTYPE)
207         @$(CHMOD) 555 $(DSTDIR)/$(OSTYPE)/$(OBJECTNAME)
208         @$(CHGRP) Eos $(DSTDIR)/$(OSTYPE)/$(OBJECTNAME)
209         @echo $(DSTDIR)/$(OSTYPE)/$(OBJECTNAME)
210         @echo ---- end of bin
211
212 install-wish:
213         @if [ -d wish ]; \
214         then \
215                 echo "---- Tcl/Tk file Install"; \
216                 if [ ! -d $(DSTDIR)/wish/$(OBJECTNAME) ]; \
217                 then \
218                         mkdir $(DSTDIR)/wish/$(OBJECTNAME) ; \
219                 fi ; \
220                 $(CP) -f wish/* $(DSTDIR)/wish/$(OBJECTNAME); \
221                 $(CHMOD) 555 $(DSTDIR)/wish/$(OBJECTNAME)/*  ;\
222                 touch $(DSTDIR)/wish/$(OBJECTNAME)/tclIndex;\
223                 $(CHMOD) 666 $(DSTDIR)/wish/$(OBJECTNAME)/tclIndex;\
224                 $(CHGRP) Eos $(DSTDIR)/wish/$(OBJECTNAME)/*;\
225                 echo "---- Tcl/Tk file Installed";\
226         fi
227
228 install-ruby:
229         @if [ -d ruby ]; \
230         then \
231                 echo "---- Ruby/Tk file Install"; \
232                 if [ ! -d $(DSTDIR)/ruby/$(OBJECTNAME) ]; \
233                 then \
234                         mkdir $(DSTDIR)/ruby/$(OBJECTNAME) ; \
235                 fi ; \
236                 $(CP) -f ruby/* $(DSTDIR)/ruby/$(OBJECTNAME); \
237                 $(CHMOD) 555 $(DSTDIR)/ruby/$(OBJECTNAME)/* ; \
238                 $(CHGRP) Eos $(DSTDIR)/ruby/$(OBJECTNAME)/* ; \
239                 echo "---- Ruby/Tk file Installed"; \
240         fi
241
242 install-perl:
243         @if [ -d perl ]; \
244         then \
245                 echo "---- Perl/Tk file Install"; \
246                 if [ ! -d $(DSTDIR)/perl/$(OBJECTNAME) ]; \
247                 then \
248                         mkdir $(DSTDIR)/perl/$(OBJECTNAME) ; \
249                 fi; \
250                 $(CP) -f perl/* $(DSTDIR)/perl/$(OBJECTNAME); \
251                 $(CHMOD) 555 $(DSTDIR)/perl/$(OBJECTNAME)/* ; \
252                 $(CHGRP) Eos $(DSTDIR)/perl/$(OBJECTNAME)/* ; \
253                 echo "---- Perl/Tk file Installed"; \
254         fi
255
256 install-shell:
257         @if [ ! -d $(DSTDIR)/shell/$(OBJECTNAME) ]; \
258         then \
259                 mkdir $(DSTDIR)/shell/$(OBJECTNAME) ; \
260         fi
261         @if [ -d shell ]; \
262         then \
263                 echo "---- Shell file Install"; \
264                 if [ ! -d $(DSTDIR)/shell/$(OBJECTNAME) ]; \
265                 then \
266                         mkdir $(DSTDIR)/shell/$(OBJECTNAME) ; \
267                 fi ; \
268                 $(CP) -f shell/* $(DSTDIR)/shell/$(OBJECTNAME); \
269                 $(CHMOD) 555 $(DSTDIR)/shell/$(OBJECTNAME)/*; \
270                 $(CHGRP) Eos $(DSTDIR)/shell/$(OBJECTNAME)/*; \
271                 echo "---- Shell file Installed"; \
272         fi
273
274 install-khoros:
275         @echo Installing to khoros
276         @if [ ! -d ../../../../../objects/script/$(OBJECTNAME) -a -f $(KHOROS_KGENOBJ) ]; \
277         then \
278                 echo kgenobj;\
279                 $(KHOROS_KGENOBJ) -tb Eos -oname $(OBJECTNAME) -type script -pane -cantata true -cat Eos -subcat $(CLASSNAME) -description $(OBJECTNAME) -bname $(OBJECTNAME) -form  -lang ksh ; \
280         fi
281         @if [ ! -d ../../../../../objects/script/$(OBJECTNAME) -a -f $(KHOROS_KSET) ]; \
282         then \
283                 $(KHOROS_KSET) -tb Eos -oname $(OBJECTNAME) -icon $(OBJECTNAME) ; \
284         fi
285         @if [ -d ../../../../../objects/script/$(OBJECTNAME) -a -f $(KHOROS_KSET) ]; \
286         then \
287                 $(CHMOD) -R 775 ../../../../../objects/script/$(OBJECTNAME) ; \
288                 if [ $?  ] ; \
289                 then \
290                         echo "-- setting khoros ---" ; \
291                         if [ -d ../../../../../objects/script/$(OBJECTNAME)/uis/ ] ; \
292                         then \
293                                 $(CD) ../../../../../objects/script/$(OBJECTNAME)/uis/ ; \
294                                 $(RM) -f $(OBJECTNAME).pane ; \
295                                 $(LN) -s ../../../../src/Tools/$(CLASSNAME)/$(OBJECTNAME)/src/$(OBJECTNAME).pane $(OBJECTNAME).pane; \
296                                 $(CD) ../../ ; \
297                                 $(CHGRP) -R Eos $(OBJECTNAME); \
298                                 $(CHMOD) -R 555 $(OBJECTNAME); \
299                         else \
300                                 echo "../../../../../objects/script/$(OBJECTNAME)/uis/ does not exist."; \
301                         fi ; \
302                 else \
303                         echo "Failed !!: Cannot chage mode in installing  $(OBJECTNAME) to khoros system"; \
304                 fi ; \
305                 echo "-- end of khoros-installing"; \
306         fi
307
308 install-doc: html 
309         @if [ ! -d $(DSTDOC)/SmallTools ]; \
310         then \
311                 mkdir $(DSTDOC)/SmallTools ;\
312         fi
313         @if [ -f $(DSTDOC)/SmallTools/$(OBJECTNAME).html ]; \
314         then \
315                 $(RM) -f $(DSTDOC)/SmallTools/$(OBJECTNAME).html ;\
316         fi
317         @$(CP) $(OBJECTNAME).html  $(DSTDOC)/SmallTools/$(OBJECTNAME).html
318         @$(CHMOD) 444 $(DSTDOC)/SmallTools/$(OBJECTNAME).html
319         @if [ -f ../doc/*.html ]; \
320         then \
321                 $(CP) ../doc/*.html  $(DSTDOC)/SmallTools/ ;\
322         fi
323         @$(CHMOD) 444 $(DSTDOC)/SmallTools/$(OBJECTNAME).html
324         @if [ -f $(DSTDOC)/SmallTools/Makefile ]; \
325         then \
326                 cd $(DSTDOC)/SmallTools; $(MAKE); \
327         fi
328
329 html: $(OBJECTNAME).html
330
331 configFileRead:
332         @ctrl2configFileRead $(CLASSNAME) $(OBJECTNAME) ../Config/OptionControlFile
333
334 $(OBJECTNAME).html: $(OSTYPE)/$(OBJECTNAME)
335         @echo creating html
336         @$(OSTYPE)/$(OBJECTNAME) -html 2> $(OBJECTNAME).html.tmp
337         @sed -e s/$(OSTYPE)\\/// $(OBJECTNAME).html.tmp > $(OBJECTNAME).html
338         @$(RM) $(OBJECTNAME).html.tmp
339
340 $(DSTDIR)/$(OBJECTNAME): $(OSTYPE)/$(OBJECTNAME)
341         @ln -s -f ../sbin/MachineIndependent $@
342
343 depend::
344         @echo dependency checking now
345         @if [ ! -d $(OSTYPE) ] ; \
346         then \
347                 mkdir $(OSTYPE); \
348         else \
349                 rm -f $(OSTYPE)/.Depend ; \
350         fi
351         #echo C
352         @if [ -f $(OBJECTNAME).c ] ; \
353         then \
354                 echo "dependency: *.c"; \
355                 echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) *.c   ; \
356                      $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) *.c   > $(OSTYPE)/.Depend ; \
357         fi
358         #echo CC
359         @if [ -f $(OBJECTNAME).cc ] ; \
360         then \
361                 echo "dependency: *.cc"; \
362                 echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.cc ; \
363                      $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.cc >> $(OSTYPE)/.Depend ; \
364         fi
365         @if [ -f $(OBJECTNAME).ccm ] ; \
366         then \
367                 echo "dependency: *.ccm"; \
368                 echo $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.ccm ; \
369                      $(DEPENDCOMMAND) $(INCLUDEDIR) $(EXTRA_INC) $(EXTRA_DEFINE) $(EXTRA_CCOPTS) *.ccm >> $(OSTYPE)/.Depend ; \
370         fi
371
372 update:../Config/OptionControlFile
373         maketool $(CLASSNAME) $(OBJECTNAME) update
374
375 changeName::
376
377 Test:$(OSTYPE)/$(OBJECTNAME) TestDir
378         @if [ -f test/Makefile ] ; \
379         then \
380                 cd test; make ; \
381         else \
382                 echo "No test Makefile"; \
383         fi
384
385 TestDir::
386         @if [ ! -d test ] ; \
387         then \
388                 echo "Creating test dir"; \
389                 mkdir  test; \
390         fi
391         @if [ ! -f test/Makefile ] ; \
392         then \
393                 echo "Creating Makefile"; \
394                 cd test; \
395                 protoTestMakefileCreate; \
396         fi
397         @if [ ! -d test/data ]; \
398         then \
399                 mkdir $(EOSHOME)/data/$(OBJECTNAME); \
400                 cd test; \
401                 ln -sf ../$(EOSHOME)/data/$(OBJECTNAME) data; \
402         fi 
403
404 tar::
405         cd $(DSTTAR); tar cvf Tools.$(CLASSNAME).$(OBJECTNAME).tar ../bin/$(OBJECTNAME) \
406                                                              ../bin/*/$(OBJECTNAME).* \
407                                                              ../src/Tools/$(CLASSNAME)/$(OBJECTNAME) \
408                                 ; gzip Tools.$(CLASSNAME).$(OBJECTNAME).tar
409
410 include $(OSTYPE)/.Depend
411 include ../Config/Target.inc