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