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

prefix= /usr/local/pthreads
exec_prefix= ${prefix}

cpu = mips
os = ultrix4.2

MISSING_SYSCALLS =  getdents readdir wait4 waitsys poll putmsg getmsg socketcall waitsys pgrpsys sigprocmask
AVAILABLE_SYSCALLS =  open write read creat close fcntl lseek dup2 dup pipe fchmod fchown execve fstat link unlink chdir chown chmod stat rename select getdtablesize getdirentries wait3 waitpid socket bind connect accept listen getsockopt setsockopt 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 
SYSCALL_S = $(srcdir)/../machdep/syscall-template-r2000-ultrix-4.2.S

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: config/configure
	cd ${.CURDIR} && $(SHELL) config.status --recheck
config.flags: config.status 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-tests 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 cf - .)|(cd $(DESTDIR)$(INCDIR) && tar xf -)
	(cd include && tar cfh - .)|(cd $(DESTDIR)$(INCDIR) && tar xf -)
	(cd $(DESTDIR)$(INCDIR) && find . \( -name CVS -o -name \*~ \) -print | xargs rm -rf)
