#
# @(#)GNUmakefile	1.12 00/07/18
#
# Copyright 1998 by Sun Microsystems, Inc.,
# 901 San Antonio Road, Palo Alto, California, 94303, U.S.A.
# All rights reserved.
#
# This software is the confidential and proprietary information
# of Sun Microsystems, Inc. ("Confidential Information").  You
# shall not disclose such Confidential Information and shall use
# it only in accordance with the terms of the license agreement
# you entered into with Sun.
#

ifdef ALT_JDK12_HOME
    JDK12_HOME = $(ALT_JDK12_HOME)
else
    JDK12_HOME = /usr/local/java/jdk1.2/solaris
endif

TOPDIR = $(shell cd ../../../..; pwd)

SHARE_SRC = $(TOPDIR)/src/client/jdk12_iiimf_adapter
IIIMP_SRC = $(shell cd $(SHARE_SRC)/classes; pwd)
SOURCES = $(shell cd $(IIIMP_SRC); ls sun/awt/im/iiimp/*.java com/sun/iiim/*.java)

SAMPLEJA_SOURCES = $(shell cd $(IIIMP_SRC)/../sample_classes; ls com/sun/iiim/sample/sampleja/*.java)
NEWPY_SOURCES = $(shell cd $(IIIMP_SRC)/../sample_classes; ls com/sun/iiim/sample/newpy/*.java)
SAMPLELWE_SOURCES = $(shell cd $(IIIMP_SRC)/../sample_classes; ls com/sun/iiim/sample/lwe/*.java)

CLASSDESTDIR = $(shell pwd)/classes
SAMPLE_CLASSDESTDIR = $(shell pwd)/sample_classes

SAMPLEJA_IMAGES = $(shell cd $(SHARE_SRC)/sample_classes/com/sun/iiim/sample/sampleja; ls images/*.gif)
SAMPLEJA_HTML = $(shell cd $(SHARE_SRC)/sample_classes/com/sun/iiim/sample/sampleja; ls html/*.html)
NEWPY_IMAGES = $(shell cd $(SHARE_SRC)/sample_classes/com/sun/iiim/sample/newpy; ls images/*.gif)
NEWPY_HTML = $(shell cd $(SHARE_SRC)/sample_classes/com/sun/iiim/sample/newpy; ls html/*.html)

JARLIBDIR = $(shell pwd)/lib

VPATH.java = $(SHARE_SRC)/classes

vpath %.java $(VPATH.java)

vpath %.class $(CLASSDSTDIR)

SOURCEPATH = $(VPATH.java)

JAVAC = $(JDK12_HOME)/bin/javac -deprecation
JAR = $(JDK12_HOME)/bin/jar

FILES_java = $(SOURCES)
SAMPLEJA_FILES_java = $(SAMPLEJA_SOURCES)
NEWPY_FILES_java = $(NEWPY_SOURCES)
SAMPLELWE_FILES_java = $(SAMPLELWE_SOURCES)

all: iiimp.jar
	
FILES_class = $(FILES_java:%.java=$(CLASSDESTDIR)/%.class)
SAMPLEJA_FILES_class = $(SAMPLEJA_FILES_java:%.java=$(SAMPLE_CLASSDESTDIR)/%.class)
NEWPY_FILES_class = $(NEWPY_FILES_java:%.java=$(SAMPLE_CLASSDESTDIR)/%.class)
SAMPLELWE_FILES_class = $(SAMPLELWE_FILES_java:%.java=$(SAMPLE_CLASSDESTDIR)/%.class)

LWE_SYNTAX = $(shell cd $(IIIMP_SRC); ls sun/awt/im/iiimp/*.lwesyntax)

$(CLASSDESTDIR) $(JARLIBDIR) $(SAMPLE_CLASSDESTDIR) :
	mkdir -p $@

$(CLASSDESTDIR)/%.class: $(SHARE_SRC)/classes/%.java
	@echo $? >> .classes.list

$(SAMPLE_CLASSDESTDIR)/%.class: $(SHARE_SRC)/sample_classes/%.java
	@echo $? >> .classes.list

.delete.classlist:
	$(RM) .classes.list

.compile.classlist:
	if [ -s .classes.list ] ; \
	then $(JAVAC) -d $(CLASSDESTDIR) -classpath \
	$(CLASSDESTDIR):$(JDK12_HOME)/jre/lib/rt.jar \
	$(shell if [ -s .classes.list ] ; then cat .classes.list; fi) ; \
	fi

.compile.sampleja_classlist:
	if [ -s .classes.list ] ; \
	then $(JAVAC) -d $(SAMPLE_CLASSDESTDIR) -classpath \
	$(SAMPLE_CLASSDESTDIR):$(JDK12_HOME)/jre/lib/rt.jar \
	$(shell if [ -s .classes.list ] ; then cat .classes.list; fi) ; \
	fi
.compile.newpy_classlist:
	if [ -s .classes.list ] ; \
	then $(JAVAC) -d $(SAMPLE_CLASSDESTDIR) -classpath \
	$(SAMPLE_CLASSDESTDIR):$(JDK12_HOME)/jre/lib/rt.jar \
	$(shell if [ -s .classes.list ] ; then cat .classes.list; fi) ; \
	fi

.compile.samplelwe_classlist:
	if [ -s .classes.list ] ; \
	then $(JAVAC) -d $(SAMPLE_CLASSDESTDIR) -classpath \
	$(SAMPLE_CLASSDESTDIR):$(JDK12_HOME)/jre/lib/rt.jar \
	$(shell if [ -s .classes.list ] ; then cat .classes.list; fi) ; \
	fi

.add.syntaxlist:
	cd $(CLASSDESTDIR); rm -f $(LWE_SYNTAX) ; \
	cd $(SHARE_SRC)/classes ; cp $(LWE_SYNTAX) \
	$(CLASSDESTDIR)/sun/awt/im/iiimp

.jar.classes:
	cd classes; $(JAR) cvf ../lib/iiimp.jar sun com

classes: $(CLASSDESTDIR) .delete.classlist $(FILES_class) .compile.classlist \
	.add.syntaxlist

.sampleja_cp_image_html:
	rm -rf $(SAMPLE_CLASSDESTDIR)/images $(SAMPLE_CLASSDESTDIR)/html ; \
	mkdir $(SAMPLE_CLASSDESTDIR)/images $(SAMPLE_CLASSDESTDIR)/html; \
	cd $(SHARE_SRC)/sample_classes/com/sun/iiim/sample/sampleja; \
	cp $(SAMPLEJA_IMAGES) $(SAMPLE_CLASSDESTDIR)/images; \
	cp $(SAMPLEJA_HTML) $(SAMPLE_CLASSDESTDIR)/html
.newpy_cp_image_html:
	rm -rf $(SAMPLE_CLASSDESTDIR)/images $(SAMPLE_CLASSDESTDIR)/html ; \
	mkdir $(SAMPLE_CLASSDESTDIR)/images $(SAMPLE_CLASSDESTDIR)/html; \
	cd $(SHARE_SRC)/sample_classes/com/sun/iiim/sample/newpy; \
	cp $(NEWPY_IMAGES) $(SAMPLE_CLASSDESTDIR)/images; \
	cp $(NEWPY_HTML) $(SAMPLE_CLASSDESTDIR)/html

sampleja_classes: $(SAMPLE_CLASSDESTDIR) .delete.classlist $(SAMPLEJA_FILES_class) \
	.compile.sampleja_classlist .sampleja_cp_image_html
newpy_classes: $(SAMPLE_CLASSDESTDIR) .delete.classlist $(NEWPY_FILES_class) \
	.compile.newpy_classlist .newpy_cp_image_html
samplelwe_classes: $(SAMPLE_CLASSDESTDIR) .delete.classlist $(SAMPLELWE_FILES_class) \
	.compile.samplelwe_classlist

.jar.sampleja_obj:
	cd sample_classes; $(JAR) cvf ../lib/sampleja_obj.jar com/sun/iiim/sample/sampleja/* html images
.jar.newpy_obj:
	cd sample_classes; $(JAR) cvf ../lib/newpy_obj.jar com/sun/iiim/sample/newpy/* html images
.jar.samplelwe:
	cd sample_classes; $(JAR) cvf ../lib/samplelwe.jar com/sun/iiim/sample/lwe/*

iiimp.jar: classes $(JARLIBDIR) .jar.classes

sampleja: sampleja_classes $(JARLIBDIR) .jar.sampleja_obj
newpy: newpy_classes $(JARLIBDIR) .jar.newpy_obj
samplelwe: samplelwe_classes $(JARLIBDIR) .jar.samplelwe

clean:
	$(RM) -rf classes sample_classes .classes.* lib
