rjw | 6c1fd8f | 2022-11-30 14:33:01 +0800 | [diff] [blame] | 1 | #!/usr/bin/perl
|
| 2 | #
|
| 3 | # Copyright Statement:
|
| 4 | # --------------------
|
| 5 | # This software is protected by Copyright and the information contained
|
| 6 | # herein is confidential. The software may not be copied and the information
|
| 7 | # contained herein may not be used or disclosed except with the written
|
| 8 | # permission of MediaTek Inc. (C) 2005
|
| 9 | #
|
| 10 | # BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
|
| 11 | # THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
|
| 12 | # RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
|
| 13 | # AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
|
| 14 | # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
|
| 15 | # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
|
| 16 | # NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
|
| 17 | # SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
|
| 18 | # SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
|
| 19 | # THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
|
| 20 | # NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
|
| 21 | # SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
|
| 22 | #
|
| 23 | # BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
|
| 24 | # LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
|
| 25 | # AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
|
| 26 | # OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
|
| 27 | # MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
|
| 28 | #
|
| 29 | # THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
|
| 30 | # WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
|
| 31 | # LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
|
| 32 | # RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
|
| 33 | # THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
|
| 34 | #
|
| 35 | #
|
| 36 | &Usage if ($#ARGV == -1);
|
| 37 | if ($ARGV[0] eq "-rm") {
|
| 38 | $cphdr = 0;
|
| 39 | } elsif ($ARGV[0] eq "-cp") {
|
| 40 | $cphdr = 1;
|
| 41 | } else {
|
| 42 | Usage();
|
| 43 | }
|
| 44 |
|
| 45 | @mapDirs = (
|
| 46 | [ qw(MinGW_Slim pcore\tools\MinGW) ],
|
| 47 | [ qw(msys_Slim\1.0 pcore\tools\MSYS) ],
|
| 48 | [ qw(make make) ],
|
| 49 | );
|
| 50 |
|
| 51 | @mapFiles = (
|
| 52 | [ qw(Scripts\clean_obj.pl pcore\tools clean_obj.pl) ],
|
| 53 | [ qw(MinGW\bin\mingw32-make.exe pcore\tools make.exe) ],
|
| 54 | [ qw(MinGW\bin\objcopy.exe pcore\tools\MinGW\bin objcopy.exe) ],
|
| 55 | [ qw(7-Zip_Slim\7za.exe lcmmi\Customer\ResGenerator 7za.exe) ],
|
| 56 | [ qw(7-Zip_Slim\7za.exe plutommi\Customer\ResGenerator 7za.exe) ],
|
| 57 | [ qw(7-Zip_Slim\convert.exe lcmmi\Customer\ResGenerator convert.exe) ],
|
| 58 | [ qw(7-Zip_Slim\convert.exe plutommi\Customer\ResGenerator convert.exe) ],
|
| 59 | [ qw(make\verifyCus.mak make verifyCus.mak) ],
|
| 60 | );
|
| 61 |
|
| 62 | @srcs = qw(
|
| 63 | # for AST (temporary)
|
| 64 | \\\\mbjswgwt1501\\E\\home\\3rd_party
|
| 65 | # end (for AST)
|
| 66 | \\\\glbfs14\\WCP\\sw_releases\\3rd_party
|
| 67 | \\\\mediatek.inc\\Taiwan\\WCP\\Public\\Public\\3rd_party
|
| 68 | \\\\mszsfs03\\Public\\SW_Releases\\3rd_party
|
| 69 | \\\\bjsfs05\\Public\\SW_Releases\\3rd_party
|
| 70 | \\\\mtisfs03\\Public\\SW_Releases\\3rd_party
|
| 71 | \\\\mtkrfs01\\Public1\\3rd_party
|
| 72 | );
|
| 73 |
|
| 74 | $src = "";
|
| 75 | foreach $d (@srcs) {
|
| 76 | next if (!-d $d);
|
| 77 | $src = $d;
|
| 78 | last;
|
| 79 | }
|
| 80 |
|
| 81 | die "Could NOT find thiry parties source\n" if (($cphdr==1) && ($src eq ""));
|
| 82 |
|
| 83 | for $i (0 .. $#mapDirs) {
|
| 84 | if ($cphdr==1) {
|
| 85 | print("Copy folder ${src}\\$mapDirs[$i][0] to $mapDirs[$i][1]\n");
|
| 86 | system("mkdir $mapDirs[$i][1]") if (!-d $mapDirs[$i][1]);
|
| 87 | system("xcopy /Y /Q /S ${src}\\$mapDirs[$i][0] $mapDirs[$i][1]");
|
| 88 | } elsif (-d $mapDirs[$i][1]) {
|
| 89 | print("Remove directory: $mapDirs[$i][1]\n");
|
| 90 | system("rd /s /q $mapDirs[$i][1]");
|
| 91 | }
|
| 92 | }
|
| 93 |
|
| 94 | for $i (0 .. $#mapFiles) {
|
| 95 | if ($cphdr==1) {
|
| 96 | if (-d $mapFiles[$i][1]) {
|
| 97 | print("Copy file ${src}\\$mapFiles[$i][0] to $mapFiles[$i][1]\\$mapFiles[$i][2]\n");
|
| 98 | system("copy /Y ${src}\\$mapFiles[$i][0] $mapFiles[$i][1]\\$mapFiles[$i][2] > nul 2>&1");
|
| 99 | }
|
| 100 | } elsif (-e "$mapFiles[$i][1]\\$mapFiles[$i][2]") {
|
| 101 | print("Remove file: $mapFiles[$i][1]\\$mapFiles[$i][2]\n");
|
| 102 | system("del /f /q $mapFiles[$i][1]\\$mapFiles[$i][2]");
|
| 103 | }
|
| 104 | }
|
| 105 |
|
| 106 | exit 0;
|
| 107 |
|
| 108 | sub Usage {
|
| 109 | print <<"__EOFUSAGE";
|
| 110 | Usage: $0 [-rm | -cp]
|
| 111 | -rm Remove third parties files
|
| 112 | -cp Copy third parties files
|
| 113 | __EOFUSAGE
|
| 114 | exit 1;
|
| 115 | }
|