7 # remove everything unless it's remove has been disabled with "0"
8 # "v8=0" means "do not remove v8"
11 # Strip tarball from some big directories not needed on the linux platform
12 # https://code.google.com/p/chromium/wiki/LinuxPackaging
13 # initial list from src/tools/export_tarball/export_tarball.py
14 # also removed non-linux files: find -name win -o -name mac -o name android -o name windows
15 # find -type d -name 'android' -o -name 'chromeos' -o -name 'cros'
16 # find -type d -name *doc*
17 # find -type d -name *example*
18 # find -type d -name java
19 # find -type d -name tools
20 # find -type d -name samples
21 # suffix with _ those that we can't remove (just yet) because of the gclient
22 # hooks (see build/all.gyp) or of some unneeded deps/includes
23 remove_nonessential_dirs() {
24 # need to keep remoting/host/continue_window_mac.mm
26 -name 'Android.mk' -o \
33 find -regextype posix-extended \
34 -regex '.*_(win|cros|mac)_.*.xtb' \
42 third_party/chromite \
44 ash/resources/default_100_percent/cros_ \
45 ash/resources/default_200_percent/cros_ \
51 breakpad/src/client/mac \
52 breakpad/src/common/android \
53 breakpad/src/common/mac \
54 breakpad/src/tools/mac \
59 chrome/app/resources/terms/chromeos \
60 chrome/app/theme/default_100_percent/cros_ \
61 chrome/app/theme/default_100_percent/mac_ \
62 chrome/app/theme/default_100_percent/win \
63 chrome/app/theme/default_200_percent/cros_ \
64 chrome/app/theme/default_200_percent/mac \
65 chrome/app/theme/default_200_percent/win \
66 chrome/app/theme/touch_100_percent/win \
67 chrome/app/theme/touch_140_percent/win \
68 chrome/app/theme/touch_180_percent/win \
69 chrome/browser/android \
70 chrome/browser/chromeos/cros \
71 chrome/browser/extensions/docs \
72 chrome/browser/history/android \
74 chrome/browser/resources/about_welcome_android \
75 chrome/browser/resources/chromeos_ \
76 chrome/browser/resources/ntp_android \
77 chrome/browser/resources/options/chromeos_ \
78 chrome/browser/resources/shared/css/chromeos \
79 chrome/browser/resources/shared/js/chromeos_ \
80 chrome/browser/ui/android_ \
81 chrome/browser/ui/cocoa \
82 chrome/browser/ui/webui/chromeos \
83 chrome/browser/ui/webui/ntp/android \
84 chrome/browser/ui/webui/options/chromeos \
85 chrome/common/extensions/docs \
87 chrome/installer/mac \
88 chrome/installer/mac/third_party/xz/config/mac \
89 chrome/installer/tools \
90 chrome/third_party/jstemplate/tutorial_examples \
91 third_party/jstemplate/tutorial_examples \
92 chrome/third_party/mock4js/examples \
93 chrome/third_party/wtl/ \
94 chrome/tools/build/chromeos \
95 chrome/tools/build/mac \
96 chrome/tools/build/win \
98 cloud_print/virtual_driver/win \
100 content/browser/android \
101 content/common/android \
102 content/components/navigation_interception/java \
103 content/components/web_contents_delegate_android/java \
104 content/public/android \
105 content/public/browser/android \
106 content/renderer/android \
107 content/shell/android \
112 gpu/command_buffer/docs \
114 media/audio/android \
119 media/video/capture/mac \
120 media/video/capture/win \
121 media/webm/chromeos \
122 mesa/MesaLib/src/mesa/drivers/windows \
123 native_client/build/mac \
124 native_client/documentation \
125 native_client/src/shared/imc/win \
126 native_client/src/shared/platform/win \
127 native_client/src/tools \
128 native_client/src/trusted/debug_stub/win \
129 native_client/src/trusted/desc/win \
130 native_client/src/trusted/nonnacl_util/win \
131 native_client/src/trusted/platform_qualify/win \
132 native_client/tools \
133 native_client/tools/trusted_cross_toolchains \
135 native_client_sdk/src/libraries/win \
137 net/tools/testserver \
138 npapi/npspy/windows \
142 ppapi/c/documentation \
143 ppapi/cpp/documentation \
144 ppapi/native_client/src/tools \
145 ppapi/native_client/src/trusted/plugin/win \
146 ppapi/native_client/tools \
147 remoting/host/installer/mac_ \
148 remoting/host/installer/win \
150 remoting/host/setup/win \
160 tcmalloc/chromium/src/windows \
161 tcmalloc/vendor/src/windows \
162 third_party/WebKit/Source/JavaScriptCore/docs \
163 third_party/WebKit/Source/JavaScriptCore/tools \
164 third_party/WebKit/Source/Platform/chromium/public/android \
165 third_party/WebKit/Source/Platform/chromium/public/mac \
166 third_party/WebKit/Source/Platform/chromium/public/win \
167 third_party/WebKit/Source/ThirdParty/gtest/samples \
168 third_party/WebKit/Source/ThirdParty/gyp/samples \
169 third_party/WebKit/Source/ThirdParty/gyp/samples/samples \
170 third_party/WebKit/Source/ThirdParty/gyp/tools \
171 third_party/WebKit/Source/WTF/wtf/mac \
172 third_party/WebKit/Source/WTF/wtf/qt \
173 third_party/WebKit/Source/WTF/wtf/threads/win \
174 third_party/WebKit/Source/WTF/wtf/win \
175 third_party/WebKit/Source/WebCore/WebCore.gyp/mac \
176 third_party/WebKit/Source/WebCore/accessibility/mac \
177 third_party/WebKit/Source/WebCore/accessibility/qt \
178 third_party/WebKit/Source/WebCore/accessibility/win \
179 third_party/WebKit/Source/WebCore/bridge/qt \
180 third_party/WebKit/Source/WebCore/editing/android \
181 third_party/WebKit/Source/WebCore/editing/mac \
182 third_party/WebKit/Source/WebCore/editing/qt \
183 third_party/WebKit/Source/WebCore/history/android \
184 third_party/WebKit/Source/WebCore/history/mac \
185 third_party/WebKit/Source/WebCore/history/qt \
186 third_party/WebKit/Source/WebCore/loader/mac \
187 third_party/WebKit/Source/WebCore/loader/win \
188 third_party/WebKit/Source/WebCore/page/android \
189 third_party/WebKit/Source/WebCore/page/mac \
190 third_party/WebKit/Source/WebCore/page/qt \
191 third_party/WebKit/Source/WebCore/page/scrolling/mac \
192 third_party/WebKit/Source/WebCore/page/win \
193 third_party/WebKit/Source/WebCore/platform/android \
194 third_party/WebKit/Source/WebCore/platform/audio/mac \
195 third_party/WebKit/Source/WebCore/platform/audio/qt \
196 third_party/WebKit/Source/WebCore/platform/cf/win \
197 third_party/WebKit/Source/WebCore/platform/cocoa \
198 third_party/WebKit/Source/WebCore/platform/graphics/ca/mac \
199 third_party/WebKit/Source/WebCore/platform/graphics/ca/win \
200 third_party/WebKit/Source/WebCore/platform/graphics/cocoa \
201 third_party/WebKit/Source/WebCore/platform/graphics/gpu/mac \
202 third_party/WebKit/Source/WebCore/platform/graphics/gpu/qt \
203 third_party/WebKit/Source/WebCore/platform/graphics/mac \
204 third_party/WebKit/Source/WebCore/platform/graphics/qt \
205 third_party/WebKit/Source/WebCore/platform/graphics/surfaces/mac \
206 third_party/WebKit/Source/WebCore/platform/graphics/surfaces/qt \
207 third_party/WebKit/Source/WebCore/platform/graphics/surfaces/win \
208 third_party/WebKit/Source/WebCore/platform/graphics/win \
209 third_party/WebKit/Source/WebCore/platform/ios \
210 third_party/WebKit/Source/WebCore/platform/mac \
211 third_party/WebKit/Source/WebCore/platform/network/android \
212 third_party/WebKit/Source/WebCore/platform/network/mac \
213 third_party/WebKit/Source/WebCore/platform/network/qt \
214 third_party/WebKit/Source/WebCore/platform/network/win \
215 third_party/WebKit/Source/WebCore/platform/qt \
216 third_party/WebKit/Source/WebCore/platform/text/android \
217 third_party/WebKit/Source/WebCore/platform/text/mac \
218 third_party/WebKit/Source/WebCore/platform/text/qt \
219 third_party/WebKit/Source/WebCore/platform/text/win \
220 third_party/WebKit/Source/WebCore/platform/win \
221 third_party/WebKit/Source/WebCore/platform/wx/wxcode/mac \
222 third_party/WebKit/Source/WebCore/platform/wx/wxcode/win \
223 third_party/WebKit/Source/WebCore/plugins/mac \
224 third_party/WebKit/Source/WebCore/plugins/qt \
225 third_party/WebKit/Source/WebCore/plugins/win \
226 third_party/WebKit/Source/WebKit/chromium/public/android \
227 third_party/WebKit/Source/WebKit/chromium/public/platform/android \
228 third_party/WebKit/Source/WebKit/chromium/public/platform/mac \
229 third_party/WebKit/Source/WebKit/chromium/public/platform/win \
230 third_party/WebKit/Source/WebKit/chromium/public/win \
231 third_party/WebKit/Source/WebKit/chromium/src/android \
232 third_party/WebKit/Source/WebKit/chromium/src/mac \
233 third_party/WebKit/Source/WebKit/chromium/src/win \
234 third_party/WebKit/Source/WebKit/gtk/docs \
235 third_party/WebKit/Source/WebKit/mac \
236 third_party/WebKit/Source/WebKit/qt \
237 third_party/WebKit/Source/WebKit/qt/docs \
238 third_party/WebKit/Source/WebKit/qt/examples \
239 third_party/WebKit/Source/WebKit/win \
240 third_party/WebKit/Source/WebKit/wx/bindings/python/samples \
241 third_party/WebKit/Source/WebKit2/Platform/CoreIPC/mac \
242 third_party/WebKit/Source/WebKit2/Platform/CoreIPC/win \
243 third_party/WebKit/Source/WebKit2/Platform/mac \
244 third_party/WebKit/Source/WebKit2/Platform/win \
245 third_party/WebKit/Source/WebKit2/PluginProcess/mac \
246 third_party/WebKit/Source/WebKit2/Shared/API/c/mac \
247 third_party/WebKit/Source/WebKit2/Shared/API/c/win \
248 third_party/WebKit/Source/WebKit2/Shared/Plugins/Netscape/mac \
249 third_party/WebKit/Source/WebKit2/Shared/Plugins/Netscape/win \
250 third_party/WebKit/Source/WebKit2/Shared/Plugins/mac \
251 third_party/WebKit/Source/WebKit2/Shared/cg/win \
252 third_party/WebKit/Source/WebKit2/Shared/mac \
253 third_party/WebKit/Source/WebKit2/Shared/win \
254 third_party/WebKit/Source/WebKit2/UIProcess/API/C/mac \
255 third_party/WebKit/Source/WebKit2/UIProcess/API/C/win \
256 third_party/WebKit/Source/WebKit2/UIProcess/API/mac \
257 third_party/WebKit/Source/WebKit2/UIProcess/Launcher/mac \
258 third_party/WebKit/Source/WebKit2/UIProcess/Launcher/win \
259 third_party/WebKit/Source/WebKit2/UIProcess/Plugins/mac \
260 third_party/WebKit/Source/WebKit2/UIProcess/Plugins/win \
261 third_party/WebKit/Source/WebKit2/UIProcess/mac \
262 third_party/WebKit/Source/WebKit2/UIProcess/win \
263 third_party/WebKit/Source/WebKit2/WebProcess/Authentication/mac \
264 third_party/WebKit/Source/WebKit2/WebProcess/Cookies/mac \
265 third_party/WebKit/Source/WebKit2/WebProcess/Downloads/cf/win \
266 third_party/WebKit/Source/WebKit2/WebProcess/Downloads/mac \
267 third_party/WebKit/Source/WebKit2/WebProcess/FullScreen/mac \
268 third_party/WebKit/Source/WebKit2/WebProcess/FullScreen/win \
269 third_party/WebKit/Source/WebKit2/WebProcess/InjectedBundle/API/c/win \
270 third_party/WebKit/Source/WebKit2/WebProcess/InjectedBundle/mac \
271 third_party/WebKit/Source/WebKit2/WebProcess/InjectedBundle/win \
272 third_party/WebKit/Source/WebKit2/WebProcess/Plugins/Netscape/mac \
273 third_party/WebKit/Source/WebKit2/WebProcess/Plugins/Netscape/win \
274 third_party/WebKit/Source/WebKit2/WebProcess/WebCoreSupport/mac \
275 third_party/WebKit/Source/WebKit2/WebProcess/WebCoreSupport/win \
276 third_party/WebKit/Source/WebKit2/WebProcess/WebPage/ca/mac \
277 third_party/WebKit/Source/WebKit2/WebProcess/WebPage/ca/win \
278 third_party/WebKit/Source/WebKit2/WebProcess/WebPage/mac \
279 third_party/WebKit/Source/WebKit2/WebProcess/WebPage/win \
280 third_party/WebKit/Source/WebKit2/WebProcess/mac \
281 third_party/WebKit/Source/WebKit2/WebProcess/win \
282 third_party/WebKit/Source/WebKit2/mac \
283 third_party/WebKit/Source/WebKit2/win \
284 third_party/WebKit/Tools/DumpRenderTree/mac \
285 third_party/WebKit/Tools/DumpRenderTree/qt \
286 third_party/WebKit/Tools/DumpRenderTree/win \
287 third_party/angle_dx11/extensions \
288 third_party/angle_dx11/samples \
289 third_party/angle_dx11/samples/gles2_book \
292 third_party/bspatch \
293 third_party/cacheinvalidation/src/example-app-build \
294 third_party/cacheinvalidation/src/java \
295 third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android \
296 third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android \
297 third_party/ffmpeg/binaries \
298 third_party/ffmpeg/chromium/binaries/Chromium/win \
299 third_party/ffmpeg/chromium/config/Chrome/mac \
300 third_party/ffmpeg/chromium/config/Chrome/win \
301 third_party/ffmpeg/chromium/config/Chromium/mac \
302 third_party/ffmpeg/chromium/config/Chromium/win \
303 third_party/ffmpeg/chromium/include/win \
304 third_party/ffmpeg/doc \
305 third_party/ffmpeg/tools \
306 third_party/fuzzymatch \
307 third_party/gles2_book \
308 third_party/gles_book_examples \
310 third_party/hunspell/dictionaries \
311 third_party/hunspell_dictionaries \
312 third_party/hyphen/doc \
313 third_party/icu/android \
314 third_party/icu/mac \
316 third_party/leveldatabase/src/doc \
317 third_party/leveldatabase/src/port/win \
318 third_party/libjingle/source/talk/examples \
319 third_party/libjpeg_turbo/mac \
320 third_party/libjpeg_turbo/win \
321 third_party/libva/va/android \
322 third_party/libvpx/source/config/mac \
323 third_party/libvpx/source/config/win \
324 third_party/libxml/mac \
325 third_party/lighttpd \
326 third_party/mesa/MesaLib/docs \
327 third_party/mesa/MesaLib/src/gallium/docs \
328 third_party/npapi/npspy/extern/java \
332 third_party/openssl/config/android \
333 third_party/ots/tools \
334 third_party/pthread \
335 third_party/pyftpdlib \
336 third_party/re2/doc \
338 third_party/sfntly/cpp/src/sfntly/tools \
339 third_party/simplejson \
340 third_party/skia/include/utils/android \
341 third_party/skia/include/utils/ios \
342 third_party/skia/include/utils/mac \
343 third_party/skia/include/utils/win \
344 third_party/skia/include/views/android \
345 third_party/skia/src/gpu/gl/android \
346 third_party/skia/src/gpu/gl/mac \
347 third_party/skia/src/gpu/gl/win \
348 third_party/skia/src/utils/ios \
349 third_party/skia/src/utils/mac \
350 third_party/skia/src/utils/win \
351 third_party/skia/src/views/ios \
352 third_party/skia/src/views/mac \
353 third_party/skia/src/views/win \
354 third_party/snappy/mac \
355 third_party/sqlite/src/doc \
356 third_party/tcmalloc/vendor/doc \
357 third_party/trace-viewer/examples \
358 third_party/trace-viewer/third_party/pywebsocket/src/example \
360 third_party/webdriver/pylib/docs \
361 third_party/webrtc/modules/audio_device/android \
362 third_party/webrtc/modules/audio_device/ios \
363 third_party/webrtc/modules/audio_device/main/source/mac \
364 third_party/webrtc/modules/audio_device/main/source/win \
365 third_party/webrtc/modules/audio_device/win \
366 third_party/webrtc/modules/video_capture/android/java \
367 third_party/webrtc/modules/video_capture/main/source/android \
368 third_party/webrtc/modules/video_render/android/java \
369 third_party/webrtc/modules/video_render/main/source/android \
370 third_party/webrtc/modules/video_render/main/source/mac \
371 third_party/webrtc/system_wrappers/source/android \
372 third_party/yasm/source/config/android \
373 third_party/yasm/source/config/mac \
374 third_party/yasm/source/config/win \
377 tools/gyp/samples/samples \
385 tools/wine_valgrind \
391 ui/resources/default_100_percent/cros_ \
392 ui/resources/default_200_percent/cros_ \
397 webkit/media/android \
398 webrtc/modules/video_capture/windows \
399 webrtc/modules/video_render/windows \
409 chrome/browser/chromeos \
410 chrome/browser/component/web_contents_delegate_android \
413 cloud_print/service/win \
414 content/browser/renderer_host/java \
416 content/renderer/java \
418 media/base/android_ \
419 native_client/src/include/win \
420 native_client/src/trusted/service_runtime/win \
424 third_party/WebKit/Source/WebKit/chromium/public/mac \
425 third_party/WebKit/Tools \
426 third_party/cld/encodings/compact_lang_det/win \
427 third_party/cros_system_api \
428 third_party/mozc/chrome/chromeos \
429 third_party/sfntly/cpp/src/sample \
430 third_party/tcmalloc \
431 third_party/v8-i18n/tools \
432 third_party/webrtc/modules/video_coding/codecs/tools \
433 third_party/webrtc/tools \
440 '!' -path 'base/mac/bundle_locations.h' \
441 '!' -path 'base/mac/crash_logging.h' \
442 '!' -path 'base/win/windows_version.h' \
443 '!' -path 'build/android/cpufeatures.gypi' \
444 '!' -path 'chrome/browser/chromeos/attestation/platform_verification_flow.h' \
445 '!' -path 'chrome/browser/chromeos/contacts/contact.proto' \
446 '!' -path 'chrome/browser/chromeos/extensions/*.h' \
447 '!' -path 'chrome/browser/chromeos/extensions/echo_private_api.h' \
448 '!' -path 'chrome/browser/chromeos/extensions/file_manager/file_browser_handler_api.h' \
449 '!' -path 'chrome/browser/chromeos/extensions/file_manager/file_browser_private_api_functions.h' \
450 '!' -path 'chrome/browser/chromeos/extensions/info_private_api.h' \
451 '!' -path 'chrome/browser/chromeos/extensions/media_player_api.h' \
452 '!' -path 'chrome/browser/chromeos/extensions/networking_private_api.h' \
453 '!' -path 'chrome/browser/chromeos/extensions/wallpaper_api.h' \
454 '!' -path 'chrome/browser/chromeos/extensions/wallpaper_private_api.h' \
455 '!' -path 'chrome/browser/chromeos/settings/cros_settings.h' \
456 '!' -path 'chrome/browser/chromeos/settings/cros_settings_names.h' \
457 '!' -path 'chrome/browser/chromeos/settings/cros_settings_provider.h' \
458 '!' -path 'chrome/browser/chromeos/settings/device_settings_service.h' \
459 '!' -path 'chrome/browser/chromeos/system_logs/*.h' \
460 '!' -path 'chrome/tools/build/generate_policy_source.py' \
461 '!' -path 'chrome/tools/build/linux/sed.sh' \
462 '!' -path 'chrome/tools/build/make_version_cc.py' \
463 '!' -path 'chrome/tools/build/repack_locales.py' \
464 '!' -path 'chrome/tools/build/version.py' \
465 '!' -path 'chromeos/chromeos_constants.h' \
466 '!' -path 'chromeos/chromeos_export.h' \
467 '!' -path 'chromeos/chromeos_switches.h' \
468 '!' -path 'chromeos/dbus/dbus_client_implementation_type.h' \
469 '!' -path 'chromeos/dbus/dbus_method_call_status.h' \
470 '!' -path 'chromeos/dbus/session_manager_client.h' \
471 '!' -path 'chromeos/network/network_state_handler_observer.h' \
472 '!' -path 'chromeos/network/onc/onc_constants.h' \
473 '!' -path 'content/browser/renderer_host/java/java_bridge_dispatcher_host_manager.h' \
474 '!' -path 'content/common/mac/attributed_string_coder.h' \
475 '!' -path 'content/common/mac/font_descriptor.h' \
476 '!' -path 'content/renderer/java/java_bridge_dispatcher.h' \
477 '!' -path 'media/base/android/demuxer_android.h' \
478 '!' -path 'native_client/src/include/win/mman.h' \
479 '!' -path 'native_client/src/trusted/service_runtime/win/debug_exception_handler.h' \
480 '!' -path 'native_client/src/trusted/service_runtime/win/exception_patch/ntdll_patch.h' \
481 '!' -path 'net/tools/tld_cleanup/*' \
482 '!' -path 'remoting/tools/build/*' \
483 '!' -path 'remoting/tools/verify_resources.py' \
484 '!' -path 'sandbox/win/src/sandbox_types.h' \
485 '!' -path 'third_party/WebKit/Source/WebKit/chromium/public/mac/WebSubstringUtil.h' \
486 '!' -path 'third_party/cld/encodings/compact_lang_det/win/cld_*.cc' \
487 '!' -path 'third_party/cld/encodings/compact_lang_det/win/cld_*.h' \
488 '!' -path 'third_party/cros_system_api/dbus/*.proto' \
489 '!' -path 'third_party/cros_system_api/dbus/service_constants.h' \
490 '!' -path 'third_party/sfntly/cpp/src/sample/chromium/*' \
491 '!' -path 'third_party/tcmalloc/chromium/*' \
492 '!' -path 'third_party/v8-i18n/tools/js2c.py' \
493 '!' -path 'third_party/webrtc/tools/tools_unittests.isolate' \
494 '!' -path 'ui/base/win/dpi.h' \
495 '!' -path 'ui/webui/resources/js/webui_resource_test.js' \
496 '!' -path 'v8/tools/js2c.py' \
497 '!' -path 'v8/tools/jsmin.py' \
498 '!' -path 'webkit/tools/test_shell/*.h' \
503 # There are directories we want to strip, but that are unnecessarily required by the build-system
504 # So we drop everything but the gyp/gypi files
505 almost_strip_dirs() {
511 third_party/cros_dbus_cplusplus \
513 find $dir -depth -mindepth 1 '!' '(' -name '*.gyp' -o -name '*.gypi' ')' -print -delete || :
517 '!' -iname '*.gyp*' \
518 '!' -path 'tools/build/*' \
519 '!' -path 'tools/clang/scripts/plugin_flags.sh' \
520 '!' -path 'tools/compile_test/compile_test.py' \
521 '!' -path 'tools/generate_library_loader/*' \
522 '!' -path 'tools/generate_shim_headers/generate_shim_headers.py' \
523 '!' -path 'tools/generate_stubs/*' \
524 '!' -path 'tools/grit/*' \
525 '!' -path 'tools/gritsettings/*' \
526 '!' -path 'tools/gyp/*' \
527 '!' -path 'tools/idl_parser/*' \
528 '!' -path 'tools/json_comment_eater/json_comment_eater.py' \
529 '!' -path 'tools/json_schema_compiler/*' \
530 '!' -path 'tools/json_to_struct/*' \
531 '!' -path 'tools/licenses.py' \
532 '!' -path 'tools/protoc_wrapper/*' \
533 '!' -path 'tools/usb_ids/*' \
534 '!' -path 'tools/uuidgen.py' \
535 '!' -path 'tools/zip2msi.py' \
540 # list based from archlinux PKGBUILD
541 # https://aur.archlinux.org/packages/ch/chromium-dev/PKGBUILD
542 clean_third_party() {
546 third_party/eyesfree \
548 third_party/iaccessible2 \
549 third_party/icon_family \
550 third_party/isimpledom \
551 third_party/jsr-305 \
552 third_party/libexif \
553 third_party/mach_override \
554 third_party/npapi/npspy \
555 third_party/re2/benchlog \
556 third_party/sqlite/*.patch \
557 third_party/sqlite/src/*.patch \
558 third_party/sudden_motion_sensor \
563 find third_party -type f \
564 '!' -iname '*.gyp*' \
565 \! -path 'third_party/WebKit/*' \
566 \! -path 'third_party/adobe/flash/*' \
567 \! -path 'third_party/angle_dx11/include/EGL/*' \
568 \! -path 'third_party/angle_dx11/include/GLSLANG/*' \
569 \! -path 'third_party/angle_dx11/src/common/*' \
570 \! -path 'third_party/angle_dx11/src/compiler/*' \
571 \! -path 'third_party/angle_dx11/src/third_party/compiler/*' \
572 \! -path 'third_party/cacheinvalidation/*' \
573 \! -path 'third_party/cld/*' \
574 \! -path 'third_party/cros_system_api/*' \
575 \! -path 'third_party/flot/*.js' \
576 \! -path 'third_party/hunspell/*' \
577 \! -path 'third_party/hyphen/*' \
578 \! -path 'third_party/iccjpeg/*' \
579 \! -path 'third_party/jstemplate/*' \
580 \! -path 'third_party/khronos/*' \
581 \! -path 'third_party/leveldatabase/*' \
582 \! -path 'third_party/libXNVCtrl/*' \
583 \! -path 'third_party/libjingle/*' \
584 \! -path 'third_party/libphonenumber/*' \
585 \! -path 'third_party/libusb/*' \
586 \! -path 'third_party/libva/*' \
587 \! -path 'third_party/libvpx/*' \
588 \! -path 'third_party/libwebp/*' \
589 \! -path 'third_party/libxml/chromium/*' \
590 \! -path 'third_party/libyuv/*' \
591 \! -path 'third_party/lss/*.h' \
592 \! -path 'third_party/lzma_sdk/*' \
593 \! -path 'third_party/mesa/src/include/GL/gl.h' \
594 \! -path 'third_party/mesa/src/include/GL/glext.h' \
595 \! -path 'third_party/mesa/src/include/GL/glx.h' \
596 \! -path 'third_party/mesa/src/include/GL/glxext.h' \
597 \! -path 'third_party/mesa/src/include/GL/osmesa.h' \
598 \! -path 'third_party/modp_b64/*' \
599 \! -path 'third_party/mt19937ar/*' \
600 \! -path 'third_party/npapi/*' \
601 \! -path 'third_party/ots/*' \
602 \! -path 'third_party/protobuf/*' \
603 \! -path 'third_party/qcms/*' \
604 \! -path 'third_party/re2/*' \
605 \! -path 'third_party/sfntly/*' \
606 \! -path 'third_party/skia/*' \
607 \! -path 'third_party/smhasher/*' \
608 \! -path 'third_party/snappy/*' \
609 \! -path 'third_party/sqlite/amalgamation/*' \
610 \! -path 'third_party/sqlite/sqlite3.h' \
611 \! -path 'third_party/sqlite/src/ext/*' \
612 \! -path 'third_party/tcmalloc/*' \
613 \! -path 'third_party/trace-viewer/*' \
614 \! -path 'third_party/undoview/*' \
615 \! -path 'third_party/usrsctp/*' \
616 \! -path 'third_party/v8-i18n/*' \
617 \! -path 'third_party/v8/*' \
618 \! -path 'third_party/webrtc/*' \
619 \! -path 'third_party/widevine/*' \
620 \! -path 'third_party/x86inc/*' \
621 \! -path 'third_party/zlib/google/*' \
624 rm -vf third_party/expat/files/lib/expat.h
627 # parts based on ubuntu debian/rules
628 # http://bazaar.launchpad.net/~chromium-team/chromium-browser/chromium-browser.head/view/head:/debian/rules
640 \) -exec rm -fv {} \;
643 # removes dir, if the bcond is not turned off
644 strip_system_dirs() {
645 local dir lib bcond args
646 # prevent "*" from being expanded in $args
650 test "$args" = "$dir" && args=
653 bcond=$(eval echo \$$lib)
654 [ "${bcond:-1}" = 0 ] && continue
656 # skip already removed dirs
657 test -d $dir || continue
659 find $dir -depth -mindepth 1 '!' '(' -name '*.gyp' -o -name '*.gypi' -o -path $dir/$lib.h $args ')' -print -delete || :
664 # remove test data and files
665 # some scanned with find -name tests -o -name test -o -name test_data -o name testdata
666 # and find -iname *test*
674 breakpad/src/client/windows/tests \
675 breakpad/src/common/linux/tests \
676 breakpad/src/common/tests \
678 chrome/browser/chromeos/bluetooth/test \
679 chrome/browser/component_updater/test \
680 chrome/browser/extensions/api/test_ \
681 chrome/browser/printing/cloud_print/test \
682 chrome/browser/resources/gaia_auth/test_ \
683 chrome/browser/resources/tracing/tests \
684 chrome/browser/sync/test \
685 chrome/browser/ui/cocoa/test \
686 chrome/browser/ui/gtk/test \
687 chrome/browser/ui/tests \
688 chrome/browser/ui/views/test \
689 chrome/installer/test \
690 chrome/test/chromeos \
691 chrome/test/data/firefox2_nss_mac \
692 chrome/test/data/safe_browsing/old \
693 chrome/test/logging/win \
694 chrome/test/pyautolib/chromeos \
695 chrome/test/webdriver/test \
699 chrome_frame/tools/test \
700 content/browser/worker_host/test \
701 content/common/gpu/testdata \
702 content/public/test \
705 device/bluetooth/test \
707 gpu/command_buffer/tests \
709 media/tools/layout_tests/test_data \
710 native_client/buildbot \
711 native_client/src/shared/platform/testdata \
712 native_client/src/trusted/gio/testdata \
713 native_client/src/trusted/interval_multiset/testdata \
714 native_client/src/trusted/service_runtime/testdata \
715 native_client/src/trusted/validator/x86/decoder/generator/testdata \
716 native_client/src/trusted/validator/x86/testing \
717 native_client/src/trusted/validator_arm/testdata \
718 native_client/src/trusted/validator_mips/testdata \
719 native_client/src/trusted/validator_x86/testdata \
720 native_client/tests \
721 native_client/tools/testdata \
722 native_client/tools/tests \
723 native_client_sdk/src/build_tools/tests \
724 native_client_sdk/src/libraries/c_salt/test \
727 ppapi/native_client/tests \
731 sandbox/linux/seccomp-legacy/tests \
732 sandbox/linux/tests \
735 sdch/open-vcdiff/testdata \
736 seccompsandbox/tests \
737 sync/internal_api/public/test \
738 sync/internal_api/test \
741 testing/gmock/scripts/test \
743 testing/gtest/scripts/test \
745 third_party/WebKit/LayoutTests \
746 third_party/WebKit/Source/JavaScriptCore/API/tests \
747 third_party/WebKit/Source/JavaScriptCore/qt/tests \
748 third_party/WebKit/Source/JavaScriptCore/tests \
749 third_party/WebKit/Source/ThirdParty/gtest/scripts/test \
750 third_party/WebKit/Source/ThirdParty/gtest/test \
751 third_party/WebKit/Source/ThirdParty/gyp/test \
752 third_party/WebKit/Source/ThirdParty/qunit/test \
753 third_party/WebKit/Source/WebCore/bindings/scripts/test \
754 third_party/WebKit/Source/WebCore/testing_ \
755 third_party/WebKit/Source/WebKit/chromium/tests \
756 third_party/WebKit/Source/WebKit/efl/tests \
757 third_party/WebKit/Source/WebKit/gtk/tests \
758 third_party/WebKit/Source/WebKit/qt/tests \
759 third_party/WebKit/Source/WebKit2/UIProcess/API/efl/tests \
760 third_party/WebKit/Source/WebKit2/UIProcess/API/gtk/tests \
761 third_party/WebKit/Source/WebKit2/UIProcess/API/qt/tests \
762 third_party/WebKit/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/mac \
763 third_party/WebKit/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/win \
764 third_party/WebKit/Tools/DumpRenderTree/TestNetscapePlugIn/mac \
765 third_party/WebKit/Tools/DumpRenderTree/TestNetscapePlugIn/win \
766 third_party/WebKit/Tools/Scripts/webkitpy/test \
767 third_party/WebKit/Tools/TestWebKitAPI/Tests/TestWebKitAPI/mac \
768 third_party/WebKit/Tools/TestWebKitAPI/Tests/WebKit/win \
769 third_party/WebKit/Tools/TestWebKitAPI/Tests/WebKit2/mac \
770 third_party/WebKit/Tools/TestWebKitAPI/Tests/WebKit2/win \
771 third_party/WebKit/Tools/TestWebKitAPI/Tests/mac \
772 third_party/WebKit/Tools/TestWebKitAPI/mac \
773 third_party/WebKit/Tools/TestWebKitAPI/win \
774 third_party/angle_dx11/tests \
775 third_party/cacheinvalidation/files/src/google/cacheinvalidation/test \
776 third_party/cacheinvalidation/src/google/cacheinvalidation/test \
777 third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/testing \
778 third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/testing/android \
779 third_party/ffmpeg/tests \
780 third_party/harfbuzz/tests \
781 third_party/hunspell/tests \
782 third_party/hyphen/tests \
783 third_party/libexif/sources/test \
784 third_party/libjingle/source/talk/app/webrtc/test \
785 third_party/libjingle/source/talk/media/testdata \
786 third_party/libphonenumber/src/resources/test \
787 third_party/libphonenumber/src/test \
788 third_party/libsrtp/srtp/crypto/test \
789 third_party/libsrtp/srtp/test \
790 third_party/libyuv/unit_test/testdata \
791 third_party/mesa/MesaLib/src/gallium/tests \
792 third_party/openssl/openssl/crypto/des/t/test \
793 third_party/openssl/openssl/test \
794 third_party/ots/test \
795 third_party/protobuf/src/google/protobuf/testdata \
796 third_party/protobuf/src/google/protobuf/testing \
797 third_party/re2/re2/testing \
798 third_party/safe_browsing/testing \
799 third_party/sfntly/cpp/src/test \
800 third_party/sqlite/src/test \
801 third_party/sqlite/test \
802 third_party/talloc/libreplace/test \
803 third_party/tcmalloc/chromium/src/tests \
804 third_party/tcmalloc/vendor/src/tests \
805 third_party/tlslite/test \
806 third_party/trace-viewer/test_data \
807 third_party/trace-viewer/third_party/pywebsocket/src/test \
808 third_party/trace-viewer/third_party/pywebsocket/src/test/testdata \
809 third_party/v8-i18n/tests \
810 third_party/webdriver/pylib/test \
811 third_party/webdriver/test_data \
812 third_party/webrtc/modules/audio_device/test/android \
813 third_party/webrtc/modules/audio_processing/test/android \
814 third_party/webrtc/modules/utility/test \
815 third_party/webrtc/modules/video_capture/main/test/android \
816 third_party/webrtc/system_wrappers/test \
817 third_party/webrtc/test/manual \
818 third_party/webrtc/test/testsupport/mac \
819 third_party/webrtc/video_engine/test/auto_test/android \
820 third_party/webrtc/voice_engine/test/android \
821 third_party/xdg-utils/tests \
822 third_party/yasm/source/patched-yasm/libyasm/tests \
823 third_party/yasm/source/patched-yasm/modules/arch/lc3b/tests \
824 third_party/yasm/source/patched-yasm/modules/arch/x86/tests \
825 third_party/yasm/source/patched-yasm/modules/dbgfmts/dwarf2/tests \
826 third_party/yasm/source/patched-yasm/modules/dbgfmts/stabs/tests \
827 third_party/yasm/source/patched-yasm/modules/objfmts/bin/tests \
828 third_party/yasm/source/patched-yasm/modules/objfmts/coff/tests \
829 third_party/yasm/source/patched-yasm/modules/objfmts/elf/tests \
830 third_party/yasm/source/patched-yasm/modules/objfmts/macho/tests \
831 third_party/yasm/source/patched-yasm/modules/objfmts/rdf/tests \
832 third_party/yasm/source/patched-yasm/modules/objfmts/win32/tests \
833 third_party/yasm/source/patched-yasm/modules/objfmts/win64/tests \
834 third_party/yasm/source/patched-yasm/modules/objfmts/xdf/tests \
835 third_party/yasm/source/patched-yasm/modules/parsers/gas/tests \
836 third_party/yasm/source/patched-yasm/modules/parsers/nasm/tests \
837 third_party/yasm/source/patched-yasm/modules/parsers/tasm/tests \
838 third_party/yasm/source/patched-yasm/modules/preprocs/nasm/tests \
839 third_party/yasm/source/patched-yasm/modules/preprocs/raw/tests \
840 third_party/yasm/source/patched-yasm/tools/python-yasm/tests \
841 tools/clang/plugins/tests \
842 tools/grit/grit/testdata \
844 tools/gyp/tools/emacs/testdata \
845 tools/page_cycler/webpagereplay/tests \
846 tools/perf_expectations/tests \
847 tools/swarm_client/tests \
856 webkit/compositor_bindings/test \
857 webkit/data/layout_tests \
858 webkit/plugins/npapi/test \
859 webkit/tools/test/reference_build \
860 webkit/tools/test_shell/mac \
865 # partial remove (keep .gyp)
867 chrome/browser/nacl_host/test \
870 third_party/webrtc/modules/audio_coding/codecs/cng/test \
871 third_party/webrtc/modules/audio_coding/codecs/g711/test \
872 third_party/webrtc/modules/audio_coding/codecs/g722/test \
873 third_party/webrtc/modules/audio_coding/codecs/ilbc/test \
874 third_party/webrtc/modules/audio_coding/codecs/isac/fix/test \
875 third_party/webrtc/modules/audio_coding/codecs/isac/main/test \
876 third_party/webrtc/modules/audio_coding/main/test \
877 third_party/webrtc/modules/audio_coding/neteq/test \
878 third_party/webrtc/modules/audio_conference_mixer/test \
879 third_party/webrtc/modules/audio_device/test \
880 third_party/webrtc/modules/audio_processing/test \
881 third_party/webrtc/modules/rtp_rtcp/test \
882 third_party/webrtc/modules/udp_transport/test \
883 third_party/webrtc/modules/video_capture/main/test \
884 third_party/webrtc/modules/video_coding/codecs/test \
885 third_party/webrtc/modules/video_coding/codecs/vp8/test \
886 third_party/webrtc/modules/video_coding/main/test \
887 third_party/webrtc/modules/video_processing/main/test \
888 third_party/webrtc/modules/video_render/main/test \
889 third_party/webrtc/video_engine/test_ \
890 third_party/webrtc/voice_engine/test \
891 tools/json_schema_compiler/test \
893 find $dir -depth -mindepth 1 '!' '(' -name '*.gyp' -o -name '*.gypi' ')' -print -delete || :
896 # link headers from system dir. too many files to patch, we don't even build tests
897 install -d testing/gtest/include
898 ln -s /usr/include/gtest testing/gtest/include/gtest
900 # delete unittest files
902 -name '*_unittest*.*' \
903 -o -name '*_unittest.*' \
904 -o -name '*_unittest' \
905 -o -name 'test_*.*' \
906 -o -name '*_test.*' \
907 ')' '!' -name '*.gyp*' \
908 '!' -name '*.isolate' \
910 '!' -path './cc/debug/test_context_provider.h' \
911 '!' -path './cc/debug/test_web_graphics_context_3d.h' \
912 '!' -path './cc/debug/*' \
913 '!' -path './chrome/browser/diagnostics/diagnostics_test.*' \
914 '!' -path './chrome/browser/extensions/api/declarative/test_rules_registry.*' \
915 '!' -path './chrome/browser/extensions/api/test/test_api.*' \
916 '!' -path './chrome/browser/resources/gaia_auth/manifest_test.json' \
917 '!' -path './chrome/browser/resources/net_internals/*' \
918 '!' -path './chrome/browser/storage_monitor/test_media_transfer_protocol_manager_linux.*' \
919 '!' -path './chrome/browser/ui/webui/test_chrome_web_ui_controller_factory*' \
920 '!' -path './chrome/common/net/test_server_locations.*' \
921 '!' -path './chrome/renderer/resources/extensions/test_custom_bindings.js' \
922 '!' -path './chrome/test/base/test_switches.*' \
923 '!' -path './chrome/test/perf/browser_perf_test.*' \
924 '!' -path './chrome/test/perf/perf_test.*' \
925 '!' -path './native_client/src/trusted/fault_injection/test_injection.*' \
926 '!' -path './native_client/src/trusted/service_runtime/env_cleanser_test.h' \
927 '!' -path './net/base/test_completion_callback.*' \
928 '!' -path './net/base/test_data_stream.*' \
929 '!' -path './net/cert/test_root_certs*' \
930 '!' -path './remoting/base/resources_unittest.*' \
931 '!' -path './testing/perf/perf_test.*' \
932 '!' -path './third_party/skia/src/gpu/gr_unittests.*' \
933 '!' -path './third_party/trace-viewer/src/base/unittest/test_error.js' \
934 '!' -path './third_party/trace-viewer/src/tracing/test_utils.js' \
935 '!' -path './tools/compile_test/compile_test.py' \
936 '!' -path './ui/compositor/test_web_graphics_context_3d.*' \
937 '!' -path './ui/webui/resources/js/webui_resource_test.js' \
938 '!' -path './webkit/browser/fileapi/*.cc' \
939 '!' -path './webkit/browser/fileapi/*.h' \
940 '!' -path './webkit/common/gpu/test_context_provider_factory.*' \
941 '!' -path './webkit/gpu/test_context_provider_factory.*' \
942 '!' -path './webkit/support/test_webkit_platform_support.h' \
943 '!' -path './webkit/tools/test_shell/*.h' \
948 native_client/src/third_party_mod/jsoncpp \
953 third_party/jsoncpp \
954 third_party/libXNVCtrl \
955 third_party/libevent \
956 third_party/libexif \
957 third_party/libjpeg \
960 third_party/libsrtp \
961 third_party/libusb_ \
963 third_party/libwebp \
964 third_party/libxslt \
967 third_party/protobuf \
973 "third_party/zlib -o -path third_party/zlib/google/*" \
975 > REMOVED-system_dirs.txt
976 remove_nonessential_dirs > REMOVED-nonessential_dirs.txt
977 almost_strip_dirs > REMOVED-stripped.txt
978 remove_bin_only > REMOVED-bin_only.txt
979 remove_tests > REMOVED-tests.txt
981 if [ "${sqlite:-1}" = 1 ]; then
982 # some code does not pass -DUSE_SYSTEM_SQLITE properly
983 ln -sf /usr/include/sqlite3.h third_party/sqlite/sqlite3.h
986 clean_third_party > REMOVED-third_party.txt
988 if [ "${v8:-1}" != "0" ]; then
989 # The implementation files include v8 headers with full path,
990 # like #include "v8/include/v8.h". Make sure the system headers
993 ln -s /usr/include v8/include
996 if [ "${nacl:-1}" != "0" ]; then
997 # NOTE: here is always x86_64
998 rm -rf native_client/toolchain/linux_x86_newlib
1001 if [ "${emptydirs:-0}" != "0" ]; then
1002 # cleanup empty dirs
1003 find -type d '!' -name '.' -print0 | sort -zr | xargs -0 rmdir --ignore-fail-on-non-empty > REMOVED-dirs.txt
1006 # report what's in them
1007 for a in REMOVED-*.txt; do