diff options
author | RajithaY <rajithax.yerrumsetty@intel.com> | 2017-04-25 03:31:15 -0700 |
---|---|---|
committer | Rajitha Yerrumchetty <rajithax.yerrumsetty@intel.com> | 2017-05-22 06:48:08 +0000 |
commit | bb756eebdac6fd24e8919e2c43f7d2c8c4091f59 (patch) | |
tree | ca11e03542edf2d8f631efeca5e1626d211107e3 /qemu/roms/ipxe/contrib/rom-o-matic/build.php | |
parent | a14b48d18a9ed03ec191cf16b162206998a895ce (diff) |
Adding qemu as a submodule of KVMFORNFV
This Patch includes the changes to add qemu as a submodule to
kvmfornfv repo and make use of the updated latest qemu for the
execution of all testcase
Change-Id: I1280af507a857675c7f81d30c95255635667bdd7
Signed-off-by:RajithaY<rajithax.yerrumsetty@intel.com>
Diffstat (limited to 'qemu/roms/ipxe/contrib/rom-o-matic/build.php')
-rw-r--r-- | qemu/roms/ipxe/contrib/rom-o-matic/build.php | 311 |
1 files changed, 0 insertions, 311 deletions
diff --git a/qemu/roms/ipxe/contrib/rom-o-matic/build.php b/qemu/roms/ipxe/contrib/rom-o-matic/build.php deleted file mode 100644 index b2b5bb452..000000000 --- a/qemu/roms/ipxe/contrib/rom-o-matic/build.php +++ /dev/null @@ -1,311 +0,0 @@ -<?php // -*- Mode: PHP; -*- - -/** - * Copyright (C) 2009 Marty Connor <mdc@etherboot.org>. - * Copyright (C) 2009 Entity Cyber, Inc. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of the - * License, or any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -// Get utility functions and set globals -require_once "utils.php"; - -// Make sure at least $A (action) was supplied -if ( ! isset ( $_POST['A'] ) ) { - - // Present user with form to customize build options - require_once "customize-flags.php"; - - exit (); - -// If user chose "Customize" option on form -} else if ( $_POST['A'] == "Customize" ) { - - // Present user with form to customize build options - require_once "customize-flags.php"; - - exit (); - -// The following conditional includes all other cases except "Get Image" -// particularly the explicit ($A == "Start Over") case -} else if ( $_POST['A'] != "Get Image" ) { - - // Note that this method of redirections discards all the - // configuration flags, which is intentional in this case. - - $dest = curDirURL (); - header ( "Location: $dest" ); - - // This next "echo" should normally not be seen, because - // the "header" statement above should cause immediate - // redirection but just in case... - - echo "Try this link: <a href=\"$dest\">$dest</a>"; - - exit (); -} - -// OK, we're going to try to use whatever options have been set -// to build an image. - -// Make sure at least $nic was supplied -if ( ! isset ( $_POST['nic'] ) ) { - die ( "No NIC supplied!" ); -} -if ( isset ( $nics[$_POST['nic']] ) ) { - $nic = $nics[$_POST['nic']]; -} else { - die ( "Invalid NIC \"${_POST['nic']}\" supplied!" ); -} - -// Fetch flags -$flags = get_flags (); - -// Get requested format -$ofmt = isset ( $_POST['ofmt'] ) ? $_POST['ofmt'] : ""; -$fmt_extension = isset ( $ofmts[$ofmt] ) ? $ofmts[$ofmt] : 'dsk'; - -// Handle some special cases - -$pci_vendor_code = ""; -$pci_device_code = ""; - -if ( $nic == 'undionly' && $fmt_extension == "pxe" ) { - - // undionly.pxe can't work because it unloads the PXE stack - // that it needs to communicate with, so we set the extension - // to .kpxe, which has a chance of working. The extension - // .kkpxe is another option. - - $fmt_extension = "kpxe"; - -} else if ( $fmt_extension == "rom" ) { - - if ( ! isset ( $_POST['pci_vendor_code'] ) - || ! isset ( $_POST['pci_device_code'] ) ) { - die ( "rom output format selected but PCI code(s) missing!" ); - } - - $pci_vendor_code = $_POST['pci_vendor_code']; - $pci_device_code = $_POST['pci_device_code']; - - if ( $pci_vendor_code == "" - || $pci_device_code == "" ) { - die ( "rom output format selected but PCI code(s) missing!" ); - } - - // Try to be forgiving of 0xAAAA format - if ( strtolower ( substr ( $pci_vendor_code, 0, 2 ) ) == "0x" - && strlen ( $pci_vendor_code ) == 6 ) { - $pci_vendor_code = substr ( $pci_vendor_code, 2, 4 ); - } - if ( strtolower ( substr ( $pci_device_code, 0, 2 ) ) == "0x" - && strlen ( $pci_device_code ) == 6 ) { - $pci_device_code = substr ( $pci_device_code, 2, 4 ); - } - - // concatenate the pci codes to get the $nic part of the - // Make target - $pci_codes = strtolower ( $pci_vendor_code . $pci_device_code ); - - $nic = $pci_codes; - if ( ! isset ( $roms[$pci_codes] ) ) { - die ( "Sorry, no network driver supports PCI codes<br>" - . "${_POST['pci_vendor_code']}:" - . "${_POST['pci_device_code']}" ); - } -} else if ( $fmt_extension != "rom" - && ( $pci_vendor_code != "" || $pci_device_code != "" ) ) { - die ( "'$fmt_extension' format was selected but PCI IDs were" - . " also entered.<br>Did you mean to select 'rom' output format" - . " instead?" ); -} - -/** - * remove temporary build directory - * - * @return bool true if removal is successful, false otherwise - */ -function rm_build_dir () -{ - global $build_dir; - global $keep_build_dir; - - if ( $keep_build_dir !== true ) { - rm_file_or_dir ( $build_dir ); - } -} - -// Arrange for the build directory to always be removed on exit. -$build_dir = ""; -$keep_build_dir = false; -register_shutdown_function ( 'rm_build_dir' ); - -// Make temporary copy of src directory -$build_dir = mktempcopy ( "$src_dir", "/tmp", "MDCROM" ); -$config_dir = $build_dir . "/config"; - -// Write config files with supplied flags -write_ipxe_config_files ( $config_dir, $flags ); - -// Handle a possible embedded script -$emb_script_cmd = ""; -$embedded_script = isset ( $_POST['embedded_script'] ) ? $_POST['embedded_script'] : ""; -if ( $embedded_script != "" ) { - $emb_script_path = "$build_dir" . "/script0.ipxe"; - - if ( substr ( $embedded_script, 0, 5 ) != "#!ipxe" ) { - $embedded_script = "#!ipxe\n" . $embedded_script; - } - - // iPXE 0.9.7 doesn't like '\r\n" in the shebang... - $embedded_script = str_replace ( "\r\n", "\n", $embedded_script ); - - write_file_from_string ( $emb_script_path, $embedded_script ); - $emb_script_cmd = "EMBEDDED_IMAGE=${emb_script_path}"; -} - -// Make the requested image. $status is set to 0 on success -$make_target = "bin/${nic}.${fmt_extension}"; -$gitversion = exec('git describe --always --abbrev=1 --match "" 2>/dev/null'); -if ($gitversion) { - $gitversion = "GITVERSION=$gitversion"; -} - -$make_cmd = "make -C '$build_dir' '$make_target' $gitversion $emb_script_cmd 2>&1"; - -exec ( $make_cmd, $maketxt, $status ); - -// Uncomment the following section for debugging - -/** - -echo "<h2>build.php:</h2>"; -echo "<h3>Begin debugging output</h3>"; - -//echo "<h3>\$_POST variables</h3>"; -//echo "<pre>"; var_dump ( $_POST ); echo "</pre>"; - -echo "<h3>Build options:</h3>"; -echo "<strong>Build directory is:</strong> $build_dir" . "<br><br>"; -echo "\$_POST['ofmt'] = " . "\"${_POST['ofmt']}\"" . "<br>"; -echo "\$_POST['nic'] = " . "\"${_POST['nic']}\"" . "<br>"; -echo "\$_POST['pci_vendor_code'] = " . "\"${_POST['pci_vendor_code']}\"" . "<br>"; -echo "\$_POST['pci_device_code'] = " . "\"${_POST['pci_device_code']}\"" . "<br>"; - -echo "<h3>Flags:</h3>"; -show_flags ( $flags ); - -if ( $embedded_script != "" ) { - echo "<h3>Embedded script:</h3>"; - echo "<blockquote>"."<pre>"; - echo $embedded_script; - echo "</pre>"."</blockquote>"; -} - -echo "<h3>Make output:</h3>"; -echo "Make command: " . $make_cmd . "<br>"; -echo "Build status = <? echo $status ?>" . "<br>"; -echo "<blockquote>"."<pre>"; -echo htmlentities ( implode ("\n", $maketxt ) ); -echo "</pre>"."</blockquote>"; -// Uncomment the next line if you want to keep the -// build directory around for inspection after building. -$keep_build_dir = true; -die ( "<h3>End debugging output</h3>" ); - -**/ // End debugging section - -// Send ROM to browser (with extreme prejudice) - -if ( $status == 0 ) { - - $fp = fopen("${build_dir}/${make_target}", "rb" ); - if ( $fp > 0 ) { - - $len = filesize ( "${build_dir}/${make_target}" ); - if ( $len > 0 ) { - - $buf = fread ( $fp, $len ); - fclose ( $fp ); - - // Delete build directory as soon as it is not needed - rm_build_dir (); - - $output_filename = preg_replace('/[^a-z0-9\+\.\-]/i', '', "ipxe-${version}-${nic}.${fmt_extension}"); - - // Try to force IE to handle downloading right. - Header ( "Cache-control: private"); - Header ( "Content-Type: application/x-octet-stream; " . - "name=$output_filename"); - Header ( "Content-Disposition: attachment; " . - "Filename=$output_filename"); - Header ( "Content-Location: $output_filename"); - Header ( "Content-Length: $len"); - - echo $buf; - - exit (); - } - } -} - -/* - * If we reach this point, the build has failed, and we provide - * debugging information for a potential bug report - * - */ - -// Remove build directory -rm_build_dir (); - -// Announce failure if $status from make was non-zero -echo "<h2>Build failed. Status = " . $status . "</h2>"; -echo "<h2>build.php:</h2>"; -echo "<h3>Build options:</h3>"; -echo "<strong>Build directory is:</strong> $build_dir" . "<br><br>"; -echo "\$_POST['ofmt'] = " . "\"${_POST['ofmt']}\"" . "<br>"; -echo "\$_POST['nic'] = " . "\"${_POST['nic']}\"" . "<br>"; -echo "\$_POST['pci_vendor_code'] = " . "\"${_POST['pci_vendor_code']}\"" . "<br>"; -echo "\$_POST['pci_device_code'] = " . "\"${_POST['pci_device_code']}\"" . "<br>"; - -echo "<h3>Flags:</h3>"; -show_flags ( $flags ); - -if ( $embedded_script != "" ) { - echo "<h3>Embedded script:</h3>"; - echo "<blockquote>"."<pre>"; - echo $embedded_script; - echo "</pre>"."</blockquote>"; -} - -echo "<h3>Make output:</h3>"; -echo "Make command: " . $make_cmd . "<br>"; -echo "<blockquote>"."<pre>"; -echo htmlentities ( implode ("\n", $maketxt ) ); -echo "</pre>"."</blockquote>"; - -echo "Please let us know that this happened, and paste the above output into your email message.<br>"; - -include_once $bottom_inc; - -// For emacs: -// Local variables: -// c-basic-offset: 4 -// c-indent-level: 4 -// tab-width: 4 -// End: - -?> |