xref: /trunk/main/odk/util/check.pl (revision ae5b48de)
17e90fac2SAndrew Rist#**************************************************************
27e90fac2SAndrew Rist#
37e90fac2SAndrew Rist#  Licensed to the Apache Software Foundation (ASF) under one
47e90fac2SAndrew Rist#  or more contributor license agreements.  See the NOTICE file
57e90fac2SAndrew Rist#  distributed with this work for additional information
67e90fac2SAndrew Rist#  regarding copyright ownership.  The ASF licenses this file
77e90fac2SAndrew Rist#  to you under the Apache License, Version 2.0 (the
87e90fac2SAndrew Rist#  "License"); you may not use this file except in compliance
97e90fac2SAndrew Rist#  with the License.  You may obtain a copy of the License at
107e90fac2SAndrew Rist#
117e90fac2SAndrew Rist#    http://www.apache.org/licenses/LICENSE-2.0
127e90fac2SAndrew Rist#
137e90fac2SAndrew Rist#  Unless required by applicable law or agreed to in writing,
147e90fac2SAndrew Rist#  software distributed under the License is distributed on an
157e90fac2SAndrew Rist#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
167e90fac2SAndrew Rist#  KIND, either express or implied.  See the License for the
177e90fac2SAndrew Rist#  specific language governing permissions and limitations
187e90fac2SAndrew Rist#  under the License.
197e90fac2SAndrew Rist#
207e90fac2SAndrew Rist#**************************************************************
217e90fac2SAndrew Rist
227e90fac2SAndrew 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",
83*ae5b48deSMatthias Seidel			 "images/sdk-footer-logo.png",
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",
91*ae5b48deSMatthias Seidel			 "images/arrow-2.gif", "images/blueball.png",
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    }
145cdf0e10cSrcweir    print "\n";
146cdf0e10cSrcweir
147cdf0e10cSrcweir    #check setting files
148cdf0e10cSrcweir    print "check setting files: ";
149cdf0e10cSrcweir    if (-d "$StartDir/settings") {
150cdf0e10cSrcweir	if (! -e "$StartDir/settings/settings.mk") {
151cdf0e10cSrcweir	    print "\nERROR: \"$StartDir/settings/settings.mk\" is missing\n";
152cdf0e10cSrcweir	    $return++;
153cdf0e10cSrcweir	}
154cdf0e10cSrcweir	if (! -e "$StartDir/settings/std.mk") {
155cdf0e10cSrcweir	    print "\nERROR: \"$StartDir/settings/std.mk\" is missing\n";
156cdf0e10cSrcweir	    $return++;
157cdf0e10cSrcweir	}
158cdf0e10cSrcweir	if (! -e "$StartDir/settings/stdtarget.mk") {
159cdf0e10cSrcweir	    print "\nERROR: \"$StartDir/settings/stdtarget.mk\" is missing\n";
160cdf0e10cSrcweir	    $return++;
161cdf0e10cSrcweir	}
162cdf0e10cSrcweir    } else {
163cdf0e10cSrcweir	$return++;
164cdf0e10cSrcweir    }
165cdf0e10cSrcweir    print "\n";
166cdf0e10cSrcweir
167cdf0e10cSrcweir    #check cpp docu, it is only a first and simple check
168cdf0e10cSrcweir    # improvement required
169cdf0e10cSrcweir    print "check cpp docu: ";
170cdf0e10cSrcweir    if (-d "$StartDir/docs/cpp/ref") {
171cdf0e10cSrcweir	if (! -e "$StartDir/docs/cpp/ref/index.html") {
172cdf0e10cSrcweir	    print "\nERROR: \"$StartDir/docs/cpp/ref/index.html\" is missing\n";
173cdf0e10cSrcweir	    $return++;
174cdf0e10cSrcweir	}
175cdf0e10cSrcweir	if (! -d "$StartDir/docs/cpp/ref/index-files") {
176cdf0e10cSrcweir	    print "\nERROR: \"$StartDir/docs/cpp/ref/index-files\" is missing\n";
177cdf0e10cSrcweir	    $return++;
178cdf0e10cSrcweir	}
179cdf0e10cSrcweir	if (! -e "$StartDir/docs/cpp/ref/index-files/index-10.html") {
180cdf0e10cSrcweir	    print "\nERROR: \"$StartDir/docs/cpp/ref/index-files/index-10.html\" is missing\n";
181cdf0e10cSrcweir	    $return++;
182cdf0e10cSrcweir	}
183cdf0e10cSrcweir
184cdf0e10cSrcweir	my @dir_list = ( "com","com/sun","com/sun/star","com/sun/star/uno",
185cdf0e10cSrcweir			 "com/sun/star/uno/Any","com/sun/star/uno/Type",
186cdf0e10cSrcweir			 "com/sun/star/uno/Array","com/sun/star/uno/WeakReferenceHelper",
187cdf0e10cSrcweir			 "com/sun/star/uno/Reference","com/sun/star/uno/WeakReference",
188cdf0e10cSrcweir			 "com/sun/star/uno/Environment","com/sun/star/uno/Sequence",
189cdf0e10cSrcweir			 "com/sun/star/uno/BaseReference","com/sun/star/uno/Mapping",
190cdf0e10cSrcweir			 "com/sun/star/uno/ContextLayer","com/sun/star/uno/TypeDescription",
191cdf0e10cSrcweir			 "osl","osl/File","osl/Pipe","osl/FileStatus","osl/FileBase",
192cdf0e10cSrcweir			 "osl/Guard","osl/Mutex","osl/VolumeInfo","osl/GetGlobalMutex",
193cdf0e10cSrcweir			 "osl/Security","osl/Profile","osl/DatagramSocket","osl/SocketAddr",
194cdf0e10cSrcweir			 "osl/StreamPipe","osl/ResettableGuard","osl/AcceptorSocket",
195cdf0e10cSrcweir			 "osl/ClearableGuard","osl/VolumeDevice","rtl","rtl/Uri","rtl/math",
196cdf0e10cSrcweir			 "rtl/OUStringHash","rtl/MalformedUriException","rtl/OUStringBuffer",
197cdf0e10cSrcweir			 "rtl/OUString","rtl/Reference","rtl/ByteSequence","rtl/OLocale",
198cdf0e10cSrcweir			 "rtl/Logfile","rtl/OString","rtl/IReference","rtl/OStringBuffer",
199cdf0e10cSrcweir			 "rtl/OStringHash","_typelib_CompoundTypeDescription","cppu",
200cdf0e10cSrcweir			 "cppu/ContextEntry_Init","cppu/ImplInheritanceHelper10",
201cdf0e10cSrcweir			 "cppu/ImplInheritanceHelper11","cppu/ImplInheritanceHelper12",
202cdf0e10cSrcweir			 "cppu/WeakAggImplHelper1","cppu/WeakAggImplHelper2",
203cdf0e10cSrcweir			 "cppu/WeakAggImplHelper3","cppu/WeakAggImplHelper4",
204cdf0e10cSrcweir			 "cppu/WeakAggImplHelper5","cppu/WeakAggImplHelper6",
205cdf0e10cSrcweir			 "cppu/WeakAggImplHelper7","cppu/WeakAggImplHelper8",
206cdf0e10cSrcweir			 "cppu/WeakAggImplHelper9",
207cdf0e10cSrcweir			 "cppu/OMultiTypeInterfaceContainerHelperInt32","cppu/AccessControl",
208cdf0e10cSrcweir			 "cppu/OPropertyArrayHelper","cppu/ImplHelper1","cppu/ImplHelper2",
209cdf0e10cSrcweir			 "cppu/ImplHelper3","cppu/ImplHelper4","cppu/ImplHelper5",
210cdf0e10cSrcweir			 "cppu/ImplHelper6","cppu/ImplHelper7","cppu/ImplHelper8",
211cdf0e10cSrcweir			 "cppu/ImplHelper9","cppu/WeakComponentImplHelper10",
212cdf0e10cSrcweir			 "cppu/WeakComponentImplHelper11","cppu/WeakComponentImplHelper12",
213cdf0e10cSrcweir			 "cppu/UnoUrl","cppu/WeakComponentImplHelper1",
214cdf0e10cSrcweir			 "cppu/WeakComponentImplHelper2","cppu/WeakComponentImplHelper3",
215cdf0e10cSrcweir			 "cppu/WeakComponentImplHelper4","cppu/WeakComponentImplHelper5",
216cdf0e10cSrcweir			 "cppu/WeakComponentImplHelper6","cppu/WeakComponentImplHelper7",
217cdf0e10cSrcweir			 "cppu/WeakComponentImplHelper8","cppu/WeakComponentImplHelper9",
218cdf0e10cSrcweir			 "cppu/OInterfaceIteratorHelper",
219cdf0e10cSrcweir			 "cppu/OMultiTypeInterfaceContainerHelper","cppu/UnoUrlDescriptor",
220cdf0e10cSrcweir			 "cppu/IPropertyArrayHelper","cppu/OBroadcastHelperVar",
221cdf0e10cSrcweir			 "cppu/OComponentHelper","cppu/OWeakAggObject",
222cdf0e10cSrcweir			 "cppu/ImplementationEntry","cppu/WeakImplHelper10",
223cdf0e10cSrcweir			 "cppu/WeakImplHelper11","cppu/WeakImplHelper12",
224cdf0e10cSrcweir			 "cppu/OPropertySetHelper","cppu/ImplHelper10","cppu/ImplHelper11",
225cdf0e10cSrcweir			 "cppu/ImplHelper12","cppu/WeakAggImplHelper10",
226cdf0e10cSrcweir			 "cppu/WeakAggImplHelper11","cppu/WeakAggImplHelper12",
227cdf0e10cSrcweir			 "cppu/ImplInheritanceHelper1","cppu/ImplInheritanceHelper2",
228cdf0e10cSrcweir			 "cppu/ImplInheritanceHelper3","cppu/ImplInheritanceHelper4",
229cdf0e10cSrcweir			 "cppu/ImplInheritanceHelper5","cppu/ImplInheritanceHelper6",
230cdf0e10cSrcweir			 "cppu/ImplInheritanceHelper7","cppu/ImplInheritanceHelper8",
231cdf0e10cSrcweir			 "cppu/ImplInheritanceHelper9","cppu/OTypeCollection",
232cdf0e10cSrcweir			 "cppu/WeakAggComponentImplHelper10",
233cdf0e10cSrcweir			 "cppu/WeakAggComponentImplHelper11",
234cdf0e10cSrcweir			 "cppu/WeakAggComponentImplHelper12",
235cdf0e10cSrcweir			 "cppu/WeakAggComponentImplHelper1",
236cdf0e10cSrcweir			 "cppu/WeakAggComponentImplHelper2",
237cdf0e10cSrcweir			 "cppu/WeakAggComponentImplHelper3",
238cdf0e10cSrcweir			 "cppu/WeakAggComponentImplHelper4",
239cdf0e10cSrcweir			 "cppu/WeakAggComponentImplHelper5",
240cdf0e10cSrcweir			 "cppu/WeakAggComponentImplHelper6",
241cdf0e10cSrcweir			 "cppu/WeakAggComponentImplHelper7",
242cdf0e10cSrcweir			 "cppu/WeakAggComponentImplHelper8",
243cdf0e10cSrcweir			 "cppu/WeakAggComponentImplHelper9",
244cdf0e10cSrcweir			 "cppu/OMultiTypeInterfaceContainerHelperVar",
245cdf0e10cSrcweir			 "cppu/OInterfaceContainerHelper","cppu/OImplementationId",
246cdf0e10cSrcweir			 "cppu/AggImplInheritanceHelper1","cppu/AggImplInheritanceHelper2",
247cdf0e10cSrcweir			 "cppu/AggImplInheritanceHelper3","cppu/AggImplInheritanceHelper4",
248cdf0e10cSrcweir			 "cppu/AggImplInheritanceHelper5","cppu/AggImplInheritanceHelper6",
249cdf0e10cSrcweir			 "cppu/AggImplInheritanceHelper7","cppu/AggImplInheritanceHelper8",
250cdf0e10cSrcweir			 "cppu/AggImplInheritanceHelper9","cppu/AggImplInheritanceHelper10",
251cdf0e10cSrcweir			 "cppu/AggImplInheritanceHelper11","cppu/AggImplInheritanceHelper12",
252cdf0e10cSrcweir			 "cppu/WeakImplHelper1","cppu/WeakImplHelper2","cppu/WeakImplHelper3",
253cdf0e10cSrcweir			 "cppu/WeakImplHelper4","cppu/WeakImplHelper5","cppu/WeakImplHelper6",
254cdf0e10cSrcweir			 "cppu/WeakImplHelper7","cppu/WeakImplHelper8","cppu/WeakImplHelper9",
255cdf0e10cSrcweir			 "cppu/OWeakObject","__store_FindData","_rtl_StandardModuleCount",
256cdf0e10cSrcweir			 "RTUik","RTConstValue","_typelib_TypeDescriptionReference",
257cdf0e10cSrcweir			 "_typelib_InterfaceMethodTypeDescription","store","RegistryKey",
258cdf0e10cSrcweir			 "_typelib_Union_Init","_sal_Sequence","_typelib_Parameter_Init",
259cdf0e10cSrcweir			 "_typelib_TypeDescription","_uno_Environment",
260cdf0e10cSrcweir			 "_typelib_InterfaceAttributeTypeDescription",
261cdf0e10cSrcweir			 "_rtl_ModuleCount","_uno_ExtEnvironment",
262cdf0e10cSrcweir			 "_typelib_IndirectTypeDescription",
263cdf0e10cSrcweir			 "Registry_Api","_oslFileStatus",
264cdf0e10cSrcweir			 "_typelib_InterfaceMemberTypeDescription","RegistryValueList",
265cdf0e10cSrcweir			 "RegistryTypeWriter_Api","_rtl_TextEncodingInfo",
266cdf0e10cSrcweir			 "namespace_anonymous_1",
267cdf0e10cSrcweir			 "_oslVolumeInfo","_uno_Interface",
268cdf0e10cSrcweir			 "_typelib_InterfaceTypeDescription","_uno_Mapping","Registry",
269cdf0e10cSrcweir			 "RegistryTypeReader_Api","_typelib_Uik",
270cdf0e10cSrcweir			 "_typelib_ArrayTypeDescription",
271cdf0e10cSrcweir			 "RegistryKeyArray","RegistryTypeReader","RegistryKeyNames",
272cdf0e10cSrcweir			 "RTConstValueUnion","_typelib_UnionTypeDescription","_uno_Any",
273cdf0e10cSrcweir			 "RegistryTypeWriter","_rtl_Locale","_typelib_CompoundMember_Init",
274cdf0e10cSrcweir			 "_typelib_EnumTypeDescription","_typelib_MethodParameter");
275cdf0e10cSrcweir
276cdf0e10cSrcweir	foreach $i (@dir_list)
277cdf0e10cSrcweir	{
278cdf0e10cSrcweir	    if (! -d "$StartDir/docs/cpp/ref/names/$i") {
279cdf0e10cSrcweir		$return++;
280cdf0e10cSrcweir		print "\nERROR: \"$StartDir/docs/cpp/ref/names/$i\" is missing\n";
281cdf0e10cSrcweir	    } else {
282cdf0e10cSrcweir		print "+";
283cdf0e10cSrcweir	    }
284cdf0e10cSrcweir	}
285cdf0e10cSrcweir    } else {
286cdf0e10cSrcweir	$return++;
287cdf0e10cSrcweir    }
288cdf0e10cSrcweir    print "\n";
289cdf0e10cSrcweir
290cdf0e10cSrcweir    #check java docu, it is only a first and simple check
291cdf0e10cSrcweir    # improvement required
292cdf0e10cSrcweir    my $solar_java = $ENV{"SOLAR_JAVA"};
293cdf0e10cSrcweir    my $JDK = $ENV{"JDK"};
294cdf0e10cSrcweir    if (defined($solar_java) && $solar_java ne "" && (!defined($JDK) || $JDK ne "gcj")) {
295cdf0e10cSrcweir	print "check java docu: ";
296cdf0e10cSrcweir	if (-d "$StartDir/docs/java/ref") {
297cdf0e10cSrcweir	    if (! -e "$StartDir/docs/java/ref/index.html") {
298cdf0e10cSrcweir		print "\nERROR: \"$StartDir/docs/java/ref/index.html\" is missing\n";
299cdf0e10cSrcweir		$return++;
300cdf0e10cSrcweir	    }
301cdf0e10cSrcweir
302cdf0e10cSrcweir	    my @dir_list = ( "lib","lib/uno","lib/uno/helper","lib/uno/helper/class-use",
303cdf0e10cSrcweir			     "uno","uno/class-use","comp","comp/helper",
304cdf0e10cSrcweir			     "comp/helper/class-use");
305cdf0e10cSrcweir
306cdf0e10cSrcweir	    foreach $i (@dir_list)
307cdf0e10cSrcweir	    {
308cdf0e10cSrcweir		if (! -d "$StartDir/docs/java/ref/com/sun/star/$i") {
309cdf0e10cSrcweir		    $return++;
310cdf0e10cSrcweir		    print "\nERROR: \"$StartDir/docs/java/ref/com/sun/star/$i\" is missing\n";
311cdf0e10cSrcweir		} else {
312cdf0e10cSrcweir		    print "+";
313cdf0e10cSrcweir		}
314cdf0e10cSrcweir	    }
315cdf0e10cSrcweir	} else {
316cdf0e10cSrcweir	    $return++;
317cdf0e10cSrcweir	}
318cdf0e10cSrcweir	print "\n";
319cdf0e10cSrcweir    }
320cdf0e10cSrcweir
321cdf0e10cSrcweir    #check idl docu, it is only a first and simple check
322cdf0e10cSrcweir    # improvement required
323cdf0e10cSrcweir    print "check idl docu: ";
324cdf0e10cSrcweir    if (-d "$StartDir/docs/common/ref") {
325cdf0e10cSrcweir	if (! -e "$StartDir/docs/common/ref/module-ix.html") {
326cdf0e10cSrcweir	    print "\nERROR: \"$StartDir/docs/common/ref/module-ix.html\" is missing\n";
327cdf0e10cSrcweir	    $return++;
328cdf0e10cSrcweir	}
329cdf0e10cSrcweir	if (! -d "$StartDir/docs/common/ref/index-files") {
330cdf0e10cSrcweir	    print "\nERROR: \"$StartDir/docs/common/ref/index-files\" is missing\n";
331cdf0e10cSrcweir	    $return++;
332cdf0e10cSrcweir	}
333cdf0e10cSrcweir	if (! -e "$StartDir/docs/common/ref/index-files/index-10.html") {
334cdf0e10cSrcweir	    print "\nERROR: \"$StartDir/docs/common/ref/index-files/index-10.html\" is missing\n";
335cdf0e10cSrcweir	    $return++;
336cdf0e10cSrcweir	}
337cdf0e10cSrcweir
338cdf0e10cSrcweir	my @idl_dirlist = ( "accessibility",
339cdf0e10cSrcweir			    "animations",
340cdf0e10cSrcweir			    "auth",
341cdf0e10cSrcweir			    "awt",
342cdf0e10cSrcweir			    "awt/tab",
343cdf0e10cSrcweir			    "awt/tree",
344cdf0e10cSrcweir			    "awt/grid",
345cdf0e10cSrcweir			    "beans",
346cdf0e10cSrcweir			    "bridge",
347cdf0e10cSrcweir			    "bridge/oleautomation",
348cdf0e10cSrcweir			    "chart",
349cdf0e10cSrcweir			    "chart2",
350cdf0e10cSrcweir			    "chart2/data",
351cdf0e10cSrcweir			    "configuration",
352cdf0e10cSrcweir			    "configuration/backend",
353cdf0e10cSrcweir			    "configuration/backend/xml",
354cdf0e10cSrcweir			    "configuration/bootstrap",
355cdf0e10cSrcweir			    "connection",
356cdf0e10cSrcweir			    "container",
357cdf0e10cSrcweir			    "datatransfer",
358cdf0e10cSrcweir			    "datatransfer/clipboard",
359cdf0e10cSrcweir			    "datatransfer/dnd",
360cdf0e10cSrcweir			    "deployment",
361cdf0e10cSrcweir			    "deployment/ui",
362cdf0e10cSrcweir			    "document",
363cdf0e10cSrcweir			    "drawing",
364cdf0e10cSrcweir			    "drawing/framework",
365cdf0e10cSrcweir			    "embed",
366cdf0e10cSrcweir			    "form",
367cdf0e10cSrcweir			    "form/binding",
368cdf0e10cSrcweir			    "form/component",
369cdf0e10cSrcweir			    "form/control",
370cdf0e10cSrcweir			    "form/inspection",
371cdf0e10cSrcweir			    "form/runtime",
372cdf0e10cSrcweir			    "form/submission",
373cdf0e10cSrcweir			    "form/validation",
374cdf0e10cSrcweir			    "formula",
375cdf0e10cSrcweir			    "frame",
376cdf0e10cSrcweir			    "frame/status",
377cdf0e10cSrcweir			    "gallery",
378cdf0e10cSrcweir			    "geometry",
379cdf0e10cSrcweir			    "graphic",
380cdf0e10cSrcweir			    "i18n",
381cdf0e10cSrcweir			    "image",
382cdf0e10cSrcweir			    "inspection",
383cdf0e10cSrcweir			    "installation",
384cdf0e10cSrcweir			    "io",
385cdf0e10cSrcweir			    "java",
386cdf0e10cSrcweir			    "lang",
387cdf0e10cSrcweir			    "ldap",
388cdf0e10cSrcweir			    "linguistic2",
389cdf0e10cSrcweir			    "loader",
390cdf0e10cSrcweir			    "logging",
391cdf0e10cSrcweir			    "mail",
392cdf0e10cSrcweir			    "media",
393cdf0e10cSrcweir			    "mozilla",
394cdf0e10cSrcweir			    "packages",
395cdf0e10cSrcweir			    "packages/manifest",
396cdf0e10cSrcweir			    "packages/zip",
397cdf0e10cSrcweir			    "plugin",
398cdf0e10cSrcweir			    "presentation",
399cdf0e10cSrcweir			    "reflection",
400cdf0e10cSrcweir			    "registry",
401cdf0e10cSrcweir			    "rendering",
402cdf0e10cSrcweir			    "report",
403cdf0e10cSrcweir			    "report/inspection",
404cdf0e10cSrcweir			    "resource",
405cdf0e10cSrcweir			    "scanner",
406cdf0e10cSrcweir			    "script",
407cdf0e10cSrcweir			    "script/browse",
408cdf0e10cSrcweir			    "script/provider",
409cdf0e10cSrcweir			    "sdb",
410cdf0e10cSrcweir			    "sdb/application",
411cdf0e10cSrcweir			    "sdb/tools",
412cdf0e10cSrcweir			    "sdbc",
413cdf0e10cSrcweir			    "sdbcx",
414cdf0e10cSrcweir			    "security",
415cdf0e10cSrcweir			    "setup",
416cdf0e10cSrcweir			    "sheet",
417cdf0e10cSrcweir			    "smarttags",
418cdf0e10cSrcweir			    "style",
419cdf0e10cSrcweir			    "svg",
420cdf0e10cSrcweir			    "sync",
421cdf0e10cSrcweir			    "sync2",
422cdf0e10cSrcweir			    "system",
423cdf0e10cSrcweir			    "table",
424cdf0e10cSrcweir			    "task",
425cdf0e10cSrcweir			    "test",
426cdf0e10cSrcweir			    "test/bridge",
427cdf0e10cSrcweir			    "test/performance",
428cdf0e10cSrcweir			    "text",
429cdf0e10cSrcweir			    "text/fieldmaster",
430cdf0e10cSrcweir			    "text/textfield",
431cdf0e10cSrcweir			    "text/textfield/docinfo",
432cdf0e10cSrcweir			    "ucb",
433cdf0e10cSrcweir			    "ui",
434cdf0e10cSrcweir			    "ui/dialogs",
435cdf0e10cSrcweir			    "uno",
436cdf0e10cSrcweir			    "uri",
437cdf0e10cSrcweir			    "util",
438cdf0e10cSrcweir			    "util/logging",
439cdf0e10cSrcweir			    "view",
440cdf0e10cSrcweir			    "xforms",
441cdf0e10cSrcweir			    "xml",
442cdf0e10cSrcweir			    "xml/crypto",
443cdf0e10cSrcweir			    "xml/crypto/sax",
444cdf0e10cSrcweir			    "xml/csax",
445cdf0e10cSrcweir			    "xml/dom",
446cdf0e10cSrcweir			    "xml/dom/events",
447cdf0e10cSrcweir			    "xml/dom/views",
448cdf0e10cSrcweir			    "xml/input",
449cdf0e10cSrcweir			    "xml/sax",
450cdf0e10cSrcweir			    "xml/wrapper",
451cdf0e10cSrcweir			    "xml/xpath",
452cdf0e10cSrcweir			    "xsd" );
453cdf0e10cSrcweir
454cdf0e10cSrcweir	foreach $i (@idl_dirlist)
455cdf0e10cSrcweir	{
456cdf0e10cSrcweir	    if (! -d "$StartDir/docs/common/ref/com/sun/star/$i") {
457cdf0e10cSrcweir		$return++;
458cdf0e10cSrcweir		print "\nERROR: \"$StartDir/docs/common/ref/com/sun/star/$i\" is missing\n";
459cdf0e10cSrcweir	    } else {
460cdf0e10cSrcweir		print "+";
461cdf0e10cSrcweir	    }
462cdf0e10cSrcweir	}
463cdf0e10cSrcweir    } else {
464cdf0e10cSrcweir	$return++;
465cdf0e10cSrcweir    }
466cdf0e10cSrcweir    print "\n";
467cdf0e10cSrcweir
468cdf0e10cSrcweir} else {
469cdf0e10cSrcweir    $return++;
470cdf0e10cSrcweir}
471cdf0e10cSrcweir
472cdf0e10cSrcweirif( $return != 0 )
473cdf0e10cSrcweir{
474cdf0e10cSrcweir    print "ERROR\n";
475cdf0e10cSrcweir    unlink "$ARGV[3]";
476cdf0e10cSrcweir} else {
477cdf0e10cSrcweir    print "OK\n";
478cdf0e10cSrcweir}
479cdf0e10cSrcweirexit $return;
480