Android-cuttlefish cvd tool
Classes | Namespaces | Functions | Variables
esp.cpp File Reference
#include "cuttlefish/host/libs/config/esp.h"
#include <sys/types.h>
#include <fcntl.h>
#include <algorithm>
#include <array>
#include <iterator>
#include <ostream>
#include <sstream>
#include <string>
#include <utility>
#include <vector>
#include <android-base/logging.h>
#include "cuttlefish/common/libs/fs/shared_buf.h"
#include "cuttlefish/common/libs/fs/shared_fd.h"
#include "cuttlefish/common/libs/utils/architecture.h"
#include "cuttlefish/common/libs/utils/files.h"
#include "cuttlefish/common/libs/utils/result.h"
#include "cuttlefish/common/libs/utils/subprocess.h"
#include "cuttlefish/host/libs/config/known_paths.h"
Include dependency graph for esp.cpp:

Classes

class  cuttlefish::EspBuilder
 
struct  cuttlefish::EspBuilder::FileToAdd
 

Namespaces

namespace  cuttlefish
 

Functions

Result< void > cuttlefish::MakeFatImage (const std::string &data_image, int data_image_mb, int offset_num_mb)
 
bool cuttlefish::CanGenerateEsp (Arch arch)
 
static bool cuttlefish::MsdosMakeDirectories (const std::string &image_path, const std::vector< std::string > &directories)
 
static bool cuttlefish::CopyToMsdos (const std::string &image, const std::string &path, const std::string &destination)
 
template<typename T >
static bool cuttlefish::GrubMakeImage (const std::string &prefix, const std::string &format, const std::string &directory, const std::string &output, const T &modules)
 
EspBuilder cuttlefish::PrepareESP (const std::string &image_path, Arch arch)
 
EspBuilder cuttlefish::AddGrubConfig (const std::string &config)
 

Variables

static constexpr char cuttlefish::kBootSrcPathIA32 []
 
static constexpr char cuttlefish::kBootDestPathIA32 [] = "/EFI/BOOT/BOOTIA32.EFI"
 
static constexpr char cuttlefish::kBootSrcPathAA64 []
 
static constexpr char cuttlefish::kBootDestPathAA64 [] = "/EFI/BOOT/BOOTAA64.EFI"
 
static constexpr char cuttlefish::kBootDestPathRiscV64 [] = "/EFI/BOOT/BOOTRISCV64.EFI"
 
static constexpr char cuttlefish::kMultibootModuleSrcPathIA32 []
 
static constexpr char cuttlefish::kMultibootModuleDestPathIA32 []
 
static constexpr char cuttlefish::kMultibootModuleSrcPathAA64 []
 
static constexpr char cuttlefish::kMultibootModuleDestPathAA64 []
 
static constexpr char cuttlefish::kKernelDestPath [] = "/vmlinuz"
 
static constexpr char cuttlefish::kInitrdDestPath [] = "/initrd"
 
static constexpr char cuttlefish::kZedbootDestPath [] = "/zedboot.zbi"
 
static constexpr char cuttlefish::kMultibootBinDestPath [] = "/multiboot.bin"
 
static constexpr char cuttlefish::kGrubDebianConfigDestPath [] = "/EFI/debian/grub.cfg"
 
static constexpr char cuttlefish::kGrubUbuntuConfigDestPath [] = "/EFI/ubuntu/grub.cfg"
 
static constexpr char cuttlefish::kGrubConfigDestDirectoryPath [] = "/boot/grub"
 
static constexpr char cuttlefish::kGrubConfigDestPath [] = "/boot/grub/grub.cfg"
 
static constexpr std::array cuttlefish::kGrubModulesX86
 
static constexpr char cuttlefish::kGrubModulesPath [] = "/usr/lib/grub/"
 
static constexpr char cuttlefish::kGrubModulesX86Name [] = "i386-efi"