##########################################################################
# (C) Copyright 1991 X/Open Company Limited
#
# All rights reserved.  No part of this source code may be reproduced,
# stored in a retrieval system, or transmitted, in any form or by any
# means, electronic, mechanical, photocopying, recording or otherwise,
# except as stated in the end-user licence agreement, without the prior
# permission of the copyright owners.
#
# X/Open and the 'X' symbol are trademarks of X/Open Company Limited in
# the UK and other countries.
#
#	SCCS:	@(#)POSIX.os/files/mkfifo/Makefile	Rel 4.4.1 (06/09/97)
#
#	PROJECT:	VSX
#	PRODUCT:	POSIX.os/files/mkfifo
#	AUTHOR:		Geoff Clare, UniSoft Ltd.
#	DATE CREATED:	7 Apr 1989
#	TARGETS:	T.mkfifo mkfifo_t4 mkfifo_t5 mkfifo_su
#
##########################################################################

CC =	cc
RM =		rm -f
# This is a working lint in the top level testset directory
LINT =	lint
PRINTER =	lpr
PRINTFLAGS =	
TET_ROOT =	../../../../..
VSXDIR =	../../../../SRC
SYSINC =	$(VSXDIR)/SYSINC
SYSLIBS =	
LIBVPORT =	$(VSXLIB)/vport.a
TET_EXECUTE =	../../../../TESTROOT

VSXINC =	$(VSXDIR)/INC
VSXLIB =	$(VSXDIR)/LIB
VSXBIN =	$(VSXDIR)/BIN
CHMOG =		$(VSXBIN)/chmog
GENLIB =	$(VSXLIB)/genlib.a
TSETLIB =	$(VSXLIB)/tsetlib.a

# What is installed:

INSTOWN =	vsx0
INSTOWN4 =	vsx1
INSTOWNSU =	root
INSTGRP =	vsxg0
INSTGRP5 =	vsxg1
INSTMODE =	755
INSTMODE4 =	4755
INSTMODE5 =	2755
INSTMODESU =	4755
INSTDIR =	$(TET_EXECUTE)/tset/POSIX.os/files/mkfifo

# product-wide libraries for ld(1):

LIBS =		$(TSETLIB) $(GENLIB) \
		$(VSXLIB)/vlib.a $(LIBVPORT) $(APILIB)

DBUG =	
COPTS =	
SDBFLAG =	
DEFINES =	

# INCS, as seen from obj directory
INCS =		-I$(TETINC) -I$(VSXINC) -I$(SYSINC)
CFLOCAL = -DMKFIFO_TEST
CFLAGS =	$(CFLOCAL) $(INCS) $(DEFINES) $(DBUG) $(COPTS) $(SDBFLAG)
LDFLAGS =	

CFILES0 =	mkfifo.c tbmkfifo.c
OFILES0 =	mkfifo.o tbmkfifo.o

CFILES4 =	mkfifo_t4.c tbmkfifo.c
OFILES4 =	mkfifo_t4.o tbmkfifo.o

CFILES5 =	mkfifo_t5.c tbmkfifo.c
OFILES5 =	mkfifo_t5.o tbmkfifo.o

CFILES17 =	../open/enospc.c
OFILES17 =	enospc.o

CFILESSU =	mkfifo_su.c tbmkfifo.c
OFILESSU =	mkfifo_su.o tbmkfifo.o

CFILES =	$(CFILES0) mkfifo_t4.c mkfifo_t5.c $(CFILES17) mkfifo_su.c

LINTFLAGS =	$(CFLOCAL) $(INCS) $(DEFINES)  -n
LINTLIBS =	-lvsx -lvlib -ltset -lgen -lvport
LINTDRV =	$(VSXDIR)/common/tet_startup/startup.c

# Targets: ---------------------------------------------------------

all:		T.mkfifo mkfifo_t4 mkfifo_t5 mkfifo_t17 mkfifo_su 

T.mkfifo:	$(OFILES0) $(TCM) $(VSXLIB)/startup.o $(LIBS)
		$(CC) -o $@ $(OFILES0) $(TCM) $(VSXLIB)/startup.o $(LIBS) $(SYSLIBS) $(LDFLAGS)
		@echo "	$@ made"

mkfifo_t4:	$(OFILES4) $(TCMCHILD) $(LIBS)
		$(CC) -o $@ $(OFILES4) $(TCMCHILD) $(LIBS) $(SYSLIBS) $(LDFLAGS)
		@echo "	$@ made"

mkfifo_t5:	$(OFILES5) $(TCMCHILD) $(LIBS)
		$(CC) -o $@ $(OFILES5) $(TCMCHILD) $(LIBS) $(SYSLIBS) $(LDFLAGS)
		@echo "	$@ made"

mkfifo_t17:	$(OFILES17) $(TCMCHILD) $(LIBS)
		$(CC) -o $@ $(OFILES17) $(TCMCHILD) $(LIBS) $(SYSLIBS) $(LDFLAGS)
		@echo "	$@ made"

$(OFILES17):	$(CFILES17)
		$(CC) -c $(CFLAGS) $(CFILES17)

mkfifo_su:	$(OFILESSU) $(TCMCHILD) $(LIBS)
		$(CC) -o $@ $(OFILESSU) $(TCMCHILD) $(LIBS) $(SYSLIBS) $(LDFLAGS)
		@echo "	$@ made"

INSTALL:	$(INSTDIR)/T.mkfifo $(INSTDIR)/mkfifo_t4 $(INSTDIR)/mkfifo_t5 \
			$(INSTDIR)/mkfifo_t17 $(INSTDIR)/mkfifo_su

$(INSTDIR)/T.mkfifo:	T.mkfifo
		$(CHMOG) $(INSTMODE) $(INSTOWN) $(INSTGRP) -m $? $@
		@echo " $? installed in $@"

$(INSTDIR)/mkfifo_t4:	mkfifo_t4
		$(CHMOG) $(INSTMODE4) $(INSTOWN4) $(INSTGRP) -m $? $@

$(INSTDIR)/mkfifo_t5:	mkfifo_t5
		$(CHMOG) $(INSTMODE5) $(INSTOWN) $(INSTGRP5) -m $? $@

$(INSTDIR)/mkfifo_su:	mkfifo_su
		$(CHMOG) $(INSTMODESU) $(INSTOWNSU) $(INSTGRP) -m $? $@

$(INSTDIR)/mkfifo_t17:	mkfifo_t17
		$(CHMOG) $(INSTMODESU) $(INSTOWNSU) $(INSTGRP) -m $? $@


$(LIBS):
	-@echo "Warning: cannot continue making: $@ needs to be installed"
		@false

LINT:		LINT0 LINT4 LINT5 LINT17 LINTSU

LINT0:
		$(LINT) $(LINTFLAGS) $(CFILES0) $(LINTDRV) $(LTCM) $(LINTLIBS)
LINT4:
		$(LINT) $(LINTFLAGS) $(CFILES4) $(LTCMC) $(LINTLIBS)
LINT5:
		$(LINT) $(LINTFLAGS) $(CFILES5) $(LTCMC) $(LINTLIBS)
LINT17:
		$(LINT) $(LINTFLAGS) $(CFILES17) $(LTCMC) $(LINTLIBS)
LINTSU:
		$(LINT) $(LINTFLAGS) $(CFILESSU) $(LTCMC) $(LINTLIBS)

FORCE:		CLOBBER all

PRINT:
		@$(PRINTER) $(PRINTFLAGS) Makefile $(CFILES)

CLEAN:
		$(RM) $(OFILES0) $(OFILES4) $(OFILES5) $(OFILES17) $(OFILESSU)

CLOBBER:	CLEAN
		$(RM) T.mkfifo mkfifo_t4 mkfifo_t5 mkfifo_t17 mkfifo_su \
		$(INSTDIR)/T.mkfifo $(INSTDIR)/mkfifo_t4 $(INSTDIR)/mkfifo_t5 \
		$(INSTDIR)/mkfifo_t17 $(INSTDIR)/mkfifo_su

depend:
	CFLAGS="$(CFLAGS)" CC="$(CC)" $(VSXBIN)/mkdep $(CFILES)

# DO NOT DELETE THIS LINE -- make depend uses it
# DEPENDENCIES MUST END AT END OF FILE
mkfifo.o:	  \
	../../../../SRC/INC/chktimes.h  \
	../../../../SRC/INC/dbug.h  \
	../../../../SRC/INC/pathres.h  \
	../../../../SRC/INC/report.h  \
	../../../../SRC/INC/std.h  \
	../../../../SRC/INC/sysdep.h  \
	../../../../SRC/SYSINC/errno.h  \
	../../../../SRC/SYSINC/stdlib.h  \
	../../../../SRC/SYSINC/sys/stat.h  \
	../../../../SRC/SYSINC/sys/types.h  \
	../../../../SRC/SYSINC/time.h  \
	../../../../SRC/SYSINC/unistd.h 
tbmkfifo.o:	  \
	../../../../SRC/INC/dbug.h  \
	../../../../SRC/INC/report.h  \
	../../../../SRC/INC/std.h  \
	../../../../SRC/INC/sysdep.h  \
	../../../../SRC/SYSINC/errno.h  \
	../../../../SRC/SYSINC/stdlib.h  \
	../../../../SRC/SYSINC/string.h  \
	../../../../SRC/SYSINC/sys/stat.h  \
	../../../../SRC/SYSINC/sys/types.h  \
	../../../../SRC/SYSINC/unistd.h 
mkfifo_t4.o:	  \
	../../../../SRC/INC/dbug.h  \
	../../../../SRC/INC/report.h  \
	../../../../SRC/INC/std.h  \
	../../../../SRC/INC/sysdep.h  \
	../../../../SRC/SYSINC/errno.h  \
	../../../../SRC/SYSINC/stdlib.h  \
	../../../../SRC/SYSINC/sys/stat.h  \
	../../../../SRC/SYSINC/sys/types.h  \
	../../../../SRC/SYSINC/unistd.h 
mkfifo_t5.o:	  \
	../../../../SRC/INC/dbug.h  \
	../../../../SRC/INC/report.h  \
	../../../../SRC/INC/std.h  \
	../../../../SRC/INC/sysdep.h  \
	../../../../SRC/SYSINC/errno.h  \
	../../../../SRC/SYSINC/stdlib.h  \
	../../../../SRC/SYSINC/sys/stat.h  \
	../../../../SRC/SYSINC/sys/types.h  \
	../../../../SRC/SYSINC/unistd.h 
enospc.o:	  \
	../../../../SRC/INC/dbug.h  \
	../../../../SRC/INC/report.h  \
	../../../../SRC/INC/std.h  \
	../../../../SRC/INC/sysdep.h  \
	../../../../SRC/SYSINC/errno.h  \
	../../../../SRC/SYSINC/fcntl.h  \
	../../../../SRC/SYSINC/stdlib.h  \
	../../../../SRC/SYSINC/string.h  \
	../../../../SRC/SYSINC/sys/stat.h  \
	../../../../SRC/SYSINC/sys/types.h  \
	../../../../SRC/SYSINC/unistd.h 
mkfifo_su.o:	  \
	../../../../SRC/INC/dbug.h  \
	../../../../SRC/INC/report.h  \
	../../../../SRC/INC/std.h  \
	../../../../SRC/INC/sysdep.h  \
	../../../../SRC/SYSINC/errno.h  \
	../../../../SRC/SYSINC/stdlib.h  \
	../../../../SRC/SYSINC/string.h  \
	../../../../SRC/SYSINC/sys/stat.h  \
	../../../../SRC/SYSINC/sys/types.h  \
	../../../../SRC/SYSINC/unistd.h 
# DEPENDENCIES MUST END AT END OF FILE
# IF YOU PUT STUFF HERE IT WILL GO AWAY
# see make depend above
