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