# set compiler used for builing program
# must "add jdk" before making
JC      = javac
# jdk options
JDKOPTS = -g -depend -deprecation
# options for Java compiler
JOPTS  = $(JDKOPTS)
JARFILE = nutshell.jar
CLASSFILES = MultiLineLabel.class YesNoDialog.class YesNoDialogBeanInfo.class \
	YesNoDialogAlignmentEditor.class YesNoDialogMessageEditor.class \
	YesNoDialogCustomizer.class

PSFILES = MultiLineLabel.ps YesNoDialog.ps YesNoDialogBeanInfo.ps \
	YesNoDialogAlignmentEditor.ps YesNoDialogMessageEditor.ps \
	YesNoDialogCustomizer.ps

MultiLineLabel.class: MultiLineLabel.java
	$(JC) $(JOPTS) MultiLineLabel.java
MultiLineLabel.ps:     MultiLineLabel.java
	a2ps -v --columns=1 -f 14 --no-header --borders no \
	   --landscape --output=MultiLineLabel.ps MultiLineLabel.java

MultiLineLabel.jar:	MultiLineLabel.class MultiLineLabel.mf
	jar cmf MultiLineLabel.mf MultiLineLabel.jar MultiLineLabel.class

YesNoDialog.class: YesNoDialog.java  AnswerListener.java AnswerEvent.java
	$(JC) $(JOPTS) YesNoDialog.java
YesNoDialog.ps:     YesNoDialog.java AnswerListener.java AnswerEvent.java
	cat YesNoDialog.java AnswerListener.java AnswerEvent.java > /tmp/t.java ; \
	a2ps -v --columns=1 -f 14 --no-header --borders no \
	   --landscape --output=YesNoDialog.ps /tmp/t.java ; /bin/rm -f /tmp/t.java

YesNoDialogBeanInfo.class: YesNoDialogBeanInfo.java  AnswerListener.java AnswerEvent.java
	$(JC) $(JOPTS) YesNoDialogBeanInfo.java
YesNoDialogBeanInfo.ps:     YesNoDialogBeanInfo.java
	a2ps -v --columns=1 -f 14 --no-header --borders no \
	   --landscape --output=YesNoDialogBeanInfo.ps YesNoDialogBeanInfo.java

YesNoDialogAlignmentEditor.class: YesNoDialogAlignmentEditor.java  AnswerListener.java AnswerEvent.java
	$(JC) $(JOPTS) YesNoDialogAlignmentEditor.java
YesNoDialogAlignmentEditor.ps:     YesNoDialogAlignmentEditor.java
	a2ps -v --columns=1 -f 14 --no-header --borders no \
	   --landscape --output=YesNoDialogAlignmentEditor.ps YesNoDialogAlignmentEditor.java

YesNoDialogMessageEditor.class: YesNoDialogMessageEditor.java  AnswerListener.java AnswerEvent.java
	$(JC) $(JOPTS) YesNoDialogMessageEditor.java
YesNoDialogMessageEditor.ps:     YesNoDialogMessageEditor.java
	a2ps -v --columns=1 -f 14 --no-header --borders no \
	   --landscape --output=YesNoDialogMessageEditor.ps YesNoDialogMessageEditor.java

YesNoDialogCustomizer.class: YesNoDialogCustomizer.java  AnswerListener.java AnswerEvent.java
	$(JC) $(JOPTS) YesNoDialogCustomizer.java
YesNoDialogCustomizer.ps:     YesNoDialogCustomizer.java
	a2ps -v --columns=1 -f 14 --no-header --borders no \
	   --landscape --output=YesNoDialogCustomizer.ps YesNoDialogCustomizer.java

# remove all *.class files before making bare beans
YesNoDialog.jar:	MultiLineLabel.class YesNoDialog.class
	jar cfm YesNoDialog.jar YesNoDialog.mf *.class

# makes beans with customized beanbox interface
$(JARFILE):	$(CLASSFILES) manifest.stub
	jar cfm $(JARFILE) manifest.stub *.class

clean:
	/bin/rm -f *.class *.jar *.ps
