3 rm -vf citadel-*appimage
5 export CITADEL_BUILD_DIR=/tmp/citadel-build-$$
6 export WEBCIT_BUILD_DIR=/tmp/webcit-build-$$
7 rm -fr $CITADEL_BUILD_DIR $WEBCIT_BUILD_DIR
9 # libcitadel has to be built in a "real" library directory
10 pushd ../libcitadel || exit 1
11 make distclean 2>/dev/null
15 make install || exit 5
18 # Build the Citadel server
19 pushd ../citadel || exit 6
20 make distclean 2>/dev/null
22 ./configure --prefix=$CITADEL_BUILD_DIR || exit 8
24 make install || exit 10
28 pushd ../webcit || exit 11
29 make distclean 2>/dev/null
30 ./bootstrap || exit 12
31 ./configure --prefix=$WEBCIT_BUILD_DIR || exit 13
33 make install || exit 15
36 # Clear out any old versions in the AppDir
37 rm -frv citadel.AppDir/usr
38 mkdir -p citadel.AppDir/usr/bin
39 mkdir -p citadel.AppDir/usr/lib
41 # Copy over all the libraries we used
42 for bin in $CITADEL_BUILD_DIR/citserver $WEBCIT_BUILD_DIR/webcit $CITADEL_BUILD_DIR/ctdlmigrate
44 #for x in `ldd $bin | awk ' { print $3 } ' | grep -v -e '^$' | grep -v 'libc.so' | grep -v 'libpthread.so' | grep -v 'libresolv.so'`
45 for x in `ldd $bin | awk ' { print $3 } ' | grep -v -e '^$' `
47 cp -v -L $x citadel.AppDir/usr/lib/
50 ldconfig -v citadel.AppDir/usr/lib
52 # Copy over some utilities
53 for bin in db_dump db_load db_recover
55 cp `which $bin` citadel.AppDir/usr/bin/ || exit 16
58 # Install the Citadel Server application tree
59 mkdir -p citadel.AppDir/usr/local/citadel || exit 17
60 rsync -va $CITADEL_BUILD_DIR/ ./citadel.AppDir/usr/local/citadel/ || exit 18
62 # Install the WebCit application tree
63 mkdir -p citadel.AppDir/usr/local/webcit || exit 19
64 rsync -va $WEBCIT_BUILD_DIR/ ./citadel.AppDir/usr/local/webcit/ || exit 20
66 # Remove the build directories
67 rm -fr $CITADEL_BUILD_DIR $WEBCIT_BUILD_DIR
69 cc ctdlvisor.c -o citadel.AppDir/usr/bin/ctdlvisor || exit 21
72 basefilename=citadel-`date +%s`
73 if [ $CPU == x86_64 ] ; then
75 elif [ $CPU == armv7l ] ; then
80 appimagetool citadel.AppDir/ ${basefilename}-${CPU}.appimage