
# Do not execute this Makefile directly!!!!
# No testing code is created.

# ---------------------------------------------------------------------------- #
#                     DON'T CHANGE ANYTHING BELOW THIS LINE                    #
# ---------------------------------------------------------------------------- #

SAE=$(STARLINK)/sae
EMS=$(STARLINK)/ems

LIB=$(STARLINK)/lib
SHARE=$(STARLINK)/share

EMS_C=ems1_fcerr.c ems_end_c.c ems_fmtl_c.c ems_rep_c.c ems_setr_c.c \
	ems1_serr.c ems_errno_c.c ems_fmtr_c.c ems_rlse_c.c ems_stat_c.c \
	ems1_starf.c ems_facer_c.c ems_level_c.c ems_setc_c.c ems_syser_c.c \
	ems_annul_c.c ems_fmtc_c.c ems_mark_c.c ems_setd_c.c ems_begin_c.c \
	ems_fmtd_c.c ems_mload_c.c ems_seti_c.c ems_eload_c.c ems_fmti_c.c \
	ems_renew_c.c ems_setl_c.c

EMS_F=ems1_eblk.f ems1_gesc.f ems1_mstop.f ems_end.f ems_mark.f ems_setr.f \
	ems1_ecopy.f ems1_gnam.f ems1_mstrt.f ems_facer.f ems_mload.f \
	ems_stat.f ems1_emark.f ems1_gtok.f ems1_prerr.f ems_fioer.f \
	ems_renew.f ems_syser.f ems1_erlse.f ems1_iepnd.f ems1_putc.f \
	ems_fmtc.f ems_rep.f ems1_estop.f ems1_kerr.f ems1_rform.f ems_fmtd.f \
	ems_rlse.f ems1_estor.f ems1_ktok.f ems1_stok.f ems_fmti.f ems_setc.f \
	ems1_estrt.f ems1_mblk.f ems_annul.f ems_fmtl.f ems_setd.f \
	ems1_flush.f ems1_mpop.f ems_begin.f ems_fmtr.f ems_seti.f ems1_form.f \
	ems1_mpush.f ems_eload.f ems_level.f ems_setl.f

EMS_O=ems1_fcerr.o ems_end_c.o ems_fmtl_c.o ems_rep_c.o ems_setr_c.o \
	ems1_serr.o ems_errno_c.o ems_fmtr_c.o ems_rlse_c.o ems_stat_c.o \
	ems1_starf.o ems_facer_c.o ems_level_c.o ems_setc_c.o ems_syser_c.o \
	ems_annul_c.o ems_fmtc_c.o ems_mark_c.o ems_setd_c.o ems_begin_c.o \
	ems_fmtd_c.o ems_mload_c.o ems_seti_c.o ems_eload_c.o ems_fmti_c.o \
	ems_renew_c.o ems_setl_c.o ems1_eblk.o ems1_gesc.o ems1_mstop.o \
	ems_end.o ems_mark.o ems_setr.o ems1_ecopy.o ems1_gnam.o ems1_mstrt.o \
	ems_facer.o ems_mload.o ems_stat.o ems1_emark.o ems1_gtok.o \
	ems1_prerr.o ems_fioer.o ems_renew.o ems_syser.o ems1_erlse.o \
	ems1_iepnd.o ems1_putc.o ems_fmtc.o ems_rep.o ems1_estop.o ems1_kerr.o \
	ems1_rform.o ems_fmtd.o ems_rlse.o ems1_estor.o ems1_ktok.o \
	ems1_stok.o ems_fmti.o ems_setc.o ems1_estrt.o ems1_mblk.o ems_annul.o \
	ems_fmtl.o ems_setd.o ems1_flush.o ems1_mpop.o ems_begin.o ems_fmtr.o \
	ems_seti.o ems1_form.o ems1_mpush.o ems_eload.o ems_level.o ems_setl.o

all: libems.a libems.so

libems.a: $(EMS_O)
	cd $(EMS); \
	ar r libems.a $(EMS_O); \
	cp libems.a $(LIB); \
	cd $(STARLINK);

libems.so: $(EMS_O)
	cd $(EMS); \
	$(CC) $(SO) -o libems.so $(EMS_O); \
	cp libems.so $(SHARE); \
	cd $(STARLINK);

$(EMS_O): $(EMS_C) $(EMS_F)
	cd $(EMS); \
	$(CC) -I$(SAE) -I$(EMS) $(CFLAG_EMS) -c $(EMS_C); \
	$(FC) -I$(SAE) -I$(EMS) $(FFLAG_EMS) -c $(EMS_F); \
	cd $(STARLINK);

clean:
	cd $(EMS); rm -fr *.o libems.*; cd $(STARLINK);
