1#ifndef XCOMM
2#define XCOMM #
3#endif
4
5#ifndef NullParameter
6#define NullParameter
7#endif
8
9XCOMM ------------------------------------------------- XCOMM
10XCOMM Please make changed in Tgif.tmpl and Target.tmpl. XCOMM
11XCOMM There should be no need to modify this file.      XCOMM
12XCOMM ------------------------------------------------- XCOMM
13
14#include <Tgif.tmpl>
15#include <Target.tmpl>
16
17XCOMM
18XCOMM  Author:      William Chia-Wei Cheng (bill.cheng@acm.org)
19XCOMM
20XCOMM  Copyright (C) 2001-2009, William Chia-Wei Cheng.
21XCOMM
22XCOMM  This file may be distributed under the terms of the Q Public License
23XCOMM  as defined by Trolltech AS of Norway and appearing in the file
24XCOMM  LICENSE.QPL included in the packaging of this file.
25XCOMM
26XCOMM  THIS FILE IS PROVIDED AS IS WITH NO WARRANTY OF ANY KIND, INCLUDING
27XCOMM  THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR
28XCOMM  PURPOSE.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL,
29XCOMM  INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
30XCOMM  FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
31XCOMM  NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
32XCOMM  WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
33XCOMM
34XCOMM  @(#)$Header: /mm2/home/cvs/bc-src/tgif/Imakefile,v 1.205 2011/06/26 02:02:01 william Exp $
35XCOMM
36
37TGIFVERSION	= 4.2.5
38
39EXTDEFINES	= -DEPSF_FILE_EXT=\"eps\" -DPS_FILE_EXT=\"ps\" \@@\
40		  -DXBM_FILE_EXT=\"xbm\" -DXPM_FILE_EXT=\"xpm\" \@@\
41		  -DOBJ_FILE_EXT=\"obj\" -DSYM_FILE_EXT=\"sym\" \@@\
42		  -DTEXT_FILE_EXT=\"txt\" -DPIN_FILE_EXT=\"pin\" \@@\
43		  -DNETLIST_FILE_EXT=\"net\" -DCOMP_FILE_EXT=\"cmp\"
44
45DEFINES		= $(DIRDEFINES) \@@\
46                  $(EXTDEFINES) \@@\
47                  $(XIMPDEFINES) \@@\
48                  $(MISCDEFINES) \@@\
49                  -DTGIF_DISTR_VER=\"$(TGIFVERSION)\" \@@\
50                  $(MOREDEFINES) -DQPL_LICENSE
51
52XCOMM Things to try to add to the DEFINES line above:
53XCOMM
54XCOMM    RS6000:  -D_BSD
55XCOMM    Solaris:
56XCOMM    Irix:
57XCOMM    SunOS:
58XCOMM    HP-UX:   -D_NO_LOCALE_SUPPORT
59XCOMM    VMS:     -D_NO_GETTIMEOFDAY
60XCOMM    Linux:
61XCOMM    FreeBSD:
62XCOMM    SCO:     -DPRINT_CMD=\""lp -o raw -o nobanner"\"
63
64XCOMM -D_NO_XUTF8FUNCTIONS
65XCOMM    Include the above line if your X11 library does have have the
66XCOMM    Xutf8TextListToTextProperty() function implemented (such as on
67XCOMM    some Solaris system).
68XCOMM -D_NO_RMCAST_SO
69XCOMM    Include the above line if you do not want to link to the rmcast
70XCOMM    library dynamically.  If this flag is used, you must link tgif with
71XCOMM    the rmcast library statically.
72XCOMM -D_NO_IDNLIB
73XCOMM    Include the above line if you do not have libidn installed in your
74XCOMM    system.  libidn is used in conjunction with the XIM input method
75XCOMM    to convert a UTF-8 character into something X understands.
76XCOMM -D_NO_ZLIB
77XCOMM    Include the above line if you do not have zlib installed in your
78XCOMM    system.  Zlib is only used in tgif when _TGIF_WB2 (see below) is
79XCOMM    used.
80XCOMM -D_NO_ENTER_TEXT_EVERYWHERE
81XCOMM    Include the above line if you do not want to be able to enter
82XCOMM    text from the keyboard in tgif unless the drawing area of tgif
83XCOMM    has the keyboard focus.
84XCOMM -D_DARWIN_MOD1_AS_META
85XCOMM    Include the above line if you are compiling for Mac OS X and
86XCOMM    you want to use the Mod1 key as the <Meta> key.  By default,
87XCOMM    the Mod2 key is treated as the <Meta> key (at the time this
88XCOMM    option was added).
89XCOMM -D_XPM3TOPPM
90XCOMM    Include the above line if the xpmtoppm you have only knows how to
91XCOMM    handle XPM format version 3.  (This is the case with xpm-9.14.)
92XCOMM    This has the same effect as setting Tgif.XPmOutputVersion to 3 and
93XCOMM    Tgif.UseXPmVersion1ForImageMap to false.
94XCOMM -D_NO_LANDSCAPE_PDF_SETPAGEDEVICE
95XCOMM    Include the above line if you want tgif to *not* generate
96XCOMM    "setpagedevice" PostScript command to rotate the generated PostScript
97XCOMM    file.  (This is meant to be used when ps2pdf can handle landscape
98XCOMM    PostScript files correctly.)
99XCOMM -D_PRTGIF_USE_ISO_LATIN_1_ALWAYS
100XCOMM    Include the above line if you want to always use ISO 8859-1 character
101XCOMM    set for single-byte characters when running tgif with the -print
102XCOMM    commandline option.  Please only use this if you are sure that you
103XCOMM    will *never* use other encodings.  You can selectively turn off
104XCOMM    reencoding by using either the Tgif.DontReencode X default or the
105XCOMM    -dontreencode commandline option.
106XCOMM -D_TMP_DIR_IN_HOME_DIR
107XCOMM    Include the above line if you want the temporary directory to be
108XCOMM    a user's $HOME/.Tgif directory by default.
109XCOMM -D_DONT_USE_MKTEMP
110XCOMM    Include the above line if you do not want to use mktemp() and your
111XCOMM    system supports tempnam().  The use of mktemp() is not recommanded
112XCOMM    due to some security considerations.
113XCOMM -D_PS_SEVENBIT_DOUBLEBYTE_TEXT
114XCOMM    Include the above line if bit 7 in both bytes of a double-byte
115XCOMM    character should be masked out when printing/exporting double-byte
116XCOMM    text to a PostScript file.
117XCOMM -D_USE_PS_ADOBE_STRING=\"true\"
118XCOMM    Include the above line in the DEFINES if you want to configure tgif
119XCOMM    to use a default Tgif.UsePsAdobeString value.
120XCOMM -D_MINIMAL_EPS=1
121XCOMM    Include the above line in the DEFINES if you want to configure tgif
122XCOMM    to use a default Tgif.MinimalEPS value.
123XCOMM -DENABLE_NLS
124XCOMM    Include the above line if you want to enable NLS (Native Language
125XCOMM    Support).
126XCOMM -D_DONT_USE_PORTABLE_LOCALE (obsoleted)
127XCOMM    Include the above line if you don't want to use the portable locale.
128XCOMM    (Portable locale is "C" for all locale categories.)
129XCOMM -D_NO_RECURSIVE_EXTERN
130XCOMM    Include the above line if your C compiler cannot handle
131XCOMM    "#define extern extern".  The /bin/cc compiler on HP-UX reports a
132XCOMM    Recursion in macro "extern" when the above define is used.
133XCOMM -D_DL_EXPORT_UNDERSCORE
134XCOMM    Include the above line if you use export filters and there is an entry
135XCOMM    point to an export filter named "_TgifExportFilterMain" (and there's
136XCOMM    no entry point named "TgifExportFilterMain").  One can see all the
137XCOMM    entry points to an export filter by running 'nm' against it.
138XCOMM -D_NO_TGTWB5
139XCOMM    Include the above line if you do not want to include the code
140XCOMM    that handles tgtwb5.  Please also remove "tgtwb5.o" and "tgtwb5xl.o"
141XCOMM    from OBJ1 in Imakefile.
142XCOMM -D_NO_XCIN
143XCOMM    Include the above line if you do not want to include the code
144XCOMM    that handles xcin.  Please also remove "cli_xcin.o" from
145XCOMM    OBJ1 in Imakefile.
146XCOMM -D_NO_CHINPUT
147XCOMM    Include the above line if you do not want to include the code
148XCOMM    that handles chinput.  Please also remove "chinput.o" from
149XCOMM    OBJ1 in Imakefile.
150XCOMM -D_NO_KINPUT
151XCOMM    Include the above line if you do not want to include the code
152XCOMM    that handles kinput.  Please also remove "convkinput.o" from
153XCOMM    OBJ1 in Imakefile.
154XCOMM -D_NO_XIM
155XCOMM    Include the above line if you do not want to include the code
156XCOMM    that handles X Input Method.  Please also remove "convxim.o" from
157XCOMM    OBJ1 in Imakefile.
158XCOMM -D_NO_NKF
159XCOMM    Include the above line if you do not want to include the code
160XCOMM    that handles Network Kanji Filter (NKF).  Please also remove
161XCOMM    "nkf.o" from OBJ1 in Imakefile.
162XCOMM -D_NO_DL_SUPPORT
163XCOMM    Include the above line if you don't have <dlfcn.h>.  If you define
164XCOMM    _NO_DL_SUPPORT, please use the SYS_LIBRARIES that does not contain
165XCOMM    -ldl above.
166XCOMM -D_NO_LOCALE_SUPPORT
167XCOMM    Include the above line if you don't have <X11/Xlocale.h>.  If this
168XCOMM    is the case and you don't have <locale.h>, you must also use
169XCOMM    -D_NO_XIM because "convxim.c" assumes that you have <locale.h>.
170XCOMM -D_METRIC_PIX_PER_INCH
171XCOMM    Include the above line if you want to use 127 pixels per inch
172XCOMM    when printing in the metric system.  If this line is not
173XCOMM    included, 128 pixels per inch is used.
174XCOMM -D_NO_GETTIMEOFDAY
175XCOMM    Include the above line if you do not have the gettimeofday()
176XCOMM    function but have the ftime() function.
177XCOMM -D_TANGRAM_II (obsoleted)
178XCOMM    Include the above line if you want to include the Tangram-II features
179XCOMM    by Carlos Fisch de Brito, Luiz Rogerio Goncalves de Carvalho, and
180XCOMM    Denise Jorge de Oliveira <fisch,luiz,dezinha@land.ufrj.br> of the
181XCOMM    Tangram-II team of the Universidade Federal do Rio de Janeiro.  These
182XCOMM    features are under development and highly experimental.
183XCOMM    (Tangram-II features are enabled in tgif by default now.  To activate
184XCOMM    them, run tgif with "-tgrm2" commandline option.)
185XCOMM -D_TGIF_WB (obsoleted)
186XCOMM    Include the above line if you want to include the whiteboard feature
187XCOMM    by Renato Santana <renato@nce.ufrj.br>.
188XCOMM -D_TGIF_WB2
189XCOMM    Include the above line if you want to include the whiteboard feature
190XCOMM    by Magnos Martinello <magnos@land.ufrj.br> and Raphael S. de Moraes
191XCOMM    <raphael@land.ufrj.br>.  The whiteboard needs IP multicast support,
192XCOMM    and therefore, can only run on IP multicast enabled kernels.  This
193XCOMM    has only been tested on Solaris 2.6 or above or Linux 6.x or above.
194XCOMM    Once tgif is copmiled with this flag, you need to run tgif with the
195XCOMM    "-tgwb2" commandline option to activate it.
196XCOMM -D_WB2DATA_NO_GZIP
197XCOMM    Starting with tgif-4.2 tgif always gzip whiteboard data before
198XCOMM    sending it down the multicast channel.  Include the above line if you
199XCOMM    do *not* want the data to be gzipped.  This flag can only be used
200XCOMM    if _TGIF_WB2 is active.
201XCOMM -D_HAS_STREAMS_SUPPORT
202XCOMM    Include the above line in addition to -D_TGIF_WB2 if you have the
203XCOMM    /usr/include/stropts.h file (such as Solaris 2.6 or above or Linux
204XCOMM    6.x or above.
205XCOMM -DBSD_COMP
206XCOMM    Include the above line if you are compiling on a Solaris (or
207XCOMM    possibly an SGI) machine which requires it in <sys/ioctl.h>.
208XCOMM    (If you see the error that FIONBIO is not defined when compiling
209XCOMM    tcp.c, then you probably need this.)
210XCOMM -D_BACKGROUND_DONT_FORK
211XCOMM    Try the above line if there are defunct tgif child processes.
212XCOMM -D_NO_LSTAT
213XCOMM    Include the above line if lstat() is not available.  In this case,
214XCOMM    using BrowseXBitmap and BrowseXPixmap under the File Menu may cause
215XCOMM    infinite loop if the directory structure is infinitely recursive.
216XCOMM -D_USE_XDRAWPOINT_TO_PUT_A_POINT
217XCOMM    Include the above line if the grid points are not visible.  This can
218XCOMM    be used to bypass some X server bugs (such as certain Linux X server
219XCOMM    using VGA16 screen) where the XDrawLine() Xlib call does not work
220XCOMM    properly.
221XCOMM -D_NO_EXTERN (obsoleted)
222XCOMM    Include the above line in the DEFINES if you don't want to include
223XCOMM    the extern definition for functions defined in a module.  For example,
224XCOMM    if this option is set, then file "foo.c" will not include "foo.e",
225XCOMM    and certain other extern definition in "foo.c" will be omitted.
226XCOMM -D_NO_PROTO
227XCOMM    Include the above line in the DEFINES if checking for function
228XCOMM    prototypes is not desired.  Checking for function prototypes
229XCOMM    are automatically enabled if you are using an ANSI or C++ compilor.
230XCOMM    However, not all ANSI/C++ compilors are created equal.
231XCOMM -D_BSD
232XCOMM    Include the above line in the DEFINES if the select() function can
233XCOMM    does not be found for AIX systems (such as RS6000).  Also, on AIX
234XCOMM    systems, if you see garbage file names when you try to open files,
235XCOMM    try this flag to make direct and dirent equivalent (in <sys/dir.h>).
236XCOMM -D_NO_RAND48
237XCOMM    Include the above line in the DEFINES if you do not have the
238XCOMM    srand48() or drand48() functions in your system's library.
239XCOMM -DNO_STRSTR
240XCOMM    Include the above line in the DEFINES if you do not have the strstr()
241XCOMM    function in your system's string library.
242XCOMM -DINVERT_CTM_BUG
243XCOMM    Include the above line in the DEFINES if you are using PostScript
244XCOMM    utilities which fails when trying to invert non-invertible CTM
245XCOMM    (e.g., muluti.ps from ftp.ucc.su.oz.au:/pub/ps_printing/multi).
246XCOMM -DHP_LINE_BUG
247XCOMM    Include the above line in the DEFINES if two-vertices horizontal and
248XCOMM    verticle line segments don't draw properly on a buggy HP server.
249XCOMM -DDONTFREECOLORS
250XCOMM    Include the above line in the DEFINES if you don't want the black and
251XCOMM    the white colors to be freed when tgif initializes itself.  You should
252XCOMM    not need to do this unless you need to get around some server bugs.
253XCOMM -DUSE_XT_INITIALIZE
254XCOMM    This will cause the XToolkit to be initialized so that the X defaults
255XCOMM    are obtained from the Xt directories.  Please remember to use
256XCOMM    LOCAL_LIBRARIES with $(XTOOLLIB) $(XMULIB) in your Tgif.tmpl file.
257XCOMM -DUSE_XAPPLRESDIR
258XCOMM    Include the above line in the DEFINES if $XAPPLRESDIR/Tgif is used to
259XCOMM    specify the resource file.  If your system does not have putenv()
260XCOMM    (such as IBM-RT), then this won't work.  This directive has no effect
261XCOMM    if -DUSE_XT_INITIALIZE is used.
262XCOMM -DXAPPLOADDIR_DEF
263XCOMM    If you define USE_XAPPLRESDIR, define this to a default directory
264XCOMM    to use in case $XAPPLRESDIR isn't set.
265XCOMM -DNO_THIN_LINE
266XCOMM    Include the above line in the DEFINES if a line width of 0 causes
267XCOMM    your server to crash.  This is to get around a bug in some X servers.
268XCOMM -DTHIN_OVAL_AND_ARC
269XCOMM    Include the above line in the DEFINES if you want 0 width arcs to
270XCOMM    be used when the width of an arc is less than or equal to 1.
271XCOMM    (Sun3 server has a bug that makes drawing ovals and arcs with
272XCOMM    width other than 0 VERY slow).
273XCOMM -DKEEP_WHEN_PRINT
274XCOMM    Include the above line in the DEFINES if you don't want the temp
275XCOMM    file to be deleted after sending the print job to the printer.
276XCOMM    (Some VMS systems might require this flag to be used.)
277XCOMM -DPRINT_CMD=\"lpr\"
278XCOMM    Include the above line in the DEFINES if you want to configure tgif
279XCOMM    to use a default print command.
280XCOMM -DNOTR4MODE
281XCOMM    Include the above line in the DEFINES if you are running X11R3.
282XCOMM    This will cause tgif NOT to use some X11R4 window manager related
283XCOMM    functions that's not present in R3.
284XCOMM -DMAPBEFORESELECT
285XCOMM    Include the above line in the DEFINES to call XMapWindow() before
286XCOMM    calling XSelectInput().  This might be needed to get around some
287XCOMM    server bugs.
288XCOMM -DDONT_FREE_COLORMAP
289XCOMM    Include the above line in the DEFINES if you don't want the colormap
290XCOMM    to be freed when tgif exits.
291XCOMM -DA4PAPER
292XCOMM    Include the above line in the DEFINES if you want to print on A4 paper
293XCOMM    (8.25in by 11.7in or about 21cm by 29.7cm).
294
295OBJ1 =	align.o animate.o arc.o attr.o auxtext.o \
296	box.o button.o \
297	chat.o chinput.o choice.o choose.o cli_xcin.o \
298		convkinput.o convxim.o cmd.o color.o cutpaste.o \
299		cursor.o \
300	dialog.o drawing.o dup.o \
301	edit.o eps.o exec.o expr.o \
302	file.o font.o ftp.o \
303	grid.o group.o \
304	hash.o help.o http.o \
305	imgproc.o import.o ini.o inmethod.o \
306	list.o \
307	mainloop.o mainmenu.o mark.o markup.o menu.o \
308		menuinfo.o miniline.o move.o msg.o \
309	names.o navigate.o nkf.o \
310	obj.o oval.o \
311	page.o pattern.o pin.o pngtrans.o poly.o polygon.o ps.o \
312	raster.o rcbox.o rect.o remote.o rm_intrf.o ruler.o \
313	scroll.o select.o setup.o shape.o shortcut.o \
314		special.o spline.o stk.o stream.o stretch.o \
315		strtbl.o \
316	tangram2.o tdgtbase.o tdgtbmpl.o tdgtbrow.o tdgtbtn.o tdgtdraw.o \
317		tdgtlist.o tdgtmsg.o tdgtsedt.o tgif_dbg.o tgcwheel.o \
318		tgcwdl.o tginssym.o tgisdl.o tgtwb5.o tgtwb5dl.o tgtwb5xl.o \
319		tidget.o tcp.o text.o \
320	util.o \
321	version.o vms_comp.o \
322	wb.o wb1.o wb2.o wb3.o wb_buff.o wb_mcast.o \
323		wb_seg.o \
324	xbitmap.o xpixmap.o xprtfltr.o \
325	z_intrf.o
326
327OBJS1 = tgif.o $(OBJ1)
328OBJS2 = prtgif.o
329OBJS3 = testdrive.o $(OBJ1)
330FRONTENDOBJS = frontend.o $(OBJ1)
331
332CURRENTDIR =./
333
334SRCS1 = $(CURRENTDIR)*.c
335SRCS2 =
336SRCS3 =
337
338ComplexProgramTarget_1($(TARGET_1),$(LOCAL_LIBRARIES),NullParameter)
339/*
340 * ComplexProgramTarget_2(prtgif,NullParameter,NullParameter)
341 * ComplexProgramTarget_3(testdrive,$(LOCAL_LIBRARIES),NullParameter)
342 */
343
344XCOMM rmcast/src/librmcast.a:
345XCOMM 	pushd rmcast; make $(CCLL)$(EEAANN); ./configure; make; popd
346
347/*
348 * NormalRelocatableTarget(frontend11,$(FRONTENDOBJS))
349 */
350
351ICONSDIR =icons/
352
353MakeDirectories(install,$(TGIFDIR))
354MakeDirectories(install,$(TGIFDIR)/hicolor)
355MakeDirectories(install,$(TGIFDIR)/hicolor/22x22)
356MakeDirectories(install,$(TGIFDIR)/hicolor/22x22/apps)
357MakeDirectories(install,$(TGIFDIR)/hicolor/32x32)
358MakeDirectories(install,$(TGIFDIR)/hicolor/32x32/apps)
359MakeDirectories(install,$(TGIFDIR)/hicolor/48x48)
360MakeDirectories(install,$(TGIFDIR)/hicolor/48x48/apps)
361MakeDirectories(install,$(TGIFDIR)/hicolor/64x64)
362MakeDirectories(install,$(TGIFDIR)/hicolor/64x64/apps)
363MakeDirectories(install,$(TGIFDIR)/hicolor/128x128)
364MakeDirectories(install,$(TGIFDIR)/hicolor/128x128/apps)
365InstallNonExec(tgif.Xdefaults,$(TGIFDIR))
366InstallNonExec(tgificon.eps,$(TGIFDIR))
367InstallNonExec(tgificon.obj,$(TGIFDIR))
368InstallNonExec(tgificon.xbm,$(TGIFDIR))
369InstallNonExec(tgificon.xpm,$(TGIFDIR))
370InstallNonExec(tgif.gif,$(TGIFDIR))
371InstallNonExec(tangram.sym,$(TGIFDIR))
372InstallNonExec(eq4.sym,$(TGIFDIR))
373InstallNonExec(eq4-2x.sym,$(TGIFDIR))
374InstallNonExec(eq4-2x-jpg.sym,$(TGIFDIR))
375InstallNonExec(eq4-2x-nowin-jpg.sym,$(TGIFDIR))
376InstallNonExec(eq4-ps2epsi.sym,$(TGIFDIR))
377InstallNonExec(eq4-epstool.sym,$(TGIFDIR))
378InstallNonExec(eq4xpm.sym,$(TGIFDIR))
379InstallNonExec(eq4-lyx-ps2epsi.sym,$(TGIFDIR))
380InstallNonExec(eq4xpm-land.sym,$(TGIFDIR))
381InstallNonExec(eq4png.sym,$(TGIFDIR))
382InstallNonExec(eq4jpg.sym,$(TGIFDIR))
383InstallNonExec(keys.obj,$(TGIFDIR))
384InstallNonExec(Copyright,$(TGIFDIR))
385InstallNonExec(LICENSE.QPL,$(TGIFDIR))
386InstallNonExec($(ICONSDIR)22x22/apps/tgificon.png,$(TGIFDIR)/hicolor/22x22/apps)
387InstallNonExec($(ICONSDIR)32x32/apps/tgificon.png,$(TGIFDIR)/hicolor/32x32/apps)
388InstallNonExec($(ICONSDIR)48x48/apps/tgificon.png,$(TGIFDIR)/hicolor/48x48/apps)
389InstallNonExec($(ICONSDIR)64x64/apps/tgificon.png,$(TGIFDIR)/hicolor/64x64/apps)
390InstallNonExec($(ICONSDIR)128x128/apps/tgificon.png,$(TGIFDIR)/hicolor/128x128/apps)
391
392.SUFFIXES: .l .man
393
394.l.man:
395	rm -f $*.man
396	cp $*.l $*.man
397
398.e.o:
399
400SPICEDIR =spice/
401XBMDIR =xbm/
402RMCASTDIR_QPL =rmcast-qpl
403RMCASTDIR_GPL =rmcast-gpl
404
405OBJDEMO = an-sr-flip-flop.obj fonts.obj slide-demo.obj keys.obj \
406	  $(SPICEDIR)*.obj launch-demo.obj launch-demo-1.obj
407SYMDEMO = flip-flop.sym nand2.sym pin.sym tangram.sym $(SPICEDIR)*.sym \
408	  eq4.sym eq4-2x.sym eq4-ps2epsi.sym eq4-epstool.sym eq4xpm.sym \
409	  eq4-lyx-ps2epsi.sym eq4xpm-land.sym eq4png.sym eq4jpg.sym \
410	  eq4-2x-jpg.sym eq4-2x-nowin-jpg.sym
411MISCTAR = /**/*.man README README.tgwb Copyright License $(SPICEDIR)*.mod \
412		tgif.pl example.tex HISTORY testdrive.pl frontend.pl \
413		Imakefile.tgwb NEWS AUTHORS ChangeLog \
414		bootstrap.pl scan2ac.awk $(SPICEDIR)README
415AUTOCONF_FILES = Makefile Makefile.in config.h.in config.h \
416		 mkinstalldirs install-sh missing depcomp \
417		 configure configure.ac aclocal.m4 stamp-h1 \
418		 config.status
419AUTOCONF_JUNK = autom4te.cache configure.scan config.log config.status
420AUTOCONF_JUNK = autom4te.cache configure.scan
421RMCASTJUNK_QPL = $(RMCASTDIR_QPL)/stamp-h1 $(RMCASTDIR_QPL)/Makefile \
422		$(RMCASTDIR_QPL)/LOG $(RMCASTDIR_QPL)/config.status \
423		$(RMCASTDIR_QPL)/config.log $(RMCASTDIR_QPL)/config.h \
424		$(RMCASTDIR_QPL)/mcastproxy/.deps \
425		$(RMCASTDIR_QPL)/rmchat/.deps $(RMCASTDIR_QPL)/src/.deps \
426		$(RMCASTDIR_QPL)/mcastproxy/Makefile \
427		$(RMCASTDIR_QPL)/rmchat/Makefile $(RMCASTDIR_QPL)/src/Makefile
428CVSSUBDIRS_QPL =\
429 $(RMCASTDIR_QPL)/config/CVS\
430 $(RMCASTDIR_QPL)/doc/manual/CVS\
431 $(RMCASTDIR_QPL)/doc/CVS\
432 $(RMCASTDIR_QPL)/etc/CVS\
433 $(RMCASTDIR_QPL)/mcastproxy/CVS\
434 $(RMCASTDIR_QPL)/rmchat/CVS\
435 $(RMCASTDIR_QPL)/src/CVS\
436 $(RMCASTDIR_QPL)/tgif/CVS\
437 $(RMCASTDIR_QPL)/tools/scripts/special/CVS\
438 $(RMCASTDIR_QPL)/tools/scripts/CVS\
439 $(RMCASTDIR_QPL)/tools/tcpdump2rmcast/CVS\
440 $(RMCASTDIR_QPL)/tools/CVS\
441 $(RMCASTDIR_QPL)/CVS\
442 po/ja/CVS\
443 po/ru/CVS\
444 po/fr/CVS\
445 po/CVS
446CVSSUBDIRS_GPL =\
447 $(RMCASTDIR_GPL)/config/CVS\
448 $(RMCASTDIR_GPL)/doc/manual/CVS\
449 $(RMCASTDIR_GPL)/doc/CVS\
450 $(RMCASTDIR_GPL)/tgif/CVS\
451 $(RMCASTDIR_GPL)/tools/tcpdump2rmcast/CVS\
452 $(RMCASTDIR_GPL)/tools/scripts/special/CVS\
453 $(RMCASTDIR_GPL)/tools/scripts/CVS\
454 $(RMCASTDIR_GPL)/tools/mcastproxy/CVS\
455 $(RMCASTDIR_GPL)/tools/CVS\
456 $(RMCASTDIR_GPL)/examples/rmchat/rmchat-files/CVS\
457 $(RMCASTDIR_GPL)/examples/rmchat/CVS\
458 $(RMCASTDIR_GPL)/examples/CVS\
459 $(RMCASTDIR_GPL)/CVS\
460 po/ja/CVS\
461 po/ru/CVS\
462 po/fr/CVS\
463 po/CVS
464CCLL = cl
465EEAANN = ean
466BACKUPDIR = /mnt/halfmoon/home/william/src/tgif/v4/backup
467
468distr: tar versioninfo
469
470rcstar:
471	@rm -f home/RCS3.tar.gz.save
472	@if [ -f home/RCS3.tar.gz ]; then \
473		mv home/RCS3.tar.gz home/RCS3.tar.gz.save; \
474	fi
475	tar cf home/RCS3.tar RCS xbm.RCS
476	gzip home/RCS3.tar
477	ls -l home/RCS3.tar.gz
478
479spec:
480	@rm -f tgif.spec
481	echo "%define ver	$(TGIFVERSION)" > tgif.spec
482	cat tgif.spec.in >> tgif.spec
483
484clean-rmcast-qpl:
485	pushd rmcast-qpl; ./configure; make $(CCLL)$(EEAANN); popd
486	rm -rf $(RMCASTJUNK_QPL)
487
488clean-rmcast-gpl:
489	pushd rmcast-gpl; make $(CCLL)$(EEAANN); popd
490
491install-tgwb-qpl: install
492	$(INSTALL) $(INSTALLFLAGS) rmcast/tgif/tgwb $(DESTDIR)$(BINDIR)/tgwb
493	$(INSTALL) $(INSTALLFLAGS) $(INSTPGMFLAGS) \
494		rmcast/mcastproxy/mcastproxy $(DESTDIR)$(BINDIR)/mcastproxy
495
496install-tgwb: install-tgwb-qpl
497
498install-tgwb-gpl: install
499	$(INSTALL) $(INSTALLFLAGS) rmcast/tools/scripts/tgwb \
500		$(DESTDIR)$(BINDIR)/tgwb
501	$(INSTALL) $(INSTALLFLAGS) $(INSTPGMFLAGS) \
502		rmcast/tools/mcastproxy/mcastproxy \
503		$(DESTDIR)$(BINDIR)/mcastproxy
504
505tar: spec clean-rmcast-qpl
506	rm -f tgif-$(TGIFVERSION).tar/**/*
507	tar cvf tgif-$(TGIFVERSION).tar /**/*.c /**/*.e /**/*.h \
508		Makefile.am Makefile.noimake Imakefile Target.tmpl Tgif.tmpl \
509		Tgif.tmpl-/**/* descrip./**/??? tgif.spec.in tgif.spec \
510		make./**/* VMS_MAKE_TGIF.COM tgificon.obj $(XBMDIR)*.xbm \
511		tgificon.xbm tgificon.xpm tgif.gif tgif.Xdefaults tgificon.eps \
512		$(ICONSDIR)22x22/apps//**/*.png \
513		$(ICONSDIR)32x32/apps//**/*.png \
514		$(ICONSDIR)48x48/apps//**/*.png \
515		$(ICONSDIR)64x64/apps//**/*.png \
516		$(ICONSDIR)128x128/apps//**/*.png \
517		$(OBJDEMO) \
518		$(SYMDEMO) \
519		$(MISCTAR) LICENSE.QPL \
520		$(RMCASTDIR_QPL) \
521		po
522	rm -rf tgif-$(TGIFVERSION)
523	mkdir tgif-$(TGIFVERSION)
524	cd tgif-$(TGIFVERSION); tar xvf ../tgif-$(TGIFVERSION).tar; cd ..
525	cd tgif-$(TGIFVERSION); rm -rf $(CVSSUBDIRS_QPL); cd ..
526	cd tgif-$(TGIFVERSION); mv $(RMCASTDIR_QPL) rmcast; cd ..
527	cd tgif-$(TGIFVERSION); ./bootstrap.pl $(TGIFVERSION); cd ..
528	cd tgif-$(TGIFVERSION); rm -rf $(AUTOCONF_JUNK); cd ..
529	rm -f tgif-$(TGIFVERSION).tar
530	tar cvf tgif-$(TGIFVERSION).tar tgif-$(TGIFVERSION)
531	rm -rf tgif-$(TGIFVERSION)
532	gzip tgif-$(TGIFVERSION).tar
533
534rpmtar: spec clean-rmcast-qpl
535	rm -f tgif-$(TGIFVERSION).tar/**/*
536	tar cvf tgif-$(TGIFVERSION).tar /**/*.c /**/*.e /**/*.h \
537		Makefile.am Makefile.noimake Imakefile Target.tmpl Tgif.tmpl \
538		Tgif.tmpl-/**/* descrip./**/??? tgif.spec.in tgif.spec \
539		make./**/* VMS_MAKE_TGIF.COM tgificon.obj $(XBMDIR)*.xbm \
540		tgificon.xbm tgificon.xpm tgif.gif tgif.Xdefaults tgificon.eps \
541		$(ICONSDIR)22x22/apps//**/*.png \
542		$(ICONSDIR)32x32/apps//**/*.png \
543		$(ICONSDIR)48x48/apps//**/*.png \
544		$(ICONSDIR)64x64/apps//**/*.png \
545		$(ICONSDIR)128x128/apps//**/*.png \
546		$(OBJDEMO) \
547		$(SYMDEMO) \
548		$(MISCTAR) LICENSE.QPL \
549		rmcast \
550		po
551	rm -rf tgif-$(TGIFVERSION)
552	mkdir tgif-$(TGIFVERSION)
553	cd tgif-$(TGIFVERSION); tar xvf ../tgif-$(TGIFVERSION).tar; cd ..
554	cd tgif-$(TGIFVERSION); rm -rf $(CVSSUBDIRS_QPL); cd ..
555	cd tgif-$(TGIFVERSION); ./bootstrap.pl $(TGIFVERSION); cd ..
556	cd tgif-$(TGIFVERSION); rm -rf $(AUTOCONF_JUNK); cd ..
557	rm -f tgif-$(TGIFVERSION).tar
558	tar cvf tgif-$(TGIFVERSION).tar tgif-$(TGIFVERSION)
559	rm -rf tgif-$(TGIFVERSION)
560	gzip tgif-$(TGIFVERSION).tar
561
562QPL: spec
563	rm -f tgif-QPL-$(TGIFVERSION).tar/**/*
564	tar cvf tgif-QPL-$(TGIFVERSION).tar /**/*.c /**/*.e /**/*.h \
565		Makefile.am Makefile.noimake Imakefile Target.tmpl Tgif.tmpl \
566		Tgif.tmpl-/**/* descrip./**/??? tgif.spec.in tgif.spec \
567		make./**/* VMS_MAKE_TGIF.COM tgificon.obj $(XBMDIR)*.xbm \
568		tgificon.xbm tgificon.xpm tgif.gif tgif.Xdefaults tgificon.eps \
569		$(ICONSDIR)22x22/apps//**/*.png \
570		$(ICONSDIR)32x32/apps//**/*.png \
571		$(ICONSDIR)48x48/apps//**/*.png \
572		$(ICONSDIR)64x64/apps//**/*.png \
573		$(ICONSDIR)128x128/apps//**/*.png \
574		$(OBJDEMO) \
575		$(SYMDEMO) \
576		$(MISCTAR) LICENSE.QPL \
577		rmcast \
578		po
579	rm -rf tgif-QPL-$(TGIFVERSION)
580	mkdir tgif-QPL-$(TGIFVERSION)
581	cd tgif-QPL-$(TGIFVERSION);tar xvf ../tgif-QPL-$(TGIFVERSION).tar;cd ..
582	rm -f tgif-QPL-$(TGIFVERSION).tar
583	cd tgif-QPL-$(TGIFVERSION); ./bootstrap.pl $(TGIFVERSION); cd ..
584	cd tgif-QPL-$(TGIFVERSION); rm -rf $(AUTOCONF_JUNK); cd ..
585	tar cvf tgif-QPL-$(TGIFVERSION).tar tgif-QPL-$(TGIFVERSION)
586	rm -rf tgif-QPL-$(TGIFVERSION)
587	gzip tgif-QPL-$(TGIFVERSION).tar
588
589rmcastlinks:
590	ln -s rmcast rmcast-qpl
591	ln -s rmcast rmcast-gpl
592
593rpm-src: rmcastlinks rpmtar
594	rpmbuild -ba tgif.spec
595
596rpm-bin: rmcastlinks rpmtar
597	# The following stopped working after Fedora 11
598	#	rpmbuild -ta tgif-$(TGIFVERSION).tar.gz
599	#
600	# Beyond Fedora 11, if the following command failed, try this and then
601	# 		run it again:
602	#	cp tgif-$(TGIFVERSION).tar.gz /usr/src/redhat/SOURCE
603	rpmbuild -ba --target i386-linux tgif.spec
604
605backup: distr
606	rm -rf $(BACKUPDIR).old
607	mv $(BACKUPDIR) $(BACKUPDIR).old
608	mkdir $(BACKUPDIR)
609	tar cf - RCS VersionInfo tgif-$(TGIFVERSION).tar.gz | \
610		(cd $(BACKUPDIR); tar xvpf -)
611
612MAN_1 = README /**/*.man Imakefile Copyright License
613BASIC_1 = Makefile.noimake descrip./**/* make./**/* HISTORY tgif.Xdefaults \
614	  Tgif.tmpl Tgif.tmpl-/**/* VMS_MAKE_TGIF.COM
615
616MISC_1 = an-sr-flip-flop.obj fonts.obj slide-demo.obj keys.obj \
617	 launch-demo.obj launch-demo-1.obj \
618	 flip-flop.sym nand2.sym pin.sym tangram.sym tgificon.xbm \
619	 eq4.sym eq4-2x.sym eq4-ps2epsi.sym eq4-epstool.sym eq4xpm.sym \
620	 eq4-lyx-ps2epsi.sym eq4xpm-land.sym eq4png.sym eq4jpg.sym \
621	 eq4-2x-jpg.sym eq4-2x-nowin-jpg.sym
622MISC_2 = tgif.pl testdrive.pl frontend.pl tgificon.obj example.tex
623MISC_3 = tgificon.xpm tgif.gif tgificon.eps
624SPICE_1 = spice $(SPICEDIR)*.obj $(SPICEDIR)*.sym $(SPICEDIR)*.mod
625
626shar:
627	rm -f tgif-$(TGIFVERSION).shar./**/*
628	shar -otgif-$(TGIFVERSION).shar.1 -n1 -e38 $(MAN_1)
629	shar -otgif-$(TGIFVERSION).shar.2 -n2 -e38 $(BASIC_1)
630	shar -otgif-$(TGIFVERSION).shar.3 -n3 -e38 a[a-n]/**/*.c
631	shar -otgif-$(TGIFVERSION).shar.4 -n4 -e38 a[o-s]/**/*.c
632	shar -otgif-$(TGIFVERSION).shar.5 -n5 -e38 a[t-z]/**/*.c
633	shar -otgif-$(TGIFVERSION).shar.6 -n6 -e38 b/**/*.c
634	shar -otgif-$(TGIFVERSION).shar.7 -n7 -e38 c[a-m]/**/*.c
635	shar -otgif-$(TGIFVERSION).shar.8 -n8 -e38 c[n-z]/**/*.c
636	shar -otgif-$(TGIFVERSION).shar.9 -n9 -e38 d/**/*.c
637	shar -otgif-$(TGIFVERSION).shar.10 -n10 -e38 e[a-d]/**/*.c
638	shar -otgif-$(TGIFVERSION).shar.11 -n11 -e38 e[e-z]/**/*.c
639	shar -otgif-$(TGIFVERSION).shar.12 -n12 -e38 f[a-i]/**/*.c
640	shar -otgif-$(TGIFVERSION).shar.13 -n13 -e38 f[j-z]/**/*.c
641	shar -otgif-$(TGIFVERSION).shar.14 -n14 -e38 [g-l]/**/*.c
642	shar -otgif-$(TGIFVERSION).shar.15 -n15 -e38 ma/**/*.c
643	shar -otgif-$(TGIFVERSION).shar.16 -n16 -e38 m[b-e]/**/*.c
644	shar -otgif-$(TGIFVERSION).shar.17 -n17 -e38 m[f-z]/**/*.c
645	shar -otgif-$(TGIFVERSION).shar.18 -n18 -e38 n/**/*.c
646	shar -otgif-$(TGIFVERSION).shar.19 -n19 -e38 o/**/*.c p[a-n]/**/*.c
647	shar -otgif-$(TGIFVERSION).shar.20 -n20 -e38 poly.c
648	shar -otgif-$(TGIFVERSION).shar.21 -n21 -e38 polygon.c p[p-z]/**/*.c
649	shar -otgif-$(TGIFVERSION).shar.22 -n22 -e38 r[a-c]/**/*.c stk/**/*.c
650	shar -otgif-$(TGIFVERSION).shar.23 -n23 -e38 r[d-z]/**/*.c
651	shar -otgif-$(TGIFVERSION).shar.24 -n24 -e38 sc/**/*.c sel/**/*.c
652	shar -otgif-$(TGIFVERSION).shar.25 -n25 -e38 set/**/*.c s[f-p]/**/*.c
653	shar -otgif-$(TGIFVERSION).shar.26 -n26 -e38 str/**/*.c
654	shar -otgif-$(TGIFVERSION).shar.27 -n27 -e38 text.c
655	shar -otgif-$(TGIFVERSION).shar.28 -n28 -e38 testdrive.c t[f-z]/**/*.c \
656				[u-w]/**/*.c
657	shar -otgif-$(TGIFVERSION).shar.29 -n29 -e38 x[a-m]/**/*.c
658	shar -otgif-$(TGIFVERSION).shar.30 -n30 -e38 x[n-z]/**/*.c
659	shar -otgif-$(TGIFVERSION).shar.31 -n31 -e38 [a-n]/**/*.e
660	shar -otgif-$(TGIFVERSION).shar.32 -n32 -e38 [o-z]/**/*.e /**/*.h
661	shar -otgif-$(TGIFVERSION).shar.33 -n33 -e38 xbm xbm/[a-k]/**/*.xbm \
662				xbm/l[a-s]/**/*.xbm
663	shar -otgif-$(TGIFVERSION).shar.34 -n34 -e38 xbm/l[t-z]/**/*.xbm \
664				xbm/[m-z]/**/*.xbm
665	shar -otgif-$(TGIFVERSION).shar.35 -n35 -e38 $(MISC_1)
666	shar -otgif-$(TGIFVERSION).shar.36 -n36 -e38 $(MISC_2)
667	shar -otgif-$(TGIFVERSION).shar.37 -n37 -e38 $(MISC_3)
668	shar -otgif-$(TGIFVERSION).shar.38 -n38 -e38 $(SPICE_1)
669
670versioninfo:
671	ident .psmac /**/*.c /**/*.e /**/*.h Makefile.noimake Imakefile \
672		Tgif.tmpl /**/*.man tgif.pl README example.tex HISTORY \
673		tgificon.obj an-sr-flip-flop.obj fonts.obj slide-demo.obj \
674		keys.obj flip-flop.sym nand2.sym pin.sym tangram.sym \
675		eq4.sym eq4-2x.sym eq4-ps2epsi.sym eq4-epstool.sym \
676		$(SPICEDIR)*.obj $(SPICEDIR)*.sym testdrive.pl frontend.pl \
677		descrip.mms descrip.opt tgifmacro.ps $(XBMDIR)*.xbm \
678		tgificon.xbm tgif.Xdefaults tgificon.eps \
679		VMS_MAKE_TGIF.COM launch-demo.obj launch-demo-1.obj \
680		Copyright License make./**/* Tgif.tmpl-/**/* tgif.spec.in \
681		Imakefile.tgwb README.tgwb Target.tmpl $(SPICEDIR)README \
682		eq4xpm.sym eq4-lyx-ps2epsi.sym eq4xpm-land.sym eq4png.sym \
683		eq4jpg.sym eq4-2x-jpg.sym bootstrap.pl scan2ac.awk Makefile.am \
684		eq4-2x-nowin-jpg.sym \
685		> VersionInfo/Distribution/tgif-$(TGIFVERSION)
686