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