Package: icecc Version: 0.9.1-1 Severity: wishlist Tags: patch icecc doesn't fully parse -Wa compiler option, but instead it silently falls back to local-only compilation if it finds '=' in it. This is done to support compilation with -Wa,-a...=output flags.
This heavily impacts cross-compilation of arm kernels, which heavily use -Wa,-mtune=<arch>. Provided patch adds sufficient level of -Wa command line argument parsing. -- System Information: Debian Release: lenny/sid APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing') Architecture: i386 (x86_64) Kernel: Linux 2.6.26-1-amd64 (SMP w/2 CPU cores) Locale: LANG=ru_RU.UTF-8, LC_CTYPE=ru_RU.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages icecc depends on: ii adduser 3.108 add and remove users and groups ii debconf [debconf-2.0] 1.5.22 Debian configuration management sy ii dpkg 1.14.20 Debian package management system ii g++ [c++-compiler] 4:4.3.1-2 The GNU C++ compiler ii g++-4.3 [c++-compiler] 4.3.1-8 The GNU C++ compiler ii gcc [c-compiler] 4:4.3.1-2 The GNU C compiler ii gcc-3.4 [c-compiler] 3.4.6-8 The GNU C compiler ii gcc-4.1 [c-compiler] 4.1.2-23 The GNU C compiler ii gcc-4.3 [c-compiler] 4.3.1-8 The GNU C compiler ii libc6 2.7-13 GNU C Library: Shared libraries ii libgcc1 1:4.3.1-8 GCC support library ii libstdc++6 4.3.1-8 The GNU Standard C++ Library v3 ii lsb-base 3.2-12 Linux Standard Base 3.2 init scrip icecc recommends no packages. Versions of packages icecc suggests: ii icecc-monitor 1.1-2 icecc monitor for KDE -- debconf information: * icecc/daemon: true * icecc/scheduler: false -- With best wishes Dmitry
diff -u -r icecc-0.9.1-old/client/arg.cpp icecc-0.9.1/client/arg.cpp --- icecc-0.9.1-old/client/arg.cpp 2008-08-11 14:38:41.000000000 +0400 +++ icecc-0.9.1/client/arg.cpp 2008-08-11 15:01:26.000000000 +0400 @@ -157,7 +157,18 @@ * all the options would be complex since you can give several * comma-separated assembler options after -Wa, but looking * for '=' should be safe. */ - if (strchr(a, '=')) { + const char *pos = a; + bool local = false; + while ((pos = strstr(pos+1, "-a"))) { + pos += 2; + while (*pos >= 'a' && *pos <= 'z') + pos ++; + if (*pos == '=') { + local = true; + break; + } + } + if (local) { always_local = true; args.append(a, Arg_Local); } else
_______________________________________________ pkg-kde-extras mailing list pkg-kde-extras@lists.alioth.debian.org http://lists.alioth.debian.org/mailman/listinfo/pkg-kde-extras