Your expression looks good to me (and I verified that it solved the jconsole bug). I will push that.
Thanks, /Staffan > On 5 mar 2015, at 10:05, Erik Joelsson <erik.joels...@oracle.com> wrote: > > Hello, > > The specification for the properties file format says that a comment is a > line that has either a ! or # as the first non whitespace character. Greping > around in the source shows we have several instances if comments tarting a > few spaces in. I don't think we are using ! for comments anywhere though. > Using this expression seems to do the trick for me: > > 's/^[ ]*#.*/#/g' > > Note that the contents of the [] is one space and a literal tab as \t is not > portable to all versions of sed that we use. > > The cleaning mechanism is hard to make really safe without semantic parsing. > Have you considered using the CompileProperties option instead? For most of > the resource bundles in the jdk, we convert the properties into java src. As > I understand it, resource bundles work seamlessly as classes or properties > files. I assume this is done for runtime performance. You could also choose > to just copy the properties files instead of cleaning them, especially if > there are no or few comments in them. > > /Erik > > On 2015-03-04 20:21, Staffan Larsen wrote: >> The problem is that the makefiles do "cleanup" of the resource files, >> accidentally deleting half of some strings. In this case >> >> GC_INFO=Name = ''{0}'', Collections = >> {1,choice,-1#Unavailable|0#{1,number,integer}}, Total time spent = {2} >> >> becomes >> >> GC_INFO=Name \= ''{0}'', Collections \= {1,choice,-1# >> >> The below diff fixes the problem. I added an extra ^ before the # so that >> only # at the beginning of the line are treated as comments. I don’t know if >> this has other implications, though? Should # anywhere on the line be >> treated as the beginning of a comment? In that case we need to handle the >> jconsole resource file specially. >> >> Thanks, >> /Staffan >> >> >> diff --git a/make/common/JavaCompilation.gmk >> b/make/common/JavaCompilation.gmk >> --- a/make/common/JavaCompilation.gmk >> +++ b/make/common/JavaCompilation.gmk >> @@ -393,7 +393,7 @@ >> $(MKDIR) -p $$(@D) >> export LC_ALL=C ; ( $(CAT) $$< && $(ECHO) "" ) \ >> | $(SED) -e 's/\([^\\]\):/\1\\:/g' -e 's/\([^\\]\)=/\1\\=/g' \ >> - -e 's/\([^\\]\)!/\1\\!/g' -e 's/#.*/#/g' \ >> + -e 's/\([^\\]\)!/\1\\!/g' -e 's/^#.*/#/g' \ >> | $(SED) -f "$(SRC_ROOT)/make/common/support/unicode2x.sed" \ >> | $(SED) -e '/^#/d' -e '/^$$$$/d' \ >> -e :a -e '/\\$$$$/N; s/\\\n//; ta' \ >