Code Search for Developers
 
 
  

Makefile from gzz at Krugle


Show Makefile syntax highlighted

# This Makefile requires GNU make.

# all must compile everywhere
all: compile rmi test
alltests: test batchtest-junit slow test-
botcompile: compile rmi
bottest: test

CVS ?= cvs

VERSION=snapshot-`date -u +%Y%m%d`
NOTEST=true
RMIC ?= rmic

dist: DISTDIR=gzz-$(VERSION)
dist: 
	rm -Rf $(DISTDIR)
	mkdir $(DISTDIR)
	$(NOTEST) || $(MAKE) test slow	
	$(MAKE) clean 
	$(MAKE) ready_to_compile doc
	find . ! -type d|egrep -v '^\./(basalt|lava|C\+\+|Perl|Java|Modules)|/CVS/|#|~|\$$py\.class$$|\./gzz.*(jar|tar.gz)$$' | \
	    grep -vF "./$(DISTDIR)/"|xargs --replace cp --parents {} $(DISTDIR)
	mkdir $(DISTDIR)/depends
	cp -a $(GZZ_DEPENDS)/* $(DISTDIR)/depends
	rm -R $(DISTDIR)/depends/CVS

	echo $(VERSION) >$(DISTDIR)/VERSION

	tar cf $(DISTDIR).tar $(DISTDIR)
	gzip -9vf $(DISTDIR).tar

	rm -Rf $(DISTDIR)

jar: jardir=$(JARNAME).build
jar : 
	rm -Rf $(jardir)
	mkdir $(jardir)
	$(MAKE) compile
	$(NOTEST) || $(MAKE) test slow
	echo 'Main-Class: $(mainclass)' > $(jardir)/manifest
	(cd $(jardir) && for jar in pythonlib yaml jythonlib jython; do \
	    jar xvf ../$(GZZ_DEPENDS)/$$jar.jar ;\
	 done)
	cp -a $(CLASSDIR)/* $(jardir)
	find gzz -name "*.py" | while read file ; do \
	    mkdir -p $(jardir)/`dirname $$file` && cp $$file $(jardir)/$$file;\
	done
	cp Gzz.py $(jardir)
	cp LICENSE.lgpl LICENSE.xpl $(jardir)
	cp $(GZZ_DEPENDS)/{jython,python,yaml}.license $(jardir)
	cp README $(jardir)
	(cd $(jardir) && jar cvfm $(JARNAME) manifest *)
	mv $(jardir)/$(JARNAME) .
	rm -rf $(jardir)

CVSTAG=none
official-release : VERSION=$(shell echo $(CVSTAG) \
			           | sed -e 's/^rel_//' -e 's/_/./g')
official-release : gzzdir=gzz-$(VERSION)-cvs
official-release : dependsdir=depends-$(VERSION)-cvs
official-release : 
	rm -Rf $(gzzdir) $(dependsdir)
	$(CVS) -z3 -d$(shell cat CVS/Root) checkout -r $(CVSTAG) \
	                                            -d $(gzzdir) gzz
	$(CVS) -z3 -d$(shell cat $(GZZ_DEPENDS)/CVS/Root) checkout \
						 -r $(CVSTAG) \
	                                         -d $(dependsdir) depends
	$(MAKE) -C $(gzzdir) VERSION=$(VERSION) GZZ_DEPENDS=../$(dependsdir) \
		jar
	mv $(gzzdir)/gzz-$(VERSION).jar .

	$(MAKE) -C $(gzzdir) VERSION=$(VERSION) GZZ_DEPENDS=../$(dependsdir) \
		dist 
	mv $(gzzdir)/gzz-$(VERSION).tar.gz .

	rm -Rf $(gzzdir) $(dependsdir)

CVS2CL=cvs2cl

CVS_RSH=ssh
ChangeLog ::
	CVS_RSH=$(CVS_RSH) $(CVS2CL) -U changelog-authors -l -d'2001-01-01\<now' -W 1200 -b --gmt -w --ignore ChangeLog

.PHONY : ChangeLog Manifest dist official-release

copyrighted:
	python metacode/copyrighter.py "Gzz"

# Put here the shell argument line to generate the build tag for the
# window title
BUILD_TAG := $(shell echo "Custom CVS Build `date -u +%Y-%m-%dT%H:%M:%SZ` by `whoami`@`hostname`")

# For jar builds:
JARNAME=gzz-$(VERSION).jar

# Location of the depends/ CVS module:
ifeq (,$(GZZ_DEPENDS))
  GZZ_DEPENDS=$(wildcard depends)
  ifeq (,$(GZZ_DEPENDS))
    GZZ_DEPENDS=../depends
  endif
endif

CLASSDIR=CLASSES/
CLASSPATH =$(CLASSDIR):$(GZZ_DEPENDS)/jena.jar:$(GZZ_DEPENDS)/icu4j.jar:$(GZZ_DEPENDS)/xerces.jar:$(GZZ_DEPENDS)/HTTPClient.zip:$(GZZ_DEPENDS)/junit.jar:$(GZZ_DEPENDS)/jython.jar:$(GZZ_DEPENDS)/collections-kaffe.jar:$(shell echo $$CLASSPATH)
export CLASSPATH
Z_DIR=../Z/
Z_PRIVATE=../Z-private/
MEDIASERVER=http://himalia.it.jyu.fi/ms
POOL=gzz-base
PRIVATEPOOL=gzz-jyu-private

mainclass = gzz.control.Main

httpsync: 
	mkdir -p $(Z_DIR)
	$(JAVA) gzz.client.Synch -dir $(Z_DIR) -url $(MEDIASERVER)/$(POOL)

sync:
	mkdir -p $(Z_DIR)
	./sync-remote-private.sh $(Z_DIR) $(POOL)

discard-pool:
	find $(Z_DIR) -name 'b_*'|xargs rm -f
	find $(Z_DIR) -name 'ps_*'|xargs rm -f

get-ms: discard-pool sync

sync-private: Z_DIR=$(Z_PRIVATE)
sync-private: POOL=$(PRIVATEPOOL)
sync-private: sync

get-ms-private: Z_DIR=$(Z_PRIVATE)
get-ms-private: POOL=$(PRIVATEPOOL)
get-ms-private: get-ms

# -taglet gzz.util.JythonDoclet
JAVADOCOPTS=-use -version -author -windowtitle "GZigZag Java API"

TEMP=/tmp

%.java: %.zob zob2java.pl ; perl zob2java.pl $< $@

TESTS=$(wildcard test/*.java test/*/*.java test/*/*/*.java test/*/*/*/*.java \
    lava/test/*.java lava/test/*/*.java lava/test/*/*/*.java lava/test/*/*/*/*.java \
    )

#    basalt/test/*.java basalt/test/*/*.java basalt/test/*/*/*.java basalt/test/*/*/*/*.java 


GENERATEDBASALT=basalt/gzz/impl/Merge1.java basalt/gzz/impl/clasm/ClasmPrimitiveSet1.java  basalt/gzz/impl/PartialOrder.java basalt/gzz/impl/ExternalEditor.java basalt/gzz/impl/PlainVStreamDim.java
GENERATED=gzz/mediaserver/MediaTypes.java gzz/gfx/gl/GLRen.java

gzz/gfx/gl/GLRen.java: gfx/librenderables/*
	(cd gfx/librenderables; $(MAKE) -f Makefile-javaonly ../../gzz/gfx/gl/GLRen.java)

basalt/gzz/impl/Merge1.java: basalt/gzz/impl/Merge1 gzz/impl/genmerge.pl
	perl gzz/impl/genmerge.pl basalt/gzz/impl/Merge1

basalt/gzz/impl/PartialOrder.java: basalt/gzz/impl/PartialOrder gzz/impl/genmerge.pl
	perl gzz/impl/genmerge.pl basalt/gzz/impl/PartialOrder

basalt/gzz/impl/ExternalEditor.java: basalt/gzz/impl/ExternalEditor gzz/impl/genmerge.pl
	perl gzz/impl/genmerge.pl basalt/gzz/impl/ExternalEditor

basalt/gzz/impl/PlainVStreamDim.java: basalt/gzz/impl/PlainVStreamDim.ly basalt/gzz/impl/PlainVStreamDim-trees-nu.ly
	python2.2 $(GZZ_DEPENDS)/ly.py basalt/gzz/impl/PlainVStreamDim.ly basalt/gzz/impl/PlainVStreamDim-trees-nu.ly

basalt/gzz/impl/clasm/ClasmPrimitiveSet1.java: basalt/gzz/impl/clasm/clasm-primitives.ly basalt/gzz/impl/clasm/clasm-primitives-internals.ly
	python2.2 $(GZZ_DEPENDS)/ly.py basalt/gzz/impl/clasm/*.ly

# find . -name '*.java' | xargs grep -h "^package" | sort | uniq | sed 's/package //;s/;//;' | grep -v java.tex

DOCPKGS=gzz.view gzz.view.buoy gzz.client gzz.client.awt gzz.client.gl gzz.gfx.gl gzz.impl gzz.diff gzz.mediaserver.storage gzz.mediaserver gzz.util gzz.vob gzz.vob.buoy gzz gzz.media gzz.fuzzy gzz.media.impl gzz.index gzz.index.impl gzz.zzutil gzz.slices gzz.control

PP=gzz/modules/pp/*.java gzz/modules/pp/vob/*.java

BASALTSRC:= $(wildcard basalt/gzz/*.java basalt/gzz/impl/*.java)

# Tempfile
tmpfile := $(shell mktemp /tmp/fileXXXXXX)
foo := $(shell echo 1>&2 "Tempfile is $(tmpfile)")

# jikes := $(shell which jikes)
# Disable for now, since on debian jikes is at a bad version
jikes := 
# DEBUG=-g

ifeq (,$(JAVAC))
 ifneq (,$(jikes))
	JAVAC=jikes +P
 else
	JAVAC=javac
 endif
endif

ifeq (,$(JAVA))
	JAVA=java
endif

ifneq (,$(EDITOR))
	EDITOR_OPTION=-Duser.editor=$(EDITOR)
else
	EDITOR_OPTION=
endif

JAVANCSS=/BIG/javancss18.38/bin/javancss

archcompile = set -e; for d in "$(ARCH)"; do if [ -e arch/$(ARCH)/arch.mk ] ; then $(MAKE) -f arch/$(ARCH)/arch.mk; fi; done
archclean = set -e; for d in "$(ARCH)"; do if [ -e arch/$(ARCH)/arch.mk ] ; then $(MAKE) -f arch/$(ARCH)/arch.mk clean; fi; done

rmi:
	$(RMIC) -d $(CLASSDIR) gzz.modules.pp.PPActionsImpl gzz.impl.mirror.MasterImpl gzz.impl.mirror.MasterImpl.TapImpl

ready_to_compile: $(GZZ_DEPENDS)/jython.jar $(GZZ_DEPENDS)/jythonlib.jar $(GENERATED)

RAWSRC = `find gzz/ -name "*.java"` `find test/gzz/ -name "*.java"`

compile: ready_to_compile
	mkdir -p $(CLASSDIR)
	echo $$CLASSPATH
	# $(JAVAC) -deprecation $(DEBUG) -d $(CLASSDIR)  BuildInfo.java
#	fix circular dependency problem in clean builds
	# -deprecation
	$(JAVAC) $(DEBUG) -d $(CLASSDIR) $(RAWSRC) 
	$(archcompile)

qc: ready_to_compile
	perl changedJava.pl $(RAWSRC) | xargs $(JAVAC) $(DEBUG) -d $(CLASSDIR) 

indyjar:
	mkdir independent
	cp -r $(CLASSDIR)/* independent/
	#unzip $(GZZ_DEPENDS)/junit.jar -d independent/
	unzip $(GZZ_DEPENDS)/HTTPClient.zip -d independent/
	echo 'Main-Class: gzz.client.Run' > independent/manifest
	jar cfm gzz-independent.jar independent/manifest -C independent/ .
	rm -r independent

independent: clean indyjar

slow:
	$(JAVA) -Dzdir=$(Z_DIR) -Dgzigzag.cellstr=idtext junit.textui.TestRunner TestSlow

awtslow:
	$(JAVA) -Dzdir=$(Z_DIR) junit.awtui.TestRunner TestSlow


.PHONY: BuildInfo.java

BuildInfo.java :
	@echo "*** NOTE: YOU MAY HAVE TO RUN 'make' MORE THAN ONE TIME"
	@echo "*** TO GET EVERYTHING TO COMPILE DUE TO DEPENDENCIES"
	rm -f BuildInfo.java
	sed 's/@@@@@/$(BUILD_TAG)/' BuildInfo.java.in > BuildInfo.java.new && mv BuildInfo.java.new BuildInfo.java

gzz/mediaserver/MediaTypes.java: gzz/mediaserver/make-mt.pl gzz/mediaserver/mime.types
	cd gzz/mediaserver && ./make-mt.pl

# HIGHLY EXPERIMENTAL!!!
gcj :
	gcj-3.0 --main=$(mainclass) -o gzigzag `find $(CLASSDIR) -name \*.class`
gcj-src:
	gcj-3.0 --main=(mainclass) -o gzigzag $(SRC)

# doc: pegs javadoc documl docxx
doc: javadoc docxx documl

javadoc: ready_to_compile
	find . -name '*.class' | xargs rm -f # Don't let javadoc see these
	rm -Rf doc/javadoc
	mkdir -p doc/javadoc
	javadoc $(JAVADOCOPTS) -d doc/javadoc -sourcepath . $(DOCPKGS)

documl:
#	$(MAKE) -C doc/uml
#	$(MAKE) -C doc/uml/gl
	$(JYTHON) metacode/umldoc.py doc/ doc/gl/ doc/pp/
	$(JYTHON) metacode/umlpegboard.py

#RST could be a single rst file or a directory, when
#all the .rst-files in directory is compiled (non-recursive)
rst:
	$(JYTHON) metacode/umldoc.py $(RST)

#keeps jython running for quick recompiling:
#after each cycle prompts a key for continue
rst-loop:
	$(JYTHON) metacode/umldoc.py loop $(RST)


docxx:
	doc++  -a --before-group --before-class --no-java-graphs --trivial-graphs  -H -F -d doc/docxx -u `find gfx -name '*.hxx'`

pegs:
	$(JYTHON) metacode/pegboard.py

lavadoc::
	javadoc $(JAVADOCOPTS) -d lavadoc -sourcepath ./:lava/  gzz gzz.impl gzz.impl.errors

diadoc:: diadoc-jd diadoc-py

diadoc-jd: GrepDoclet
	javadoc -sourcepath .:lava -doclet gzz.util.GrepDoclet gzz.client gzz.impl gzz >foo

diadoc2-jd: JythonDoclet
	javadoc -sourcepath .:lava -doclet gzz.util.JythonDoclet gzz 

diadoc-py:
	python2.2 gzz/util/diadoc.py <foo
	mpost leo4.mp 
	mpost screen.mp 
	mpost zzstruct.mp 

GrepDoclet:
	mkdir -p $(CLASSDIR)
	echo $$CLASSPATH
	$(JAVAC) $(DEBUG) -d $(CLASSDIR) metacode/gzz/util/GrepDoclet.java	

JythonDoclet:
	mkdir -p $(CLASSDIR)
	echo $$CLASSPATH
	$(JAVAC) $(DEBUG) -d $(CLASSDIR) metacode/gzz/util/JythonDoclet.java	

clean:
	$(RM) -r $(CLASSDIR)
	$(RM) $(GENERATED)
	$(RM) gzz-independent.jar
	$(RM) -r independent/
	@echo "Removing everything found in .cvsignore's"
	find . -name ".cvsignore"|while read ign; do (cd `dirname $$ign` && cat .cvsignore|while read files; do rm -Rf $$files; done); done
	find . -name "*.so" | xargs rm -f
	find . -name "*.o" | xargs rm -f
	find . -name "*.class" | xargs rm -f

tags::
	ctags -R

TAGS::
	if [ -f TAGS ]; then rm TAGS; fi
	find gzz gfx -type d -name CVS -exec sed -e '/^[^/]/d' -e 's:^\(/[^/]*\).*:{}\1:' -e 's:/CVS/:/:' {}/Entries \;|xargs etags --append

CVS2CL=cvs2cl

ChangeLog::
	$(MAKE) -C .. ChangeLog

ncss:: $(SRC)
	$(JAVANCSS) -function $(SRC) | sort -rnk3 -k1 >ncss-ccn
	# perl mungencss.pl |  \
	sort -rnk2 -k1 <ncss-ccn >ncss-ncss
	sort -rnk4 -k1 <ncss-ccn >ncss-jvdc
#	$(JAVANCSS) -all $(SRC) >ncss


# Please note that JUnit tests are deprecated and should be converted into
# tests written in python. See targets "test" and "test".
TESTCLASS=gzz.Test
TESTRUNNER=junit.awtui.TestRunner
TESTCOMMAND=$(JAVA) -Dzdir=$(Z_DIR) $(TESTRUNNER)

test-junit::
	$(TESTCOMMAND) $(TESTCLASS)

batchtest-junit::
	$(JAVA) -Dzdir=$(Z_DIR) junit.textui.TestRunner $(TESTCLASS)

JVMFLAGS= -Xms64M -Xmx128M # -Xincgc

ifeq (,$(JYTHONPATH))
 JYTHONPATH=$(GZZ_DEPENDS)/jythonlib.jar:$(GZZ_DEPENDS)/pythonlib.jar:$(GZZ_DEPENDS)/yaml.jar:$(GZZ_DEPENDS)/docutils.jar
endif
ifeq (,$(JYTHON))
# python.verbose can be: "error", "warning", "message", "comment", "debug"
 JYTHON=$(JAVA) $(JVMFLAGS) -Dpython.path=$(JYTHONPATH) -Dpython.verbose=message $(EDITOR_OPTION) org.python.util.jython
endif

GLLIB=LD_LIBRARY_PATH=/usr/lib:gfx

# Generate a single urn-5 identifier
urn:
	$(JAVA) gzz.util.URN5Namespace

runjython: 
	$(GLLIB) $(JYTHON) $(DBG)


ifeq (,$(Z))
  Z=-t
endif

test::  # Use: make test TEST=test/gzz/vob/vobmatcher.test, to run a single test.
	$(GLLIB) $(JYTHON) test/testutil.py -f GL $(DBG) $(TEST)
test-gl::
	$(GLLIB) $(JYTHON) test/testutil.py -Dgzzclient=gl -f AWT $(DBG) jni $(TEST)

testbugs::
	$(GLLIB) $(JYTHON) test/testutil.py -f \* $(DBG) $(TEST)
testbugs-gl::
	$(GLLIB) $(JYTHON) test/testutil.py -Dgzzclient=gl -f \* $(DBG) jni $(TEST)

run:
	$(JYTHON) Gzz.py $(DBG) -Dgzzclient=awt $(Z)
rungl:
	$(GLLIB) $(JYTHON) Gzz.py $(DBG) -Dgzzclient=gl $(Z)
runctalk:
	$(GLLIB) $(JYTHON) Documentation/Manuscripts/ProcText/CTalk/CTalk.py

testclient::
	$(JYTHON) Gzz.py -t --test-client -Dgzzclient=awt
testclient-gl::
	$(GLLIB) $(JYTHON) Gzz.py -t --test-client -Dgzzclient=gl

jython:
	$(JYTHON) $(DBG)

GLDEMO=gfx/util/demo.py $(DBG)

runpaper:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx.demo.paper
runtestto:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx/demo/testtimeout.py
runpsyko:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx/demo/psyko.py
runpsyko2:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx/demo/psyko2.py
runcolor:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx/demo/color/colors.py
runtexturelab:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx/demo/texturelab.py
runblob:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx/demo/blob/Obj.py
runfillets:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx.demo.fillet
runglinfo:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx/demo/opengl/glinfo.py
runstencil:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx/demo/opengl/stencil.py
runirregu:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx/demo/irregularframe.py
runirregu2:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx/demo/irregular2.py
runbuoydev:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx/demo/buoydev.py
runfisheye:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx/demo/fisheye.py
runpaperbasis:
	$(GLLIB) $(JYTHON) $(GLDEMO) gfx/demo/paperbasis.py

DEMOMOD = gfx/demo/$(DEMO).py
rundemo:
	$(GLLIB) $(JYTHON) $(GLDEMO) $(DEMOMOD)

runanim:
	$(GLLIB) $(JYTHON) gfx/util/anim.py $(DBG) gfx/anim/$(ANIM).py

runppserver:
	$(JYTHON) gzz/modules/pp/ppserver.py
PPSERVERHOST=127.0.0.1
runppclient: 
	$(GLLIB) $(JAVA) -Dgzzclient=gl $(JVMFLAGS) org.python.util.jython gzz/modules/pp/ppclient.py $(PPSERVERHOST)

runpplocal: 
	$(GLLIB) $(JYTHON) gzz/modules/pp/localpp.py $(DBG) 

runpptest: 
	$(GLLIB) $(JYTHON) $(GLDEMO) gzz/modules/pp/demotest.py $(DBG) 

gl: compilegl rmi test-gl

compilegl: compile
	$(MAKE) -C gfx all

gzzgl: # Only for people who know what they're doing
	$(MAKE) -C gfx all

DATE:=$(shell date '+%Y%m%d%H%M%S')
PPDIR:=pp-$(DATE)

packagepp: gl
	rm -rf $(PPDIR)
	mkdir $(PPDIR)
	cp -a CLASSES/* $(PPDIR)
	cp gzz/gfx/gl/libGZZGL.so $(PPDIR)
	cp gzz/modules/pp/glpp*.sh $(PPDIR)
	cp gzz/modules/pp/*.py $(PPDIR)
	cp ../depends/jython.jar $(PPDIR)
# Jython libraries not included! XXX
	mkdir -p $(PPDIR)/gzz/gfx/gl
	cp -a gzz/gfx/gl/a010013l.pfb $(PPDIR)/gzz/gfx/gl
	tar cvf - $(PPDIR) | gzip -9 > $(PPDIR).tar.gz
	rm -rf $(PPDIR)

perls: $(GENERATED)


lava:: compile-lava test-lava

compile-lava:
	$(JAVAC) $(DEBUG) -d $(CLASSDIR) `find lava/gzz/ -name "*.java" ! -path "lava/gzz/modules/gispmap/*"` `find lava/test/gzz/ -name "*.java" ! -path "lava/test/gzz/modules/gispmap/*"`
test-lava:
	$(GLLIB) $(JYTHON) test/testutil.py $(DBG) `find lava/test/gzz/ -name "*.test" ! -path "lava/test/gzz/modules/gispmap/*"`
test-lava-junit:
	$(JAVA) -Dzdir=$(Z_DIR) junit.textui.TestRunner gzz.TestLava

compile-xxx: gzz/gfx/gl/GLRen.java
	$(JAVAC) $(DEBUG) -d $(CLASSDIR) gzz/client/*.java gzz/gfx/gl/GLRen.java gzz/client/gl/*.java




See more files for this project here

gzz

An implementation of Ted Nelson's ZZstructure. ZZstructure is a new type of programming platform for structured data.

Project homepage: http://savannah.nongnu.org/projects/gzz
Programming language(s): C++,Java,Python
License: lgpl21

  Documentation/
    Clang_Design/
      1.png
      2.png
      3.png
      4.png
      5.png
      6.png
      7.png
      Makefile
      clasm-1.png
      clasm-2.png
      clasm-3.png
      clasm-4.png
      clasm-5.png
      clasm-tutorial.wml
      clasm.wml
      clasmpics.html
      cursor-impliedcells.jpg
      design.ptex
      preflet_ladder.jpg
      thales.wml
    DesignProblems/
      Makefile
      beamorder.dia
      beamorder.png
      dp.wml
      linkorder.dia
      linkorder.png
    Gentle_Introduction/
      Cells.jpg
      Dims.jpg
      ListGridTreeMesh.jpg
      LocalGlobal.jpg
      Makefile
      README
      SpreadSheet.jpg
      gi.wml
      zzgentle.tex
    Glossary/
      Makefile
      gl.wml
    Mediaserver/
      Makefile
      id-format.jpg
      id-sig-scheme.jpg
      ms.wml
      spoof-3rdparty.jpg
    Presentations/
      General2002/
      ThursdaySeminar03/
    Semantics/
      Makefile
      pic1.png
      pic2.png
      pic3-1.png
      pic3-2.png
      sem.wml
    Slices/
      SliceLogic
      zzSliceLogic.jpg
    Spec/
      Makefile
      SCRATCH
      canvasraster.dia
      cursor1.dia
      cursordim.dia
      email1.dia
      formal.tex
      inheritparam.dia
      mainloop.jpg
      oz.sty
      rasterspec.dia
      sliceinclusion-containment.jpg
      sliceinclusion-dimsame.jpg
      sliceinclusion-preflet-types.jpg
      sliceinclusion-simple.jpg
      sliceinclusion-upgrade-conflict.jpg
      sliceinclusion-upgrade.jpg
      spaces1.jpeg
      spaces2.jpeg
      spaces3.jpeg
      span-insertion-after.png
      span-insertion-before.png
      transspace-versioning-inclusion.jpg
      transspace-versioning.jpg
      zzspec.wml
    TechReports/
      Blobs/
      Graphics/
      GzzTech/
    UseCases/
      Makefile
      usecases.wml
    UsersGuide/
      Makefile
      active.png
      addressbook.png
      aftermove.png
      alku.png
      bind1.png
      bind2.png
      boring.png
      bothwins.png
      breakkafka.png
      change1.png
      change2.png
      child1.png
      child2.png
      clone1.png
      clone2.png
      connect1.png
      connect2.png
      connection1.png
      creation.png
      dimensio.png
      edit1.png
      edit2.png
      edit3.png
      edit4.png
      extra.png
      f2.png
      familytree.png
      font.png
      grey.png
      hop1.png
      hop2.png
      hopolympos.png
      htree.png
      kafka.png
      klooni.png
      make1.png
      make2.png
      make3.png
      make4.png
      make5.png
      make6.png
      margins.png
      mark1.png
      mark2.png
      markconnect.png
      mutsi.png
      mutsiosoite.png
      myspeech.png
      myspeech1.png
      myspeech2.png
      myspeech3.png
      newcells.png
      newstory.png
      newstory2.png
      newstory3.png
      newug.wml
      olympos.png
      olympos2.png
      osoite.png
      para.png
      rainy.png
      rastererror.png
      rcfact1.png
      rightmoved.png
      rotate.png
      row.png
      shiny.png
      shinyhappy.png
      shinyhappy2.png
      shinyhappy3.png
      showingz.png
      start.png
      story.png
      storytext.png
      structure1.png
      structure2.png
      suku.png
      testi.png
      ug.wml
      wallstreet.png
      widthstr.png
      wrongconn.png
    VersioningMerge/
      ABCD.jpg
      ConflictLevels.jpg
      DifficultMerge.jpg
      LLMergeProblem.jpg
      LLMergeProblem2.jpg
      LargeScaleRearrange.jpg
      Makefile
      RelationConflict.jpg
      SCRATCH
      SegCases.jpg
      SegExamples.jpg
      mergemath.tex
      vm.wml
    ZOb/
      ZOb.html
      javazob.png
      printzob.png
      testzob.png
      zobtype.png
    diagrams/
      CornerListViolation.jpg
      Makefile
      Molecule1.jpg
      Molecule2.jpg
      Molecule3.jpg
      ZZCanvas.dia
      cursoring.dia
      link-usecases.png
      revper-1.jpg
      revper-2.jpg
      revper-3.jpg
    images/
      buoy-nadir.jpeg
      fillets-topoproblem.jpeg
      paper-bettermarble-green.jpeg
      paper-bettermarble-orange.jpeg
      paper-bettermarble-red.jpeg
      paper-bluemarble.jpeg
      paper-brownmarble.jpeg
      paper-greenmarble.jpeg
      paper-oksa.jpeg
      paper-othermarble-gray.jpeg
      paper-pinkmarble.jpeg
      paper-silk.jpeg
      pp-frame-connection.jpeg
    misc/
      ZZvsTraditional/
      antont-wireless_security/
      benja-diff-fa/
      hemppah-luk/
      hemppah-progradu/
      mindmap/
      uml/
      PPPrototypeDesign.sxw
      argh-useful.jpeg
      billow
      bricks.txt
      byrokratiadoku
      byrokratiadoku.txt
      cellids
      cursor-bindings.txt
      gzz-functional-notes.sxw
      gzz-ogl-notes.sxw
      gzzmo.rst
      inbct2002yht
      jyvasaly.txt
      keys
      m2npic.txt
      nets-1.txt
      nets-2.txt
      oske1.tex
      storm-urn-application.txt
      styled-enfilade-nodes.txt
      textcloud
      urn-application.txt
    wmlinc/
      art.css
      article.wml
      catart.wml
      common.wml
    FAQ
    Makefile
    README
    RauliLogo.png
    STARTING
    TjlLogo.png
    VISION
    index.html
    keybindings.wml
    lib.mk
    newbie-dev-faq
  Perl/
    PerlServImpl.pm
    README
    ZZPerlDBServ.pm
    ZZPerlServ.pm
    ZZPerlSimpleClient.pm
    cperl.pl
    sperl.pl
  basalt/
    Modules/
    gfx/
    gzz/
    metacode/
    test/
  doc/
    buoy/
    gl/
    metacode/
    pp/
    uml/
    views/
    Gzz_Backend.rst
    Gzz_Background.rst
    Gzz_CoreAPIs.rst
    Gzz_Frontend.rst
    Gzz_Frontend_GLRend.rst
    Gzz_Frontend_View.rst
    Gzz_Frontend_Vobs.rst
    Gzz_GL.rst
    Gzz_Memory.rst
    Gzz_Storm.rst
    Gzz_architecture.rst
    Gzz_docs.rst
    gzz.css
  gfx/
    anim/
    demo/
    fonts/
  gzz/
  lava/
  metacode/
  test/
  CODING
  ChangeLog
  ChangeLog.2000
  Gzz.py
  Helvetica.tfm
  HelveticaBold.tfm
  INSTALL
  LICENSE.lgpl
  LICENSE.xpl
  MS-KILLFILE.gzz-jyu-private
  Makefile
  Makefile.new
  NEWS
  README
  README-MS
  RELEASENOTES
  TODO
  TODO-callgl
  TODO-storm
  TODO-vob
  VERSION
  bindings.py
  changedJava.pl
  changelog-authors
  compileplanter.py
  cvsparser.pl
  genimages.pl
  makedist.param
  makedist.sh
  manifest-filter.lst
  manifest-filter.pl
  stripblock.pl
  sync-remote-private.sh