DST?=kazan-137d
TMPPFX?=tmp-d

CPUS?=4
MEM?=6144
DEPTH?=16
IMCOMP?=lzw
ENCOMP?=LZW
WMERGE?=
OBLEND?=
WBLEND?=
GBLEND?=-f 6144x4608+0+0
ENPSG?=nearest-feature-transform
ENCM?=48
ENCMV?=4%
ENFMV?=10%
ENOW?=8:1
ENAN?=0.995:7000:5:125
ENDI?=50
RGBPROFILE?=../../tools/profiles/RGB.icc
sRGBPROFILE?=../../tools/profiles/sRGB.icm
RGB?=-profile ${sRGBPROFILE} -profile ${RGBPROFILE}
sRGB?=-profile ${RGBPROFILE} -profile ${sRGBPROFILE}
DPI?=150

CONV?=convert -limit area ${MEM}MiB -limit map ${MEM}MiB
REMAP?=eval nona -v -t ${CPUS} -m TIFF_m -r ldr -p UINT${DEPTH} -z ${ENCOMP} -o ${TMPPFX}-
FFUSE?=eval enfuse -v --compression=${ENCOMP} --exposure-weight=0.00 --saturation-weight=0.00  --contrast-weight=1.00 --hard-mask --exposure-weight=0.75 --saturation-weight=0.75  --contrast-weight=1.00 --soft-mask --no-gpu
MERGE?=eval enfuse -v --compression=${ENCOMP} --exposure-weight=1.00 --saturation-weight=0.050 --contrast-weight=0.05 --entropy-weight=0.00 --hard-mask --exposure-optimum=0.550 --exposure-width=0.175 --exposure-cutoff=5%:95% --gray-projector=average ${WMERGE} --no-gpu
DEGHOST?=deghosting_mask -v -s 60 -c 0.8 -t 150 -i 8 -a mw
BLEND?=eval enblend -v --compression=${ENCOMP} --primary-seam-generator=nearest-feature-transform --coarse-mask=${ENCM} --mask-vectorize=${ENCMV} --optimizer-weights=${ENOW} --anneal=${ENAN} --dijkstra=${ENDI} ${GBLEND} ${WBLEND} --no-gpu
INPNT?=greycstoration -iter 512 -bits 16 -inpaint

EXIFTFF?=exiftool -overwrite_original -P -TagsFromFile
#EXIFTAG?=-EXIF:ExposureTime -EXIF:ShutterSpeedValue -EXIF:ApertureValue -EXIF:ISO
EXIFTAG?=-EXIF:FNumber -EXIF:ApertureValue -EXIF:ShutterSpeedValue -EXIF:ExposureTime -EXIF:BulbDuration -EXIF:ISO -EXIF:FocalLength -EXIF:FocalPlaneXResolution -EXIF:FocalPlaneYResolution -EXIF:FocalPlaneResolutionUnit -XResolution=${DPI} -YResolution=${DPI}

RMSRC=echo
RMTMP=echo
RMDST=echo
MV=mv
LN=ln -f

all: ${DST}.tiff

${TMPPFX}-0000.tif: ${DST}.pto kazan-137.tiff
	@#${MV} kazan-137.tiff xkazan-137.tiff
	@#${CONV} xkazan-137.tiff +strip -compress ${IMCOMP} kazan-137.tiff
	@${REMAP} -i 0 -e 0 ${DST}.pto
	@#${MV} xkazan-137.tiff kazan-137.tiff
${TMPPFX}fkazan-137.tiff: ${TMPPFX}-0000.tif
	@${LN} ${TMPPFX}-0000.tif ${TMPPFX}fkazan-137.tiff
	@${RMTMP} ${TMPPFX}-0000.tif
${TMPPFX}ekazan-137.tiff: ${TMPPFX}fkazan-137.tiff
	@${CONV} ${TMPPFX}fkazan-137.tiff \
		 +profile ICC -profile ${sRGBPROFILE} \
		-compress ${IMCOMP} ${TMPPFX}ekazan-137.tiff
	@${RMTMP} ${TMPPFX}fkazan-137.tiff
${TMPPFX}tkazan-137.tiff: ${TMPPFX}ekazan-137.tiff
	@${LN} ${TMPPFX}ekazan-137.tiff ${TMPPFX}tkazan-137.tiff
	@${RMTMP} ${TMPPFX}ekazan-137.tiff
${TMPPFX}kazan-137.tiff: ${TMPPFX}tkazan-137.tiff
	@${LN} ${TMPPFX}tkazan-137.tiff ${TMPPFX}kazan-137.tiff
	@${RMTMP} ${TMPPFX}tkazan-137.tiff

${TMPPFX}.tiff: ${TMPPFX}kazan-137.tiff
	@${RMSRC}  kazan-137.tiff
	@${BLEND} -o ${TMPPFX}.tiff ${TMPPFX}kazan-137.tiff
	@${RMTMP} ${TMPPFX}kazan-137.tiff
${DST}.tiff: ${TMPPFX}.tiff
	@${CONV} ${TMPPFX}.tiff \
		 \
		-compress ${IMCOMP} ${DST}.tiff
	@${RMTMP} ${TMPPFX}.tiff

clean: 
	@-${RMSRC} kazan-137.tiff
	@-${RMTMP} ${TMPPFX}-0000.tif
	@-${RMTMP} ${TMPPFX}fkazan-137.tiff ${TMPPFX}ekazan-137.tiff ${TMPPFX}tkazan-137.tiff
	@-${RMTMP} ${TMPPFX}kazan-137.tiff
	@-${RMTMP} ${TMPPFX}.tiff 
	@-${RMDST} ${DST}.tiff
