3bde4cefd14f195785d2c731e92df453464f0d6d
[oweals/cde.git] / cde / programs / ttsnoop / Imakefile
1 XCOMM $XConsortium: Imakefile /main/18 1996/05/08 09:29:12 drk $
2
3 #ifdef  BSDArchitecture
4 UTILLIB = -lutil
5 #endif  /* BSDArchitecture */
6
7 #define CplusplusSource YES
8 DEPEND_DEFINES = $(CXXDEPENDINCLUDES)
9 INCLUDES = $(TIRPCINC)
10 EXTRA_LOAD_FLAGS = ExtraLoadFlags $(UNSHARED_CXXLIB)
11
12 DEPLIBS = $(DEPDTTERMLIB) DepDtClientLibs $(DEPUTILLIB)
13 LOCAL_LIBRARIES = $(DTTERMLIB) DtClientLibs $(UTILLIB)
14 SYS_LIBRARIES = DtClientSysLibs DtClientExtraLibs
15 DTCODEGENCAT = NLSPATH=$(CDESRC)/dtappbuilder/src/abmf/dtcodegen.cat
16
17
18 XCOMM ##########################################################################
19 XCOMM  These parameters are generated by dtcodegen according to the structure
20 XCOMM  of the project as defined in the .bip and .bil files
21 XCOMM ##########################################################################
22
23 PROGRAMS = ttsnoop
24
25 XCOMM
26 XCOMM Generated from 
27 TARGETS.h = \
28         apiTracer_ui.h          argChooser_ui.h \
29         callbackChooser_ui.h    dtb_utils.h \
30         fileChooser_ui.h        messageProps_ui.h \
31         patternProps_ui.h       sessionChooser_ui.h \
32         stringChooser_ui.h      ttChooser_ui.h \
33         ttsnoop_ui.h
34
35 TARGETS.c = \
36         apiTracer_ui.c          argChooser_ui.c \
37         callbackChooser_ui.c    dtb_utils.c \
38         fileChooser_ui.c        messageProps_ui.c \
39         patternProps_ui.c       sessionChooser_ui.c \
40         stringChooser_ui.c      ttChooser_ui.c \
41         ttsnoop_ui.c
42  
43 TARGETS.c.temp = \
44         apiTracer_stubs.c       argChooser_stubs.c \
45         callbackChooser_stubs.c fileChooser_stubs.c \
46         messageProps_stubs.c    patternProps_stubs.c \
47         sessionChooser_stubs.c  stringChooser_stubs.c \
48         ttChooser_stubs.c       ttsnoop.c \
49         ttsnoop_stubs.c
50  
51 TARGETS.h.merged = \
52         ttsnoop.h
53  
54 TARGETS.C.merged = \
55         apiTracer_stubs.C       argChooser_stubs.C \
56         callbackChooser_stubs.C fileChooser_stubs.C \
57         messageProps_stubs.C    patternProps_stubs.C \
58         sessionChooser_stubs.C  stringChooser_stubs.C \
59         ttChooser_stubs.C       ttsnoop.C \
60         ttsnoop_stubs.C
61  
62 SRCS2.h = $(TARGETS.h.merged) $(TARGETS.h) tt_c++.h DtTt.h
63
64 SRCS2 = $(TARGETS.C.merged) $(TARGETS.c) tt_c++.C DtTt.C
65
66 OBJS2 = \
67         DtTt.o                  apiTracer_stubs.o \
68         apiTracer_ui.o          argChooser_stubs.o \
69         argChooser_ui.o         callbackChooser_stubs.o \
70         callbackChooser_ui.o    dtb_utils.o \
71         fileChooser_stubs.o     fileChooser_ui.o \
72         messageProps_stubs.o    messageProps_ui.o \
73         patternProps_stubs.o    patternProps_ui.o \
74         sessionChooser_stubs.o  sessionChooser_ui.o \
75         stringChooser_stubs.o   stringChooser_ui.o \
76         ttChooser_stubs.o       ttChooser_ui.o \
77         tt_c++.o                ttsnoop.o \
78         ttsnoop_stubs.o         ttsnoop_ui.o
79  
80 AB_MAKEFILES = \
81         Makefile.aix \
82         Makefile.hpux \
83         Makefile.sunos \
84         Makefile.linux \
85         Makefile.freebsd \
86         Makefile.netbsd \
87         Makefile.openbsd
88
89 XCOMM ###
90 XCOMM ### This is basically a kludge since dtappbuilder is not being 
91 XCOMM ### successfully created during the make includes phase.
92 XCOMM ### Once it is, the following 2 line should be replaced with:
93 XCOMM ###
94 XCOMM ### includes::  $(TARGETS.h) $(TARGETS.c)
95 XCOMM ### localincludes::  $(TARGETS.h) $(TARGETS.c)
96 XCOMM ###
97
98 all:: targets ttdepend
99
100 targets::  $(TARGETS.h) $(TARGETS.c)
101
102 XCOMM Make initial copies of the .C.src files so that makedepend
103 XCOMM has some meaningful input.
104 depend::
105         for file in $(TARGETS.C.merged) ; do \
106             if [ ! -r $$file ] ; then \
107                 $(CP) $$file.src $$file ; chmod -w $$file ; fi ; \
108         done
109
110 NormalCplusplusObjectRule()
111
112 all:: $(PROGRAMS)
113
114 ComplexCplusplusProgramTarget_2($(PROGRAMS),$(LOCAL_LIBRARIES),)
115
116 ttdepend:: DependFileName
117
118 DependFileName::
119         -RunProgram(DEPEND,$(DEPENDFLAGS) $(ALLDEFINES) $(DEPEND_DEFINES) $(SRCS2)) > $@
120
121 clean::
122         RemoveFile(ProgramTargetName(PROGRAMS))
123
124
125 XCOMM #####################################################################
126 XCOMM Standard targets.
127 XCOMM #####################################################################
128
129 CppSourceFile(Ttsnoop,Ttsnoop.src,$(LOCAL_CPP_DEFINES),)
130
131 /*
132  * CodeGenTarget - generate rules to create the generated source and
133  * header files as well as the appropriate dependencies.
134  */
135 #ifndef Plus
136 # ifdef SunArchitecture
137 #  define Plus() +
138 # else
139 #  define Plus()
140 # endif
141 #endif
142
143 #ifndef CodeGenAppendableTarget
144 # define CodeGenAppendableTarget(m)                                     @@\
145 m.SRC_STUBS_C++ = Concat(m,_stubs.C.src)                                @@\
146 m.SRC_BIL       = Concat(m,.bil)                                        @@\
147 m.GEN_UI_C      = Concat(m,_ui.c)                                       @@\
148 m.GEN_UI_H      = Concat(m,_ui.h)                                       @@\
149 m.GEN_UI_O      = Concat(m,_ui.o)                                       @@\
150 m.GEN_STUBS_C   = Concat(m,_stubs.c)                                    @@\
151 m.GEN_STUBS_C++ = Concat(m,_stubs.C)                                    @@\
152 m.GEN_STUBS_O   = Concat(m,_stubs.o)                                    @@\
153 $(m.GEN_UI_O):   $(m.GEN_UI_C) $(m.GEN_UI_H) $(m.SRC_BIL)               @@\
154 $(m.GEN_STUBS_O): $(m.GEN_STUBS_C++) $(m.GEN_UI_H) $(m.SRC_BIL)         @@\
155 $(m.GEN_UI_C) Plus() $(m.GEN_UI_H) Plus() $(m.GEN_STUBS_C++): ttsnoop.bip $(m.SRC_BIL) $(m.SRC_STUBS_C++) @@\
156         $(CP) $(m.SRC_STUBS_C++) $(m.GEN_STUBS_C)                       @@\
157         -if [ ! -w $(m.GEN_STUBS_C) ]; then \                           @@\
158                 chmod +w $(m.GEN_STUBS_C); fi                           @@\
159         $(DTCODEGEN) -changed -merge -p ttsnoop.bip $(m.SRC_BIL)        @@\
160         $(RM) $(m.GEN_STUBS_C++)                                        @@\
161         $(MV) $(m.GEN_STUBS_C) $(m.GEN_STUBS_C++)                       @@\
162         cat externC.h $(m.GEN_UI_H) closeBrace.h > $(m.GEN_UI_H).patched @@\
163         $(MV) $(m.GEN_UI_H).patched $(m.GEN_UI_H)
164 #endif
165
166 #ifndef CodeGenTarget
167 # define CodeGenTarget(m) CodeGenAppendableTarget(m)
168 #endif
169
170 #define SED_MoreButton $(SED) \                                         @@\
171         -e 's/\(MoreButton;\)/\1Boolean _DtCanHelp( const char * );/' \ @@\
172         -e 's/\(XtManageChild(Quick_help\)/XtSetSensitive(MoreButton,_DtCanHelp(help_data->help_text));\1/' \   @@\
173         -e 's/\(buffer, vol, loc;\)/\1Boolean _DtHelped( Widget );/' \  @@\
174         -e 's/\(if( (cp=strrchr\)/if (_DtHelped( help_dialog)) return;\1/' \ @@\
175         dtb_utils.c > dtb_utils.c.patched
176
177 #define SED_DtbTt $(SED) \                                              @@\
178         -e 's/^DtbTt/extern String snooperArgv[];DtbTt/' \              @@\
179         -e 's/XmNheight, 257,//' \                                      @@\
180         -e 's/XmNwidth, 580,//' \                                       @@\
181         -e 's/XmNcolumns, 80,//' \                                      @@\
182         -e 's/XmNrows, 24/DtNsubprocessArgv, snooperArgv/' \            @@\
183         ttsnoop_ui.c > ttsnoop_ui.c.patched
184
185 #define SED_DtbApi $(SED) \                                             @@\
186         -e 's/^DtbApi/extern String apiTracerArgv[];DtbApi/' \          @@\
187         -e 's/XmNrows, 24/XmNrows, 24, DtNsubprocessArgv, apiTracerArgv/' \ @@\
188         apiTracer_ui.c > apiTracer_ui.c.patched
189
190 ttsnoop.C ttsnoop.h dtb_utils.c dtb_utils.h: ttsnoop.bip ttsnoop.C.src
191         $(CP) ttsnoop.C.src ttsnoop.c
192         -if [ ! -w ttsnoop.c ]; then chmod +w ttsnoop.c; fi
193         $(DTCODEGEN) -changed -merge -p ttsnoop.bip -main
194         $(RM) ttsnoop.C
195         $(MV) ttsnoop.c ttsnoop.C
196         chmod -w ttsnoop.C
197         cat externC.h dtb_utils.h closeBrace.h > dtb_utils.h.patched
198         $(MV) dtb_utils.h.patched dtb_utils.h
199         SED_MoreButton
200         $(MV) dtb_utils.c.patched dtb_utils.c
201 ttsnoop.o: ttsnoop.C ttsnoop.bip $(TARGETS.h) $(TARGETS.h.merged)
202
203 CodeGenAppendableTarget(ttsnoop)
204         SED_DtbTt
205         $(MV) ttsnoop_ui.c.patched ttsnoop_ui.c
206
207 CodeGenAppendableTarget(apiTracer)
208         SED_DtbApi
209         $(MV) apiTracer_ui.c.patched apiTracer_ui.c
210
211 CodeGenTarget(ttChooser)
212 CodeGenTarget(patternProps)
213 CodeGenTarget(stringChooser)
214 CodeGenTarget(messageProps)
215 CodeGenTarget(sessionChooser)
216 CodeGenTarget(fileChooser)
217 CodeGenTarget(argChooser)
218 CodeGenTarget(callbackChooser)
219
220 CLEAN_FILES =   core .dtcodegen.log *.BAK *.delta *.patched \
221                 $(PROGRAMS) $(OBJS2) $(TARGETS.c) $(TARGETS.h) \
222                 $(TARGETS.c.temp) $(TARGETS.C.merged) Ttsnoop
223
224 clean::
225         $(RM) $(CLEAN_FILES) $(AB_MAKEFILES)
226
227 scour:
228         $(RM) $(CLEAN_FILES) $(TARGETS.h.merged) Makefile Makefile.aix Makefile.hpux Makefile.sunos