fix build for shared and static script

This commit is contained in:
Andrei Yankovich 2018-10-31 17:38:38 +03:00
parent a80e043c4d
commit 9b26eb494d
2 changed files with 49 additions and 28 deletions

View File

@ -5,46 +5,65 @@ declare -a QTLIBS
BASE_DIR=$(dirname "$(readlink -f "$0")")
QTLIBS=( libQt5Sql.so libQt5Xml.so libQt5Core.so libQt5Test.so libQt5Network.so libQt5Concurrent.so)
RELEASE_DIR=$BASE_DIR/build/release
QMAKE=$1
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$RELEASE_DIR
git submodule update --init --recursive
make clean
find $BASE_DIR -type f -name 'Makefile' -exec rm {} \;
rm $BASE_DIR/QuasarAppLib/Makefile.QuasarApp
cd $BASE_DIR/qtBase
if [ -e "$QMAKE" ]
for var in "${QTLIBS[@]}"
do
if [ -e "$BASE_DIR/sharedQt/lib/$var" ]
then
echo "$var - ok"
else
echo "$var - not exits!. rebuild qt ..."
then
echo "use qmake from params!"
$QMAKE CQtDeployer.pro
else
echo "use qmake from build!"
cd $BASE_DIR/qtBase
rm -rdf $BASE_DIR/sharedQt
git clean -xdf
./configure -confirm-license -prefix $BASE_DIR/sharedQt -release -shared -no-opengl -no-openssl -opensource -nomake tests -nomake examples -no-gui -no-widgets -no-dbus -no-accessibility
make install -j$(nproc)
break
fi
done
for var in "${QTLIBS[@]}"
do
if [ -e "$BASE_DIR/sharedQt/lib/$var" ]
then
echo "$var - ok"
else
echo "$var - not exits!. rebuild qt ..."
rm -rdf $BASE_DIR/sharedQt
git clean -xdf
./configure -confirm-license -prefix $BASE_DIR/sharedQt -release -shared -no-opengl -no-openssl -opensource -nomake tests -nomake examples -no-gui -no-widgets -no-dbus -no-accessibility
make install -j$(nproc)
break
fi
done
cd ..
cd ..
export PATH=$PATH:$BASE_DIR/sharedQt
$BASE_DIR/sharedQt/bin/qmake CQtDeployer.pro
fi
rm -rdf $BASE_DIR/build
export PATH=$PATH:$BASE_DIR/sharedQt
$BASE_DIR/sharedQt/bin/qmake CQtDeployer.pro
make -j$(nproc)
mv $BASE_DIR/QuasarAppLib/build/* $BASE_DIR/build
mv $BASE_DIR/QuasarAppLib/build/release/* $RELEASE_DIR
strip build/*
chmod +x $BASE_DIR/build/cqtdeployer
strip $RELEASE_DIR/*
chmod +x $RELEASE_DIR/cqtdeployer
$BASE_DIR/build/cqtdeployer -runScript cqtdeployer.sh -bin $BASE_DIR/build/cqtdeployer -qmake $BASE_DIR/sharedQt/bin/qmake
$RELEASE_DIR/cqtdeployer -runScript cqtdeployer.sh -bin $RELEASE_DIR/cqtdeployer -qmake $BASE_DIR/sharedQt/bin/qmake
cd $BASE_DIR/build
cd $RELEASE_DIR
tar -czvf $BASE_DIR/build/cqtdeployer.tar.gz ./*
tar -czvf $RELEASE_DIR/cqtdeployer.tar.gz ./*
cd $BASE_DIR
rm $BASE_DIR/build/lib -rdf $BASE_DIR/build/*.so* $BASE_DIR/build/*.sh*
rm $RELEASE_DIR/lib -rdf $RELEASE_DIR/*.so* $RELEASE_DIR/*.sh*

View File

@ -4,12 +4,14 @@ declare -a QTLIBS
BASE_DIR=$(dirname "$(readlink -f "$0")")
QTLIBS=( libQt5Sql.a libQt5Xml.a libQt5Core.a libQt5Test.a libQt5Network.a libQt5Bootstrap.a libQt5Concurrent.a)
echo "base dir $BASE_DIR"
RELEASE_DIR=$BASE_DIR/build/release
git submodule update --init --recursive
make clean
find $BASE_DIR -type f -name 'Makefile' -exec rm {} \;
rm $BASE_DIR/QuasarAppLib/Makefile.QuasarApp
cd $BASE_DIR/qtBase
for var in "${QTLIBS[@]}"
@ -31,8 +33,8 @@ cd ..
rm -rdf $BASE_DIR/build
export PATH=$PATH:$BASE_DIR/staticQt
$BASE_DIR/staticQt/bin/qmake QMAKE_LFLAGS+="-static -static-libgcc -static-libstdc++" CQtDeployer.pro
$BASE_DIR/staticQt/bin/qmake QMAKE_LFLAGS+="-static" CQtDeployer.pro
make -j$(nproc)
strip build/*
strip $RELEASE_DIR/*