Robert P. J. DAY says:
apparently, the patchset for gcc 4.2.1 applies properly to the
source for gcc 4.2.2 and gcc 4.2.3. so, if you want, you can simply
add support for those last two just by augmenting menuconfig and
adding a couple symlinks for those two directories. seems like a
cheap way to add a couple new versions.
3 # Adds a new version to one of the toolchain component
8 Usage: ${myname} <tool> [option] <version>
10 --gcc, --binutils, --glibc, --uClibc, --linux,
11 --gdb, --dmalloc, --duma, --strace, --ltrace, --libelf
13 Valid options for all tools:
15 mark the version as being experimental
18 mark the version as being obsolete
20 Valid mandatory 'option' for tool==linux is one and only one of:
21 --install, --sanitised, --copy
23 'version' is a valid version for the specified tool.
26 add version 2.6.19.2 to linux kernel install method:
27 ${myname} --linux --install 2.6.19.2
29 add versions 2.3.5 and 2.3.6 to glibc:
30 ${myname} --glibc 2.3.5 2.3.6
44 while [ $i -le $# ]; do
47 --gcc) cat=CC; tool=gcc; tool_prefix=cc_; tool_suffix=;;
48 --binutils) cat=BINUTILS; tool=binutils; tool_prefix=; tool_suffix=;;
49 --glibc) cat=LIBC; tool=glibc; tool_prefix=libc_; tool_suffix=;;
50 --uClibc) cat=LIBC; tool=uClibc; tool_prefix=libc_; tool_suffix=;;
51 --linux) cat=KERNEL; tool=linux; tool_prefix=kernel_; tool_suffix=;;
52 --gdb) cat=GDB; tool=gdb; tool_prefix=debug/ tool_suffix=;;
53 --dmalloc) cat=DMALLOC; tool=dmalloc; tool_prefix=debug/ tool_suffix=;;
54 --duma) cat=DUMA; tool=duma; tool_prefix=debug/ tool_suffix=;;
55 --strace) cat=STRACE; tool=strace; tool_prefix=debug/ tool_suffix=;;
56 --ltrace) cat=LTRACE; tool=ltrace; tool_prefix=debug/ tool_suffix=;;
57 --libelf) cat=LIBELF; tool=libelf; tool_prefix=tools/ tool_suffix=;;
59 -x|--experimental) EXP=1; OBS=; prompt_suffix=" (EXPERIMENTAL)";;
60 -o|--obsolete) OBS=1; EXP=; prompt_suffix=" (OBSOLETE)";;
61 --install) tool_suffix=install;;
62 --sanitised) tool_suffix=sanitised;;
63 --copy) tool_suffix=copy;;
65 -h|--help) doHelp; exit 0;;
66 -*) echo "Unknown option: \"${!i}\". (use -h/--help for help"; exit 1;;
67 *) VERSION="${VERSION} ${!i}";;
72 [ -n "${tool}" -o -n "${VERSION}" ] || { doHelp; exit 1; }
75 KERNEL) [ -z "${tool_suffix}" ] && { doHelp; exit 1; } ;;
79 for ver in ${VERSION}; do
80 unset DEP L1 L2 L3 L4 L5 FILE
81 v=`echo "${ver}" |sed -r -e 's/-/_/g; s/\./_/g;'`
82 if [ "${cat}" = "KERNEL" ]; then
83 TOOL_SUFFIX="`echo \"${tool_suffix}\" |tr [[:lower:]] [[:upper:]]`"
84 L1="config ${cat}_${TOOL_SUFFIX}_V_${v}\n"
86 L3=" prompt \"${ver}${prompt_suffix}\"\n"
87 # Extra versions are not necessary visible:
88 case "${tool_suffix},${ver}" in
89 sanitised,*) ;; # Sanitised headers always have an extra version
90 *,*.*.*.*) DEP="${DEP} && KERNEL_VERSION_SEE_EXTRAVERSION";;
92 L5=" default \"${ver}\" if ${cat}_${TOOL_SUFFIX}_V_${v}"
93 FILE="config/${tool_prefix}${tool}_headers_${tool_suffix}.in"
95 L1="config ${cat}_V_${v}\n"
97 L3=" prompt \"${ver}${prompt_suffix}\"\n"
98 L5=" default \"${ver}\" if ${cat}_V_${v}"
99 FILE="config/${tool_prefix}${tool}.in"
101 [ -n "${EXP}" ] && DEP="${DEP} && EXPERIMENTAL"
102 [ -n "${OBS}" ] && DEP="${DEP} && OBSOLETE"
105 *) L4=" depends on `echo \"${DEP}\" |sed -r -e 's/^ \\&\\& //; s/\\&/\\\\&/g;'`\n"
107 sed -r -i -e 's/^(# CT_INSERT_VERSION_ABOVE)$/'"${L1}${L2}${L3}${L4}"'\n\1/;
108 s/^(# CT_INSERT_VERSION_STRING_ABOVE)$/'"${L5}"'\n\1/;' "${FILE}"