# Instala exprtk: una sola cabecera de C++ y su archivo pkg-config.
#
# exprtk no tiene nada que compilar --es header-only-- asi que "all" solo
# genera el .pc con el prefijo que corresponda.
#
#   make
#   sudo make install PREFIX=/usr
#   make install DESTDIR=/tmp/x       para probar sin tocar el sistema
#   sudo make remove                  = make uninstall
#   make pkg | deb | rpm | tgz        los paquetes, con hacer-pkg
#
# El paquete Debian usa este mismo install; ver debian/rules, que sale de
# exprtk.summa. Hasta el 08/10/2026 este archivo se llamaba Makefile.simple y
# al lado habia un Makefile heredado de simusol-pack 2016 que buscaba
# makefile.lib de summapack en cuatro lugares y, si no estaba, la descargaba
# con wget en medio del make; ese se borro y este paso a ser el Makefile.

# PREFIX y prefix son lo mismo, las dos: PREFIX es lo que exporta
# bajar-paquetes de summapack y prefix el nombre de siempre de autotools, el
# que usan los demas paquetes nuestros.
PREFIX  ?= /usr/local
prefix  ?= $(PREFIX)
VERSION ?= 2025.01.01

DESTDIR ?=
INCDIR   = $(DESTDIR)$(prefix)/include
PCDIR    = $(DESTDIR)$(prefix)/share/pkgconfig
DOCDIR   = $(DESTDIR)$(prefix)/share/doc/libexprtk-dev

all: exprtk.pc

exprtk.pc: exprtk.pc.in Makefile
	sed -e 's|@PREFIX@|$(prefix)|g' -e 's|@VERSION@|$(VERSION)|g' $< > $@

# La lista de los tres archivos esta en exprtk.summa (ARCHIVO_install), que
# es la que usa el paquete, y el recorrido lo hace instalar-del-summa de
# summapack: una sola lista y un solo recorrido para los dos caminos
# (08/10/2026). Se lo busca como hacer-pkg busca su .inc.
RUTAS_INSTALADOR = $(SUMMAPACK_DATA)/../../../bin/instalar-del-summa \
                   ../summapack/bin/instalar-del-summa \
                   /usr/bin/instalar-del-summa /usr/local/bin/instalar-del-summa \
                   $(HOME)/bin/instalar-del-summa
INSTALADOR = $(firstword $(wildcard $(RUTAS_INSTALADOR)))
falta_instalador = { echo "hace falta instalar-del-summa de summapack: instalarlo, o tener la copia de trabajo al lado, o poner SUMMAPACK_DATA" >&2; exit 1; }
CREAR_FUENTES = $(firstword $(wildcard ../summapack/bin/crear-fuentes /usr/bin/crear-fuentes /usr/local/bin/crear-fuentes))

lista: all
	@test -n "$(INSTALADOR)" || $(falta_instalador)
	@$(INSTALADOR) --summa exprtk.summa --destino "$(DESTDIR)$(prefix)" --quitar "usr/" --lista

install: all
	@test -n "$(INSTALADOR)" || $(falta_instalador)
	$(INSTALADOR) --summa exprtk.summa --destino "$(DESTDIR)$(prefix)" --quitar "usr/"

uninstall:
	@test -n "$(INSTALADOR)" || $(falta_instalador)
	$(INSTALADOR) --summa exprtk.summa --destino "$(DESTDIR)$(prefix)" --quitar "usr/" --desinstalar

remove: uninstall

dist:
	@test -n "$(CREAR_FUENTES)" || { echo 'Falta crear-fuentes de SummaPack' >&2; exit 1; }
	$(CREAR_FUENTES) .

# hacer-pkg exporta una copia limpia y deja al lado el .deb, el .tgz, el .rpm
# (si hay rpmbuild) y el .summa de una sola corrida.
rpm: export SUMMA_REQUIERE_RPM=1

pkg deb rpm tgz:
	./hacer-pkg

clean:
	rm -f exprtk.pc

.PHONY: all lista install uninstall remove dist pkg deb rpm tgz clean
