]> git.pld-linux.org Git - packages/chromium-browser.git/blob - clean-source.sh
clean more files: cocoa, examples, *_test.*
[packages/chromium-browser.git] / clean-source.sh
1 #!/bin/sh
2 set -xe
3
4 export LC_ALL=C
5
6 # import options
7 # remove everything unless it's remove has been disabled with "0"
8 # "v8=0" means "do not remove v8"
9 eval "$@"
10
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
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 # suffix with _ those that we can't remove (just yet) because of the gclient
19 # hooks (see build/all.gyp) or of some unneeded deps/includes
20 remove_nonessential_dirs() {
21         local dir
22         for dir in \
23         android_webview \
24         ash/resources/default_100_percent/cros_ \
25         ash/resources/default_200_percent/cros_ \
26         ash/shell/cocoa \
27         ash/system/chromeos \
28         base/android \
29         base/chromeos \
30         base/ios \
31         base/mac_ \
32         base/win_ \
33         breakpad/src/client/mac \
34         breakpad/src/common/android \
35         breakpad/src/common/mac \
36         breakpad/src/tools/mac \
37         build/android \
38         build/mac \
39         build/win \
40         chrome/android \
41         chrome/app/android \
42         chrome/app/resources/terms/chromeos \
43         chrome/app/theme/default_100_percent/cros_ \
44         chrome/app/theme/default_100_percent/mac \
45         chrome/app/theme/default_100_percent/win \
46         chrome/app/theme/default_200_percent/cros_ \
47         chrome/app/theme/default_200_percent/mac \
48         chrome/app/theme/default_200_percent/win \
49         chrome/app/theme/touch_100_percent/win \
50         chrome/app/theme/touch_140_percent/win \
51         chrome/app/theme/touch_180_percent/win \
52         chrome/browser/android \
53         chrome/browser/chromeos/cros \
54         chrome/browser/chromeos_ \
55         chrome/browser/component/web_contents_delegate_android_ \
56         chrome/browser/extensions/docs \
57         chrome/browser/history/android \
58         chrome/browser/mac \
59         chrome/browser/resources/about_welcome_android \
60         chrome/browser/resources/chromeos_ \
61         chrome/browser/resources/ntp_android \
62         chrome/browser/resources/options/chromeos_ \
63         chrome/browser/resources/shared/css/chromeos \
64         chrome/browser/resources/shared/js/chromeos_ \
65         chrome/browser/ui/android \
66         chrome/browser/ui/cocoa \
67         chrome/browser/ui/webui/chromeos \
68         chrome/browser/ui/webui/ntp/android \
69         chrome/browser/ui/webui/options/chromeos \
70         chrome/common/extensions/docs \
71         chrome/common/mac \
72         chrome/installer/mac \
73         chrome/installer/mac/third_party/xz/config/mac \
74         chrome/third_party/jstemplate/tutorial_examples \
75         chrome/third_party/mock4js/examples \
76         chrome/third_party/wtl/ \
77         chrome/tools/build/chromeos \
78         chrome/tools/build/mac \
79         chrome/tools/build/win \
80         chrome_frame \
81         chromeos \
82         cloud_print/service/win \
83         cloud_print/virtual_driver/win \
84         content/app/android \
85         content/browser/android \
86         content/common/android \
87         content/common/mac_ \
88         content/public/android \
89         content/public/browser/android \
90         content/renderer/android \
91         content/shell/android \
92         content/shell/mac \
93         data \
94         gears \
95         google_update \
96         gpu/command_buffer/docs \
97         gpu/demos \
98         media/audio/android \
99         media/audio/ios \
100         media/audio/mac \
101         media/audio/win \
102         media/base/android \
103         media/video/capture/mac \
104         media/video/capture/win \
105         media/webm/chromeos \
106         native_client/build/mac \
107         native_client/documentation \
108         native_client/src/include/win_ \
109         native_client/src/shared/imc/win \
110         native_client/src/shared/platform/win \
111         native_client/src/trusted/debug_stub/win \
112         native_client/src/trusted/desc/win \
113         native_client/src/trusted/nonnacl_util/win \
114         native_client/src/trusted/platform_qualify/win \
115         native_client/src/trusted/service_runtime/win_ \
116         native_client/tools/trusted_cross_toolchains \
117         native_client_sdk \
118         native_client_sdk/src/libraries/win \
119         net/android \
120         o3d \
121         o3d/documentation \
122         o3d/samples \
123         ppapi/c/documentation \
124         ppapi/cpp/documentation \
125         ppapi/native_client/src/trusted/plugin/win \
126         remoting/host/installer/mac \
127         remoting/host/installer/win \
128         remoting/host/mac \
129         remoting/host/setup/win \
130         remoting/host/win \
131         rlz/examples \
132         rlz/mac \
133         rlz/win \
134         sandbox/win_ \
135         sdch/ios \
136         sdch/mac \
137         skia/config/win \
138         third_party/WebKit/Source/JavaScriptCore/docs \
139         third_party/WebKit/Source/Platform/chromium/public/android \
140         third_party/WebKit/Source/Platform/chromium/public/mac \
141         third_party/WebKit/Source/Platform/chromium/public/win \
142         third_party/WebKit/Source/WTF/wtf/mac \
143         third_party/WebKit/Source/WTF/wtf/threads/win \
144         third_party/WebKit/Source/WTF/wtf/win \
145         third_party/WebKit/Source/WebCore/WebCore.gyp/mac \
146         third_party/WebKit/Source/WebCore/accessibility/mac \
147         third_party/WebKit/Source/WebCore/accessibility/win \
148         third_party/WebKit/Source/WebCore/editing/android \
149         third_party/WebKit/Source/WebCore/editing/mac \
150         third_party/WebKit/Source/WebCore/history/android \
151         third_party/WebKit/Source/WebCore/history/mac \
152         third_party/WebKit/Source/WebCore/loader/mac \
153         third_party/WebKit/Source/WebCore/loader/win \
154         third_party/WebKit/Source/WebCore/page/android \
155         third_party/WebKit/Source/WebCore/page/mac \
156         third_party/WebKit/Source/WebCore/page/scrolling/mac \
157         third_party/WebKit/Source/WebCore/page/win \
158         third_party/WebKit/Source/WebCore/platform/android \
159         third_party/WebKit/Source/WebCore/platform/audio/mac \
160         third_party/WebKit/Source/WebCore/platform/cf/win \
161         third_party/WebKit/Source/WebCore/platform/cocoa \
162         third_party/WebKit/Source/WebCore/platform/graphics/ca/mac \
163         third_party/WebKit/Source/WebCore/platform/graphics/ca/win \
164         third_party/WebKit/Source/WebCore/platform/graphics/cocoa \
165         third_party/WebKit/Source/WebCore/platform/graphics/gpu/mac \
166         third_party/WebKit/Source/WebCore/platform/graphics/mac \
167         third_party/WebKit/Source/WebCore/platform/graphics/surfaces/mac \
168         third_party/WebKit/Source/WebCore/platform/graphics/surfaces/win \
169         third_party/WebKit/Source/WebCore/platform/graphics/win \
170         third_party/WebKit/Source/WebCore/platform/ios \
171         third_party/WebKit/Source/WebCore/platform/mac \
172         third_party/WebKit/Source/WebCore/platform/network/android \
173         third_party/WebKit/Source/WebCore/platform/network/mac \
174         third_party/WebKit/Source/WebCore/platform/network/win \
175         third_party/WebKit/Source/WebCore/platform/text/android \
176         third_party/WebKit/Source/WebCore/platform/text/mac \
177         third_party/WebKit/Source/WebCore/platform/text/win \
178         third_party/WebKit/Source/WebCore/platform/win \
179         third_party/WebKit/Source/WebCore/platform/wx/wxcode/mac \
180         third_party/WebKit/Source/WebCore/platform/wx/wxcode/win \
181         third_party/WebKit/Source/WebCore/plugins/mac \
182         third_party/WebKit/Source/WebCore/plugins/win \
183         third_party/WebKit/Source/WebKit/chromium/public/android \
184         third_party/WebKit/Source/WebKit/chromium/public/mac_ \
185         third_party/WebKit/Source/WebKit/chromium/public/platform/android \
186         third_party/WebKit/Source/WebKit/chromium/public/platform/mac \
187         third_party/WebKit/Source/WebKit/chromium/public/platform/win \
188         third_party/WebKit/Source/WebKit/chromium/public/win \
189         third_party/WebKit/Source/WebKit/chromium/src/android \
190         third_party/WebKit/Source/WebKit/chromium/src/mac \
191         third_party/WebKit/Source/WebKit/chromium/src/win \
192         third_party/WebKit/Source/WebKit/gtk/docs \
193         third_party/WebKit/Source/WebKit/mac \
194         third_party/WebKit/Source/WebKit/qt/docs \
195         third_party/WebKit/Source/WebKit/qt/examples \
196         third_party/WebKit/Source/WebKit/win \
197         third_party/WebKit/Source/WebKit2/Platform/CoreIPC/mac \
198         third_party/WebKit/Source/WebKit2/Platform/CoreIPC/win \
199         third_party/WebKit/Source/WebKit2/Platform/mac \
200         third_party/WebKit/Source/WebKit2/Platform/win \
201         third_party/WebKit/Source/WebKit2/PluginProcess/mac \
202         third_party/WebKit/Source/WebKit2/Shared/API/c/mac \
203         third_party/WebKit/Source/WebKit2/Shared/API/c/win \
204         third_party/WebKit/Source/WebKit2/Shared/Plugins/Netscape/mac \
205         third_party/WebKit/Source/WebKit2/Shared/Plugins/Netscape/win \
206         third_party/WebKit/Source/WebKit2/Shared/Plugins/mac \
207         third_party/WebKit/Source/WebKit2/Shared/cg/win \
208         third_party/WebKit/Source/WebKit2/Shared/mac \
209         third_party/WebKit/Source/WebKit2/Shared/win \
210         third_party/WebKit/Source/WebKit2/UIProcess/API/C/mac \
211         third_party/WebKit/Source/WebKit2/UIProcess/API/C/win \
212         third_party/WebKit/Source/WebKit2/UIProcess/API/mac \
213         third_party/WebKit/Source/WebKit2/UIProcess/Launcher/mac \
214         third_party/WebKit/Source/WebKit2/UIProcess/Launcher/win \
215         third_party/WebKit/Source/WebKit2/UIProcess/Plugins/mac \
216         third_party/WebKit/Source/WebKit2/UIProcess/Plugins/win \
217         third_party/WebKit/Source/WebKit2/UIProcess/mac \
218         third_party/WebKit/Source/WebKit2/UIProcess/win \
219         third_party/WebKit/Source/WebKit2/WebProcess/Authentication/mac \
220         third_party/WebKit/Source/WebKit2/WebProcess/Cookies/mac \
221         third_party/WebKit/Source/WebKit2/WebProcess/Downloads/cf/win \
222         third_party/WebKit/Source/WebKit2/WebProcess/Downloads/mac \
223         third_party/WebKit/Source/WebKit2/WebProcess/FullScreen/mac \
224         third_party/WebKit/Source/WebKit2/WebProcess/FullScreen/win \
225         third_party/WebKit/Source/WebKit2/WebProcess/InjectedBundle/API/c/win \
226         third_party/WebKit/Source/WebKit2/WebProcess/InjectedBundle/mac \
227         third_party/WebKit/Source/WebKit2/WebProcess/InjectedBundle/win \
228         third_party/WebKit/Source/WebKit2/WebProcess/Plugins/Netscape/mac \
229         third_party/WebKit/Source/WebKit2/WebProcess/Plugins/Netscape/win \
230         third_party/WebKit/Source/WebKit2/WebProcess/WebCoreSupport/mac \
231         third_party/WebKit/Source/WebKit2/WebProcess/WebCoreSupport/win \
232         third_party/WebKit/Source/WebKit2/WebProcess/WebPage/ca/mac \
233         third_party/WebKit/Source/WebKit2/WebProcess/WebPage/ca/win \
234         third_party/WebKit/Source/WebKit2/WebProcess/WebPage/mac \
235         third_party/WebKit/Source/WebKit2/WebProcess/WebPage/win \
236         third_party/WebKit/Source/WebKit2/WebProcess/mac \
237         third_party/WebKit/Source/WebKit2/WebProcess/win \
238         third_party/WebKit/Source/WebKit2/mac \
239         third_party/WebKit/Source/WebKit2/win \
240         third_party/WebKit/Tools/DumpRenderTree/mac \
241         third_party/WebKit/Tools/DumpRenderTree/win \
242         third_party/angle/samples/gles2_book \
243         third_party/boost \
244         third_party/bsdiff \
245         third_party/bspatch \
246         third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/external/client/android \
247         third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/ticl/android \
248         third_party/cld/encodings/compact_lang_det/win_ \
249         third_party/cros_system_api_ \
250         third_party/ffmpeg/binaries \
251         third_party/ffmpeg/chromium/binaries/Chromium/win \
252         third_party/ffmpeg/chromium/config/Chrome/mac \
253         third_party/ffmpeg/chromium/config/Chrome/win \
254         third_party/ffmpeg/chromium/config/Chromium/mac \
255         third_party/ffmpeg/chromium/config/Chromium/win \
256         third_party/ffmpeg/chromium/include/win \
257         third_party/ffmpeg/doc \
258         third_party/fuzzymatch \
259         third_party/gles2_book \
260         third_party/gles_book_examples \
261         third_party/gold \
262         third_party/hunspell/dictionaries \
263         third_party/hunspell_dictionaries \
264         third_party/hyphen/doc \
265         third_party/icu/android \
266         third_party/icu/mac \
267         third_party/lcov \
268         third_party/leveldatabase/src/doc \
269         third_party/leveldatabase/src/port/win \
270         third_party/libjingle/source/talk/examples \
271         third_party/libjpeg_turbo/mac \
272         third_party/libjpeg_turbo/win \
273         third_party/libva/va/android \
274         third_party/libvpx/source/config/mac \
275         third_party/libvpx/source/config/win \
276         third_party/libxml/mac \
277         third_party/lighttpd \
278         third_party/mesa/MesaLib/docs \
279         third_party/mesa/MesaLib/docs \
280         third_party/mesa/MesaLib/src/gallium/docs \
281         third_party/mozc/chrome/chromeos_ \
282         third_party/nspr \
283         third_party/nss \
284         third_party/ocmock \
285         third_party/openssl/config/android \
286         third_party/pthread \
287         third_party/pyftpdlib \
288         third_party/re2/doc \
289         third_party/scons \
290         third_party/simplejson \
291         third_party/skia/include/utils/android \
292         third_party/skia/include/utils/ios \
293         third_party/skia/include/utils/mac \
294         third_party/skia/include/utils/win \
295         third_party/skia/include/views/android \
296         third_party/skia/src/gpu/gl/android \
297         third_party/skia/src/gpu/gl/mac \
298         third_party/skia/src/gpu/gl/win \
299         third_party/skia/src/utils/ios \
300         third_party/skia/src/utils/mac \
301         third_party/skia/src/utils/win \
302         third_party/skia/src/views/ios \
303         third_party/skia/src/views/mac \
304         third_party/skia/src/views/win \
305         third_party/snappy/mac \
306         third_party/sqlite/src/doc \
307         third_party/tcmalloc/vendor/doc \
308         third_party/tcmalloc_ \
309         third_party/trace-viewer/examples \
310         third_party/trace-viewer/third_party/pywebsocket/src/example \
311         third_party/vc_80 \
312         third_party/webdriver/pylib/docs \
313         third_party/webrtc/modules/audio_device/android \
314         third_party/webrtc/modules/audio_device/ios \
315         third_party/webrtc/modules/audio_device/main/source/mac \
316         third_party/webrtc/modules/audio_device/main/source/win \
317         third_party/webrtc/modules/audio_device/win \
318         third_party/webrtc/modules/video_capture/main/source/android \
319         third_party/webrtc/modules/video_render/main/source/android \
320         third_party/webrtc/modules/video_render/main/source/mac \
321         third_party/webrtc/system_wrappers/source/android \
322         third_party/yasm/source/config/android \
323         third_party/yasm/source/config/mac \
324         third_party/yasm/source/config/win \
325         tools/android \
326         tools/mac \
327         tools/site_compare \
328         tools/stats_viewer \
329         tools/symsrc \
330         tools/valgrind \
331         tools/win \
332         tools/wine_valgrind \
333         ui/android \
334         ui/base/cocoa \
335         ui/base/ime/win \
336         ui/base/win_ \
337         ui/gfx/android \
338         ui/gfx/mac \
339         ui/resources/default_100_percent/cros_ \
340         ui/resources/default_200_percent/cros_ \
341         ui/views/examples \
342         ui/views/win \
343         webkit/chromeos \
344         webkit/media/android \
345         win8 \
346         ; do
347                 rm -vfr "$dir"
348         done
349 }
350
351 # There are directories we want to strip, but that are unnecessarily required by the build-system
352 # So we drop everything but the gyp/gypi files
353 almost_strip_dirs() {
354         local dir
355         for dir in \
356                 breakpad \
357                 build/ios \
358                 courgette \
359                 third_party/cros_dbus_cplusplus \
360                 ; do
361                 find $dir -depth -mindepth 1 \! \( -name '*.gyp' -o -name '*.gypi' \) -print -delete || :
362         done
363
364         find tools -type f \
365                 '!' -iname '*.gyp*' \
366                 '!' -path 'tools/build/*' \
367                 '!' -path 'tools/clang/scripts/plugin_flags.sh' \
368                 '!' -path 'tools/generate_stubs/*' \
369                 '!' -path 'tools/grit/*' \
370                 '!' -path 'tools/gritsettings/*' \
371                 '!' -path 'tools/gyp/*' \
372                 '!' -path 'tools/json_comment_eater.py' \
373                 '!' -path 'tools/json_schema_compiler/*' \
374                 '!' -path 'tools/protoc_wrapper/*' \
375                 '!' -path 'tools/uuidgen.py' \
376                 '!' -path 'tools/zip2msi.py' \
377                 -print -delete
378 }
379
380 # clean third party
381 # list based from archlinux PKGBUILD
382 # https://aur.archlinux.org/packages/ch/chromium-dev/PKGBUILD
383 clean_third_party() {
384         find third_party -type f \! -iname '*.gyp*' \
385                 \! -path 'third_party/WebKit/*' \
386                 \! -path 'third_party/adobe/flash/*' \
387                 \! -path 'third_party/angle/*' \
388                 \! -path 'third_party/cacheinvalidation/*' \
389                 \! -path 'third_party/cld/*' \
390                 \! -path 'third_party/cros_system_api/*' \
391                 \! -path 'third_party/ffmpeg/*' \
392                 \! -path 'third_party/flac/flac.h' \
393                 \! -path 'third_party/flot/*' \
394                 \! -path 'third_party/harfbuzz-ng/*' \
395                 \! -path 'third_party/harfbuzz/*' \
396                 \! -path 'third_party/hunspell/*' \
397                 \! -path 'third_party/hyphen/*' \
398                 \! -path 'third_party/iccjpeg/*' \
399                 \! -path 'third_party/khronos/*' \
400                 \! -path 'third_party/leveldatabase/*' \
401                 \! -path 'third_party/libXNVCtrl/*' \
402                 \! -path 'third_party/libjingle/*' \
403                 \! -path 'third_party/libphonenumber/*' \
404                 \! -path 'third_party/libusb/libusb.h' \
405                 \! -path 'third_party/libva/*' \
406                 \! -path 'third_party/libvpx/libvpx.h' \
407                 \! -path 'third_party/libxml/chromium/*' \
408                 \! -path 'third_party/libyuv/*' \
409                 \! -path 'third_party/lss/*' \
410                 \! -path 'third_party/mesa/*' \
411                 \! -path 'third_party/modp_b64/*' \
412                 \! -path 'third_party/mt19937ar/*' \
413                 \! -path 'third_party/npapi/*' \
414                 \! -path 'third_party/opus/opus.h*' \
415                 \! -path 'third_party/ots/*' \
416                 \! -path 'third_party/protobuf/*' \
417                 \! -path 'third_party/qcms/*' \
418                 \! -path 'third_party/re2/*' \
419                 \! -path 'third_party/sfntly/*' \
420                 \! -path 'third_party/skia/*' \
421                 \! -path 'third_party/smhasher/*' \
422                 \! -path 'third_party/speex/speex.h' \
423                 \! -path 'third_party/sqlite/*' \
424                 \! -path 'third_party/tcmalloc/*' \
425                 \! -path 'third_party/trace-viewer/*' \
426                 \! -path 'third_party/undoview/*' \
427                 \! -path 'third_party/v8-i18n/*' \
428                 \! -path 'third_party/v8/*' \
429                 \! -path 'third_party/webrtc/*' \
430                 \! -path 'third_party/widevine/*' \
431                 -print -delete
432
433         rm -vf third_party/expat/files/lib/expat.h
434 }
435
436 # parts based on ubuntu debian/rules
437 # http://bazaar.launchpad.net/~chromium-team/chromium-browser/chromium-browser.head/view/head:/debian/rules
438 remove_bin_only() {
439         find -type f \( \
440                 -iname \*.exe -o \
441                 -iname \*.dll -o \
442                 -iname \*.pdb -o \
443                 -name \*.o -o \
444                 -name \*.a -o \
445                 -name \*.dylib \
446         \) -exec rm -fv {} \;
447 }
448
449 # removes dir, if the bcond is not turned off
450 strip_system_dirs() {
451         local dir lib bcond
452         for dir in "$@"; do
453                 lib=${dir##*/}
454                 bcond=$(eval echo \$$lib)
455                 [ "${bcond:-1}" = 0 ] && continue
456
457                 # skip already removed dirs
458                 test -d $dir || continue
459
460                 find $dir -depth -mindepth 1 \! \( -name '*.gyp' -o -name '*.gypi' -o -path $dir/$lib.h \) -print -delete
461         done
462 }
463
464 # remove test data and files
465 # some scanned with find -name tests -o -name test -o -name test_data -o name testdata
466 # and find -iname *test*
467 remove_tests() {
468         local dir
469
470         # full remove
471         for dir in \
472         ash/test \
473         base/test \
474         breakpad/src/client/windows/tests \
475         breakpad/src/common/linux/tests \
476         breakpad/src/common/tests \
477         cc/test \
478         chrome/browser/chromeos/bluetooth/test \
479         chrome/browser/component_updater/test \
480         chrome/browser/extensions/api/test_ \
481         chrome/browser/printing/cloud_print/test \
482         chrome/browser/resources/gaia_auth/test \
483         chrome/browser/resources/tracing/tests \
484         chrome/browser/sync/test \
485         chrome/browser/ui/cocoa/test \
486         chrome/browser/ui/gtk/test \
487         chrome/browser/ui/tests \
488         chrome/browser/ui/views/test \
489         chrome/installer/test \
490         chrome/test/chromeos \
491         chrome/test/data/firefox2_nss_mac \
492         chrome/test/data/safe_browsing/old \
493         chrome/test/logging/win \
494         chrome/test/pyautolib/chromeos \
495         chrome/test/webdriver/test \
496         chrome/test_ \
497         chrome/tools/test \
498         chrome_frame/test \
499         chrome_frame/tools/test \
500         content/browser/worker_host/test \
501         content/common/gpu/testdata \
502         content/public/test \
503         content/test \
504         courgette/testdata \
505         device/bluetooth/test \
506         device/test \
507         gpu/command_buffer/tests \
508         media/test \
509         media/tools/layout_tests/test_data \
510         native_client/buildbot \
511         native_client/src/shared/platform/testdata \
512         native_client/src/trusted/gio/testdata \
513         native_client/src/trusted/interval_multiset/testdata \
514         native_client/src/trusted/service_runtime/testdata \
515         native_client/src/trusted/validator/x86/decoder/generator/testdata \
516         native_client/src/trusted/validator/x86/testing \
517         native_client/src/trusted/validator_arm/testdata \
518         native_client/src/trusted/validator_mips/testdata \
519         native_client/src/trusted/validator_x86/testdata \
520         native_client/tests \
521         native_client/tools/testdata \
522         native_client/tools/tests \
523         native_client_sdk/src/build_tools/tests \
524         native_client_sdk/src/libraries/c_salt/test \
525         net/test \
526         o3d/tests \
527         ppapi/native_client/tests \
528         ppapi/tests \
529         printing/test \
530         rlz/test \
531         sandbox/linux/seccomp-legacy/tests \
532         sandbox/linux/tests \
533         sandbox/tests \
534         sandbox/win/tests \
535         sdch/open-vcdiff/testdata \
536         seccompsandbox/tests \
537         sync/internal_api/public/test \
538         sync/internal_api/test \
539         sync/test \
540         testing/android \
541         testing/gmock/scripts/test \
542         testing/gmock/test \
543         testing/gtest/scripts/test \
544         testing/gtest/test \
545         third_party/WebKit/LayoutTests \
546         third_party/WebKit/Source/JavaScriptCore/API/tests \
547         third_party/WebKit/Source/JavaScriptCore/qt/tests \
548         third_party/WebKit/Source/JavaScriptCore/tests \
549         third_party/WebKit/Source/ThirdParty/gtest/scripts/test \
550         third_party/WebKit/Source/ThirdParty/gtest/test \
551         third_party/WebKit/Source/ThirdParty/gyp/test \
552         third_party/WebKit/Source/ThirdParty/qunit/test \
553         third_party/WebKit/Source/WebCore/bindings/scripts/test \
554         third_party/WebKit/Source/WebCore/testing_ \
555         third_party/WebKit/Source/WebKit/chromium/tests \
556         third_party/WebKit/Source/WebKit/efl/tests \
557         third_party/WebKit/Source/WebKit/gtk/tests \
558         third_party/WebKit/Source/WebKit/qt/tests \
559         third_party/WebKit/Source/WebKit2/UIProcess/API/efl/tests \
560         third_party/WebKit/Source/WebKit2/UIProcess/API/gtk/tests \
561         third_party/WebKit/Source/WebKit2/UIProcess/API/qt/tests \
562         third_party/WebKit/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/mac \
563         third_party/WebKit/Tools/DumpRenderTree/TestNetscapePlugIn/Tests/win \
564         third_party/WebKit/Tools/DumpRenderTree/TestNetscapePlugIn/mac \
565         third_party/WebKit/Tools/DumpRenderTree/TestNetscapePlugIn/win \
566         third_party/WebKit/Tools/Scripts/webkitpy/test \
567         third_party/WebKit/Tools/TestWebKitAPI/Tests/TestWebKitAPI/mac \
568         third_party/WebKit/Tools/TestWebKitAPI/Tests/WebKit/win \
569         third_party/WebKit/Tools/TestWebKitAPI/Tests/WebKit2/mac \
570         third_party/WebKit/Tools/TestWebKitAPI/Tests/WebKit2/win \
571         third_party/WebKit/Tools/TestWebKitAPI/Tests/mac \
572         third_party/WebKit/Tools/TestWebKitAPI/mac \
573         third_party/WebKit/Tools/TestWebKitAPI/win \
574         third_party/angle/tests \
575         third_party/cacheinvalidation/files/src/google/cacheinvalidation/test \
576         third_party/cacheinvalidation/src/google/cacheinvalidation/test \
577         third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/testing \
578         third_party/cacheinvalidation/src/java/com/google/ipc/invalidation/testing/android \
579         third_party/ffmpeg/tests \
580         third_party/harfbuzz/tests \
581         third_party/hunspell/tests \
582         third_party/hyphen/tests \
583         third_party/libexif/sources/test \
584         third_party/libjingle/source/talk/app/webrtc/test \
585         third_party/libjingle/source/talk/media/testdata \
586         third_party/libphonenumber/src/resources/test \
587         third_party/libphonenumber/src/test \
588         third_party/libsrtp/srtp/crypto/test \
589         third_party/libsrtp/srtp/test \
590         third_party/libyuv/unit_test/testdata \
591         third_party/mesa/MesaLib/src/gallium/tests \
592         third_party/openssl/openssl/crypto/des/t/test \
593         third_party/openssl/openssl/test \
594         third_party/ots/test \
595         third_party/protobuf/src/google/protobuf/testdata \
596         third_party/protobuf/src/google/protobuf/testing \
597         third_party/re2/re2/testing \
598         third_party/safe_browsing/testing \
599         third_party/sfntly/cpp/src/test \
600         third_party/sqlite/src/test \
601         third_party/sqlite/test \
602         third_party/talloc/libreplace/test \
603         third_party/tcmalloc/chromium/src/tests \
604         third_party/tcmalloc/vendor/src/tests \
605         third_party/tlslite/test \
606         third_party/trace-viewer/test_data \
607         third_party/trace-viewer/third_party/pywebsocket/src/test \
608         third_party/trace-viewer/third_party/pywebsocket/src/test/testdata \
609         third_party/v8-i18n/tests \
610         third_party/webdriver/pylib/test \
611         third_party/webdriver/test_data \
612         third_party/webrtc/modules/audio_device/test/android \
613         third_party/webrtc/modules/audio_processing/test/android \
614         third_party/webrtc/modules/utility/test \
615         third_party/webrtc/modules/video_capture/main/test/android \
616         third_party/webrtc/system_wrappers/test \
617         third_party/webrtc/test \
618         third_party/webrtc/test/testsupport/mac \
619         third_party/webrtc/video_engine/test/android \
620         third_party/webrtc/video_engine/test/auto_test/android \
621         third_party/webrtc/voice_engine/test/android \
622         third_party/xdg-utils/tests \
623         third_party/yasm/source/patched-yasm/libyasm/tests \
624         third_party/yasm/source/patched-yasm/modules/arch/lc3b/tests \
625         third_party/yasm/source/patched-yasm/modules/arch/x86/tests \
626         third_party/yasm/source/patched-yasm/modules/dbgfmts/dwarf2/tests \
627         third_party/yasm/source/patched-yasm/modules/dbgfmts/stabs/tests \
628         third_party/yasm/source/patched-yasm/modules/objfmts/bin/tests \
629         third_party/yasm/source/patched-yasm/modules/objfmts/coff/tests \
630         third_party/yasm/source/patched-yasm/modules/objfmts/elf/tests \
631         third_party/yasm/source/patched-yasm/modules/objfmts/macho/tests \
632         third_party/yasm/source/patched-yasm/modules/objfmts/rdf/tests \
633         third_party/yasm/source/patched-yasm/modules/objfmts/win32/tests \
634         third_party/yasm/source/patched-yasm/modules/objfmts/win64/tests \
635         third_party/yasm/source/patched-yasm/modules/objfmts/xdf/tests \
636         third_party/yasm/source/patched-yasm/modules/parsers/gas/tests \
637         third_party/yasm/source/patched-yasm/modules/parsers/nasm/tests \
638         third_party/yasm/source/patched-yasm/modules/parsers/tasm/tests \
639         third_party/yasm/source/patched-yasm/modules/preprocs/nasm/tests \
640         third_party/yasm/source/patched-yasm/modules/preprocs/raw/tests \
641         third_party/yasm/source/patched-yasm/tools/python-yasm/tests \
642         tools/clang/plugins/tests \
643         tools/grit/grit/testdata \
644         tools/gyp/test \
645         tools/gyp/tools/emacs/testdata \
646         tools/page_cycler/webpagereplay/tests \
647         tools/perf_expectations/tests \
648         tools/swarm_client/tests \
649         ui/app_list/test \
650         ui/aura/test \
651         ui/base/test \
652         ui/compositor/test \
653         ui/gfx/test \
654         ui/test \
655         ui/views/test \
656         v8/test \
657         webkit/compositor_bindings/test \
658         webkit/data/layout_tests \
659         webkit/plugins/npapi/test \
660         webkit/tools/test/reference_build \
661         webkit/tools/test_shell/mac \
662         ; do
663                 rm -vfr "$dir"
664         done
665
666         # partial remove (keep .gyp)
667         for dir in \
668                 chrome/browser/nacl_host/test \
669                 chrome/test/data \
670                 testing \
671                 third_party/webrtc/modules/audio_coding/codecs/cng/test \
672                 third_party/webrtc/modules/audio_coding/codecs/g711/test \
673                 third_party/webrtc/modules/audio_coding/codecs/g722/test \
674                 third_party/webrtc/modules/audio_coding/codecs/ilbc/test \
675                 third_party/webrtc/modules/audio_coding/codecs/isac/fix/test \
676                 third_party/webrtc/modules/audio_coding/codecs/isac/main/test \
677                 third_party/webrtc/modules/audio_coding/main/test \
678                 third_party/webrtc/modules/audio_coding/neteq/test \
679                 third_party/webrtc/modules/audio_conference_mixer/test \
680                 third_party/webrtc/modules/audio_device/test \
681                 third_party/webrtc/modules/audio_processing/test \
682                 third_party/webrtc/modules/rtp_rtcp/test \
683                 third_party/webrtc/modules/udp_transport/test \
684                 third_party/webrtc/modules/video_capture/main/test \
685                 third_party/webrtc/modules/video_coding/codecs/test \
686                 third_party/webrtc/modules/video_coding/codecs/vp8/test \
687                 third_party/webrtc/modules/video_coding/main/test \
688                 third_party/webrtc/modules/video_processing/main/test \
689                 third_party/webrtc/modules/video_render/main/test \
690                 third_party/webrtc/video_engine/test \
691                 third_party/webrtc/voice_engine/test \
692                 tools/json_schema_compiler/test \
693                 ; do
694                 find $dir -depth -mindepth 1 '!' '(' -name '*.gyp' -o -name '*.gypi' ')' -print -delete || :
695         done
696
697         # link headers from system dir. too many files to patch, we don't even build tests
698         install -d testing/gtest/include
699         ln -s /usr/include/gtest testing/gtest/include/gtest
700
701         # delete unittest files
702         find . '(' \
703                 -name '*_unittest*.*' \
704                 -name '*_unittest.*' \
705                 -o -name '*_test.*' \
706         ')' '!' -name '*.gyp*' \
707                 '!' -path './native_client/src/trusted/service_runtime/env_cleanser_test.h' \
708                 '!' -path './chrome/browser/diagnostics/diagnostics_test.*' \
709                 '!' -path './chrome/test/perf/perf_test.*' \
710                 '!' -path './chrome/test/perf/browser_perf_test.*' \
711         -print -delete
712 }
713
714 remove_nonessential_dirs > REMOVED-nonessential_dirs.txt
715 almost_strip_dirs > REMOVED-stripped.txt
716 remove_bin_only > REMOVED-bin_only.txt
717 remove_tests > REMOVED-tests.txt
718
719 strip_system_dirs \
720         native_client/src/third_party_mod/jsoncpp \
721         third_party/bzip2 \
722         third_party/flac \
723         third_party/icu \
724         third_party/jsoncpp \
725         third_party/libevent \
726         third_party/libexif \
727         third_party/libjpeg \
728         third_party/libmtp \
729         third_party/libpng \
730         third_party/libsrtp \
731         third_party/libusb \
732         third_party/libvpx \
733         third_party/libwebp \
734         third_party/libxml_ \
735         third_party/libxslt \
736         third_party/opus \
737         third_party/protobuf \
738         third_party/speex \
739         third_party/yasm \
740         third_party/zlib \
741         v8 \
742 > REMOVED-system_dirs.txt
743
744 clean_third_party > REMOVED-third_party.txt
745
746 if [ "${v8:-1}" != "0" ]; then
747         # The implementation files include v8 headers with full path,
748         # like #include "v8/include/v8.h". Make sure the system headers
749         # will be used.
750         rm -rf v8/include
751         ln -s /usr/include v8/include
752 fi
753
754 if [ "${nacl:-1}" != "0" ]; then
755         # NOTE: here is always x86_64
756         rm -rf native_client/toolchain/linux_x86_newlib
757 fi
758
759 # cleanup empty dirs
760 find -type d '!' -name '.' -print0 | sort -zr | xargs -0 rmdir --ignore-fail-on-non-empty > REMOVED-dirs.txt
761
762 # report what's in them
763 for a in REMOVED-*.txt; do
764         cat $a
765 done
This page took 0.113214 seconds and 4 git commands to generate.