naiveproxy/net/tools/tld_cleanup
2018-08-11 05:35:24 +00:00
..
BUILD.gn Import chromium-68.0.3440.106 2018-08-11 05:35:24 +00:00
OWNERS Import chromium-68.0.3440.106 2018-08-11 05:35:24 +00:00
README Import chromium-68.0.3440.106 2018-08-11 05:35:24 +00:00
tld_cleanup_util.cc Import chromium-68.0.3440.106 2018-08-11 05:35:24 +00:00
tld_cleanup_util.h Import chromium-68.0.3440.106 2018-08-11 05:35:24 +00:00
tld_cleanup.cc Import chromium-68.0.3440.106 2018-08-11 05:35:24 +00:00

When updating src/net/base/registry_controlled_domains/effective_tld_names.dat:

1. Obtain the new effective_tld_names.dat, probably by downloading
   https://publicsuffix.org/list/public_suffix_list.dat

2. Remove whitespace from the ends of the lines.
   You could possibly use something like:
     sed -i -e "s/\s*$//g" \
         src/net/base/registry_controlled_domains/effective_tld_names.dat

3. Add the Chromium note back in just after the license at the top, and just
   before '===BEGIN ICANN DOMAINS==='. Ensure there is an empty line above and
   two empty lines below the note. The note should say:
// Chromium note: this is based on Mozilla's file:
// https://publicsuffix.org/list/public_suffix_list.dat

4. Build tld_cleanup (the "(net)" > "tld_cleanup" project)

5. Run it (no arguments needed), typically from src/build/Release or
   src/build/Debug. It will re-generate
   src/net/base/registry_controlled_domains/effective_tld_names.gperf.

6. Check in the updated effective_tld_names.dat, effective_tld_names.gperf

Note that gperf is no longer used for effective_tld_names, but when building
chromium the file effective_tld_names.gperf will be parsed by make_dafsa.py
to generate the file effective_tld_names-inc.cc, which is included in
registry_controlled_domain.cc