Convert the qmake call to use a bash array of parameters

In the previous code version it was impossible to pass parameters to qmake
that contain spaces. As example, a qmake option
  QMAKE_CFLAGS='-march=native -O2 -pipe -g'
led to an error message of qmake
  ***Unknown option -O2
since the shell was breaking the string up into words at the spaces.
This commit is contained in:
Andreas K. Hüttel 2017-09-30 14:59:44 +02:00
parent 580ed1ec6d
commit 458b1a1360
No known key found for this signature in database
GPG Key ID: 746B6A1DACA0C2BE
1 changed files with 23 additions and 22 deletions

View File

@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
#
# KLayout Layout Viewer
@ -500,28 +500,29 @@ $QMAKE -v
# Force a minimum rebuild because of version info
touch $CURR_DIR/src/version/version.h
qmake_cmd="$QMAKE $CURR_DIR/src/klayout.pro -recursive \
CONFIG+=$CONFIG \
RUBYLIBFILE=$RUBYLIBFILE \
RUBYINCLUDE=$RUBYINCLUDE \
RUBYINCLUDE2=$RUBYINCLUDE2 \
RUBYVERSIONCODE=$RUBYVERSIONCODE \
HAVE_RUBY=$HAVE_RUBY \
PYTHONLIBFILE=$PYTHONLIBFILE \
PYTHONINCLUDE=$PYTHONINCLUDE \
HAVE_PYTHON=$HAVE_PYTHON \
HAVE_QTBINDINGS=$HAVE_QTBINDINGS \
HAVE_64BIT_COORD=$HAVE_64BIT_COORD \
HAVE_QT5=$HAVE_QT5 \
PREFIX='$BIN' \
RPATH='$RPATH' \
KLAYOUT_VERSION=$KLAYOUT_VERSION \
KLAYOUT_VERSION_DATE=$KLAYOUT_VERSION_DATE \
KLAYOUT_VERSION_REV=$KLAYOUT_VERSION_REV \
"
qmake_options=(
-recursive
CONFIG+="$CONFIG"
RUBYLIBFILE="$RUBYLIBFILE"
RUBYINCLUDE="$RUBYINCLUDE"
RUBYINCLUDE2="$RUBYINCLUDE2"
RUBYVERSIONCODE="$RUBYVERSIONCODE"
HAVE_RUBY="$HAVE_RUBY"
PYTHONLIBFILE="$PYTHONLIBFILE"
PYTHONINCLUDE="$PYTHONINCLUDE"
HAVE_PYTHON="$HAVE_PYTHON"
HAVE_QTBINDINGS="$HAVE_QTBINDINGS"
HAVE_64BIT_COORD="$HAVE_64BIT_COORD"
HAVE_QT5="$HAVE_QT5"
PREFIX="$BIN"
RPATH="$RPATH"
KLAYOUT_VERSION="$KLAYOUT_VERSION"
KLAYOUT_VERSION_DATE="$KLAYOUT_VERSION_DATE"
KLAYOUT_VERSION_REV="$KLAYOUT_VERSION_REV"
)
echo $qmake_cmd
$qmake_cmd
echo $QMAKE "$CURR_DIR/src/klayout.pro" "${qmake_options[@]}"
$QMAKE "$CURR_DIR/src/klayout.pro" "${qmake_options[@]}"
cd $CURR_DIR
echo ""