Why not make Boost.Preprocessor2 or extend Boost.VMD? I'd not add yet another library doing pretty much the same as an existing one. Deleting complicated code to reduce maintenance burden is reasonable. Boost.Preprocessor is used quite a lot throughout Boost, not in the least part specifically to support C++03. If it stops being C++03 compatible, this will mean most of Boost will stop as well. At that point the dependent libraries may need to reevaluate if they still want to use Boost.Preprocessor and possibly either fork it or replace it with C++11 constructs. In some instances, like Boost.MPL, Boost.Variant, this may make the library pointless because there already are C++11 and newer replacements.
From a "legal" perspective: It was made clear that by now any library is free to "drop support for C++03" and there is not obligation to do or don't (see all the many discussions about Boost C++11) I'd actually welcome the change. As Edward mentioned dropping variadic macros is not yet dropping C++03, as many compilers did support those well before C++11, although e.g. GCC issues warnings (which I'd suggest to suppress in Boost.PP) If that move makes libraries obsolete, I'd see that as a bonus, but I don't think so, yet. However maybe reconsidering the relevance of such libs would be a good thing. E.g. MPL without non-variadic macros is still useful/working and used by many others. The interfaces will be kept as-is, so no need to remove although it makes sense to switch from it if possible due to its compile time hit.