aboutsummaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorcon <qtc-committer@nokia.com>2009-02-24 08:56:46 +0100
committercon <qtc-committer@nokia.com>2009-02-24 12:29:26 +0100
commitfe80379682173b67f32906dcdbd818a13b7f3262 (patch)
tree1ac56d013550359865410afbf28cef6be653f64d /scripts
parentc0f2f81c6817a6a1639d27d15b8b58f64b848e5e (diff)
Fixes: - Move scripts and adapt
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/fix_makefile_header_dependencies.sh52
-rwxr-xr-xscripts/replaceVersion.sh130
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