ARCH needs to be set to 'arm' for 32-bit
[citadel.git] / appimage / build_appimage.sh
index b3ab8ea6e2fd3b591caa76446f993252da183b2d..1a07c7c6a98298af8cc3655e9a9238a2fb134daa 100755 (executable)
@@ -1,10 +1,15 @@
 #!/bin/bash
 
+# Work from the directory this script is in
+APPIMAGE_BUILD_DIR=$(dirname $(readlink -f $0))
+cd $APPIMAGE_BUILD_DIR || exit 28
+echo APPIMAGE_BUILD_DIR is `pwd`
+
+# Remove old versions
 rm -vf citadel-*appimage
 
 export CITADEL_BUILD_DIR=/tmp/citadel-build-$$
 export WEBCIT_BUILD_DIR=/tmp/webcit-build-$$
-rm -fr $CITADEL_BUILD_DIR $WEBCIT_BUILD_DIR
 
 # libcitadel has to be built in a "real" library directory
 pushd ../libcitadel || exit 1
@@ -15,6 +20,14 @@ make || exit 4
 make install || exit 5
 popd
 
+# Build the text mode client
+pushd ../textclient || exit 22
+make distclean 2>/dev/null
+./bootstrap || exit 23
+./configure --prefix=`pwd` || exit 24
+make || exit 25
+popd
+
 # Build the Citadel server
 pushd ../citadel || exit 6
 make distclean 2>/dev/null
@@ -39,7 +52,12 @@ mkdir -p citadel.AppDir/usr/bin
 mkdir -p citadel.AppDir/usr/lib
 
 # Copy over all the libraries we used
-for bin in $CITADEL_BUILD_DIR/citserver $WEBCIT_BUILD_DIR/webcit $CITADEL_BUILD_DIR/ctdlmigrate `which gdb`
+for bin in \
+       $CITADEL_BUILD_DIR/citserver \
+       $WEBCIT_BUILD_DIR/webcit \
+       $CITADEL_BUILD_DIR/ctdlmigrate \
+       ../textclient/citadel \
+       `which gdb`
 do
        ldd $bin
 done | sort | while read libname junk libpath
@@ -61,6 +79,10 @@ do
        cp `which $bin` citadel.AppDir/usr/bin/ || exit 16
 done
 
+# Copy over the client
+cp ../textclient/citadel citadel.AppDir/usr/bin/ || exit 26
+cp ../textclient/citadel.rc citadel.AppDir/ || exit 27
+
 # Install the Citadel Server application tree
 mkdir -p citadel.AppDir/usr/local/citadel || exit 17
 rsync -va $CITADEL_BUILD_DIR/ ./citadel.AppDir/usr/local/citadel/ || exit 18
@@ -75,11 +97,13 @@ rm -fr $CITADEL_BUILD_DIR $WEBCIT_BUILD_DIR
 cc ctdlvisor.c -o citadel.AppDir/usr/bin/ctdlvisor || exit 21
 
 CPU=`uname -m`
-basefilename=citadel-`date +%s`
+basefilename=citadel-`cat ../release_version.txt`
 if [ $CPU == x86_64 ] ; then
        export ARCH=x86_64
 elif [ $CPU == armv7l ] ; then
-       export ARCH=ARM
+       export ARCH=arm
+elif [ $CPU == aarch64 ] ; then
+       export ARCH=aarch64
 fi
 echo ARCH: $ARCH
 echo CPU: $CPU