diff options
author | con <qtc-committer@nokia.com> | 2009-02-24 08:56:46 +0100 |
---|---|---|
committer | con <qtc-committer@nokia.com> | 2009-02-24 12:29:26 +0100 |
commit | fe80379682173b67f32906dcdbd818a13b7f3262 (patch) | |
tree | 1ac56d013550359865410afbf28cef6be653f64d /scripts | |
parent | c0f2f81c6817a6a1639d27d15b8b58f64b848e5e (diff) | |
download | qt-creator-fe80379682173b67f32906dcdbd818a13b7f3262.tar.gz |
Fixes: - Move scripts and adapt
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/fix_makefile_header_dependencies.sh | 52 | ||||
-rwxr-xr-x | scripts/replaceVersion.sh | 130 |
2 files changed, 182 insertions, 0 deletions
diff --git a/scripts/fix_makefile_header_dependencies.sh b/scripts/fix_makefile_header_dependencies.sh new file mode 100755 index 0000000000..eae6819a19 --- /dev/null +++ b/scripts/fix_makefile_header_dependencies.sh @@ -0,0 +1,52 @@ +#! /usr/bin/env bash + +WORKER=./fill_deps.sh +DEPFILE=deps + +write_deps_file() { + INPUT=$1 + ESCAPED_OUTPUT=`sed 's/\//\\\\\//g' <<<"$1"` + + { + echo '#! /usr/bin/env bash' + grep '^\(CXXFLAGS\|INCPATH\|DEFINES\)' ${INPUT} \ + | sed \ + -e 's/$(\([^)]\+\))/${\1}/g' \ + -e 's/"/\\"/g' \ + -e 's/^\([^ ]\+\) *= *\(.\+\)/\1="\2"/' + echo + echo 'touch deps' + grep '^.$(CXX)' ${INPUT} \ + | grep -v '$@' \ + | sed \ + -e 's/^\t\$(CXX)\(.\+\)$/makedepend \1 -w 1000000 -f '${DEPFILE}' -p "" -a -o .o 2>\/dev\/null/' \ + -e 's/$(\([^)]\+\))/${\1}/g' \ + -e 's/\\/\//g' + } > "${WORKER}" + chmod a+x "${WORKER}" +} + + + +PWD_BACKUP=$PWD + +while read makefile ; do + dir=`dirname "${makefile}"` + if [ `find "${dir}" -maxdepth 1 -name '*.cpp' | wc -l 2>/dev/null` -ge 1 ]; then + echo "Directory: $dir" + cd $dir + rm -f "${DEPFILE}" + write_deps_file Makefile + "${WORKER}" + TEMPFILE=`mktemp` + sed 's/^.\+\/\([^\/]\+.o:\)/\1/' "${DEPFILE}" > "${TEMPFILE}" + mv "${TEMPFILE}" "${DEPFILE}" + # rm "${WORKER}" + + cd ${PWD_BACKUP} + echo "include ${DEPFILE}" >> "${makefile}" + fi +done < <(find src -name 'Makefile') + +cd ${PWD_BACKUP} + diff --git a/scripts/replaceVersion.sh b/scripts/replaceVersion.sh new file mode 100755 index 0000000000..21bc3ade81 --- /dev/null +++ b/scripts/replaceVersion.sh @@ -0,0 +1,130 @@ +#! /usr/bin/env bash + +## Command line parameters +if [[ $# != 2 ]]; then + cat <<USAGE +usage: + $0 <old> <new> +example: + $0 '1.2.3' '1.2.4' +USAGE + exit 1 +fi + + +## Process and show version +OLD=`sed 's/\./\\\\./g' <<<"$1"` +NEW=`sed 's/\./\\\\./g' <<<"$2"` + +OLD_MAJOR=`sed 's/^\([0-9]\+\)\.[0-9]\+\.[0-9]\+$/\1/' <<<"$1"` +NEW_MAJOR=`sed 's/^\([0-9]\+\)\.[0-9]\+\.[0-9]\+$/\1/' <<<"$2"` + +OLD_MINOR=`sed 's/^[0-9]\+\.\([0-9]\+\)\.[0-9]\+$/\1/' <<<"$1"` +NEW_MINOR=`sed 's/^[0-9]\+\.\([0-9]\+\)\.[0-9]\+$/\1/' <<<"$2"` + +OLD_RELEASE=`sed 's/^[0-9]\+\.[0-9]\+\.\([0-9]\+\)$/\1/' <<<"$1"` +NEW_RELEASE=`sed 's/^[0-9]\+\.[0-9]\+\.\([0-9]\+\)$/\1/' <<<"$2"` + +OLD_THREE="${OLD_MAJOR}${OLD_MINOR}${OLD_RELEASE}" +NEW_THREE="${NEW_MAJOR}${NEW_MINOR}${NEW_RELEASE}" + +OLD_DOT_THREE="${OLD_MAJOR}\\.${OLD_MINOR}\\.${OLD_RELEASE}" +NEW_DOT_THREE="${NEW_MAJOR}\\.${NEW_MINOR}\\.${NEW_RELEASE}" + +OLD_DOT_FOUR="${OLD_MAJOR}\\.${OLD_MINOR}\\.${OLD_RELEASE}\\.0" +NEW_DOT_FOUR="${NEW_MAJOR}\\.${NEW_MINOR}\\.${NEW_RELEASE}\\.0" + +OLD_COMMA_FOUR="${OLD_MAJOR},${OLD_MINOR},${OLD_RELEASE},0" +NEW_COMMA_FOUR="${NEW_MAJOR},${NEW_MINOR},${NEW_RELEASE},0" + +echo "#===============================================" +echo "# Plain '${OLD}' -> '${NEW}'" +echo "#-----------------------------------------------" +echo "# Major '${OLD_MAJOR}' -> '${NEW_MAJOR}'" +echo "# Minor '${OLD_MINOR}' -> '${NEW_MINOR}'" +echo "# Release '${OLD_RELEASE}' -> '${NEW_RELEASE}'" +echo "#-----------------------------------------------" +echo "# 3 '${OLD_THREE}' -> '${NEW_THREE}'" +echo "# Dot 3 '${OLD_DOT_THREE}' -> '${NEW_DOT_THREE}'" +echo "# Dot 4 '${OLD_DOT_FOUR}' -> '${NEW_DOT_FOUR}'" +echo "# Comma 4 '${OLD_COMMA_FOUR}' -> '${NEW_COMMA_FOUR}'" +echo "#===============================================" +echo + + +## Make script safe to call from anywhere by going home first +SCRIPT_DIR=`dirname "${PWD}/$0"`/.. +echo "Entering directory \`${SCRIPT_DIR}'" +pushd "${SCRIPT_DIR}" &>/dev/null || exit 1 + + +## Patch *.pluginspec +while read i ; do + echo "Patching \`$i'" + TMPFILE=`mktemp /tmp/versionPatch.XXXXXX` + sed -e 's/version="'"${OLD}"'"/version="'"${NEW}"'"/' \ + -e 's/compatVersion="'"${OLD}"'"/compatVersion="'"${NEW}"'"/' \ + "${i}" > "${TMPFILE}" + mv -f "${TMPFILE}" "${i}" +done < <(find . -name '*.pluginspec') + + +## Patch coreconstants.h +TMPFILE=`mktemp /tmp/versionPatch.XXXXXX` +CORE_CONSTANT_H="${SCRIPT_DIR}/src/plugins/coreplugin/coreconstants.h" +echo "Patching \`${CORE_CONSTANT_H}'" +sed \ + -e 's/^\(#define IDE_VERSION_MAJOR \)'"${OLD_MAJOR}"'/\1'"${NEW_MAJOR}"'/' \ + -e 's/^\(#define IDE_VERSION_MINOR \)'"${OLD_MINOR}"'/\1'"${NEW_MINOR}"'/' \ + -e 's/^\(#define IDE_VERSION_RELEASE \)'"${OLD_RELEASE}"'/\1'"${NEW_RELEASE}"'/' \ + "${CORE_CONSTANT_H}" > "${TMPFILE}" +mv -f "${TMPFILE}" "${CORE_CONSTANT_H}" + + +## Patch installer.rc +TMPFILE=`mktemp /tmp/versionPatch.XXXXXX` +INSTALLER_RC="${SCRIPT_DIR}/../../dev/ide/nightly_builds/installer/installer.rc" +echo "Patching \`${INSTALLER_RC}'" +sed \ + -e "s/"${OLD_DOT_FOUR}"/"${NEW_DOT_FOUR}"/" \ + -e "s/"${OLD_COMMA_FOUR}"/"${NEW_COMMA_FOUR}"/" \ + "${INSTALLER_RC}" > "${TMPFILE}" + p4 edit `sed -e 's/\/\.\//\//g' -e 's/\/[^\/]\+\/\.\.\//\//g' <<<"${INSTALLER_RC}"` +mv -f "${TMPFILE}" "${INSTALLER_RC}" + + +## Patch Info.plist +TMPFILE=`mktemp /tmp/versionPatch.XXXXXX` +INFO_PLIST="${SCRIPT_DIR}/share/qtcreator/Info.plist" +echo "Patching \`${INFO_PLIST}'" +sed \ + -e "s/"${OLD}"/"${NEW}"/" \ + "${INFO_PLIST}" > "${TMPFILE}" +mv -f "${TMPFILE}" "${INFO_PLIST}" + + +## Patch qtcreator.qdocconf +TMPFILE=`mktemp /tmp/versionPatch.XXXXXX` +QDOCCONF="${SCRIPT_DIR}/doc/qtcreator.qdocconf" +echo "Patching \`${QDOCCONF}'" +sed \ + -e "s/"${OLD_DOT_THREE}"/"${NEW_DOT_THREE}"/" \ + -e "s/"${OLD_THREE}"/"${NEW_THREE}"/" \ + "${QDOCCONF}" > "${TMPFILE}" +mv -f "${TMPFILE}" "${QDOCCONF}" + + +## Patch qtcreator.qdoc +TMPFILE=`mktemp /tmp/versionPatch.XXXXXX` +QDOC="${SCRIPT_DIR}/doc/qtcreator.qdoc" +echo "Patching \`${QDOC}'" +sed \ + -e 's/\(The current version of Qt Creator is \)'${OLD_DOT_THREE}'/\1'${NEW_DOT_THREE}'/' \ + "${QDOC}" > "${TMPFILE}" +mv -f "${TMPFILE}" "${QDOC}" + + +## Go back to original $PWD +echo "Leaving directory \`${SCRIPT_DIR}'" +popd &>/dev/null || exit 1 +exit 0 |