Details
-
Suggestion
-
Resolution: Unresolved
-
P5: Not important
-
None
-
5.15.2
-
None
Description
When -- appears before the x.pro argument qmake fails.
Failing case:
$ /usr/local/lib/qt5/bin/qmake -spec /usr/local/lib/qt5/mkspecs/freebsd-$(ccver="$(c++ --version)"; case "$ccver" in *clang*) echo clang ;; *) echo g++ ;; esac) QMAKE_CC="cc" QMAKE_CXX="c++" QMAKE_LINK_C="cc" QMAKE_LINK_C_SHLIB="cc" QMAKE_LINK="c++" QMAKE_LINK_SHLIB="c++" QMAKE_CFLAGS="-O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -fno-strict-aliasing " QMAKE_CXXFLAGS="-O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -fno-strict-aliasing -fno-omit-frame-pointer " QMAKE_LFLAGS=" -fstack-protector-strong " QMAKE_LIBS="" QMAKE_CFLAGS_DEBUG="" QMAKE_CFLAGS_RELEASE="" QMAKE_CXXFLAGS_DEBUG="" QMAKE_CXXFLAGS_RELEASE="" PREFIX="/usr/local" CONFIG+="release" CONFIG-="debug separate_debug_info" -recursive -- eql5.pro Usage: /usr/local/lib/qt5/bin/qmake [mode] [options] [files] QMake has two modes, one mode for generating project files based on some heuristics, and the other for generating makefiles. Normally you shouldn't need to specify a mode, as makefile generation is the default mode for qmake, but you may use this to test qmake on an existing project
Succeeding case (same but without --):
Failing case:
$ /usr/local/lib/qt5/bin/qmake -spec /usr/local/lib/qt5/mkspecs/freebsd-$(ccver="$(c++ --version)"; case "$ccver" in *clang*) echo clang ;; *) echo g++ ;; esac) QMAKE_CC="cc" QMAKE_CXX="c++" QMAKE_LINK_C="cc" QMAKE_LINK_C_SHLIB="cc" QMAKE_LINK="c++" QMAKE_LINK_SHLIB="c++" QMAKE_CFLAGS="-O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -fno-strict-aliasing " QMAKE_CXXFLAGS="-O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -fno-strict-aliasing -fno-omit-frame-pointer " QMAKE_LFLAGS=" -fstack-protector-strong " QMAKE_LIBS="" QMAKE_CFLAGS_DEBUG="" QMAKE_CFLAGS_RELEASE="" QMAKE_CXXFLAGS_DEBUG="" QMAKE_CXXFLAGS_RELEASE="" PREFIX="/usr/local" CONFIG+="release" CONFIG-="debug separate_debug_info" -recursive eql5.pro
-- should simply mean "end of hyphenated arguments". But it causes qmake to break.