# Makefile for Akk's applets,
# and packaging to make them run on the Zaurus.

VERSION = 0.4.1

IPK = akklets_$(VERSION)_arm.ipk

JARFILE = Akklets.jar

HTMLFILES = juplet.html satlet.html moonlet.html

DESKTOPFILES = juplet.desktop satlet.desktop moonlet.desktop

IMAGES = juplet.png satlet.png moonlet.png

# The scripts, to make Zaurus applications
BINSCRIPTS = juplet satlet moonlet

TARFILE = akklets-$(VERSION).tar.gz

CWD = $(shell pwd)
CWDBASE = $(shell basename `pwd`)

SRC = \
	Akk/Astro/AstroPanel.java \
	Akk/Astro/StarCalendar.java \
	Akk/Astro/CalenDialog.java \
	Akk/Astro/StarDate.java \
	Akk/Astro/DrawJupiter.java \
	Akk/Astro/Jupiter.java \
	Akk/Astro/MoonPhase.java \
	Akk/Astro/StarChart.java \
	Akk/Astro/AstroCoords.java \
	Akk/Astro/MoonApp.java \
	Akk/Astro/Saturn.java \
	Akk/Astro/DrawSaturn.java \
	Akk/Astro/Planet.java \
	Akk/Astro/Sky.java \
	$(NULL)

# Other code which we aren't yet using, so no need to clutter the jar with it:
OTHERSRC = \
	Akk/Astro/JulianTest.java \
	$(NULL)

$(JARFILE): $(SRC)
	javac $(SRC)
	jar -cf $@ Akk/Astro/*.class

ipkg: $(IPK)

$(IPK): $(JARFILE) $(HTMLFILES) $(DESKTOPFILES) $(BINSCRIPTS)
	install -D akklets.control ipkdir/CONTROL/control
	install -d ipkdir/opt/Qtopia/bin/
	install $(BINSCRIPTS) ipkdir/opt/Qtopia/bin/
	install -d ipkdir/opt/QtPalmtop/java
	install $(HTMLFILES) ipkdir/opt/QtPalmtop/java
	install $(JARFILE) ipkdir/opt/QtPalmtop/java
	install fullmoon.jpg ipkdir/opt/QtPalmtop/java
	install -d ipkdir/opt/Qtopia/apps/Jeode
	install $(DESKTOPFILES) ipkdir/opt/Qtopia/apps/Jeode
	install -d ipkdir/opt/Qtopia/pics/
	install $(IMAGES) ipkdir/opt/Qtopia/pics/
#	chown -R root.root ipkdir
	ipkg-build ipkdir

clean:
	rm -rf Akk/Astro/*.class ipkdir *.ipk

tar: $(TARFILE)

$(TARFILE): 
	( make clean && \
	  cd .. && \
	  tar czvf $(TARFILE) --owner=root $(CWDBASE) && \
	  mv $(TARFILE) $(CWD) && \
	  echo Created $(TARFILE) \
	)
