diff -r 000000000000 -r 6474c204b198 xpcom/base/Makefile.in --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/xpcom/base/Makefile.in Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,33 @@ +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +INSTALL_TARGETS += errorlist +errorlist_FILES := \ + ErrorListCDefines.h \ + ErrorListCxxDefines.h \ + $(NULL) +errorlist_DEST = $(DIST)/include +errorlist_TARGET := export + +include $(topsrcdir)/config/rules.mk + +ifdef MOZ_WIDGET_GTK +CXXFLAGS += $(TK_CFLAGS) +endif + +# We generate ErrorListCxxDefines.h from ErrorList.h using regex. The -n option +# suppresses printing the pattern space, and the p at the end prints it anyway, +# so we don't print lines that don't match the pattern to start with. +ErrorListCxxDefines.h: ErrorList.h Makefile + echo '// IWYU pragma: private, include "nsError.h"' > $@ + sed -n 's/.*ERROR(\([A-Z_0-9]*\).*/#define \1 nsresult::\1/p' < $< >> $@ + +ErrorListCDefines.h: ErrorList.h Makefile + sed 's/.*ERROR(\([A-Z_0-9]*\),\( *\)\(.*\))[^)]*/#define \1 \2((nsresult)(\3))/' < $< > $@ + +GARBAGE += \ + ErrorListCxxDefines.h \ + ErrorListCDefines.h \ + $(NULL)