1 1.1.1.1.6.2 yamt #!/bin/bash 2 1.1.1.1.6.2 yamt 3 1.1.1.1.6.2 yamt #****************************************************************************** 4 1.1.1.1.6.2 yamt # 5 1.1.1.1.6.2 yamt # ACPICA package generation script for Cygwin/Windows execution 6 1.1.1.1.6.2 yamt # 7 1.1.1.1.6.2 yamt # Requires cygwin be installed - http://www.cygwin.com 8 1.1.1.1.6.2 yamt # and its /bin be *first* in your path. 9 1.1.1.1.6.2 yamt # 10 1.1.1.1.6.2 yamt # Windows packages require pkzip25 (free, and is available from numerous 11 1.1.1.1.6.2 yamt # sources - search for "pkzip25" or "pkzip25.exe") 12 1.1.1.1.6.2 yamt # 13 1.1.1.1.6.2 yamt # Execute this script from the acpica/generate/release directory. 14 1.1.1.1.6.2 yamt # 15 1.1.1.1.6.2 yamt # Constructed packages are placed in the acpica/generate/release/current 16 1.1.1.1.6.2 yamt # directory. 17 1.1.1.1.6.2 yamt # 18 1.1.1.1.6.2 yamt # Line Terminators: Windows source packages leave the CR/LF terminator. 19 1.1.1.1.6.2 yamt # Unix packages convert the CR/LF terminators to LF only. 20 1.1.1.1.6.2 yamt # 21 1.1.1.1.6.2 yamt # Usage: 22 1.1.1.1.6.2 yamt # 23 1.1.1.1.6.2 yamt # build <package_type> <target_type> 24 1.1.1.1.6.2 yamt # 25 1.1.1.1.6.2 yamt # where: 26 1.1.1.1.6.2 yamt # <package_type> is one of: 27 1.1.1.1.6.2 yamt # source - Build an ACPICA source package (core and all tools) 28 1.1.1.1.6.2 yamt # test - Build an ACPICA test suite package 29 1.1.1.1.6.2 yamt # binary - Build an ACPICA binary tools package 30 1.1.1.1.6.2 yamt # 31 1.1.1.1.6.2 yamt # <target_type> is one of: 32 1.1.1.1.6.2 yamt # win - Generate Windows package (Intel license, CRLF line terminators) 33 1.1.1.1.6.2 yamt # unix - Generate Unix package (Intel license, LF line terminators) 34 1.1.1.1.6.2 yamt # unix2 - Generate Unix package (dual license, LF line terminators) 35 1.1.1.1.6.2 yamt # 36 1.1.1.1.6.2 yamt #****************************************************************************** 37 1.1.1.1.6.2 yamt 38 1.1.1.1.6.2 yamt # Configuration 39 1.1.1.1.6.2 yamt 40 1.1.1.1.6.2 yamt ZIP_UTILITY="/cygdrive/c/windows/pkzip25.exe" 41 1.1.1.1.6.2 yamt ACPISRC="libraries/acpisrc.exe" 42 1.1.1.1.6.2 yamt DOS2UNIX="dos2unix" 43 1.1.1.1.6.2 yamt UNIX2DOS="unix2dos" 44 1.1.1.1.6.2 yamt 45 1.1.1.1.6.2 yamt # Filenames and paths 46 1.1.1.1.6.2 yamt 47 1.1.1.1.6.2 yamt TARGET_DIR="generate/release/current" 48 1.1.1.1.6.2 yamt TEMP_DIR=acpitemp 49 1.1.1.1.6.2 yamt TEST_PREFIX=acpitests 50 1.1.1.1.6.2 yamt SOURCE_PREFIX=acpica 51 1.1.1.1.6.2 yamt BINARY_PREFIX=iasl 52 1.1.1.1.6.2 yamt PACKAGE_SUFFIX=`date +%Y%m%d` 53 1.1.1.1.6.2 yamt 54 1.1.1.1.6.2 yamt NPARAM=$# 55 1.1.1.1.6.2 yamt 56 1.1.1.1.6.2 yamt 57 1.1.1.1.6.2 yamt #****************************************************************************** 58 1.1.1.1.6.2 yamt # 59 1.1.1.1.6.2 yamt # Miscellaneous utility functions 60 1.1.1.1.6.2 yamt # 61 1.1.1.1.6.2 yamt #****************************************************************************** 62 1.1.1.1.6.2 yamt 63 1.1.1.1.6.2 yamt usage() 64 1.1.1.1.6.2 yamt { 65 1.1.1.1.6.2 yamt echo "$1" 66 1.1.1.1.6.2 yamt echo 67 1.1.1.1.6.2 yamt echo "Low-level build script for ACPICA release packages" 68 1.1.1.1.6.2 yamt echo "Usage:" 69 1.1.1.1.6.2 yamt echo " $0 source <win | unix | unix2>" 70 1.1.1.1.6.2 yamt echo " $0 test <win | unix>" 71 1.1.1.1.6.2 yamt echo " $0 binary <win>" 72 1.1.1.1.6.2 yamt } 73 1.1.1.1.6.2 yamt 74 1.1.1.1.6.2 yamt banner() 75 1.1.1.1.6.2 yamt { 76 1.1.1.1.6.2 yamt echo 77 1.1.1.1.6.2 yamt echo "$1" 78 1.1.1.1.6.2 yamt echo 79 1.1.1.1.6.2 yamt } 80 1.1.1.1.6.2 yamt 81 1.1.1.1.6.2 yamt check_zip_utility_exists() 82 1.1.1.1.6.2 yamt { 83 1.1.1.1.6.2 yamt # 84 1.1.1.1.6.2 yamt # Need pkzip (or similar) to build the windows packages 85 1.1.1.1.6.2 yamt # 86 1.1.1.1.6.2 yamt if [ ! -e "$ZIP_UTILITY" ]; then 87 1.1.1.1.6.2 yamt echo "ZIP_UTILITY ($ZIP_UTILITY) does not exist!" 88 1.1.1.1.6.2 yamt exit 1 89 1.1.1.1.6.2 yamt fi 90 1.1.1.1.6.2 yamt } 91 1.1.1.1.6.2 yamt 92 1.1.1.1.6.2 yamt convert_to_unix_line_terminators() 93 1.1.1.1.6.2 yamt { 94 1.1.1.1.6.2 yamt # 95 1.1.1.1.6.2 yamt # Convert all CR/LF pairs to Unix format (LF only) 96 1.1.1.1.6.2 yamt # 97 1.1.1.1.6.2 yamt cd $TEMP_DIR 98 1.1.1.1.6.2 yamt echo "Starting CR/LF to LF (UNIX) full source conversion" 99 1.1.1.1.6.2 yamt find . -name "*" | xargs $DOS2UNIX -q 100 1.1.1.1.6.2 yamt echo "Completed CR/LF to LF (UNIX) full source conversion" 101 1.1.1.1.6.2 yamt cd .. 102 1.1.1.1.6.2 yamt } 103 1.1.1.1.6.2 yamt 104 1.1.1.1.6.2 yamt convert_to_dos_line_terminators() 105 1.1.1.1.6.2 yamt { 106 1.1.1.1.6.2 yamt # 107 1.1.1.1.6.2 yamt # Convert all lone LF terminators to CR/LF 108 1.1.1.1.6.2 yamt # Note: Checks shell scripts only (*.sh) 109 1.1.1.1.6.2 yamt # 110 1.1.1.1.6.2 yamt cd $TEMP_DIR 111 1.1.1.1.6.2 yamt echo "Starting LF to CR/LF (DOS) script conversion" 112 1.1.1.1.6.2 yamt find . -name "*.sh" | xargs $UNIX2DOS -q 113 1.1.1.1.6.2 yamt echo "Completed LF to CR/LF (DOS) script conversion" 114 1.1.1.1.6.2 yamt cd .. 115 1.1.1.1.6.2 yamt } 116 1.1.1.1.6.2 yamt 117 1.1.1.1.6.2 yamt insert_dual_license_headers() 118 1.1.1.1.6.2 yamt { 119 1.1.1.1.6.2 yamt # 120 1.1.1.1.6.2 yamt # Need acpisrc utility to insert the headers 121 1.1.1.1.6.2 yamt # 122 1.1.1.1.6.2 yamt if [ ! -e "$ACPISRC" ]; then 123 1.1.1.1.6.2 yamt echo "acpisrc ($ACPISRC) does not exist!" 124 1.1.1.1.6.2 yamt exit 1 125 1.1.1.1.6.2 yamt fi 126 1.1.1.1.6.2 yamt 127 1.1.1.1.6.2 yamt # 128 1.1.1.1.6.2 yamt # Insert the dual license into *.c and *.h files 129 1.1.1.1.6.2 yamt # 130 1.1.1.1.6.2 yamt echo "Inserting dual-license into all source files" 131 1.1.1.1.6.2 yamt $ACPISRC -h -y $TEMP_DIR 132 1.1.1.1.6.2 yamt } 133 1.1.1.1.6.2 yamt 134 1.1.1.1.6.2 yamt build_unix_package() 135 1.1.1.1.6.2 yamt { 136 1.1.1.1.6.2 yamt convert_to_unix_line_terminators 137 1.1.1.1.6.2 yamt 138 1.1.1.1.6.2 yamt # 139 1.1.1.1.6.2 yamt # Build release package 140 1.1.1.1.6.2 yamt # 141 1.1.1.1.6.2 yamt rm -r -f $PACKAGE_FILENAME 142 1.1.1.1.6.2 yamt mv $TEMP_DIR $PACKAGE_FILENAME 143 1.1.1.1.6.2 yamt tar czf $PACKAGE_FILENAME.tar.gz $PACKAGE_FILENAME 144 1.1.1.1.6.2 yamt 145 1.1.1.1.6.2 yamt # 146 1.1.1.1.6.2 yamt # Move the completed package 147 1.1.1.1.6.2 yamt # 148 1.1.1.1.6.2 yamt mv $PACKAGE_FILENAME.tar.gz $TARGET_DIR 149 1.1.1.1.6.2 yamt mv $PACKAGE_FILENAME $TEMP_DIR 150 1.1.1.1.6.2 yamt } 151 1.1.1.1.6.2 yamt 152 1.1.1.1.6.2 yamt build_windows_package() 153 1.1.1.1.6.2 yamt { 154 1.1.1.1.6.2 yamt convert_to_dos_line_terminators 155 1.1.1.1.6.2 yamt 156 1.1.1.1.6.2 yamt # 157 1.1.1.1.6.2 yamt # Build release package 158 1.1.1.1.6.2 yamt # 159 1.1.1.1.6.2 yamt cd $TEMP_DIR 160 1.1.1.1.6.2 yamt rm -r -f ../$TARGET_DIR/$PACKAGE_FILENAME 161 1.1.1.1.6.2 yamt $ZIP_UTILITY -silent -add -max -dir -sort=name ../$TARGET_DIR/$PACKAGE_FILENAME 162 1.1.1.1.6.2 yamt cd .. 163 1.1.1.1.6.2 yamt } 164 1.1.1.1.6.2 yamt 165 1.1.1.1.6.2 yamt 166 1.1.1.1.6.2 yamt #****************************************************************************** 167 1.1.1.1.6.2 yamt # 168 1.1.1.1.6.2 yamt # generate_source_package 169 1.1.1.1.6.2 yamt # 170 1.1.1.1.6.2 yamt # Generates the ACPICA source code packages (core and all tools) 171 1.1.1.1.6.2 yamt # 172 1.1.1.1.6.2 yamt # Arguments: 173 1.1.1.1.6.2 yamt # %1 - Target type (win or unix or unix2) 174 1.1.1.1.6.2 yamt # 175 1.1.1.1.6.2 yamt #****************************************************************************** 176 1.1.1.1.6.2 yamt 177 1.1.1.1.6.2 yamt generate_source_package () 178 1.1.1.1.6.2 yamt { 179 1.1.1.1.6.2 yamt # 180 1.1.1.1.6.2 yamt # Parameter evaluation 181 1.1.1.1.6.2 yamt # 182 1.1.1.1.6.2 yamt if [ $1 == win ]; then 183 1.1.1.1.6.2 yamt PACKAGE_NAME=Windows 184 1.1.1.1.6.2 yamt PACKAGE_TYPE=Win 185 1.1.1.1.6.2 yamt LICENSE=Intel 186 1.1.1.1.6.2 yamt check_zip_utility_exists 187 1.1.1.1.6.2 yamt 188 1.1.1.1.6.2 yamt elif [ $1 == unix ]; then 189 1.1.1.1.6.2 yamt PACKAGE_NAME="Unix (Intel License)" 190 1.1.1.1.6.2 yamt PACKAGE_TYPE=Unix 191 1.1.1.1.6.2 yamt LICENSE=Intel 192 1.1.1.1.6.2 yamt 193 1.1.1.1.6.2 yamt elif [ $1 == unix2 ]; then 194 1.1.1.1.6.2 yamt PACKAGE_NAME="Unix (Dual License)" 195 1.1.1.1.6.2 yamt PACKAGE_TYPE=Unix 196 1.1.1.1.6.2 yamt LICENSE=Dual 197 1.1.1.1.6.2 yamt 198 1.1.1.1.6.2 yamt else 199 1.1.1.1.6.2 yamt usage "Invalid argument ($1)" 200 1.1.1.1.6.2 yamt exit 1 201 1.1.1.1.6.2 yamt fi 202 1.1.1.1.6.2 yamt 203 1.1.1.1.6.2 yamt PACKAGE_FILENAME=$SOURCE_PREFIX-$1-$PACKAGE_SUFFIX 204 1.1.1.1.6.2 yamt banner "ACPICA - Generating $PACKAGE_NAME source code package ($PACKAGE_FILENAME)" 205 1.1.1.1.6.2 yamt 206 1.1.1.1.6.2 yamt # 207 1.1.1.1.6.2 yamt # Make directories common to all source packages 208 1.1.1.1.6.2 yamt # 209 1.1.1.1.6.2 yamt mkdir $TEMP_DIR 210 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/libraries 211 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/generate 212 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/generate/lint 213 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/generate/release 214 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/generate/unix 215 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/generate/unix/acpibin 216 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/generate/unix/acpidump 217 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/generate/unix/acpiexec 218 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/generate/unix/acpihelp 219 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/generate/unix/acpinames 220 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/generate/unix/acpisrc 221 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/generate/unix/acpixtract 222 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/generate/unix/iasl 223 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/tests 224 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/tests/misc 225 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/tests/templates 226 1.1.1.1.6.2 yamt mkdir -p $TEMP_DIR/source/os_specific/service_layers 227 1.1.1.1.6.2 yamt 228 1.1.1.1.6.2 yamt # 229 1.1.1.1.6.2 yamt # Copy ACPICA subsystem source code 230 1.1.1.1.6.2 yamt # 231 1.1.1.1.6.2 yamt cp -r documents/changes.txt $TEMP_DIR/changes.txt 232 1.1.1.1.6.2 yamt cp -r source/common $TEMP_DIR/source/common 233 1.1.1.1.6.2 yamt cp -r source/components $TEMP_DIR/source/ 234 1.1.1.1.6.2 yamt cp -r source/include $TEMP_DIR/source/include 235 1.1.1.1.6.2 yamt cp -r generate/release/*.sh $TEMP_DIR/generate/release 236 1.1.1.1.6.2 yamt 237 1.1.1.1.6.2 yamt # 238 1.1.1.1.6.2 yamt # Copy iASL compiler and tools source 239 1.1.1.1.6.2 yamt # 240 1.1.1.1.6.2 yamt cp -r source/compiler $TEMP_DIR/source/compiler 241 1.1.1.1.6.2 yamt cp -r source/tools $TEMP_DIR/source/tools 242 1.1.1.1.6.2 yamt 243 1.1.1.1.6.2 yamt # 244 1.1.1.1.6.2 yamt # Copy iASL/ACPICA miscellaneous tests (not full test suites) 245 1.1.1.1.6.2 yamt # 246 1.1.1.1.6.2 yamt cp -r tests/misc/*.asl $TEMP_DIR/tests/misc 247 1.1.1.1.6.2 yamt cp -r tests/templates/Makefile $TEMP_DIR/tests/templates 248 1.1.1.1.6.2 yamt cp -r tests/templates/templates.sh $TEMP_DIR/tests/templates 249 1.1.1.1.6.2 yamt 250 1.1.1.1.6.2 yamt # 251 1.1.1.1.6.2 yamt # Copy all OS-specific interfaces 252 1.1.1.1.6.2 yamt # 253 1.1.1.1.6.2 yamt cp source/os_specific/service_layers/*.c $TEMP_DIR/source/os_specific/service_layers 254 1.1.1.1.6.2 yamt 255 1.1.1.1.6.2 yamt # 256 1.1.1.1.6.2 yamt # Copy generic UNIX makefiles 257 1.1.1.1.6.2 yamt # 258 1.1.1.1.6.2 yamt cp Makefile $TEMP_DIR 259 1.1.1.1.6.2 yamt cp generate/unix/readme.txt $TEMP_DIR/generate/unix/readme.txt 260 1.1.1.1.6.2 yamt cp generate/unix/Makefile* $TEMP_DIR/generate/unix 261 1.1.1.1.6.2 yamt cp generate/unix/acpibin/Makefile $TEMP_DIR/generate/unix/acpibin 262 1.1.1.1.6.2 yamt cp generate/unix/acpidump/Makefile $TEMP_DIR/generate/unix/acpidump 263 1.1.1.1.6.2 yamt cp generate/unix/acpiexec/Makefile $TEMP_DIR/generate/unix/acpiexec 264 1.1.1.1.6.2 yamt cp generate/unix/acpihelp/Makefile $TEMP_DIR/generate/unix/acpihelp 265 1.1.1.1.6.2 yamt cp generate/unix/acpinames/Makefile $TEMP_DIR/generate/unix/acpinames 266 1.1.1.1.6.2 yamt cp generate/unix/acpisrc/Makefile $TEMP_DIR/generate/unix/acpisrc 267 1.1.1.1.6.2 yamt cp generate/unix/acpixtract/Makefile $TEMP_DIR/generate/unix/acpixtract 268 1.1.1.1.6.2 yamt cp generate/unix/iasl/Makefile $TEMP_DIR/generate/unix/iasl 269 1.1.1.1.6.2 yamt 270 1.1.1.1.6.2 yamt # 271 1.1.1.1.6.2 yamt # Copy Lint directory 272 1.1.1.1.6.2 yamt # 273 1.1.1.1.6.2 yamt cp -r generate/lint $TEMP_DIR/generate 274 1.1.1.1.6.2 yamt rm -f $TEMP_DIR/generate/lint/co* 275 1.1.1.1.6.2 yamt rm -f $TEMP_DIR/generate/lint/env* 276 1.1.1.1.6.2 yamt rm -f $TEMP_DIR/generate/lint/lib* 277 1.1.1.1.6.2 yamt rm -f $TEMP_DIR/generate/lint/LintOut.txt 278 1.1.1.1.6.2 yamt 279 1.1.1.1.6.2 yamt if [ $PACKAGE_TYPE == Unix ]; then 280 1.1.1.1.6.2 yamt # 281 1.1.1.1.6.2 yamt # Unix/Linux-specific activities 282 1.1.1.1.6.2 yamt # 283 1.1.1.1.6.2 yamt # For Unix2 case, insert the dual license header into all source files 284 1.1.1.1.6.2 yamt # 285 1.1.1.1.6.2 yamt if [ $LICENSE == Dual ]; then 286 1.1.1.1.6.2 yamt insert_dual_license_headers 287 1.1.1.1.6.2 yamt fi 288 1.1.1.1.6.2 yamt 289 1.1.1.1.6.2 yamt build_unix_package 290 1.1.1.1.6.2 yamt 291 1.1.1.1.6.2 yamt else 292 1.1.1.1.6.2 yamt # 293 1.1.1.1.6.2 yamt # Windows-specific activities 294 1.1.1.1.6.2 yamt # 295 1.1.1.1.6.2 yamt 296 1.1.1.1.6.2 yamt # Copy project files for MS Visual Studio 2008 (VC++ 9.0) 297 1.1.1.1.6.2 yamt 298 1.1.1.1.6.2 yamt mkdir $TEMP_DIR/generate/msvc9 299 1.1.1.1.6.2 yamt cp -r generate/msvc9/*.sln $TEMP_DIR/generate/msvc9/ 300 1.1.1.1.6.2 yamt cp -r generate/msvc9/*.vcproj $TEMP_DIR/generate/msvc9/ 301 1.1.1.1.6.2 yamt 302 1.1.1.1.6.2 yamt build_windows_package 303 1.1.1.1.6.2 yamt fi 304 1.1.1.1.6.2 yamt 305 1.1.1.1.6.2 yamt banner "ACPICA - Completed $PACKAGE_NAME source code package ($PACKAGE_FILENAME)" 306 1.1.1.1.6.2 yamt } 307 1.1.1.1.6.2 yamt 308 1.1.1.1.6.2 yamt 309 1.1.1.1.6.2 yamt #****************************************************************************** 310 1.1.1.1.6.2 yamt # 311 1.1.1.1.6.2 yamt # generate_test_package 312 1.1.1.1.6.2 yamt # 313 1.1.1.1.6.2 yamt # Generates the ACPICA test suite packages 314 1.1.1.1.6.2 yamt # 315 1.1.1.1.6.2 yamt # Arguments: 316 1.1.1.1.6.2 yamt # %1 - Target type (win or unix) 317 1.1.1.1.6.2 yamt # 318 1.1.1.1.6.2 yamt #****************************************************************************** 319 1.1.1.1.6.2 yamt 320 1.1.1.1.6.2 yamt generate_test_package() 321 1.1.1.1.6.2 yamt { 322 1.1.1.1.6.2 yamt # 323 1.1.1.1.6.2 yamt # Parameter evaluation 324 1.1.1.1.6.2 yamt # 325 1.1.1.1.6.2 yamt if [ $1 == win ]; then 326 1.1.1.1.6.2 yamt PACKAGE_NAME=Windows 327 1.1.1.1.6.2 yamt PACKAGE_TYPE=Win 328 1.1.1.1.6.2 yamt check_zip_utility_exists 329 1.1.1.1.6.2 yamt 330 1.1.1.1.6.2 yamt elif [ $1 == unix ]; then 331 1.1.1.1.6.2 yamt PACKAGE_NAME="Unix" 332 1.1.1.1.6.2 yamt PACKAGE_TYPE=Unix 333 1.1.1.1.6.2 yamt 334 1.1.1.1.6.2 yamt else 335 1.1.1.1.6.2 yamt usage "Invalid argument ($1)" 336 1.1.1.1.6.2 yamt exit 1 337 1.1.1.1.6.2 yamt fi 338 1.1.1.1.6.2 yamt 339 1.1.1.1.6.2 yamt PACKAGE_FILENAME=$TEST_PREFIX-$1-$PACKAGE_SUFFIX 340 1.1.1.1.6.2 yamt banner "ACPICA - Generating $PACKAGE_NAME test suite package ($PACKAGE_FILENAME)" 341 1.1.1.1.6.2 yamt 342 1.1.1.1.6.2 yamt # 343 1.1.1.1.6.2 yamt # Copy the ASL Test source 344 1.1.1.1.6.2 yamt # 345 1.1.1.1.6.2 yamt mkdir $TEMP_DIR 346 1.1.1.1.6.2 yamt cp -r tests $TEMP_DIR/tests 347 1.1.1.1.6.2 yamt 348 1.1.1.1.6.2 yamt # 349 1.1.1.1.6.2 yamt # Delete extraneous files 350 1.1.1.1.6.2 yamt # 351 1.1.1.1.6.2 yamt cd $TEMP_DIR 352 1.1.1.1.6.2 yamt find . -name "tmp" | xargs rm -r -f 353 1.1.1.1.6.2 yamt find . -name "aml" | xargs rm -r -f 354 1.1.1.1.6.2 yamt find . -name "CVS" | xargs rm -r -f 355 1.1.1.1.6.2 yamt cd .. 356 1.1.1.1.6.2 yamt 357 1.1.1.1.6.2 yamt if [ $PACKAGE_TYPE == Unix ]; then 358 1.1.1.1.6.2 yamt # 359 1.1.1.1.6.2 yamt # Unix/Linux-specific activities 360 1.1.1.1.6.2 yamt # 361 1.1.1.1.6.2 yamt build_unix_package 362 1.1.1.1.6.2 yamt 363 1.1.1.1.6.2 yamt else 364 1.1.1.1.6.2 yamt # 365 1.1.1.1.6.2 yamt # Windows-specific activities 366 1.1.1.1.6.2 yamt # 367 1.1.1.1.6.2 yamt build_windows_package 368 1.1.1.1.6.2 yamt fi 369 1.1.1.1.6.2 yamt 370 1.1.1.1.6.2 yamt banner "ACPICA - Completed $PACKAGE_NAME test suite package ($PACKAGE_FILENAME)" 371 1.1.1.1.6.2 yamt } 372 1.1.1.1.6.2 yamt 373 1.1.1.1.6.2 yamt 374 1.1.1.1.6.2 yamt #****************************************************************************** 375 1.1.1.1.6.2 yamt # 376 1.1.1.1.6.2 yamt # generate_binary_package 377 1.1.1.1.6.2 yamt # 378 1.1.1.1.6.2 yamt # Generates the ACPICA binary package (Currently Windows only) 379 1.1.1.1.6.2 yamt # 380 1.1.1.1.6.2 yamt # Arguments: 381 1.1.1.1.6.2 yamt # %1 - Target type (win) 382 1.1.1.1.6.2 yamt # 383 1.1.1.1.6.2 yamt #****************************************************************************** 384 1.1.1.1.6.2 yamt 385 1.1.1.1.6.2 yamt generate_binary_package() 386 1.1.1.1.6.2 yamt { 387 1.1.1.1.6.2 yamt # 388 1.1.1.1.6.2 yamt # Parameter evaluation 389 1.1.1.1.6.2 yamt # 390 1.1.1.1.6.2 yamt if [ $1 == win ]; then 391 1.1.1.1.6.2 yamt PACKAGE_NAME=Windows 392 1.1.1.1.6.2 yamt PACKAGE_TYPE=Win 393 1.1.1.1.6.2 yamt check_zip_utility_exists 394 1.1.1.1.6.2 yamt 395 1.1.1.1.6.2 yamt else 396 1.1.1.1.6.2 yamt usage "Invalid argument ($1)" 397 1.1.1.1.6.2 yamt exit 1 398 1.1.1.1.6.2 yamt fi 399 1.1.1.1.6.2 yamt 400 1.1.1.1.6.2 yamt PACKAGE_FILENAME=$BINARY_PREFIX-$1-$PACKAGE_SUFFIX 401 1.1.1.1.6.2 yamt banner "ACPICA - Generating $PACKAGE_NAME binary tools package ($PACKAGE_FILENAME)" 402 1.1.1.1.6.2 yamt 403 1.1.1.1.6.2 yamt # 404 1.1.1.1.6.2 yamt # Copy executables and documentation 405 1.1.1.1.6.2 yamt # 406 1.1.1.1.6.2 yamt mkdir $TEMP_DIR 407 1.1.1.1.6.2 yamt cp -r documents/changes.txt $TEMP_DIR/changes.txt 408 1.1.1.1.6.2 yamt cp documents/aslcompiler.pdf $TEMP_DIR 409 1.1.1.1.6.2 yamt cp libraries/acpibin.exe $TEMP_DIR 410 1.1.1.1.6.2 yamt cp libraries/acpidump.exe $TEMP_DIR 411 1.1.1.1.6.2 yamt cp libraries/acpiexec.exe $TEMP_DIR 412 1.1.1.1.6.2 yamt cp libraries/acpihelp.exe $TEMP_DIR 413 1.1.1.1.6.2 yamt cp libraries/acpinames.exe $TEMP_DIR 414 1.1.1.1.6.2 yamt cp libraries/acpisrc.exe $TEMP_DIR 415 1.1.1.1.6.2 yamt cp libraries/acpixtract.exe $TEMP_DIR 416 1.1.1.1.6.2 yamt cp libraries/iasl.exe $TEMP_DIR 417 1.1.1.1.6.2 yamt cp tests/misc/badcode.asl $TEMP_DIR 418 1.1.1.1.6.2 yamt 419 1.1.1.1.6.2 yamt build_windows_package 420 1.1.1.1.6.2 yamt banner "ACPICA - Completed $PACKAGE_NAME binary tools package ($PACKAGE_FILENAME)" 421 1.1.1.1.6.2 yamt } 422 1.1.1.1.6.2 yamt 423 1.1.1.1.6.2 yamt 424 1.1.1.1.6.2 yamt #****************************************************************************** 425 1.1.1.1.6.2 yamt # 426 1.1.1.1.6.2 yamt # main 427 1.1.1.1.6.2 yamt # 428 1.1.1.1.6.2 yamt # Arguments: 429 1.1.1.1.6.2 yamt # $1 (package_type) is one of: 430 1.1.1.1.6.2 yamt # source - Build an ACPICA source package (core and all tools) 431 1.1.1.1.6.2 yamt # test - Build an ACPICA test suite package 432 1.1.1.1.6.2 yamt # binary - Build an ACPICA binary tools package 433 1.1.1.1.6.2 yamt # 434 1.1.1.1.6.2 yamt # $2 (target_type) is one of: 435 1.1.1.1.6.2 yamt # win - Generate Windows package (Intel license, CRLF line terminators) 436 1.1.1.1.6.2 yamt # unix - Generate Unix package (Intel license, LF line terminators) 437 1.1.1.1.6.2 yamt # unix2 - Generate Unix package (dual license, LF line terminators) 438 1.1.1.1.6.2 yamt # 439 1.1.1.1.6.2 yamt #****************************************************************************** 440 1.1.1.1.6.2 yamt 441 1.1.1.1.6.2 yamt set -e # Abort on any error 442 1.1.1.1.6.2 yamt 443 1.1.1.1.6.2 yamt if [ $NPARAM -ne 2 ]; then 444 1.1.1.1.6.2 yamt usage "Wrong argument count ($NPARAM)" 445 1.1.1.1.6.2 yamt exit 1 446 1.1.1.1.6.2 yamt fi 447 1.1.1.1.6.2 yamt 448 1.1.1.1.6.2 yamt # 449 1.1.1.1.6.2 yamt # cd from acpica/generate/release to acpica 450 1.1.1.1.6.2 yamt # 451 1.1.1.1.6.2 yamt cd ../.. 452 1.1.1.1.6.2 yamt 453 1.1.1.1.6.2 yamt # 454 1.1.1.1.6.2 yamt # Ensure that the temporary directory is created fresh 455 1.1.1.1.6.2 yamt # 456 1.1.1.1.6.2 yamt rm -rf $TEMP_DIR 457 1.1.1.1.6.2 yamt 458 1.1.1.1.6.2 yamt # 459 1.1.1.1.6.2 yamt # Parameter evaluation 460 1.1.1.1.6.2 yamt # 461 1.1.1.1.6.2 yamt if [ $1 == source ]; then 462 1.1.1.1.6.2 yamt generate_source_package $2 463 1.1.1.1.6.2 yamt 464 1.1.1.1.6.2 yamt elif [ $1 == test ]; then 465 1.1.1.1.6.2 yamt generate_test_package $2 466 1.1.1.1.6.2 yamt 467 1.1.1.1.6.2 yamt elif [ $1 == binary ]; then 468 1.1.1.1.6.2 yamt generate_binary_package $2 469 1.1.1.1.6.2 yamt 470 1.1.1.1.6.2 yamt else 471 1.1.1.1.6.2 yamt usage "Invalid argument ($1)" 472 1.1.1.1.6.2 yamt exit 1 473 1.1.1.1.6.2 yamt fi 474 1.1.1.1.6.2 yamt 475 1.1.1.1.6.2 yamt # 476 1.1.1.1.6.2 yamt # Remove temporary directory 477 1.1.1.1.6.2 yamt # 478 1.1.1.1.6.2 yamt rm -rf $TEMP_DIR 479