2007-03-22 10:30:00 -07:00
|
|
|
#
|
2012-05-21 04:12:37 -07:00
|
|
|
# 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/.
|
2007-03-22 10:30:00 -07:00
|
|
|
|
2013-09-03 20:28:05 -07:00
|
|
|
INSTALL_TARGETS += errorlist
|
|
|
|
errorlist_FILES := \
|
|
|
|
ErrorListCDefines.h \
|
|
|
|
ErrorListCxxDefines.h \
|
|
|
|
$(NULL)
|
|
|
|
errorlist_DEST = $(DIST)/include
|
|
|
|
errorlist_TARGET := export
|
|
|
|
|
2008-03-05 03:10:35 -08:00
|
|
|
include $(topsrcdir)/config/rules.mk
|
|
|
|
|
2013-06-10 05:36:26 -07:00
|
|
|
ifdef MOZ_WIDGET_GTK
|
|
|
|
CXXFLAGS += $(TK_CFLAGS)
|
2008-03-14 08:42:34 -07:00
|
|
|
endif
|
|
|
|
|
2013-01-04 19:55:22 -08:00
|
|
|
# We generate ErrorListCxxDefines.h from ErrorList.h using regex. The -n option
|
2012-08-02 01:55:58 -07:00
|
|
|
# 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.
|
2013-01-04 19:55:22 -08:00
|
|
|
ErrorListCxxDefines.h: ErrorList.h Makefile
|
2013-08-21 23:31:21 -07:00
|
|
|
echo '// IWYU pragma: private, include "nsError.h"' > $@
|
|
|
|
sed -n 's/.*ERROR(\([A-Z_0-9]*\).*/#define \1 nsresult::\1/p' < $< >> $@
|
2012-08-02 01:55:58 -07:00
|
|
|
|
2013-01-04 19:55:22 -08:00
|
|
|
ErrorListCDefines.h: ErrorList.h Makefile
|
|
|
|
sed 's/.*ERROR(\([A-Z_0-9]*\),\( *\)\(.*\))[^)]*/#define \1 \2((nsresult)(\3))/' < $< > $@
|
|
|
|
|
|
|
|
GARBAGE += \
|
|
|
|
ErrorListCxxDefines.h \
|
|
|
|
ErrorListCDefines.h \
|
|
|
|
$(NULL)
|