SHELL=/bin/sh
#
#   Master Makefile for ORNL Physics orpas - W. T. Milner and J.M. McConnell
#   data acquisition system
#
#  Pathnames
export prefix=/usr/acq2
export orpasprefix=$(prefix)
export exec_prefix=$(prefix)
export libdir=$(exec_prefix)/lib
export includedir=$(prefix)/include
export bindir=$(prefix)/bin
export etcdir=$(prefix)/etc

###-PTRSIZE-##
#  The pointer size depends on the architecture
export PTRSIZE=64
#
###-BYTEORDER-###
#  The byte order is processor dependent
#  Intel - LITTLEENDIAN
export FENDIAN = -DLITTLEENDIAN
#
#  Set the compiler and flags
#
#--Gfortran - must be gcc >=4.9  (These are Fink installs.  Fix for your sys.)
# MacOS version 
#export FORT= /sw/bin/gfortran-fsf-6
#export CC=/sw/bin/gcc-fsf-6
#export OPT= -O
#export FARGS= $(FENDIAN) -DGFORTRAN -fno-automatic -fsecond-underscore -fno-range-check
#export CARGS= $(FENDIAN)
#export FLIBS= -L/sw/lib -lgfortran -lgcc
#export ARFLAGS=rvU
#export INSTALL_USER=hhirf
#export INSTALL_GROUP=hhirf
#
#--Gfortran - must be gcc >=4.2  
# LINUX version
export hhirfdir=/usr/hhirf
export FORT= gfortran
export CC=gcc
export OPT= -O
export FARGS= $(FENDIAN) -DGFORTRAN -Wall -fno-automatic -fsecond-underscore -fno-range-check -I $(includedir)
export CARGS= $(FENDIAN) -Wall -I $(includedir)
export FLIBS= -lgfortran -lgcc
export ARFLAGS=rvU
export INSTALL_USER=drs1
export INSTALL_GROUP=drs1
#
#--Cygwin, G77
#export FORT= g77
#export CC=gcc
#export OPT= -O
#export FARGS= $(FENDIAN) -DG77 -fno-automatic -fsecond-underscore
#export CARGS= $(FENDIAN)
#export FLIBS=
#export ARFLAGS=rvU
#export INSTALL_USER=hhirf
#export INSTALL_GROUP=hhirf

TARGET_LIBS= ipclib acqlib vmelib vmexxlib

TARGETS= Dacq elogger ipctotcp ipctogt pacman \
         scad scop gtctl \
         tape udptoipc \
         vmereset vmeterm

.PHONY: clean all
.PHONY: $(TARGETS)
.PHONY: rtems/include
.PHONY: $(TARGET_LIBS)

#all: rtems/include $(TARGET_LIBS) $(TARGETS) rtems/vmeacq/o-optimize/vmeacq.ralf rtems/vmetest/o-optimize/vmetest.ralf
all: $(TARGET_LIBS) $(TARGETS)

#rtems/include:
#	$(MAKE) -C rtems/include
#
$(TARGET_LIBS):
	$(MAKE) -C $@ install

$(TARGETS):
	$(MAKE) -C $@ 

#rtems/vmeacq/o-optimize/vmeacq.ralf:
#	$(MAKE) -C rtems/vmeacq
#
#rtems/vmetest/o-optimize/vmetest.ralf:
#	$(MAKE) -C rtems/vmetest

install:
	$(MAKE) -C Dacq install
	$(MAKE) -C elogger install
	$(MAKE) -C ipctotcp install
	$(MAKE) -C ipctogt install
	$(MAKE) -C gtctl install
	$(MAKE) -C pacman install
	$(MAKE) -C scad install
	$(MAKE) -C scop install
	$(MAKE) -C tape install
	$(MAKE) -C udptoipc install
	$(MAKE) -C vmereset install
	$(MAKE) -C vmeterm install
#	$(MAKE) -C rtems/vmeacq install
#	$(MAKE) -C rtems/vmetest install

clean: 
	rm -f $(bindir)/* $(libdir)/*
	$(MAKE) -C ipclib clean
	$(MAKE) -C acqlib clean
	$(MAKE) -C vmelib clean
	$(MAKE) -C vmexxlib clean
	$(MAKE) -C Dacq clean
	$(MAKE) -C elogger clean
	$(MAKE) -C ipctotcp clean
	$(MAKE) -C ipctogt clean
	$(MAKE) -C gtctl clean
	$(MAKE) -C pacman clean
	$(MAKE) -C scad clean
	$(MAKE) -C scop clean
	$(MAKE) -C tape clean
	$(MAKE) -C udptoipc clean
	$(MAKE) -C vmereset clean
	$(MAKE) -C vmeterm clean
#	$(MAKE) -C rtems/vmeacq clean
