# $Header: /build/srclib/clients/session/session/RCS/Makefile,v 1.46 90/12/17 12:40:35 pac Exp [Makefile,v 1.1.1.7 92/03/09 17:36:07 franzini Exp ]$
#
#       session - makefile for session
#
XVERSION= -DX11

BASEDIR=../../../..
DEPEND=$(BASEDIR)/makedepend/makedepend
CONFDIR = /usr/bin
HELPDIR=$(DESTDIR)/usr/lib/X11/help
#AUX = vax/aux.vax
#CAPSARROOT=/build/bl3/${AUX}
#DDIFROOT=/build/bl3/${AUX}
INCLUDES = -I.  -I$(BASEDIR)/lib/dwt -I$(DESTDIR)/usr/include -I$(DESTDIR)/usr/include/X11 -I$(BASEDIR)/include -I$(BASEDIR) -I$(ISLROOT)/usr/include -I$(ISLROOT)/usr/include/X11 -I$(BASEDIR)/lib/dwt -I$(DESTDIR)/usr/include/DPS
CDEBUGFLAGS= -O

VERFLAGS	= -DC2_SECURITY -DAUTHEN
AUTHLIBS	= -lauth
KRBLIBS		= -lckrb -lkrb -lknet -ldes

CFLAGS = ${CDEBUGFLAGS} $(INCLUDES) ${XVERSION} -w -DULTRIX ${VERFLAGS} -DDPS_DEF_TOKENTYPE=DPS_LO_NATIVE -DDECdas
#CDALIB = /usr/lib/libddif.a
XLIB= $(DESTDIR)/usr/lib/libdps.a $(DESTDIR)/usr/lib/libXext.a \
      $(DESTDIR)/usr/lib/libdwt.a $(DESTDIR)/usr/lib/libX11.a
#XLIB = /a14c/mikey/srclib/lib/dwt/AttachedDB.c $(BASEDIR)/kit/usr/lib/libdwt.a $(BASEDIR)/kit/usr/lib/libX11.a

SRCS = createpanel.c smresource.c smdata.c unixcallbacks.c smverify.c \
	initsetup.c smdialog.c smconvert.c setupcb.c main.c \
	pause.c caution.c decw_createcaution.c \
	decw_displayerr.c decw_createerr.c merge.c hacktext.c \
	readfile.c bw_widget.c color.c \
	color_widget.c interdialog.c keydialog.c \
	pointdialog.c prtdialog.c printcb.c setroot.c updateproperty.c \
	updatesetup.c utilities.c windowdialog.c initproperty.c changeprop.c \
	sessioncb.c sminit.c keymap.c smicon.c \
	helpcb.c securitydialog.c getcoor.c \
	createcb.c \
        endsession.c messages.c patterns.c \
	resetserver.c screendialog.c smshare.c \
	appdefdialog.c appmenudialog.c autostartdialog.c \
	utilities2.c 
 
P2OBJS = createpanel.o smresource.o smdata.o unixcallbacks.o smverify.o \
	initsetup.o smdialog.o smconvert.o setupcb.o main.o \
	pause.o caution.o decw_createcaution.o \
	decw_displayerr.o decw_createerr.o merge.o hacktext.o \
	readfile.o bw_widget.o color.o \
	color_widget.o interdialog.o keydialog.o \
	pointdialog.o prtdialog.o printcb.o setroot.o updateproperty.o \
	updatesetup.o utilities.o windowdialog.o initproperty.o changeprop.o \
	sessioncb.o sminit.o keymap.o smicon.o \
	helpcb.o securitydialog.o getcoor.o \
	createcb.o \
        endsession.o messages.o patterns.o \
	resetserver.o screendialog.o smshare.o \
	appdefdialog.o appmenudialog.o autostartdialog.o \
	utilities2.o 


#removed checkpass.o creterm.o crevue.o logininfo.o pseudo.o qios.o from p2objs
#removed startte.o 
#removed session.o most of this is in main.c

#CDALIB =
 
#LIB= $(TOP)/clients/prsc/libprsc.a \
#     $(CAPSARROOT)/usr/lib/libimg.a \
#     $(CAPSARROOT)/usr/lib/libchf.a \
#     /usr/lib/libddif.a \
#     $(TOP)/clients/lib/print/libpw.a \
#     $(XLIB) \
#     -ldnet -lm 

#LIB= ../prtscreen/libprsc.a \
#     $(ISLROOT)/usr/lib/libimg.a \
#     $(CAPSARROOT)/usr/lib/libchf.a \
#     /usr/lib/libddif.a \
#     ../prtwidget/libpw.a \
#     $(XLIB) \
#     -ldnet -lm 

LIB= ../printscr/libprsc.a \
     ../../lib/print/libpw.a \
     $(ISLROOT)/usr/lib/libids.a \
     $(ISLROOT)/usr/lib/libimg.a \
     $(ISLROOT)/usr/lib/libchf.a \
     -lddif \
     $(XLIB) \
     $(DESTDIR)/usr/lib/libsmt.a \
     $(DEC_TOP)/extensions/ip/libip.a \
     libdas.a \
     -ldnet -lm 

OBJS = ${P2OBJS}

PROGRAM = dxsession

all: createlink ${PROGRAM} getcons dxsession.uid

#all: ${PROGRAM}

relink::
	-rm -f $(PROGRAM) getcons

relink:: all

clean:
	rm -f *.bak *.o *~ \#* getcons $(PROGRAM)

install: all
	install -c -m 0644 decw_session.dat ${DESTDIR}/usr/lib/X11/app-defaults/SessionManager
	install -c -m 755 -o root dxsession ${DESTDIR}${CONFDIR}/dxsession
	install -c -m 4755 -o root getcons ${DESTDIR}/usr/lib/X11/getcons
	-mkdir $(HELPDIR)/dxsession
	install -c -m 644 Overview $(HELPDIR)/dxsession
	install -c -m 644 About $(HELPDIR)/dxsession
	install -c -m 644 dxsession.uid ${DESTDIR}/usr/lib/X11/uid/dxsession
	install -c -m 0644 decw_xdefaults.dat ${DESTDIR}/usr/lib/X11/app-defaults/Xdefaults

main.o: main.c
	$(CC) -c $(CFLAGS) main.c
	mv main.o main_main.o
	$(CC) -c $(CFLAGS) -DCOMBINE main.c

checkpass.o: checkpass.c
	$(CC) -c $(CFLAGS) checkpass.c

libsession.a: ${P2OBJS} checkpass.o
	rm -rf libsession.a
	ar cr libsession.a ${P2OBJS} checkpass.o
	ranlib libsession.a

#
#
$(PROGRAM): libsession.a libdas.a
	chmod +w libdas.a
	ranlib libdas.a
	chmod -w libdas.a
	${CC} ${CFLAGS} -o $(PROGRAM) main_main.o libsession.a  ${LIB} ${AUTHLIBS} ${KRBLIBS}

../keymap/keymap.o:
	(cd ../keymap ; make ${MFLAGS} )

../printscr/libprsc.a:
	 (cd ../printscr ;  make ${MFLAGS} )
#$(OBJS): $(SRCS)

getcons: getcons.c
	${CC} -o getcons ${CFLAGS} getcons.c $(DESTDIR)/usr/lib/libX11.a

lint:
	lint -baz $(INCLUDES) -DLIBDIR=\"${LIBDIR}\" ${SRCS} \
		../../Xlib/llib-lX.ln ../../toolkit/llib-lXt.ln

get:
	co -q    RCS/*

buildtree:
	@echo ${WHEREAMI}

createlink:
	rm -f decw\$$include 
	ln -s $(DESTDIR)/usr/include/X11 decw\$$include


# The following are my versions

#getcons: getcons.c
#	${CC} -o getcons ${CFLAGS} getcons.c -lX11

session: ${OBJS}
	${CC} -o session ${CFLAGS} ${OBJS} ${P2OBJS} ${LIB}
	echo decw$cursor.h:  local copy should be deleted

dxsession.uid:  sm.uil sm_color.uil sm_cust_appdef.uil sm_cust_appmenu.uil \
	sm_cust_autostart.uil sm_cust_keyboard.uil sm_cust_pointer.uil \
	sm_cust_printscreen.uil sm_cust_screen.uil sm_cust_security.uil \
	sm_cust_session.uil sm_cust_window.uil sm_defs.uil sm_main.uil \
	sm_misc.uil sm_set_lang_objects.uil sm_ui_text.uil sm_ui_values.uil
	${DESTDIR}/usr/bin/dxuil -o dxsession.uid  \
		-I${DESTDIR}/usr/include/X11 sm.uil

hacktext.o:
	${CC} -c ${CFLAGS} ${INCDIR1}  hacktext.c

touch:
	touch startte.o session.o qios.o pseudo.o logininfo.o creterm.o 
	touch createcb.o checkpass.o keymap.o sminit.o


${OBJS} ${P1OBJS} ${P2OBJS}: smdata.h smresource.h smstruct.h

saber_src:
	#load -Dvolatile= ${CFLAGS} ${srcs} ${LIB}

test:   ${OBJS}  ${P2OBJS}
	${CC} -o sess ${CFLAGS} -DTESTVERSION ${OBJS} ${P2OBJS} ${LIB}
	echo decw$cursor.h:  local copy should be deleted

removedebug:
	rm main.o sminit.o unixcallbacks.o securitydialog.o

uwsbuild:
	cd /build/bl3/vax/clients/session/session
	rm -fr *
	buildsubtree bl3 /build/bl3/vax -b vax clients/session/session
	compilecomp bl3 /build/bl3/vax -b vax clients/session/session

pmaxuwsbuild:
	( cd /build/bl3/max/clients/session/session ; rm -fr * )
	buildsubtree bl3 /build/bl3/max -b max clients/session/session > \
		/build/bl3/max/clients/session/session/log 
	compilecomp bl3 /build/bl3/max -b max clients/session/session >> \
		/build/bl3/max/clients/session/session/log 

depend:
	${DEPEND} -v -I. ${CFLAGS} -s'# DO NOT DELETE' *.c

# DO NOT DELETE THIS LINE -- make depend depends on it.
