We have 127 ENABLE defines.  As discussed in Maciej's "Saying No"
talk, we should make an effort to reduce that number so as to reduce
complexity in our build process and testing matrix.

% find Source -name "*.cpp" | xargs grep -r "#if ENABLE" -h | awk
'{print $2}' | sort | uniq

ENABLE(3D_RENDERING)
ENABLE(ACCELERATED_2D_CANVAS)
ENABLE(APPLICATION_CACHE_DYNAMIC_ENTRIES)
ENABLE(ASSEMBLER)
ENABLE(ASSEMBLER_WX_EXCLUSIVE)
ENABLE(BLOB)
ENABLE(CHANNEL_MESSAGING)
ENABLE(CLIENT_BASED_GEOLOCATION)
ENABLE(CODEBLOCK_SAMPLING)
ENABLE(COMPUTED_GOTO_INTERPRETER)
ENABLE(CONTEXT_MENUS)
ENABLE(Condition1)
ENABLE(DASHBOARD_SUPPORT)
ENABLE(DATABASE)
ENABLE(DATALIST)
ENABLE(DATA_TRANSFER_ITEMS)
ENABLE(DEBUG_MATH_LAYOUT)
ENABLE(DEBUG_WITH_BREAKPOINT)
ENABLE(DETAILS)
ENABLE(DEVICE_ORIENTATION)
ENABLE(DFG_JIT)
ENABLE(DFG_JIT_RESTRICTIONS)
ENABLE(DIRECTORY_UPLOAD)
ENABLE(DOM_STORAGE)
ENABLE(DRAG_SUPPORT)
ENABLE(EVENTSOURCE)
ENABLE(EXECUTABLE_ALLOCATOR_DEMAND)
ENABLE(EXECUTABLE_ALLOCATOR_FIXED)
ENABLE(FAST_MALLOC_MATCH_VALIDATION)
ENABLE(FAST_MOBILE_SCROLLING)
ENABLE(FILE_SYSTEM)
ENABLE(FILTERS)
ENABLE(FTPDIR)
ENABLE(FULLSCREEN_API)
ENABLE(GEOLOCATION)
ENABLE(GESTURE_EVENTS)
ENABLE(GESTURE_RECOGNIZER)
ENABLE(GLIB_SUPPORT)
ENABLE(GLOBAL_FASTMALLOC_NEW)
ENABLE(ICONDATABASE)
ENABLE(IMAGE_DECODER_DOWN_SAMPLING)
ENABLE(IMAGE_RESIZER)
ENABLE(INDEXED_DATABASE)
ENABLE(INPUT_SPEECH)
ENABLE(INSPECTOR)
ENABLE(INTERPRETER)
ENABLE(JAVASCRIPT_DEBUGGER)
ENABLE(JAVASCRIPT_I18N_API)
ENABLE(JAVA_BRIDGE)
ENABLE(JIT)
ENABLE(JIT_OPTIMIZE_CALL)
ENABLE(JIT_OPTIMIZE_METHOD_CALLS)
ENABLE(JIT_OPTIMIZE_PROPERTY_ACCESS)
ENABLE(JIT_USE_SOFT_MODULO)
ENABLE(JSC_MULTIPLE_THREADS)
ENABLE(JSC_ZOMBIES)
ENABLE(LEVELDB)
ENABLE(LINK_PREFETCH)
ENABLE(MAC_JAVA_BRIDGE)
ENABLE(MATHML)
ENABLE(MEDIA_STATISTICS)
ENABLE(MEDIA_STREAM)
ENABLE(MEMORY_SAMPLER)
ENABLE(METER_TAG)
ENABLE(NETSCAPE_PLUGIN_API)
ENABLE(NETSCAPE_PLUGIN_METADATA_CACHE)
ENABLE(NOTIFICATIONS)
ENABLE(NO_LISTBOX_RENDERING)
ENABLE(OFFLINE_WEB_APPLICATIONS)
ENABLE(ON_FIRST_TEXTAREA_FOCUS_SELECT_ALL)
ENABLE(OPCODE_SAMPLING)
ENABLE(OPCODE_STATS)
ENABLE(OPENTYPE_SANITIZER)
ENABLE(ORIENTATION_EVENTS)
ENABLE(PAN_SCROLLING)
ENABLE(PARALLEL_JOBS)
ENABLE(PLUGIN_PACKAGE_SIMPLE_HASH)
ENABLE(PLUGIN_PROCESS)
ENABLE(PLUGIN_PROXY_FOR_VIDEO)
ENABLE(PROGRESS_TAG)
ENABLE(PURGEABLE_MEMORY)
ENABLE(QT_BEARER)
ENABLE(QT_USERAGENT_DEVICEMODEL)
ENABLE(QUOTA)
ENABLE(REGEXP_TRACING)
ENABLE(REGISTER_PROTOCOL_HANDLER)
ENABLE(REPAINT_THROTTLING)
ENABLE(REQUEST_ANIMATION_FRAME)
ENABLE(SAMPLING_COUNTERS)
ENABLE(SAMPLING_FLAGS)
ENABLE(SAMPLING_THREAD)
ENABLE(SHARED_WORKERS)
ENABLE(SINGLE_THREADED)
ENABLE(SKIA_TEXT)
ENABLE(SMOOTH_SCROLLING)
ENABLE(SPEECH_INPUT)
ENABLE(SPELLCHECK)
ENABLE(SVG)
ENABLE(SVG_ANIMATION)
ENABLE(SVG_AS_IMAGE)
ENABLE(SVG_FONTS)
ENABLE(SVG_FOREIGN_OBJECT)
ENABLE(SVG_USE)
ENABLE(SYMBIAN_DIALOG_PROVIDERS)
ENABLE(TEXT_CARET)
ENABLE(TILED_BACKING_STORE)
ENABLE(TOUCH_EVENTS)
ENABLE(VIDEO)
ENABLE(VIDEO_TRACK)
ENABLE(WBXML)
ENABLE(WCSS)
ENABLE(WEBGL)
ENABLE(WEB_ARCHIVE)
ENABLE(WEB_AUDIO)
ENABLE(WEB_PROCESS_SANDBOX)
ENABLE(WEB_SOCKETS)
ENABLE(WEB_TIMING)
ENABLE(WML)
ENABLE(WORKERS)
ENABLE(WTF_MULTIPLE_THREADS)
ENABLE(XHR_RESPONSE_BLOB)
ENABLE(XHTMLMP)
ENABLE(XPATH)
ENABLE(XSLT)
ENABLE(YARR_JIT)
ENABLE(YARR_JIT_DEBUG)
ENABLE_NOTIFICATIONS

It's unclear to me how many of these we can easily remove (or should remove?)

If anyone has suggestions, I have the beginning of a spreadsheet here:
https://spreadsheets.google.com/ccc?key=0AlC4tS7Ao1fIdHFVNUpFSDBudEF5WGM3WDNzQjI3Ync&hl=en&authkey=CJCDiooK
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

Reply via email to