[Click] Small fix for click-devirtualize
Eddie Kohler
kohler at cs.ucla.edu
Fri Sep 14 01:44:19 EDT 2007
Thanks, Pavlos! I didn't catch this because it only matters when kernel &
user configs would generate different code.
Your change went a bit too far. In particular suffix might contain a dot, so
you can't use it as part of an #ifndef. I checked in a different variant.
Eddie
Pavlos Papageorgiou wrote:
> Hi Eddie,
>
> Here is a small fix for click-devirtualize.
>
> The current code (at least when using --linuxmodule) fails
> when it tries to compile the temporary files that it generates
> (clickdv_xxxx.{cc,hh}) into a kernel module. The files contain
> a .k "suffix" before .hh and .cc but that "suffix" is not used
> in the #include statement at the top of the .cc file.
>
> Thanks,
> Pavlos
>
> diff -ur a/click/tools/click-devirtualize/click-devirtualize.cc b/click/tools/click-devirtualize/click-devirtualize.cc
> --- a/click/tools/click-devirtualize/click-devirtualize.cc 2007-09-13 20:00:47.381669000 -0400
> +++ b/click/tools/click-devirtualize/click-devirtualize.cc 2007-09-13 20:08:13.655781000 -0400
> @@ -446,11 +446,11 @@
> // output
> StringAccum header, source;
> source << "/** click-compile: -w -fno-access-control */\n";
> - header << "#ifndef CLICK_" << package_name << "_HH\n"
> - << "#define CLICK_" << package_name << "_HH\n"
> + header << "#ifndef CLICK_" << package_name << suffix << "_HH\n"
> + << "#define CLICK_" << package_name << suffix << "_HH\n"
> << "#include <click/package.hh>\n#include <click/element.hh>\n";
>
> - specializer.output_package(package_name, source, errh);
> + specializer.output_package(package_name + suffix, source, errh);
> specializer.output(header, source);
>
> header << "#endif\n";
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
More information about the click
mailing list