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() {
25 -name 'Android.mk' -o \
32 find -regextype posix-extended \
33 -regex '.*_(win|cros|mac)_.*.xtb' \
41 third_party/chromite \
43 ash/resources/default_100_percent/cros_ \
44 ash/resources/default_200_percent/cros_ \
50 breakpad/src/client/mac \
51 breakpad/src/common/android \
52 breakpad/src/common/mac \
53 breakpad/src/tools/mac \
58 chrome/app/resources/terms/chromeos \
59 chrome/app/theme/default_100_percent/cros_ \
60 chrome/app/theme/default_100_percent/mac_ \
61 chrome/app/theme/default_100_percent/win \
62 chrome/app/theme/default_200_percent/cros_ \
63 chrome/app/theme/default_200_percent/mac \
64 chrome/app/theme/default_200_percent/win \
65 chrome/app/theme/touch_100_percent/win \
66 chrome/app/theme/touch_140_percent/win \
67 chrome/app/theme/touch_180_percent/win \
68 chrome/browser/android \
69 chrome/browser/chromeos/cros \
70 chrome/browser/extensions/docs \
71 chrome/browser/history/android \
73 chrome/browser/resources/about_welcome_android \
74 chrome/browser/resources/chromeos_ \
75 chrome/browser/resources/ntp_android \
76 chrome/browser/resources/options/chromeos_ \
77 chrome/browser/resources/shared/css/chromeos \
78 chrome/browser/resources/shared/js/chromeos_ \
79 chrome/browser/ui/android \
80 chrome/browser/ui/cocoa \
81 chrome/browser/ui/webui/chromeos \
82 chrome/browser/ui/webui/ntp/android \
83 chrome/browser/ui/webui/options/chromeos \
84 chrome/common/extensions/docs \
86 chrome/installer/mac \
87 chrome/installer/mac/third_party/xz/config/mac \
88 chrome/installer/tools \
89 chrome/third_party/jstemplate/tutorial_examples \
90 third_party/jstemplate/tutorial_examples \
91 chrome/third_party/mock4js/examples \
92 chrome/third_party/wtl/ \
93 chrome/tools/build/chromeos \
94 chrome/tools/build/mac \
95 chrome/tools/build/win \
97 cloud_print/virtual_driver/win \
99 content/browser/android \
100 content/common/android \
101 content/components/navigation_interception/java \
102 content/components/web_contents_delegate_android/java \
103 content/public/android \
104 content/public/browser/android \
105 content/renderer/android \
106 content/shell/android \
111 gpu/command_buffer/docs \
113 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 \
138 net/tools/testserver \
139 npapi/npspy/windows \
143 ppapi/c/documentation \
144 ppapi/cpp/documentation \
145 ppapi/native_client/src/tools \
146 ppapi/native_client/src/trusted/plugin/win \
147 ppapi/native_client/tools \
148 remoting/host/installer/mac \
149 remoting/host/installer/win \
151 remoting/host/setup/win \
161 tcmalloc/chromium/src/windows \
162 tcmalloc/vendor/src/windows \
163 third_party/WebKit/Source/JavaScriptCore/docs \
164 third_party/WebKit/Source/JavaScriptCore/tools \
165 third_party/WebKit/Source/Platform/chromium/public/android \
166 third_party/WebKit/Source/Platform/chromium/public/mac \
167 third_party/WebKit/Source/Platform/chromium/public/win \
168 third_party/WebKit/Source/ThirdParty/gtest/samples \
169 third_party/WebKit/Source/ThirdParty/gyp/samples \
170 third_party/WebKit/Source/ThirdParty/gyp/samples/samples \
171 third_party/WebKit/Source/ThirdParty/gyp/tools \
172 third_party/WebKit/Source/WTF/wtf/mac \
173 third_party/WebKit/Source/WTF/wtf/qt \
174 third_party/WebKit/Source/WTF/wtf/threads/win \
175 third_party/WebKit/Source/WTF/wtf/win \
176 third_party/WebKit/Source/WebCore/WebCore.gyp/mac \
177 third_party/WebKit/Source/WebCore/accessibility/mac \
178 third_party/WebKit/Source/WebCore/accessibility/qt \
179 third_party/WebKit/Source/WebCore/accessibility/win \
180 third_party/WebKit/Source/WebCore/bridge/qt \
181 third_party/WebKit/Source/WebCore/editing/android \
182 third_party/WebKit/Source/WebCore/editing/mac \
183 third_party/WebKit/Source/WebCore/editing/qt \
184 third_party/WebKit/Source/WebCore/history/android \
185 third_party/WebKit/Source/WebCore/history/mac \
186 third_party/WebKit/Source/WebCore/history/qt \
187 third_party/WebKit/Source/WebCore/loader/mac \
188 third_party/WebKit/Source/WebCore/loader/win \
189 third_party/WebKit/Source/WebCore/page/android \
190 third_party/WebKit/Source/WebCore/page/mac \
191 third_party/WebKit/Source/WebCore/page/qt \
192 third_party/WebKit/Source/WebCore/page/scrolling/mac \
193 third_party/WebKit/Source/WebCore/page/win \
194 third_party/WebKit/Source/WebCore/platform/android \
195 third_party/WebKit/Source/WebCore/platform/audio/mac \
196 third_party/WebKit/Source/WebCore/platform/audio/qt \
197 third_party/WebKit/Source/WebCore/platform/cf/win \
198 third_party/WebKit/Source/WebCore/platform/cocoa \
199 third_party/WebKit/Source/WebCore/platform/graphics/ca/mac \
200 third_party/WebKit/Source/WebCore/platform/graphics/ca/win \
201 third_party/WebKit/Source/WebCore/platform/graphics/cocoa \
202 third_party/WebKit/Source/WebCore/platform/graphics/gpu/mac \
203 third_party/WebKit/Source/WebCore/platform/graphics/gpu/qt \
204 third_party/WebKit/Source/WebCore/platform/graphics/mac \
205 third_party/WebKit/Source/WebCore/platform/graphics/qt \
206 third_party/WebKit/Source/WebCore/platform/graphics/surfaces/mac \
207 third_party/WebKit/Source/WebCore/platform/graphics/surfaces/qt \
208 third_party/WebKit/Source/WebCore/platform/graphics/surfaces/win \
209 third_party/WebKit/Source/WebCore/platform/graphics/win \
210 third_party/WebKit/Source/WebCore/platform/ios \
211 third_party/WebKit/Source/WebCore/platform/mac \
212 third_party/WebKit/Source/WebCore/platform/network/android \
213 third_party/WebKit/Source/WebCore/platform/network/mac \
214 third_party/WebKit/Source/WebCore/platform/network/qt \
215 third_party/WebKit/Source/WebCore/platform/network/win \
216 third_party/WebKit/Source/WebCore/platform/qt \
217 third_party/WebKit/Source/WebCore/platform/text/android \
218 third_party/WebKit/Source/WebCore/platform/text/mac \
219 third_party/WebKit/Source/WebCore/platform/text/qt \
220 third_party/WebKit/Source/WebCore/platform/text/win \
221 third_party/WebKit/Source/WebCore/platform/win \
222 third_party/WebKit/Source/WebCore/platform/wx/wxcode/mac \
223 third_party/WebKit/Source/WebCore/platform/wx/wxcode/win \
224 third_party/WebKit/Source/WebCore/plugins/mac \
225 third_party/WebKit/Source/WebCore/plugins/qt \
226 third_party/WebKit/Source/WebCore/plugins/win \
227 third_party/WebKit/Source/WebKit/chromium/public/android \
228 third_party/WebKit/Source/WebKit/chromium/public/platform/android \
229 third_party/WebKit/Source/WebKit/chromium/public/platform/mac \
230 third_party/WebKit/Source/WebKit/chromium/public/platform/win \
231 third_party/WebKit/Source/WebKit/chromium/public/win \
232 third_party/WebKit/Source/WebKit/chromium/src/android \
233 third_party/WebKit/Source/WebKit/chromium/src/mac \
234 third_party/WebKit/Source/WebKit/chromium/src/win \
235 third_party/WebKit/Source/WebKit/gtk/docs \
236 third_party/WebKit/Source/WebKit/mac \
237 third_party/WebKit/Source/WebKit/qt \
238 third_party/WebKit/Source/WebKit/qt/docs \
239 third_party/WebKit/Source/WebKit/qt/examples \
240 third_party/WebKit/Source/WebKit/win \
241 third_party/WebKit/Source/WebKit/wx/bindings/python/samples \
242 third_party/WebKit/Source/WebKit2/Platform/CoreIPC/mac \
243 third_party/WebKit/Source/WebKit2/Platform/CoreIPC/win \
244 third_party/WebKit/Source/WebKit2/Platform/mac \
245 third_party/WebKit/Source/WebKit2/Platform/win \
246 third_party/WebKit/Source/WebKit2/PluginProcess/mac \
247 third_party/WebKit/Source/WebKit2/Shared/API/c/mac \
248 third_party/WebKit/Source/WebKit2/Shared/API/c/win \
249 third_party/WebKit/Source/WebKit2/Shared/Plugins/Netscape/mac \
250 third_party/WebKit/Source/WebKit2/Shared/Plugins/Netscape/win \
251 third_party/WebKit/Source/WebKit2/Shared/Plugins/mac \
252 third_party/WebKit/Source/WebKit2/Shared/cg/win \
253 third_party/WebKit/Source/WebKit2/Shared/mac \
254 third_party/WebKit/Source/WebKit2/Shared/win \
255 third_party/WebKit/Source/WebKit2/UIProcess/API/C/mac \
256 third_party/WebKit/Source/WebKit2/UIProcess/API/C/win \
257 third_party/WebKit/Source/WebKit2/UIProcess/API/mac \
258 third_party/WebKit/Source/WebKit2/UIProcess/Launcher/mac \
259 third_party/WebKit/Source/WebKit2/UIProcess/Launcher/win \
260 third_party/WebKit/Source/WebKit2/UIProcess/Plugins/mac \
261 third_party/WebKit/Source/WebKit2/UIProcess/Plugins/win \
262 third_party/WebKit/Source/WebKit2/UIProcess/mac \
263 third_party/WebKit/Source/WebKit2/UIProcess/win \
264 third_party/WebKit/Source/WebKit2/WebProcess/Authentication/mac \
265 third_party/WebKit/Source/WebKit2/WebProcess/Cookies/mac \
266 third_party/WebKit/Source/WebKit2/WebProcess/Downloads/cf/win \
267 third_party/WebKit/Source/WebKit2/WebProcess/Downloads/mac \
268 third_party/WebKit/Source/WebKit2/WebProcess/FullScreen/mac \
269 third_party/WebKit/Source/WebKit2/WebProcess/FullScreen/win \
270 third_party/WebKit/Source/WebKit2/WebProcess/InjectedBundle/API/c/win \
271 third_party/WebKit/Source/WebKit2/WebProcess/InjectedBundle/mac \
272 third_party/WebKit/Source/WebKit2/WebProcess/InjectedBundle/win \
273 third_party/WebKit/Source/WebKit2/WebProcess/Plugins/Netscape/mac \
274 third_party/WebKit/Source/WebKit2/WebProcess/Plugins/Netscape/win \
275 third_party/WebKit/Source/WebKit2/WebProcess/WebCoreSupport/mac \
276 third_party/WebKit/Source/WebKit2/WebProcess/WebCoreSupport/win \
277 third_party/WebKit/Source/WebKit2/WebProcess/WebPage/ca/mac \
278 third_party/WebKit/Source/WebKit2/WebProcess/WebPage/ca/win \
279 third_party/WebKit/Source/WebKit2/WebProcess/WebPage/mac \
280 third_party/WebKit/Source/WebKit2/WebProcess/WebPage/win \
281 third_party/WebKit/Source/WebKit2/WebProcess/mac \
282 third_party/WebKit/Source/WebKit2/WebProcess/win \
283 third_party/WebKit/Source/WebKit2/mac \
284 third_party/WebKit/Source/WebKit2/win \
285 third_party/WebKit/Tools/DumpRenderTree/mac \
286 third_party/WebKit/Tools/DumpRenderTree/qt \
287 third_party/WebKit/Tools/DumpRenderTree/win \
288 third_party/angle/extensions \
289 third_party/angle/samples \
290 third_party/angle/samples/gles2_book \
293 third_party/bspatch \
294 third_party/cacheinvalidation/src/example-app-build \
295 third_party/cacheinvalidation/src/java \
296 third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android \
297 third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android \
298 third_party/ffmpeg/binaries \
299 third_party/ffmpeg/chromium/binaries/Chromium/win \
300 third_party/ffmpeg/chromium/config/Chrome/mac \
301 third_party/ffmpeg/chromium/config/Chrome/win \
302 third_party/ffmpeg/chromium/config/Chromium/mac \
303 third_party/ffmpeg/chromium/config/Chromium/win \
304 third_party/ffmpeg/chromium/include/win \
305 third_party/ffmpeg/doc \
306 third_party/ffmpeg/tools \
307 third_party/fuzzymatch \
308 third_party/gles2_book \
309 third_party/gles_book_examples \
311 third_party/hunspell/dictionaries \
312 third_party/hunspell_dictionaries \
313 third_party/hyphen/doc \
314 third_party/icu/android \
315 third_party/icu/mac \
317 third_party/leveldatabase/src/doc \
318 third_party/leveldatabase/src/port/win \
319 third_party/libjingle/source/talk/examples \
320 third_party/libjpeg_turbo/mac \
321 third_party/libjpeg_turbo/win \
322 third_party/libva/va/android \
323 third_party/libvpx/source/config/mac \
324 third_party/libvpx/source/config/win \
325 third_party/libxml/mac \
326 third_party/lighttpd \
327 third_party/mesa/MesaLib/docs \
328 third_party/mesa/MesaLib/src/gallium/docs \
329 third_party/npapi/npspy/extern/java \
333 third_party/openssl/config/android \
334 third_party/ots/tools \
335 third_party/pthread \
336 third_party/pyftpdlib \
337 third_party/re2/doc \
339 third_party/sfntly/cpp/src/sfntly/tools \
340 third_party/simplejson \
341 third_party/skia/include/utils/android \
342 third_party/skia/include/utils/ios \
343 third_party/skia/include/utils/mac \
344 third_party/skia/include/utils/win \
345 third_party/skia/include/views/android \
346 third_party/skia/src/gpu/gl/android \
347 third_party/skia/src/gpu/gl/mac \
348 third_party/skia/src/gpu/gl/win \
349 third_party/skia/src/utils/ios \
350 third_party/skia/src/utils/mac \
351 third_party/skia/src/utils/win \
352 third_party/skia/src/views/ios \
353 third_party/skia/src/views/mac \
354 third_party/skia/src/views/win \
355 third_party/snappy/mac \
356 third_party/sqlite/src/doc \
357 third_party/tcmalloc/vendor/doc \
358 third_party/trace-viewer/examples \
359 third_party/trace-viewer/third_party/pywebsocket/src/example \
361 third_party/webdriver/pylib/docs \
362 third_party/webrtc/modules/audio_device/android \
363 third_party/webrtc/modules/audio_device/ios \
364 third_party/webrtc/modules/audio_device/main/source/mac \
365 third_party/webrtc/modules/audio_device/main/source/win \
366 third_party/webrtc/modules/audio_device/win \
367 third_party/webrtc/modules/video_capture/android/java \
368 third_party/webrtc/modules/video_capture/main/source/android \
369 third_party/webrtc/modules/video_render/android/java \
370 third_party/webrtc/modules/video_render/main/source/android \
371 third_party/webrtc/modules/video_render/main/source/mac \
372 third_party/webrtc/system_wrappers/source/android \
373 third_party/yasm/source/config/android \
374 third_party/yasm/source/config/mac \
375 third_party/yasm/source/config/win \
378 tools/gyp/samples/samples \
386 tools/wine_valgrind \
392 ui/resources/default_100_percent/cros_ \
393 ui/resources/default_200_percent/cros_ \
398 webkit/media/android \
399 webrtc/modules/video_capture/windows \
400 webrtc/modules/video_render/windows \
410 chrome/browser/chromeos \
411 chrome/browser/component/web_contents_delegate_android \
414 cloud_print/service/win \
415 content/browser/renderer_host/java \
417 content/renderer/java \
419 native_client/src/include/win \
420 native_client/src/trusted/service_runtime/win \
423 third_party/WebKit/Source/WebKit/chromium/public/mac \
424 third_party/WebKit/Tools \
425 third_party/cld/encodings/compact_lang_det/win \
426 third_party/cros_system_api \
427 third_party/mozc/chrome/chromeos \
428 third_party/sfntly/cpp/src/sample \
429 third_party/tcmalloc \
430 third_party/v8-i18n/tools \
431 third_party/webrtc/modules/video_coding/codecs/tools \
432 third_party/webrtc/tools \
439 '!' -path 'base/mac/bundle_locations.h' \
440 '!' -path 'base/mac/crash_logging.h' \
441 '!' -path 'base/win/windows_version.h' \
442 '!' -path 'build/android/cpufeatures.gypi' \
443 '!' -path 'chrome/browser/chromeos/contacts/contact.proto' \
444 '!' -path 'chrome/browser/chromeos/extensions/echo_private_api.h' \
445 '!' -path 'chrome/browser/chromeos/extensions/file_manager/file_browser_handler_api.h' \
446 '!' -path 'chrome/browser/chromeos/extensions/info_private_api.h' \
447 '!' -path 'chrome/browser/chromeos/extensions/media_player_api.h' \
448 '!' -path 'chrome/browser/chromeos/extensions/networking_private_api.h' \
449 '!' -path 'chrome/browser/chromeos/extensions/wallpaper_private_api.h' \
450 '!' -path 'chrome/browser/chromeos/settings/cros_settings.h' \
451 '!' -path 'chrome/browser/chromeos/settings/cros_settings_names.h' \
452 '!' -path 'chrome/browser/chromeos/settings/cros_settings_provider.h' \
453 '!' -path 'chrome/browser/chromeos/settings/device_settings_service.h' \
454 '!' -path 'chrome/tools/build/generate_policy_source.py' \
455 '!' -path 'chrome/tools/build/linux/sed.sh' \
456 '!' -path 'chrome/tools/build/make_version_cc.py' \
457 '!' -path 'chrome/tools/build/repack_locales.py' \
458 '!' -path 'chrome/tools/build/version.py' \
459 '!' -path 'chromeos/chromeos_export.h' \
460 '!' -path 'chromeos/chromeos_switches.h' \
461 '!' -path 'chromeos/dbus/dbus_client_implementation_type.h' \
462 '!' -path 'chromeos/dbus/session_manager_client.h' \
463 '!' -path 'chromeos/network/onc/onc_constants.h' \
464 '!' -path 'content/browser/renderer_host/java/java_bridge_dispatcher_host_manager.h' \
465 '!' -path 'content/common/mac/attributed_string_coder.h' \
466 '!' -path 'content/common/mac/font_descriptor.h' \
467 '!' -path 'content/renderer/java/java_bridge_dispatcher.h' \
468 '!' -path 'native_client/src/include/win/mman.h' \
469 '!' -path 'native_client/src/trusted/service_runtime/win/debug_exception_handler.h' \
470 '!' -path 'native_client/src/trusted/service_runtime/win/exception_patch/ntdll_patch.h' \
471 '!' -path 'remoting/tools/verify_resources.py' \
472 '!' -path 'sandbox/win/src/sandbox_types.h' \
473 '!' -path 'third_party/WebKit/Source/WebKit/chromium/public/mac/WebSubstringUtil.h' \
474 '!' -path 'third_party/cld/encodings/compact_lang_det/win/cld_*.cc' \
475 '!' -path 'third_party/cld/encodings/compact_lang_det/win/cld_*.h' \
476 '!' -path 'third_party/cros_system_api/dbus/*.proto' \
477 '!' -path 'third_party/cros_system_api/dbus/service_constants.h' \
478 '!' -path 'third_party/sfntly/cpp/src/sample/chromium/*' \
479 '!' -path 'third_party/tcmalloc/chromium/*' \
480 '!' -path 'third_party/v8-i18n/tools/js2c.py' \
481 '!' -path 'ui/base/win/dpi.h' \
482 '!' -path 'v8/tools/js2c.py' \
483 '!' -path 'v8/tools/jsmin.py' \
484 '!' -path 'webkit/tools/test_shell/*.h' \
489 # There are directories we want to strip, but that are unnecessarily required by the build-system
490 # So we drop everything but the gyp/gypi files
491 almost_strip_dirs() {
497 third_party/cros_dbus_cplusplus \
499 find $dir -depth -mindepth 1 '!' '(' -name '*.gyp' -o -name '*.gypi' ')' -print -delete || :
503 '!' -iname '*.gyp*' \
504 '!' -path 'tools/build/*' \
505 '!' -path 'tools/clang/scripts/plugin_flags.sh' \
506 '!' -path 'tools/compile_test/compile_test.py' \
507 '!' -path 'tools/generate_library_loader/*' \
508 '!' -path 'tools/generate_shim_headers/generate_shim_headers.py' \
509 '!' -path 'tools/generate_stubs/*' \
510 '!' -path 'tools/grit/*' \
511 '!' -path 'tools/gritsettings/*' \
512 '!' -path 'tools/gyp/*' \
513 '!' -path 'tools/json_comment_eater/json_comment_eater.py' \
514 '!' -path 'tools/json_schema_compiler/*' \
515 '!' -path 'tools/json_to_struct/*' \
516 '!' -path 'tools/licenses.py' \
517 '!' -path 'tools/protoc_wrapper/*' \
518 '!' -path 'tools/usb_ids/*' \
519 '!' -path 'tools/uuidgen.py' \
520 '!' -path 'tools/zip2msi.py' \
525 # list based from archlinux PKGBUILD
526 # https://aur.archlinux.org/packages/ch/chromium-dev/PKGBUILD
527 clean_third_party() {
531 third_party/eyesfree \
533 third_party/iaccessible2 \
534 third_party/icon_family \
535 third_party/isimpledom \
536 third_party/jsr-305 \
537 third_party/libexif \
538 third_party/mach_override \
539 third_party/npapi/npspy \
540 third_party/re2/benchlog \
541 third_party/sqlite/*.patch \
542 third_party/sqlite/src/*.patch \
543 third_party/sudden_motion_sensor \
548 find third_party -type f \
549 '!' -iname '*.gyp*' \
550 \! -path 'third_party/WebKit/*' \
551 \! -path 'third_party/adobe/flash/*' \
552 \! -path 'third_party/angle/include/EGL/*' \
553 \! -path 'third_party/angle/include/GLSLANG/*' \
554 \! -path 'third_party/angle/src/common/*' \
555 \! -path 'third_party/angle/src/compiler/*' \
556 \! -path 'third_party/angle/src/third_party/compiler/*' \
557 \! -path 'third_party/cacheinvalidation/*' \
558 \! -path 'third_party/cld/*' \
559 \! -path 'third_party/cros_system_api/*' \
560 \! -path 'third_party/flot/*.js' \
561 \! -path 'third_party/hunspell/*' \
562 \! -path 'third_party/hyphen/*' \
563 \! -path 'third_party/iccjpeg/*' \
564 \! -path 'third_party/jstemplate/*' \
565 \! -path 'third_party/khronos/*' \
566 \! -path 'third_party/leveldatabase/*' \
567 \! -path 'third_party/libXNVCtrl/*' \
568 \! -path 'third_party/libjingle/*' \
569 \! -path 'third_party/libphonenumber/*' \
570 \! -path 'third_party/libva/*' \
571 \! -path 'third_party/libvpx/*' \
572 \! -path 'third_party/libxml/chromium/*' \
573 \! -path 'third_party/libyuv/*' \
574 \! -path 'third_party/lss/*.h' \
575 \! -path 'third_party/mesa/MesaLib/include/GL/gl.h' \
576 \! -path 'third_party/mesa/MesaLib/include/GL/glext.h' \
577 \! -path 'third_party/mesa/MesaLib/include/GL/glx.h' \
578 \! -path 'third_party/mesa/MesaLib/include/GL/glxext.h' \
579 \! -path 'third_party/mesa/MesaLib/include/GL/osmesa.h' \
580 \! -path 'third_party/modp_b64/*' \
581 \! -path 'third_party/mt19937ar/*' \
582 \! -path 'third_party/npapi/*' \
583 \! -path 'third_party/ots/*' \
584 \! -path 'third_party/protobuf/*' \
585 \! -path 'third_party/qcms/*' \
586 \! -path 'third_party/re2/*' \
587 \! -path 'third_party/sfntly/*' \
588 \! -path 'third_party/skia/*' \
589 \! -path 'third_party/smhasher/*' \
590 \! -path 'third_party/snappy/*' \
591 \! -path 'third_party/sqlite/amalgamation/*' \
592 \! -path 'third_party/sqlite/sqlite3.h' \
593 \! -path 'third_party/sqlite/src/ext/*' \
594 \! -path 'third_party/tcmalloc/*' \
595 \! -path 'third_party/trace-viewer/*' \
596 \! -path 'third_party/undoview/*' \
597 \! -path 'third_party/v8-i18n/*' \
598 \! -path 'third_party/v8/*' \
599 \! -path 'third_party/webrtc/*' \
600 \! -path 'third_party/widevine/*' \
601 \! -path 'third_party/x86inc/*' \
602 \! -path 'third_party/zlib/google/*' \
605 rm -vf third_party/expat/files/lib/expat.h
608 # parts based on ubuntu debian/rules
609 # http://bazaar.launchpad.net/~chromium-team/chromium-browser/chromium-browser.head/view/head:/debian/rules
621 \) -exec rm -fv {} \;
624 # removes dir, if the bcond is not turned off
625 strip_system_dirs() {
626 local dir lib bcond args
627 # prevent "*" from being expanded in $args
631 test "$args" = "$dir" && args=
634 bcond=$(eval echo \$$lib)
635 [ "${bcond:-1}" = 0 ] && continue
637 # skip already removed dirs
638 test -d $dir || continue
640 find $dir -depth -mindepth 1 '!' '(' -name '*.gyp' -o -name '*.gypi' -o -path $dir/$lib.h $args ')' -print -delete || :
645 # remove test data and files
646 # some scanned with find -name tests -o -name test -o -name test_data -o name testdata
647 # and find -iname *test*
655 breakpad/src/client/windows/tests \
656 breakpad/src/common/linux/tests \
657 breakpad/src/common/tests \
659 chrome/browser/chromeos/bluetooth/test \
660 chrome/browser/component_updater/test \
661 chrome/browser/extensions/api/test_ \
662 chrome/browser/printing/cloud_print/test \
663 chrome/browser/resources/gaia_auth/test \
664 chrome/browser/resources/tracing/tests \
665 chrome/browser/sync/test \
666 chrome/browser/ui/cocoa/test \
667 chrome/browser/ui/gtk/test \
668 chrome/browser/ui/tests \
669 chrome/browser/ui/views/test \
670 chrome/installer/test \
671 chrome/test/chromeos \
672 chrome/test/data/firefox2_nss_mac \
673 chrome/test/data/safe_browsing/old \
674 chrome/test/logging/win \
675 chrome/test/pyautolib/chromeos \
676 chrome/test/webdriver/test \
680 chrome_frame/tools/test \
681 content/browser/worker_host/test \
682 content/common/gpu/testdata \
683 content/public/test \
686 device/bluetooth/test \
688 gpu/command_buffer/tests \
690 media/tools/layout_tests/test_data \
691 native_client/buildbot \
692 native_client/src/shared/platform/testdata \
693 native_client/src/trusted/gio/testdata \
694 native_client/src/trusted/interval_multiset/testdata \
695 native_client/src/trusted/service_runtime/testdata \
696 native_client/src/trusted/validator/x86/decoder/generator/testdata \
697 native_client/src/trusted/validator/x86/testing \
698 native_client/src/trusted/validator_arm/testdata \
699 native_client/src/trusted/validator_mips/testdata \
700 native_client/src/trusted/validator_x86/testdata \
701 native_client/tests \
702 native_client/tools/testdata \
703 native_client/tools/tests \
704 native_client_sdk/src/build_tools/tests \
705 native_client_sdk/src/libraries/c_salt/test \
708 ppapi/native_client/tests \
712 sandbox/linux/seccomp-legacy/tests \
713 sandbox/linux/tests \
716 sdch/open-vcdiff/testdata \
717 seccompsandbox/tests \
718 sync/internal_api/public/test \
719 sync/internal_api/test \
722 testing/gmock/scripts/test \
724 testing/gtest/scripts/test \
726 third_party/WebKit/LayoutTests \
727 third_party/WebKit/Source/JavaScriptCore/API/tests \
728 third_party/WebKit/Source/JavaScriptCore/qt/tests \
729 third_party/WebKit/Source/JavaScriptCore/tests \
730 third_party/WebKit/Source/ThirdParty/gtest/scripts/test \
731 third_party/WebKit/Source/ThirdParty/gtest/test \
732 third_party/WebKit/Source/ThirdParty/gyp/test \
733 third_party/WebKit/Source/ThirdParty/qunit/test \
734 third_party/WebKit/Source/WebCore/bindings/scripts/test \
735 third_party/WebKit/Source/WebCore/testing_ \
736 third_party/WebKit/Source/WebKit/chromium/tests \
737 third_party/WebKit/Source/WebKit/efl/tests \
738 third_party/WebKit/Source/WebKit/gtk/tests \
739 third_party/WebKit/Source/WebKit/qt/tests \
740 third_party/WebKit/Source/WebKit2/UIProcess/API/efl/tests \
741 third_party/WebKit/Source/WebKit2/UIProcess/API/gtk/tests \
742 third_party/WebKit/Source/WebKit2/UIProcess/API/qt/tests \
743 third_party/WebKit/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/mac \
744 third_party/WebKit/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/win \
745 third_party/WebKit/Tools/DumpRenderTree/TestNetscapePlugIn/mac \
746 third_party/WebKit/Tools/DumpRenderTree/TestNetscapePlugIn/win \
747 third_party/WebKit/Tools/Scripts/webkitpy/test \
748 third_party/WebKit/Tools/TestWebKitAPI/Tests/TestWebKitAPI/mac \
749 third_party/WebKit/Tools/TestWebKitAPI/Tests/WebKit/win \
750 third_party/WebKit/Tools/TestWebKitAPI/Tests/WebKit2/mac \
751 third_party/WebKit/Tools/TestWebKitAPI/Tests/WebKit2/win \
752 third_party/WebKit/Tools/TestWebKitAPI/Tests/mac \
753 third_party/WebKit/Tools/TestWebKitAPI/mac \
754 third_party/WebKit/Tools/TestWebKitAPI/win \
755 third_party/angle/tests \
756 third_party/cacheinvalidation/files/src/google/cacheinvalidation/test \
757 third_party/cacheinvalidation/src/google/cacheinvalidation/test \
758 third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/testing \
759 third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/testing/android \
760 third_party/ffmpeg/tests \
761 third_party/harfbuzz/tests \
762 third_party/hunspell/tests \
763 third_party/hyphen/tests \
764 third_party/libexif/sources/test \
765 third_party/libjingle/source/talk/app/webrtc/test \
766 third_party/libjingle/source/talk/media/testdata \
767 third_party/libphonenumber/src/resources/test \
768 third_party/libphonenumber/src/test \
769 third_party/libsrtp/srtp/crypto/test \
770 third_party/libsrtp/srtp/test \
771 third_party/libyuv/unit_test/testdata \
772 third_party/mesa/MesaLib/src/gallium/tests \
773 third_party/openssl/openssl/crypto/des/t/test \
774 third_party/openssl/openssl/test \
775 third_party/ots/test \
776 third_party/protobuf/src/google/protobuf/testdata \
777 third_party/protobuf/src/google/protobuf/testing \
778 third_party/re2/re2/testing \
779 third_party/safe_browsing/testing \
780 third_party/sfntly/cpp/src/test \
781 third_party/sqlite/src/test \
782 third_party/sqlite/test \
783 third_party/talloc/libreplace/test \
784 third_party/tcmalloc/chromium/src/tests \
785 third_party/tcmalloc/vendor/src/tests \
786 third_party/tlslite/test \
787 third_party/trace-viewer/test_data \
788 third_party/trace-viewer/third_party/pywebsocket/src/test \
789 third_party/trace-viewer/third_party/pywebsocket/src/test/testdata \
790 third_party/v8-i18n/tests \
791 third_party/webdriver/pylib/test \
792 third_party/webdriver/test_data \
793 third_party/webrtc/modules/audio_device/test/android \
794 third_party/webrtc/modules/audio_processing/test/android \
795 third_party/webrtc/modules/utility/test \
796 third_party/webrtc/modules/video_capture/main/test/android \
797 third_party/webrtc/system_wrappers/test \
798 third_party/webrtc/test/manual \
799 third_party/webrtc/test/testsupport/mac \
800 third_party/webrtc/video_engine/test/auto_test/android \
801 third_party/webrtc/voice_engine/test/android \
802 third_party/xdg-utils/tests \
803 third_party/yasm/source/patched-yasm/libyasm/tests \
804 third_party/yasm/source/patched-yasm/modules/arch/lc3b/tests \
805 third_party/yasm/source/patched-yasm/modules/arch/x86/tests \
806 third_party/yasm/source/patched-yasm/modules/dbgfmts/dwarf2/tests \
807 third_party/yasm/source/patched-yasm/modules/dbgfmts/stabs/tests \
808 third_party/yasm/source/patched-yasm/modules/objfmts/bin/tests \
809 third_party/yasm/source/patched-yasm/modules/objfmts/coff/tests \
810 third_party/yasm/source/patched-yasm/modules/objfmts/elf/tests \
811 third_party/yasm/source/patched-yasm/modules/objfmts/macho/tests \
812 third_party/yasm/source/patched-yasm/modules/objfmts/rdf/tests \
813 third_party/yasm/source/patched-yasm/modules/objfmts/win32/tests \
814 third_party/yasm/source/patched-yasm/modules/objfmts/win64/tests \
815 third_party/yasm/source/patched-yasm/modules/objfmts/xdf/tests \
816 third_party/yasm/source/patched-yasm/modules/parsers/gas/tests \
817 third_party/yasm/source/patched-yasm/modules/parsers/nasm/tests \
818 third_party/yasm/source/patched-yasm/modules/parsers/tasm/tests \
819 third_party/yasm/source/patched-yasm/modules/preprocs/nasm/tests \
820 third_party/yasm/source/patched-yasm/modules/preprocs/raw/tests \
821 third_party/yasm/source/patched-yasm/tools/python-yasm/tests \
822 tools/clang/plugins/tests \
823 tools/grit/grit/testdata \
825 tools/gyp/tools/emacs/testdata \
826 tools/page_cycler/webpagereplay/tests \
827 tools/perf_expectations/tests \
828 tools/swarm_client/tests \
837 webkit/compositor_bindings/test \
838 webkit/data/layout_tests \
839 webkit/plugins/npapi/test \
840 webkit/tools/test/reference_build \
841 webkit/tools/test_shell/mac \
846 # partial remove (keep .gyp)
848 chrome/browser/nacl_host/test \
851 third_party/webrtc/modules/audio_coding/codecs/cng/test \
852 third_party/webrtc/modules/audio_coding/codecs/g711/test \
853 third_party/webrtc/modules/audio_coding/codecs/g722/test \
854 third_party/webrtc/modules/audio_coding/codecs/ilbc/test \
855 third_party/webrtc/modules/audio_coding/codecs/isac/fix/test \
856 third_party/webrtc/modules/audio_coding/codecs/isac/main/test \
857 third_party/webrtc/modules/audio_coding/main/test \
858 third_party/webrtc/modules/audio_coding/neteq/test \
859 third_party/webrtc/modules/audio_conference_mixer/test \
860 third_party/webrtc/modules/audio_device/test \
861 third_party/webrtc/modules/audio_processing/test \
862 third_party/webrtc/modules/rtp_rtcp/test \
863 third_party/webrtc/modules/udp_transport/test \
864 third_party/webrtc/modules/video_capture/main/test \
865 third_party/webrtc/modules/video_coding/codecs/test \
866 third_party/webrtc/modules/video_coding/codecs/vp8/test \
867 third_party/webrtc/modules/video_coding/main/test \
868 third_party/webrtc/modules/video_processing/main/test \
869 third_party/webrtc/modules/video_render/main/test \
870 third_party/webrtc/video_engine/test \
871 third_party/webrtc/voice_engine/test \
872 tools/json_schema_compiler/test \
874 find $dir -depth -mindepth 1 '!' '(' -name '*.gyp' -o -name '*.gypi' ')' -print -delete || :
877 # link headers from system dir. too many files to patch, we don't even build tests
878 install -d testing/gtest/include
879 ln -s /usr/include/gtest testing/gtest/include/gtest
881 # delete unittest files
883 -name '*_unittest*.*' \
884 -o -name '*_unittest.*' \
885 -o -name '*_unittest' \
886 -o -name 'test_*.*' \
887 -o -name '*_test.*' \
888 ')' '!' -name '*.gyp*' \
889 '!' -name '*.isolate' \
891 '!' -path './chrome/browser/diagnostics/diagnostics_test.*' \
892 '!' -path './chrome/browser/extensions/api/declarative/test_rules_registry.*' \
893 '!' -path './chrome/browser/extensions/api/test/test_api.*' \
894 '!' -path './chrome/browser/resources/net_internals/*' \
895 '!' -path './chrome/browser/storage_monitor/test_media_transfer_protocol_manager_linux.*' \
896 '!' -path './chrome/browser/ui/webui/test_chrome_web_ui_controller_factory*' \
897 '!' -path './chrome/common/net/test_server_locations.*' \
898 '!' -path './chrome/renderer/resources/extensions/test_custom_bindings.js' \
899 '!' -path './chrome/test/base/test_switches.*' \
900 '!' -path './chrome/test/perf/browser_perf_test.*' \
901 '!' -path './chrome/test/perf/perf_test.*' \
902 '!' -path './native_client/src/trusted/fault_injection/test_injection.*' \
903 '!' -path './native_client/src/trusted/service_runtime/env_cleanser_test.h' \
904 '!' -path './net/base/test_completion_callback.*' \
905 '!' -path './net/base/test_data_stream.*' \
906 '!' -path './net/cert/test_root_certs*' \
907 '!' -path './remoting/base/resources_unittest.*' \
908 '!' -path './third_party/skia/src/gpu/gr_unittests.*' \
909 '!' -path './tools/compile_test/compile_test.py' \
910 '!' -path './ui/compositor/test_web_graphics_context_3d.*' \
911 '!' -path './webkit/fileapi/test_mount_point_provider.*' \
912 '!' -path './webkit/gpu/test_context_provider_factory.*' \
913 '!' -path './webkit/support/test_webkit_platform_support.h' \
914 '!' -path './webkit/tools/test_shell/*.h' \
919 native_client/src/third_party_mod/jsoncpp \
924 third_party/jsoncpp \
925 third_party/libXNVCtrl \
926 third_party/libevent \
927 third_party/libexif \
928 third_party/libjpeg \
931 third_party/libsrtp \
934 third_party/libwebp \
935 third_party/libxslt \
938 third_party/protobuf \
944 "third_party/zlib -o -path third_party/zlib/google/*" \
946 > REMOVED-system_dirs.txt
947 remove_nonessential_dirs > REMOVED-nonessential_dirs.txt
948 almost_strip_dirs > REMOVED-stripped.txt
949 remove_bin_only > REMOVED-bin_only.txt
950 remove_tests > REMOVED-tests.txt
952 if [ "${sqlite:-1}" = 1 ]; then
953 # some code does not pass -DUSE_SYSTEM_SQLITE properly
954 ln -sf /usr/include/sqlite3.h third_party/sqlite/sqlite3.h
957 clean_third_party > REMOVED-third_party.txt
959 if [ "${v8:-1}" != "0" ]; then
960 # The implementation files include v8 headers with full path,
961 # like #include "v8/include/v8.h". Make sure the system headers
964 ln -s /usr/include v8/include
967 if [ "${nacl:-1}" != "0" ]; then
968 # NOTE: here is always x86_64
969 rm -rf native_client/toolchain/linux_x86_newlib
972 if [ "${emptydirs:-0}" != "0" ]; then
974 find -type d '!' -name '.' -print0 | sort -zr | xargs -0 rmdir --ignore-fail-on-non-empty > REMOVED-dirs.txt
977 # report what's in them
978 for a in REMOVED-*.txt; do