# Makefile for GNU F77 compiler runtime.
# Copyright 1990 - 1994 by AT&T Bell Laboratories and Bellcore (see the
# file `Notice').
#   Portions of this file Copyright (C) 1995, 1996 Free Software Foundation, Inc.
#   Contributed by Dave Love (d.love@dl.ac.uk).
#
#This file is part of GNU Fortran.
#
#GNU Fortran is free software; you can redistribute it and/or modify
#it under the terms of the GNU General Public License as published by
#the Free Software Foundation; either version 2, or (at your option)
#any later version.
#
#GNU Fortran is distributed in the hope that it will be useful,
#but WITHOUT ANY WARRANTY; without even the implied warranty of
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#GNU General Public License for more details.
#
#You should have received a copy of the GNU General Public License
#along with GNU Fortran; see the file COPYING.  If not, write to
#the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#02111-1307, USA.

#SHELL = /bin/sh

srcdir = .

#### Start of system configuration section. ####

# The _FOR_TARGET things are appropriate for a cross-make, passed by the
# superior makefile
GCC_FOR_TARGET = gcc 
CC = $(GCC_FOR_TARGET)
CFLAGS = -O2 $(GCC_FLAGS)
CPPFLAGS = 
DEFS =   -DSTDC_HEADERS=1  -D_POSIX_SOURCE=1  -DRETSIGTYPE=void  -DMISSING_FILE_ELEMS=1  -DNO_EOF_CHAR_CHECK=1  -DSkip_f2c_Undefs=1  -DNON_UNIX_STDIO=1
CGFLAGS = -g0
# f2c.h should already be installed in xgcc's include directory but add that
# to -I anyhow in case not using xgcc.
ALL_CFLAGS = -I. -I$(srcdir) -I.. $(CPPFLAGS) $(DEFS) $(CFLAGS)
AR = ar
AR_FLAGS = rc
RANLIB = ar s
RANLIB_TEST = true
CROSS = 

.SUFFIXES:
.SUFFIXES: .c .o

MISC =	$(OBJDIR)/F77_aloc.o \
	$(OBJDIR)/VersionF.o \
	$(OBJDIR)/main.o \
	$(OBJDIR)/s_rnge.o \
	$(OBJDIR)/abort_.o \
	$(OBJDIR)/getarg_.o \
	$(OBJDIR)/iargc_.o \
	$(OBJDIR)/getenv_.o \
	$(OBJDIR)/signal_.o \
	$(OBJDIR)/s_stop.o \
	$(OBJDIR)/s_paus.o \
	$(OBJDIR)/system_.o \
	$(OBJDIR)/cabs.o \
	$(OBJDIR)/derf_.o \
	$(OBJDIR)/derfc_.o \
	$(OBJDIR)/erf_.o \
	$(OBJDIR)/erfc_.o \
	$(OBJDIR)/sig_die.o \
	$(OBJDIR)/exit_.o \
	$(OBJDIR)/setarg.o \
	$(OBJDIR)/setsig.o \
	$(OBJDIR)/s_erf.o 

POW =	$(OBJDIR)/pow_ci.o \
	$(OBJDIR)/pow_dd.o \
	$(OBJDIR)/pow_di.o \
	$(OBJDIR)/pow_hh.o \
	$(OBJDIR)/pow_ii.o \
	$(OBJDIR)/pow_ri.o \
	$(OBJDIR)/pow_zi.o \
	$(OBJDIR)/pow_zz.o \
	$(OBJDIR)/pow_qq.o

CX =	$(OBJDIR)/c_abs.o \
	$(OBJDIR)/c_cos.o \
	$(OBJDIR)/c_div.o \
	$(OBJDIR)/c_exp.o \
	$(OBJDIR)/c_log.o \
	$(OBJDIR)/c_sin.o \
	$(OBJDIR)/c_sqrt.o
DCX =	$(OBJDIR)/z_abs.o \
	$(OBJDIR)/z_cos.o \
	$(OBJDIR)/z_div.o \
	$(OBJDIR)/z_exp.o \
	$(OBJDIR)/z_log.o \
	$(OBJDIR)/z_sin.o \
	$(OBJDIR)/z_sqrt.o

REAL =	$(OBJDIR)/r_abs.o \
	$(OBJDIR)/r_acos.o \
	$(OBJDIR)/r_asin.o \
	$(OBJDIR)/r_atan.o \
	$(OBJDIR)/r_atn2.o \
	$(OBJDIR)/r_cnjg.o \
	$(OBJDIR)/r_cos.o \
	$(OBJDIR)/r_cosh.o \
	$(OBJDIR)/r_dim.o \
	$(OBJDIR)/r_exp.o \
	$(OBJDIR)/r_imag.o \
	$(OBJDIR)/r_int.o \
	$(OBJDIR)/r_lg10.o \
	$(OBJDIR)/r_log.o \
	$(OBJDIR)/r_mod.o \
	$(OBJDIR)/r_nint.o \
	$(OBJDIR)/r_sign.o \
	$(OBJDIR)/r_sin.o \
	$(OBJDIR)/r_sinh.o \
	$(OBJDIR)/r_sqrt.o \
	$(OBJDIR)/r_tan.o \
	$(OBJDIR)/r_tanh.o

DBL =	$(OBJDIR)/d_abs.o \
	$(OBJDIR)/d_acos.o \
	$(OBJDIR)/d_asin.o \
	$(OBJDIR)/d_atan.o \
	$(OBJDIR)/d_atn2.o \
	$(OBJDIR)/d_cnjg.o \
	$(OBJDIR)/d_cos.o \
	$(OBJDIR)/d_cosh.o \
	$(OBJDIR)/d_dim.o \
	$(OBJDIR)/d_exp.o \
	$(OBJDIR)/d_imag.o \
	$(OBJDIR)/d_int.o \
	$(OBJDIR)/d_lg10.o \
	$(OBJDIR)/d_log.o \
	$(OBJDIR)/d_mod.o \
	$(OBJDIR)/d_nint.o \
	$(OBJDIR)/d_prod.o \
	$(OBJDIR)/d_sign.o \
	$(OBJDIR)/d_sin.o \
	$(OBJDIR)/d_sinh.o \
	$(OBJDIR)/d_sqrt.o \
	$(OBJDIR)/d_tan.o \
	$(OBJDIR)/d_tanh.o

INT =	$(OBJDIR)/i_abs.o \
	$(OBJDIR)/i_dim.o \
	$(OBJDIR)/i_dnnt.o \
	$(OBJDIR)/i_indx.o \
	$(OBJDIR)/i_len.o \
	$(OBJDIR)/i_mod.o \
	$(OBJDIR)/i_nint.o \
	$(OBJDIR)/i_sign.o

HALF =	$(OBJDIR)/h_abs.o \
	$(OBJDIR)/h_dim.o \
	$(OBJDIR)/h_dnnt.o \
	$(OBJDIR)/h_indx.o \
	$(OBJDIR)/h_len.o \
	$(OBJDIR)/h_mod.o \
	$(OBJDIR)/h_nint.o \
	$(OBJDIR)/h_sign.o

CMP =	$(OBJDIR)/l_ge.o \
	$(OBJDIR)/l_gt.o \
	$(OBJDIR)/l_le.o \
	$(OBJDIR)/l_lt.o \
	$(OBJDIR)/hl_ge.o \
	$(OBJDIR)/hl_gt.o \
	$(OBJDIR)/hl_le.o \
	$(OBJDIR)/hl_lt.o

EFL =	$(OBJDIR)/ef1asc_.o \
	$(OBJDIR)/ef1cmc_.o

CHAR =	$(OBJDIR)/s_cat.o \
	$(OBJDIR)/s_cmp.o \
	$(OBJDIR)/s_copy.o

F90BIT = $(OBJDIR)/lbitbits.o \
	$(OBJDIR)/lbitshft.o \
	$(OBJDIR)/qbitbits.o \
	$(OBJDIR)/qbitshft.o

F2C_H = ../f2c.h

all: $(LIB) $(MISC) $(POW) $(CX) $(DCX) $(REAL) $(DBL) $(INT) $(HALF) \
	$(CMP) $(EFL) $(CHAR) $(F90BIT) 

$(OBJDIR)/VersionF.o: Version.c
	$(CC) -c $(CGFLAGS) -o $@ Version.c

$(OBJDIR)/s_erf.o: math_pri.h s_erf.c	
	$(CC) -c $(CGFLAGS) -o $@ s_erf.c

$(OBJDIR)/%.o : %.c 
	$(CC) -c -DSkip_f2c_Undefs $(ALL_CFLAGS) $(CGFLAGS) -o $@ $<



$(LIB): $(MISC) $(POW) $(CX) $(DCX) $(REAL) $(DBL) $(INT) $(HALF) \
	$(CMP) $(EFL) $(CHAR) $(F90BIT) 
	$(AR) $(AR_FLAGS) $(LIB) $(MISC) $(POW) $(CX) $(DCX) $(REAL) \
	$(DBL) $(INT) $(HALF) $(CMP) $(EFL) $(CHAR) $(F90BIT) 
	$(AR) d $(LIB) __.SYMDEF
	$(RANLIB) $(LIB)

VersionF.o: Version.c
	$(CC) -c $(CGFLAGS) -o $@ $(srcdir)/Version.c

mostlyclean clean:
	-rm -f *.o

distclean maintainer-clean: clean
	-rm -f stage? include Makefile

# Not quite all these actually do depend on f2c.h...
$(MISC) $(POW) $(CX) $(DCX) $(REAL) $(DBL) $(INT) \
  $(HALF) $(CMP) $(EFL) $(CHAR) $(F90BIT): $(F2C_H)

.PHONY: mostlyclean clean distclean maintainer-clean all
