###########################################################################
#                                                                         #
#                              fitOmatic                                  #
#                   Model-fitting prototyping utility                     #
#                                                                         #
#                      Copyright 2007, F. Millour                         #
#                            fmillour@oca.eu                              #
#                                                                         #
###########################################################################
#
# Makefile for installing fitOmatic
#
# Please note that this script is distributed under the GPL licence,
# available at http://www.gnu.org/licenses/gpl.txt
#
# Please ACKNOWLEDGE the use of this script for any use in a publication
#
###########################################################################
#
# "@(#) $Id: Makefile 678 2017-02-10 16:38:20Z fmillour $"
# 
# !! THIS IS NOT A PLUGIN !!
# This is a package made of several interpreted 
# include file. This makefile is just used to install,
# uninstall it or build the distribution tar file.
# 
###########################################################################

# these values filled in by    yorick -batch make.i
Y_MAKEDIR=/home/fmillour/SOFT/INTROOT/yorick
Y_EXE=/home/fmillour/SOFT/INTROOT/yorick/bin/yorick
Y_EXE_PKGS=
Y_EXE_HOME=/home/fmillour/SOFT/INTROOT/yorick
Y_EXE_SITE=/home/fmillour/SOFT/INTROOT/yorick
Y_HOME_PKG=

# ------------------------------------------------ macros for this package

 # Used for distribution
SELFCAL_NAME=selfcal

# include files for this package
SELFCAL_I= amplData.i \
	amplStructures.i \
	miral.i \
	visModels.i \
	testMiral.i  \
	amdlibPipeline.i


SELFCAL_TXT= README.miral \
	AUTHORS

 # Used for distribution
FITOMATIC_NAME=fitOmatic

# include files for this package
FITOMATIC_I= fitOmatic.i \
	amplData.i \
	amplStructures.i \
	binaryEphemeris.i \
	imagingStuff.i \
	imaModels.i \
	lmfit.i \
	photocentreModels.i \
	samSuffit.i \
	simuInterf.i \
	testBinaryEphemeris.i \
	testModelFit.i \
	testPhotocentreModels.i \
	testSimuInterf.i \
	testVisModels.i \
	visModelFitUtils.i \
	visModels.i \
	run_fit.i \
	miral.i \
	testMiral.i \
	amdlibPipeline.i

FITOMATIC_TXT= README.fitOmatic \
	AUTHORS

EXTERNAL= ../SHELL/installMira.sh \
	  ../SHELL/installYutils.sh

SC_EXAMPLE_DATA= ../sampleData/sgB[e]_Disk_HD62623/DATA_ALL_HD62623.tar.gz\
		 ../sampleData/sgB[e]_Disk_HD62623/selfcal_HD62623.i

# autoload file for this package, if any
#PKG_I_START = fitOmatic_start.i
version:=$(shell svnversion .)

# override macros Makepkg sets for rules and other macros
# Y_HOME and Y_SITE in Make.cfg may not be correct (e.g.- relocatable)
Y_HOME=$(Y_EXE_HOME)
Y_SITE=$(Y_EXE_SITE)

# include $(Y_MAKEDIR)/Make.cfg
DEST_Y_SITE=$(DESTDIR)$(Y_SITE)
DEST_Y_HOME=$(DESTDIR)$(Y_HOME)

# ------------------------------------- targets and rules for this package
build:
	@echo "Nothing to build."

install:
	@echo "Nothing to install. Choices are install_selfcal or install_fitomatic"

clean:
	@echo "Cleaning temporary files."
	-rm -rf pkg *~
	-rm -rf $(FITOMATIC_NAME)_v$(version)
	-rm -rf $(SELFCAL_NAME)_v$(version)
	@echo "Done."

install_fitomatic:
	@echo "Updating Makefile..."
	yorick -batch make.i
	make fitomatic
fitomatic:
	@echo "Copying packages..."
	mkdir -p $(DEST_Y_SITE)/i
	mkdir -p $(DEST_Y_SITE)/i-start
	cp -vf $(FITOMATIC_I) $(DEST_Y_SITE)/i/
#	cp -p $(FITOMATIC_I_START) $(DEST_Y_SITE)/i-start/
	@echo "Done."

pkg_fitomatic:
	@echo "Updating Makefile..."
	yorick -batch make.i
	@echo "Creating distribution package..."
	@echo Software version: $(version)
	make clean
	mkdir $(FITOMATIC_NAME)_v$(version)
	cp -p $(FITOMATIC_I) $(FITOMATIC_TXT) $(EXTERNAL) Makefile $(FITOMATIC_NAME)_v$(version)
	tar czf $(FITOMATIC_NAME)_v$(version).tgz $(FITOMATIC_NAME)_v$(version)
	rm -r $(FITOMATIC_NAME)_v$(version)
	@echo done.

install_selfcal:
	@echo "Updating Makefile..."
	yorick -batch make.i
	make selfcal
selfcal:
	@echo "Copying packages..."
	mkdir -p $(DEST_Y_SITE)/i
	mkdir -p $(DEST_Y_SITE)/i-start
	cp -vf $(SELFCAL_I) $(DEST_Y_SITE)/i/
#	cp -p $(SELFCAL_I_START) $(DEST_Y_SITE)/i-start/
	@echo "Done."

pkg_selfcal:
	@echo "Creating selfcal distribution package..."
	@echo Software version: $(version)
	make clean
# Create distribution directory
	mkdir $(SELFCAL_NAME)_v$(version)
	cp -p $(SELFCAL_I) $(SELFCAL_TXT) $(EXTERNAL) Makefile $(SELFCAL_NAME)_v$(version)
# Copy example fits files
	mkdir -p $(SELFCAL_NAME)_v$(version)/sampleData/
	cp -pr $(SC_EXAMPLE_DATA) $(SELFCAL_NAME)_v$(version)/sampleData/
	tar czf $(SELFCAL_NAME)_v$(version).tgz $(SELFCAL_NAME)_v$(version)
	rm -r $(SELFCAL_NAME)_v$(version)
	@echo done.

# -------------------------------------------------------- end of Makefile
