Traditional cpp (was: /usr/bin/calendar broken on current)
Greg 'groggy' Lehey
grog at FreeBSD.org
Sat Nov 10 06:46:26 UTC 2012
On Friday, 9 November 2012 at 13:52:24 +0100, Dimitry Andric wrote:
> On 2012-11-09 08:26, Greg 'groggy' Lehey wrote:> On Thursday, 8 November
> 2012 at 22:58:37 -0800, Manfred Antar wrote:
>>> Sometime in the last week calendar stopped working.
>>> not sure the cause
>>> here is some of the output:
>>> /usr/share/calendar/calendar.music:231:17: warning: missing terminating '
>>> character [-Winvalid-pp-token]
>>> 12/16 Don McLean's "American Pie" is released, 1971
>> This is unexpected fallout from the transition from gcc to clang.
>> calendar invokes cpp, and it seems that clang's cpp doesn't like what
>> it sees. This patch works around the issue:
>> --- pathnames.h (revision 242777)
>> +++ pathnames.h (working copy)
>> @@ -32,5 +32,5 @@
>> #include <paths.h>
>> -#define _PATH_CPP "/usr/bin/cpp"
>> +#define _PATH_CPP "/usr/bin/gcpp"
>> #define _PATH_INCLUDE "/usr/share/calendar"
>> Clearly that's not the solution. I'll investigate.
> Looks like yet another cpp -traditional abuse.
Use or abuse? In any case, it's not the only one. In the Good Old
Days people did things like that. So, it seems, does imake, and I'm
sure others will come out of the woodwork.
> Clang will most likely never support traditional preprocessing.
> It is probably better to just use sed or awk for this kind of
I'm not sure that's the way to go. It's more work than it's worth.
What we really need is a traditional cpp. That's not difficult:
there's one in 4.3BSD (all 32 kB of source). OpenBSD also had one,
though it's gone now, so presumably that one has a clean license.
Both appear to be from pcc. Should we import it into the tree as,
Sent from my desktop computer.
Finger grog at FreeBSD.org for PGP public key.
See complete headers for address and phone numbers.
This message is digitally signed. If your Microsoft MUA reports
problems, please read http://tinyurl.com/broken-mua
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 196 bytes
Desc: not available
More information about the freebsd-current