andre@0: #!/bin/sh andre@0: # Copyright (c) 2010 The Chromium Authors. All rights reserved. andre@0: # Use of this source code is governed by a BSD-style license that can be andre@0: # found in the LICENSE file. andre@0: andre@0: # This shell script checks out the NSS source tree from hg and prepares andre@0: # it for Chromium. andre@0: andre@0: # Make the script exit as soon as something fails. andre@0: set -ex andre@0: andre@0: # We only need the nss/lib directory, but hg requires us to check out the andre@0: # complete nss source tree. andre@0: rm -rf nss andre@0: hg clone -u NSS_3_16_2_BETA3 https://hg.mozilla.org/projects/nss andre@0: andre@0: # Rename one of the utf8.c files to avoid name conflict. andre@0: mv nss/lib/base/utf8.c nss/lib/base/nssutf8.c andre@0: andre@0: rm -r nss/lib/ckfw/capi andre@0: rm -r nss/lib/ckfw/dbm andre@0: rm -r nss/lib/ckfw/nssmkey andre@0: rm -r nss/lib/crmf andre@0: rm -r nss/lib/dbm andre@0: rm -r nss/lib/freebl/ecl/tests andre@0: rm -r nss/lib/freebl/mpi/doc andre@0: rm -r nss/lib/freebl/mpi/tests andre@0: rm -r nss/lib/freebl/mpi/utils andre@0: rm -r nss/lib/jar andre@0: rm -r nss/lib/pkcs12 andre@0: rm -r nss/lib/pki/doc andre@0: rm -r nss/lib/softoken/legacydb andre@0: rm -r nss/lib/sqlite andre@0: rm -r nss/lib/sysinit andre@0: rm -r nss/lib/zlib andre@0: andre@0: find nss/lib -name README -print | xargs rm andre@0: andre@0: # Remove the build system. andre@0: find nss/lib -name Makefile -print | xargs rm andre@0: find nss/lib -name manifest.mn -print | xargs rm andre@0: find nss/lib -name "*.mk" -print | xargs rm andre@0: andre@0: # Remove files for building shared libraries/DLLs. andre@0: find nss/lib -name "*.def" -print | xargs rm andre@0: find nss/lib -name "*.rc" -print | xargs rm andre@0: andre@0: # Remove obsolete files or files we don't need. andre@0: rm nss/lib/ckfw/builtins/certdata.perl andre@0: rm nss/lib/ckfw/builtins/certdata.txt andre@0: rm nss/lib/ckfw/ck.api andre@0: rm nss/lib/ckfw/ckapi.perl andre@0: rm nss/lib/util/secload.c andre@0: rm nss/lib/util/secplcy.c andre@0: rm nss/lib/util/secplcy.h andre@0: rm nss/lib/smime/*.c andre@0: andre@0: find nss/lib/ssl -type f ! -name sslerr.h | xargs rm andre@0: andre@0: find nss/lib/freebl -type f \ andre@0: ! -name aeskeywrap.c ! -name alg2268.c ! -name alghmac.c \ andre@0: ! -name alghmac.h ! -name arcfive.c ! -name arcfour.c \ andre@0: ! -name blapi.h ! -name blapii.h ! -name blapit.h \ andre@0: ! -name camellia.c ! -name camellia.h \ andre@0: ! -name ctr.c ! -name ctr.h ! -name cts.c ! -name cts.h \ andre@0: ! -name des.c ! -name des.h ! -name desblapi.c ! -name dh.c \ andre@0: ! -name drbg.c ! -name dsa.c ! -name ec.c \ andre@0: ! -name ec.h ! -name ec2.h ! -name ecdecode.c ! -name ecl-curve.h \ andre@0: ! -name ecl-exp.h ! -name ecl-priv.h ! -name ecl.c \ andre@0: ! -name ecl.c ! -name ecl.h ! -name ecl_curve.c \ andre@0: ! -name ecl_gf.c ! -name ecl_mult.c ! -name ecp.h \ andre@0: ! -name ecp_256.c ! -name ecp_256_32.c \ andre@0: ! -name ecp_384.c ! -name ecp_521.c \ andre@0: ! -name ecp_aff.c ! -name ecp_jac.c ! -name ecp_jm.c \ andre@0: ! -name ecp_mont.c ! -name ec_naf.c ! -name gcm.c ! -name gcm.h \ andre@0: ! -name hmacct.c ! -name hmacct.h \ andre@0: ! -name intel-aes-x64-masm.asm ! -name intel-aes-x86-masm.asm \ andre@0: ! -name intel-gcm-x64-masm.asm ! -name intel-gcm-x86-masm.asm \ andre@0: ! -name jpake.c ! -name md2.c \ andre@0: ! -name md5.c ! -name logtab.h ! -name mpcpucache.c \ andre@0: ! -name mpi-config.h \ andre@0: ! -name mpi-priv.h ! -name mpi.c ! -name mpi.h \ andre@0: ! -name mpi_amd64.c ! -name mpi_arm.c ! -name mpi_x86_asm.c \ andre@0: ! -name mplogic.c ! -name mplogic.h ! -name mpmontg.c \ andre@0: ! -name mpprime.c ! -name mpprime.h \ andre@0: ! -name mp_gf2m-priv.h ! -name mp_gf2m.c ! -name mp_gf2m.h \ andre@0: ! -name primes.c ! -name pqg.c ! -name pqg.h ! -name rawhash.c \ andre@0: ! -name rijndael.c ! -name rijndael.h ! -name rijndael32.tab \ andre@0: ! -name rsa.c ! -name rsapkcs.c ! -name secmpi.h \ andre@0: ! -name secrng.h ! -name seed.c ! -name seed.h \ andre@0: ! -name sha256.h ! -name sha512.c ! -name sha_fast.c \ andre@0: ! -name sha_fast.h ! -name shsign.h ! -name shvfy.c \ andre@0: ! -name sysrand.c ! -name tlsprfalg.c ! -name unix_rand.c \ andre@0: ! -name win_rand.c \ andre@0: | xargs rm