0

Suppress 64-to-32 conversion warnings in courgette's divsufsort.

The list of warnings is here:

https://pastebin.com/raw/JcPPmeQj

This involved restructure courgette's dependencies to avoid cycles.

New dependency chart looks like:

                       +----------------+
                       | courgette_lib  |
                       +------+---+-----+
                              |   |
+-------------+               |   |
|   bsdiff    <---------------+   |
+---+------+--+                   |
    |      |                      |
    |      |                      |
    |   +--v---------+    +-------v----------+
    |   | divufsort* +----> courgette_common |
    |   +--+---------+    +------------------+
    |      |
    |      |
+---v------v--+
| paged_array |
+-------------+

* -Wno-shorten-64-to-32 applied here.

BUG=588506

Change-Id: Icb853d68693d51b9ef553c2fa0708ca57d126b62
Reviewed-on: https://chromium-review.googlesource.com/1197406
Commit-Queue: Will Harris <wfh@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Samuel Huang <huangs@chromium.org>
Cr-Commit-Position: refs/heads/master@{#588087}
This commit is contained in:
Will Harris
2018-08-31 18:00:28 +00:00
committed by Commit Bot
parent 57b17221d6
commit f324d18a0d

@ -15,8 +15,6 @@ static_library("courgette_lib") {
"courgette.h",
"courgette_flow.cc",
"courgette_flow.h",
"crc.cc",
"crc.h",
"difference_estimator.cc",
"difference_estimator.h",
"disassembler.cc",
@ -43,13 +41,10 @@ static_library("courgette_lib") {
"instruction_utils.h",
"label_manager.cc",
"label_manager.h",
"memory_allocator.cc",
"memory_allocator.h",
"patch_generator_x86_32.h",
"patcher_x86_32.h",
"program_detector.cc",
"program_detector.h",
"region.h",
"rel32_finder.cc",
"rel32_finder.h",
"rel32_finder_x64.cc",
@ -58,18 +53,6 @@ static_library("courgette_lib") {
"rel32_finder_x86.h",
"simple_delta.cc",
"simple_delta.h",
"streams.cc",
"streams.h",
"third_party/bsdiff/bsdiff.h",
"third_party/bsdiff/bsdiff_apply.cc",
"third_party/bsdiff/bsdiff_create.cc",
"third_party/bsdiff/bsdiff_search.h",
"third_party/bsdiff/paged_array.h",
"third_party/divsufsort/divsufsort.cc",
"third_party/divsufsort/divsufsort.h",
"third_party/divsufsort/divsufsort_private.h",
"third_party/divsufsort/sssort.cc",
"third_party/divsufsort/trsort.cc",
"types_elf.h",
"types_win_pe.h",
]
@ -78,6 +61,68 @@ static_library("courgette_lib") {
"//base",
"//third_party/lzma_sdk",
]
public_deps = [
":bsdiff",
":courgette_common",
]
}
source_set("courgette_common") {
sources = [
"crc.cc",
"crc.h",
"memory_allocator.cc",
"memory_allocator.h",
"region.h",
"streams.cc",
"streams.h",
]
deps = [
"//base",
]
}
source_set("paged_array") {
sources = [
"third_party/bsdiff/paged_array.h",
]
deps = [
"//base",
]
}
source_set("bsdiff") {
sources = [
"third_party/bsdiff/bsdiff.h",
"third_party/bsdiff/bsdiff_apply.cc",
"third_party/bsdiff/bsdiff_create.cc",
"third_party/bsdiff/bsdiff_search.h",
]
deps = [
":courgette_common",
"//base",
]
public_deps = [
":divsufsort",
":paged_array",
]
}
source_set("divsufsort") {
sources = [
"third_party/divsufsort/divsufsort.cc",
"third_party/divsufsort/divsufsort.h",
"third_party/divsufsort/divsufsort_private.h",
"third_party/divsufsort/sssort.cc",
"third_party/divsufsort/trsort.cc",
]
deps = [
":courgette_common",
":paged_array",
"//base",
]
configs += [ "//build/config/compiler:no_shorten_64_warnings" ]
}
if (!is_ios) {