From 818380984673bde184c227d0b6b477e24b3fb408 Mon Sep 17 00:00:00 2001 From: Orgad Shaneh Date: Thu, 5 Apr 2018 15:52:27 +0300 Subject: [PATCH] QmlJS: Update gen-parser.sh Try to minimize differences on sync Change-Id: I9af325911b1a6a7635099cb3a5c778305e5e6223 Reviewed-by: Marco Benelli Reviewed-by: hjk --- src/libs/qmljs/parser/cmd.sed | 2 ++ src/libs/qmljs/parser/gen-parser.sh | 15 ++++++++++++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/libs/qmljs/parser/cmd.sed b/src/libs/qmljs/parser/cmd.sed index 9f8f0db22a1..a9b8ac0a6e5 100644 --- a/src/libs/qmljs/parser/cmd.sed +++ b/src/libs/qmljs/parser/cmd.sed @@ -4,6 +4,7 @@ s/QDECLARATIVE/QML/g s/QQml/Qml/g s/QQMLJS/QMLJS/g s/Q_QML_EXPORT //g +s/Q_QML_PRIVATE_EXPORT/QML_PARSER_EXPORT/ # adjust pri file s/ \$\$PWD\/qmljsglobal_p.h/ $$PWD\/qmljsglobal_p.h \\\ @@ -12,3 +13,4 @@ s/ \$\$PWD\/qmljsglobal_p.h/ $$PWD\/qmljsglobal_p.h \\\ s/ \$\$PWD\/qmljsparser.cpp/ $$PWD\/qmljsparser.cpp \\\ $$PWD\/qmldirparser.cpp \\\ $$PWD\/qmlerror.cpp/ +s/OTHER_FILES/DISTFILES/ diff --git a/src/libs/qmljs/parser/gen-parser.sh b/src/libs/qmljs/parser/gen-parser.sh index ec800098a26..acd30d0906a 100755 --- a/src/libs/qmljs/parser/gen-parser.sh +++ b/src/libs/qmljs/parser/gen-parser.sh @@ -10,10 +10,17 @@ # cd src/libs/qmljs/parser # QTDIR=~/path/to/qtdeclarative-checkout ./gen-parser.sh +if [ -z "$QTDIR" ]; then + echo "Usage: QTDIR=~/path/to/qtdeclarative-checkout $0" 1>&2 + exit 1 +fi + me=$(dirname $0) for i in $QTDIR/src/qml/parser/*.{g,h,cpp,pri}; do - sed -f $me/cmd.sed $i > $me/$(echo $(basename $i) | sed s/qqmljs/qmljs/) + if ! echo $i | grep -q qmljsglobal; then + sed -f $me/cmd.sed $i > $me/$(echo $(basename $i) | sed s/qqmljs/qmljs/) + fi done for i in $QTDIR/src/qml/qml/qqml{error.{h,cpp},dirparser{_p.h,.cpp}}; do @@ -35,6 +42,10 @@ perl -p -0777 -i -e 's/#include \//' qmlerror.h # replace private/qhashedstring_p.h include and QHashedStringRef perl -p -0777 -i -e 's/#include \//' qmldirparser_p.h perl -p -0777 -i -e 's/QHashedStringRef/QString/g' qmldirparser_p.h qmldirparser.cpp +# replace include guards with #pragma once +for i in *.h; do + grep -q generate $i || perl -p -0777 -i -e 's/#ifndef ([A-Z_]*)\n#define \1\n*([\s\S]*)\n#endif( \/\/ .*)?/#pragma once\n\n\2/' $i +done # don't use the new QVarLengthArray::length() sed -i -e 's/chars.length()/chars.size()/' $me/qmljslexer.cpp sed -i -e 's/DiagnosticMessage::Error/Severity::Error/g' $me/qmljsparser.cpp @@ -43,6 +54,8 @@ sed -i -e 's/DiagnosticMessage::Warning/Severity::Warning/g' $me/qmljsparser_p.h sed -i -e 's|#include ||g' $me/qmlerror.cpp sed -i -e 's|#include |#include |g' $me/qmljsengine_p.h sed -i -e 's|#include |#include |g' $me/qmljsengine_p.h +sed -i -e 's/qt_qnan/qQNaN/' $me/qmljsengine_p.cpp +sed -i -e 's|#include |#include |' $me/qmljsengine_p.cpp perl -p -0777 -i -e 's/QT_QML_BEGIN_NAMESPACE/#include \nQT_QML_BEGIN_NAMESPACE/' qmljsengine_p.h ./changeLicense.py $me/../qmljs_global.h qml*.{cpp,h}