Description of problem: While trying to compile gnome-shell with jhbuild, I get the following error while compiling xwayland: make[2]: Entering directory '/mnt/data/source/xwayland/dix' GEN dtrace-dix.o /usr/bin/dtrace:/tmp/tmp4rn09m.d:34 syntax error near: typedef unsigned short int __u_short; Makefile:989: recipe for target 'dtrace-dix.o' failed make[2]: *** [dtrace-dix.o] Error 1 make[2]: Leaving directory '/mnt/data/source/xwayland/dix' Makefile:617: recipe for target 'all' failed make[1]: *** [all] Error 2 make[1]: Leaving directory '/mnt/data/source/xwayland/dix' Makefile:760: recipe for target 'all-recursive' failed make: *** [all-recursive] Error 1 I asked on Freenode #xorg-devel channel, and this was the answer: <ajax> you have a version of systemtap's dtrace emulation installed that has a differently broken parser than the old one <ajax> either build --without-dtrace or set DTRACE= <ajax> eer <ajax> DTRACE="/usr/bin/dtrace --nopyparsing" <ajax> or backrev to older systemtap <ajax> --no-pyparsing, even. <apinheiro> ajax, ok, thanks will try that <ajax> (parser was rewritten because it used regex, and parsing C with regex bad, so now it uses pyparsing, which is implemented with regex, so that's all much better) <Jasper> pyparsing only uses regex for lexing, not parsing! <apinheiro> ajax, should I open a bug or assume that is a collateral effect of being using f21, and that is being already managed? devel <ajax> apinheiro: bug against systemtap please, yeah. <apinheiro> ajax, ok Version-Release number of selected component (if applicable): systemtap.x86_64 2.6-0.240.g876abb05c522.fc22 Additional info: This seems similar to bug 1084692, but the error message is different, so I created a new bug. Sorry for the noise if the problem is due the same reason.
There was another recent FTBFS for the pyparsing-based /usr/bin/dtrace, but can't find the bug# for it. The workaround was to run using the old regexp based .d parser, ie. "dtrace --nopyparsing ... FOO.d". Stan, would you consider adding code to /usr/bin/dtrace to let it automagically reattempt a --no-pyparsing run in case of an error?
Is this getting any love? I'm hitting this on basically all my f21 machines now.
Looking at this further, but just an fyi: this works without -C (first run cpp on input file). systemtap doesn't use the type info in the .d file; it uses the argument type info for the probe point invocation in the .c file
The .d file includes sys/types.h and the pyparser is not equiped to handle everything C can throw at it. This type info is not needed as mentioned above so this patch: 1. ignores included c declarations 2. if by chance something still manages to aggravate the pyparser then we fallback to the rudimentary string pattern matcher commit: 52cac9d8159 Skip C declarations in .d file and use string pattern matching as a fallback mechanism.
systemtap-2.6-2.fc19 has been submitted as an update for Fedora 19. https://admin.fedoraproject.org/updates/systemtap-2.6-2.fc19
systemtap-2.6-2.fc20 has been submitted as an update for Fedora 20. https://admin.fedoraproject.org/updates/systemtap-2.6-2.fc20
systemtap-2.6-2.fc21 has been submitted as an update for Fedora 21. https://admin.fedoraproject.org/updates/systemtap-2.6-2.fc21
FYI, while I referenced this bug for F19-21 updates, rawhide will actually get it when lberk does his weekly snapshot on Monday. If there's a pressing need to build sooner, I can, but we're already a month running anyway...
Package systemtap-2.6-2.fc20: * should fix your issue, * was pushed to the Fedora 20 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing systemtap-2.6-2.fc20' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2014-11553/systemtap-2.6-2.fc20 then log in and leave karma (feedback).
systemtap-2.6-2.fc21 has been pushed to the Fedora 21 stable repository. If problems still persist, please make note of it in this bug report.
systemtap-2.6-2.fc20 has been pushed to the Fedora 20 stable repository. If problems still persist, please make note of it in this bug report.
systemtap-2.6-2.fc19 has been pushed to the Fedora 19 stable repository. If problems still persist, please make note of it in this bug report.