Merge branch 'rebasepi' into pi

# Conflicts:
#	fetch_dependencies.sh
This commit is contained in:
philippe lhardy
2023-07-30 10:23:02 +02:00
6 changed files with 148 additions and 33 deletions

26
BUILD.md Normal file
View File

@@ -0,0 +1,26 @@
===== How to build this project ? =====
This project was done in java so it requires a java compiler to be build under an executable form.
It is expected you already obtained content of source since you are readeing this BUILD.md
within same directory as this BUILD.md :
```
./init.sh
# will create build scripts from artlog_toolbox
# ./doit.sh
# depends on sharedrawweb for stl export
./fetch_dependencies.sh
ant dist
```
Then create de .zip
```
source ./specificdoit.sh; create_zip_package
```
you ccan then provide and copy laby.zip to install it.

38
README
View File

@@ -9,28 +9,36 @@ After years i finaly printed one maze, find it at https://www.thingiverse.com/th
This is the very first usable part. This is the very first usable part.
It was developped under debian 7/8 but since it is java based it might be very easily recompiled or even just copied on other platform. It was developped under debian 7/8 but since it is java based it might be very easily recompiled or even just copied on other platform.
there is a console gui menu base with ./doit.sh There is a console gui menu based with ./doit.sh
requirement : you need a java jdk environment installed ( java + javac ) and ant requirement : you need a java jdk environment installed ( java + javac ) and ant
ex ubuntu : sudo apt-get install default-jdk ant ex ubuntu : sudo apt-get install default-jdk ant
run it by : ===== BUILD =====
________Linux distribution_____________________ See BUILD.md
===== INSTALL =====
obtain laby.zip directly build or from you own build ( see BUILD above ).
```
unzip laby.zip
```
it will create a artloglaby directory.
===== RUN =====
run it on a Linux distribution with :
```
cd artloglaby ; ./laby.sh
```
mkdir github
cd github
git clone https://github.com/artlog/labystl.git
cd labystl
./init.sh
# will create build scripts from artlog_toolbox
# ./doit.sh
# depends on sharedrawweb for stl export
./fetch_dependencies.sh
ant dist
source ./specificdoit.sh; create_zip_package
unzip laby.zip; cd artloglaby ; ./laby.sh
_______________________________________________ _______________________________________________
Save raw will actualy create a stl file Save raw will actualy create a stl file

View File

@@ -24,9 +24,11 @@
pattern="project_version=([0-9.]+)$" pattern="project_version=([0-9.]+)$"
replace="\1" /> replace="\1" />
</tokenfilter> </tokenfilter>
<ignoreblank />
<striplinebreaks />
</filterchain> </filterchain>
</loadfile> </loadfile>
<echo message="distversion : ${distversion}" /> <echo message="distversion : '${distversion}'" />
</target> </target>
<target name="init"> <target name="init">

View File

@@ -1,9 +1,23 @@
#!/bin/bash #!/bin/bash
log_any()
{
echo "$@" >&2
}
log_error()
{
log_any "[ERROR] $@"
}
log_info()
{
log_any "[INFO] $@"
}
fetch_jackson_databind() fetch_jackson_databind()
{ {
libversion_jackson_databind=2.12.0
lib_jackson_databind=jackson-databind-${libversion_jackson_databind}.jar lib_jackson_databind=jackson-databind-${libversion_jackson_databind}.jar
if [[ ! -e libs/$lib_jackson_databind ]] if [[ ! -e libs/$lib_jackson_databind ]]
then then
@@ -20,15 +34,22 @@ fetch_zstd-jni()
echo "compiled from https://github.com/luben/zstd-jni commit 54d3d50c16d96bd8a30e2d4c0a9648001a52d6f9" echo "compiled from https://github.com/luben/zstd-jni commit 54d3d50c16d96bd8a30e2d4c0a9648001a52d6f9"
# had to hack through jar generation ... # had to hack through jar generation ...
# cp ~/artisanlogiciel/ext_projects/java/zstd-jni/target/zstd-jni-1.5.2-2.jar . # cp ~/artisanlogiciel/ext_projects/java/zstd-jni/target/zstd-jni-1.5.2-2.jar .
libversion_zstdjni=1.5.2-2
pushd libs pushd libs
wget https://repo1.maven.org/maven2/com/github/luben/zstd-jni/${libversion_zstdjni}/zstd-jni-${libversion_zstdjni}.jar wget https://repo1.maven.org/maven2/com/github/luben/zstd-jni/${libversion_zstdjni}/zstd-jni-${libversion_zstdjni}.jar
popd popd
} }
libversion_zstdjni=1.5.2-2
libversion_jackson_databind=2.12.0
sharedrawweb_git_url="ssh://philippe@www4.artisanlogiciel.net:2023/home/philippe/artisanlogiciel/code/sharedrawweb"
libversion_artgaphic=0.2.0
lib_artgaphic=artgaphics-${libversion_artgaphic}.jar
if [[ ! -d ../sharedrawweb ]] if [[ ! -d ../sharedrawweb ]]
then then
echo "[ERROR] expected a sharedrawweb project parent ( for exports )" >&2 log_error "expected a sharedrawweb project parent ( for exports ). Please clone related project."
log_info "cd ..; git clone $sharedrawweb_git_url"
fi fi
if [[ ! -d libs ]] if [[ ! -d libs ]]
@@ -36,11 +57,16 @@ then
mkdir libs mkdir libs
fi fi
libversion_artgaphic=0.2.0
lib_artgaphic=artgaphics-${libversion_artgaphic}.jar
if [[ ! -e libs/$lib_artgaphic ]] if [[ ! -e libs/$lib_artgaphic ]]
then then
ln -s ../../sharedrawweb/dist/lib/$lib_artgaphic libs/ lib_artgaphic_source_file=../sharedrawweb/dist/lib/$lib_artgaphic
if [[ -f $lib_artgaphic_source_file ]]
then
# ../ since libs is one level below current project
ln -s ../$lib_artgaphic_source_file libs/
else
log_error "Missing $lib_artgaphic_source_file. It is require to build it sharedrawweb project first"
fi
fi fi
if [[ -n $use_jackson ]] if [[ -n $use_jackson ]]
@@ -48,4 +74,7 @@ then
fetch_jackson_databind fetch_jackson_databind
fi fi
fetch_zstd-jni if [[ -n $use_zstd ]]
then
fetch_zstd-jni
fi

53
init.sh
View File

@@ -1,11 +1,46 @@
#!/bin/bash #!/bin/bash
if [[ ! -d artlog_toolbox ]] setup()
then {
git clone https://github.com/artlog/artlog_toolbox.git artlog_toolbox artlog_toolbox_path=../artlog_toolbox
fi if [[ ! -d $artlog_toolbox_path ]]
pushd artlog_toolbox then
git checkout master git clone $artlog_toolbox_remote_origin_url $artlog_toolbox_path
popd pushd $artlog_toolbox_path
artlog_toolbox/deploy.sh git checkout
./doit.sh popd
fi
$artlog_toolbox_path/deploy.sh
}
# parses project.gitref
project=
gitref=project.gitref
while read line
do
if [[ $line =~ \[([_a-z]*)\] ]]
then
project=${BASH_REMATCH[1]}
elif [[ $line =~ remote.origin.url=(.*) ]]
then
remote_origin_url=${BASH_REMATCH[1]}
echo "$project $remote_origin_url"
case $project in
sharedrawweb)
sharedrawweb_remote_origin_url=$remote_origin_url
;;
artloglaby)
artloglaby_remote_origin_url=$remote_origin_url
;;
artlog_toolbox)
artlog_toolbox_remote_origin_url=$remote_origin_url
;;
*)
echo "ERROR unrecognized project='$project' line='$line'"
;;
esac
fi
done <$gitref
setup

15
project.gitref Normal file
View File

@@ -0,0 +1,15 @@
#
# root.absolute=/home/plhardy/artisanlogiciel/testbed/laby
# date=ven. 28 juil. 2023 11:59:40 CEST
[artloglaby]
path=.
remote.origin.url=ssh://philippe@www4.artisanlogiciel.net:2023/home/philippe/artisanlogiciel/code/laby
head=a22a2fd1b6eec74cd4a37f086ff01d46a50d8a9b
[sharedrawweb]
path=../sharedrawweb
remote.origin.url=ssh://philippe@www4.artisanlogiciel.net:2023/home/philippe/artisanlogiciel/code/sharedrawweb
head=c217d96129b5f83c26c041f766718b6bdf93a2d6
[artlog_toolbox]
path=../artlog_toolbox
remote.origin.url=ssh://philippe@www4.artisanlogiciel.net:2023/home/philippe/artisanlogiciel/code/artlog_toolbox
head=ea7e49c578d89ec4c7f41fd5b526e3ef4a8dbb37