PLUGINS = \
    easydb-basemigration-plugin \
    easydb-custom-data-type-cerlthesaurus \
    easydb-custom-data-type-dante \
    easydb-custom-data-type-gazetteer \
    easydb-custom-data-type-geonames \
    easydb-custom-data-type-georef \
    easydb-custom-data-type-getty \
    easydb-custom-data-type-gn250 \
    easydb-custom-data-type-gnd \
    easydb-custom-data-type-goobi \
    easydb-custom-data-type-gvk \
    easydb-custom-data-type-link \
    easydb-custom-data-type-location \
    easydb-custom-data-type-nomisma \
    easydb-custom-data-type-tnadiscovery \
    easydb-custom-data-type-iucn \
    easydb-custom-data-type-html-editor \
    easydb-custom-data-type-iconclass \
    easydb-easydb4migration-plugin \
    easydb-connector-plugin \
    easydb-detail-map-plugin \
    easydb-barcode-display-plugin \
    easydb-barcode-display-pdf-plugin \
    easydb-display-field-values-plugin \
    easydb-drupal-plugin \
    easydb-editor-field-visibility-plugin \
    easydb-export-transport-ftp-plugin \
    easydb-falconio-plugin \
    easydb-hijri-gregorian-converter-plugin \
    easydb-typo3-plugin \
    easydb-webhook-plugin \
    easydb-wordpress-plugin \
    easydb-orcid-plugin \
    easydb-custom-mask-splitter-detail-linked-plugin \
    easydb-editor-tagfilter-defaults-plugin \
    easydb-example-plugin \
    easydb-hotfolder-plugin \
    easydb-ldap-plugin \
    easydb-oai-plugin \
    easydb-pdf-creator-plugin \
    easydb-presentation-pptx-plugin \
    easydb-remote-plugin \
    easydb-server-plugin \
    easydb-sso-plugin \
    easydb-auto-keyworder-plugin \
    easydb-coin-viewer-plugin

CSS_PLUGINS = \
	easydb-example-plugin \
	easydb-typo3-plugin \
	easydb-drupal-plugin

GOOGLE_CSV = \
	easydb-basemigration-plugin \
	easydb-wordpress-plugin \
	easydb-typo3-plugin \
	easydb-drupal-plugin \
	easydb-detail-map-plugin \
	easydb-barcode-display-plugin \
	easydb-barcode-display-pdf-plugin \
	easydb-display-field-values-plugin \
	easydb-falconio-plugin \
	easydb-connector-plugin \
	easydb-export-transport-ftp-plugin \
	easydb-hijri-gregorian-converter-plugin \
	easydb-custom-mask-splitter-detail-linked-plugin \
	easydb-editor-tagfilter-defaults-plugin \
	easydb-easydb4migration-plugin \
	easydb-remote-plugin \
	easydb-example-plugin \
	easydb-hotfolder-plugin \
	easydb-presentation-pptx-plugin \
	easydb-server-plugin \
	easydb-oai-plugin \
	easydb-sso-plugin

all: $(patsubst %,all_%,$(PLUGINS))

code: $(patsubst %,code_%,$(PLUGINS))

css: $(patsubst %,css_%,$(CSS_PLUGINS))

clean: $(patsubst %,clean_%,$(PLUGINS))

google_csv: $(patsubst %,google_csv_%,$(GOOGLE_CSV))

all_%:
	$(MAKE) -C $(patsubst all_%,%,$@) all

code_%:
	$(MAKE) -C $(patsubst code_%,%,$@) code

css_%:
	$(MAKE) -C $(patsubst css_%,%,$@) css

clean_%:
	$(MAKE) -C $(patsubst clean_%,%,$@) clean

google_csv_%:
	$(MAKE) -C $(patsubst google_csv_%,%,$@) google_csv

update_plugins:
	for p in ${PLUGINS}; do \
		if [ -f "$$p/.git" ]; then \
			cd "$$p" ; \
			git branch -l | grep -q '\bmain\b' && mbranch=main || mbranch=master; \
			git checkout $$mbranch || exit 1 ; \
			git pull || exit 1 ; \
			cd - ; \
		fi ; \
	done

install-server:
	[ ! -z "${INSTALL_PREFIX}" ]
	mkdir -p ${INSTALL_PREFIX}/server/base/plugins
	cp base-plugins.yml ${INSTALL_PREFIX}/server/base/plugins/
	for p in $(PLUGINS) ; do \
		$(MAKE) -C $$p INSTALL_PREFIX=${INSTALL_PREFIX} $@ || exit 1 ; \
	done

install-%:
	# nothing to do for $@ in easydb-plugins

.PHONY: all all_* code code_* clean clean_* install-* css_ng

