# directory containing the repository library files:
ifndef CURRYLIBSDIR
CURRYLIBSDIR=$(ROOT)/lib-trunk
endif

MODULE_FOLDERS    :=$(shell cd $(CURRYLIBSDIR) && find * -type d)
CURRY_FILES       :=$(shell cd $(CURRYLIBSDIR) && find * -name "*.curry")
PAKCS_CURRY_FILES :=$(basename $(shell cd $(CURRYLIBSDIR) && find * -name "*.curry.pakcs"))
C2P_FILES         :=$(shell cd $(CURRYLIBSDIR) && find * -name "*.pakcs")
C2P_CURRY_FILES   :=$(addsuffix .curry, $(basename $(C2P_FILES)))
NON_PAKCS_BASENAMES=$(basename $(filter-out $(CURRY_PAKCS_FILES), $(CURRY_FILES)))
CURRYONLY_FILES    =$(addsuffix .curry, $(filter-out $(basename $(C2P_FILES)), $(NON_PAKCS_BASENAMES)))

# name of this makefile:
CURRENT_MAKEFILE = $(CURRYLIBSDIR)/Makefile_$(CURRYSYSTEM)_install

##########################################################################
# Install the library sources into the Curry system library directory:
.PHONY: install
install:
	mkdir -p $(LIBDIR)
	cd $(LIBDIR) && $(MAKE) -f $(CURRENT_MAKEFILE) $(MODULE_FOLDERS) $(CURRYONLY_FILES) $(PAKCS_CURRY_FILES) $(C2P_CURRY_FILES) $(LIBDIR)/Makefile $(LIBDIR)/VERSION $(LIBDIR)/test.sh

$(MODULE_FOLDERS): %: $(CURRYLIBSDIR)/%
	mkdir -p $@

$(CURRYONLY_FILES): %.curry: $(CURRYLIBSDIR)/%.curry
	cp $< $@

$(PAKCS_CURRY_FILES): %.curry: $(CURRYLIBSDIR)/%.curry.pakcs
	cp $< $@

$(C2P_FILES): %.pakcs: $(CURRYLIBSDIR)/%.pakcs
	cp $< $@

$(C2P_CURRY_FILES): %.curry: $(CURRYLIBSDIR)/%.curry %.pakcs
	cp $< $@

$(LIBDIR)/Makefile: $(CURRYLIBSDIR)/Makefile_$(CURRYSYSTEM)
	cp $< $@

$(LIBDIR)/VERSION: $(CURRYLIBSDIR)/VERSION
	cp $< $@

$(LIBDIR)/test.sh: $(CURRYLIBSDIR)/test.sh
	cp $< $@

index.html: $(CURRYLIBSDIR)/index.html.$(CURRYSYSTEM)
	cp $< $@
