build

Wei Liang writes:
 > Hi,  can anyone share with me his exerience building the server with
 > the provided source code?   What are the steps I need to follow?
 > Thanks in advance.
 > 

Find enclosed, the latest makefiles needed to build Jigsaw under
UNIX. These are replacements for the old ones.

Once you've installed them, do the following:

$ cd ROOT/Jigsaw/src/classes/
$ make MAKEDIR=ROOT/Jigsaw/src/makefiles 

make has several targets:

clean: to cleanup
javadoc: to generate java documentation

The upper directory Makefile also allow you to build the zip class
file (using gnu make)

Anselm.
[Three files attached, spearated by "**** EOF" ]
# ROOT/Jigsaw/src/makefiles/file.make
# $Id: file.make,v 1.3 1996/10/17 16:40:34 abaird Exp $
# COPYRIGHT

# This makefile should be included in all leaves packages directory. It uses
# the FILES variable to know what are the files to be compiled.
# For example, if you have a package 'foo' containing 'a.java' and 'b.java'
# your Makefile should look like this:
# ----------
# PACKAGE=foo
# FILES=a.java b.java
# include $(MAKEDIR)/files.make
# ----------
#
# This file defines the following targets:
# all:	 to build the class files from the java files.
# clean: to clean all sub packages
# doc:   to build the appropriate documentation files from the source
# The 'doc' target uses DESTDIR variable that should point to the absolute 
# path of the target directory (in which doc files will be created).

.SUFFIXES: .java .class

.java.class:
	@@echo "Compiling " $< ; \
	if [ -z "$(TARGET)" ]; then \
		javac $(JAVAFLAGS) $<; \
	else \
		javac -d $(TARGET) $(JAVAFLAGS) $<; \
	fi

all:: $(FILES:.java=.class)

doc::
	javadoc -d $(DESTDIR) $(FILES)

clean::
	@@rm -rf *~ *.class

**** EOF
# ROOT/Jigsaw/src/makefiles/package.make
# $Id: package.make,v 1.3 1996/10/17 16:40:35 abaird Exp $
# COPYRIGHT

# This makefile should be included in all packages Makefiles. To use it, define
# the PACKAGES variable to the set of packages defined in your directory,
# and the PACKAGE variable to this package name.
# So, if you have a 'foo' package, included in 'w3c' and containing 'bar1'
# and 'bar2' sub packages, your Makefile should look like this:
# ----------
# PACKAGE=w3c.foo
# PACKAGES=bar1 bar2
# include $(MAKEDIR)/package.make
# ----------
#
# This make file defines the following targets:
# all:	 to build the class files from the java files.
# clean: to clean all sub packages
# doc:   to build the appropriate documentation files from the source
# The 'doc' target uses DESTDIR variable that should point to the absolute 
# path of the target directory (in which doc files will be created).

all::
	@@for p in $(PACKAGES); do \
		echo 'building ' $(PACKAGE).$$p; \
		if [ -z "$(TARGET)" ]; then \
			(cd $$p; make MAKEDIR=$(MAKEDIR)); \
		else \
			(cd $$p; make MAKEDIR=$(MAKEDIR) VPATH=$(VPATH)/$$p); \
		fi \
	done

doc::
	@@for p in $(PACKAGES); do \
		echo 'doc ' $(PACKAGE).$$p; \
		(cd $$p; make MAKEDIR=$(MAKEDIR) DESTDIR=$(DESTDIR) doc); \
	done

clean::
	@@for p in $(PACKAGES); do \
		echo 'cleaning ' $(PACKAGE).$$p; \
		(cd $$p ; make MAKEDIR=$(MAKEDIR) clean) ; \
	done

**** EOF
# ROOT/Jigsaw/src/classes/Makefile

classes:
	@@if [ -z "$(TARGET)" ]; then \
		echo 'Local build of Jigsaw...'; \
		(cd w3c; make MAKEDIR=$(MAKEDIR)); \
	else \
		echo 'Cleaning (required) first'; \
		(cd w3c; make MAKEDIR=$(MAKEDIR) clean); \
		echo 'Now building jigsaw classes for zip file'; \
		(cd w3c; make MAKEDIR=$(MAKEDIR) VPATH=$(TARGET)/w3c); \
		echo 'Packing up classes...' ; \
		(cd $(TARGET); rm -rf jigsaw.zip; zip -r -0 jigsaw.zip); \
		echo 'Cleaning up'; \
		(cd $(TARGET); rm -rf w3c); \
	fi

clean:
	(cd w3c; make MAKEDIR=$(MAKEDIR) clean)

Received on Friday, 18 October 1996 09:37:25 UTC