xref: /trunk/main/odk/util/check.pl (revision 7e90fac2499926267c39e1b60f243e5765a5bf84)
1*7e90fac2SAndrew Rist#**************************************************************
2cdf0e10cSrcweir#
3*7e90fac2SAndrew Rist#  Licensed to the Apache Software Foundation (ASF) under one
4*7e90fac2SAndrew Rist#  or more contributor license agreements.  See the NOTICE file
5*7e90fac2SAndrew Rist#  distributed with this work for additional information
6*7e90fac2SAndrew Rist#  regarding copyright ownership.  The ASF licenses this file
7*7e90fac2SAndrew Rist#  to you under the Apache License, Version 2.0 (the
8*7e90fac2SAndrew Rist#  "License"); you may not use this file except in compliance
9*7e90fac2SAndrew Rist#  with the License.  You may obtain a copy of the License at
10cdf0e10cSrcweir#
11*7e90fac2SAndrew Rist#    http://www.apache.org/licenses/LICENSE-2.0
12cdf0e10cSrcweir#
13*7e90fac2SAndrew Rist#  Unless required by applicable law or agreed to in writing,
14*7e90fac2SAndrew Rist#  software distributed under the License is distributed on an
15*7e90fac2SAndrew Rist#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*7e90fac2SAndrew Rist#  KIND, either express or implied.  See the License for the
17*7e90fac2SAndrew Rist#  specific language governing permissions and limitations
18*7e90fac2SAndrew Rist#  under the License.
19cdf0e10cSrcweir#
20*7e90fac2SAndrew Rist#**************************************************************
21*7e90fac2SAndrew Rist
22*7e90fac2SAndrew Rist
23cdf0e10cSrcweir
24cdf0e10cSrcweir#
25cdf0e10cSrcweir# check - a perl script to check some files and directories if they exists
26cdf0e10cSrcweir# A first simple check if the SDK was built completely.
27cdf0e10cSrcweir#
28cdf0e10cSrcweir#use IO::File;
29cdf0e10cSrcweir
30cdf0e10cSrcweir$return = 0;
31cdf0e10cSrcweir
32cdf0e10cSrcweir$StartDir = "$ARGV[0]";
33cdf0e10cSrcweir$OperatingSystem = "$ARGV[1]";
34cdf0e10cSrcweir$ExePrefix = "$ARGV[2]";
35cdf0e10cSrcweir
36cdf0e10cSrcweirprint "Check for $OperatingSystem\n";
37cdf0e10cSrcweir
38cdf0e10cSrcweirif (-d "$StartDir") {
39cdf0e10cSrcweir    # check binaries
40cdf0e10cSrcweir    print "check binaries: ";
41cdf0e10cSrcweir    if (-d "$StartDir/bin") {
425979ef3cSJürgen Schmidt    my @binarylist = ( "idlc","ucpp","cppumaker","javamaker",
43cdf0e10cSrcweir               "regcompare","autodoc",
44cdf0e10cSrcweir               "unoapploader", "uno-skeletonmaker" );
45cdf0e10cSrcweir
46cdf0e10cSrcweir    foreach $i (@binarylist)
47cdf0e10cSrcweir    {
48cdf0e10cSrcweir        if (! -e "$StartDir/bin/$i$ExePrefix") {
49cdf0e10cSrcweir        $return++;
50cdf0e10cSrcweir        print "\nERROR: \"$StartDir/bin/$i$ExePrefix\" is missing\n";
51cdf0e10cSrcweir        } else {
52cdf0e10cSrcweir        print "+";
53cdf0e10cSrcweir        }
54cdf0e10cSrcweir    }
55cdf0e10cSrcweir
56cdf0e10cSrcweir    if ($OperatingSystem eq "windows" || $OperatingSystem eq "mingw") {
57cdf0e10cSrcweir        if ($OperatingSystem eq "windows" && ! -e "$StartDir/bin/climaker.exe") {
58cdf0e10cSrcweir        $return++;
59cdf0e10cSrcweir        print "\nERROR: \"$StartDir/bin/climaker.exe\" is missing\n";
60cdf0e10cSrcweir        } else {
61cdf0e10cSrcweir        print "+";
62cdf0e10cSrcweir        }
63cdf0e10cSrcweir    }
64cdf0e10cSrcweir    if ($OperatingSystem eq "macosx") {
65cdf0e10cSrcweir        if (! -e "$StartDir/bin/addsym-macosx.sh") {
66cdf0e10cSrcweir        $return++;
67cdf0e10cSrcweir        print "\nERROR: \"$StartDir/bin/addsym-macosx.sh\" is missing\n";
68cdf0e10cSrcweir        } else {
69cdf0e10cSrcweir        print "+";
70cdf0e10cSrcweir        }
71cdf0e10cSrcweir    }
72cdf0e10cSrcweir    } else {
73cdf0e10cSrcweir    $return++;
74cdf0e10cSrcweir    }
75cdf0e10cSrcweir    print "\n";
76cdf0e10cSrcweir
77cdf0e10cSrcweir    # packaging files
78cdf0e10cSrcweir    print "check packaging files: ";
79cdf0e10cSrcweir    if (-d "$StartDir/docs") {
80cdf0e10cSrcweir    my @filelist = ( "install.html",
81cdf0e10cSrcweir             "notsupported.html","sdk_styles.css","tools.html",
82cdf0e10cSrcweir             "images/arrow-1.gif", "images/arrow-3.gif",
83cdf0e10cSrcweir             "images/odk-footer-logo.gif",
84cdf0e10cSrcweir             "images/bg_table.png","images/bg_table2.png",
85cdf0e10cSrcweir             "images/bg_table3.png", "images/nav_down.png",
86cdf0e10cSrcweir             "images/nav_home.png","images/nav_left.png",
87cdf0e10cSrcweir             "images/nav_right.png","images/nav_up.png",
88cdf0e10cSrcweir             "images/sdk_head-1.png", "images/sdk_head-2.png",
89cdf0e10cSrcweir             "images/sdk_line-1.gif", "images/sdk_line-2.gif",
90cdf0e10cSrcweir             "common/ref/idl.css", "images/nada.gif",
91cdf0e10cSrcweir             "images/arrow-2.gif", "images/bluball.gif",
92ef1ef8e6SJürgen Schmidt             "images/ooo-main-app_32.png");
93cdf0e10cSrcweir
94cdf0e10cSrcweir    foreach $i (@filelist)
95cdf0e10cSrcweir    {
96cdf0e10cSrcweir        if (! -e "$StartDir/docs/$i") {
97cdf0e10cSrcweir        $return++;
98cdf0e10cSrcweir        print "\nERROR: \"$StartDir/docs/$i\" is missing\n";
99cdf0e10cSrcweir        } else {
100cdf0e10cSrcweir        print "+";
101cdf0e10cSrcweir        }
102cdf0e10cSrcweir    }
103cdf0e10cSrcweir    } else {
104cdf0e10cSrcweir    $return++;
105cdf0e10cSrcweir    }
106cdf0e10cSrcweir    print "\n";
107cdf0e10cSrcweir
108cdf0e10cSrcweir    #check configure files
109cdf0e10cSrcweir    print "check config files: ";
110cdf0e10cSrcweir    if ($OperatingSystem eq "windows" || $OperatingSystem eq "mingw") {
111cdf0e10cSrcweir    if (! -e "$StartDir/setsdkenv_windows.bat") {
112cdf0e10cSrcweir        print "\nERROR: \"$StartDir/setsdkenv_windows.bat\" is missing\n";
113cdf0e10cSrcweir        $return++;
114cdf0e10cSrcweir    }
115cdf0e10cSrcweir    if (! -e "$StartDir/setsdkenv_windows.template") {
116cdf0e10cSrcweir        print "\nERROR: \"$StartDir/setsdkenv_windows.template\" is missing\n";
117cdf0e10cSrcweir        $return++;
118cdf0e10cSrcweir    }
119cdf0e10cSrcweir    if (! -e "$StartDir/cfgWin.js") {
120cdf0e10cSrcweir        print "\nERROR: \"$StartDir/cfgWin.js\" is missing\n";
121cdf0e10cSrcweir        $return++;
122cdf0e10cSrcweir    }
123cdf0e10cSrcweir    } else {
124cdf0e10cSrcweir    if (! -e "$StartDir/configure.pl") {
125cdf0e10cSrcweir        print "\nERROR: \"$StartDir/configure.pl\" is missing\n";
126cdf0e10cSrcweir        $return++;
127cdf0e10cSrcweir    }
128cdf0e10cSrcweir    if (! -e "$StartDir/config.guess") {
129cdf0e10cSrcweir        print "\nERROR: \"$StartDir/config.guess\" is missing\n";
130cdf0e10cSrcweir        $return++;
131cdf0e10cSrcweir    }
132cdf0e10cSrcweir    if (! -e "$StartDir/config.sub") {
133cdf0e10cSrcweir        print "\nERROR: \"$StartDir/config.sub\" is missing\n";
134cdf0e10cSrcweir        $return++;
135cdf0e10cSrcweir       }
136cdf0e10cSrcweir    if (! -e "$StartDir/setsdkenv_unix") {
137cdf0e10cSrcweir        print "\nERROR: \"$StartDir/setsdkenv_unix\" is missing\n";
138cdf0e10cSrcweir        $return++;
139cdf0e10cSrcweir    }
140cdf0e10cSrcweir    if (! -e "$StartDir/setsdkenv_unix.sh.in") {
141cdf0e10cSrcweir        print "\nERROR: \"$StartDir/setsdkenv_unix.sh.in\" is missing\n";
142cdf0e10cSrcweir        $return++;
143cdf0e10cSrcweir    }
144cdf0e10cSrcweir    if (! -e "$StartDir/setsdkenv_unix.csh.in") {
145cdf0e10cSrcweir        print "\nERROR: \"$StartDir/setsdkenv_unix.csh.in\" is missing\n";
146cdf0e10cSrcweir        $return++;
147cdf0e10cSrcweir    }
148cdf0e10cSrcweir    }
149cdf0e10cSrcweir    print "\n";
150cdf0e10cSrcweir
151cdf0e10cSrcweir    #check setting files
152cdf0e10cSrcweir    print "check setting files: ";
153cdf0e10cSrcweir    if (-d "$StartDir/settings") {
154cdf0e10cSrcweir    if (! -e "$StartDir/settings/settings.mk") {
155cdf0e10cSrcweir        print "\nERROR: \"$StartDir/settings/settings.mk\" is missing\n";
156cdf0e10cSrcweir        $return++;
157cdf0e10cSrcweir    }
158cdf0e10cSrcweir    if (! -e "$StartDir/settings/std.mk") {
159cdf0e10cSrcweir        print "\nERROR: \"$StartDir/settings/std.mk\" is missing\n";
160cdf0e10cSrcweir        $return++;
161cdf0e10cSrcweir    }
162cdf0e10cSrcweir    if (! -e "$StartDir/settings/stdtarget.mk") {
163cdf0e10cSrcweir        print "\nERROR: \"$StartDir/settings/stdtarget.mk\" is missing\n";
164cdf0e10cSrcweir        $return++;
165cdf0e10cSrcweir    }
166cdf0e10cSrcweir    } else {
167cdf0e10cSrcweir    $return++;
168cdf0e10cSrcweir    }
169cdf0e10cSrcweir    print "\n";
170cdf0e10cSrcweir
171cdf0e10cSrcweir    #check cpp docu, it is only a first and simple check
172cdf0e10cSrcweir    # improvement required
173cdf0e10cSrcweir    print "check cpp docu: ";
174cdf0e10cSrcweir    if (-d "$StartDir/docs/cpp/ref") {
175cdf0e10cSrcweir    if (! -e "$StartDir/docs/cpp/ref/index.html") {
176cdf0e10cSrcweir        print "\nERROR: \"$StartDir/docs/cpp/ref/index.html\" is missing\n";
177cdf0e10cSrcweir        $return++;
178cdf0e10cSrcweir    }
179cdf0e10cSrcweir    if (! -d "$StartDir/docs/cpp/ref/index-files") {
180cdf0e10cSrcweir        print "\nERROR: \"$StartDir/docs/cpp/ref/index-files\" is missing\n";
181cdf0e10cSrcweir        $return++;
182cdf0e10cSrcweir    }
183cdf0e10cSrcweir    if (! -e "$StartDir/docs/cpp/ref/index-files/index-10.html") {
184cdf0e10cSrcweir        print "\nERROR: \"$StartDir/docs/cpp/ref/index-files/index-10.html\" is missing\n";
185cdf0e10cSrcweir        $return++;
186cdf0e10cSrcweir    }
187cdf0e10cSrcweir
188cdf0e10cSrcweir    my @dir_list = ( "com","com/sun","com/sun/star","com/sun/star/uno",
189cdf0e10cSrcweir             "com/sun/star/uno/Any","com/sun/star/uno/Type",
190cdf0e10cSrcweir             "com/sun/star/uno/Array","com/sun/star/uno/WeakReferenceHelper",
191cdf0e10cSrcweir             "com/sun/star/uno/Reference","com/sun/star/uno/WeakReference",
192cdf0e10cSrcweir             "com/sun/star/uno/Environment","com/sun/star/uno/Sequence",
193cdf0e10cSrcweir             "com/sun/star/uno/BaseReference","com/sun/star/uno/Mapping",
194cdf0e10cSrcweir             "com/sun/star/uno/ContextLayer","com/sun/star/uno/TypeDescription",
195cdf0e10cSrcweir             "osl","osl/File","osl/Pipe","osl/FileStatus","osl/FileBase",
196cdf0e10cSrcweir             "osl/Guard","osl/Mutex","osl/VolumeInfo","osl/GetGlobalMutex",
197cdf0e10cSrcweir             "osl/Security","osl/Profile","osl/DatagramSocket","osl/SocketAddr",
198cdf0e10cSrcweir             "osl/StreamPipe","osl/ResettableGuard","osl/AcceptorSocket",
199cdf0e10cSrcweir             "osl/ClearableGuard","osl/VolumeDevice","rtl","rtl/Uri","rtl/math",
200cdf0e10cSrcweir             "rtl/OUStringHash","rtl/MalformedUriException","rtl/OUStringBuffer",
201cdf0e10cSrcweir             "rtl/OUString","rtl/Reference","rtl/ByteSequence","rtl/OLocale",
202cdf0e10cSrcweir             "rtl/Logfile","rtl/OString","rtl/IReference","rtl/OStringBuffer",
203cdf0e10cSrcweir             "rtl/OStringHash","_typelib_CompoundTypeDescription","cppu",
204cdf0e10cSrcweir             "cppu/ContextEntry_Init","cppu/ImplInheritanceHelper10",
205cdf0e10cSrcweir             "cppu/ImplInheritanceHelper11","cppu/ImplInheritanceHelper12",
206cdf0e10cSrcweir             "cppu/WeakAggImplHelper1","cppu/WeakAggImplHelper2",
207cdf0e10cSrcweir             "cppu/WeakAggImplHelper3","cppu/WeakAggImplHelper4",
208cdf0e10cSrcweir             "cppu/WeakAggImplHelper5","cppu/WeakAggImplHelper6",
209cdf0e10cSrcweir             "cppu/WeakAggImplHelper7","cppu/WeakAggImplHelper8",
210cdf0e10cSrcweir             "cppu/WeakAggImplHelper9",
211cdf0e10cSrcweir             "cppu/OMultiTypeInterfaceContainerHelperInt32","cppu/AccessControl",
212cdf0e10cSrcweir             "cppu/OPropertyArrayHelper","cppu/ImplHelper1","cppu/ImplHelper2",
213cdf0e10cSrcweir             "cppu/ImplHelper3","cppu/ImplHelper4","cppu/ImplHelper5",
214cdf0e10cSrcweir             "cppu/ImplHelper6","cppu/ImplHelper7","cppu/ImplHelper8",
215cdf0e10cSrcweir             "cppu/ImplHelper9","cppu/WeakComponentImplHelper10",
216cdf0e10cSrcweir             "cppu/WeakComponentImplHelper11","cppu/WeakComponentImplHelper12",
217cdf0e10cSrcweir             "cppu/UnoUrl","cppu/WeakComponentImplHelper1",
218cdf0e10cSrcweir             "cppu/WeakComponentImplHelper2","cppu/WeakComponentImplHelper3",
219cdf0e10cSrcweir             "cppu/WeakComponentImplHelper4","cppu/WeakComponentImplHelper5",
220cdf0e10cSrcweir             "cppu/WeakComponentImplHelper6","cppu/WeakComponentImplHelper7",
221cdf0e10cSrcweir             "cppu/WeakComponentImplHelper8","cppu/WeakComponentImplHelper9",
222cdf0e10cSrcweir             "cppu/OInterfaceIteratorHelper",
223cdf0e10cSrcweir             "cppu/OMultiTypeInterfaceContainerHelper","cppu/UnoUrlDescriptor",
224cdf0e10cSrcweir             "cppu/IPropertyArrayHelper","cppu/OBroadcastHelperVar",
225cdf0e10cSrcweir             "cppu/OComponentHelper","cppu/OWeakAggObject",
226cdf0e10cSrcweir             "cppu/ImplementationEntry","cppu/WeakImplHelper10",
227cdf0e10cSrcweir             "cppu/WeakImplHelper11","cppu/WeakImplHelper12",
228cdf0e10cSrcweir             "cppu/OPropertySetHelper","cppu/ImplHelper10","cppu/ImplHelper11",
229cdf0e10cSrcweir             "cppu/ImplHelper12","cppu/WeakAggImplHelper10",
230cdf0e10cSrcweir             "cppu/WeakAggImplHelper11","cppu/WeakAggImplHelper12",
231cdf0e10cSrcweir             "cppu/ImplInheritanceHelper1","cppu/ImplInheritanceHelper2",
232cdf0e10cSrcweir             "cppu/ImplInheritanceHelper3","cppu/ImplInheritanceHelper4",
233cdf0e10cSrcweir             "cppu/ImplInheritanceHelper5","cppu/ImplInheritanceHelper6",
234cdf0e10cSrcweir             "cppu/ImplInheritanceHelper7","cppu/ImplInheritanceHelper8",
235cdf0e10cSrcweir             "cppu/ImplInheritanceHelper9","cppu/OTypeCollection",
236cdf0e10cSrcweir             "cppu/WeakAggComponentImplHelper10",
237cdf0e10cSrcweir             "cppu/WeakAggComponentImplHelper11",
238cdf0e10cSrcweir             "cppu/WeakAggComponentImplHelper12",
239cdf0e10cSrcweir             "cppu/WeakAggComponentImplHelper1",
240cdf0e10cSrcweir             "cppu/WeakAggComponentImplHelper2",
241cdf0e10cSrcweir             "cppu/WeakAggComponentImplHelper3",
242cdf0e10cSrcweir             "cppu/WeakAggComponentImplHelper4",
243cdf0e10cSrcweir             "cppu/WeakAggComponentImplHelper5",
244cdf0e10cSrcweir             "cppu/WeakAggComponentImplHelper6",
245cdf0e10cSrcweir             "cppu/WeakAggComponentImplHelper7",
246cdf0e10cSrcweir             "cppu/WeakAggComponentImplHelper8",
247cdf0e10cSrcweir             "cppu/WeakAggComponentImplHelper9",
248cdf0e10cSrcweir             "cppu/OMultiTypeInterfaceContainerHelperVar",
249cdf0e10cSrcweir             "cppu/OInterfaceContainerHelper","cppu/OImplementationId",
250cdf0e10cSrcweir             "cppu/AggImplInheritanceHelper1","cppu/AggImplInheritanceHelper2",
251cdf0e10cSrcweir             "cppu/AggImplInheritanceHelper3","cppu/AggImplInheritanceHelper4",
252cdf0e10cSrcweir             "cppu/AggImplInheritanceHelper5","cppu/AggImplInheritanceHelper6",
253cdf0e10cSrcweir             "cppu/AggImplInheritanceHelper7","cppu/AggImplInheritanceHelper8",
254cdf0e10cSrcweir             "cppu/AggImplInheritanceHelper9","cppu/AggImplInheritanceHelper10",
255cdf0e10cSrcweir             "cppu/AggImplInheritanceHelper11","cppu/AggImplInheritanceHelper12",
256cdf0e10cSrcweir             "cppu/WeakImplHelper1","cppu/WeakImplHelper2","cppu/WeakImplHelper3",
257cdf0e10cSrcweir             "cppu/WeakImplHelper4","cppu/WeakImplHelper5","cppu/WeakImplHelper6",
258cdf0e10cSrcweir             "cppu/WeakImplHelper7","cppu/WeakImplHelper8","cppu/WeakImplHelper9",
259cdf0e10cSrcweir             "cppu/OWeakObject","__store_FindData","_rtl_StandardModuleCount",
260cdf0e10cSrcweir             "RTUik","RTConstValue","_typelib_TypeDescriptionReference",
261cdf0e10cSrcweir             "_typelib_InterfaceMethodTypeDescription","store","RegistryKey",
262cdf0e10cSrcweir             "_typelib_Union_Init","_sal_Sequence","_typelib_Parameter_Init",
263cdf0e10cSrcweir             "_typelib_TypeDescription","_uno_Environment",
264cdf0e10cSrcweir             "_typelib_InterfaceAttributeTypeDescription",
265cdf0e10cSrcweir             "_rtl_ModuleCount","_uno_ExtEnvironment",
266cdf0e10cSrcweir             "_typelib_IndirectTypeDescription",
267cdf0e10cSrcweir             "Registry_Api","_oslFileStatus",
268cdf0e10cSrcweir             "_typelib_InterfaceMemberTypeDescription","RegistryValueList",
269cdf0e10cSrcweir             "RegistryTypeWriter_Api","_rtl_TextEncodingInfo",
270cdf0e10cSrcweir             "namespace_anonymous_1",
271cdf0e10cSrcweir             "_oslVolumeInfo","_uno_Interface",
272cdf0e10cSrcweir             "_typelib_InterfaceTypeDescription","_uno_Mapping","Registry",
273cdf0e10cSrcweir             "RegistryTypeReader_Api","_typelib_Uik",
274cdf0e10cSrcweir             "_typelib_ArrayTypeDescription",
275cdf0e10cSrcweir             "RegistryKeyArray","RegistryTypeReader","RegistryKeyNames",
276cdf0e10cSrcweir             "RTConstValueUnion","_typelib_UnionTypeDescription","_uno_Any",
277cdf0e10cSrcweir             "RegistryTypeWriter","_rtl_Locale","_typelib_CompoundMember_Init",
278cdf0e10cSrcweir             "_typelib_EnumTypeDescription","_typelib_MethodParameter");
279cdf0e10cSrcweir
280cdf0e10cSrcweir    foreach $i (@dir_list)
281cdf0e10cSrcweir    {
282cdf0e10cSrcweir        if (! -d "$StartDir/docs/cpp/ref/names/$i") {
283cdf0e10cSrcweir        $return++;
284cdf0e10cSrcweir        print "\nERROR: \"$StartDir/docs/cpp/ref/names/$i\" is missing\n";
285cdf0e10cSrcweir        } else {
286cdf0e10cSrcweir        print "+";
287cdf0e10cSrcweir        }
288cdf0e10cSrcweir    }
289cdf0e10cSrcweir    } else {
290cdf0e10cSrcweir    $return++;
291cdf0e10cSrcweir    }
292cdf0e10cSrcweir    print "\n";
293cdf0e10cSrcweir
294cdf0e10cSrcweir    #check java docu, it is only a first and simple check
295cdf0e10cSrcweir    # improvement required
296cdf0e10cSrcweir    my $solar_java = $ENV{"SOLAR_JAVA"};
297cdf0e10cSrcweir    my $JDK = $ENV{"JDK"};
298cdf0e10cSrcweir    if (defined($solar_java) && $solar_java ne "" && (!defined($JDK) || $JDK ne "gcj")) {
299cdf0e10cSrcweir    print "check java docu: ";
300cdf0e10cSrcweir    if (-d "$StartDir/docs/java/ref") {
301cdf0e10cSrcweir        if (! -e "$StartDir/docs/java/ref/index.html") {
302cdf0e10cSrcweir        print "\nERROR: \"$StartDir/docs/java/ref/index.html\" is missing\n";
303cdf0e10cSrcweir        $return++;
304cdf0e10cSrcweir        }
305cdf0e10cSrcweir
306cdf0e10cSrcweir        my @dir_list = ( "lib","lib/uno","lib/uno/helper","lib/uno/helper/class-use",
307cdf0e10cSrcweir                 "uno","uno/class-use","comp","comp/helper",
308cdf0e10cSrcweir                 "comp/helper/class-use");
309cdf0e10cSrcweir
310cdf0e10cSrcweir        foreach $i (@dir_list)
311cdf0e10cSrcweir        {
312cdf0e10cSrcweir        if (! -d "$StartDir/docs/java/ref/com/sun/star/$i") {
313cdf0e10cSrcweir            $return++;
314cdf0e10cSrcweir            print "\nERROR: \"$StartDir/docs/java/ref/com/sun/star/$i\" is missing\n";
315cdf0e10cSrcweir        } else {
316cdf0e10cSrcweir            print "+";
317cdf0e10cSrcweir        }
318cdf0e10cSrcweir        }
319cdf0e10cSrcweir    } else {
320cdf0e10cSrcweir        $return++;
321cdf0e10cSrcweir    }
322cdf0e10cSrcweir    print "\n";
323cdf0e10cSrcweir    }
324cdf0e10cSrcweir
325cdf0e10cSrcweir    #check idl docu, it is only a first and simple check
326cdf0e10cSrcweir    # improvement required
327cdf0e10cSrcweir    print "check idl docu: ";
328cdf0e10cSrcweir    if (-d "$StartDir/docs/common/ref") {
329cdf0e10cSrcweir    if (! -e "$StartDir/docs/common/ref/module-ix.html") {
330cdf0e10cSrcweir        print "\nERROR: \"$StartDir/docs/common/ref/module-ix.html\" is missing\n";
331cdf0e10cSrcweir        $return++;
332cdf0e10cSrcweir    }
333cdf0e10cSrcweir    if (! -d "$StartDir/docs/common/ref/index-files") {
334cdf0e10cSrcweir        print "\nERROR: \"$StartDir/docs/common/ref/index-files\" is missing\n";
335cdf0e10cSrcweir        $return++;
336cdf0e10cSrcweir    }
337cdf0e10cSrcweir    if (! -e "$StartDir/docs/common/ref/index-files/index-10.html") {
338cdf0e10cSrcweir        print "\nERROR: \"$StartDir/docs/common/ref/index-files/index-10.html\" is missing\n";
339cdf0e10cSrcweir        $return++;
340cdf0e10cSrcweir    }
341cdf0e10cSrcweir
342cdf0e10cSrcweir    my @idl_dirlist = ( "accessibility",
343cdf0e10cSrcweir                "animations",
344cdf0e10cSrcweir                "auth",
345cdf0e10cSrcweir                "awt",
346cdf0e10cSrcweir                "awt/tab",
347cdf0e10cSrcweir                "awt/tree",
348cdf0e10cSrcweir                "awt/grid",
349cdf0e10cSrcweir                "beans",
350cdf0e10cSrcweir                "bridge",
351cdf0e10cSrcweir                "bridge/oleautomation",
352cdf0e10cSrcweir                "chart",
353cdf0e10cSrcweir                "chart2",
354cdf0e10cSrcweir                "chart2/data",
355cdf0e10cSrcweir                "configuration",
356cdf0e10cSrcweir                "configuration/backend",
357cdf0e10cSrcweir                "configuration/backend/xml",
358cdf0e10cSrcweir                "configuration/bootstrap",
359cdf0e10cSrcweir                "connection",
360cdf0e10cSrcweir                "container",
361cdf0e10cSrcweir                "datatransfer",
362cdf0e10cSrcweir                "datatransfer/clipboard",
363cdf0e10cSrcweir                "datatransfer/dnd",
364cdf0e10cSrcweir                "deployment",
365cdf0e10cSrcweir                "deployment/ui",
366cdf0e10cSrcweir                "document",
367cdf0e10cSrcweir                "drawing",
368cdf0e10cSrcweir                "drawing/framework",
369cdf0e10cSrcweir                "embed",
370cdf0e10cSrcweir                "form",
371cdf0e10cSrcweir                "form/binding",
372cdf0e10cSrcweir                "form/component",
373cdf0e10cSrcweir                "form/control",
374cdf0e10cSrcweir                "form/inspection",
375cdf0e10cSrcweir                "form/runtime",
376cdf0e10cSrcweir                "form/submission",
377cdf0e10cSrcweir                "form/validation",
378cdf0e10cSrcweir                "formula",
379cdf0e10cSrcweir                "frame",
380cdf0e10cSrcweir                "frame/status",
381cdf0e10cSrcweir                "gallery",
382cdf0e10cSrcweir                "geometry",
383cdf0e10cSrcweir                "graphic",
384cdf0e10cSrcweir                "i18n",
385cdf0e10cSrcweir                "image",
386cdf0e10cSrcweir                "inspection",
387cdf0e10cSrcweir                "installation",
388cdf0e10cSrcweir                "io",
389cdf0e10cSrcweir                "java",
390cdf0e10cSrcweir                "lang",
391cdf0e10cSrcweir                "ldap",
392cdf0e10cSrcweir                "linguistic2",
393cdf0e10cSrcweir                "loader",
394cdf0e10cSrcweir                "logging",
395cdf0e10cSrcweir                "mail",
396cdf0e10cSrcweir                "media",
397cdf0e10cSrcweir                "mozilla",
398cdf0e10cSrcweir                "packages",
399cdf0e10cSrcweir                "packages/manifest",
400cdf0e10cSrcweir                "packages/zip",
401cdf0e10cSrcweir                "plugin",
402cdf0e10cSrcweir                "presentation",
403cdf0e10cSrcweir                "reflection",
404cdf0e10cSrcweir                "registry",
405cdf0e10cSrcweir                "rendering",
406cdf0e10cSrcweir                "report",
407cdf0e10cSrcweir                "report/inspection",
408cdf0e10cSrcweir                "resource",
409cdf0e10cSrcweir                "scanner",
410cdf0e10cSrcweir                "script",
411cdf0e10cSrcweir                "script/browse",
412cdf0e10cSrcweir                "script/provider",
413cdf0e10cSrcweir                "sdb",
414cdf0e10cSrcweir                "sdb/application",
415cdf0e10cSrcweir                "sdb/tools",
416cdf0e10cSrcweir                "sdbc",
417cdf0e10cSrcweir                "sdbcx",
418cdf0e10cSrcweir                "security",
419cdf0e10cSrcweir                "setup",
420cdf0e10cSrcweir                "sheet",
421cdf0e10cSrcweir                "smarttags",
422cdf0e10cSrcweir                "style",
423cdf0e10cSrcweir                "svg",
424cdf0e10cSrcweir                "sync",
425cdf0e10cSrcweir                "sync2",
426cdf0e10cSrcweir                "system",
427cdf0e10cSrcweir                "table",
428cdf0e10cSrcweir                "task",
429cdf0e10cSrcweir                "test",
430cdf0e10cSrcweir                "test/bridge",
431cdf0e10cSrcweir                "test/performance",
432cdf0e10cSrcweir                "text",
433cdf0e10cSrcweir                "text/fieldmaster",
434cdf0e10cSrcweir                "text/textfield",
435cdf0e10cSrcweir                "text/textfield/docinfo",
436cdf0e10cSrcweir                "ucb",
437cdf0e10cSrcweir                "ui",
438cdf0e10cSrcweir                "ui/dialogs",
439cdf0e10cSrcweir                "uno",
440cdf0e10cSrcweir                "uri",
441cdf0e10cSrcweir                "util",
442cdf0e10cSrcweir                "util/logging",
443cdf0e10cSrcweir                "view",
444cdf0e10cSrcweir                "xforms",
445cdf0e10cSrcweir                "xml",
446cdf0e10cSrcweir                "xml/crypto",
447cdf0e10cSrcweir                "xml/crypto/sax",
448cdf0e10cSrcweir                "xml/csax",
449cdf0e10cSrcweir                "xml/dom",
450cdf0e10cSrcweir                "xml/dom/events",
451cdf0e10cSrcweir                "xml/dom/views",
452cdf0e10cSrcweir                "xml/input",
453cdf0e10cSrcweir                "xml/sax",
454cdf0e10cSrcweir                "xml/wrapper",
455cdf0e10cSrcweir                "xml/xpath",
456cdf0e10cSrcweir                "xsd" );
457cdf0e10cSrcweir
458cdf0e10cSrcweir    foreach $i (@idl_dirlist)
459cdf0e10cSrcweir    {
460cdf0e10cSrcweir        if (! -d "$StartDir/docs/common/ref/com/sun/star/$i") {
461cdf0e10cSrcweir        $return++;
462cdf0e10cSrcweir        print "\nERROR: \"$StartDir/docs/common/ref/com/sun/star/$i\" is missing\n";
463cdf0e10cSrcweir        } else {
464cdf0e10cSrcweir        print "+";
465cdf0e10cSrcweir        }
466cdf0e10cSrcweir    }
467cdf0e10cSrcweir    } else {
468cdf0e10cSrcweir    $return++;
469cdf0e10cSrcweir    }
470cdf0e10cSrcweir    print "\n";
471cdf0e10cSrcweir
472cdf0e10cSrcweir} else {
473cdf0e10cSrcweir    $return++;
474cdf0e10cSrcweir}
475cdf0e10cSrcweir
476cdf0e10cSrcweirif( $return != 0 )
477cdf0e10cSrcweir{
478cdf0e10cSrcweir    print "ERROR\n";
479cdf0e10cSrcweir    unlink "$ARGV[3]";
480cdf0e10cSrcweir} else {
481cdf0e10cSrcweir    print "OK\n";
482cdf0e10cSrcweir}
483cdf0e10cSrcweirexit $return;
484