[webkit-dev] ENABLE flag cleanup strawman proposal

Adam Barth abarth at webkit.org
Wed Sep 14 15:40:41 PDT 2011


I've updated the spreadsheet of all ENABLE flags to match TOT (as of
this afternoon):

https://docs.google.com/spreadsheet/ccc?key=0AlC4tS7Ao1fIdHFVNUpFSDBudEF5WGM3WDNzQjI3Ync&authkey=CJCDiooK&hl=en_US#gid=0

I've gone through the list and marked some of them that we might want
to change, listed below.  I expect this list to be somewhat
controversial.  Please consider it as a starting point for discussion.

This proposal introduces a new kinds of flag: DEBUG.  A DEBUG flag is
only that we expect will only be used by developers locally to debug
WebKit.  For example, ENABLE(DEBUG_MATH_LAYOUT) and
ENABLE(SAMPLING_COUNTERS) are only used to debug locally, not to ship
to end users.  The main benefit of labeling these flags as DEBUG-only,
for example as DEBUG(MATH_LAYOUT), is that contributors don't need to
worry as much about breaking them.  (Of course, we still shouldn't try
to break them capriciously.)

I'd like to emphasize again that this list is just a starting point
for discussion.  I look forward to your feedback.

Thanks,
Adam


== Rename ==

ENABLE(DATABASE) => ENABLE(SQL_DATABASE)
ENABLE(LEVELDB) => USE(LEVELDB)
ENABLE(ON_FIRST_TEXTAREA_FOCUS_SELECT_ALL) => Should be an editing behavior
ENABLE(OPENTYPE_SANITIZER) => USE(OPENTYPE_SANITIZER)
ENABLE(SYMBIAN_DIALOG_PROVIDERS) => USE(SYMBIAN_DIALOG_PROVIDERS)
ENABLE(TILED_BACKING_STORE) => USE(TILED_BACKING_STORE)


== Always Disable (Delete Code) ==

ENABLE(APPLICATION_CACHE_DYNAMIC_ENTRIES)
ENABLE(FTPDIR)
ENABLE(ICONDATABASE) ???
ENABLE(WBXML)
ENABLE(WCSS)
ENABLE(XHTMLMP)


== Always Enable ==

ENABLE(DETAILS) ???
ENABLE(DOM_STORAGE)
ENABLE(EVENTSOURCE)
ENABLE(INSPECTOR) ???
ENABLE(METER_TAG)
ENABLE(OFFLINE_WEB_APPLICATIONS)
ENABLE(PROGRESS_TAG)
ENABLE(SVG_ANIMATION) => Gated on ENABLE(SVG)
ENABLE(SVG_AS_IMAGE) => Gated on ENABLE(SVG)
ENABLE(SVG_DOM_OBJC_BINDINGS) => Gated on ENABLE(SVG)
ENABLE(SVG_FONTS) => Gated on ENABLE(SVG)
ENABLE(WEB_TIMING) ??? (I think Maciej has concerns about this
feature, so maybe keep configurable.)
ENABLE(WTF_MULTIPLE_THREADS) <-- ggaren is already making this happen, right?
ENABLE(XHR_RESPONSE_BLOB) => Gated by ENABLE(BLOB)
ENABLE(XPATH)
ENABLE(XSLT)


== Mark as for Debugging ==

ENABLE(CODEBLOCK_SAMPLING) => DEBUG(CODEBLOCK_SAMPLING)
ENABLE(DEBUG_MATH_LAYOUT) => DEBUG(MATH_LAYOUT)
ENABLE(DEBUG_WITH_BREAKPOINT) => DEBUG(WITH_BREAKPOINT)
ENABLE(FAST_MALLOC_MATCH_VALIDATION) => DEBUG(FAST_MALLOC_MATCH_VALIDATION)
ENABLE(GC_VALIDATION) => DEBUG(GC_VALIDATION)
ENABLE(OPCODE_SAMPLING) => DEBUG(OPCODE_SAMPLING)
ENABLE(OPCODE_STATS) => DEBUG(OPCODE_STATS)
ENABLE(REGEXP_TRACING) => DEBUG(REGEXP_TRACING)
ENABLE(SAMPLING_COUNTERS) => DEBUG(SAMPLING_COUNTERS)
ENABLE(SAMPLING_FLAGS) => DEBUG(SAMPLING_FLAGS)
ENABLE(SAMPLING_THREAD) => DEBUG(SAMPLING_THREAD)
ENABLE(WTF_MALLOC_VALIDATION) => DEBUG(WTF_MALLOC_VALIDATION)
ENABLE(YARR_JIT_DEBUG) => DEBUG(YARR_JIT)


More information about the webkit-dev mailing list