Hi Denton, On Thu, 8 Oct 2020, Denton Liu wrote: > On Thu, Oct 08, 2020 at 11:32:03AM +0200, Johannes Schindelin wrote: > > P.S.: I am not really certain that the `\s` is portable, I do not see any > > mention of it in > > https://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap09.html#tag_09_03 > > and would therefore expect BSD sed not to handle this correctly. > > I've run a varation of this on MacOS's sed before and it works. > Unfortunately, I don't have access to a MacOS machine anymore so I can't > 100% confirm it. > > > In any > > case, the `-i` is _not_ portable, as BSD sed takes a mandatory argument > > (see > > https://stackoverflow.com/questions/5694228/sed-in-place-flag-that-works-both-on-mac-bsd-and-linux > > for more details). > > This was the main reason why I sent it out as an RFC (although I forgot > to mention it in the commit message, whoops). Perhaps we could write > this as > > externcheck: $(filter-out $(THIRD_PARTY_SOURCES),$(filter %.c %.h,$(shell $(FIND_SOURCE_FILES)))) > sed -i.bak 's/^\(\s*\)extern \([^(]*([^*]\)/\1\2/' $^ > $(RM) $(addsuffix .bak,$^) > > instead? I think that since this is a developer target, we can probably > call this portable enough. Yep, I agree. Thanks, Dscho