XCOMM $XConsortium: Imakefile /main/65 1996/02/02 14:27:54 kaleb $
XCOMM $Id: Imakefile,v 6.3 1996/07/12 05:01:03 kagotani Rel $

#include "kterm.h"

/*
 * for compilation with R6...
 */
#ifndef XkbClientDefines
#define XkbClientDefines
#define XkbClientDepLibs
#define XkbClientLibs
      XPOLL_DEF = -DNO_XPOLL_H
#endif

/*
 * add -DWTMP and -DLASTLOG if you want them.
 */
#if SetTtyGroup			/* turn on in config/machine.cf */
   TTYGROUPDEF = -DUSE_TTY_GROUP
#endif
#if UsePUCCPtyd			/* turn on in config/site.def */
    PUCCPTYDDEF = -DPUCC_PTYD		/* does not need to be setuid */
         PTYLIB = -lpucc
#endif

 OSMAJORVERSION = OSMajorVersion
 OSMINORVERSION = OSMinorVersion

   MAIN_DEFINES = -DUTMP $(TTYGROUPDEF) $(PUCCPTYDDEF) \
		  -DOSMAJORVERSION=$(OSMAJORVERSION) \
		  -DOSMINORVERSION=$(OSMINORVERSION)
   MISC_DEFINES = /* -DALLOWLOGFILEEXEC */ 
    XKB_DEFINES = XkbClientDefines
        DEFINES = $(XKB_DEFINES) $(XPOLL_DEF) -DKTERM -DSTATUSLINE -DKEEPALIVE

#ifdef KTERM_XIM
        XIMSRCS = xim.c
        XIMOBJS = xim.o
#endif
#ifdef KTERM_KINPUT2
    KINPUT2SRCS = kinput2.c convlib.c
    KINPUT2OBJS = kinput2.o convlib.o
#endif
#ifndef KTERM_NOTEK
        TEKSRCS = TekPrsTbl.c Tekproc.c
        TEKOBJS = TekPrsTbl.o Tekproc.o
#endif
          SRCS1 = button.c charproc.c cursor.c data.c input.c \
		  main.c menu.c misc.c screen.c scrollbar.c tabs.c \
		  util.c VTPrsTbl.c \
		  $(TEKSRCS) gset.c convert.c $(XIMSRCS) $(KINPUT2SRCS)
          OBJS1 = button.o charproc.o cursor.o data.o input.o \
		  main.o menu.o misc.o screen.o scrollbar.o tabs.o \
		  util.o VTPrsTbl.o \
		  $(TEKOBJS) gset.o convert.o $(XIMOBJS) $(KINPUT2OBJS)
           SRCS = $(SRCS1)
           OBJS = $(OBJS1)
       DEPLIBS1 = XkbClientDepLibs XawClientDepLibs
       PROGRAMS = kterm

#ifndef TermcapLibrary
#if SystemV && !defined(MacIIArchitecture)
#if defined(CrayArchitecture) || defined(HPArchitecture) || defined(RsArchitecture)
#define TermcapLibrary -lcurses		/* special cases of System V */
#else
#define TermcapLibrary -ltermlib	/* usually in here */
#endif
#else
#define TermcapLibrary -ltermcap	/* bsd puts it here */
#endif
#endif

     TERMCAPLIB = TermcapLibrary

AllTarget($(PROGRAMS))

SpecialCObjectRule(main,$(_NOOP_),$(MAIN_DEFINES))
SpecialCObjectRule(misc,$(_NOOP_),$(MISC_DEFINES))
SpecialCObjectRule(charproc,$(_NOOP_),$(MISC_DEFINES))

#if InstallXtermSetUID
SetUIDProgramTarget(kterm,$(OBJS1),$(DEPLIBS1),XkbClientLibs XawClientLibs,$(TERMCAPLIB) $(PTYLIB))
#else
NormalProgramTarget(kterm,$(OBJS1),$(DEPLIBS1),XkbClientLibs XawClientLibs,$(TERMCAPLIB) $(PTYLIB))
#endif

#if InstallXtermSetUID && defined(SunArchitecture) && HasSharedLibraries && OSMajorVersion < 5
#if AlternateUsrLibDir
#if OSMajorVersion == 4 && OSMinorVersion >= 1
LDOVERRIDE = -L$(DESTDIR)$(USRLIBDIR)
#else
#if HasGcc
LDOVERRIDE = -static -L$(DESTDIR)$(USRLIBDIR)
#else
LDOVERRIDE = -Bstatic -L$(DESTDIR)$(USRLIBDIR)
LDRESUME = -Bdynamic
#endif
#endif
#endif
install:: kterm
	MakeDir($(DESTDIR)$(BINDIR))
	RemoveFile(kterm.inst)
	LinkRule(kterm.inst,$(CDEBUGFLAGS) $(CCOPTIONS) $(EXTRA_LDOPTIONS) $(LOCAL_LDFLAGS),$(OBJS1),$(LDOVERRIDE) XawClientLibs $(LDRESUME) $(LDLIBS) $(TERMCAPLIB) $(PTYLIB))
	$(INSTALL) -c $(INSTPGMFLAGS) $(INSTUIDFLAGS) kterm.inst $(DESTDIR)$(BINDIR)/kterm
	RemoveFile(kterm.inst)
#else
#if InstallXtermSetUID
InstallProgramWithFlags(kterm,$(BINDIR),$(INSTUIDFLAGS))
#else
InstallProgramWithFlags(kterm,$(BINDIR),NullParameter)
#endif
#endif

InstallAppDefaults(KTerm)
InstallManPage(kterm,$(MANDIR))
DependTarget()
