include ../../Makefile.conf

ADA_PROJECT_PATH:=${shell echo "`pwd`/../../jni$(PATH_SEP)`pwd`/runtime/ada$(PATH_SEP)$(ADA_PROJECT_PATH)"}
GPR_PROJECT_PATH:=$(ADA_PROJECT_PATH)

STATIC_LIB=libajis.a
RELOCATABLE_LIB=$(LIB_PREFIX)ajis.$(RELOCATABLE_LIB_SUFFIX)

all: runtime_ada runtime_java ada2java

runtime_ada: static relocatable

static: runtime/ada/lib/$(STATIC_LIB)

runtime/ada/lib/$(STATIC_LIB):
	$(GPRBUILD) $(GPRBUILD_FLAGS) -p -XLibrary_Kind=static -XBuild=$(BUILD) -P runtime/ada/ajis.gpr

relocatable: runtime/ada/lib/$(RELOCATABLE_LIB)

runtime/ada/lib/$(RELOCATABLE_LIB):
	$(GPRBUILD) $(GPRBUILD_FLAGS) -p -XLibrary_Kind=relocatable -XBuild=$(BUILD) -P runtime/ada/ajis.gpr

runtime_java:
	cd runtime/java && \
	$(JAVAC) $(JAVAC_FLAGS) -source 1.5 -target 1.5 -J-Xmx512m -cp . com/adacore/ajis/*.java && \
	$(JAVAC) $(JAVAC_FLAGS) -source 1.5 -target 1.5 -J-Xmx512m -cp . com/adacore/ajis/*/*/*.java && \
	$(JAR) $(JAR_FLAGS) -c com > ajis.jar

ada2java:
	$(GPRBUILD) $(GPRBUILD_FLAGS) -XBuild=$(BUILD) -P src/ada2java.gpr

install: runtime_ada runtime_java ada2java
	$(MKDIR) -p $(INSTALL_DIR)/bin
	$(MKDIR) -p $(INSTALL_DIR)/lib/gnat
	$(MKDIR) -p $(INSTALL_DIR)/lib/ajis/static
	$(MKDIR) -p $(INSTALL_DIR)/lib/ajis/relocatable
	$(MKDIR) -p $(INSTALL_DIR)/include/ajis
	$(MKDIR) -p $(INSTALL_DIR)/share/ajis/templates
	$(MKDIR) -p $(INSTALL_LIB_DIR)
	$(COPY) -pf runtime/ada/lib/static/$(STATIC_LIB) $(INSTALL_DIR)/lib/ajis/static
	$(COPY) -pf runtime/ada/lib/relocatable/$(RELOCATABLE_LIB) $(INSTALL_DIR)/lib/ajis/relocatable
	$(REMOVE) -f $(INSTALL_LIB_DIR)/$(RELOCATABLE_LIB)
	$(LINK) $(INSTALL_DIR)/lib/ajis/relocatable/$(RELOCATABLE_LIB) $(INSTALL_LIB_DIR)/.
	$(COPY) -pf distrib/ajis.gpr $(INSTALL_DIR)/lib/gnat
	$(COPY) -pf runtime/ada/lib/static/*.ali $(INSTALL_DIR)/lib/ajis/static
	$(COPY) -pf runtime/ada/lib/relocatable/*.ali $(INSTALL_DIR)/lib/ajis/relocatable
	$(COPY) -pf runtime/ada/*.ad* $(INSTALL_DIR)/include/ajis
	$(COPY) -pf src/obj/ada2java$(EXE_EXT) $(INSTALL_DIR)/bin/ada2java$(EXE_EXT)
	$(COPY) -pf runtime/java/ajis.jar $(INSTALL_DIR)/lib
	$(COPY) -pf src/templates/* $(INSTALL_DIR)/share/ajis/templates/

clean:
	$(GPRCLEAN) $(GPRCLEAN_FLAGS) -P runtime/ada/ajis.gpr
	$(GPRCLEAN) $(GPRCLEAN_FLAGS) -P src/ada2java.gpr
	$(REMOVE) -rf runtime/ada/lib/*.{ali,o,class}
	$(REMOVE) -rf runtime/ada/obj*.{ali,o,class}
	$(REMOVE) -rf src/*.{ali,o,class}
	$(REMOVE) -rf src/obj/*.{ali,o,class}
