diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..e4b10d3 --- /dev/null +++ b/Makefile @@ -0,0 +1,45 @@ +PROJECT_VERSION=`./debianize.sh getversion` +DISTPREFIX=artloglaby +DISTJAR=$(DISTPREFIX)-$(PROJECT_VERSION).jar + +all: build.xml dist/lib/$(DISTJAR) + +getname: + @echo dist/lib/$(DISTJAR) + +dist: + mkdir -p dist + +dist/lib/$(DISTJAR): dist + ant dist + +build.xml: + ./antify.sh >$@ + +clean: + rm -f build.xml + rm -f dist/lib/$(DISTPREFIX)*.jar + rm -rf build + +cleanall: clean + rm -rf debian + rm -rf deb + +debian: + mkdir debian + +deb/%: + mkdir -p deb + touch $@ + ./debianize.sh create $@ + +debian/compat: + echo "7" >$@ + +debian/%: + ./debianize.sh create $@ >$@ + +deb: debian debian/rules debian/control debian/compat debian/changelog deb/javadoc deb/jlibs + dpkg-buildpackage -uc -us + +.PHONY: clean all cleanall getname deb diff --git a/absant.sh b/absant.sh new file mode 100755 index 0000000..6b87496 --- /dev/null +++ b/absant.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +buildscript=$1 + +if [[ -e $buildscript ]] +then + # protect ${ variables. + sed 's/\${/\\\${/g' build.xml +else + echo "[ERROR] this $0 tool expect an initial argument with buildscript" >&2 +fi + diff --git a/antify.sh b/antify.sh new file mode 100755 index 0000000..c1ca9fd --- /dev/null +++ b/antify.sh @@ -0,0 +1,50 @@ +#!/bin/bash + +source ./project_params + +# TODO reuse internal tsamp ${DSTAMP} + +cat < + + simple example build file + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +EOF diff --git a/debianize.sh b/debianize.sh new file mode 100755 index 0000000..3677ae9 --- /dev/null +++ b/debianize.sh @@ -0,0 +1,67 @@ +#!/bin/bash + +action=$1 +file=$2 + +maintainer="Artlog " + +if [[ $action == getversion ]] +then + source ./project_params + echo $project_version +elif [[ $action == create ]] +then + source ./project_params + + if [[ $file == debian/control ]] + then + + cat <= 7.0.50~), javahelper (>=0.25) +Build-Depends-Indep: default-jdk, default-jdk-doc, libtrove-java, libtrove-java-doc, ant +Standards-Version: ${project_version} +Section: java + +Package: ${project_name}-java +Architecture: all +Depends: \${java:Depends}, \${misc:Depends} +Recommends: \${java:Recommends} +Description: Labyrinth generator + Labyrinth generator + +Package: ${project_name}-java-doc +Architecture: all +Depends: \${java:Depends}, \${misc:Depends} +Recommends: \${java:Recommends} +Description: Labyrinth generator (documentation) + Labyrinth generator +EOF + elif [[ $file = debian/changelog ]] + then + cat <debian/${project_name}-java-doc.javadoc + elif [[ $file = deb/jlibs ]] + then + echo "dist/lib/${project_name}-${project_version}.jar" >debian/${project_name}-java.jlibs + fi +fi diff --git a/doit.sh b/doit.sh index 52cb5df..a3502e3 100755 --- a/doit.sh +++ b/doit.sh @@ -51,13 +51,22 @@ action=initial while [[ $action != quit ]] do - action=$($DIALOG --menu "Ultra Light IDE" 20 80 8 run "Run it" test "Test it" readme "Read me" code "Code" codebg "Code in background" quit "Quit" 3>&1 1>&2 2>&3) + action=$($DIALOG --menu "Ultra Light IDE" 20 80 8 run "Run it" clean "Clean All" ant "Ant build" test "Test it" readme "Read me" code "Code" codebg "Code in background" deb "Debian package" quit "Quit" 3>&1 1>&2 2>&3) if [[ $action == run ]] then echo "run it" - pushd java - make display + java -jar $(make getname) + elif [[ $action == ant ]] + then + make clean + make + ant compile + elif [[ $action == clean ]] + then + make clean + pushd java + make clean popd elif [[ $action == test ]] then @@ -65,6 +74,9 @@ do pushd java make display popd + elif [[ $action == deb ]] + then + make deb elif [[ $action =~ code ]] then do_code $action diff --git a/java/org/artisanlogiciel/games/Main.java b/java/org/artisanlogiciel/games/Main.java index 607c7a4..12c82e9 100644 --- a/java/org/artisanlogiciel/games/Main.java +++ b/java/org/artisanlogiciel/games/Main.java @@ -6,13 +6,9 @@ import java.util.LinkedList; public class Main { - public WallsProvider generate(int width,int height, int maxdepth, MazeListener listener) + public WallsProvider generate(int width,int height, int maxdepth, MazeResolutionListener listener) { LabyModel model = new LabyModel(width, height,maxdepth, new java.util.Random()); - if ( listener != null ) - { - model.setListener(listener); - } model.generateWithEntry(0, 0); LinkedList exits = new LinkedList(); model.addEntryOrExit(-1,0); @@ -21,7 +17,7 @@ public class Main { System.out.println("Check failed"); } - model.resolve(width-1,height-1); + model.resolve(width-1,height-1,listener); return model; } @@ -38,7 +34,7 @@ public class Main System.out.println("Check failed"); } model.debugOut(); - model.resolve(width-1,height-1); + model.resolve(width-1,height-1,null); LabyMap labyMap =model.toLabyMap(); return labyMap; } diff --git a/project_params b/project_params new file mode 100644 index 0000000..550f64a --- /dev/null +++ b/project_params @@ -0,0 +1,6 @@ +project_name=artloglaby +project_default=dist +project_basedir=$(pwd) +project_mainpackage=org.artisanlogiciel.games +project_mainclass=$project_mainpackage.Display +project_version=0.0.1