# Since the real configure script runs from the config subdirectory,
# compensate here...
srctop= /afs/sipb.mit.edu/project/pthreads/current/src/pthreads
srcfoo= $(srctop)

prefix= /afs/sipb.mit.edu/project/pthreads/current/arch/pmax_ul4
exec_prefix= ${prefix}

cpu = mips
os = ultrix4.2

MISSING_SYSCALLS =  sigsuspend sigaction sigprocmask getdents readdir wait4 waitsys poll putmsg getmsg socketcall pgrpsys
AVAILABLE_SYSCALLS =  open write read creat close fcntl lseek dup2 dup pipe fchmod fchown execve fstat lstat link unlink chdir chown chmod stat rename select getdtablesize ioctl ftruncate sigpause getdirentries wait3 waitpid socket bind connect accept listen getsockopt setsockopt socketpair exit readv writev send sendto sendmsg recv recvfrom recvmsg getpeername getsockname shutdown getpgrp fork
HAVE_SYSCALL_TEMPLATE = yes

# config flags from configure.in here:

# system-specific makefile fragment here: 
# r2000 ultrix stuff
SYSCALL_EXCEPTIONS = fork pipe 

CC = gcc
CXX = c++
CPP = gcc -E
SHELL = /bin/sh
RANLIB = ranlib
# Should use autoconf to find these.  Currently our makefiles are inconsistent.
#AR = ar
#AS = gas
#LD = gld

install-dirs:
	for d in $(INSTALL_PATH) $(BINDIR) $(LIBDIR) $(INCDIR) ; do \
	  test -d $(DESTDIR)$$d || mkdir $(DESTDIR)$$d || exit 1 ; \
	done

config.status: ../../../../current/src/pthreads/config/configure
	cd ${.CURDIR} && $(SHELL) config.status --recheck
config.flags: config.status ../../../../current/src/pthreads/config/config.flags.in
	cd ${.CURDIR} && $(SHELL) config.status

realclean: clean
	cd tests && $(MAKE) realclean && cd ..
	rm -f $(LINKS) config.status config.flags config.cache \
		Makefile GNUmakefile

types=$(.CURDIR)/include/pthread/ac-types.h
$(types) : config.h
	echo '#ifndef pthread_size_t'			>  $(types).new
	egrep '^#define pthread_' $(.CURDIR)/config.h	>> $(types).new
	echo '#endif'					>> $(types).new
	mv -f $(types).new $(types)

paths=$(.CURDIR)/include/pthread/paths.h
$(paths) : config.h
	echo '#ifndef _SYS___PATHS_H_'			>  $(paths).new
	echo '#define _SYS___PATHS_H_'			>>  $(paths).new
	egrep '^#define _PATH' $(.CURDIR)/config.h	>> $(paths).new
	echo '#endif'					>> $(paths).new
	mv -f $(paths).new $(paths)

all-tests: all-lib
	cd ${.CURDIR}/tests && $(MAKE) all
check: all-lib
	cd ${.CURDIR}/tests && $(MAKE) check
all : all-lib all-bin

install-bin: all-bin install-dirs
	for x in $(SCRIPTS) ; do \
	  install $$x $(DESTDIR)$(BINDIR); \
	done

install-include: install-dirs
	(cd ${srcdir}/include && tar chf - .)|(cd $(DESTDIR)$(INCDIR) && tar xf -)
	if [ -d config ]; then true; else \
	(cd ${.CURDIR}/include && tar chf - .)|(cd $(DESTDIR)$(INCDIR) && tar xf -); fi
	(cd $(DESTDIR)$(INCDIR) && find . \( -name CVS -o -name \*~ \) -print | xargs rm -rf)
